Мы привыкли к тому, что сотовая связь и Wi‑Fi существуют отдельно друг от друга. Но иногда бывает так — мы попадаем внутрь помещения, где точно нет сотовой связи, но есть Wi‑Fi. При этом сохраняется возможность звонить по телефону. Как это работает?
Если вы планируете менять свой смартфон, то лучше выбирать устройство как с поддержкой VoWiFi, так и с поддержкой стандартов 802.11ax/ac диапазона 5ГГц. Во-первых, дозвониться до вас смогут, даже если вы «не в сети». А во-вторых, диапазон 2,4 ГГц чрезвычайно зашумлен, и в нем почти всегда есть проблемы с интерференцией, из-за чего Wi-Fi часто «плохо работает», в отличие от более «свободного» диапазона 5 ГГц.
Когда смартфон регистрируется в сети через VoWiFi, в статус-баре появляется соответствующая индикация. В зависимости от модели вашего смартфона, индикация и значки могут выглядеть по-разному. В нашем случае (смартфон Huawei) значки в статус-баре выглядят так:
Рисунок 1 Строка состояния смартфона, в котором установлено две SIM-карты, и оба подключения поддерживают VoWifi
На рисунке выше обе SIM-карты зарегистрированы в сети оператора двумя способами: и через сотовую сеть (индикаторы уровня сигнала, один из которых со значком «R» – роуминг), и через VoWiFi (значки «VoWiFi»). Как правило, при наличии VoWiFi соединения меняется название сети оператора с «Оператор» на «Оператор-WiFi». В нашем случае названия не отображаются, так как в статус-баре недостаточно пространства. Дополнительная индикация появляется также на кнопке вызова, при звонке и в списке вызовов:
Рисунок 2 Кнопка вызова с сим-карты 2, подключенной только через сотовую сеть
Рисунок 3 Кнопка вызова с сим-карты 2, подключенной через VoWiFi
Рисунок 4 Индикация VoWiFi во время звонка
Рисунок 5 Индикация VoWiFi отображается для вызовов, совершенных через VoWiFi
Рисунок 6 Меню настроек VoWiFi
Обычно соединение VoWiFi имеет приоритет над сотовой сетью. Но на некоторых устройствах можно выбрать, через какую технологию будет установлен вызов. Если качество соединения нестабильное или если смартфон покинул зону покрытия Wi-Fi, звонок, установленный через VoWiFi, может автоматически переключиться на сотовую сеть.
Как правило, операторы тарифицируют звонки через VoWiFi по домашнему тарифу (Проверяйте условия тарифа у своего оператора!). Даже в международном роуминге звонки обычно тарифицируются по условиям домашнего региона. То есть, звонок из региона пребывания в домашний регион – как звонок внутри домашнего региона, а из региона пребывания в регион пребывания – как международный звонок. Однако, если при нахождении в роуминге звонок VoWiFi по какой-то причине переключится на сотовую сеть, то это будет тарифицироваться как звонок из роуминга. Если этого не заметить, счет за услуги связи может вас неприятно удивить. Поэтому следует внимательно следить за наличием значка «VoWiFi» в статус-баре смартфона и в приложении для набора номера во время звонка. Но есть простой способ обезопасить себя от лишних трат. Для этого нужно перевести устройство в режим «полёт», в котором отключаются все коммуникации, затем вручную включить соединение по Wi-Fi. После этого сим-карты зарегистрируются в сети операторов через VoWiFi, и вы снова окажетесь на связи по домашнему тарифу без риска переключения на сотовую сеть.
Рисунок 7 Строка состояния смартфона (включен авиарежим), в котором установлено две SIM-карты, и оба подключения поддерживают VoWiFi
В данном примере значок самолета означает, что включен режим «полёт», и сотовая сеть для обеих сим-карт отключена. Названия сетей для примера указаны как SIM1 и SIM2, в вашем случае они будут отличаться. Индикаторы «VoWiFi» свидетельствуют о том, что обе SIM-карты подключены к сети операторов через Wi-Fi, и переключения на сотовую сеть точно не произойдет.
Иногда для связи в роуминге приобретают сим-карты местных операторов с выходом в интернет. Если просто вставить во второй слот для сим-карт местную симку с выходом в интернет, VoWiFi для вашего домашнего оператора работать не будет. Для этого требуется именно соединение по Wi-Fi. Если поблизости нет точки беспроводного доступа, можно раздавать интернет с местной сим-карты с другого смартфона, тогда вы всегда будете на связи по домашнему тарифу.
ПРЕДУПРЕЖДЕНИЕ: На всякий случай напомню, что с точки зрения информационной безопасности в реальной жизни крайне нежелательно использовать открытые сети! Используйте ключ (PSK) или другие методы защиты.
ePDG (Evolved Packet Data Gateway) шлюз – элемент инфраструктуры сотового оператора, позволяющий мобильному устройству(смартфону) устанавливать связь с сетью оператора при подключении через незащищенные каналы связи, включая интернет. Для обеспечения безопасности трафик между мобильным устройством и ePDG инкапсулируется в туннель IPSec и шифруется. После ассоциации с Wi-Fi-сетью и получения IP-адреса мобильное устройство определяет IP-адрес ePDG-шлюза сотового оператора, обслуживающего SIM-карту. Для этого используетcя FQDN (доменное имя) специального вида, регламентированное стандартами 3GPP. Каждый сотовый оператор имеет уникальный идентификатор PLMN-Id (Public Land Mobile Network - identifier). Данный идентификатор включает в себя код страны (Mobile Country Code, MCC) и код сети оператора (Mobile Network Code, MNC). Эти коды уникальны, и для каждого оператора FQDN ePDG шлюза будет иметь вид:
epdg.epc.mnc<MNC>.mcc<MCC>.pub.3gppnetwork.org
По ссылкам приведены перечни
Следующим шагом мобильное устройство инициирует создание IPSec-туннеля до шлюза по адресу, полученному из DNS-ответа. Ниже приведен скриншот из Wireshark, где показан пример установления IPSec-туннеля между смартфоном и ePDG. Хост 192.a.b.c – это смартфон (VoWiFi клиент), а хост 213.d.e.f это шлюз ePDG оператора сотовой связи.
Рисунок 8 Процесс установления IPsec-туннеля от смартфона до шлюза ePDG Оператора
В этом процессе используются стандартные протоколы технологии IPSec: ISAKMP (UDP, порт 500) и ESP (инкапсулированный в UDP, порт 4500). ISAKMP обеспечивает защиту и шифрование для аутентификации и настройки шифрованного туннеля ESP. ESP служит туннелем для шифрования VoWiFi трафика между оператором и клиентским устройством.
Голосовой трафик при передаче помещается в IP-пакет, а пакет в свою очередь помещается в кадр стандарта IEEE 802.11. В IP-пакете за качество обслуживания отвечает поле DSCP (Differentiated Services Code Point), а в кадре 802.11 – поле QoS Control. В этом поле содержится значение User Priority (UP), определяющее приоритет фрейма по шкале от 0 до 7. UP сгруппированы попарно в четыре Access Category (AC): Voice (AC_VO), Video (AC_VI), Best Effort (AC_BE) и Background (AC_BK). По умолчанию фреймы имеют UP 0 и AC_BE.
Таблица 1 Соотношение значений UP категориям AC
Голосовой трафик передается внутри IPSec-туннеля, который работает в туннельном режиме. Оригинальный IP-пакет полностью инкапсулируется в пакет ESP и шифруется. Тот в свою очередь инкапсулируется в новый IP-заголовок (внешний), который и будет использован при передаче по сети. Поэтому мы рассматриваем маркировку QoS именно внешнего заголовка IP.
Упрощенно трафик нашего вызова, начиная с DNS-запроса и заканчивая передачей голоса внутри IPSec-туннеля, с точки зрения маркировки QoS, выглядит следующим образом.
Рисунок 9 Схема маркировки QoS для трафика VoWiFi
Трафик от смартфона (ip 192.a.b.c) до шлюза ePDG другого оператора сотовой связи (ip 217.d.e.f) в процессе установки IPsec соединения (ISAKMP) имеет следующую маркировку QoS: Wi-Fi кадр имеет UP 5 (Video, AC_VI), а содержащийся в нем IP-пакет имеет DSCP 46, Expedited Forwarding (EF).
Рисунок 10 Значения QoS в направлении от клиента в процессе установки IPSec-соединения
После того как туннель установлен, трафик ESP, содержащий исходящий голосовой трафик от клиента, маркируется немного иначе: Wi-Fi кадр имеет UP 6 (Voice, AC_VO), а содержащийся в нем IP пакет имеет DSCP 48, CS6 (Network Control).
Рисунок 11 Значения QoS в направлении от клиента после того, как туннель IPsec установлен
Движущиеся в обратном направлении (от ePDG к смартфону) IP-пакеты приходят в локальную сеть с маркировкой по умолчанию (CS0, Default). И, соответственно, наша тестовая точка доступа маркирует трафик, отправляемый в радиоэфир, как AC_BE (Best Effort).
Рисунок 12 Значения QoS в направлении к клиенту после того, как туннель IPsec установлен
Отсюда следует два вывода о нашей тестовой конфигурации:
1) Трафик IPsec до ePDG в направлении от VoWiFi клиента к точке доступа Wi-Fi маркируется как DSCP (EF и CS6), так и UP (AC_VI и AC_VO), и передается в беспроводной среде Wi-Fi в приоритетном порядке.
2) В нашей конфигурации голосовой трафик от точки доступа Wi-Fi к VoWiFi клиенту не имеет приоритетной маркировки DSCP и UP, и передается с приоритетом «Best Effort» наравне с низкоприоритетным трафиком. Это вызвано отсутствием маркировки DSCP трафика, поступающего от ePDG через канал интернет. Беспроводная инфраструктура, под которой мы понимаем не только точки доступа, но и контроллер, при его наличии, могла бы устанавливать соответствие между маркировкой DSCP IP пакетов и маркировкой 802.11e Access Category Wi-Fi фреймов. Однако DSCP из проводной среды равен CS0 и при переносе в беспроводную среду тоже не имеет приоритет (AC_BE).
На основании опыта, в такой конфигурации VoWiFi работает без искажений. Но мы сделали несколько тестов, чтобы определить, влияет ли на качество VoWiFi-соединения отсутствие маркировки трафика от точки доступа к клиенту. Для этого необходимо сравнить качество вызова без маркировки и с маркировкой.
Чтобы обеспечить приоритетную передачу VoWiFi трафика к клиенту, мы настроим маркировку трафика от ePDG самостоятельно. Для этого по FQDN операторов определим их IP адреса и для них создадим пользовательское правило перемаркировки DSCP с Default/Best Effort (0) на EF (46). На основании DSCP при передаче пакета в радиоэфир ему будет присвоен соответствующий UP с AC_VO, что обеспечит приоритет трафику VoWiFi в направлении от точки доступа к клиентскому устройству. Ниже в таблице приведены адреса ePDG шлюзов крупнейших российских телеком-операторов, их адреса можно использовать для создания соответствующих правил. Данные актуальны на январь 2023 года, однако адреса ePDG операторов могут изменяться со временем.
Упрощенно схема маркировки QoS после применения правила перемаркировки в инфраструктуре Wi-Fi будет выглядеть следующим образом:
Рисунок 13 Схема маркировки QoS для трафика VoWiFi с включенным правилом перемаркировки
Под Wi-Fi инфраструктурой понимается совокупность всех элементов сети, обеспечивающих обработку беспроводного трафика, включая VoWiFi. В нашей тестовой среде это одно оборудование, у вас может быть другое. Соответственно, и настройки QoS тоже можно сделать по-разному. Например, на Cisco AirOS WLC для VoWiFi трафика есть AVC стандартный классификатор «wifi-calling», и приоритет DSCP/UP можно задать с помощью AVC профилей. У CommScope SmartZone можно вручную создать политику “Wi-Fi Calling” для конкретных операторов и FQDN / IP их ePDG, и настроить приоритезацию QoS. На Mikrotik изменение значения DSCP трафика ePDG и присвоить приоритет UP можно с помощью правил Mangle. Перемаркировку можно настроить и на проводном оборудовании, например, на межсетевом экране. Поэтому мы покажем только основную концепцию, не углубляясь в детальное описание настроек.
В нашей конфигурации мы создали правило перемаркировки трафика от ePDG к клиенту, принудительно присваивая DSCP 46 (Expedited Forwarding), и на его основании фреймы Wi-Fi стали получать UP AC_VO (Voice). Ниже приведен скриншот из Wireshark, где IP адрес «192.a.b.c» – адрес VoWiFi клиента, а «213.d.e.f» адрес ePDG оператора.
Рисунок 14 Значения QoS в направлении к клиенту после включения правила перемаркировки
Для того чтобы проверить, как это повлияло на качество соединения VoWiFi, мы запустили сессию Iperf на двух дополнительных клиентских устройствах, подключенных к той же точке доступа. Это обеспечило максимальную загрузку беспроводного канала связи, к которому подключен VoWiFi-клиент. В условиях высокой утилизации мы сделали несколько VoWiFi вызовов и субъективно оценили их качество. После проведения нескольких тестов отключали правило перемаркировки и повторно проводили тесты. Тесты показали, что отсутствие маркировки QoS трафика от точки доступа к клиенту не оказывает критичного влияния на качество голосового вызова. Речь собеседника не искажается и не пропадает. Однако правильная маркировка обеспечивает малую задержку: если правило было отключено, задержка увеличивалась примерно до секунды (приблизительная оценка на слух). При включенной перемаркировке тест Iperf не оказывал влияния на задержку при VoWiFi вызове.
Из любопытства мы сделали ещё и тесты для Whatsapp и Telegram в тех же условиях. Результаты получились аналогичными: при повышенной загрузке канала Wi-Fi увеличивалась задержка при разговоре, но разборчивость голоса не ухудшалась. Однако в случае с мессенджерами клиентские устройства не маркируют трафик при помощи QoS, а качество голоса немного уступает звонкам через VoWiFi.
Напоследок напомним, что на итоговое качество телефонии в Wi-Fi сетях влияет множество факторов. Для домашней сети самое главное - выбрать не сильно загруженный и свободный от помех канал (желательно в диапазоне 5 ГГц). Для корпоративных сетей важно качественное проектирование беспроводной инфраструктуры, которое учитывает требования телефонии (уровень сигнала, наложение зон покрытия и т.д.).
Проектируйте и настраивайте свои беспроводные сети правильно, и тогда VoWiFi будет стабильной и удобной альтернативой сотовой сети.
В качестве дополнения, ниже приведены ссылки на инструкции от российских операторов сотовой связи по активации услуги VoWiFi и настройке смартфонов.
МТС:
Практическая составляющая
VoWiFi (Voice over Wi-Fi) – технология, позволяющая пользователям сотовой связи совершать голосовые вызовы в зонах, где сотового покрытия нет, но есть покрытие Wi-Fi. Для ее работы нужно следующее:- поддержка технологии со стороны оператора;
- поддержка технологии мобильным устройством;
- наличие стабильного интернет-соединения по Wi-Fi.
Если вы планируете менять свой смартфон, то лучше выбирать устройство как с поддержкой VoWiFi, так и с поддержкой стандартов 802.11ax/ac диапазона 5ГГц. Во-первых, дозвониться до вас смогут, даже если вы «не в сети». А во-вторых, диапазон 2,4 ГГц чрезвычайно зашумлен, и в нем почти всегда есть проблемы с интерференцией, из-за чего Wi-Fi часто «плохо работает», в отличие от более «свободного» диапазона 5 ГГц.
Когда смартфон регистрируется в сети через VoWiFi, в статус-баре появляется соответствующая индикация. В зависимости от модели вашего смартфона, индикация и значки могут выглядеть по-разному. В нашем случае (смартфон Huawei) значки в статус-баре выглядят так:
![Рисунок 1 Строка состояния смартфона, в котором установлено две SIM-карты, и оба подключения поддерживают VoWifi Рисунок 1 Строка состояния смартфона, в котором установлено две SIM-карты, и оба подключения поддерживают VoWifi](https://habrastorage.org/getpro/habr/upload_files/526/1ff/c30/5261ffc30c82a7676bec3e41f41fc9fa.png)
На рисунке выше обе SIM-карты зарегистрированы в сети оператора двумя способами: и через сотовую сеть (индикаторы уровня сигнала, один из которых со значком «R» – роуминг), и через VoWiFi (значки «VoWiFi»). Как правило, при наличии VoWiFi соединения меняется название сети оператора с «Оператор» на «Оператор-WiFi». В нашем случае названия не отображаются, так как в статус-баре недостаточно пространства. Дополнительная индикация появляется также на кнопке вызова, при звонке и в списке вызовов:
![Рисунок 2 Кнопка вызова с сим-карты 2, подключенной только через сотовую сеть Рисунок 2 Кнопка вызова с сим-карты 2, подключенной только через сотовую сеть](https://habrastorage.org/getpro/habr/upload_files/5f2/9fb/f9d/5f29fbf9d8b91c68c088b230139f9ec1.png)
![Рисунок 3 Кнопка вызова с сим-карты 2, подключенной через VoWiFi Рисунок 3 Кнопка вызова с сим-карты 2, подключенной через VoWiFi](https://habrastorage.org/getpro/habr/upload_files/2e3/1b8/60e/2e31b860eeee414ff04be1f94eab2545.png)
![Рисунок 4 Индикация VoWiFi во время звонка Рисунок 4 Индикация VoWiFi во время звонка](https://habrastorage.org/getpro/habr/upload_files/6a2/553/8ee/6a25538eee8801f8df80f624c635bbe9.png)
![Рисунок 5 Индикация VoWiFi отображается для вызовов, совершенных через VoWiFi Рисунок 5 Индикация VoWiFi отображается для вызовов, совершенных через VoWiFi](https://habrastorage.org/getpro/habr/upload_files/81b/04c/3e2/81b04c3e2c4c14b3f5762df582eb8986.png)
![Рисунок 6 Меню настроек VoWiFi Рисунок 6 Меню настроек VoWiFi](https://habrastorage.org/getpro/habr/upload_files/1a4/591/675/1a4591675e22cfec998d8a73fdc37065.png)
Обычно соединение VoWiFi имеет приоритет над сотовой сетью. Но на некоторых устройствах можно выбрать, через какую технологию будет установлен вызов. Если качество соединения нестабильное или если смартфон покинул зону покрытия Wi-Fi, звонок, установленный через VoWiFi, может автоматически переключиться на сотовую сеть.
Как правило, операторы тарифицируют звонки через VoWiFi по домашнему тарифу (Проверяйте условия тарифа у своего оператора!). Даже в международном роуминге звонки обычно тарифицируются по условиям домашнего региона. То есть, звонок из региона пребывания в домашний регион – как звонок внутри домашнего региона, а из региона пребывания в регион пребывания – как международный звонок. Однако, если при нахождении в роуминге звонок VoWiFi по какой-то причине переключится на сотовую сеть, то это будет тарифицироваться как звонок из роуминга. Если этого не заметить, счет за услуги связи может вас неприятно удивить. Поэтому следует внимательно следить за наличием значка «VoWiFi» в статус-баре смартфона и в приложении для набора номера во время звонка. Но есть простой способ обезопасить себя от лишних трат. Для этого нужно перевести устройство в режим «полёт», в котором отключаются все коммуникации, затем вручную включить соединение по Wi-Fi. После этого сим-карты зарегистрируются в сети операторов через VoWiFi, и вы снова окажетесь на связи по домашнему тарифу без риска переключения на сотовую сеть.
![Рисунок 7 Строка состояния смартфона (включен авиарежим), в котором установлено две SIM-карты, и оба подключения поддерживают VoWiFi Рисунок 7 Строка состояния смартфона (включен авиарежим), в котором установлено две SIM-карты, и оба подключения поддерживают VoWiFi](https://habrastorage.org/getpro/habr/upload_files/663/567/42f/66356742f176177d47939f3fc57672cb.png)
В данном примере значок самолета означает, что включен режим «полёт», и сотовая сеть для обеих сим-карт отключена. Названия сетей для примера указаны как SIM1 и SIM2, в вашем случае они будут отличаться. Индикаторы «VoWiFi» свидетельствуют о том, что обе SIM-карты подключены к сети операторов через Wi-Fi, и переключения на сотовую сеть точно не произойдет.
Иногда для связи в роуминге приобретают сим-карты местных операторов с выходом в интернет. Если просто вставить во второй слот для сим-карт местную симку с выходом в интернет, VoWiFi для вашего домашнего оператора работать не будет. Для этого требуется именно соединение по Wi-Fi. Если поблизости нет точки беспроводного доступа, можно раздавать интернет с местной сим-карты с другого смартфона, тогда вы всегда будете на связи по домашнему тарифу.
А теперь перейдем к технической составляющей
Рассмотрим более подробно трафик VoWiFi с точки зрения сети Wi-Fi. Для тестов мы создали открытую сеть Wi-Fi без шифрования и сделали захват радиоэфира при помощи Wireshark при подключении к ней мобильного устройства.ПРЕДУПРЕЖДЕНИЕ: На всякий случай напомню, что с точки зрения информационной безопасности в реальной жизни крайне нежелательно использовать открытые сети! Используйте ключ (PSK) или другие методы защиты.
ePDG (Evolved Packet Data Gateway) шлюз – элемент инфраструктуры сотового оператора, позволяющий мобильному устройству(смартфону) устанавливать связь с сетью оператора при подключении через незащищенные каналы связи, включая интернет. Для обеспечения безопасности трафик между мобильным устройством и ePDG инкапсулируется в туннель IPSec и шифруется. После ассоциации с Wi-Fi-сетью и получения IP-адреса мобильное устройство определяет IP-адрес ePDG-шлюза сотового оператора, обслуживающего SIM-карту. Для этого используетcя FQDN (доменное имя) специального вида, регламентированное стандартами 3GPP. Каждый сотовый оператор имеет уникальный идентификатор PLMN-Id (Public Land Mobile Network - identifier). Данный идентификатор включает в себя код страны (Mobile Country Code, MCC) и код сети оператора (Mobile Network Code, MNC). Эти коды уникальны, и для каждого оператора FQDN ePDG шлюза будет иметь вид:
epdg.epc.mnc<MNC>.mcc<MCC>.pub.3gppnetwork.org
По ссылкам приведены перечни
Для просмотра ссылки необходимо нажать
Вход или Регистрация
и
Для просмотра ссылки необходимо нажать
Вход или Регистрация
, а в конце статьи приведены доменные имена и IP-адреса ePDG-шлюзов крупнейших операторов РФ. DNS-ответ на запрос адреса такого формата содержит один или несколько IP-адресов шлюза ePDG. При наличии в смартфоне SIM-карт нескольких операторов, поддерживающих VoWiFi, DNS-запросы отправляются для каждого оператора.Следующим шагом мобильное устройство инициирует создание IPSec-туннеля до шлюза по адресу, полученному из DNS-ответа. Ниже приведен скриншот из Wireshark, где показан пример установления IPSec-туннеля между смартфоном и ePDG. Хост 192.a.b.c – это смартфон (VoWiFi клиент), а хост 213.d.e.f это шлюз ePDG оператора сотовой связи.
![Рисунок 8 Процесс установления IPsec-туннеля от смартфона до шлюза ePDG Оператора Рисунок 8 Процесс установления IPsec-туннеля от смартфона до шлюза ePDG Оператора](https://habrastorage.org/getpro/habr/upload_files/4e5/2f1/edd/4e52f1edd090bcb4a516f172f64d09fc.png)
В этом процессе используются стандартные протоколы технологии IPSec: ISAKMP (UDP, порт 500) и ESP (инкапсулированный в UDP, порт 4500). ISAKMP обеспечивает защиту и шифрование для аутентификации и настройки шифрованного туннеля ESP. ESP служит туннелем для шифрования VoWiFi трафика между оператором и клиентским устройством.
Как обеспечивается качество VoWiFi соединения?
Разберемся, как реализовано качество обслуживания (QoS, Quality of Service) в нашей тестовой конфигурации. В вашей сети результаты могут отличаться, поскольку оборудование и провайдеры разные.Голосовой трафик при передаче помещается в IP-пакет, а пакет в свою очередь помещается в кадр стандарта IEEE 802.11. В IP-пакете за качество обслуживания отвечает поле DSCP (Differentiated Services Code Point), а в кадре 802.11 – поле QoS Control. В этом поле содержится значение User Priority (UP), определяющее приоритет фрейма по шкале от 0 до 7. UP сгруппированы попарно в четыре Access Category (AC): Voice (AC_VO), Video (AC_VI), Best Effort (AC_BE) и Background (AC_BK). По умолчанию фреймы имеют UP 0 и AC_BE.
Таблица 1 Соотношение значений UP категориям AC
User Priority | Access Category | Тип трафика |
7 | AC_VO | Voice |
6 | AC_VO | Voice |
5 | AC_VI | Video |
4 | AC_VI | Video |
3 | AC_BE | Best Effort |
0 | AC_BE | Best Effort |
2 | AC_BK | Background |
1 | AC_BK | Background |
Упрощенно трафик нашего вызова, начиная с DNS-запроса и заканчивая передачей голоса внутри IPSec-туннеля, с точки зрения маркировки QoS, выглядит следующим образом.
![Рисунок 9 Схема маркировки QoS для трафика VoWiFi Рисунок 9 Схема маркировки QoS для трафика VoWiFi](https://habrastorage.org/getpro/habr/upload_files/b5f/75b/e13/b5f75be137b6520f68baf03b32f7799f.jpg)
Технический экскурс
Зачем нужно транслировать значения QoS с сетевого уровня на канальный? Это нужно для того, чтобы на канальном уровне пакет обрабатывался с тем же приоритетом, что и на сетевом уровне. Семейство стандартов IEEE 802.11 (Wi-Fi) регламентируют требования, относящиеся к уровням MAC и PHY. Однако перенос значений QoS на вышестоящие уровни OSI в них подробно не рассматривается. В результате этого разные вендоры реализовывали разные подходы к переносу значений QoS 802.11e (WMM) в IP DSCP, и обратно. Это привело к несоответствиям в различных реализациях QoS. На текущий момент действует рекомендация IETF
Для просмотра ссылки необходимо нажать
Вход или Регистрация
, описывающая подход к переносу значений DSCP-UP. Из данного документа следует, что DSCP EF следует маркировать как AC_VO, а в нашей конфигурации клиентское устройство маркирует трафик как AC_VI. Однако в нашем случае кадры 802.11 с голосовым трафиком маркируются корректным AC_VO (voice), хотя при этом IP пакеты внутри этих кадров имеют DSCP CS6, Network Control. В этом есть противоречие, поскольку голосовой трафик, завернутый в IPsec-туннель, не является трафиком Network Control ни для проводной ни для беспроводной среды передачи, поэтому такая маркировка DSCP не корректна. Данное наблюдение справедливо для конкретного устройства, которое мы использовали для тестов, и в вашей конфигурации сети данные могут отличаться.Трафик от смартфона (ip 192.a.b.c) до шлюза ePDG другого оператора сотовой связи (ip 217.d.e.f) в процессе установки IPsec соединения (ISAKMP) имеет следующую маркировку QoS: Wi-Fi кадр имеет UP 5 (Video, AC_VI), а содержащийся в нем IP-пакет имеет DSCP 46, Expedited Forwarding (EF).
![Рисунок 10 Значения QoS в направлении от клиента в процессе установки IPSec-соединения Рисунок 10 Значения QoS в направлении от клиента в процессе установки IPSec-соединения](https://habrastorage.org/getpro/habr/upload_files/95a/565/447/95a5654478dc7f1bcb13bb159d29ede6.png)
После того как туннель установлен, трафик ESP, содержащий исходящий голосовой трафик от клиента, маркируется немного иначе: Wi-Fi кадр имеет UP 6 (Voice, AC_VO), а содержащийся в нем IP пакет имеет DSCP 48, CS6 (Network Control).
![Рисунок 11 Значения QoS в направлении от клиента после того, как туннель IPsec установлен Рисунок 11 Значения QoS в направлении от клиента после того, как туннель IPsec установлен](https://habrastorage.org/getpro/habr/upload_files/9e2/80d/78f/9e280d78f20c91e4685698ccfca681cd.png)
Движущиеся в обратном направлении (от ePDG к смартфону) IP-пакеты приходят в локальную сеть с маркировкой по умолчанию (CS0, Default). И, соответственно, наша тестовая точка доступа маркирует трафик, отправляемый в радиоэфир, как AC_BE (Best Effort).
![Рисунок 12 Значения QoS в направлении к клиенту после того, как туннель IPsec установлен Рисунок 12 Значения QoS в направлении к клиенту после того, как туннель IPsec установлен](https://habrastorage.org/getpro/habr/upload_files/8f3/42a/ea9/8f342aea909aa0fb013e06a54150f9e3.png)
Отсюда следует два вывода о нашей тестовой конфигурации:
1) Трафик IPsec до ePDG в направлении от VoWiFi клиента к точке доступа Wi-Fi маркируется как DSCP (EF и CS6), так и UP (AC_VI и AC_VO), и передается в беспроводной среде Wi-Fi в приоритетном порядке.
2) В нашей конфигурации голосовой трафик от точки доступа Wi-Fi к VoWiFi клиенту не имеет приоритетной маркировки DSCP и UP, и передается с приоритетом «Best Effort» наравне с низкоприоритетным трафиком. Это вызвано отсутствием маркировки DSCP трафика, поступающего от ePDG через канал интернет. Беспроводная инфраструктура, под которой мы понимаем не только точки доступа, но и контроллер, при его наличии, могла бы устанавливать соответствие между маркировкой DSCP IP пакетов и маркировкой 802.11e Access Category Wi-Fi фреймов. Однако DSCP из проводной среды равен CS0 и при переносе в беспроводную среду тоже не имеет приоритет (AC_BE).
На основании опыта, в такой конфигурации VoWiFi работает без искажений. Но мы сделали несколько тестов, чтобы определить, влияет ли на качество VoWiFi-соединения отсутствие маркировки трафика от точки доступа к клиенту. Для этого необходимо сравнить качество вызова без маркировки и с маркировкой.
Чтобы обеспечить приоритетную передачу VoWiFi трафика к клиенту, мы настроим маркировку трафика от ePDG самостоятельно. Для этого по FQDN операторов определим их IP адреса и для них создадим пользовательское правило перемаркировки DSCP с Default/Best Effort (0) на EF (46). На основании DSCP при передаче пакета в радиоэфир ему будет присвоен соответствующий UP с AC_VO, что обеспечит приоритет трафику VoWiFi в направлении от точки доступа к клиентскому устройству. Ниже в таблице приведены адреса ePDG шлюзов крупнейших российских телеком-операторов, их адреса можно использовать для создания соответствующих правил. Данные актуальны на январь 2023 года, однако адреса ePDG операторов могут изменяться со временем.
Оператор | FQDN | IPv4 адреса | IPv6 адреса |
МТС | epdg.epc.mnc001.mcc250.pub.3gppnetwork.org | 213.87.142.77 | 2a00:1fa4:0:e::1 |
Мегафон | epdg.epc.mnc002.mcc250.pub.3gppnetwork.org | 85.26.231.145 31.173.34.209 | |
Билайн | epdg.epc.mnc099.mcc250.pub.3gppnetwork.org | 85.249.19.248 | |
Теле2 | epdg.epc.mnc020.mcc250.pub.3gppnetwork.org | 217.169.82.242 217.169.82.241 176.59.95.161 176.59.95.160 176.59.159.191 176.59.63.79 176.59.63.78 | |
![Рисунок 13 Схема маркировки QoS для трафика VoWiFi с включенным правилом перемаркировки Рисунок 13 Схема маркировки QoS для трафика VoWiFi с включенным правилом перемаркировки](https://habrastorage.org/getpro/habr/upload_files/9f4/4a4/44f/9f44a444f6aa2d41e4bf6b874d7a371b.jpg)
Под Wi-Fi инфраструктурой понимается совокупность всех элементов сети, обеспечивающих обработку беспроводного трафика, включая VoWiFi. В нашей тестовой среде это одно оборудование, у вас может быть другое. Соответственно, и настройки QoS тоже можно сделать по-разному. Например, на Cisco AirOS WLC для VoWiFi трафика есть AVC стандартный классификатор «wifi-calling», и приоритет DSCP/UP можно задать с помощью AVC профилей. У CommScope SmartZone можно вручную создать политику “Wi-Fi Calling” для конкретных операторов и FQDN / IP их ePDG, и настроить приоритезацию QoS. На Mikrotik изменение значения DSCP трафика ePDG и присвоить приоритет UP можно с помощью правил Mangle. Перемаркировку можно настроить и на проводном оборудовании, например, на межсетевом экране. Поэтому мы покажем только основную концепцию, не углубляясь в детальное описание настроек.
В нашей конфигурации мы создали правило перемаркировки трафика от ePDG к клиенту, принудительно присваивая DSCP 46 (Expedited Forwarding), и на его основании фреймы Wi-Fi стали получать UP AC_VO (Voice). Ниже приведен скриншот из Wireshark, где IP адрес «192.a.b.c» – адрес VoWiFi клиента, а «213.d.e.f» адрес ePDG оператора.
![Рисунок 14 Значения QoS в направлении к клиенту после включения правила перемаркировки Рисунок 14 Значения QoS в направлении к клиенту после включения правила перемаркировки](https://habrastorage.org/getpro/habr/upload_files/13a/d87/afd/13ad87afd5a9f43de97c2fc9716180cf.png)
Для того чтобы проверить, как это повлияло на качество соединения VoWiFi, мы запустили сессию Iperf на двух дополнительных клиентских устройствах, подключенных к той же точке доступа. Это обеспечило максимальную загрузку беспроводного канала связи, к которому подключен VoWiFi-клиент. В условиях высокой утилизации мы сделали несколько VoWiFi вызовов и субъективно оценили их качество. После проведения нескольких тестов отключали правило перемаркировки и повторно проводили тесты. Тесты показали, что отсутствие маркировки QoS трафика от точки доступа к клиенту не оказывает критичного влияния на качество голосового вызова. Речь собеседника не искажается и не пропадает. Однако правильная маркировка обеспечивает малую задержку: если правило было отключено, задержка увеличивалась примерно до секунды (приблизительная оценка на слух). При включенной перемаркировке тест Iperf не оказывал влияния на задержку при VoWiFi вызове.
Из любопытства мы сделали ещё и тесты для Whatsapp и Telegram в тех же условиях. Результаты получились аналогичными: при повышенной загрузке канала Wi-Fi увеличивалась задержка при разговоре, но разборчивость голоса не ухудшалась. Однако в случае с мессенджерами клиентские устройства не маркируют трафик при помощи QoS, а качество голоса немного уступает звонкам через VoWiFi.
Выводы
VoWiFi – удобное дополнение, которое позволяет звонить привычным способом в помещении с отсутствием сотовой связи, а также сэкономить деньги в роуминге. С точки зрения Wi-Fi, технология использует механизмы качества обслуживания QoS, хотя иногда и остается возможность для небольших улучшений.Напоследок напомним, что на итоговое качество телефонии в Wi-Fi сетях влияет множество факторов. Для домашней сети самое главное - выбрать не сильно загруженный и свободный от помех канал (желательно в диапазоне 5 ГГц). Для корпоративных сетей важно качественное проектирование беспроводной инфраструктуры, которое учитывает требования телефонии (уровень сигнала, наложение зон покрытия и т.д.).
Проектируйте и настраивайте свои беспроводные сети правильно, и тогда VoWiFi будет стабильной и удобной альтернативой сотовой сети.
В качестве дополнения, ниже приведены ссылки на инструкции от российских операторов сотовой связи по активации услуги VoWiFi и настройке смартфонов.
МТС:
-
Для просмотра ссылки необходимо нажать Вход или Регистрация
-
Для просмотра ссылки необходимо нажать Вход или Регистрация
-
Для просмотра ссылки необходимо нажать Вход или Регистрация
-
Для просмотра ссылки необходимо нажать Вход или Регистрация
-
Для просмотра ссылки необходимо нажать Вход или Регистрация
-
Для просмотра ссылки необходимо нажать Вход или Регистрация
-
Для просмотра ссылки необходимо нажать Вход или Регистрация
-
Для просмотра ссылки необходимо нажать Вход или Регистрация.
Для просмотра ссылки необходимо нажать
Вход или Регистрация