Итак что же мы имеем на сегодняшний день? Как таковой "бесшовный" или "настоящий" роуминг (который "handover") в Wi-Fi сетях отсутствует и не предусмотрен стандартом 802.11. Его просто не существует. Смиритесь :)
Максимум что у нас есть - "быстрый роуминг на стероидах". Повлиять на поведение клиента мы не можем никак, лишь надеяться на адекватность его прошивки и драйверов сетевой карты. Давайте кратко пробежимся по тому как это работает.
Клиентское устройство решает:
К какой точке в зоне доступа можно подключаться
Когда переподключаться на другую точку доступа
Какие параметры качества сети учитывать
Когда инициировать переподключение
На какую частоту подключаться (2.4, 5 или 6ГГц)
Точка доступа может:
Отвечать с задержкой на запросы аутентификации от клиента (как одна из реализаций технологии band-steering, например)
Отказывать в аутентификации клиенту (по уровню сигнала, при большой нагрузке на точку доступа и т.п.)
Деаутентифицировать клиента что должно использоваться как "крайняя мера" и может привести к отказу клиента подключаться
Предоставлять клиенту оптимизированный список соседних точек доступа для роуминга (802.11k)
Предоставлять информацию о загруженности других точек доступа клиенту (802.11v)
Ускорять процесс роуминга, используя "быструю аутентификацию" вместо полного процесса переаутентификации (802.11r)
При этом, 802.11k/v/r - совершенно не обязательно поддерживаются всеми устройствами, а для работы требуется поддержка протокола и клиентом, и точкой доступа.
Во всём этом, "МОЖЕТ" - ключевое слово. Несмотря на все вышеперечисленное, именно клиент решает, куда и как он хочет подключаться, и его решения могут целиком и полностью не совпадать с "рекомендациями и желаниями", полученными от точки доступа или контроллера.
Типичные ситуации в жизни:
Точка доступа де-аутентифицирует\не аутентифицирует клиента. Он продолжает попытки коннекта к "старой" Точка доступа. Потому что хочет. Роуминга не происходит. Вифи у клиента не подключается.
Игнорирование клиентом одной из частот (2.4 или 5ггц) просто потому, что у него где-то внутри стоит приоритет одной из.
Спасибо коллегам из Evil Wireless Chat за информацию для данного поста!