We recently needed to replace the USB based wireless adapter we use in our CoWs (cart on wheels). The legacy D-Link DWL-AG132 (802.11a/g) was no longer being manufactured and/or available from suppliers so we selected the D-Link DWL-160 (802.11n/a/b/g) and that’s were the fun started. We utilize HP Thin Clients on our carts and have been pairing them with USB adapters for the past year and a half (saves on having to purchase the chassis expansion kit and the PCI card).
Our initial tests showed no problems in connecting to our Motorola RFS7000 with AP300 (802.11a/b/g) radios utilizing 802.1x (WPA/TKIP). A few weeks later though we learned we had a problem with the combination and we eventually discovered that the problems revolved around roaming. We noticed that the DWL-160 didn’t want to roam until it had lost complete signal to the AP it was associated to and then only after about 10 – 15 seconds would it roam to another APl. We had a really large project and the time frame was extremely tight so we decided to run out and pick-up a different adapter. So we purchased a Cisco Linksys (WUSB600N) Wireless-N USB Network Adapter with Dual-Band. We decided to simplify our testing environment by removing the Windows XP Embedded (Thin Client) and test on a simple Windows XP SP2 laptop. We also removed the authentication (802.1x) and encryption (WPA/TKIP) and just test using an open network. We quickly noticed that the problem was not only evident at the 2.4Ghz frequency (802.11b/g) but also evident at the 5 Ghz frequency (802.11a). The big surprise came we noticed that the Linksys behaved exactly like the D-Link in that it would not roam which would lead to poor connectivity. We started to peel back the onion and almost immediately found that both products were based on the Ralink Technologies chipset (RT-2870).
We’ve performed multiple wireless packet traces using AirPCAP and WireShark and they don’t show any issues with the wireless access points, however, they do show a lack of probing and some odd behavior by the wireless adapters (STA).
We’re in contact with both Motorola and Ralink Technologies and we have tried Ralink’s reference drivers (1.4.1) along with a beta driver they have provided but we haven’t seen any real improvement. We did find that if you enable “Fast roaming”, which can be found the in the Advanced Properties of the RA utility the STA behaves much better but it’s still a world apart from the roaming performance that we’re accustom to.
Has anyone else seen any issues with either the D-Link DWL-160 or the Linksys WUSB600N in a corporate network with respect to roaming? I can’t imagine that we’re the first folks to stumble upon this issue given that Ralink Technologies chipsets are in all these products.
Cheers!
Mark Howell says
Use Meru’s Virtual Cell technology which will take away your roaming issues completely
http://www.merunetworks.com/pdf/whitepapers/Virtual_Cells_WP4_0705.pdf
Michael McNamara says
Thanks for the comment Mark.
suner says
My environment setup as below, and it is OK.
1. RT2870STA driver version is v2.1.0.0.
2. Set AutoRoaming=1 and RoamThreshold=70 in RT2870STA.dat file
3. Setup two APs (AP1, AP2) with same SSID and security mode.
4. Type “iwconfig” to check STA status, and make sure whether AP1 or AP2 is associated.
5. By reducing RSSI of associated AP lower than -70 dBm, then RT2870STA will roam to another AP (with better RSSI) within 3-4 seconds.You can catch packets with Omnipeek and see if RT2870STA send probe request automatically to another AP2 in this time.
Michael McNamara says
Hi Suner,
Since you refer to “iwconfig” I’m suspecting that you are using a Linux operating system and not Windows XP. I haven’t tested the hardware with any of the Linux distributions only with Windows XP and Windows XP Embedded.
Thanks for the information regarding Linux!
suner says
I think main point is signal if lower than -70 dBm RT2870STA send probe request automatically to another AP2 in this time.You shall catch packets with Omnipeek and see if RT2870STA send probe request automatically to another AP2 in this time.If RT2870STA send , it will work fine.
suner says
When enable fast roaming in RaUI , you shall work fine.Fast roaming will be according to singal sensitivity both of Linux and Windows.
Michael McNamara says
Hi Suner,
Unfortunately I had to drop the D-Link adapter… even with Fast roaming enabled (85dB) the adapter seemed to throw fits from time to time. Initially we thought it might have to-do with the WPA/TKIP/802.1x configuration with Windows XP and the re-authentication as the STA roamed from AP to AP but even in a open network we had issues. While the adapter seems to work fine once your connected and in-mobile it was hit or miss once you started moving or if you just picked up… walked 200 ft and tried to work again. It was definitely MUCH better behaved with Fast roaming enabled but it was no where near where we needed it to be.
We’ve since gone back and starting using the Netgear WDNA3100 which is based on an Atheros chipset. While this adapter might be a few more $$$ it appears to be much more consistent than the D-Link or Linksys adapters in terms of roaming and even in terms of authentication time using WPA/TKIP/802.1x.
Thanks for the comment!
Michael McNamara says
Just a follow-up to this article for any following in our footsteps.
We had intermittent issues with the Netgear WDNS3100 as well when we would roam between Access Ports/Points. We ultimately replaced all of them with Cisco 802.11a/b/g Wireless PCI card which works flawlessly. Unfortunately we had to buy the expansion kit for the HP Thin Clients which added to the amount of work and cost but it was well worth the effort to be assured that the COWS would roam without issue.
I’m not sure why the other vendors/chipsets can’t get this one right?
Cheers!
Vidal says
Michael,
I had the same scenario (didn’t want to roam until it had lost complete signal) after deploying a WLAN using WS5100 Switch with WPA/PSK encryption.
My clients are Talkman T2x (Text-to-Speech solution by Vocollect) and they lost communication with the server every time the roam is needed.
We apparently solved the problem changing the encryption to WEP.
Are you sure that the problem is in the clients and not with the RFS7000?
Michael McNamara says
Hi Vidal,
We went to great pains to collect a lot of packet traces. I examined the wireless traces myself and it was pretty clear that the issue was with the client adapter. It’s the client adapter’s responsibility to roam and when to roam, the wireless network just advertises availability.
We tried all methods of encryption including un-encrypted and wide open, still the same roaming issues persisted.
With that said we have seen some ‘odd’ behavior from time to time with different clients, many of which have been resolved with subsequent software and driver upgrades.
Thanks for the comment!
Dan Coats says
Although RaLink does not provide the ability to setup these cards for enterprise environments, the setting are still available none the less. In the registry you will find similar keys, where you can adjust the TXPower of the client and the Roaming Agressiveness.
Driver Version 3.2.1.0 dated 4/25/2011 from Ralink website.
The DeviceManager\wifi adapter\Advanced Properties = Multimedia Gaming Environment is Enabled.
HKEY_LocalMachine\System\ControlSet001\Control\Class\{xxxxxxxxxxxxx}009\FastRoamingSensitivity = 4
HKEY_Local_Machine\System\ControlSet001\Control\Class\{xxxxxxxxxxxxx}009\Default\FastRoamingSensitivity = 4
HKEY_Local_Machine\System\ControlSet001\Control\Class\{xxxxxxxxxxxxx}009\TXPower = 10
HKEY_Local_Machine\System\ControlSet001\Control\Class\{xxxxxxxxxxxxx}009\Default\TXPower = 10
HKEY_Local_Machine\System\CurrentControlSet\Control\Class\{xxxxxxxxxxxx}009\Profile\Station\MyProfileName\TXPower = 10
Forcing the TXPower down to 10% and increasing the Roaming to the Max of 4 resolves these issues in our environment.
Michael McNamara says
Thanks for the comment Dan.
It was a while ago now that I looked at this but I do recall there was some utility from RAlink that you could use to set a number of the options you described above.
Any thoughts as to why you needed to reduce the TX power to 10%…. that’s not very much given that the maximum by FCC specs in the US is 100mW.
In any event thanks for the information.
Cheers!
Dan Coats says
Max power is typically fine for devices sitting still, but if the device is roaming through a network with AP’s every ~40ft then the device needs to be on low power so that it knows to hop from AP to AP as you walk down the hallway. Cows and Handhelds specifically. Im at a Hospital with ~700 AP’s and all of the client devices get turned down to ~20mW so that they can roam efficently. RaLink is one of the few that does not provide this functionality in their UI. We just add the 2 registry keys in the class for the Driver and it in turn uses the settings.
Michael McNamara says
I only ask because you’ve confused me a bit… I can understand that logic if you are turning down the TX power on your APs. However, if you are referring to the TX power on the clients I don’t understand what bearing that has on roaming. The TX power of the client has nothing to-do with roaming it’s the RX power of the signal from the AP that the client uses to determine if it should roam or not along with a host of other variables. Perhaps you’re just turning down the TX power because of channel overlap and mobile device density?
“The variable of most importance will always be received signal strength. As the received signal from the original AP grows weaker and a station hears a stronger signal from another known access point, the station will initiate the roaming process.”
Thanks!
Dan Coats says
Look at it this way, If my clients TX power is at 100mW I can hang on to an AP for much longer than If my clients TX power is set at 10-20mW. This is exactly what we don’t want. For smooth roaming of devices in an dense network of AP’s you don’t want your client to see the AP’s at the opposite end of the hallway. In our environment (for the most part) AP’s BG radios get set at 6mW and A radios at 25mW. Then the clients get turned down to 10-20mW
siva k says
hello
we could not find roaming client that sends reassoc frame.
does any of dlink, cisco, netgear adapters refered in this blog send reassoc ?
has anyone verified it?
please give feedback and link for driver and model, make of adapter for
win7, win xp
also how to configure roaming behaviour of client; we want client to roam when
signal becomes week not untill signal is totally lost
thanks
sivak