Кто принимает решение
Когда в доме или офисе несколько точек с одним именем сети, смену точки инициирует клиентское устройство. Оно следит за уровнем сигнала и по собственной логике решает, что пора искать другую. Производители закладывают разные пороги, поэтому один телефон переключается охотно, а другой «залипает» на далёкой точке до последнего, пока сигнал не станет совсем слабым.
Поэтому роуминг — это не только настройки сети, а ещё и поведение конкретного устройства.
Три поправки к стандарту
802.11k даёт клиенту отчёт о соседях: точка сообщает список ближайших точек и каналов, и устройству не нужно сканировать весь диапазон. Это экономит время и заряд. 802.11v позволяет точке мягко порекомендовать клиенту сменить точку, например при перегрузке или слабом сигнале; клиент вправе отказаться. 802.11r (Fast BSS Transition) ускоряет саму смену: ключи шифрования согласуются заранее, поэтому вместо полной повторной аутентификации переход занимает десятки миллисекунд.
Поддержка одной поправки не подразумевает остальные, и они не обязательно включены по умолчанию.
Где это важно
Для веб-страниц пауза в секунду при смене точки почти не заметна. А вот видеозвонки, IP-телефония и голосовые сервисы в Wi-Fi чувствительны: задержка более сотни миллисекунд слышна как обрыв или заикание. В корпоративной сети с входом по учётным записям без быстрого перехода клиент повторно проходит проверку на сервере RADIUS, и это может занять заметное время.
Для игр и потоков картинки помогает не столько быстрый роуминг, сколько правильное расположение точек с достаточным перекрытием зон.
Причины проблем
Частая проблема — «липкие» клиенты. Другая — несогласованные настройки: одинаковое имя сети, но разный тип защиты или пароль на точках; тогда переход невозможен. Третья — 802.11r, который иногда ломает подключение старых устройств: если после включения какой-то гаджет перестал подключаться, попробуйте отключить его или настроить режим совместимости «FT adaptive».
Ещё одна причина — слишком высокая мощность точек, при которой сигнал соседней слышен слабо даже рядом с ней, и клиент не видит причин уходить.
Как проверить самому
Пройдитесь по помещению с включённым непрерывным пингом до роутера (см. статью про ping) или во время звонка. Смотрите, на какой точке остаётся устройство и как меняется уровень сигнала. На компьютере с Windows команда netsh wlan show interfaces показывает BSSID текущей точки; о нём подробно — в материале про SSID и BSSID. Если смены нет, а сигнал ниже минус 75 дБм, стоит понизить мощность ближайшей точки или включить 802.11k и 802.11v.
Настройка сети под роуминг
Чтобы роуминг работал предсказуемо, начните с единых параметров. На всех точках должны совпадать SSID, тип защиты и пароль. Каналы разнесите так, чтобы соседние точки не использовали один и тот же канал, а мощность передатчиков подберите с учётом того, что зоны должны перекрываться примерно на 15–20 процентов. Слишком большое перекрытие вызывает «залипание», слишком малое — провалы связи.
Затем включите механизмы, которые поддерживает оборудование: сначала 802.11k и 802.11v, потом, при необходимости, 802.11r. После каждого изменения проверяйте поведение самых капризных устройств. Иногда полезна настройка минимального уровня сигнала, при котором точка отключает клиента, чтобы заставить его искать другую точку; но слишком агрессивные значения приводят к обрывам.
Некоторые системы предлагают режим «управления диапазоном» (band steering), направляющий клиентов на 5 ГГц. Он полезен, но иногда конфликтует с роумингом, поэтому при проблемах его стоит попробовать выключить и сравнить.
Если вы сомневаетесь, проблема ли в роуминге, проведите простой эксперимент: отключите на телефоне Wi-Fi на несколько секунд рядом со второй точкой и включите снова. Если он подключается к ближайшей точке и работает быстро, значит, оборудование в порядке, а проблема именно в упрямстве клиента, и решать её нужно настройкой мощности и порогов, а не заменой роутеров.