estructura NDIS_RECEIVE_SCALE_CAPABILITIES (ntddndis.h)
La estructura NDIS_RECEIVE_SCALE_CAPABILITIES especifica las funcionalidades de escalado lateral de recepción (RSS) de un adaptador de minipuerto.
Sintaxis
typedef struct _NDIS_RECEIVE_SCALE_CAPABILITIES {
NDIS_OBJECT_HEADER Header;
NDIS_RSS_CAPS_FLAGS CapabilitiesFlags;
ULONG NumberOfInterruptMessages;
ULONG NumberOfReceiveQueues;
USHORT NumberOfIndirectionTableEntries;
} NDIS_RECEIVE_SCALE_CAPABILITIES, *PNDIS_RECEIVE_SCALE_CAPABILITIES;
Miembros
Header
Estructura NDIS_OBJECT_HEADER de la estructura NDIS_RECEIVE_SCALE_CAPABILITIES. Establezca el miembro type de de la estructura que encabezado especifica para NDIS_OBJECT_TYPE_RSS_CAPABILITIES.
Para NDIS 6.60 y versiones posteriores, establezca el miembro Revisión de en NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_3 y el miembro Size en NDIS_SIZEOF_RECEIVE_SCALE_CAPABILITIES_REVISION_3.
Para NDIS 6.30 y versiones posteriores, establezca el miembro Revision en NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_2 y el miembro Size size en NDIS_SIZEOF_RECEIVE_SCALE_CAPABILITIES_REVISION_2.
Para NDIS 6.0, 6.1 y 6.20, establezca el miembro revision de en NDIS_RECEIVE_SCALE_CAPABILITIES_REVISION_1 y el miembro Size de en NDIS_SIZEOF_RECEIVE_SCALE_CAPABILITIES_REVISION_1.
CapabilitiesFlags
Máscara de bits de marcas que especifican las funcionalidades RSS de la NIC. El controlador miniport puede especificar las marcas siguientes:
Valor | Significado |
---|---|
|
Establezca esta marca si la NIC admite interrupciones con señal de mensaje (MSA). Esta marca indica que la NIC puede generar una interrupción independiente para cada CPU después de poner en cola los paquetes asignados a esa CPU. |
|
Establezca esta marca si la NIC puede indicar a la función de miniportInterrupt función que las CPU de destino han puesto en cola los paquetes recibidos. |
|
Establezca esta marca si la NIC usa interrupciones señaladas de mensaje (MSA). Esta marca se admite en NDIS 6.20 y versiones posteriores. |
|
Establezca esta marca si la NIC admite la configuración RSS independiente de los puertos. Esta marca se admite en NDIS 6.30 y versiones posteriores. |
|
Establezca esta marca si la NIC admite MSIs. Esta marca se admite en NDIS 6.30 y versiones posteriores. |
|
Establezca esta marca si el controlador de miniporte puede detectar qué CPU de destino han puesto en cola los paquetes de recepción de su función MiniportInterruptDPC. |
|
Establezca esta marca si la NIC puede identificar un paquete IPv4 (con o sin opciones). Además, la NIC admite el cálculo del valor hash sobre los campos de encabezado IPv4 y los campos de encabezado TCP. |
|
Establezca esta marca si la NIC puede identificar un paquete IPv6 y calcular un valor hash en los campos de un paquete IPv6. La NIC debe poder calcular un valor hash en los campos del encabezado IPv6 básico y sobre los campos del encabezado TCP. Use esta marca si la NIC no puede calcular un valor hash sobre los campos que se encuentran en los encabezados de extensión IPv6. |
|
Establezca esta marca si la NIC puede identificar un paquete IPv6 y calcular un valor hash en los campos de un paquete IPv6 que contiene encabezados de extensión IPv6. La NIC puede calcular un valor hash en los campos del encabezado IPv6 básico, los encabezados de extensión IPv6 y el encabezado TCP. La NIC debe poder calcular los valores hash en los campos de la opción de dirección principal y el encabezado de enrutamiento de tipo 2 en los encabezados de extensión IPv6. |
|
Establezca esta marca si la NIC puede identificar un paquete IPv4, con o sin opciones, y si la NIC admite el cálculo del valor hash sobre los campos de encabezado IPv4 y los campos de encabezado UDP. |
|
Establezca esta marca si la NIC puede identificar un paquete IPv6 y calcular un valor hash en los campos de un paquete IPv6. La NIC debe poder calcular un valor hash en los campos del encabezado IPv6 básico y sobre los campos del encabezado UDP. Use esta marca si la NIC no puede calcular un valor hash sobre los campos que se encuentran en los encabezados de extensión IPv6. |
|
Establezca esta marca si la NIC puede identificar un paquete IPv6 y calcular un valor hash en los campos de un paquete IPv6 que contiene encabezados de extensión IPv6. La NIC puede calcular un valor hash en los campos del encabezado IPv6 básico, los encabezados de extensión IPv6 y el encabezado UDP. La NIC debe poder calcular los valores hash en los campos de la opción de dirección principal y el encabezado de enrutamiento de tipo 2 en los encabezados de extensión IPv6. |
|
Establezca esta marca si la NIC admite la función hash toeplitz. Si la NIC admite RSS, la compatibilidad con la función hash es obligatoria. Para obtener más información sobre las funciones hash, vea NDIS_RSS_HASH_FUNC_FROM_HASH_INFO. |
|
Esta marca está reservada para uso futuro. |
|
Esta marca está reservada para uso futuro. |
|
Esta marca está reservada para uso futuro. |
NumberOfInterruptMessages
Número de mensajes de interrupción que admite la NIC si la NIC admite MSIs. Si la NIC no admite MSIs, pero admite interrupciones basadas en línea, establezca este número en 1.
NumberOfReceiveQueues
El número de colas de hardware que admite la NIC.
NumberOfIndirectionTableEntries
Número máximo de entradas que admite el controlador de miniport en la tabla de direccionamiento indirecto. Este valor debe ser una potencia de 2. Todos los adaptadores de miniporte NDIS 6.30 y versiones posteriores deben admitir este miembro, que es necesario para las funciones virtuales.
Observaciones
Los controladores demasiado excesivos pueden usar el OID_GEN_RECEIVE_SCALE_CAPABILITIES OID para consultar las funcionalidades de escalado lateral de recepción (RSS) de una NIC y su controlador de miniport.
El controlador miniport devuelve las funcionalidades RSS en una estructura NDIS_RECEIVE_SCALE_CAPABILITIES.
En algunas cargas de trabajo, se podría fragmentar un subconjunto de paquetes UDP debido a cambios de ruta o al remitente que no cumple las limitaciones de MTU. En tales casos excepcionales, los paquetes del mismo flujo podrían indicarse en diferentes procesadores basados en el hash de 4 tuplas o 2-tuplas. Por lo tanto, los controladores de miniporte que anuncian NDIS_RSS_CAPS_HASH_TYPE_UDP_IPV4, NDIS_RSS_CAPS_HASH_TYPE_UDP_IPV6y NDIS_RSS_CAPS_HASH_TYPE_UDP_IPV6_EX deben proporcionar una manera de deshabilitar las funcionalidades RSS de UDP a través de propiedades avanzadas.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Se admite en NDIS 6.0 y versiones posteriores. |
encabezado de | ntddndis.h (include Ndis.h) |