WiFi is an incredible technology that has transformed how and where people used computers, however besides advancements in speed, range and security, very little has changed how we use wireless networks. Since 2002, Microsoft Research has been exploring a fascinating idea to virtualize the WiFi adapter, turning a single piece of hardware and radio into virtually (pun) unlimited adapters. Years after the project was seemingly abandoned, it is now uncovered Virtual WiFi technology has been baked into the Windows 7 networking foundations.
In essence, how Virtual WiFi works is very similar to how virtualization works for operating systems which most people are familiar with – the transparent sharing of limited hardware resources to many operating systems. Virtual WiFi, abbreviated to VWiFi, is a software layer that abstracts the wireless LAN card hardware into multiple virtual adapters. The software handles the connections of each adapter to ensure every adapter has an opportunity to connect to their respective networks limited by time. The result is an operating system none-the-wiser and acts as if you have multiple WLAN hardware adapters working independently.
If you like to dabble in a little hardware jargon, here’s an obligatory architecture diagram which explains how Virtual WiFi works in Windows 7 in much more detail.
If you got lost somewhere between the dotted lines, read on.
You might be wondering why anyone would ever need multiple WLAN adapters on the same PC, well to be honest, you don’t need but its sometimes good to have. In any case where you’re connected to an existing wireless access point and want to connect to another network whether that be a separate access point or even set up an ad-hoc connection, Virtual WiFi will allow you to do just that. But perhaps the scenario that is more appealing is the idea of a mesh network. In a mesh network, every client becomes a repeater, growing the network organically as more clients connect. Virtual WiFi enables this, since every client can become an access point too.
Now you might be asking, “I’ve looked at every nook and cranny of Windows 7 RC, how come I haven’t seen this feature?”. Surprisingly, the feature is in Windows 7 today and has been for quite some time apparently, but hasn’t been exposed due to a lack of driver support. WLAN hardware vendors are required to recompile their drivers with a couple new additions. The good news is that Virtual WiFi functionality is going to be a requirement for WLAN drivers under the Windows 7 certification logo so expect to see it soon.
Assuming it all goes to plan, the feature will be automatically exposed.
“On Windows 7 and later, the operating system installs a virtual device if a Hosted Network capable wireless adapter is present on the machine. This virtual device normally shows up in the “Network Connections Folder” as ‘Wireless Network Connection 2’ with a Device Name of ‘Microsoft Virtual WiFi Miniport adapter’ if the computer has a single wireless network adapter. This virtual device is used exclusively for performing software access point (SoftAP) connections [...]. The lifetime of this virtual device is tied to the physical wireless adapter. If the physical wireless adapter is disabled, this virtual device will be removed as well.”
Unfortunately as it seems, the implementation of Virtual WiFi in Windows 7 is not as liberal as the research prototype. In Windows 7, you are limited to exactly one virtual adapter. However by looking at the impact of multiple virtual adapters on latency and performance from their original research report, this is probably for good reasons.
More technical information aimed at hardware vendors and developers is available at the WinHEC 2008 session, “Wireless LAN Enhancements In Windows 7″, PowerPoint downloadable here. You can also learn more about their original prototype and research paper here.
Obviously this feature isn’t as glamorous as the fancy new wallpapers or as practical as Aero Snap in Windows 7, but I think it represents one of the many silent revolutions in Windows that probably won’t be recognized and taken for granted for releases to come. I’d be interesting to see if Virtual WiFi catches on, and how new networking scenarios can be enabled by developers and hardware vendors.