次の方法で共有


NDIS_RECEIVE_SCALE_PARAMETERS_V2構造体 (ntddndis.h)

警告

このトピックの一部の情報は、リリース前の製品に関連しており、商用リリース前に大幅に変更される可能性があります。 Microsoft は、ここで提供される情報に関して明示的または黙示的な保証を行いません。

RSSv2 は、Windows 10 バージョン 1803 でのみプレビューです。

NDIS_RECEIVE_SCALE_PARAMETERS_V2 構造体は、RSS バージョン 2 (RSSv2)のサポートをアドバタイズするミニポート アダプターの受信側スケーリング (RSS) パラメーターを指定します。 これは、OID_GEN_RECEIVE_SCALE_PARAMETERS_V2 OID で使用されます。

構文

typedef struct _NDIS_RECEIVE_SCALE_PARAMETERS_V2 {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              HashInformation;
  ULONG              HashSecretKeySize;
  ULONG              HashSecretKeyOffset;
  ULONG              NumberOfQueues;
  ULONG              NumberOfIndirectionTableEntries;
} NDIS_RECEIVE_SCALE_PARAMETERS_V2, *PNDIS_RECEIVE_SCALE_PARAMETERS_V2;

メンバーズ

Header

NDIS_RECEIVE_SCALE_PARAMETERS_V2 構造体の NDIS_OBJECT_HEADER 構造体。 NDIS_OBJECT_TYPE_RSS_PARAMETERS_V2に指定 ヘッダー 構造体の メンバーを設定します。

NDIS 6.80 以降のドライバーの場合は、リビジョン メンバーを NDIS_RECEIVE_SCALE_PARAMETERS_V2_REVISION_1 に設定し、サイズ メンバーを sizeof(NDIS_RECEIVE_SCALE_PARAMETERS_V2)に設定します。

Flags

変更するパラメーターを示す ULONG 値。 ドライバーは、これらのフラグを使用して、変更されたパラメーターをすばやく特定し、それに応じて RSS 設定を更新できます。

クエリ要求で、このメンバーを 0 に設定します。

set 要求では、フラグは次のように定義されます。

価値 意味
NDIS_RECEIVE_SCALE_PARAM_ENABLE_RSS
1 は、指定したオブジェクトに対して RSS が有効になっていることを示します。 ミニポート ドライバーは、他のパラメーターを調べます。

0 は、指定したオブジェクトに対して RSS が無効になっていることを示します。 NumberOfQueues および NumberOfIndirectionTableEntries パラメーターは、RSS が無効になっていると変更される可能性があります。 RSS が無効になっている場合、HashInformation や hashKey などのその他のパラメーターは無視する必要があります。

NDIS_RECEIVE_SCALE_PARAM_HASH_INFO_CHANGED
HashInformation パラメーターの値が変更されました。
NDIS_RECEIVE_SCALE_PARAM_HASH_KEY_CHANGED
HashSecretKey メンバーの内容が変更されました。
NDIS_RECEIVE_SCALE_PARAM_NUMBER_OF_QUEUES_CHANGED
VPort あたりのキューの数が変更されました。
NDIS_RECEIVE_SCALE_PARAM_NUMBER_OF_ENTRIES_CHANGED
間接テーブル内のエントリの数が変更されました。

HashInformation

セット要求では、このメンバーは、NIC が受信パケットのハッシュ値を計算するために使用する必要があるハッシュの種類とハッシュ関数です。 HashInformation メンバー内で指定されたハッシュ関数が 0 の場合、RSS は無効になります。

クエリ要求では、このメンバーは 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 マクロを使用してハッシュ関数を取得できます。

このパラメーターは、RSS が有効になっていると同時に、または後で変更できます。

HashSecretKeySize

ハッシュ関数の秘密鍵配列のサイズ (バイト単位)。 配列のサイズは、NdisHashFunctionToeplitz 40 バイトです。

このパラメーターは、RSS が有効になっていると同時に、または後で変更できます。

HashSecretKeyOffset

ハッシュ 秘密鍵のオフセット (バイト単位)。

このパラメーターは、RSS が有効になっていると同時に、または後で変更できます。

NumberOfQueues

スケーリング エンティティのキューの最大数。 このパラメーターは、NDIS_NIC_SWITCH_VPORT_PARAMETERS 構造体のNUM_QUEUE_PAIRS変数のエイリアスであり、OID_NIC_SWITCH_VPORT_PARAMETERS OID を使用してクエリまたは設定することもできます。 RSS が有効または無効になっている場合に変更できます。

NumberOfIndirectionTableEntries

スケーリング エンティティの間接テーブル エントリ (ITEs) の数。 この値は 2 の累乗であり、対応するアダプターの機能を超えません。 これは、RSS が有効になる前または後で変更できます。

このパラメーターの新しい値も 2 の累乗であり、アダプターの機能を超えています。 この数が増えると、ミニポート ドライバーは、現在の間接参照テーブルを必要な回数だけ新しい ITEs に複製する必要があります (これは、2 の累乗制限が原因で可能です)。 この数を減らすと、上位レイヤーは、削除される間接テーブルの部分に残りの部分の正確なレプリカが含まれていることを保証します。

必要条件

要件 価値
サポートされる最小クライアント NDIS 6.80 以降でサポートされています。
ヘッダー ntddndis.h (Ndis.h を含む)

関連項目

NDIS_NIC_SWITCH_VPORT_PARAMETERS

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

OID_GEN_RECEIVE_SCALE_PARAMETERS_V2

OID_NIC_SWITCH_VPORT_PARAMETERS

RSS バージョン 2 (RSSv2)