Сброс

NDIS может вызвать функцию минипорт драйвера или драйвера MCM MiniportResetEx для сброса сетевой интерфейсной карты.

Заметка Дескрипторы AF, SAP и VC, которые являются активными и допустимыми до сброса, остаются активными и допустимыми после сброса.

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

Схема, на которой показано, как клиент отправляет запрос на сброс минипорт-драйверу.

На следующем рисунке показан клиент, совершающий запрос на сброс драйверу MCM.

Схема, показывающая, как клиент отправляет запрос на сброс драйверу MCM.

Когда драйвер нижнего уровня, ориентированный на подключение, сбрасывает NIC, NDIS уведомляет каждый связанный протокол, вызывая функцию ProtocolCoStatusEx протокола с NDIS_STATUS_RESET_START.

NDIS не принимает отправку данных и запросы, инициированные протоколом, к драйверу минипорта или драйверу MCM, пока сетевой адаптер этих драйверов сбрасывается. Пока выполняется сброс, драйвер протокола не должен пытаться отправлять пакеты минипорт-драйверу с помощью NdisCoSendNetBufferLists или запрашивать сведения с помощью NdisCoOidRequest.

MiniportResetEx выполняет любые зависящие от устройства действия, необходимые для сброса NIC. MiniportResetEx может выполняться синхронно или асинхронно с вызовом NdisMResetComplete:

  • Если сброс завершается синхронно, NDIS вызывает функцию ProtocolCoStatusEx каждого связанного протокола с NDIS_STATUS_RESET_END.

  • Если сброс завершается асинхронно, NDIS вызывает функцию ProtocolCoStatusEx для каждого протокола, с которым установлено соединение, с кодом NDIS_STATUS_RESET_END.