структура WWAN_PACKET_SERVICE (wwan.h)
Структура WWAN_PACKET_SERVICE представляет состояние вложения службы пакетов устройства в МБ.
Синтаксис
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
Растровое изображение, представляющее, какие классы данных доступны устройству в текущей сети. Подробный список значений см. в элементе WwanDataClassWWAN_DEVICE_CAPS.
Драйверы мини-порта должны задать для этого элемента WWAN_DATA_CLASS_NONE, когда устройство не зарегистрировано в сети, когда отсутствует класс данных или когда поддерживаемый класс данных недоступен. Драйверы мини-порта должны задавать этому члену допустимое значение при регистрации устройства в сети.
CurrentDataClass
Одно значение из члена WwanDataClass в WWAN_DEVICE_CAPS , которое представляет, какой класс данных в настоящее время используется устройством.
Для всех служб данных, кроме HSPA, драйверы мини-портов должны задавать этому элементу одно значение WWAN_DATA_CLASS_XXX. Для служб данных HSPA драйверы мини-порта должны указывать битовое или WWAN_DATA_CLASS_HSDPA и WWAN_DATA_CLASS_HSUPA.
Драйверы мини-порта должны задать этому члену допустимое значение и отправить соответствующее уведомление при изменении служб устройства, например с 1xRTT на 1xEV-DO.
Драйверы miniport должны задать для этого элемента значение WWAN_DATA_CLASS_CUSTOM, если класс данных не является одним из предопределенных значений в элементе WwanDataClassWWAN_DEVICE_CAPS.
FrequencyRange
Значение WWAN_5G_FREQUENCY_RANGE , указывающее диапазоны частот, которые использует устройство. Этот член действителен, только если currentDataClass имеет WWAN_DATA_CLASS_5G_NSA или WWAN_DATA_CLASS_SA.
CurrentDataSubClass
Это поле используется только для NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_3.
CurrentTai
Структура WWAN_SINGLE_TAI , представляющая текущее одно удостоверение зоны отслеживания (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 , с поддерживаемыми классами данных, которые передаются с помощью возможностей устройства для отображения пересечения доступных вариантов для пользователя.
Если устройство также поддерживает класс данных, отличный от предопределенных значений в элементе WwanDataClassWWAN_DEVICE_CAPS, драйвер мини-порта должен установить флаг WWAN_DATA_CLASS_CUSTOM вместе с соответствующей битовой маской, определенной для класса данных в этом элементе.
Запрашивать и задавать запросы OID, а также события незапрошенного состояния используют член uNwError . Если ошибка, связанная с сетью, отсутствует или она неизвестна, драйверы мини-порта должны установить для этого члена значение 0. В разделе "Структура индикации состояния" статьи Операционная семантика МБ показаны значения причины сбоя пакета или отсоединения пакетов, определенные в спецификации 3GPP TS 24.008.
Ниже приведены рекомендации по возврату ошибок, относящихся к сети, в разных сценариях.
- Если операция присоединения пакетов завершается сбоем из-за ошибки конкретной сети, драйверы мини-порта должны возвращать сетевую ошибку в ответ на запросы. В этом случае драйверы мини-порта должны задать элемент uStatus структуры NDIS_WWAN_PACKET_SERVICE_STATE для WWAN_STATUS_SUCCESS, а для элемента uNwError — конкретный сетевой код ошибки.
- Если запрос набора завершается сбоем, драйверы мини-порта должны возвращать код ошибки для конкретной сети. В этом случае драйверы мини-порта должны задать элемент uStatus структуры NDIS_WWAN_PACKET_SERVICE_STATE для WWAN_STATUS_FAILURE и задать член uNwError для конкретного сетевого кода ошибки.
- Всякий раз, когда состояние регистрации устройства изменяется из-за того, что сетевой пакет отсоединяет устройство, события незапрошенного состояния должны включать в себя сетевую ошибку. В этом случае драйвер мини-порта должен задать элемент uStatus структуры NDIS_WWAN_PACKET_SERVICE_STATE для WWAN_STATUS_SUCCESS и задать члену uNwError код ошибки, относящийся к сети.
Драйверы мини-порта должны сообщать код причины как можно раньше. Например, если устройство в МБ сталкивается с одним из этих кодов при попытке зарегистрировать устройство в у поставщика сети, драйвер мини-порта должен сообщить об этом в это время.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows 7 и более поздних версиях Windows. |
Верхняя часть | wwan.h (включая Wwan.h) |