The proposed IEEE wireless LAN mesh specification is already getting some traction, albeit over 18 months from final ratification, thanks to early experimentation by the One Laptop Per Child Foundation, and a recently launched open source project.
This hands-on experience, fed back into the work of the IEEE 802.11s Task Group, has already led to several changes in the draft standard, with other changes being considered. When deployed, 802.11s will let different types and brands of wireless devices find each other, interconnect securely, and forward traffic on behalf of other mesh nodes, forging new paths automatically if nodes move or wireless links fail. WLAN deployments will be cheaper and easier, say advocates.
The 802.11s standard promises to cut wireless networking loose from its Ethernet cable moorings, creating what some call "opportunistic" networks. "If you think about this underlying technology to form opportunistic connections, it changes a lot of the assumptions of wireless LANs," says Robert Withrow, adviser to the CTO Common Engineering Group, part of the Office of the chief technology office for Nortel Networks, which supports both the OLPC and the open80211s project, and was an early and active member of the 802.11s task group, which launched in 2004.
"A piece of information might be coming from your [mesh] neighbour," Withrow says. "Well, who is that neighbour? Does he have a right to give you information?" He also says that wireless networks are rapidly moving from people-to-people connections, to people-to-machine and machine-to-machine connections, which are vastly more numerous, dubbed by Nortel as "hyperconnectivity." "It's difficult to do this in a hierarchical way," he says.
The 802.11 standard does specify what's called an ad hoc mode, which lets, for example, wireless laptops connect with each other. But this requires every participating node to be connected directly to every other node. An 802.11s mesh doesn't have this limitation. Proprietary mesh protocols abound, mostly for outdoor wireless networks, though Ruckus Wireless and Aerohive recently unveiled indoor mesh gear. But these protocols are for mesh infrastructures, not clients, and because they're proprietary, they don't interoperate.
OLPC embraces mesh
The OLPC began studying mesh benefits in 2006. Mesh would let the group's inexpensive Linux-based laptops create their own wireless network and communicate, without the need for access points or intermediate servers, as well as share whatever wide-area connection, such as a satellite link, might be available for a village school in Cambodia, Brazil, or Haiti.
Using the nascent 802.11s draft was a natural choice, says Michail Bletsas, chief connectivity officer for OLPC. The 802.11s mesh works at Layer 2, so no changes would have to be made to the TCP/IP network stack or other higher layer applications. One corollary benefit of that, he saw, was that the 802.11s code could be run on the 802.11 network adapter module, with a system-on-a-chip having its own memory and small CPU. That meant the OLPC laptop could suspend or shut down its main CPU to save power, but trickle some juice to keep the radio alive as a mesh node, forwarding traffic on behalf of other mesh participants.
"It only takes 800 milliwatts, compared to about 12 watts if it's implemented on the laptop," Bletsas says. With some additional optimisations, OLPC can cut the power needed to 400 milliwatts in some cases.
In late 2006, semiconductor maker Marvell hired Cozybit, an embedded wireless consultancy, to implement and tune a very early version of the 802.11s mesh protocol for OLPC. The code was running on OLPC laptops in early 2007.
The mesh 'gotchas' emerge
One issue that quickly emerged with operational code was that some of the most common consumer-grade access points misinterpreted some packets they picked up from 802.11s nodes, whether the access point connected to the mesh or not, says Osama Aboul Magd, an adviser on strategic standards, at Nortel who is actively involved in identifying this problem.
The 802.11s nodes used the 802.11 frame format called wireless distribution system (WDS). Receiving a WDS packet, the conventional access point started broadcasting to all clients, as it normally would, creating in effect an unintentional denial-of-service attack, Magd says.
The OLPC and Nortel proposed the Task Group consider tweaking the frame format so 802.11s nodes and existing access points could work in harmony.
The OLPC team also saw an opportunity to leverage Layer 2 information from the network for use by higher-layer applications. Opportunistic mesh networks by definition lack a central directory. Instead, a mesh node uses a discovery technique to identify its neighbours and chart data paths through the mesh. By adding a bit more information to these exchanges, and making the information accessible to higher-layer functions, mesh nodes can not only learn of their neighbours, but about their neighbours, Bletsas says, identifying one as file server, another as an Internet gateway. OLPC has started talking with the Task Group about doing this in some standard way.
Taking mesh to open source
In September 2007, the developers at Cozybit, with sponsorship from OLPC and Nortel, launched the open80211s consortium, dedicated to creating an open source implementation and reference design of the most recent 802.11s draft.
The timing was right. "There was a high-quality 802.11 stack donated to the Linux community," says Cozybit president and CEO Javier Cardona. "We saw it would be relatively easy to modify it, to support some of the features of the up-and-coming 11s standard."
So far, about half of the 802.11s draft is now in code, including dynamic path selection, frame forwarding, and peer link management. Two missing pieces include security and power conservation, Cardona says. Earlier this year, the source code was accepted for testing by one branch of the Linux Wireless group, which maintains the wireless subsystem for the Linux kernel, Cardona says. That's a key first step toward eventually including the open 802.11s code as part of the kernel.
At OLPC's behest, Cozybit is developing a driver and firmware, due out in early June for beta testing, to let the OLPC laptop radio now run the open source 802.11s code.