Hyper-V Estados da porta do switch extensível e do adaptador de rede
A interface de switch extensível Hyper-V gerencia a vida útil dos seguintes componentes:
Hyper-V Portas de comutador extensíveis
Cada conexão do adaptador de rede com o switch extensível é representada por uma porta. As portas são criadas quando uma partição secundária Hyper-V é configurada para conectar-se a uma instância de switch extensível. Dependendo do tipo de switch, as portas também são criadas para as conexões de adaptador de rede externas e internas. Para obter mais informações sobre tipos de switch, consulte Overview of the Hyper-V Extensible Switch.
Cada porta é usada para manter a configuração para a conexão de interface de rede. Se a configuração da conexão de interface de rede for removida ou a partição secundária for interrompida, a porta será desativada e excluída.
Para obter mais informações sobre esse componente, consulte Hyper-V Extensible Switch Ports.
Hyper-V Adaptadores de rede de switch extensível
Estes são adaptadores de rede virtual que se conectam à porta do switch extensível. Esses adaptadores de rede virtual são expostos dentro das partições de pai e filho Hyper-V. Isso inclui o adaptador de rede da máquina virtual (VM) exposto em uma partição secundária e o adaptador de rede externo que é agregado ao adaptador de rede física subjacente.
Cada conexão de adaptador de rede requer uma porta de switch extensível correspondente. A porta deve ter sido criada antes que a conexão do adaptador de rede seja ativada. Da mesma forma, a conexão do adaptador de rede deve ser excluída antes que a porta possa ser derrubada e excluída.
Nota Em algumas situações, portas de switch extensíveis podem ser criadas e excluídas sem nunca ter uma conexão de adaptador de rede.
Por exemplo, quando uma partição secundária Hyper-V é iniciada, a interface do comutador extensível cria uma porta antes que o adaptador de rede da máquina virtual seja exposto no sistema operativo convidado. Depois que o adaptador de rede VM é exposto e enumerado, a interface do comutador extensível cria uma conexão de rede entre o adaptador de rede VM e a porta do comutador extensível. Se a partição filial for parada, a interface do comutador extensível primeiro excluirá a conexão de rede e, em seguida, excluirá a porta do comutador extensível.
Para obter mais informações sobre esse componente, consulte Hyper-V Extensible Switch Network Adapters.
Quando a interface do switch extensível cria, elimina ou altera a configuração desses componentes, a interface emite solicitações para definir o identificador de objeto (OID) na pilha do driver do switch extensível. Esta operação é executada para que as extensões de switch extensíveis subjacentes possam ser notificadas sobre o estado do componente e sua configuração. Cada solicitação de conjunto OID resulta em uma transição de estado para esses componentes.
Quando uma extensão é vinculada e habilitada em uma instância de switch extensível, ela pode emitir OIDs para descobrir a porta existente e a configuração de conexão do adaptador de rede do switch.
O diagrama a seguir mostra os vários estados para a porta do switch extensível e os componentes de conexão do adaptador de rede. O diagrama também mostra as solicitações do conjunto OID que causam a transição de estado para o componente.
A lista a seguir descreve os vários estados da porta do switch extensível e dos componentes de conexão do adaptador de rede:
Porta não criada
Nesse estado, uma porta de switch extensível não existe no switch extensível. As solicitações OID destinadas a uma porta criada anteriormente não podem ser emitidas após a porta ter entrado nesse estado.
Porta criada
Quando a interface do switch extensível faz uma solicitação de definição de OID de OID_SWITCH_PORT_CREATE, a porta é criada no switch extensível. Nesse estado, a interface e a extensão do switch extensível podem emitir solicitações OID direcionadas à porta.
Para obter mais informações sobre o tráfego OID através da pilha de drivers do switch extensível, consulte Hyper-V Caminho de Controlo do Switch Extensível.
Nota Uma extensão subjacente pode falhar a solicitação de conjunto OID e vetar a criação da porta. A extensão faz isso ao completar a solicitação de OID com STATUS_DATA_NOT_ACCEPTED. Se isso for feito, a porta não será criada no switch extensível. Para obter mais informações sobre este procedimento, consulte Hyper-V Portas de Switch Extensíveis.
Conexão do adaptador de rede criada
Quando a interface do switch extensível emite um pedido de definição de OID de OID_SWITCH_NIC_CREATE, a conexão do adaptador de rede com a porta é criada no switch extensível. Nesse estado, a interface do switch extensível pode fazer o seguinte:
Emita solicitações OID destinadas à conexão do adaptador de rede.
Encaminhe o tráfego de pacotes de ou para a conexão do adaptador de rede.
Também é possível que um novo adaptador se conecte a uma porta existente sem passar pelo processo de desmontagem e configuração da porta.
Nesse estado, a extensão deve encaminhar esses pacotes e pedidos OID através da pilha de extensões de switch extensível. No entanto, a extensão não pode originar ou redirecionar pacotes ou solicitações OID para outras conexões de adaptador de rede no switch extensível.
Observação Nesse estado, a extensão não deve emitir solicitações OID ou originar tráfego de pacotes para a conexão do adaptador de rede.
Para obter mais informações sobre o tráfego OID através da pilha de driver de switch extensível, consulte Hyper-V Extensible Switch Control Path.
Para obter mais informações sobre o tráfego de pacotes através da pilha de drivers do switch extensível, consulte Hyper-V "Extensible Switch Data Path".
Nota Uma extensão subjacente pode falhar no pedido de configuração OID e vetar a criação da ligação do adaptador de rede. Em caso afirmativo, a conexão não é criada na porta do switch extensível. Para obter mais informações sobre este procedimento, consulte Hyper-V Extensible Switch Network Adapters.
adaptador de rede conectado
Quando a interface do comutador extensível emite um pedido de definição OID de OID_SWITCH_NIC_CONNECT, o adaptador de rede está totalmente conectado à porta do comutador extensível. Nesse estado, a extensão agora pode fazer o seguinte:
Emita solicitações OID destinadas à conexão do adaptador de rede.
Origine o tráfego de pacotes para a conexão do adaptador de rede.
Redirecionar o tráfego de pacotes para a conexão do adaptador de rede. Por exemplo, a extensão pode redirecionar pacotes de uma conexão de adaptador de rede para outra conexão no switch extensível.
Observação Somente extensões de reencaminhamento podem executar essa operação. Para obter mais informações, consulte Extensões de encaminhamento.
adaptador de rede desconectado
Quando a interface do switch extensível emite uma solicitação de definição OID de OID_SWITCH_NIC_DISCONNECT, o adaptador de rede está a ser desconectado da porta do switch extensível. Por exemplo, essa solicitação OID é emitida quando a partição filho, que expôs um adaptador de rede VM, é interrompida ou o adaptador de rede externo está desativado.
Nesse estado, a extensão de switch extensível não pode mais originar pacotes ou solicitações OID que visam a conexão. Além disso, as extensões de encaminhamento não podem mais redirecionar pacotes para a conexão.
Observação Pacotes pendentes e solicitações OID que foram emitidos pela interface do switch extensível antes da conexão ser desconectada ainda podem ser entregues à extensão. No entanto, a extensão deve encaminhar os pacotes e solicitações OID sem fazer modificações.
Conexão do adaptador de rede excluída
Depois de concluído todo o tráfego de pacotes e as solicitações OID que visam a conexão do adaptador de rede, a interface do switch extensível emite um pedido de definição de OID de OID_SWITCH_NIC_DELETE para excluir a conexão do switch extensível.
Nesse estado, a interface do switch extensível não emitirá mais pacotes ou solicitações OID direcionadas à conexão.
Desmantelamento do porto
Quando a interface do switch extensível emite uma solicitação de definição OID de OID_SWITCH_PORT_TEARDOWN, a porta do switch extensível está a ser desativada em preparação para ser excluída.
Nesse estado, a extensão de switch extensível não pode mais originar solicitações OID que visam a porta.
Nota As solicitações OID pendentes que foram emitidas pela interface do switch extensível antes de a porta iniciar o seu processo de desativação ainda podem ser entregues à extensão. No entanto, a extensão deve encaminhar as solicitações OID sem fazer modificações.
Depois de todas as solicitações OID pendentes direcionadas à porta serem concluídas, a interface do switch extensível emite uma solicitação de definição de OID de OID_SWITCH_PORT_DELETE. Isso faz a porta transitar para o estado Porta não criada.
A extensão pode chamar uma função de manipulador de switch extensível para incrementar ou diminuir um contador de referência em uma porta ou componente de conexão do adaptador de rede. Enquanto o contador de referência de um componente é diferente de zero, a interface do switch extensível não pode excluir o componente.
A extensão pode chamar ReferenceSwitchPort ou DereferenceSwitchPort para incrementar ou diminuir um contador de referência para uma porta de switch extensível. Essas chamadas podem ser feitas depois que a porta atingir o estado de Porta criada . Estas chamadas não devem ser feitas depois de o porto ter chegado ao estado de em desmantelamento ou o estado de porto não criado.
A extensão pode chamar ReferenceSwitchNic ou DereferenceSwitchNic para incrementar ou diminuir um contador de referência para uma conexão de adaptador de rede de switch extensível. Essas chamadas podem ser feitas depois que a conexão atingiu o adaptador de rede conectado estado. Essas chamadas não devem ser feitas depois que a conexão atingir os estados de adaptador de rede desconectado ou adaptador de rede excluído.
A tabela a seguir descreve as operações permitidas com base no estado da porta do switch extensível ou dos componentes de conexão do adaptador de rede.
Estado do componente | Chamadas para ReferenceSwitchPort ou DereferenceSwitchPort são permitidas? | Chamadas para ReferenceSwitchNic ou DereferenceSwitchNic permitidas? |
---|---|---|
Porta não criada |
Não |
Não |
Porta criada |
Sim |
Não |
Conexão do adaptador de rede criada |
Sim |
Não |
Adaptador de rede conectado |
Sim |
Sim |
Adaptador de rede desconectado |
Sim |
Não |
Conexão do adaptador de rede excluída |
Sim |
Não |
Demolição do porto |
Não |
Não |
Estado do componente | Solicitações OID permitidas do switch extensível para a porta? | São permitidas solicitações OID de extensões para a porta? | As solicitações OID do switch extensível são permitidas para a conexão do adaptador de rede? | Solicitações OID de extensões permitidas para conexão de adaptador de rede? | É permitido o tráfego de pacotes do switch extensível através da conexão do adaptador de rede? | O tráfego de pacotes de extensões é permitido através da conexão do adaptador de rede? |
---|---|---|---|---|---|---|
Porta não criada |
Não |
Não |
Não |
Não |
Não |
Não |
Porta criada |
Sim |
Sim |
Não |
Não |
Não |
Não |
Conexão do adaptador de rede criada |
Sim |
Sim |
Sim |
Não |
Sim |
Não |
Adaptador de rede conectado |
Sim |
Sim |
Sim |
Sim |
Sim |
Sim |
Adaptador de rede desconectado |
Sim |
Sim |
Sim |
Não |
Sim |
Não |
Conexão do adaptador de rede excluída |
Sim |
Sim |
Não |
Não |
Não |
Não |
Demolição do porto |
Sim |
Não |
Não |
Não |
Não |
Não |