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


OID_SWITCH_PORT_DELETE

Пограничный протокол расширяемого коммутатора Hyper-V выдает запрос набора идентификаторов объектов (OID) запроса OID_SWITCH_PORT_DELETE для уведомления расширений расширяемого коммутатора об удалении расширяемого порта коммутатора.

Элемент InformationBuffer структуры NDIS_OID_REQUEST содержит указатель на структуру NDIS_SWITCH_PORT_PARAMETERS.

Замечания

Элемент PortId структуры NDIS_SWITCH_PORT_PARAMETERS указывает расширяемый порт коммутатора, для которого выполняется уведомление об удалении.

Если сетевой адаптер подключен к указанному порту, пограничный протокол расширяемого коммутатора удаляет подключение перед удалением порта. В этом случае пограничный протокол будет выполнять следующие действия, прежде чем удалить порт:

  • Пограничный протокол выдает запрос набора OID OID_SWITCH_NIC_DISCONNECT, чтобы уведомить расширение о том, что подключение между сетевым адаптером и расширяемым портом коммутатора удаляется.

  • После того как все ожидающие пакеты для указанного порта расширяемого коммутатора были отменены или завершены, пограничный протокол выдает запрос набора OID OID_SWITCH_NIC_DELETE, чтобы уведомить расширение о том, что подключение между сетевым адаптером и расширяемым портом коммутатора было удалено.

    На этом этапе пограничный протокол может начать удалять порт.

Край протокола расширяемого коммутатора выполняет следующие действия при удалении порта расширяемого коммутатора:

  1. Край протокола расширяемого коммутатора выдает запрос набора OID OID_SWITCH_PORT_TEARDOWN. Этот запрос OID уведомляет базовые расширения расширяемого коммутатора о начале процесса удаления для расширяемого порта коммутатора.

  2. Пограничный протокол выдает запрос набора OID OID_SWITCH_PORT_DELETE после завершения всех запросов OID к порту расширяемого коммутатора.

    Примечание Если расширение ранее вызывало ReferenceSwitchPort для увеличения счетчика ссылок порта, он должен вызывать DereferenceSwitchPort, прежде чем пограничный протокол выдает запрос OID_SWITCH_NIC_DELETE.

Расширение должно соответствовать этим рекомендациям по обработке запросов наборов OID OID_SWITCH_PORT_DELETE:

  • Расширение не должно изменять структуру NDIS_SWITCH_PORT_PARAMETERS, связанную с запросом OID.

  • Расширение должно всегда пересылать этот запрос набора OID в базовые расширения. Расширение не должно завершаться ошибкой запроса.

  • После завершения запроса OID_SWITCH_PORT_DELETE с NDIS_STATUS_SUCCESS расширение не будет получать пакеты или запросы OID для удаленного порта. Расширение не может перенаправить пакеты в удаленный порт. Расширение также не может выдавать запросы OID и не вызывать функцию ReferenceSwitchPort для удаленного порта.

примечание расширения расширяемого коммутатора не должны выдавать запросы набора OID OID_SWITCH_PORT_DELETE.

Дополнительные сведения о состояниях расширяемых портов коммутаторов и подключений к сетевому адаптеру см. в Hyper-Vрасширяемый порт коммутатора и состояния сетевых адаптеров.

Коды состояния возврата

Базовый мини-порт расширяемого коммутатора завершает запрос набора OID OID_SWITCH_PORT_DELETE и возвращает следующий код состояния.

Код состояния Описание

NDIS_STATUS_SUCCESS

Запрос OID успешно завершен.

Требования

Версия

Поддерживается в NDIS 6.30 и более поздних версиях.

Заголовок

Ntddndis.h (include Ndis.h)

См. также


DereferenceSwitchPort

NDIS_OID_REQUEST

NDIS_SWITCH_PORT_PARAMETERS

NdisFOidRequest

OID_SWITCH_NIC_DELETE

OID_SWITCH_PORT_ARRAY

ReferenceSwitchPort