Beginning from OS 2.13 Keenetic routers supports IEEE 802.11k, 802.11r and 802.11v (beginning from OS 2.15) standards. This mechanism is named 'Seamless Wi-Fi roaming' and designed for fast switching of wireless clients between access points. Ordinary the switching procedure from one AP to another AP tooks up to 5 sec. Due to 802.11k, 802.11r and 802.11v standards speed up this procedure to 100 ms. This allows to avoid breaks in VoWi-Fi calls. Mentioned standards implements 3 different functions, which works independently from each other. Each of these functions improves the Wi-Fi seamless roaming performance.
Wi-Fi roaming function (eng. roaming, roam — roam) provides a permanent connection to the Wi-Fi network of mobile users (clients, wireless stations) during their movement within the coverage area created by several autonomous access points. When moving within the coverage area, the wireless station independently selects the most suitable access point depending on the signal level, network load and other factors. This is especially important to ensure a stable connection when using IP telephony.
For example, there are two Keenetics - one in the main mode and another is in the supplementary mode ('Access point' or 'Repeater') to extend the coverage area of the main router. If seamless Wi-Fi roaming is enabled, then when you move with your mobile device around the apartment, an accelerated reconnection between the access points will take a place.
NOTE: Important! What you need to implement seamless Wi-Fi roaming on Keenetic:
1. Models with IEEE 802.11k/r standard support (all models for which KeeneticOS 2.13 available). Support of 802.11v became available from KeeneticOS 2.15.
2. Mobile device should support seamless roaming, IEEE 802.11k/r/v standards. For information please refer to the technical documentation from the manufacturer.
3. All Keenetic devices should be within one LAN segment.
4. The same mobile domain IDs and keys must be set on all routes of the LAN segment.
5. Roaming will work between devices in following modes: 'Router', 'Access point', 'Repeater'. Roaming will also work between 2.4 GHz and 5 GHz networks within the same router.
6. SSID should be similar on all access points.
Let's consider in detail how seamless Wi-Fi roaming is implemented and works.
802.11 k - fast search for nearby access points is needed to support customers who want to switch quickly between access points. The first time you connect to access point, the client receives information from the access point about 802.11k support. If access point do support 802.11k, then client send a request (if it supports 802.11k by himself) to the access point to obtain a list of neighboring access points.
If the signal of the current access point is weakened, the client will search for access points from this list (scans only the necessary channels). After the migration, the client again requests an updated list of neighboring access points. Clients receive information about the neighboring access points and their signal levels. Basing on this info client makes a decision about which access point to connect and which band is better to use. However, it should not scan the entire radio environment. If client had to scan the entire radio environment, it would cause multi-second delays. The use of an optimized list of neighboring access points significantly reduces the scanning time of the radio environment.
802.11r - this protocol implements the storage of encryption keys of all access points. It is also called as FT (Fast Transition). When client migrates to new access point it is no need to perform encryption keys agreement again. This standard considers 2 types of FT mode - Over the Air (OTA) and Over the DS (OTD). OTA - client communicates with the access point to which it wants to connect through the air. This function is always enabled in Keenetic. You can't disable it.
OTD - client communicates with the access point to which it wants to connect before the migration begins via the access point to which it is connected at this moment. In the first versions of the 11r protocol, only Over the DS mode was supported, and some older phones, such as the iPhone 4s on iOS, only support Over the DS. You can enable this feature via the web interface.
When both features are enabled (Over the DS enabled forcibly, however Over the Air enabled by deafault), client device chose which if them to use by itself. Modern smartphones usually support Over the Air and this mode is chosen by smartphones for roaming.
As to the FT settings - user should perform it manually. Here you have to pay attention that the same IDs and mobile domain keys for all routers of the local network segment must be set. There could be a slight pause during the voice session when FT mode is enabled, but it won't cause the session break.
802.11v - this protocol recommends client to switch to the adjacent range within one dual-band router. For example, when client's RSSI level in 5 GHz range is low, a suggestion about switching to adjacent range (2.4 GHz) is sent to him. And vice versa when RSSI in 5 GHz is better, the client is advised to move to this range. The client makes a decision to switch or not by itself. 802.11v roaming occurs in conjunction with the Band Steering settings. If client supports 802.11v, a suggestion to switch to an adjacent range will be made. Iа client do not support 802.11v, a Band Steering will be applied to make him to switch to adjacent range.
The time when to switch from one access point to another determines by the client (smartphone, tablet, laptop) itself. Every mobile device manufacturer sets the criteria for starting the migration from one access point to another. Most often it is a low RSSI level, as well as the load of the access point, low data transfer rate, etc.
You can make Seamless roaming (802.11k/r/v) settings in Keenetic's web interface on 'Home segment' page in "Wi-Fi seamless roaming" section. But first you should add at least one Wi-Fi network to the segment. Fast Transition (802.11r) will work in non-protected networks or for networks protected by WPA2-PSK. In dual-band device (2.4 and 5 GHz) to unlock 802.11r you must have only one W-Fi network or SSID, passwords and work schedule should be the same for both ranges.
Choose one of the following items in the 'Fast transition (802.11r)' list: 'Enabled for 2.4 GHz and 5 GHz','Enabled only for 2.4 GHz', 'Enabled only for 5 GHz' or 'Disabled'.
When you enable 802.11r, type the 'Mobility domain ID' and 'Mobility domain key'. The corresponding values of these parameters should be the same on all routers of the local network.
By default, 'Allow FT over the DS' mode disabled. Enable it for greater compatibility with older mobile devices. For example, old iPhone models will not work without this mode.
Turn on the 'Radio Resource & BSS Transition Management (802.11k/v)'. It will allow the client to transmit information about neighboring access points and their signal levels. 802.11v works only in conjunction with Band Steering. To use 802.11v you have to activate Band Steering.
'Device list' page displays the roaming standards that each Wi-Fi subscriber device supports.
802.11k/r/v roaming features must be enabled. Otherwise, they will not appear in device properties.
It is possible to check the support and performance of seamless roaming by the messages in the system log. For example:
WifiMaster1/AccessPoint1: (MT76x2) STA(6c:4d:73:ce:05:02) had associated successfully (FT mode)
wmond: WifiMaster0/AccessPoint0: (MT76x2) STA(3c:77:e6:e3:74:bf) had re-associated successfully
wmond: WifiMaster0/AccessPoint0: (MT76x2) STA(3c:77:e6:e3:74:bf) had re-associated successfully (FT mode)
bndstrg: band steering: (1) send BTM request to ec:ad:b8:80:c8:21 for roam to 5GHz band
bndstrg: band steering: WNM client ec:ad:b8:80:c8:21 accepted 5GHz band
wmond: WifiMaster1/AccessPoint0: (MT7615) STA(ec:ad:b8:80:c8:21) FT authenticated successfully.
wmond: WifiMaster1/AccessPoint0: (MT7615) STA(ec:ad:b8:80:c8:21) had re-associated successfully (FT mode).
NOTE: Important! Roaming will not work properly when MAC Repeater is enabled on the 'Repeater'. This is currently an architecture limitation. It will be lifted in the future.