Freigeben über


NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES Struktur (netreceivescaling.h)

Die NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES-Struktur beschreibt die Rss-Funktionen (Receive Side Scaling) eines Netzadapters.

Syntax

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;

Angehörige

Size

Die Größe dieser Struktur in Byte.

NumberOfQueues

Die Anzahl der Hardware-Empfangswarteschlangen. Dieses Mitglied muss eine Potenz von 2 sein.

IndirectionTableSize

Die Anzahl der Einträge der Dereferenzierungstabelle. Dieses Mitglied muss mindestens 128 und eine Potenz von 2 sein.

UnhashedTargetIndex

Das Standardziel für Frames, auf die kein Hash angewendet wird. Der Wert dieses Elements hängt vom Wert des UnhashedTargetType Mitglieds ab:

  • Wenn "UnhashedTargetType" auf NetAdapterReceiveScalingUnhashedTargetTypeUnspecifiedfestgelegt ist, wird "UnhashedTarget"- ignoriert.
  • Wenn "UnhashedTargetType" auf NetAdapterReceiveScalingUnhashedTargetTypeHashIndexfestgelegt ist, gibt "UnhashedTarget" einen Hashindex in der Dereferenzierungstabelle an.

Dieses Mitglied muss Nsein, wobei 0 <= N < IndirectionTableSize.

UnhashedTargetType

Ein NET_ADAPTER_RECEIVE_SCALING_UNHASHED_TARGET_TYPE Wert, der den Typ der Behandlung für nicht behandelte Frames angibt.

Wenn dieses Element auf NetAdapterReceiveScalingUnhashedTargetTypeUnspecifiedfestgelegt ist, wird "UnhashedTargetIndex"- ignoriert und wird standardmäßig auf 0festgelegt.

Wenn dieses Element auf NetAdapterReceiveScalingUnhashedTargetTypeHashIndexfestgelegt ist, gibt "UnhashedTargetIndex" den Zielhashwert an.

ReceiveScalingHashTypes

Ein NET_ADAPTER_RECEIVE_SCALING_HASH_TYPE Wert, der unterstützte Hashfunktionstypen für die Berechnung von Hashwerten angibt.

ReceiveScalingProtocolTypes

Ein NET_ADAPTER_RECEIVE_SCALING_PROTOCOL_TYPE Wert, der die unterstützten Protokolltypen für die Berechnung von Hashwerten angibt.

ReceiveScalingEncapsulationTypes

Gibt an, welche Kapselungstechnologien die Hardware umgehen kann.

ReceiveScalingEncapsulationTypes.Outer

Ein bitweiser ODER von NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE Werten, die die Transport-(äußeren) Kapselungstypen angibt, die die NIC umgehen kann.

ReceiveScalingEncapsulationTypes.Inner

Ein bitweises ODER von NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE Werten, die die Tunnel-Kapselungstypen angibt, die die NIC umgehen kann.

_RECEIEVE_SCALING_ENCAPSULATION

Der Tagbezeichner für ReceiveScalingEncapsulationTypes.

SynchronizeSetIndirectionEntries

Ein boolescher Wert, der bei Festlegung auf TRUEaufruft, die das Framework Aufrufe an EvtNetAdapterReceiveScalingSetIndirectionEntriessynchronisiert. Dieses Element ist standardmäßig auf FALSE- festgelegt, wenn der Clienttreiber sie nicht angibt.

EvtAdapterReceiveScalingEnable

Ein Zeiger auf die EvtNetAdapterReceiveScalingEnable Ereignisrückruffunktion des Clienttreibers.

EvtAdapterReceiveScalingDisable

Ein Zeiger auf die EvtNetAdapterReceiveScalingDisable Ereignisrückruffunktion des Clienttreibers.

EvtAdapterReceiveScalingSetHashSecretKey

Ein Zeiger auf die EvtNetAdapterReceiveScalingSetHashSecretKey Ereignisrückruffunktion des Clienttreibers.

EvtAdapterReceiveScalingSetIndirectionEntries

Ein Zeiger auf die EvtNetAdapterReceiveScalingSetIndirectionEntries Ereignisrückruffunktion des Clienttreibers.

Bemerkungen

Rufen Sie NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT auf, um diese Struktur zu initialisieren.

Die NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES Struktur ist ein Eingabeparameter für NetAdapterSetReceiveScalingCapabilities. Der Client muss NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT verwenden, um diese Struktur zu initialisieren, bevor NetAdapterSetReceiveScalingCapabilitiesaufgerufen wird.

Anforderungen

Anforderung Wert
Minimale KMDF-Version 1.27
Mindest-UMDF-Version 2.33
Header- netreceivescaling.h (include netadaptercx.h)

Siehe auch

NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT

NetAdapterSetReceiveScalingCapabilities

NetAdapterCx Receive Side Scaling