共用方式為


NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES結構 (netreceivescaling.h)

NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES 結構描述 net adapter 的接收端調整 (RSS) 功能。

語法

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;

成員

Size

這個 結構的大小,以位元組為單位。

NumberOfQueues

硬體接收佇列的數目。 此成員必須是2的冪。

IndirectionTableSize

間接數據表項目的數目。 此成員至少必須是 128 和 2 的電源。

UnhashedTargetIndex

未套用哈希之畫面的預設目的地。 此成員的值取決於 UnhashedTargetType 成員的值:

  • 如果 UnhashedTargetType 設定為 NetAdapterReceiveScalingUnhashedTargetTypeUnspecified,則會忽略 UnhashedTarget
  • 如果 UnhashedTargetType 設定為 NetAdapterReceiveScalingUnhashedTargetTypeHashIndex,UnhashedTarget 會在間接取值數據表中指定哈希索引。

這個成員必須是 N,其中 0 <= N < IndirectionTableSize

UnhashedTargetType

NET_ADAPTER_RECEIVE_SCALING_UNHASHED_TARGET_TYPE值,指出未隱藏畫面格的處理類型。

如果此成員設定為 NetAdapterReceiveScalingUnhashedTargetTypeUnspecified,則會忽略 UnhashedTargetIndex ,並預設為 0

如果此成員設定為 NetAdapterReceiveScalingUnhashedTargetTypeHashIndex則 UnhashedTargetIndex 會指出目標哈希值。

ReceiveScalingHashTypes

NET_ADAPTER_RECEIVE_SCALING_HASH_TYPE值,表示計算哈希值的支援的哈希函式類型。

ReceiveScalingProtocolTypes

NET_ADAPTER_RECEIVE_SCALING_PROTOCOL_TYPE值,指出計算哈希值的支持的通訊協議類型。

ReceiveScalingEncapsulationTypes

指出硬體能夠略過哪些封裝技術。

ReceiveScalingEncapsulationTypes.Outer

NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE 值的位 OR,表示 NIC 能夠略過之傳輸 (外部) 封裝類型。

ReceiveScalingEncapsulationTypes.Inner

NET_ADAPTER_RECEIVE_SCALING_ENCAPSULATION_TYPE 值的位 OR,表示 NIC 能夠略過的內部) 封裝類型 (通道。

_RECEIEVE_SCALING_ENCAPSULATION

ReceiveScalingEncapsulationTypes 的標記標識符。

SynchronizeSetIndirectionEntries

布爾值,當設定為 TRUE 時,要求架構同步呼叫 EvtNetAdapterReceiveScalingSetIndirectionEntries。 如果客戶端驅動程式未指定,此成員預設會設定為 FALSE

EvtAdapterReceiveScalingEnable

用戶端驅動程式 EvtNetAdapterReceiveScalingEnable 事件回呼函式的指標。

EvtAdapterReceiveScalingDisable

用戶端驅動程式 EvtNetAdapterReceiveScalingDisable 事件回呼函式的指標。

EvtAdapterReceiveScalingSetHashSecretKey

用戶端驅動程式 EvtNetAdapterReceiveScalingSetHashSecretKey 事件回呼函式的指標。

EvtAdapterReceiveScalingSetIndirectionEntries

用戶端驅動程式 EvtNetAdapterReceiveScalingSetIndirectionEntries 事件回呼函式的指標。

備註

呼叫 NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT 來初始化這個結構。

NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES 結構是 NetAdapterSetReceiveScalingCapabilities 的輸入參數。 客戶端必須在呼叫 NetAdapterSetReceiveScalingCapabilities 之前,使用 NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT 初始化此結構。

規格需求

需求
最低 KMDF 版本 1.27
最低UMDF版本 2.33
標頭 netreceivescaling.h (包含 netadaptercx.h)

另請參閱

NET_ADAPTER_RECEIVE_SCALING_CAPABILITIES_INIT

NetAdapterSetReceiveScalingCapabilities

NetAdapterCx 接收端調整