次の方法で共有


WWAN_PACKET_SERVICE構造体 (wwan.h)

WWAN_PACKET_SERVICE構造体は、MB デバイスのパケット サービス接続状態を表します。

構文

typedef struct _WWAN_PACKET_SERVICE {
  ULONG                     uNwError;
  WWAN_PACKET_SERVICE_STATE PacketServiceState;
  ULONG                     AvailableDataClass;
  ULONG                     CurrentDataClass;
  WWAN_5G_FREQUENCY_RANGE   FrequencyRange;
  ULONG                     CurrentDataSubClass;
  WWAN_SINGLE_TAI           CurrentTai;
  ULONG                     Rel3GppVer;
} WWAN_PACKET_SERVICE, *PWWAN_PACKET_SERVICE;

メンバーズ

uNwError

パケットアタッチまたはパケット デタッチエラーが発生した場合のネットワーク固有のエラー。 このメンバーの詳細については、次の「解説」セクションを参照してください。

PacketServiceState

デバイスのパケット サービスの状態。

AvailableDataClass

現在のネットワーク内のデバイスで使用できるデータ クラスを表すビットマップ。 値の詳細な一覧については、WWAN_DEVICE_CAPSの WwanDataClass メンバー を参照してください。

ミニポート ドライバーは、デバイスがネットワークに登録されていない場合、またはデータ クラスがない場合、またはサポートされているデータ クラスが使用できない場合に、このメンバーをWWAN_DATA_CLASS_NONEに設定する必要があります。 ミニポート ドライバーは、デバイスがネットワークに登録されている場合、有効な値を持つこのメンバーを設定する必要があります。

CurrentDataClass

デバイスで現在使用されているデータ クラスを表す WWAN_DEVICE_CAPSWwanDataClass メンバーの 1 つの値。

HSPA を除くすべてのデータ サービスについて、ミニポート ドライバーは、このメンバーを 1 つのWWAN_DATA_CLASS_XXX値に設定する必要があります。 HSPA データ サービスの場合、ミニポート ドライバーは、WWAN_DATA_CLASS_HSDPAとWWAN_DATA_CLASS_HSUPAのビットごとの OR を指定する必要があります。

ミニポート ドライバーは、有効な値を持つこのメンバーを設定し、たとえば、1xRTT から 1xEV-DO に、デバイスがサービスを変更するときに、適切な通知を送信する必要があります。

ミニポート ドライバーは、データ クラスが WWAN_DEVICE_CAPSWwanDataClass メンバーの定義済みの値の 1 つでない場合は、このメンバーをWWAN_DATA_CLASS_CUSTOMに設定する必要があります。

FrequencyRange

デバイスが使用している周波数範囲を指定する WWAN_5G_FREQUENCY_RANGE 値。 このメンバーは、CurrentDataClassWWAN_DATA_CLASS_5G_NSA または WWAN_DATA_CLASS_SAの場合にのみ有効です。

CurrentDataSubClass

このフィールドは、NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_3にのみ使用されます。

CurrentTai

現在の単一の追跡エリア ID (TAI) を表す WWAN_SINGLE_TAI 構造体。 このフィールドは、NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_3にのみ使用されます。

Rel3GppVer

不明な場合は、0xFFFFFFFFが使用されます。 不明とは、MBIM_TLV_TYPE_3GPP_REL_VERSIONがMBIM_PACKET_SERVICE_INFO_V3に含まれていないか、デバイスが0xFFFFFFFFを直接返すか、デバイスが MBIM 3.0 以前を使用しているかどうかを意味します。

備考

現在のパケットアタッチ サービスの状態は、通常、デバイスのユーザー インターフェイスに反映されます。

MB サービスは、AvailableDataClass で表されるデータ クラスと、デバイスの機能で報告されるサポートされているデータ クラスを組み合わせて、使用可能な選択肢の共通部分をユーザーに表示します。

デバイスが、WWAN_DEVICE_CAPSWwanDataClass メンバーの定義済みの値以外のデータ クラスもサポートしている場合、ミニポート ドライバーは、このメンバーのデータ クラスに対して定義されている適切なビットマスクと共にWWAN_DATA_CLASS_CUSTOMフラグを設定する必要があります。

クエリ設定 OID 要求および要請されていない状態イベントは、uNwError メンバーを使用します。 ネットワーク固有のエラーがない場合、またはネットワーク固有のエラーが不明な場合、ミニポート ドライバーは、このメンバーを 0 に設定する必要があります。 MB 操作セマンティクス の 「状態表示構造」セクションには、3GPP TS 24.008 仕様で定義されているパケットアタッチまたはパケット デタッチの原因コードエラー値が示されています。

さまざまなシナリオでネットワーク固有のエラーを返す場合のガイドラインを次に示します。

  • ネットワーク固有のエラーが原因でパケット接続操作が失敗した場合、ミニポート ドライバーは、クエリ 要求に応答してネットワーク固有のエラーを返す必要があります。 この場合、ミニポート ドライバーは、NDIS_WWAN_PACKET_SERVICE_STATE構造体の uStatus メンバーをWWAN_STATUS_SUCCESSに設定し、uNwError メンバーをネットワーク固有のエラー コードに設定する必要があります。
  • セット 要求が失敗した場合、ミニポート ドライバーは、ネットワーク固有のエラー コードを返す必要があります。 この場合、ミニポート ドライバーは、NDIS_WWAN_PACKET_SERVICE_STATE構造体の uStatus メンバーをWWAN_STATUS_FAILUREに設定し、uNwError メンバーをネットワーク固有のエラー コードに設定する必要があります。
  • ネットワーク パケットデタッチによってデバイスの登録状態が変わるたびに、要求されていない状態イベントにネットワーク固有のエラーが含まれている必要があります。 この場合、ミニポート ドライバーは、NDIS_WWAN_PACKET_SERVICE_STATE構造体の uStatus メンバーをWWAN_STATUS_SUCCESSに設定し、uNwError メンバーをネットワーク固有のエラー コードに設定する必要があります。
ミニポート ドライバーは、ネットワークによって返されるパケット添付エラー コードの GSM 標準仕様で定義されている追加のエラー コードを提供できます。 たとえば、ミニポート ドライバーは、エラー コード 12 などの 3GPP 仕様 TS 24.008 パケットアタッチ エラー コード (許可されていない場所領域) を、uNwError メンバーを介して MB サービスに通信できます。

ミニポート ドライバーは、可能な限り早い時点で原因コードを報告する必要があります。 たとえば、MB デバイスがネットワーク プロバイダーにデバイスを登録しようとしたときにこれらのコードのいずれかを検出した場合、ミニポート ドライバーはその時点でそれを報告する必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows 7 以降のバージョンの Windows で使用できます。
ヘッダー wwan.h (Wwan.h を含む)

関連項目

NDIS_WWAN_PACKET_SERVICE_STATE

WWAN_PACKET_SERVICE_STATE