802.11 Roaming- Understanding How Wireless Devices Transition Between Access Points
We have heard about roaming several times, and understand how seamless roaming experience is important for users with time sensitive applications. This seamless experience is made possible by a process called "roaming" in 802.11 wireless networks.
What is 802.11 Roaming and how does it work?
The 802.11 roaming refers to the process where a wireless station moves from one access point (AP) to another within the same extended service set (ESS). This transition should ideally happen without any interruption to the network connectivity.
When the station first connect to a Wi-Fi network, it associates with an access point. As you move away from this initial access point, the signal strength degrades. When this happens, your device starts scanning for a better connection, looking for another access point to associate with.
A very important fact, which is often forgotten by the Users/Network administrators is, the decision to roam is made entirely by your device, not the Access Points. Your device uses various metrics to determine when to initiate a roam, including:
- RSSI (Received Signal Strength Indicator)
- SNR (Signal-to-Noise Ratio)
- Other factors such as Packet loss rates, retry rates, etc.
When your device decides to roam, it sends a reassociation frame to the new access point it wants to connect to. This frame contains important information, including the MAC address of the access point your device is currently associated with.
The roaming process follows these steps in a secure network:
Step 1: 802.11 Open System authentication frame exchange with the new AP.
Step 2: Device sends a Reassociation Frame to the new access point
Step 3: 4-way handshake is performed to establish encryption keys
The Reassociation Request frame includes specific fields such as, Listen Interval, Current AP's MAC Address field, SSID Parameters and RSN (Robust Security Network) Element for security parameters:

The Reassociation Response frame include the Status Code and the Association ID confirming successful Reassociation of the station:
- Preauthentication
- PMK Caching
Preauthentication
Preauthentication allows a wireless client to authenticate with multiple access points at once. For Pre-auth to work:
- All APs must be in the same Extended Service Set (ESS)
- The APs must advertise Preauthentication support in their Beacon frames
- In the RSN Information Element, the RSN Pre-Authentication Capabilities subfield must have its bit set to 1
How Preauthentication works:
- A station establishes an RSNA (Robust Security Network Association) with an access point prior to attempting reassociation
- When 802.1X authentication completes successfully, it generates a PMKSA (Pairwise Master Key Security Association) that can be used with other APs
- When the station associates with a preauthenticated AP, it uses the existing PMKSA and proceeds directly to the 4-way handshake
- This allows the station to skip the time-consuming 802.1X EAP exchanges
PMK Caching
PMK caching speeds up the roaming process when a station returns to an AP it has previously associated with. Here is how it works:
- The station and original AP maintain a PMKSA for a defined period before it expires
- During this time, if the station returns to this AP, it can include the PMKID for the PMKSA in its Reassociation Request
- The AP verifies it has a cached PMKSA for that station
- If valid, the AP begins the 4-way handshake, skipping the 802.1X EAP exchange
Key difference between Preauthentication and PMK Caching:
- With PMK Caching, the PMKID is cached on the AP after the station associates with it, helping when the station roams back to that same AP
- With Preauthentication, a PMK is created and stored on a target AP before the station ever connects to it, helping when the station roams to a new AP



Comments
Post a Comment