estrutura NDIS_SWITCH_NIC_PARAMETERS (ntddndis.h)
A estrutura NDIS_SWITCH_NIC_PARAMETERS especifica os parâmetros de configuração para um ADAPTADOR de Rede (NIC) que está conectado a uma porta de comutador extensível do Hyper-V.
Sintaxe
typedef struct _NDIS_SWITCH_NIC_PARAMETERS {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
NDIS_SWITCH_NIC_NAME NicName;
NDIS_SWITCH_NIC_FRIENDLYNAME NicFriendlyName;
NDIS_SWITCH_PORT_ID PortId;
NDIS_SWITCH_NIC_INDEX NicIndex;
NDIS_SWITCH_NIC_TYPE NicType;
NDIS_SWITCH_NIC_STATE NicState;
NDIS_VM_NAME VmName;
NDIS_VM_FRIENDLYNAME VmFriendlyName;
GUID NetCfgInstanceId;
ULONG MTU;
USHORT NumaNodeId;
UCHAR PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
UCHAR VMMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
UCHAR CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH];
BOOLEAN VFAssigned;
ULONG64 NdisReserved[2];
} NDIS_SWITCH_NIC_PARAMETERS, *PNDIS_SWITCH_NIC_PARAMETERS;
Membros
Header
O tipo, a revisão e o tamanho da estrutura NDIS_SWITCH_NIC_PARAMETERS . Esse membro é formatado como uma estrutura NDIS_OBJECT_HEADER .
O membro Type de Header deve ser definido como NDIS_OBJECT_TYPE_DEFAULT. Para especificar a versão da estrutura NDIS_SWITCH_NIC_PARAMETERS , o membro Revision do Header deve ser definido com o seguinte valor:
NDIS_SWITCH_NIC_PARAMETERS_REVISION_1
Versão original do NDIS 6.30 e posterior.
Defina o membro Size como NDIS_SIZEOF_NDIS_SWITCH_NIC_PARAMETERS_REVISION_1.
Flags
Um valor ULONG que contém um OR bit a bit de sinalizadores. O valor do sinalizador a seguir é definido.
Valor | Significado |
---|---|
|
Esse sinalizador é definido quando o OID_SWITCH_NIC_CREATE OID é emitido pela primeira vez no tempo de vida de um objeto NIC da VM. Se esse sinalizador estiver definido:
|
NicName
Um valor NDIS_SWITCH_NIC_NAME que especifica o nome interno exclusivo do adaptador de rede que está conectado a uma porta de comutador extensível.
Para obter mais informações, consulte a seção Comentários.
NicFriendlyName
Um valor NDIS_SWITCH_NIC_FRIENDLYNAME que especifica a descrição amigável do adaptador de rede.
PortId
Um valor NDIS_SWITCH_PORT_ID que contém o identificador exclusivo da porta de comutador extensível à qual o adaptador de rede está conectado.
NicIndex
Um valor NDIS_SWITCH_NIC_INDEX que especifica o índice do adaptador de rede que está conectado à porta de comutador extensível especificada pelo membro PortId .
Para obter mais informações sobre valores de NDIS_SWITCH_NIC_INDEX, consulte Valores de índice do adaptador de rede.
NicType
Um valor NDIS_SWITCH_NIC_TYPE que especifica o tipo do adaptador de rede que está conectado a uma porta de comutador extensível.
NicState
Um valor NDIS_SWITCH_NIC_STATE que especifica o estado atual do adaptador de rede.
VmName
Um valor NDIS_VM_NAME que especifica o nome interno exclusivo da partição filho do Hyper-V na qual o sistema operacional convidado que expõe o adaptador de rede está em execução.
A partição filho do Hyper-V também é conhecida como VM (máquina virtual).
VmFriendlyName
NetCfgInstanceId
Um valor guid que especifica o valor do registro NetCfgInstanceId do adaptador de rede subjacente.
MTU
Um valor ULONG que especifica o tamanho máximo da MTU (unidade de transmissão), em bytes, para o adaptador de rede.
NumaNodeId
Um valor ushort que especifica o identificador para o nó NUMA (Acesso à Memória Não Uniforme) preferencial de uma CPU. Em computadores que dão suporte à arquitetura NUMA, o nó NUMA preferencial é a CPU que tem a menor distância até o adaptador de rede.
PermanentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
Uma matriz UCHAR que especifica o endereço MAC (controle de acesso à mídia) conforme configurado na partição de host para o adaptador de rede. Isso pode ser diferente do endereço MAC atualmente em uso pelo adaptador de rede.
VMMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
Uma matriz UCHAR que especifica o endereço MAC configurado no adaptador de rede dentro da própria VM. O campo é todos zeros para NICs não VM. Se AllowMacSpoofing (de NDIS_SWITCH_PORT_PROPERTY_SECURITY) for TRUE, esse endereço também será aplicado ao CurrentMacAddress.
CurrentMacAddress[NDIS_MAX_PHYS_ADDRESS_LENGTH]
Uma matriz UCHAR que especifica o endereço MAC que está sendo usado no momento na opção para o adaptador de rede. Se AllowMacSpoofing e AllowTeaming forem FALSE, esse valor será igual a PermanentMacAddress. Se AllowMacSpoofing for TRUE, esse valor será igual à VMMacAddress. Se AllowTeaming for TRUE e o failover de agrupamento tiver ocorrido dentro da VM, CurrentMacAddress será igual ao endereço MAC que fez failover para o adaptador de rede ou PermanentMacAddress se nenhum failover tiver ocorrido.
VFAssigned
Um valor BOOLEAN que, se definido como TRUE, especifica que o adaptador de rede está anexado a uma VF (função virtual) PCI Express (PCIe). Uma VF é exposta por um adaptador de rede física subjacente que dá suporte à interface SR-IOV (virtualização de E/S de raiz única).
Para obter mais informações, consulte a seção Comentários.
NdisReserved[2]
Comentários
Solicitações de consulta OID de OID_SWITCH_NIC_ARRAY retornam uma estrutura NDIS_SWITCH_NIC_ARRAY que contém zero ou mais elementos. Cada elemento é formatado como uma estrutura NDIS_SWITCH_NIC_PARAMETERS .
A estrutura NDIS_SWITCH_NIC_PARAMETERS também é usada nas seguintes solicitações OID:
Diretrizes para os membros NicType e NicName
Com base no valor membro NicType , o formato do membro NicName é o seguinte:-
Se o membro NicType estiver definido como NdisSwitchNicTypeExternal, o valor do membro NicName será o identificador de instância exclusivo (InstanceId) do adaptador de rede física associado ao adaptador de rede externo. Esse tipo de adaptador de rede é exposto no sistema operacional de gerenciamento executado na partição pai do Hyper-V.
O adaptador de rede externo fornece uma conexão com o adaptador de rede física que está disponível no host. O adaptador de rede externo pode ser acessado pela partição pai do Hyper-V e por todas as partições filho.
Nota O valor InstanceId é gerado pelo gerenciador de Plug and Play que é executado no sistema operacional de gerenciamento. -
Se o membro NicType estiver definido como NdisSwitchNicTypeInternal, o valor do membro NicName será o nome de exibição do dispositivo que identifica o adaptador de rede interno. Esse tipo de adaptador de rede é exposto no sistema operacional de gerenciamento de uma partição pai do Hyper-V.
O adaptador de rede interno pode ser acessado pela partição pai do Hyper-V e por todas as partições filho. No entanto, o adaptador de rede interno não se conecta ao adaptador de rede física que está disponível no host.
Nota O nome de exibição do dispositivo é gerado pela camada de gerenciamento WMI do Hyper-V executada no sistema operacional de gerenciamento. - Para todos os outros valores de membro NicType , o valor do membro NicName é atribuído exclusivamente ao adaptador de rede sintético ou emulado pela interface de gerenciamento de política. Esses tipos de adaptadores de rede são expostos no sistema operacional convidado que é executado é uma partição filho do Hyper-V.
Diretrizes para o membro VFAssigned
Uma VF PCIe é criada e alocada por um adaptador físico subjacente que dá suporte à interface SR-IOV. Depois que o PCIe VF é criado, a pilha de virtualização anexa ou atribui uma partição filho do Hyper-V ao VF. O sistema operacional convidado executado nessa partição expõe um adaptador de rede de VM (máquina virtual) anexado ou atribuído ao adaptador físico SR-IOV subjacente.Se o membro VFAssigned for definido como TRUE, os pacotes serão roteados diretamente entre o adaptador de rede física SR-IOV subjacente e o adaptador virtual. No entanto, como a opção extensível não está envolvida na entrega de pacotes, as políticas extensíveis de porta de comutador, como ACLs (listas de controle de acesso), não são aplicadas a esses pacotes.
A extensão pode remover uma atribuição de VF emitindo uma indicação de status NDIS_STATUS_SWITCH_PORT_REMOVE_VF. Essa indicação faz com que os pacotes sejam entregues por meio de uma porta de comutador extensível em vez de diretamente entre o adaptador de rede da VM e o adaptador físico SR-IOV. Isso permite que as políticas de porta de comutador extensível sejam aplicadas a pacotes recebidos ou enviados pela porta do comutador extensível. Quando a extensão faz o NDIS_STATUS_SWITCH_PORT_REMOVE_VF status indicação, ela especifica a porta do comutador extensível à qual o adaptador de rede virtual está conectado.
Para obter mais informações, consulte NDIS_STATUS_SWITCH_PORT_REMOVE_VF.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no NDIS 6.30 e posterior. |
Cabeçalho | ntddndis.h (inclua Ndis.h, Fwpsk.h) |
Confira também