Поделиться через


Стек драйверов NDIS

На следующей схеме показана базовая конфигурация логических элементов в стеке драйверов NDIS 6.0. Стек содержит неопределенное количество модулей фильтров. Стрелки представляют поток информации между элементами стека.

диаграмме с базовой конфигурацией стека драйверов NDIS 6.0 с модулями фильтрации.

Как показано на приведенной выше схеме, можно устанавливать любое количество модулей фильтра на минипорт-адаптер. Эти модули могут быть экземплярами разных драйверов фильтров и (или) несколькими экземплярами одного драйвера фильтра. Если драйвер минипорта управляет несколькими мини-адаптерами, отдельный стек драйверов может существовать по каждому адаптеру минипорта.

Драйверы протокола привязываются к мини-адаптерам. Поэтому базовые модули фильтров в стеке драйверов прозрачны для драйверов протоколов. Чтобы получить сведения о базовых модулях фильтров, драйверы протокола могут перечислять модули фильтров в стеке драйверов.

Если несколько драйверов протокола привязываются к мини-адаптеру, модули фильтров одинаковы для обоих драйверов протокола. На основе привязки NDIS направляет запросы правильному драйверу протокола.

стек NDIS 6.0 с промежуточным драйвером

На следующем рисунке показан стек драйверов NDIS 6.0 с промежуточным драйвером.

Диаграмма, показывающая стек драйверов NDIS 6.0 с промежуточным драйвером.

Если вы включаете промежуточный драйвер NDIS в стек драйверов, стек по сути состоит из двух стеков: один над другим.

Виртуальный минипорт промежуточного драйвера предоставляет адаптер минипорта для верхнего стека, а пограничный протокол промежуточного драйвера обеспечивает привязку протокола для нижнего стека.

Виртуальный минипорт имеет те же состояния, что и любой другой минипорт-адаптер. Дополнительные сведения о состояниях адаптера минипорта см. в разделе Состояния адаптера минипорта.

Пограничный протокол промежуточного драйвера должен реализовывать те же состояния привязки, что и драйвер протокола. Для получения дополнительной информации о состояниях привязки см. Состояния привязки драйвера протокола.