共用方式為


NDIS_RECEIVE_HASH_PARAMETERS結構 (ntddndis.h)

NDIS_RECEIVE_HASH_PARAMETERS 結構會指定支援接收哈希計算之迷你埠配接器的接收哈希參數。

語法

typedef struct _NDIS_RECEIVE_HASH_PARAMETERS {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              HashInformation;
  USHORT             HashSecretKeySize;
  ULONG              HashSecretKeyOffset;
} NDIS_RECEIVE_HASH_PARAMETERS, *PNDIS_RECEIVE_HASH_PARAMETERS;

成員

Header

NDIS_RECEIVE_HASH_PARAMETERS 結構的 NDIS_OBJECT_HEADER 結構。 將 Header 指定為 NDIS_OBJECT_TYPE_DEFAULT 的 Type 成員、將 Revision 成員設定為 NDIS_RECEIVE_HASH_PARAMETERS_REVISION_1,並將 Size 成員設定為 NDIS_SIZEOF_RECEIVE_HASH_PARAMETERS_REVISION_1。

Flags

USHORT 值,指出迷你埠驅動程序應該使用哈希參數執行的動作。 迷你埠驅動程式可以使用這些旗標,快速判斷哪些參數已變更,並據以更新哈希設定。

在集合要求中,旗標的定義如下:

NDIS_RECEIVE_HASH_FLAG_ENABLE_HASH

如果已設定此旗標,請在接收的畫面格上啟用計算哈希值,並將導出的哈希值放在 NET_BUFFER_LIST 結構中的 NetBufferListHashValue OOB 資訊中。

如果這個旗標清楚,請停用所接收畫面格上哈希值的計算。

如果已啟用接收哈希計算,迷你埠驅動程序應該設定此旗標;否則,此旗標應為清楚。

NDIS_RECEIVE_HASH_FLAG_HASH_INFO_UNCHANGED

HashInformation 成員尚未變更。 哈希資訊包括哈希類型和哈希函式。

如果設定此旗標,則應該忽略NDIS_RECEIVE_HASH_PARAMETERS結構的HashInformation成員。

如果清除此旗標,HashInformation 成員會包含一個新的值,迷你埠驅動程序必須使用這個值來計算接收畫面格上的哈希值。

NDIS_RECEIVE_HASH_FLAG_HASH_KEY_UNCHANGED

秘密金鑰和相關聯的數據成員尚未變更。

如果設定此旗標,則應該忽略秘密密鑰和相關聯的數據成員。

如果清除此旗標,秘密密鑰或相關聯的數據成員已變更,而迷你埠驅動程序必須使用新的資訊。

在查詢要求中,旗標的定義如下:

HashInformation

在集合要求中,NIC 應該用來計算傳入封包哈希值的哈希類型和哈希函式。

在查詢要求中,NIC 所使用的哈希類型和哈希函式。

過度應用驅動程式和 NDIS 可以使用 NDIS_RSS_HASH_INFO_FROM_TYPE_AND_FUNC 巨集,將哈希類型和哈希函式合併為哈希資訊,並設定hashInformation 成員

迷你埠驅動程式可以使用 NDIS_RSS_HASH_TYPE_FROM_HASH_INFO 巨集,從hashInformation 取得哈希類型 NDIS_RSS_HASH_FUNC_FROM_HASH_INFO 巨集以取得哈希函式。

HashSecretKeySize

哈希函式的秘密金鑰陣列大小,以位元組為單位。 NdisHashFunctionToeplitz 的陣列大小為40個字節。

HashSecretKeyOffset

哈希函式的秘密金鑰陣列從NDIS_RECEIVE_HASH_PARAMETERS結構的開頭位移。 使用此位移來取得 320 位 (40 位元組) 秘密金鑰。

在設定要求中,秘密密鑰可以包含過度驅動程序選擇的任何數據。

在查詢要求中,秘密金鑰包含 NIC 正在使用的資料。

言論

NDIS_RECEIVE_HASH_PARAMETERS 結構會定義 OID_GEN_RECEIVE_HASH OID 的哈希參數。

注意 通訊協定驅動程序必須先停用接收哈希計算,才能啟用 RSS。 如果啟用 RSS,通訊協定驅動程式會在啟用接收哈希計算之前停用 RSS。 如果目前已啟用其他服務,迷你埠驅動程式應該會失敗要求以啟用接收哈希計算或 RSS。
 
附註 秘密金鑰會在NDIS_RECEIVE_HASH_PARAMETERS結構成員之後附加。
 

要求

要求 價值
最低支援的用戶端 NDIS 6.0 和更新版本支援。
標頭 ntddndis.h (包括 Ndis.h)

另請參閱

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

NET_BUFFER_LIST

OID_GEN_RECEIVE_HASH