Condividi tramite


struttura NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES (netreceivescaling.h)

La struttura NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES descrive le funzionalità di ridimensionamento lato ricezione di un adattatore di rete (RSS).

Sintassi

typedef struct _NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES {
  ULONG                                                   Size;
  SIZE_T                                                  NumberOfQueues;
  SIZE_T                                                  IndirectionTableSize;
  SIZE_T                                                  UnhashedTargetIndex;
  NET_ADAPTER_RECEIVE_SCALING_UNHASHED_TARGET_TYPE        UnhashedTargetType;
  NET_ADAPTER_RECEIVE_SCALING_HASH_TYPE                   ReceiveScalingHashTypes;
  NET_ADAPTER_RECEIVE_SCALING_PROTOCOL_TYPE               ReceiveScalingProtocolTypes;
  struct {
    NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE Outer;
    NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE Inner;
  } ReceiveScalingEncapsulationTypes;
  _RECEIEVE_SCALING_ENCAPSULATION                         _RECEIEVE_SCALING_ENCAPSULATION;
  BOOLEAN                                                 SynchronizeSetIndirectionEntries;
  PFN_NET_ADAPTER_RECEIVE_SCALING_ENABLE                  EvtAdapterReceiveScalingEnable;
  PFN_NET_ADAPTER_RECEIVE_SCALING_DISABLE                 EvtAdapterReceiveScalingDisable;
  PFN_NET_ADAPTER_RECEIVE_SCALING_SET_HASH_SECRET_KEY     EvtAdapterReceiveScalingSetHashSecretKey;
  PFN_NET_ADAPTER_RECEIVE_SCALING_SET_INDIRECTION_ENTRIES EvtAdapterReceiveScalingSetIndirectionEntries;
} NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES;

Members

Size

Dimensioni di questa struttura, in byte.

NumberOfQueues

Numero di code di ricezione hardware. Questo membro deve essere un potere di 2.

IndirectionTableSize

Numero di voci della tabella di riferimento indiretto. Questo membro deve avere un minimo di 128 e una potenza pari a 2.

UnhashedTargetIndex

Destinazione predefinita per i frame a cui non viene applicato alcun hash. Il valore di questo membro dipende dal valore del membro UnhashedTargetType :

  • Se UnhashedTargetType è impostato su NetAdapterReceiveScalingUnhashedTargetTypeUnspecified, UnhashedTarget viene ignorato.
  • Se UnhashedTargetType è impostato su NetAdapterReceiveScalingUnhashedTargetTypeHashIndex, UnhashedTarget specifica un indice hash nella tabella di riferimento indiretto.

Questo membro deve essere N, dove 0 <= N < IndirectionTableSize.

UnhashedTargetType

Valore NET_ADAPTER_RECEIVE_SCALING_UNHASHED_TARGET_TYPE che indica il tipo di gestione per i frame senzaash.

Se questo membro è impostato su NetAdapterReceiveScalingUnhashedTargetTypeUnspecified, UnhashedTargetIndex viene ignorato e il valore predefinito è 0.

Se questo membro è impostato su NetAdapterReceiveScalingUnhashedTargetTypeHashIndex, UnhashedTargetIndex indica il valore hash di destinazione.

ReceiveScalingHashTypes

Valore NET_ADAPTER_RECEIVE_SCALING_HASH_TYPE che indica i tipi di funzione hash supportati per il calcolo dei valori hash.

ReceiveScalingProtocolTypes

Valore NET_ADAPTER_RECEIVE_SCALING_PROTOCOL_TYPE che indica i tipi di protocollo supportati per il calcolo dei valori hash.

ReceiveScalingEncapsulationTypes

Indica quali tecnologie di incapsulamento l'hardware è in grado di ignorare.

ReceiveScalingEncapsulationTypes.Outer

OR bit per bit dei valori di NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE che indica i tipi di incapsulamento del trasporto (esterno) che l'interfaccia di rete è in grado di ignorare.

ReceiveScalingEncapsulationTypes.Inner

OR bit per bit dei valori NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE che indica i tipi di incapsulamento del tunnel (interno) che l'interfaccia di rete è in grado di ignorare.

_RECEIEVE_SCALING_ENCAPSULATION

Identificatore di tag per ReceiveScalingEncapsulationTypes.

SynchronizeSetIndirectionEntries

Valore booleano che, se impostato su TRUE, richiede che il framework sincronizzi le chiamate a EvtNetAdapterReceiveScalingSetIndirectionEntries. Questo membro è impostato su FALSE per impostazione predefinita se il driver client non lo specifica.

EvtAdapterReceiveScalingEnable

Puntatore alla funzione di callback dell'evento EvtNetAdapterReceiveScalingEnable del driver client.

EvtAdapterReceiveScalingDisable

Puntatore alla funzione di callback dell'evento EvtNetAdapterReceiveScalingDisable del driver client.

EvtAdapterReceiveScalingSetHashSecretKey

Puntatore alla funzione di callback dell'evento EvtNetAdapterReceiveScalingSetHashSecretKey del driver client.

EvtAdapterReceiveScalingSetIndirectionEntries

Puntatore alla funzione di callback dell'evento EvtNetAdapterReceiveScalingSetIndirectionEntries del driver client.

Commenti

Chiamare NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT per inizializzare questa struttura.

La struttura NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES è un parametro di input per NetAdapterSetReceiveScalingCapabilities. Il client deve usare NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT per inizializzare questa struttura prima di chiamare NetAdapterSetReceiveScalingCapabilities.

Requisiti

Requisito Valore
Versione KMDF minima 1.27
Versione UMDF minima 2.33
Intestazione netreceivescaling.h (include netadaptercx.h)

Vedi anche

NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT

NetAdapterSetReceiveScalingCapabilities

NetAdapterCx Receive Side Scaling