Compartir a través de


estructura NDIS_NIC_SWITCH_CAPABILITIES (ntddndis.h)

La estructura NDIS_NIC_SWITCH_CAPABILITIES especifica las funciones de un conmutador NIC en el adaptador de red.

Sintaxis

typedef struct _NDIS_NIC_SWITCH_CAPABILITIES {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              NdisReserved1;
  ULONG              NumTotalMacAddresses;
  ULONG              NumMacAddressesPerPort;
  ULONG              NumVlansPerPort;
  ULONG              NdisReserved2;
  ULONG              NdisReserved3;
  ULONG              NicSwitchCapabilities;
  ULONG              MaxNumSwitches;
  ULONG              MaxNumVPorts;
  ULONG              NdisReserved4;
  ULONG              MaxNumVFs;
  ULONG              MaxNumQueuePairs;
  ULONG              NdisReserved5;
  ULONG              NdisReserved6;
  ULONG              NdisReserved7;
  ULONG              MaxNumQueuePairsPerNonDefaultVPort;
  ULONG              NdisReserved8;
  ULONG              NdisReserved9;
  ULONG              NdisReserved10;
  ULONG              NdisReserved11;
  ULONG              NdisReserved12;
  ULONG              MaxNumMacAddresses;
  ULONG              NdisReserved13;
  ULONG              NdisReserved14;
  ULONG              NdisReserved15;
  ULONG              NdisReserved16;
  ULONG              NdisReserved17;
  ULONG              MaxNumRssCapableNonDefaultPFVPorts;
  ULONG              NumberOfIndirectionTableEntriesForDefaultVPort;
  ULONG              NumberOfIndirectionTableEntriesPerNonDefaultPFVPort;
  ULONG              MaxNumQueuePairsForDefaultVPort;
} NDIS_NIC_SWITCH_CAPABILITIES, *PNDIS_NIC_SWITCH_CAPABILITIES;

Miembros

Header

Tipo, revisión y tamaño de la estructura NDIS_NIC_SWITCH_CAPABILITIES. Este miembro tiene el formato de una estructura NDIS_OBJECT_HEADER.

El controlador de miniport debe establecer el miembro Type de Encabezado en NDIS_OBJECT_TYPE_DEFAULT. Para especificar la versión de la estructura de NDIS_NIC_SWITCH_CAPABILITIES, el controlador debe establecer el miembro Revisión de de Encabezado en uno de los siguientes valores:

NDIS_NIC_SWITCH_CAPABILITIES_REVISION_3

Se agregaron los miembros de la interfaz RSS para NDIS 6.60.

Nota revisión 3 de esta estructura solo se admite en Windows Server 2016 y versiones posteriores de Windows Server.

 

Establezca el miembro Size en NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_3.

NDIS_NIC_SWITCH_CAPABILITIES_REVISION_2

Se agregaron los miembros de interfaz de virtualización de E/S raíz única (SR-IOV) para NDIS 6.30.

Nota revisión 2 de esta estructura solo se admite en Windows Server 2012 y versiones posteriores de Windows Server.

 

Establezca el miembro Tamaño de en NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_2.

NDIS_NIC_SWITCH_CAPABILITIES_REVISION_1

Versión original de NDIS 6.20.

Establezca el miembro Size en NDIS_SIZEOF_NIC_SWITCH_CAPABILITIES_REVISION_1.

Flags

Valor de ULONG que contiene un OR bit a bit de marcas. Este miembro está reservado para NDIS.

NdisReserved1

Reservado para NDIS.

NumTotalMacAddresses

Valor de ULONG que contiene el número total de direcciones de control de acceso multimedia (MAC) que admite el adaptador de red.

Nota Controladores debe establecer este miembro en cero para las revisiones 2 y posteriores de esta estructura.
 

NumMacAddressesPerPort

Valor de ULONG que contiene el número de direcciones MAC que se admiten para cada puerto.

Nota Controladores debe establecer este miembro en cero para las revisiones 2 y posteriores de esta estructura.
 

NumVlansPerPort

Valor de ULONG que contiene el número de VLAN que se admiten para cada puerto.

Nota Controladores debe establecer este miembro en cero para las revisiones 2 y posteriores de esta estructura.
 

NdisReserved2

Reservado para NDIS.

NdisReserved3

Reservado para NDIS.

NicSwitchCapabilities

Valor de ULONG que contiene un OR bit a bit de las marcas siguientes que especifican las funcionalidades del conmutador de NIC:

NDIS_NIC_SWITCH_CAPS_RSS_ON_PF_VPORTS_SUPPORTED

Nota Esta marca es compatible con Windows Server 2016 y versiones posteriores. Se introdujo en NDIS 6.60.

Especifica que la NIC admite VMMQ para VPorts PF.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SUPPORTED

Nota Esta marca es compatible con Windows Server 2016 y versiones posteriores. Se introdujo en NDIS 6.60.

Si se establece en 1, especifica que la NIC puede mantener tablas indirectas de VPort por PF.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_FUNCTION_SUPPORTED

Nota Esta marca es compatible con Windows Server 2016 y versiones posteriores. Se introdujo en NDIS 6.60.

Si se establece en 1, especifica que la NIC admite la configuración de una función hash diferente por VPort PF. Si se establece esta marca, también se debe establecer NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_KEY_SUPPORTED.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_TYPE_SUPPORTED

Nota Esta marca es compatible con Windows Server 2016 y versiones posteriores. Se introdujo en NDIS 6.60.

Si se establece en 1, especifica que la NIC admite la configuración de tipos hash diferentes por VPort PF.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_KEY_SUPPORTED

Nota Esta marca es compatible con Windows Server 2016 y versiones posteriores. Se introdujo en NDIS 6.60.

Si se establece en 1, especifica que la NIC admite la configuración de una clave secreta hash diferente por VPort PF. Esta marca debe establecerse si se establece NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_HASH_FUNCTION_SUPPORTED.

NDIS_NIC_SWITCH_CAPS_RSS_PER_PF_VPORT_INDIRECTION_TABLE_SIZE_RESTRICTED

Nota Esta marca es compatible con Windows Server 2016 y versiones posteriores. Se introdujo en NDIS 6.60.

Si se establece en 1, especifica que la NIC tiene una limitación en el tamaño de tabla de direccionamiento indirecto para VPorts PF. Esta marca obliga al emisor de un OID RSS a usar un tamaño de tabla indirecto VPort por PF igual al número de colas de VPort redondeadas hasta la siguiente potencia de dos. Esto solo se aplica a VPorts PF y no se aplica a VPorts de VF. Esta marca se puede combinar con la marca de NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED (diferentes VPorts PF pueden tener diferentes números de colas). Esta marca impide que los usuarios de VMMQ realicen una dirección de cola específica.

NDIS_NIC_SWITCH_CAPS_NIC_SWITCH_WITHOUT_IOV_SUPPORTED

Nota Esta marca es compatible con Windows Server 2016 y versiones posteriores.

Esta marca, introducida con NDIS 6.60, especifica que se puede crear un conmutador NIC sin el uso de SR-IOV. Esta marca permite separar un modificador NIC de la palabra clave *SRIOV, lo que significa que se puede crear un conmutador NIC a través de OID_NIC_SWITCH_CREATE_SWITCH incluso si *SRIOV = 0.

Para obtener más información sobre la generación de informes de funcionalidades de conmutador NIC para controladores de miniporte NDIS 6.60 y versiones posteriores, consulte Determinación de las funcionalidades del conmutador NIC.

NDIS_NIC_SWITCH_CAPS_VLAN_SUPPORTED

Esta marca especifica que el conmutador NIC admite el filtrado de paquetes de hardware en función del identificador (ID) de la red de área local virtual (VLAN).

Nota Esta marca debe establecerse solo si el conmutador NIC admite el filtrado de identificadores de VLAN en puertos virtuales (VPorts) individuales de SR-IOV.
 

NDIS_NIC_SWITCH_CAPS_PER_VPORT_INTERRUPT_MODERATION_SUPPORTED

Esta marca especifica que el conmutador NIC puede admitir la configuración de moderación de interrupciones en VPorts individuales.

NDIS_NIC_SWITCH_CAPS_ASYMMETRIC_QUEUE_PAIRS_FOR_NONDEFAULT_VPORT_SUPPORTED

Esta marca especifica que el conmutador NIC puede configurar un número diferente de pares de cola para cada VPort no predeterminado. Esto significa que cada VPort no predeterminado se puede configurar de forma asimétrica para tener un número diferente de pares de colas.

Si no se establece esta marca, todas las VPorts no predeterminadas deben configurarse simétricamente para tener el mismo número de pares de cola.

Independientemente de si se establece esta marca, el conmutador NIC debe admitir la capacidad de establecer el número de pares de cola en el VPort predeterminado. Pueden diferir del número de pares de cola que se establecen en las máquinas virtuales no predeterminadas.

Nota Par de colas consta de una cola de transmisión y una cola de recepción. Los pares de cola asociados con el VPort predeterminado se configuran en el momento de la creación del modificador a través de una solicitud de método OID de OID_NIC_SWITCH_CREATE_SWITCH. Uno o varios pares de cola se configuran en un VPort no predeterminado a través de una solicitud de método OID de OID_NIC_SWITCH_CREATE_VPORT.
 
Para obtener más información, vea asignación simétrica y asimétrica de pares de cola.

NDIS_NIC_SWITCH_CAPS_VF_RSS_SUPPORTED

Esta marca especifica que los pares de cola de VPorts no predeterminados que están conectados a una función virtual de PCI Express (PCIe) (VF) se pueden usar para el escalado lateral de recepción (RSS). El controlador de miniportE VF se ejecuta en el sistema operativo invitado de una partición secundaria de Hyper-V.

Si se establece esta marca, el controlador de miniporte admite RSS en un VF y puede usar uno o varios de los pares de cola desde el VPort no predeterminado para RSS.

Nota a partir de Windows Server 2012, solo se puede conectar un VPort no predeterminado a un VF.
 

NDIS_NIC_SWITCH_CAPS_SINGLE_VPORT_POOL

Esta marca especifica que las VPorts no predeterminadas se pueden crear de forma no reservada desde el grupo de VPort en el adaptador de red. Esto permite crear y asignar VPorts no predeterminados disponibles según sea necesario a las máquinas virtuales asignadas y pf. Si el adaptador de red admite la interfaz de cola de máquinas virtuales (VMQ), también se pueden usar VPorts no predeterminados asignados al PF para las colas de recepción de máquinas virtuales.

Nota El VPort predeterminado siempre está reservado para la asignación al PF.
 
Si se establece esta marca, se crean VPorts no predeterminados disponibles y se asignan a la PF y las máquinas virtuales asignadas. Sin embargo, este mecanismo no reserva VPorts no predeterminados para la creación y asignación de VF. Como resultado, pueden producirse situaciones en las que una VF no se pueda asignar a un VPort si el grupo se ha agotado de VPorts disponibles.
Nota Si no se puede asignar un VF a un VPort, el tráfico de paquetes sobre el VF se produce a través de la ruta de acceso de datos sintéticas SR-IOV. Para obtener más información sobre esta ruta de acceso de datos, consulte SR-IOV Rutas de acceso de datos.
 
Si no se establece esta marca, la creación y asignación de VPorts no predeterminados se reserva para la asignación de VF. Se pueden crear y asignar VPorts no predeterminados adicionales al PF.

Para obtener más información sobre VMQ, consulte virtual Machine Queue (VMQ).

Para obtener más información sobre VPorts, consulte Administración de puertos virtuales.

MaxNumSwitches

Valor de ULONG que especifica el número máximo de conmutadores que se pueden crear en la función física (PF) del adaptador de red PCI Express (PCIe).

Nota a partir de Windows Server 2012, Windows solo admite el conmutador NIC predeterminado en el adaptador de red. Por lo tanto, este miembro siempre debe establecerse en uno.
 

MaxNumVPorts

Valor de ULONG que especifica el número máximo de VPorts que se pueden crear en un adaptador de red. Esto incluye el VPort predeterminado que siempre está asociado al PF.

Nota El conmutador NIC debe admitir al menos (MaxNumVFs + 1) VPorts.
 

NdisReserved4

Reservado para NDIS.

MaxNumVFs

Valor de ULONG que especifica el número máximo de máquinas virtuales que se pueden crear en el conmutador NIC.

Nota Dependiendo de los recursos de hardware disponibles en el adaptador de red, el controlador de miniport puede establecer el miembro MaxNumVFs en un valor inferior a su palabra clave *NumVFs. Para obtener más información sobre esta palabra clave, vea palabras clave INF estandarizadas para SR-IOV.
 

MaxNumQueuePairs

Valor de ULONG que especifica el número máximo de pares de cola que se pueden asignar a todos los VPorts. Esto incluye el VPort predeterminado que está asociado al PF.

Nota Este valor debe ser mayor o igual que el valor de MaxNumVPorts.
 

NdisReserved5

Reservado para NDIS.

NdisReserved6

Reservado para NDIS.

NdisReserved7

Reservado para NDIS.

MaxNumQueuePairsPerNonDefaultVPort

Valor de ULONG que especifica el número máximo de pares de cola que se pueden asignar a un VPort no predeterminado.

Este valor se especifica en potencias de 2 y proporciona la configuración asimétrica y la asignación de pares de cola a VPorts. Para obtener más información, vea asignación simétrica y asimétrica de pares de cola.

NdisReserved8

Reservado para NDIS.

NdisReserved9

Reservado para NDIS.

NdisReserved10

Reservado para NDIS.

NdisReserved11

Reservado para NDIS.

NdisReserved12

Reservado para NDIS.

MaxNumMacAddresses

Valor de ULONG que especifica el número máximo de filtros de direcciones MAC de unidifusión que están disponibles en el conmutador NIC.

Nota Este valor debe ser mayor o igual que el valor de MaxNumVPorts. Esto permite configurar cada VPort (incluido el VPort predeterminado) para que tenga al menos un filtro de direcciones MAC de unidifusión.
 

NdisReserved13

Reservado para NDIS.

NdisReserved14

Reservado para NDIS.

NdisReserved15

Reservado para NDIS.

NdisReserved16

Reservado para NDIS.

NdisReserved17

Reservado para NDIS.

MaxNumRssCapableNonDefaultPFVPorts

Valor ULONG que especifica el número máximo de PFVPorts no predeterminados compatibles con RSS.

NumberOfIndirectionTableEntriesForDefaultVPort

Valor ULONG que especifica el número de entradas de la tabla de direccionamiento indirecto para el VPort predeterminado.

NumberOfIndirectionTableEntriesPerNonDefaultPFVPort

Valor ULONG que especifica el número de entradas de tabla de direccionamiento indirecto para cada PFVPort no predeterminado.

MaxNumQueuePairsForDefaultVPort

Valor de ULONG que especifica el número máximo de pares de cola que se pueden asignar al VPort predeterminado.

Este valor se especifica en potencias de 2 y proporciona la configuración asimétrica y la asignación de pares de cola a VPorts. Para obtener más información, vea asignación simétrica y asimétrica de pares de cola.

Observaciones

La estructura NDIS_NIC_SWITCH_CAPABILITIES se usa en los miembros de las estructuras siguientes:

Solicitudes de consulta OID de OID_NIC_SWITCH_CURRENT_CAPABILITIES y OID_NIC_SWITCH_HARDWARE_CAPABILITIES devuelve una estructura de NDIS_NIC_SWITCH_CAPABILITIES.

Requisitos

Requisito Valor
cliente mínimo admitido Se admite en NDIS 6.20 y versiones posteriores.
encabezado de ntddndis.h (include Ndis.h)

Consulte también

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES

NDIS_OBJECT_HEADER

OID_NIC_SWITCH_CREATE_VPORT

OID_NIC_SWITCH_CURRENT_CAPABILITIES

OID_NIC_SWITCH_HARDWARE_CAPABILITIES