Roam Like No Other
Ahh, mobility. The bane of my (and many others') wireless humanity. Wherefore art thou be so fickle? Different devices roam differently. Different apps make the same device roam differently. And sometimes it seems that the same device and same app will roam differently depending on the situation. So what can we do about it? And, perhaps more importantly, how can a WiFi sniffer help?
Let's face it, folks: nomadic WiFi is easy (comparatively). At a university, you have students that want WiFi for their iPads in dorms, classrooms, labs, the basketball arena and at lunch. But rarely in between. A student using an iPad nomadically is just plain easier to support than a doctor who wants to pull up an X-Ray while she's moving or a retail manager that needs to see a picture from the Band of Outsiders fall collection while she walks over from the jewelry section.
Compounding the mobility problem is that the iPad may not be your only device. There's an old saying that goes, "if the Vocera works, then the WiFi works," and usually that is true. But what if it isn't.
The solution to supporting mobility is often infrastructure design, but to design a proper infrastructure, we need to know how a device behaves. That means WiFi sniffing. I always like to say that if Actions speak louder than Words, then a device's 802.11 frames are its actions while the WiFi client/connection utility is its words.
So if we're going to use a WiFi sniffer to get a gauge of how our devices behave, then what do we look for?
I like to start by tracking the association and reassociation behavior of a client device. Start a capture using WildPackets OmniPeek or (if you can afford to waste time so that you can save a little money) Wireshark on the channel of a nearby AP. Then go away from your AP so that the device roams on to the channel that you are capturing on. Ideally, it is best to do multiple captures. For example, here's what you might do if you had to support iPad's at a hospital:
- Turn the iPad's screen on and open the Mail app, then move to the nearby AP.
- Turn the iPad's screen off and move to the nearby AP, then turn the screen on.
- Open whatever medical apps are used and move to the nearby AP while using those apps.
Check out your captures and see if you notice any patterns. Does the iPad associate or reassociate when it moves with the screen off? Does the signal strength or SNR that the reassociation initiates at vary depending on whether a medical app is running? Does the iPad send probe request frames for a significant amount of time before or after reassociation? The answers to these questions could change your perspective on what the best infrastructure design is.
In the near future I plan to blog a bit more about mobility, including with screenshots of WiFi sniffing applications like WildPackets OmniPeek, Wireshark and Fluke AirMagnet WiFi Analyzer. Check back again or subscribe to Sniff WiFi by mousing over the little panel on the right hand side of the screen and clicking the Subscribe button.