Compartilhar via


OID_SWITCH_PORT_CREATE

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

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

Comentários

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

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

  • A extensão não deve modificar a estrutura 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 status de erro NDIS_STATUS_Xxx, a notificação de criação também será vetada. No entanto, retornar status códigos para cenários transitórios, como retornar NDIS_STATUS_RESOURCES, pode resultar em uma repetição da notificação de criação.

    Se a extensão não vetar a solicitação OID, ela deverá 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 de comutador extensível ou pela interface do comutador extensível.

    Para obter mais informações sobre políticas de porta, consulte Gerenciando políticas de comutador extensível do Hyper-V.

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

  • Depois que a solicitação OID for encaminhada e concluída com êxito, a extensão poderá emitir solicitações de 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 da opção 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 de OID de OID_SWITCH_NIC_CONNECT seja emitida e seja concluída com êxito.

Nota As extensões não devem emitir solicitações de conjunto de OID de OID_SWITCH_PORT_CREATE.

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.

Retornar códigos de status

Se a extensão concluir a solicitação de conjunto de 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 extensã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 pouco recurso.

NDIS_STATUS_Xxx

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

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

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

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)

Confira também


NDIS_OID_REQUEST

NDIS_SWITCH_PORT_PARAMETERS

NdisFOidRequest

OID_SWITCH_NIC_CONNECT

OID_SWITCH_PORT_ARRAY

OID_SWITCH_PORT_PROPERTY_ENUM