OID_SWITCH_PORT_TEARDOWN
A borda do protocolo do comutador extensível Hyper-V emite uma solicitação de conjunto OID (identificador de objeto) de OID_SWITCH_PORT_TEARDOWN para notificar as extensões de comutador extensíveis subjacentes de que uma porta de comutador extensível iniciará o processo de exclusão. Esse processo é iniciado quando o driver de protocolo emite uma solicitação de conjunto de OID de OID_SWITCH_PORT_DELETE.
O membro InformationBuffer da estrutura NDIS_OID_REQUEST contém um ponteiro para uma estrutura de NDIS_SWITCH_PORT_PARAMETERS.
Observações
O portId membro da estrutura NDIS_SWITCH_PORT_PARAMETERS especifica a porta de comutador extensível para a qual a notificação de conexão está sendo feita. A extensão de comutador extensível deve atualizar todas as informações armazenadas em cache sobre a porta obtida das seguintes maneiras:
Emitindo solicitações de consulta OID de OID_SWITCH_PORT_ARRAY. A extensão emite essa OID no FilterAttach somente quando OID_SWITCH_PARAMETERS retorna uma estrutura NDIS_SWITCH_PARAMETERS com IsActive definido como TRUE. Se IsActive for FALSE, a extensão emitirá o OID quando o NET_PNP_EVENTNetEventSwitchActivate for emitido pelo miniporto de extensão.
Inspecionando as várias solicitações de conjuntos de OID de OID_SWITCH_PORT_CREATE e OID_SWITCH_PORT_DELETE.
A borda do protocolo do comutador extensível emite uma solicitação de conjunto de OID de OID_SWITCH_PORT_TEARDOWN para notificar a extensão de que uma porta está em processo de exclusão do comutador extensível. Antes de essa solicitação OID ser emitida, a borda do protocolo do comutador extensível já havia emitido os seguintes OIDs se a porta tivesse uma conexão de adaptador de rede ativa:
OID_SWITCH_NIC_DISCONNECT, que notificou as extensões subjacentes de que o adaptador de rede não está mais conectado à porta especificada na estrutura NDIS_SWITCH_PORT_PARAMETERS.
OID_SWITCH_NIC_DELETE, que notificou as extensões subjacentes de que a conexão de rede entre o adaptador de rede e a porta de comutador extensível foi excluída.
A borda do protocolo emite essa solicitação de conjunto de OID depois que todos os pacotes pendentes para a porta de comutador extensível especificada foram cancelados ou concluídos.
Depois que a extensão concluir essa solicitação de conjunto OID e o contador de referência para a porta de comutador extensível for zero, a borda do protocolo do comutador extensível emitirá uma solicitação de conjunto OID de OID_SWITCH_PORT_DELETE. Essa solicitação OID exclui a porta do comutador extensível.
Observação Uma extensão incrementa o contador de referência para uma porta de comutador extensível chamando ReferenceSwitchPort. Uma extensão diminui o contador de referência chamando DereferenceSwitchPort.
A extensão deve seguir estas diretrizes para lidar com solicitações de conjunto de OID de OID_SWITCH_PORT_TEARDOWN:
A extensão deve sempre encaminhar essa solicitação de conjunto de OID para extensões subjacentes. A extensão não deve falhar na solicitação.
Observação A extensão não deve modificar a estrutura de NDIS_SWITCH_PORT_PARAMETERS associada à solicitação OID.
Depois que a extensão encaminha essa solicitação OID, ela não pode encaminhar pacotes para a porta excluída. A extensão também não pode emitir solicitações OID nem chamar a função ReferenceSwitchPort para a porta excluída.
Observação A extensão não deve emitir solicitações de conjunto de OID de OID_SWITCH_PORT_TEARDOWN.
Para obter mais informações sobre os estados de portas de comutador extensíveis e conexões de adaptador de rede, consulte Hyper-V Extensible Switch Port and Network Adapter States.
Códigos de status de retorno
A borda do miniporto subjacente do comutador extensível conclui a solicitação do conjunto de OID de OID_SWITCH_PORT_TEARDOWN e retorna o código de status a seguir.
Código de status | Descrição |
---|---|
NDIS_STATUS_SUCCESS |
A solicitação OID foi concluída com êxito. |
Requisitos
Versão |
Com suporte no NDIS 6.30 e posterior. |
Cabeçalho |
Ntddndis.h (inclua Ndis.h) |