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