Wireless networking on Linux is entering a new era. An era of bliss and ease; where users and network administrators have abundant time for relaxing lie-abouts on sunny warm hills because their wireless systems are humming along contentedly, instead of being vexing and unreliable. OK, so maybe it’s not going to be quite that Utopian, but things are definitely looking up, thanks to a lot of hard work by a lot of talented developers.
So what’s going to be different? A brand-new wireless LAN (WLAN) kernel stack, which is going to reduce the current WLAN herd-of-cats approach to a single unified subsystem that supports all wireless drivers. It all started with Devicescape, which released its previously proprietary Advanced Datapath Driver under the GPL in May 2006, and which is now in the Andrew Morton (mm) kernel tree. Sometime not too long from now it will be merged into the mainline kernel. Devicescape says this delivers “the first-ever native Wi-Fi support in the Linux kernel.” “What?” you cry, “Linux has had wireless support since forever!” Which is true, but as a hodge-podge of overlapping, disorganized drivers and utilities for different types of wireless devices. It hasn’t had a unified Wi-Fi-compliant subsystem until now.
A brief digression here, since this is a common point of confusion. Wi-Fi is a trademarked brand name with a specific meaning. It refers to drivers and devices that support the growing family of IEEE 802.11 wireless specifications. The current IEEE 802.11 wireless specifications that users and admins are most concerned with are:
- 802.11 legacy
- 802.11a
- 802.11b
- 802.11g
- 802.11i
- 802.11n
There are gobs more, all the way down the alphabet. So when you see 802.11n, for example, that is the name of the specification, even though it looks like a wildcard. 802.11x is the unofficial wildcard that means “all official 802.11 guff.” What happens when they get to the end of the alphabet? They’re already there – 802.11x is reserved and will not be used, to avoid confusion with the 802.1x standard for port-based access control. I know, I know, don’t blame me, I’m just the messenger. There are a number of wireless extensions outside any 802.11 specification. A common one is the “turbo-boost” or “speed booster” features you see advertised on a lot of wireless devices. Each vendor has its own way of implementing these. Some use channel-bonding, some use packet- or frame-bursting. There is also disarray over 802.11n, which defines MIMO (multiple input, multiple output antennas), which is also hyped as generating more speed. Mostly these are incompatible with each other and cause various problems, which is why you read “buy all of your gear from the same vendor.” A pox on that, I say! Freedom for the people! That’s why we have industry standards.
The good news is eventually it will all sort itself out, because after all this is all new bleeding-edge fun.