estructura NDIS_RECEIVE_SCALE_PARAMETERS_V2 (ntddndis.h)

Advertencia

Parte de la información de este tema está relacionada con el producto de versión preliminar, que puede modificarse sustancialmente antes de que se publique comercialmente. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.

RSSv2 solo está en versión preliminar en Windows 10, versión 1803.

La estructura NDIS_RECEIVE_SCALE_PARAMETERS_V2 especifica los parámetros de Escalado lateral de recepción (RSS) para un adaptador de miniporte que anuncia la compatibilidad con RSS versión 2 (RSSv2). Se usa en el OID de OID_GEN_RECEIVE_SCALE_PARAMETERS_V2 .

Sintaxis

typedef struct _NDIS_RECEIVE_SCALE_PARAMETERS_V2 {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              HashInformation;
  ULONG              HashSecretKeySize;
  ULONG              HashSecretKeyOffset;
  ULONG              NumberOfQueues;
  ULONG              NumberOfIndirectionTableEntries;
} NDIS_RECEIVE_SCALE_PARAMETERS_V2, *PNDIS_RECEIVE_SCALE_PARAMETERS_V2;

Miembros

Header

Estructura NDIS_OBJECT_HEADER de la estructura NDIS_RECEIVE_SCALE_PARAMETERS_V2 . Establezca el miembro Type de la estructura que Header especifica para NDIS_OBJECT_TYPE_RSS_PARAMETERS_V2.

En el caso de los controladores 6.80 y posteriores de NDIS, establezca el miembro Revision en NDIS_RECEIVE_SCALE_PARAMETERS_V2_REVISION_1 y el miembro Size en sizeof(NDIS_RECEIVE_SCALE_PARAMETERS_V2)).

Flags

Valor de ULONG que indica qué parámetros se están cambiando. El controlador puede usar estas marcas para determinar rápidamente qué parámetros han cambiado y actualizar la configuración rss en consecuencia.

En una solicitud de consulta, establezca este miembro en cero.

En una solicitud set, las marcas se definen de la siguiente manera:

Valor Significado
NDIS_RECEIVE_SCALE_PARAM_ENABLE_RSS
Un valor de 1 indica que RSS está habilitado para el objeto especificado. El controlador de minipuerto debe examinar otros parámetros.

Un valor de 0 indica que RSS está deshabilitado para el objeto especificado. Los parámetros NumberOfQueues y NumberOfIndirectionTableEntries pueden cambiar cuando RSS está deshabilitado. Otros parámetros como HashInformation y HashKey deben omitirse cuando RSS está deshabilitado.

NDIS_RECEIVE_SCALE_PARAM_HASH_INFO_CHANGED
El valor del parámetro HashInformation ha cambiado.
NDIS_RECEIVE_SCALE_PARAM_HASH_KEY_CHANGED
El contenido del miembro HashSecretKey ha cambiado.
NDIS_RECEIVE_SCALE_PARAM_NUMBER_OF_QUEUES_CHANGED
El número de colas por VPort ha cambiado.
NDIS_RECEIVE_SCALE_PARAM_NUMBER_OF_ENTRIES_CHANGED
El número de entradas de la tabla de direccionamiento indirecto ha cambiado.

HashInformation

En una solicitud set, este miembro es el tipo hash y la función hash que la NIC debe usar para calcular los valores hash de los paquetes entrantes. Si la función hash especificada dentro del miembro HashInformation es cero, RSS se deshabilita.

En una solicitud de consulta, este miembro es el tipo hash y la función hash que usa la NIC.

Los controladores y NDIS pueden usar la macro de NDIS_RSS_HASH_INFO_FROM_TYPE_AND_FUNC para combinar el tipo hash y la función hash en información hash y establecer el miembro HashInformation .

Los controladores de miniport pueden usar la macro NDIS_RSS_HASH_TYPE_FROM_HASH_INFO para obtener el tipo hash de HashInformation y la macro NDIS_RSS_HASH_FUNC_FROM_HASH_INFO para obtener la función hash.

Este parámetro se puede cambiar al mismo tiempo que RSS está habilitado o después.

HashSecretKeySize

Tamaño de la matriz de claves secretas de la función hash, en bytes. El tamaño de la matriz es de 40 bytes para NdisHashFunctionToeplitz.

Este parámetro se puede cambiar al mismo tiempo que RSS está habilitado o después.

HashSecretKeyOffset

Desplazamiento, en bytes, de la clave secreta hash.

Este parámetro se puede cambiar al mismo tiempo que RSS está habilitado o después.

NumberOfQueues

Número máximo de colas para la entidad de escalado. Este parámetro es un alias para la variable NUM_QUEUE_PAIRS de la estructura de NDIS_NIC_SWITCH_VPORT_PARAMETERS , que también se puede consultar o establecer a través del OID de OID_NIC_SWITCH_VPORT_PARAMETERS . Se puede cambiar cuando RSS está habilitado o deshabilitado.

NumberOfIndirectionTableEntries

Número de entradas de tabla de direccionamiento indirecto (ITE) para la entidad de escalado. Este valor es una potencia de dos y no supera las capacidades del adaptador correspondiente. Se puede cambiar en antes de que RSS esté habilitado o después.

Los nuevos valores de este parámetro también son una potencia de dos y superan las funcionalidades del adaptador. Cuando se aumenta este número, el controlador de minipuerto debe clonar la tabla de direccionamiento indirecto actual en las nuevas ITE tantas veces como sea necesario (esto es posible debido a la restricción de potencia de dos). Cuando se reduce este número, la capa superior garantiza que la parte de la tabla de direccionamiento indirecto que se va a quitar contiene réplicas exactas de la parte restante.

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con NDIS 6.80 y versiones posteriores.
Encabezado ntddndis.h (include Ndis.h)

Consulte también

NDIS_NIC_SWITCH_VPORT_PARAMETERS

NDIS_OBJECT_HEADER

NDIS_RSS_HASH_FUNC_FROM_HASH_INFO

NDIS_RSS_HASH_INFO_FROM_TYPE_AND_FUNC

NDIS_RSS_HASH_TYPE_FROM_HASH_INFO

OID_GEN_RECEIVE_SCALE_PARAMETERS_V2

OID_NIC_SWITCH_VPORT_PARAMETERS

RSS versión 2 (RSSv2)