Partilhar via


OID_SWITCH_PORT_CREATE

A borda de protocolo do switch extensível Hyper-V emite uma solicitação de conjunto de identificador de objeto (OID) de OID_SWITCH_PORT_CREATE para notificar extensões de switch extensíveis sobre a criação de uma porta de switch extensível.

O InformationBuffer membro da estrutura NDIS_OID_REQUEST contém um ponteiro para uma estrutura NDIS_SWITCH_PORT_PARAMETERS.

Comentários

O PortId membro da estrutura NDIS_SWITCH_PORT_PARAMETERS especifica a porta para a qual a notificação de criação está sendo feita.

A extensão do switch extensível deve seguir estas diretrizes para lidar com solicitações de conjunto OID de OID_SWITCH_PORT_CREATE:

  • A extensão não deve modificar a estrutura de NDIS_SWITCH_PORT_PARAMETERS associada à solicitação OID.

  • A extensão pode vetar a notificação de criação retornando NDIS_STATUS_DATA_NOT_ACCEPTED para a solicitação OID. Por exemplo, se uma extensão não puder alocar recursos para impor suas políticas configuradas na porta, o driver deverá vetar a notificação de criação.

    Se a extensão retornar outros códigos de status de erro NDIS_STATUS_Xxx, a notificação de criação também será vetada. No entanto, retornar códigos de status para cenários transitórios, como retornar NDIS_STATUS_RESOURCES, pode resultar em uma nova tentativa da notificação de criação.

    Se a extensão não vetar a solicitação OID, ela deve monitorar o status quando a solicitação for concluída. A extensão deve fazer isso para determinar se a solicitação OID foi vetada por extensões subjacentes no caminho de controle do switch extensível ou pela interface do switch extensível.

    Para obter mais informações sobre políticas de porta, consulte Managing Hyper-V Extensible Switch Policies.

  • Se a extensão chamar NdisFOidRequest para encaminhar essa solicitação de conjunto OID, a extensão deverá monitorar o status de conclusão dessa solicitação OID. A extensão faz isso para detetar se as extensões subjacentes na pilha de driver de switch extensível vetaram a notificação de criação de porta.

  • Depois que a solicitação OID é encaminhada e concluída com êxito, a extensão pode emitir solicitações OIDs para a porta, como OID_SWITCH_PORT_PROPERTY_ENUM, até que uma solicitação OID de OID_SWITCH_PORT_TEARDOWN seja emitida. Essa solicitação OID notifica a extensão de que a porta iniciará o processo de exclusão do switch extensível.

  • As extensões não podem encaminhar pacotes para a porta especificada na estrutura NDIS_SWITCH_PORT_PARAMETERS até que uma solicitação de conjunto OID de OID_SWITCH_NIC_CONNECT seja emitida e concluída com êxito.

Observação as extensões não devem emitir solicitações de conjunto OID de OID_SWITCH_PORT_CREATE.

Para obter mais informações sobre os estados das portas de switch 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

Se a extensão concluir a solicitação de conjunto OID de OID_SWITCH_PORT_CREATE, ela retornará um dos seguintes códigos de status.

Código de status Descrição

NDIS_STATUS_DATA_NOT_ACCEPTED

A prorrogação vetou a notificação de criação.

NDIS_STATUS_RESOURCES

A extensão vetou a notificação de criação devido a uma condição de baixo recurso.

NDIS_STATUS_Xxx

A prorrogação vetou a notificação de criação por outros motivos.

Nota Se a extensão concluir a solicitação de conjunto OID, ela não deverá retornar NDIS_STATUS_SUCCESS.

Se a extensão não concluir a solicitação de conjunto OID de OID_SWITCH_PORT_CREATE, a solicitação será concluída pela borda de miniporta subjacente do switch extensível. A borda de miniporta subjacente retorna o seguinte código de status para essa solicitação de conjunto OID.

Código de status Descrição

NDIS_STATUS_SUCCESS

A solicitação OID foi concluída com êxito.

Requerimentos

Versão

Suportado no NDIS 6.30 e posterior.

Cabeçalho

Ntddndis.h (inclui Ndis.h)

Ver também


NDIS_OID_REQUEST

NDIS_SWITCH_PORT_PARAMETERS

NdisFOidRequest

OID_SWITCH_NIC_CONNECT

OID_SWITCH_PORT_ARRAY

OID_SWITCH_PORT_PROPERTY_ENUM