Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Обзор
Назначение параметров конфигурации протокола (PCO) заключается в передаче параметров внешнего сетевого протокола, связанных с активацией контекста протокола PDP. Определения Windows NDIS для значений PCO обычно являются универсальными для получения полных значений PCO из модема и сети в будущем. Однако начиная с Windows 10 версии 1709 некоторые модемы могут передавать только определенные элементы PCO оператора в ОС. В этом разделе определяется поведение реализации PCO только для текущего оператора.
Пото́ки
Существует три сценария, в которых значение PCO будет передаваться хосту.
- При поступлении нового значения PCO в ходе активированного подключения
- Когда приложение или служба запрашивает последнее значение PCO из модема
- Когда соединение мостится или активируется в первый раз, а значение PCO уже существует в модеме
Для первого сценария модем должен отправлять ОС уведомление NDIS_STATUS_WWAN_PCO_STATUS, информирующее об изменении значения PCO при получении нового значения из сети, с указанием соответствующего номера порта NDIS для представления соответствующего PDN. Чтобы избежать разрядки аккумулятора, модем должен устранить шумные уведомления, как описано в разделе о поведении модема при выборочной приостановке и подключенной готовности.
Во втором сценарии, когда приложение или служба запрашивает значение PCO из модема на активированном подключении PDN, узел отправляет модему запрос OID_WWAN_PCO, чтобы прочитать последнее кэшированное значение PCO в модеме.
В третьем сценарии, когда подключение активируется или создается мостовое соединение на хосте, модем должен отправлять уведомление NDIS_STATUS_WWAN_PCO_STATUS, если значение PCO уже существует в модеме для активированного или мостового соединения, запрошенного хостом. Уведомление должно быть передано из соответствующего номера порта NDIS pdN.
На следующем рисунке показан поток сценария:
Поведение модема с выборочной приостановкой и подключенным резервным режимом
Если включена выборочная приостановка, модем может уведомлять ОС всякий раз, когда он получает структуру данных PCO из сети. Однако модем должен избежать ненужного пробуждения устройства. В противном случае шумные уведомления PCO из сети будут часто пробуждать устройство и разряжать батарею без необходимости.
Если включен режим "Подключенный режим ожидания", модем не должен уведомлять ОС о получении структур данных PCO из сети, поскольку это не только разбудит устройство, но и разбудит ОС, что не обязательно. Вместо этого модем должен кэшировать все последние элементы PCO из структуры данных и уведомлять ОС после выхода из режима подключенного ожидания. Для модема MBIM все структуры данных PCO должны быть кэшированы, и уведомления PCO должны отправляться в ОС только после подписки узла. Это будет сделано с помощью MBIM_CID_DEVICE_SERVICE_SUBSCRIBE_LIST CID, когда энергоснабжение системы вернется на полную мощность после выхода из режима подключенного ожидания.
Сброс модема на основе значений PCO
На основании значений PCO, полученных из сети, модем будет перезагружен в следующих ситуациях.
- Пользователь завершил самостоятельную активацию после получения PCO = 5 из сети. Новое значение PCO (3, 0 или любое значение, которое может распознать приложение мобильного оператора) будет отправлено в ОС, и ОС передаст его в приложение мобильного оператора.
- Пользователь добавил больше кредитов к своей учетной записи после получения PCO = 3. Новое значение PCO (0 или любое значение, которое может распознать приложение мобильного оператора) будет отправлено в ОС, и ОС передаст его приложению мобильного оператора.
Хост не знает о сбросе модема, поэтому активные соединения, инициированные хостом, не будут деактивированы, и модем должен автоматически повторно установить соединение с этими PDN-сетями после сброса. После установления подключения и получения нового входящего значения PCO из сети модем предоставит незапрошенное NDIS_STATUS_WWAN_PCO_STATUS уведомление хосту.
На следующей схеме показан процесс сброса модема в одном из следующих сценариев, используя Verizon Wireless как пример MO.
Интерфейс NDIS для модема
Чтобы запросить статус и полезные данные значения PCO, полученного модемом из сети оператора, см. в OID_WWAN_PCO. OID_WWAN_PCO использует структуру NDIS_WWAN_PCO_STATUS, которая, в свою очередь, содержит структуру WWAN_PCO_VALUE, представляющую полезные данные PCO из сети.
Уведомление о состоянии, отправленное драйвером минипорта модема, чтобы сообщить ОС о текущем состоянии PCO в модеме, см. NDIS_STATUS_WWAN_PCO_STATUS.
CID МБ для модема
Service = MBB_UUID_BASIC_CONNECT_EXT_CONSTANT
Идентификатор службы (UUID) = 3d01dcc5-fef5-4d05-0d3a-bef7058e9aaf
Для PCO определены следующие CID:
CID | Код команды | Минимальная версия ОС |
---|---|---|
MBIM_CID_PCO | 9 | Windows 10 версии 1709 |
MBIM_CID_PCO
Эта команда используется для запроса данных PCO, кэшированных в модеме из сети мобильных операторов.
Запрос
InformationBuffer содержит MBIM_PCO_VALUE, в котором единственное соответствующее поле — SessionId. SessionId зарезервирован для дальнейшего использования и всегда будет 0 в Windows 10 версии 1709. SessionId в запросе указывает, какое значение PCO потока данных IP должно будет возвращаться функцией.
Набор
Неприменимо.
Незапрошенное событие
Незапрошенные события содержат MBIM_PCO_VALUE и отправляются при поступлении нового значения PCO в активированное соединение.
Параметры
Операция | Набор | Запрос | Уведомление |
---|---|---|---|
Команда | Неприменимо | MBIM_PCO_VALUE | Неприменимо |
Ответ | Неприменимо | MBIM_PCO_VALUE | MBIM_PCO_VALUE |
Структуры данных
MBIM_PCO_TYPE
Тип | Ценность | Описание |
---|---|---|
MBIMPcoTypeComplete | 0 | Указывает, что полная структура PCO будет передаваться в том виде, в котором была получена из сети, а заголовок точно отражает протокол в октете 3 структуры PCO, определенной в спецификации 3GPP TS24.008. |
MBIMPcoTypePartial | 1 | Указывает, что модем будет передавать только подмножество структур PCO, полученных из сети. Заголовок соответствует структуре PCO, определенной в спецификации 3GPP TS24.008, но "протокол конфигурации" в октете 3 может быть недопустимым. |
MBIM-PCO-TYPE
Смещение | Размер | Поле | Тип | Описание |
---|---|---|---|---|
0 | 4 | Идентификатор сеанса | UINT32 | SessionId в запросе указывает, какое значение PCO потока IP-данных должно возвращаться функцией. |
4 | 4 | PcoDataSize | UINT32 | Длина PcoData от 0 до 256. Это значение будет равно 0 в запросе. |
8 | 4 | PcoDataType | UINT32 | Тип данных PCO. Дополнительные сведения см. в MBIM_PCO_TYPE. |
12 | PcoDataBuffer | буфер данных | Структура PCO из спецификации 3GPP TS24.008. |
Коды состояния
Этот идентификатор CID использует только универсальные коды состояния.
Тесты комплекта для лабораторных испытаний аппаратного обеспечения (HLK)
См. шаги установки HLK в.
В HLK Studio подключитесь к драйверу модема сотовой связи устройства и запустите тест: TestPco.