次の方法で共有


OID_QOS_PARAMETERS

データ センター ブリッジング (DCB) コンポーネント (Msdcb.sys) は、OID_QOS_PARAMETERS のオブジェクト識別子 (OID) メソッド要求を発行して、ネットワーク アダプターでローカル NDIS サービス品質 (QoS) パラメーターを構成します。

NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_QOS_PARAMETERS 構造体を指すポインターが含まれています。

IEEE 802.1 データ センター ブリッジング (DCB) インターフェイスの NDIS QoS をサポートするミニポート ドライバーには、この OID メソッド要求が必須です。

解説

ミニポート ドライバーは、OID_QOS_PARAMETERS の OID メソッド要求を介して、ローカル NDIS QoS パラメーターを取得します。 これらのパラメーターは、ネットワーク アダプターが送信、つまり、エグレス パケットに優先順位を付ける方法を定義します。 これらのパラメーターについて詳しくは、「NDIS QoS パラメーターの概要」をご覧ください。

OID_QOS_PARAMETERS の OID メソッド要求を発行できるのは DCB コンポーネントだけです。 上部のプロトコルまたはフィルター ドライバーは、この OID を発行できません。 DCB コンポーネントについて詳しくは、「データ センター ブリッジングの NDIS QoS アーキテクチャ」をご覧ください。

DCB コンポーネントは、次の条件下で OID_QOS_PARAMETERS 要求を発行します。

  • システム管理者が Microsoft DCB サーバー機能をインストールまたはアンインストールする。

    DCB サーバー機能の詳細については、「システム提供の DCB コンポーネント」を参照してください。

  • システム管理者が機能のインストール中に DCB サーバー機能を有効または無効にする。

  • システム管理者が DCB サーバー機能パラメーターのいずれかを変更する。

  • DCB サーバー機能のインストール中にオペレーティング システムが起動または再起動する。

ミニポート ドライバーは、OID_QOS_PARAMETERS の OID メソッド要求を処理する場合、次のガイドラインに従う必要があります。

  • ミニポート ドライバーは、NDIS_QOS_PARAMETERS 構造体内のデータをローカル NDIS QoS パラメーターのキャッシュにコピーします。 その後、ドライバーは、ローカル NDIS QoS パラメーターのキャッシュと、リモート ピアから受信した NDIS QoS パラメーターのキャッシュに基づいて、その操作 NDIS QoS パラメーターを解決します。

    ミニポート ドライバーが操作パラメーターを解決する方法の詳細については、「操作 NDIS QoS パラメーターの解決」を参照してください。

  • ミニポート ドライバーは、NDIS_QOS_PARAMETERS 構造体内に含まれているデータを変更することはできません。 ドライバーは、OID メソッドの要求を完了し、NDIS_QOS_PARAMETERS 構造体内の元のデータを返す必要があります。

  • NDIS_QOS_PARAMETERS_WILLING フラグは、ミニポート ドライバーがローカル Data Center Bridging Exchange (DCBX) Willing 状態を有効または無効にするかどうかを指定します。 ドライバーは、次の方法でこのフラグを処理します。

    • このフラグが設定されている場合、ミニポート ドライバーは、ローカル DCBX Willing 状態を有効にする必要があります。 これにより、ドライバーを QoS 設定を使用してリモートで構成できます。 この場合、ドライバーは、リモート QoS パラメーターに基づいて操作 QoS パラメーターを解決します。 ミニポート ドライバーは、独立ハードウェア ベンダー (IHV) が定義する独自の QoS 設定に基づいて動作 QoS パラメーターを解決することもできます。

    • このフラグが設定されていない場合、ミニポート ドライバーは、ローカル DCBX Willing 状態を無効にする必要があります。 これにより、ドライバーは、リモート QoS パラメーターではなく、ローカル QoS パラメーターから操作 QoS パラメーターを解決できます。 ミニポート ドライバーでも、関連する NDIS_QOS_PARAMETERS_Xxx_CONFIGURED フラグが設定されていないローカル QoS パラメーターを無効にするか、オーバーライドする必要があります。

      たとえば、ミニポート ドライバーは、IHV によって定義されている QoS パラメーターの独自の設定で、未構成のローカル QoS パラメーターをオーバーライドできます。 NDIS_QOS_PARAMETERS_Xxx_CONFIGURED フラグで指定されていないローカル QoS パラメーターの独自の設定がない場合、ドライバーはネットワーク アダプターでこれらの QoS パラメーターの使用を無効にする必要があります。

      ドライバーは、ネットワーク アダプターで有効になっているプロトコルまたはテクノロジで使用される QoS パラメーターを侵害する場合、構成されたローカル QoS パラメーターをオーバーライドすることもできます。 たとえば、ネットワーク アダプターにおいて Fibre Channel over Ethernet (FCoE) プロトコル経由でのリモート ブートが有効になっている場合、ドライバーはローカル QoS パラメーターをオーバーライドできます。

    ローカル DCBX の Willing 状態の詳細については、「ローカル DCBX Willing State の管理」を参照してください。

ミニポート ドライバーがローカル QoS パラメーターをオーバーライドする方法の詳細については、「NDIS QoS パラメーターの管理」を参照してください。

ローカル QoS パラメーターをオーバーライドしても、ミニポート ドライバーで OID_QOS_PARAMETERS の OID メソッド要求が失敗することはありません。

ミニポート ドライバーがローカル QoS パラメーターを管理する方法の詳細については、「ローカル NDIS QoS パラメーターの設定」を参照してください。

状態コードを返す

ミニポート ドライバーは、次のいずれかの状態コードを返します。

状態コード 説明

NDIS_STATUS_SUCCESS

OID 要求は正常に完了しました。

NDIS_STATUS_PENDING

OID 要求の完了が保留中です。 ミニポート ドライバーが NdisMOidRequestComplete を呼び出すと、NDIS は、要求が完了した後、呼び出し元の OID 要求完了ハンドラーに最終的な状態コードと結果を渡します。

NDIS_STATUS_NOT_SUPPORTED

ミニポート ドライバーは、NDIS QoS インターフェイスをサポートしていません。

NDIS_STATUS_INVALID_PARAMETER

NDIS_QOS_PARAMETERS 構造体の 1 つ以上のメンバーに正しくない値が含まれています。

NDIS_STATUS_INVALID_LENGTH

情報バッファーの長さが sizeof(NDIS_QOS_PARAMETERS) 未満です。 NDIS sets the NDIS_OID_REQUEST 構造体の DATA.QUERY_INFORMATION.BytesNeeded メンバーに必要最小限のバッファー サイズを設定します。

NDIS_STATUS_FAILURE

その他の理由で要求に失敗しました。

要件

バージョン

NDIS 6.30 以降でサポートされています。

ヘッダー

Ntddndis.h (Ndis.h を含む)

関連項目


NdisMOidRequestComplete

NDIS_OID_REQUEST

NDIS_QOS_CAPABILITIES

NDIS_STATUS_QOS_OPERATIONAL_PARAMETERS_CHANGE

NDIS_STATUS_QOS_REMOTE_PARAMETERS_CHANGE