Порт NDIS по умолчанию
Нулевой порт зарезервирован в качестве порта по умолчанию для адаптера минипорта. Если параметр PortNumber любой функции или элемент PortNumber любой структуры имеет значение 0, драйвер мини-порта не выделил порты или текущее действие не зависит от порта.
В качестве примера порта NDIS по умолчанию рассмотрим промежуточный драйвер МУЛЬТИП балансировки нагрузки и отработки отказа (LBFO). Виртуальный мини-порт такого драйвера может быть равен нулю порта (порт по умолчанию). Промежуточный драйвер может назначать порты базовым адаптерам минипорта с номерами портов от 1 до количества портов (N). Перележающий драйвер может отправлять данные на нулевой порт, чтобы позволить драйверу LBFO выбрать один из базовых портов, или драйвер может указать номер порта от 1 до N , чтобы выбрать конкретный порт для операции отправки.
Драйверам мини-портов не нужно выделять порты или поддерживать номера портов, отличные от порта по умолчанию. Даже если драйвер мини-порта не выделяет порты, NDIS выделяет порт по умолчанию и активирует его после того, как драйвер мини-порта вызовет функцию NdisMSetMiniportAttributes , чтобы задать атрибуты регистрации в структуре NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES . Драйверы мини-порта могут запускать операции с портом по умолчанию при успешном возврате NdisMSetMiniportAttributes . В этом случае NDIS освобождает порт по умолчанию, когда драйвер мини-порта возвращается из функции MiniportHaltEx .