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_CAPS 中 WwanDataClass 成員中的單一值,表示裝置目前正在使用哪個數據類別。
對於除了 HSPA 以外的所有數據服務,迷你埠驅動程式應該將此成員設定為單一WWAN_DATA_CLASS_XXX值。 針對 HSPA 數據服務,迷你埠驅動程式應指定WWAN_DATA_CLASS_HSDPA和WWAN_DATA_CLASS_HSUPA的位 OR。
迷你埠驅動程序必須設定此成員的有效值,並在裝置變更服務時傳送適當的通知,例如,從 1xRTT 到 1xEV-DO。
如果數據類別不是 WwanDataClass 成員中的其中一個預先定義值,則 Miniport 驅動程式應將此成員設定為 WWAN_DEVICE_CAPSWWAN_DATA_CLASS_CUSTOM。
FrequencyRange
WWAN_5G_FREQUENCY_RANGE 值,指定裝置所使用的頻率範圍。 只有當 CurrentDataClass WWAN_DATA_CLASS_5G_NSA 或 WWAN_DATA_CLASS_SA時,這個成員才有效。
CurrentDataSubClass
此欄位僅用於NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_3。
CurrentTai
代表目前單一追蹤區域識別(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 中所表示的數據類別,以及以裝置功能回報的支持數據類別,以向用戶顯示可用選項的交集。
如果裝置也支援除了 WwanDataClass 成員 WWAN_DEVICE_CAPS中預先定義值以外的數據類別,迷你埠驅動程式應該設定WWAN_DATA_CLASS_CUSTOM旗標,以及為此成員中數據類別定義的適當位掩碼。
查詢 和 設定 OID 要求,以及未經請求的狀態事件會使用 uNwError 成員。 如果沒有網路特定錯誤或網路特定錯誤未知,迷你埠驅動程序應該將此成員設定為零。 MB作語意中的「狀態指示結構」區段 顯示封包連結或封包中斷連結會導致 3GPP TS 24.008 規格中定義的程式代碼失敗值。
下列幾點提供在不同案例中傳回網路特定錯誤的指導方針:
- 如果封包連結作業因為網路特定錯誤而失敗,迷你埠驅動程序應該傳回網路特定錯誤,以回應 查詢 要求。 在此情況下,迷你埠驅動程式應將 uStatus NDIS_WWAN_PACKET_SERVICE_STATE 結構的成員設定為 WWAN_STATUS_SUCCESS,並將 uNwError 成員設定為網路特定錯誤碼。
- 如果 要求失敗,迷你埠驅動程式應該會傳回網路特定的錯誤碼。 在此情況下,迷你埠驅動程式應將 NDIS_WWAN_PACKET_SERVICE_STATE 結構的 uStatus 成員設定為 WWAN_STATUS_FAILURE,並將 uNwError 成員設定為網路特定錯誤碼。
- 每當裝置註冊狀態變更時,因為網路封包中斷連結裝置,則未經請求的狀態事件應該包含網路特定錯誤。 在此情況下,迷你埠驅動程式應將 NDIS_WWAN_PACKET_SERVICE_STATE 結構的 uStatus 成員設定為 WWAN_STATUS_SUCCESS,並將 uNwError 成員設定為網路特定錯誤碼。
迷你埠驅動程序必須儘早回報原因代碼。 例如,如果 MB 裝置在嘗試向網路提供者註冊裝置時遇到下列其中一個程式代碼,迷你埠驅動程式應該在該時間回報它。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 適用於 Windows 7 和更新版本的 Windows。 |
標頭 | wwan.h (包括 Wwan.h) |