Поделиться через


архитектура разгрузки хотспота Wi-Fi

Wi-Fi Уведомление об устаревании функции переключения хот-спот

Важный

Начиная с Windows 10 версии 1709, функция разгрузки Wi-Fi горячих точек устарела и следует избегать её использования. Вместо этого рекомендуется писать приложение UWP и использовать API проверки подлинности точки доступа Wi-Fi (Windows.Networking.NetworkOperators).

Для получения образца кода и дополнительной информации см. пример по аутентификации точки доступа Wi-Fi.

На следующей схеме показаны основные компоненты в Wi-Fi Offload Framework.

Wi-Fi Hotspot Offload Framework.

Служба перераспределения трафика точки доступа

Служба разгрузки хотспота выполняет следующие функции:

  • Идентифицирует сети Wi-Fi, которые являются точками доступа.
  • Контролирует создание и обслуживание подключений к хотспотам
  • Мониторинг и реагирование на изменения состояния подключения для сетей горячих точек
  • Отслеживает и реагирует на изменения параметров пользователя для включения или отключения разгрузки Wi-Fi хот-спот

Служба переноса точек доступа использует плагины, созданные мобильными операторами и/или изготовителями оборудования для идентификации и проверки подлинности сетей точек доступа.

Хост плагина точки доступа

Хост подключаемого модуля хот-спота — это интерфейс между службой разгрузки хот-спота и модулем, реализованным партнером. Например, запросы к подключаемому модулю точки доступа для идентификации сетей из списка сетей выполняются через хост подключаемого модуля точки доступа. Хост подключаемого модуля также позволяет плагину хотспота, среди прочего, отправлять и получать HTTP-сообщения через API WinHTTP/WinInet и отправлять SMS-оповещения и уведомления пользователю.

Служба разгрузки точек доступа отвечает за создание хоста плагина для каждого плагина точки доступа.

Подключаемый модуль точки доступа

Плагин хотспота выполняет следующие функции:

  • Определяет сети хот-точек из списка доступных сетей
  • Включает автоматическое подключение к сетям с помощью проверки подлинности на основе EAP-SIM/AKA и HTTP, как указано изготовителем оборудования или мобильным оператором.
  • Отправляет и получает HTTP-сообщения через API WinHTTP/WinInet
  • Отправляет sms-уведомления пользователю
  • Выбирает маркер носителя для HTTP-запроса для отправки и получения сообщений по сотовой сети.

Он также взаимодействует непосредственно со следующими внешними компонентами:

  • WinInet/WinHTTP

Мобильные операторы и/или производители оригинального оборудования должны реализовывать и устанавливать собственные плагины для хотспотов, чтобы обеспечить Wi-Fi переключение нагрузки. Пакет установки для подключаемого модуля включает в себя следующее:

  • DLL подключаемого модуля
  • Файлы, содержащие сведения о подключении, такие как список SSID, зашифрованные учетные данные и т. д.
    • Примечание. Эти файлы являются необязательными и не ожидаются в большинстве подключаемых модулей.
  • Конфигурация реестра

Пользовательский интерфейс хот-точки

Пользовательский интерфейс хот-точки отображается на панели управления Wi-Fi. С помощью пользовательского интерфейса пользователь может:

  • Включение и отключение автоматической разгрузки Wi-Fi горячих точек.
  • Просмотр состояния подключения во время автоматического подключения к сети хот-точек.
  • Вручную подключитесь к сети хот-точек.
    • Если функция разгрузки точки доступа включена на устройстве, инициируемые пользователем подключения к сети, которую служба разгрузки определила как сеть точки доступа, будут обрабатываться как автоматические подключения к сети Wi-Fi точки доступа. В противном случае подключение вручную будет обрабатываться как стандартное подключение Wi-Fi.
  • Настройте обычный профиль Wi-Fi для подключения к сети хот-точек, если подключение к хот-точкам мобильного оператора отключено пользователем.

Пользовательский интерфейс точки доступа отображается только при конфигурации по крайней мере одного подключаемого модуля.

Пример. Автоматическое подключение к сети хот-точки

Ниже приведено очень высокоуровневое описание последовательности взаимодействия компонентов, которые происходят во время автоматического подключения к сети хот-точки:

  1. Служба подключения Wi-Fi отправляет в службу разгрузки хот-спота список сетей, которые не имеют подключения.
  2. Для каждой записи в списке сетей служба разгрузки хотспотов запрашивает подключаемые модули хотспотов (в порядке их ранжирования), чтобы определить, является ли это сетью хотспот. Первый подключаемый модуль для идентификации сети должен аутентифицировать эту сеть во время подключения.
  3. Когда плагин точки доступа определяет сеть как сеть точки доступа, он возвращает значение приоритета, связанное с этой сетью, метод аутентификации, который следует использовать (основанный на HTTP или EAP-SIM, или не требующий конкретной SIM-карты), и, при необходимости, маску отображения сети. Значение приоритета указывает порядок, в котором необходимо выполнить попытку подключения. Подключение к сетям с более низким приоритетом будет выполняться до подключения к сетям с более высоким приоритетом.
  4. Служба разгрузки горячих точек создает профиль диспетчера соединений для выбранной сети.
  5. Профиль службы "Перенос нагрузки хот-спота" также может настроить начальную настройку политики, из-за которой диспетчер подключений будет блокировать приложения от подключения к сети до тех пор, пока этому не будет дано разрешение.
  6. Служба разгрузки точки доступа отмечает выбранную сеть как сеть точки доступа.
  7. Служба разгрузки хотспота вызывает плагин через хост плагина хотспота, чтобы, если необходимо, выполнить любую предварительную обработку подключения.
  8. После завершения предварительной обработки плагина хот-спота служба офлоада хот-спота ожидает, когда Менеджер подключения подключится к сети хот-спота и предоставит уведомление о завершении подключения или сбое.
  9. При завершении подключения служба переноса нагрузки точки доступа отправляет запрос к плагину точки доступа для выполнения необходимых действий после подключения, таких как обмен HTTPS.
  10. Между тем служба разгрузки точки доступа выполняет следующие действия:
    • Запускает таймер для выполнения действия после подключения (в настоящее время срабатывает через 5 минут)
    • Задает правильное состояние отображения пользовательского интерфейса
  11. Если плагин хотспота указывает на успешное подключение, служба разгрузки хотспота вызывает диспетчер соединений, чтобы разблокировать подключение и уведомить приложения.
  12. Если время ожидания запроса после подключения истекает:
    • Служба разгрузки точки доступа сбрасывает состояние плагина точки доступа.
    • Если повторные попытки не исчерпаны, служба разгрузки хот-точки инициирует попытку повторного подключения, в противном случае удаляет профиль хот-точки сети.
  13. Если плагин хот-спота указывает на сбой и возможны повторные попытки, служба передачи управления хот-спотом производит попытку повторного подключения, в противном случае удаляет профиль хот-спота сети.