MB/NDIS 6.20 のインターフェイスの概要
このトピックは、MB ドライバー モデルを視野に入れて見直すため、NDIS 6.20 仕様に関する十分な背景を伝えることを意図しています。 NDIS 6.20 の参照は意図されていません。 このコンテンツと NDIS 6.20 仕様の間に不一致がある場合は、ドキュメント『NDIS 6.20』を参照してください
NDIS 6.20 で、MB サービスは NdisOidRequest を呼び出して、ミニポート ドライバーに OID 要求を発行します。 次に、ミニポート ドライバーは NdisMIndicateStatusEx を呼び出して、MB サービスにデータを返します。
NDIS 6.20 では、次のタイプの OID オペレーションがサポートされています。
サービスからミニポート ドライバーにデータを送信する Set オペレーション。
ミニポート ドライバーにデータをサービスに返すように要求する Query オペレーション。
入力パラメーターと出力パラメーターの両方を持つ、関数呼び出しと同等の Method オペレーション。
最後に、ミニポート ドライバーは、MB デバイスの状態変化についてサービスに通知するため、データを含む表示を送信する場合があります。
Set 要求と Query 要求の受信
MB ミニポート ドライバーは MiniportOidRequest NDIS ハンドラーを、設定要求とクエリ要求の両方に応答するために実行します。
状態表示の送信
ミニポート ドライバーは、NdisMIndicateStatusEx を呼び出すことによって、MB サービスに状態表示を伝えます。 状態表示の詳細については、NDIS_STATUS_INDICATION 構造を参照してください。
接続の状態表示
NDIS 6.20 ミニポート ドライバーは、送信メディアの物理的な特性に変更があったことを NDIS と上部のドライバーに通知する NDIS_STATUS_LINK_STATE 状態表示を使用する必要があります。
StatusBuffer メンバー (NDIS_STATUS_INDICATION 構造体内) は、伝送媒体の物理状態を指定する NDIS_LINK_STATE 構造体です。
メディアの物理的状態に変更がない場合、MB ミニポート ドライバー は NDIS_STATUS_LINK_STATUS 状態表示を送信しないようにすることになります。 ただし、ミニポート ドライバーは、この状態表示の送信を避けるために必ずしも必要ではありません。
MB ミニポート ドライバーは、現在接続されているデータ クラスの最大データ レートを報告する必要があります。 接続中にデータ クラスを変更すると、対応するデータ レートが報告された接続状態表示が発生する必要があります。 次に、このルールの推奨される実行を示します。
この仕様に準拠する MB ミニポート ドライバーは、接続状態表示のための NDIS_STATUS_MEDIA_CONNECT、NDIS_STATUS_MEDIA_DISCONNECT、NDIS_STATUS_LINK_SPEED_CHANGE (NDIS 5.1 と同様) などではなく、接続状態変化を示す NDIS_STATUS_LINK_STATE を使用する必要があります。
XmitLinkSpeed および RcvLinkSpeed メンバー (NDIS_LINK_STATE 構造体内) は NDIS_LINK_SPEED_UNKNOWN を報告してはなりません。 ミニポート ドライバーは、次のテーブルの情報を使用して速度を報告する必要があります。
GSM ベースの MB デバイス速度リンクの場合
データ クラス | XmitLinkSpeed | RcvLinkSpeed |
---|---|---|
GPRS |
8 から 48 kbps |
8 から 48 kbps |
EDGE |
8 から 220 kbps |
8 から 220 kbps |
UMTS |
64 から 384 kbps |
64 から 384 kbps |
HSDPA |
64 から 5.76 mbps |
1.8 から 14.4 mbps |
HSUPA |
1.4 から 5.76 mbps |
64 kbps から 7.2 mbps |
CDMA ベースの MB デバイス速度リンクの場合
データ クラス | XmitLinkSpeed | RcvLinkSpeed |
---|---|---|
1xRTT | 115.2 kbps から 307.2 kbps | 153.6 kbps から 3 mbps |
3xRTT | 614 kbps から 1.04 mbps | 307.2 kbps から 1.04 mbps |
1xEV-DO | 153.6 kbps | 2.4 mbps |
1xEvDO Rev. A. | 1.8 mbps | 3.1 mbps |
1xEV-DV | 1.8 mbps | 3.1 mbps |
1xEvDO Rev. B. | 27 mbps | 3.1 mbps から 73.5 mbps |
注:MB デバイスは、前のテーブルに示した速度範囲の速度を報告することになります。
NDIS 5.1 とは異なり、異なるリンク状態変更インジケーターは、NDIS_LINK_STATE データ構造を使用して 1 つの NDIS_STATUS_LINK_STATE 表示に統合されます。 NDIS 5.1 の表示は、次のテーブルの情報に従ってこの構造体にマップできます。 リンク速度の変化の場合、表示のコンシューマーは、送受信速度の値を前の表示に記録した値と比較して、リンク速度の変化が発生したかどうかを判断します。
NDIS 5.1 から 6.x への接続状態表示マッピング
NDIS 5.1 表示 NDIS 6.x NDIS_LINK_STATE データ構造パラメーター値 NDIS_STATUS_MEDIA_CONNECT
MediaConnectState
MediaConnectStateConnected
NDIS_STATUS_MEDIA_DISCONNECT
MediaConnectState
MediaConnectStateDisconnected
NDIS_STATUS_LINK_SPEED_CHANGE
XmitLinkSpeed
送信速度 (bps)
RcvLinkSpeed
受信速度 (bps)