Драйверы протоколов
Сетевой протокол, который является самым высоким драйвером в иерархии драйверов NDIS, часто используется в качестве драйвера самого низкого уровня в драйвере транспорта, который реализует стек транспортных протоколов, например стек TCP/IP. Драйвер транспортного протокола выделяет пакеты, копирует данные из отправляющего приложения в пакет и отправляет пакеты драйверу нижнего уровня, вызывая функции NDIS. Драйвер протокола также предоставляет интерфейс протокола для получения входящих пакетов от следующего драйвера более низкого уровня. Драйвер транспортного протокола передает полученные данные в соответствующее клиентское приложение.
На нижней границе драйвер протокола взаимодействует с промежуточными сетевыми драйверами и драйверами miniport. Драйвер протокола вызывает функции NdisXxx для отправки пакетов, чтения и задания сведений, которые поддерживаются драйверами более низкого уровня, и использования служб операционной системы. Драйвер протокола также экспортирует набор точек входа (функций ProtocolXxx ), которые NDIS вызывает для собственных целей или от имени драйверов более низкого уровня, чтобы указать пакеты приема, указать состояние драйверов более низкого уровня и иным образом взаимодействовать с драйвером протокола.
На верхнем крае драйвер транспортного протокола имеет частный интерфейс для драйвера более высокого уровня в стеке протоколов.
Примечание
Дополнительные сведения о стеке драйверов NDIS и схеме, показывающую связь между всеми четырьмя типами драйверов NDIS, см. в разделе Стек драйверов NDIS.