次の方法で共有


NDIS_RECEIVE_QUEUE_INFO 構造体 (ntddndis.h)

NDIS_RECEIVE_QUEUE_INFO構造体には、ネットワーク アダプターの受信キューに関する情報が含まれています。

構文

typedef struct _NDIS_RECEIVE_QUEUE_INFO {
  NDIS_OBJECT_HEADER                   Header;
  ULONG                                Flags;
  NDIS_RECEIVE_QUEUE_TYPE              QueueType;
  NDIS_RECEIVE_QUEUE_ID                QueueId;
  NDIS_RECEIVE_QUEUE_GROUP_ID          QueueGroupId;
  NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE QueueState;
  GROUP_AFFINITY                       ProcessorAffinity;
  ULONG                                NumSuggestedReceiveBuffers;
  ULONG                                MSIXTableEntry;
  ULONG                                LookaheadSize;
  NDIS_VM_NAME                         VmName;
  NDIS_QUEUE_NAME                      QueueName;
  ULONG                                NumFilters;
  ULONG                                InterruptCoalescingDomainId;
} NDIS_RECEIVE_QUEUE_INFO, *PNDIS_RECEIVE_QUEUE_INFO;

メンバー

Header

NDIS_RECEIVE_QUEUE_INFO構造体の型、リビジョン、およびサイズ。 このメンバーは、 NDIS_OBJECT_HEADER 構造体として書式設定されます。

ミニポート ドライバーは、ヘッダーType メンバーをNDIS_OBJECT_TYPE_DEFAULTに設定する必要があります。 NDIS_RECEIVE_QUEUE_INFO構造体のバージョンを指定するには、ドライバーは HeaderRevision メンバーを次のいずれかの値に設定する必要があります。

NDIS_RECEIVE_QUEUE_INFO_REVISION_2

NDIS 6.30 の追加メンバーを追加しました。

メモこの構造のリビジョン 2 は、Windows Server 2012以降のバージョンの Windows Server でのみサポートされています。

[サイズ] メンバーを [NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_2] に設定します。

NDIS_RECEIVE_QUEUE_INFO_REVISION_1

NDIS 6.20 の元のバージョン。

[サイズ] メンバーを [NDIS_SIZEOF_RECEIVE_QUEUE_INFO_REVISION_1] に設定します。

Flags

フラグのビットごとの OR を含む ULONG 値。 このメンバーは NDIS 用に予約されています。

QueueType

受信キューの種類を指定する NDIS_RECEIVE_QUEUE_TYPE 列挙値。

QueueId

受信キュー識別子を含む NDIS_RECEIVE_QUEUE_ID 型の値。 この識別子は、0 からネットワーク アダプターがサポートするキューの数までの整数値です。 NDIS_DEFAULT_RECEIVE_QUEUE_ID の値 は、既定の受信キューを指定します。

QueueGroupId

このメンバーは NDIS 用に予約されています。

QueueState

受信キューの操作状態を指定する NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE 列挙値。

ProcessorAffinity

キュー アフィニティを持つ CPU を指定するGROUP_AFFINITYビットマップ。 たとえば、ビット 0 の設定は CPU 0 が使用されていることを示し、ビット 1 の設定は CPU 1 が使用されていることを示します。 VM キューは 1 つの CPU に関連付けられているため、キューに関するすべての受信通知がそのプロセッサで処理されます。

NumSuggestedReceiveBuffers

ネットワーク アダプターがキューをサポートするために使用する必要がある受信バッファーの数に推奨される値を含む ULONG 値。 この数は、ミニポート ドライバーが使用可能なリソースに対して、またはネットワーク アダプターが他のキューに使用する数に比例して調整できます。 たとえば、実際の受信バッファーの数は、この推奨値の 2 倍または半分にすることができます。

MSIXTableEntry

キューの MSI-X テーブル エントリ インデックスを含む ULONG 値。

LookaheadSize

このキューの先読みサイズ要件のサイズ (バイト単位) の ULONG 値。 VM キューで先読みをサポートするネットワーク アダプターは、受信したパケットを、要求された先読みサイズ以上のオフセットで分割し、DMA を使用して先読みデータと先読み後データを個別の共有メモリ セグメントに転送します。

メモ NDIS 6.30 以降では、パケット データを個別の先読みバッファーに分割することはサポートされなくなりました。 このメンバーの値は 0 に設定する必要があります。

VmName

仮想マシンのわかりやすい説明を含む NDIS_VM_NAME 値。

QueueName

キュー のわかりやすい 説明を含むNDIS_QUEUE_NAME値。

NumFilters

ネットワーク アダプターで構成されている受信フィルターの数を指定する ULONG 値。

メモ NDIS 6.30 以降、ミニポート ドライバーは、ネットワーク アダプターに設定されている受信フィルターの現在の数のカウンターを維持する必要があります。 ドライバーは、OID_RECEIVE_FILTER_SET_FILTERの OID セット要求を介して受信フィルターが設定されるたびにカウンターをインクリメントする必要があります。 また、ドライバーは、OID_RECEIVE_FILTER_CLEAR_FILTERの OID セット要求によって受信フィルターがクリアされるたびにカウンター デクリメントする必要があります。

InterruptCoalescingDomainId

NDIS で使用するために予約されている ULONG 値。 この値は、ミニポート ドライバーによる情報提供のために使用されます。

注釈

NDIS_RECEIVE_QUEUE_INFO構造体は、 のNDIS_RECEIVE_QUEUE_INFO_ARRAY 構造 OID_RECEIVE_FILTER_ENUM_QUEUES ネットワーク アダプターの受信キューを列挙する OID。

OID_RECEIVE_FILTER_ENUM_QUEUESから正常に戻った場合、NDIS は受信キュー配列のプロパティを定義するNDIS_RECEIVE_QUEUE_INFO_ARRAY構造体を提供します。 配列内の各要素は 、NDIS_RECEIVE_QUEUE_INFO 構造体です。

要件

要件
サポートされている最小のクライアント NDIS 6.20 以降でサポートされています。
Header ntddndis.h (Ndis.h を含む)

こちらもご覧ください

NDIS_OBJECT_HEADER

NDIS_RECEIVE_QUEUE_INFO_ARRAY

NDIS_RECEIVE_QUEUE_OPERATIONAL_STATE

NDIS_RECEIVE_QUEUE_TYPE

OID_RECEIVE_FILTER_CLEAR_FILTER

OID_RECEIVE_FILTER_ENUM_QUEUES

OID_RECEIVE_FILTER_SET_FILTER