NDIS_QOS_CAPABILITIES 構造体 (ntddndis.h)

NDIS_QOS_CAPABILITIES構造体は、IEEE 802.1 データ センター ブリッジング (DCB) インターフェイスをサポートするネットワーク アダプターの NDIS サービス品質 (QoS) 機能を指定します。

構文

typedef struct _NDIS_QOS_CAPABILITIES {
  NDIS_OBJECT_HEADER Header;
  ULONG              Flags;
  ULONG              MaxNumTrafficClasses;
  ULONG              MaxNumEtsCapableTrafficClasses;
  ULONG              MaxNumPfcEnabledTrafficClasses;
} NDIS_QOS_CAPABILITIES, *PNDIS_QOS_CAPABILITIES;

メンバー

Header

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

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

NDIS_QOS_CAPABILITIES_REVISION_1

NDIS 6.30 以降の元のバージョン。

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

Flags

ネットワーク アダプターがサポートする NDIS QoS 機能を指定するフラグのビットごとの OR を含む ULONG 値。 次のフラグが定義されています。

NDIS_QOS_CAPABILITIES_STRICT_TSA_SUPPORTED

このフラグが設定されている場合、ネットワーク アダプターは、厳密な優先度伝送選択アルゴリズム (TSA) をサポートします。 このアルゴリズムの詳細については、「 厳密な優先度アルゴリズム」を参照してください。

メモ DCB に準拠するには、ネットワーク アダプターが厳密な優先度 TSA をサポートする必要があります。
 

NDIS_QOS_CAPABILITIES_MACSEC_BYPASS_SUPPORTED

このフラグが設定されている場合、ネットワーク アダプターはメディア アクセス制御セキュリティ (MACsec) 処理をバイパスする機能をサポートします。 MACsec の詳細については、802.1AE-2006 標準を参照してください。

NDIS_QOS_CAPABILITIES_CEE_DCBX_SUPPORTED

このフラグが設定されている場合、ネットワーク アダプターとミニポート ドライバーは、IEEE 802.1Qaz Data Center ブリッジング Exchange (DCBX) プロトコルより前のプロトコルをサポートします。 これらのプロトコルには、コンバージド エンハンスド イーサネット (CEE) スイートのプロトコルが含まれます。

NDIS_QOS_CAPABILITIES_IEEE_DCBX_SUPPORTED

このフラグが設定されている場合、ネットワーク アダプターとミニポート ドライバーは、IEEE 802.1Qaz DCBX プロトコルをサポートします。 DCBX プロトコルを使用すると、直接接続された 2 つのピア間で DCB パラメーターを交換できます。 これにより、これらのピアは、接続経由でデータ転送を最適化するために、これらのパラメーターを調整および調整できます。 このプロトコルの詳細については、「 データ センター ブリッジングの概要」を参照してください。

メモ このフラグが設定されている場合、ミニポート ドライバーは DCBX パケットの送信要求を拒否する必要があります。
 

MaxNumTrafficClasses

ネットワーク アダプターがサポートする NDIS QoS トラフィック クラスの最大数を指定する ULONG 値。 詳細については、「 NDIS QoS トラフィック クラス」を参照してください。

メモ ネットワーク アダプターが DCB の NDIS QoS をサポートするには、少なくとも 3 つのトラフィック クラスをサポートする必要があります。
 

MaxNumEtsCapableTrafficClasses

ネットワーク アダプターが拡張伝送選択 (ETS) アルゴリズムで使用できる QoS トラフィック クラスの最大数を指定する ULONG 値。 この値は 、MaxNumTrafficClasses メンバーの値以下である必要があります。

ETS の詳細については、「 拡張伝送選択 (ETS) アルゴリズム」を参照してください。

メモ ネットワーク アダプターが DCB の NDIS QoS をサポートするには、少なくとも 2 つの ETS 対応トラフィック クラスをサポートする必要があります。
 

MaxNumPfcEnabledTrafficClasses

ネットワーク アダプターが優先度ベースのフロー制御 (PFC) アルゴリズムで使用できる QoS トラフィック クラスの最大数を指定する ULONG 値。 この値は 、MaxNumTrafficClasses メンバーの値以下である必要があります。

PFC の詳細については、「 優先度ベースのフロー制御 (PFC)」を参照してください。

メモ ネットワーク アダプターが DCB の NDIS QoS をサポートするには、少なくとも 1 つのPFC 対応トラフィック クラスをサポートする必要があります。
 

注釈

ミニポート ドライバーは、次の手順に従って、ドライバーの MiniportInitializeEx 関数から基になるネットワーク アダプターの NDIS QoS 機能を登録します。

  1. ミニポート ドライバーは、ネットワーク アダプターの NDIS QoS 機能を使用して、 NDIS_QOS_CAPABILITIES 構造体を初期化します。
  2. ミニポート ドライバーは、ネットワーク アダプターの他のハードウェア支援機能を使用して、 NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 構造体を初期化します。 ドライバーは、NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES構造体の HardwareQosCapabilities メンバーをNDIS_QOS_CAPABILITIES構造体へのポインターに設定します。
  3. ミニポート ドライバーは NdisMSetMiniportAttributes を呼び出し、 MiniportAttributes パラメーターを NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES 構造体へのポインターに設定します。
NDIS_QOS_CAPABILITIES構造体は、OID_QOS_CURRENT_CAPABILITIESOID_QOS_HARDWARE_CAPABILITIESの OID クエリ要求でも返されます。

要件

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

こちらもご覧ください

NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES

NDIS_OBJECT_HEADER

NdisMSetMiniportAttributes

OID_QOS_CURRENT_CAPABILITIES

OID_QOS_HARDWARE_CAPABILITIES