Tags
WGB Roaming time is the time taken by a WGB radio role to disassociate from one AP and reassociate to another AP. During this interval there is no data transfer & therefore roaming time is significant to maintain sessions.
Roaming involves two main processes
1. Scanning
2. Reassociation
Scanning:
WGB support two main modes of roaming operation
1. Static mode (default) – Roaming is based on two main vairiables: “Packet retransmissions” or “loss of 8 consecutive beacons”
2. Mobile Station mode – On top of previous variables, the AP can do periodic analysis of signal level drops and data rate shifts.
When any of the above criteria is met, WGB will trigger roaming process, scanning approximately 10-20ms/channel. You can also limit the channels to be scanned through configuration. For example you can set only CH1, CH6 & CH11 to be scan in 2.4GHz radio deployment.
Scanning methodology followed is “Active Scanning“. Instead of listening to beacons from APs, WGB will actively send out “probe request” packets and waits for 20ms to get a response in every channel. The AP will stop scanning after it receives the first response with satisfying signal. So scanning time may last approximately 40ms & may be shorter depending on radio hardware type.
There are two forms of configuring WGB roaming parameters
1. Use “packet retries” command : This will allow more conservative approach where WGB will not start a roaming process until data loss is detected or 8 consecutive beacons are missed.
int d0 or d1 packet retries <1-128> {drop-packet}
2. Use “mobile station” command : This will start a regular process on WGB to do preemptive roaming, which monitor the signal levels & rate speed changes and force a new roaming before the current AP signal is too low. This scan process will trigger small gaps in radio transmission when the radio is performing the channel scan. Starting from 12.4(25d)JA, minimum data rate can be configured to trigger a roaming event in case of data rate change. If you want to limit the number of channel to scan you can use the “mobile station scan” command.
int d0 or d1 mobile station mobile station period <1-1000s> threshold <1-100> mobile station minimum-rate <min-data-rate> mobile station scan <scanning-channels>
If the WGB starts scanning because of a loss of eight consecutive beacons, the message “Too many missed beacons” is displayed on the console. In this case, the WGB is acting as a Universal Bridge Client, much like any other wireless client in its behavior.
In some situations, it is interesting to use the optional “drop” option in the packet retries, to preserve the association, even on the failure to transmit a data packet. This is useful for challenging RF environments, where the roaming can be also triggered by mobile scan command.
The mobile station algorithm evaluates two variables: data rate shift and signal strength and responds as:
1. If the driver does a long-term down shift in the transmit rate for packets to the parent, the WGB initiates a scan for a new parent (no more than once every configured period).
2. If the driver detect the RSSI from its parent is below the configured threshold, WGB initiates a scan for a new parent (no more than once every configured period).
The data-rate shift can be displayed using this command:
debug dot11 dot11Radio 0 trace print rates
!
*Mar 1 00:33:20.371: 436472AA-0 BBF420 - Set rate: m15.-2s 144 Mbps (20F), Rssi 29 dBm
*Mar 1 00:33:44.379: 44D32696-0 BBF420 - Set rate: m15. 130 Mbps (10F), Rssi 29 dBm
*Mar 1 00:33:47.380: 4500FD0C-0 BBF420 - Set rate: m15.-2s 144 Mbps (20F), Rssi 29 dBm
*Mar 1 00:34:04.386: 4604BC7B-0 BBF420 - Set rate: m15. 130 Mbps (10F), Rssi 29 dBm
*Mar 1 00:34:05.386: 461403FF-0 BBF420 - Set rate: m15.-2s 144 Mbps (20F), Rssi 30 dBm
However, this will not show the actual data rate shift algorithm in action, but only the changes in data rate. This determines the time period to scan, depending on how much the data rate was decreased.
The mobile station period should be set depending on the application. The default is 20 seconds. This delay period prevents the WGB from constantly scanning for a better parent if, for example, the threshold is below the configured value.
Some situations may require a faster timer; for example, on high speed trains. The period should not be lower than the time that is required by the AP to complete the authentication process. For example, for 802.1x + CCKM networks, it should not be set below 2 seconds. PSK networks may use one second. The actual period will always have one second added to the timer, product of the AP scheduler resolution for this task.
The threshold sets the level at which the algorithm is triggered to scan for a better parent. This threshold should be set to noise+20dBm but not more than -70dBm (+70 because input for threshold is positive). The default is -70 dBm. The correct threshold will depend on the intended data rate, versus the coverage level offered in the environment where the WGB will operate. Assuming a proper coverage, we should set this threshold to be a little less than then “breaking point” for the needed data rate for the applications in use. Here is the RSSI sensitivity values for a 3502I AP (you can find the full table from AP’s data sheet)
When you enable these settings, the WGB scans for a new parent association when it encounters a poor Received Signal Strength Indicator (RSSI), excessive radio interference, or a high frame-loss percentage. Using this criteria, a WGB configured as a mobile station searches for a new parent association and roams to a new parent before it loses its current association. When the mobile station setting is disabled (the default setting) the WGB does not search for a new association until it loses its current association.
There are 3 types of scans implemented for the WGB
1. Normal Scan
2. Fast Scan
3. Very fast Scan
A normal scan begins on the associated channel & continues to cycle through the rest of the channels. For example if WGB is associated to CH6, then it will start its scan on CH6, CH7 … CH13, CH1…. CH5. Upon scanning all channels & receiving more than one probe response WGB will do compare function that compares (RSSI, Load, Hops, etc) all responding APs to the one it was previously associated.
WGB perform a fast scan when traffic is between 10-20 packets per second. The WGB scans and associate to first responding AP during fast scan.
During a very fast scan, the WGB does not scan at all and try to associate to the best AP in the adjacent list that is build up with IAPP and CCX.
In certain situations depending the application parent list may have “directionality”. For example a train is traveling to given directions would not have any benefits of the neighbor-list since train is moving away from them. You can configure the following command to ignore neighbor-list.
int d0 or d1
mobile station ignore neighbor-list
We will look at the Reassociation in the next post.
Reference
1. Outdoor Mobility Design Guide
2. https://supportforums.cisco.com/docs/DOC-14944
Related Posts
1. WGB Configuration
2. WGB with EAP-FAST
3. WGB with CAPWAP
4. WGB with PSK
5. IOS AP-WGB with Multiple VLAN
6. Unified AP-WGB with Multiple VLAN
7. Packet Retries & Max-Retries
8. WGB Roaming-Part 2
9.
Hi, Rasika. Congratulations!!! on passig CCIE-Wireless.
One issue with my WGB Roaming lab setup, at least for me 😦
int dot1 1, mobile station scan 36 40 44 48, brakes my wgb EAP-FAST to RAP.
Any idea why? Thx
JT
Check in RAP radio interface config, band 1 should be enabled,post ur RAP radio interface config to hv a look
Rasika
THX, found my error. I was scanning 36 40 44 48 and my int d1 was using 149 161 165. As soon as I changed my WGB mobile station scan to 149 153 157 161 165 my EAP-FAST never droped.
Great….
Now, one more question/issue. How do I make my WGB int d1 only 802.11a? channel command only takes one channel, speed is set to 6 to 54 and my sh int d1 still shows HW 802.11n. Thanks for the help!!. I’m using 1142N.
Hi JT,
If you configure interface d1 speeds 6 to 54 statically without MCS rates (ie m0-m15) it should not get any 802.11n data rates.
You can verify this by “show dot11 association [client-MAC]” CLI command as it will tells us supported data rates & connected data rate.
Current Rate : m15.
Supported Rates : 6.0 9.0 12.0 18.0 24.0 36.0 48.0 54.0 m0. m1. m2. m3. m4. m5. m6. m7. m8. m9. m10. m11. m12. m13. m14. m15.
Above is an output where I leave default speeds under d1 interfaces & you can see WGB connected in m15 speed.
Check in your case how this looks like. You should not see MCS data rates as supported.
Checked, yes no m15 rate supported, Thanks.
How about channel on RAP int d1? is it best practice to set it to 36 or other? and how do I remove channel from int d1?
In Channel command under d1 you have other options, you can leave it for “dfs” & then it will dynamically select the channel.
If you do not want certain UNII bands then you can block them as well.
HTH
Rasika.
Got it Thanks!!! blocked everything but band 1 and works great with channel dfs.
JT
Glad to see you made it working the way you wanted..
In WGB if we want to support 802.11n MCS rates, do we need to specify key management as WPA version 2 or just WPA and aes under the dot1radio1.
Yes, You require WPA2/AES in order to get MCS data rates.
Otherwise Open Auth
HTH
Rasika
Hi Rasika,
I have a question regarding roaming of WGB.
My question is if Bridge can not keep minimum data rate 24mbps on the radio link(802.11a) then its must roam.
** Suppose its check evey 4 sec for roaming.
** Take RSSI sensitivity value for 3502i AP(as in your post)
Now what will be my answer:
mobile station period 4 threshold 70
or
mobile station period 4 threshold 87
*** I am confused because of this sentence: The threshold sets the level at which the algorithm is triggered to scan for a better parent. This threshold should be set to noise+20dBm but not more than -70dBm
Regards
Sandeep
By looking at the given AP receive sensitivity, I would go with 87.
Information in this post came from given “WGB Roaming: Internal details and Configuration” Cisco document.
HTH
Rasika
Ok thanks rasika & congrats in oassing CWNE 🙂
Regards
Sandeep
on Passing CWNE exam…..sorry for typo error 🙂
Very valuable post. Thanks Rasika.
My company is implementing lots of WGBs inside buses. We are using AP802 embedded inside Cisco 819 ISR. This AP is shipped with IOS 12.4 and every roaming tweak we are doing on this version of IOS is working fine for us. The problem is, Cisco is recommending IOS 15.3.3 on these APs and we are having issues with it. AP802 on IOS 15.3.3 is sticky. It holds on to one outdoor ligh weight AP and never leaves it. We are using it with 8500 WLC on 8.0.110 software on it. On the other hand we have a 2500 WLC on 8.0.100.0 for testing purposes and IOS 15.3.3 on AP802 works fine. Very confusing. Is there any known issues IOS 15.3.3 working with 8.0.110? Thanks.
I would check with TAC on this. I think recommended 8.0.x code is 8.0.110.9, which is an engineering release
https://supportforums.cisco.com/document/12481821/tac-recommended-aireos-76-and-80-2q-cy15
HTH
Rasika
Hi Rasika, Thank you for the finest blog!!! I enjoy reading your posts and almost deployed many of these scenarios in my production, in one of our branches only 4 APs, and we deployed WDS there for voice , now 7925 phones experiencing “leaving service area! I disabled higher rates(36,54Mbps) but phones stil jumping from one ap to another, cckm fast roaming working fine but during jumping they experience leaving service area, Now I want to check threshold (minimum RSSI for roaming) for standalone aps , but can not find any documendation which explains how play with threshold in WDS. Can you please help ?
Thanks/regards
Vugar
Did you ever do the Part 2?
Have a WGB over Mesh in a high noise environment (railyard) and running into roaming issues. High RSSI/SNR (-48/40 on RAP, -62 MAP1, -70 MAP2) but terrible iperf3 numbers. Noise floor seen as low as -76 regularly in low/mid -80s.
Adjusted cell sizes (power levels, rx-sop) Optimized roaming, WGB roaming (mobile station).
Have read the other WGB articles. As always, very detailed and descriptive. Just trying to deep dive on the topic and soak up all the information out there.
Hi Chris, I do not think I have done that.. let me see if I can find some useful facts for that post
Rasika