The who's who of Wireless LANs under Linux.
Except in a few case, you need a driver to interface you wireless network device to the Linux kernel. The availability of a driver is as usual your main concern, especially with wireless devices because few people are using such hardware, so few of them are willing to develop, debug and maintain such a piece of code.
For each driver, I will list its status (stable, buggy...), the
maintainer, the version, how to get it and the
main features. If you hear about something new or if you have
developed yourself a driver, please notify me.
1 Lucent Wavelan & DEC RoamAbout DS
| Driver status : | stable |
| Version : | v19 (20/4/99), v20 (29/7/99) or v23 (10/10/00) |
| Where : | ISA : Linux kernel (2.0.37, 2.2.11 & 2.3.15)
Pcmcia : Pcmcia package (3.0.11) |
| Creators : | Bruce Janson (ISA) and Anthony D. Joseph (Pcmcia) |
| Maintainer : | Jean Tourrilhes <jt@hpl.hp.com> |
| Web page : | http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Wavelan.html |
| Documentation : | man pages, headers |
| Configuration : | Wireless Extensions |
| Statistics : | Wireless Extensions |
| Multi-devices : | isa : up to 4
pcmcia : yes |
| Interoperability : | proprietary protocol, interoperate with Windows |
| Other features : | module, hardware multicast, Wireless Extensions, SMP |
| Non implemented : | roaming |
| Bugs : | see release notes on web page :-( |
| License : | GPL & OpenSource |
| Vendor web pages : | http://www.wavelan.com/
http://www.networks.digital.com/dr/wireless/ http://www.cabletron.com/dnpg/dr/npg/lanfm-mn.html |
The Wavelan appears to the PC as a standard network card and interfaces naturally with the networking stack. The configuration includes setting the frequency (10 different channels), Network ID (16 bits). Hardware encryption is optional (DES or AES - 64 bits key).
This product is built around a standard Ethernet controller (that may be found in some 3Com and Intel Ethernet cards), and the Ethernet physical layer is replaced by a radio modem. The ISA and Pcmcia cards share the same basic architecture, have the same modem, but have different Ethernet Controllers and bus interfaces (the pcmcia has only one transmit buffer). Because the Wavelan doesn't use a specific radio MAC (no MAC level retransmissions for example), it uses very efficiently the bandwidth, but is more sensitive to packet loss and collisions.
There is two versions of the modem, a 900 MHz and a 2.4 GHz version. Revision 2 of the 2.4 GHz modem allows the user to set the frequency (from a set of predefined channels - the availability of each channel depend on the regulation). The Wavelan is Direct Sequence Spread Spectrum (11 chips encoding), using a 2 Mb/s signalling rate (using effectively 22 MHz of bandwidth) and diversity antennas.
The Pcmcia driver has caught up with the ISA one to offer the same level of functionality and reliability. The only difference are the pcmcia specific functions (auto loading, auto unloading, crude power saving).
The latest release of both drivers (v23) adds SMP support.
The drivers use the card EEprom to save the configuration changes for
subsequent reboots. Wireless Extensions let you configure the NWID,
the frequency, the sensitivity and the encryption key
(optional). Statistics include the signal quality, signal level, noise
level and the count of packet received with an invalid NWID (see
Wavelan documentation). Private Wireless Extensions include the
setting of the quality threshold.
2 Lucent Wavelan IEEE, Orinoco, Enterasys RoamAbout 802 and Elsa AirLancer 11
| Driver status : | stable |
| Version : | v1.0.5 |
| Where : | Pcmcia package (3.1.22) |
| Maintainers : | Andreas Neuhaus <andy@fasta.fh-dortmund.de>
Harald Roelle <harald@roelle.com> |
| Web pages : |
http://www.fasta.fh-dortmund.de/users/andy/wvlan/
http://www.roelle.com/wvlanPPC/index.html http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Wavelan-IEEE.html |
| Documentation : | man page, headers |
| Configuration : | Wireless Extensions & module parameters |
| Statistics : | Wireless Extensions |
| Multi-devices : | Yes |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | MTU selection, multicast, promiscuous mode, power management, WEP hardware encryption, SMP |
| Non implemented : | Some optimisations... |
| Bugs : | Endianess (need additional patch for PPC) |
| License : | GPL |
| Vendor web page : | http://www.wavelan.com/
http://www.enterasys.com/wireless/ http://www.elsa.com/EUROPE/PRODUCTS/AIRLANCER/HOME_11.HTM |
To confuse the issue, Lucent has recently renamed the Wavelan IEEE as Orinoco (a stupid name) and Enterasys is also selling the Wavelan IEEE as RoamAbout 802 (a company formerly known as Cabletron, which was the former DEC networking division). Elsa is selling it in Europe as AirLancer 11 (on the other hand, the 2 Mb/s version is quite different). The Apple Airport is also derived from the Wavelan IEEE (see section 4).
The Wavelan IEEE appears to the PC as a standard network card and interfaces naturally with the networking stack. The configuration includes only setting the network name (ESSID), the rest is automatic (finding the equivalent BSSID and channel). As usual for Lucent, the documentation and website are rich.
As with all IEEE 802.11 products, the Wavelan offer a fully featured MAC protocol, including MAC level acknowledgement (good news for all of us having dealt with the old Wavelan card), optional RTS/CTS, fragmentation, automatic rate selection, roaming. This seems exhaustive, but is mandatory for IEEE 802.11 compliance. Different version of the card include different level of security (bronze is basic, silver is with WEP (RC4-40 bits) and gold is with proprietary 128 bit encryption.
The 2.4 GHz modem is an enhanced version of the previous generation, Direct Sequence Spread Spectrum (11 chips encoding), using both 1 and 2 Mb/s signalling rate (using effectively 22 MHz of bandwidth), diversity antennas and with 13 different frequencies (depending on the regulations).
Initially, the Wavelan was only offering 1 and 2 Mb/s bit rates (basic IEEE 802.11 DS standard). For a while, Lucent was also selling a "turbo" version of the card, which was adding 5 and 10 Mb/s bit-rates for shorter range using Lucent proprietary modulations (so, not compatible with 802.11-b).
Nowadays, Lucent offers only the second generation of the Wavelan IEEE, which is much cheaper and fully compliant with the new 802.11-b standard, supporting 1, 2, 5.5 and 11 Mb/s bit-rate (compatible with other 11 Mb/s products).
All Wavelan IEEE cards do not offer the exact same set of features, because Lucent keep changing the firmware. From firmware 1.00 to 4.52, Lucent was mostly adding features (encryption, power saving) and keeping it backward compatible, but firmware 6.04 and later created a major incompatibility. Firmware 6.06 and later removed Lucent proprietary Ad-Hoc demo mode and implement fully 802.11 compliant IBSS Ad-Hoc mode. Firmware 6.04 dropped Fragmentation Threshold setting in favor of microwave oven robustness (an automatic fragmentation scheme). Those new firmwares also seem to have broken promiscuous mode.
Andreas has done a very good job into providing features like Wireless Extensions (I must admit that I did help him quite a bit ;-) and many configuration parameters (station name, channel, mtu size). The new version adds Power management and encryption setting, change of the operating mode via Wireless Extensions, promiscuous and multicast support...
Andreas has done a lot of debugging of the driver and it seems now much more stable. Lastly, the ISA to Pcmcia and PCI to Pcmcia bridges may be a source troubles under Linux. The latest version of the driver fixes SMP support, multi-cards configuration, improve wireless.opts support, add IBSS Ad-Hoc mode support and support properly and sanely the various firmware releases.
Harald Roelle has developped a patch for this driver in order to fully support the PPC architecture. This patch mostly contain some bit order fixes. This patch should help other architecture with endianess issues.
Note that Lucent has also released a binary library driver (see
below) which is probably more solid and
performant than the driver of Andreas (but lack proper support
for Wireless Extensions).
3 Lucent Wavelan & Enterasys Roamabout (binary library driver)
| Driver status : | stable |
| Version : | v6.02 |
| Where : |
ftp://ftp.wavelan.com/pub/SOFTWARE/IEEE/PC_CARD/LINUX/
http://www.enterasys.com/software/RoamAbout/ ftp://sourceforge.org/pcmcia/contrib/ |
| Contact : | Lucent support <usasupport@wavelan.com> |
| Maintainers : | Richard van Leeuwen <rleeuwen@lucent.com>
Dean W. Gehnert <deang@tpi.com> |
| Documentation : | Extensive readme |
| Configuration : | Module parameters, Wireless Extensions |
| Statistics : | Wireless Extensions |
| Multi-devices : | yes, but the ISA to Pcmcia bridge must be reconfigured |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | WEP encryption, power management and microwave oven robustness |
| Non implemented : | Do not support all firmware releases |
| Bugs : | ? |
| License : | Binary only for the core from Lucent + OpenSource Linux wrapper |
| Vendor web page : | http://www.wavelan.com/
http://www.enterasys.com/wireless/ |
Dean has written the code interfacing between Linux and the library, and has put together a nice package easy to install and with documentation. As expected, the binary driver is more stable and complete than the full source driver mentioned above (for example, encryption and power management are not yet available in the full source driver), and offers all the features of Lucent Window drivers, plus a nice integration with Linux and the Wireless Extensions. This driver supports both the basic version of the card and the "turbo".
Now, the driver is supported by Lucent, and they keep adding in it the same features they add to the Windows drivers (such as microwave oven robustness). Note that Enterasys/Cabletron is also distributing a slightly modified version of this driver.
But, as with any binary driver, you should check if your architecture and your version of the kernel and Pcmcia package are supported.
4 Apple Airport
| Driver status : | stable |
| Version : | 0.9.3 |
| Where : | http://ppclinux.apple.com/~benh/ |
| Maintainer : | Benjamin Herrenschmidt <bh40@calva.net> |
| Documentation : | man page, headers |
| Configuration : | Wireless Extensions & module parameters |
| Statistics : | Wireless Extensions |
| Multi-devices : | No. |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Mac-OS ;-) |
| Other features : | MTU selection, multicast, promiscuous mode, power management, WEP hardware encryption |
| Non implemented : | Some optimisations... |
| Bugs : | SMP not fully tested |
| License : | GPL |
| Vendor web page : | http://www.apple.com/airport/ |
The AirPort card for the most Apple hardware is the OEM version of the Wavelan IEEE, but it uses a specific slot in those computers and the antennas are pre-integrated in the host. Most recent Apple machines offer this interface (iBook, PowerBook 2000 (aka Pismo), AGP G4s, recent iMacs (DV/SE)...). Note that this interface is not Pcmcia compatible even is the connector is the same, so this card can't be used in the normal PC-Card slot of other laptops. This is why this card work only in specific Apple hardware slot and only with a specific driver.
The Access Point (the famous flying saucer) is similar in functionality to the Lucent RG-1000 Residential Gateway, and is fully interoprable with other 802.11-b hardware.
Apart from that, the driver is basically the same, with the same
features and same bug ;-)
5 Netwave AirSurfer & Xircom Netwave
| Driver status : | fairly stable |
| Version : | v 0.4.1 |
| Where : | Pcmcia package (2.9.12) |
| Maintainers : | John Markus Bjørndalen <johnm@staff.cs.uit.no>
Dag Brattli <dagb@cs.uit.no> |
| Web pages : | http://www.cs.uit.no/~johnm/
http://www.cs.uit.no/~dagb/ |
| Documentation : | man page |
| Configuration : | Module parameters & Wireless Extensions |
| Statistics : | Wireless Extensions |
| Multi-devices : | yes (except for module parameters setting) |
| Interoperability : | proprietary protocol, interoperate with Windows |
| Other features : | - |
| Non implemented : | hardware multicast, multiple transmit buffers |
| Bugs : | - |
| License : | GPL & OpenSource |
| Vendor web page : | http://www.netwave-wireless.com/ |
The Netwave use a specific MAC protocol designed for radio (a pre 802.11 protocol, with fancy stuff such as RTS/CTS, virtual carrier sense and fragmentation). It uses a 9 bits domain (Network ID), the highest bit of it used for the type of network (set for access point operation and unset for ad-hoc operation). The Netwave uses also a 16 bits scrambling key (encryption). The Modem offers a 1 Mb/s signalling rate and frequency hopping (100 ms hop period). On the bad side, the Netwave has no antenna diversity and a high overhead.
Note that the Netwave AirSurfer plus is a very different beast (see below).
It seems that the Netwave is quite picky with some pcmcia sockets and
you might need to choose carefully the interrupt (try different ones)
and set the memory speed correctly. In some cases, under high load
(big ftp), the transmission sometime get stuck (I guess that some
interrupt are lost) and the driver has to reset the card (you won't
notice it, it just decreases the performance).
6 Netwave AirSurfer plus
| Driver status : | fairly stable |
| Version : | 1.0.2 |
| Where : |
http://ipoint.vlsi.uiuc.edu/wireless/asplus.html
ftp://sourceforge.org/pcmcia/contrib/ |
| Maintainer : | Jay Moorman <jrmoorma@uiuc.edu> |
| Documentation : | Readme, man page |
| Configuration : | Module parameters & Wireless Extensions |
| Statistics : | Wireless Extensions |
| Multi-devices : | yes (except for module parameters setting) |
| Interoperability : | proprietary protocol (same as Netwave), interoperate with Windows |
| Other features : | - |
| Non implemented : | 802.11 mode, hardware multicast, multiple transmit buffers |
| Bugs : | - |
| License : | OpenSource |
| Vendor web page : | http://www.netwave-wireless.com/ |
The AirSurfer plus has two modes of operation, compatible with the old generation of Netwave, or 802.11 compliant. The hardware is based on an AMD core, and a 1 Mb/s frequency hopping modem.
The current driver support the AirSurfer plus only in Netwave
compatible mode, and doesn't support the AirSurfer plus with the
802.11 firmware.
7 BayStack 660, ZoomAir, YDI and other Harris Prism based cards...
| Driver status : | stable |
| Version : | 0.2.7, 0.2.7a and 0.3.4 (beta version) |
| Where : |
ftp://ftp.absoval.com/linux-wlan/
http://www.astro.umd.edu/~teuben/linux/wireless.html http://www.cs.berkeley.edu/~jhill/linuxwlan/ |
| Maintainers : | Mark S. Mathews <mark@absoval.com>
Peter Teuben <teuben@astro.umd.edu> Jason Hill <jhill@cs.berkeley.edu> |
| Web page : | http://www.linux-wlan.com/linux-wlan/ |
| Documentation : | Readme, man page |
| FAQ : | http://linux.grmbl.be/wlan/ |
| Configuration : | Module parameters & configuration tool |
| Statistics : | Statistic tool |
| Multi-devices : | yes |
| Interoperability : | 802.11-DS, interoperate with Windows |
| Other features : | Quite exhaustive 802.11 support |
| Non implemented : | WEP |
| Bugs : | - |
| License : | MPL |
| Vendor web pages : |
http://www.netwave-wireless.com/
http://www.zoomtel.com/zoomair/ http://www.ydi.com http://www.intalk.com/ http://www.dbtel.com.tw/english.html http://www.gemtek.com.tw/ http://www.sem.samsung.co.kr/ http://www.intersil.com/prism/ http://www.amd.com/products/npd/npd.html |
The AMD core integrates a generic microcontroller and the hardware baseband (ASIC) to do the time critical functions of 802.11. AMD has developed the 802.11 firmware with all the usual 802.11 features (MAC level ACK, RTS/CTS, Fragmentation...). The Prism chipset is a 2.4 GHz Direct Sequence modem offering 1 and 2 Mb/s. The Prism chipset can also be extended to supports the new 802.11 HR standard, with 5.5 and 11 Mb/s bit-rate (either MBOK or CCK modulation).
The Pcmcia cards are mostly similar from vendor to vendor. Some vendors offer ISA cards, and the Access Points are where vendors are making their difference (ZoomTelephonics uses a software AP on a PC, others have hardware AP). Each vendor also has to provide the high level 802.11 in their drivers (authentication, WEP, Roaming...), so those might be different (not that it does matter much under Linux).
The BayStack 650 and Netwave AirSurfer plus use the same AMD controller, but a different physical layer (Frequency Hopping), so are not compatible with this driver.
Harris has just become Intersil and released the Prism II chipset, successor of the PrismI chipset, this time including the MAC controller (so they won't use any more the AMD part in their reference design). I'll detail it in the next section (see section 8).
There is currently two branches maintained by Mark, 0.2.X which is stable and 0.3.X which is experimental.
Peter (with help from YDI) has created a alternative version of Mark's package to add ISA support, fix a few bugs and with explicit support of cards from YDI. In the long run, those changes should find their way in Mark's package...
Jason has created a version of the 0.3.1 beta driver with support for the BayStack 660, by porting bits from 0.2.6 (this allow support for both the BayStack 660 and infrastructure).
I believe that this driver doesn't support the BayStack 650 and
Netwave AirSurfer plus cards (which don't use the Prism chipset but
Frequency Hopping), but the changes for that might not be that hard to
implement.
8 Intersil PrismII based cards (Compaq, Samsung and others)
| Driver status : | beta |
| Version : | 0.1.7 |
| Where : | ftp://ftp.absoval.com/pub/linux-wlan-ng |
| Maintainer : | Mark S. Mathews <mark@absoval.com> |
| Web page : | http://www.linux-wlan.com/linux-wlan/ |
| Documentation : | Readme |
| Configuration : | Module parameters & configuration tool |
| Statistics : | Statistic tool |
| Multi-devices : | yes |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | Quite exhaustive 802.11 support, PPC support |
| Non implemented : | ? |
| Bugs : | ? |
| License : | MPL |
| Vendor web pages : |
http://www.compaq.com/products/wlan/index.html
http://www.sem.samsung.co.kr/ http://www.zoomtel.com/zoomair/za11index.html http://www.nokia.com/corporate/wlan/card_c110.html http://www.gemtek.com.tw/Product.htm http://www.intersil.com/prism/ |
The first manufacturers to offer PrismII cards were Samsung and Compaq (rumored to be selling a rebadged Samsung card), with a Pcmcia card, a PCI card and an Access Point. Aironet also uses the PrismII chipset, but with their own MAC controller (see section 13). Other Prism vendors like ZoomAir, Nokia and GemTek are slowly releasing their own version of the PrismII card.
Like the initial PrismI design, the PrismII is fully compatible with 802.11 and include a 2.4 GHz Direct Sequence modem, with all the usual features (Roaming, WEP...).
The main differences between the PrismI and PrismII chipset are a higher integration, a higher performance modem and the replacement of the AMD controller with Intersil own design. The higher integration (5 chips instead of 8) allows to reduce the price and the size of the product, and to simplify the integration. The new physical layer (modem) has a better performance (but a lower transmit power), increasing range, speed and battery life, and is fully compliant with the 802.11-b standard (5.5 and 11 Mb/s). Finally, the new MAC controller handle most of the 802.11 functionality (instead of leaving it to the driver), which simplify driver development and help performance on slow devices (palmtop, embedded design).
As usual with Mark, the driver is really complete and well written. It is currently only in beta stage, and Mark told me that he needs to add more documentation and debug some more features. This driver is compatible with Linux bridging software and also include a generic 802.11 interface, exposing the full 802.11 MIB to user space. The driver also come with a configuration tools, an utility to dump 802.11 frames and a daemon responding to 802.11 events.
Mark told me that he was planning to add Wireless Extension to
this already quite complete driver, so stay tuned !
9 Samsung MagicLAN (binary library driver)
| Driver status : | beta |
| Version : | 1.10 |
| Where : | http://www.sem.samsung.com/eng/product/rf/wlan/download_linux.htm |
| Maintainer : | Jae-Jun Lee <brucejr@samsung.co.kr> |
| Documentation : | Readme |
| Configuration : | Module parameters & Wireless Extensions |
| Statistics : | Wireless Extensions |
| Multi-devices : | yes |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | Proprietary Samsung API |
| Non implemented : | ? |
| Bugs : | ? |
| License : | ? |
| Vendor web pages : | http://www.sem.samsung.co.kr/ |
The main difference with the PrismII driver of Mark (see section 8) is that the Samsung driver is
based on a binary library (so, only available on x86 platforms) and
offer exhaustive support for Wireless Extensions.
10 Proxim RangeLan2, Proxim Symphony, DEC RoamAbout FH,
AMP Wireless, Intel AnyPoint and Compaq Symphony
| Driver status : | stable |
| Version : | 1.5.3 & 1.7.0 |
| Where : | http://www.komacke.com/distribution.html |
| Creator : | Paul Chinn <loomer@1000klub.com> |
| Maintainer : | Dave Koberstein <davek@komacke.com> |
| Documentation : | Readme file |
| Configuration : | specific tool, partial implementation of Wireless Extensions |
| Statistics : | None |
| Multi-devices : | no ("insmod -o" multiple modules) |
| Interoperability : | proprietary protocol or HomeRF, interoperate with Windows |
| Other features : | Uses Proxim source code |
| Non implemented : | - |
| Bugs : | - |
| License : | Binary only for the core from Proxim + OpenSource Linux wrapper |
| Vendor web pages : | http://www.proxim.com
http://www.wlif.com http://www.homerf.org/ http://www.networks.digital.com/dr/wireless/ http://www.intel.com/anypoint/ |
The RangeLan2 implements a specific MAC protocol designed for radio (OpenAir, another pre 802.11) implemented on a generic microcontroller. It uses a 4 bits domain, 4 bits channel and 4 bits subchannel, and also a station type (primary master, secondary, slave - this is used for network synchronisation). There is no encryption, instead it uses a technique called Security ID (which is a simple password used to derive the network ID). The OpenAir protocol is heavily based on RTS/CTS, offer a good robustness but some overhead. It offers as well a modulable contention window size, contention free access for the master, packet fragmentation and power saving.
The Modem uses frequency hopping, and 2 levels of modulations (2FSK/4FSK) : it runs a 1.6 Mb/s signalling rate for good channel condition (short to medium distances) and falls back to 0.8 Mb/s otherwise.
The Symphony line of product (home networking) offered by Proxim use the MAC protocol of the RangeLan2 (OpenAir) with a lower cost radio, and the main difference is the software bundle and the price. On the other hand, the Proxim RangeLan802 line is very different from OpenAir products, using the 802.11-FH protocol and a different interface, so the Linux driver won't work with it.
Recently, Proxim has released its first Symphony products compatible with the HomeRF SWAP standard. These are also sold as Intel AnyPoint and Compaq Symphony-HRF. The ISA, PCI and Pcmcia versions are still offered, and a USB version has been added. Those products use the same physical layer as the original Symphony, but the MAC protocol can either operate in OpenAir mode or SWAP mode. The main advantage of SWAP is the support for cordless telephony.
The current driver doesn't support the RangeLan802 line, but you may contact Dave if you would like to see a driver for RangeLan802.
Starting with version 1.7.0, the driver also support the SWAP protocol
and SWAP compliant devices from Proxim, Intel and Compaq (in both
OpenAir and SWAP mode). Both the driver and the configuration tools
have been extended for this support. Also, some primitive support for
USB hardware has been added.
11 Symbol Spectrum24 (FH)
| Driver status : | Beta (Pcmcia only) |
| Version : | Beta 3 |
| Where : |
http://sourceforge.net/projects/spectrum24
ftp://pcmcia-cs.sourceforge.net/pub/pcmcia-cs/contrib/ |
| Maintainer : | Lee John Keyser-Allen <lkeyser@digitalsquare.com> |
| Documentation : | Readme file |
| Configuration : | module parameters, partial support of Wireless Extensions |
| Statistics : | None |
| Multi-devices : | - |
| Interoperability : | 802.11-FH, interoperate with Windows |
| Other features : | Support of micro-AP, multicast, statistics... |
| Non implemented : | - |
| Bugs : | - |
| License : | GPL |
| Vendor web page : | http://www.symbol.com/products/wireless/wireless.html |
The Spectrum24 products were designed from the start to be compliant with the 802.11 standard, way before the standard was eventually adopted. The first generation (1 Mb/s only) was compatible and interoperable with other 802.11 products (but not compliant), and the second generation of Spectrum24 (1 and 2 Mb/s) is officially 802.11 compliant.
Symbol is also very active in developing Voice over IP solutions for their wireless LANs, and that's why they are also selling some Spectrum24 phones. They are using the H.323 codec, compression and call setup (raw 64 kb/s, compressed 10 times) and a 30 ms packet rate (but I fail to see what they have done to overcome overhead and latency issues at the MAC level).
The MAC has all the usual features of the 802.11 standard, like MAC level retransmission, RTS/CTS, fragmentation, auto bit-rate selection, power saving and roaming. A nice feature of the MAC is the support of the micro-AP functionality, which allows to turn a PC into an Access Point (I would like more vendors to start doing that). However, their products don't seem to support ad-hoc mode.
The physical layer is Frequency Hopping supporting 1 and 2 Mb/s, with 100 mW or 500 mW output power and 100 ms dwell size.
The driver is designed for the Pcmcia card (LA2400 and micro-AP version), and the new 2 Mb/s version of the card. It is possible to use older cards (1 Mb/s) by updating the firmware for 802.11 compliance, and to use ISA card by configuring properly the Pcmcia package (those cards use a regular ISA to Pcmcia bridge).
Despite being beta, the driver is stable, well written and supports
most features of the card (like micro-AP, shared memory access...).
12 Symbol Spectrum24 High Rate, 3Com AirConnect and Intel PRO/Wireless
| Driver status : | Beta (Pcmcia only) |
| Version : | 1.4 |
| Where : |
http://sourceforge.net/projects/spectrum24
ftp://ftp.symbol.com/pub/SOFTWARE/IEEE/PC_CARD/LINUX/ |
| Contact : | Brad LeFore <blefore@sj.symbol.com> |
| Maintainer : | Lee John Keyser-Allen <lkeyser@digitalsquare.com> |
| Documentation : | Readme file |
| Configuration : | module parameters |
| Statistics : | None |
| Multi-devices : | - |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | Multicast, power management and WEP encryption |
| Non implemented : | - |
| Bugs : | - |
| License : | GPL or BSD |
| Vendor web page : |
http://www.symbol.com/products/wireless/wireless.html
http://www.intel.com/network/products/wireless.htm http://www.3Com.com/mobile/wireless/solution.html |
The card is mostly sold in the Pcmcia form factor, along with the Access Point. There is a PCI version that looks like a Pcmcia card in a regular PCI to Pcmcia slot. But, unfortunately for us, Symbol doesn't sell yet any of their famous "all-in-one" products with 802.11-b.
The Symbol products is composed of the Intersil PrismII chipset (see section 8) with Symbol own MAC controller (which is originally derived from the same core as the MAC from Lucent, Aironet and Intersil). From Symbol, we can expect a design giving good quality and performance.
The MAC has all the usual features of the 802.11 standard, like MAC level retransmission, RTS/CTS, fragmentation, auto bit-rate selection, power saving, WEP encryption and roaming, which extensive configurability. The physical layer has the classic PrismII feature, supporting 1, 2, 5.5 and 11 Mb/s.
The driver is well writen, has an extensive collection of module
parameters and has been tested successfully with Symbol, 3Com and
Intel cards. Lee plans to add Wireless Extensions and fix the
few remaining bugs...
13 Aironet ARLAN
| Driver status : | stable (ISA only) |
| Version : | 2.0 & 2.1b |
| Where : | Linux kernel (2.3.10 & 2.2.7-acX), web-page for 2.0.X version |
| Maintainers : | Elmer Joandi <Elmer.Joandi@ut.ee>
Cullen Jennings <c.jennings@ieee.org> |
| Web pages : |
http://www.ylenurme.ee/~elmer/655/
http://www.cs.ubc.ca/spider/jennings/ |
| Documentation : | README file + web page |
| Configuration : | /proc interface (2.1.X kernels and up only) |
| Statistics : | ? |
| Multi-devices : | ? |
| Interoperability : | proprietary protocol, interoperate with Windows |
| Other features : | - |
| Non implemented : | Multicast (driver is point to point ?) |
| Bugs : | - |
| License : | GPL |
| Vendor web page : | http://www.aironet.com/products/2200fam/2200fams.html |
The configuration include setting the frequency and Network ID (24 bits ?). The MAC protocol is implemented on a generic microcontroler. There is two versions of the modem, a 900 MHz and a 2.4 GHz version. Both use Direct Sequence Spread Spectrum. The 900 MHz modem allow signalling rate up to 860 kb/s (fall back to 215 kb/s) and 12 channels. The 2.4 GHz version allow signalling rate up to 2 Mb/s (fall back to 1 Mb/s) and 5 channels.
The driver support only the ISA version of the card (655 or IC
2200). The driver have been fully tested and optimised by Elmer
Joandi, includes a complete /proc interface and should be soon
included in the kernel.
14 Aironet ARLAN 4500, 4800 & Cisco 340 series
| Driver status : | stable |
| Version : | 1.2 - 2000/10/19 |
| Where : | Pcmcia package (3.1.21) |
| Maintainer : | Benjamin Reed <breed@almaden.ibm.com> |
| Web page : | http://www.cse.ucsc.edu/~breed/airo.html |
| Documentation : | README file |
| Configuration : | /proc interface |
| Statistics : | none |
| Multi-devices : | N/A |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | Support ad-hoc and managed mode, and WEP (encryption). |
| Non implemented : | - |
| Bugs : | Doesn't work with SMP, no promiscuous support. |
| License : | MPL |
| Vendor web page : | http://www.aironet.com/products/ |
The previous section was dealing with Aironet old pre-802.11 products (see section 12), this section deals with their more recent 802.11 compliant products. Their first 802.11 products were the 3500 family, Frequency Hopping (1 and 2 Mb/s), and 4500, Direct Sequence (1 and 2 Mb/s).
The Arlan 4500 family is 802.11 compliant wireless LANs in the 2.4 GHz ISM band, and is Direct Sequence. It includes an ISA, PCI, Pcmcia, serial, Ethernet and multi-Ethernet versions, plus the Access Point.
These cards are based on the Harris Prism chipset, like many other cards (see section 7), but Aironet are using their own MAC controller. The 4500 offer standard 1 and 2 Mb/s bit rate. The MAC includes all the standard 802.11 features, with Power Saving, WEP, Ad-Hoc mode and roaming.
The 3500 family (Frequency Hopping) eventually died, and I won't talk about it here.
The 4500 family was quickly followed by the 4800 family, still based on the Prism chipset, adding 5.5 and 11 Mb/s bit rate, either in MBOK (proprietary) or CCK, which is 802.11-b compliant.
With introduction of the PrismII chipset, Aironet did release the 4800B family. It is functionally equivalent to the 4800, except that the new PrismII chipset allows lower price, greater sensitivity but force a lower transmit power (30 mW). Aironet still use their own MAC controller in the 4800B (and not the new PrismII MAC - see section 8).
After the aquisition by Cisco, the Aironet 4800B was renamed Cisco 340 series (exact same hardware, new name). Dell also sell the same hardware under its own brand as Dell TrueMobile.
Like for Lucent, Cisco offer different cards with different level of encryption. The cards labelled 340 feature no encryption, the cards labelled 341 feature 40 bits encryption and the cards labelled 342 feature 128 bits encryption.
Ben also told me that the driver was able to recognise the
PC3500 cards, but more work would be needed there to get it fully
working.
15 Aironet ARLAN 802.11 (alternate driver)
| Driver status : | fairly stable |
| Version : | 0.1 |
| Where : | Linux kernel 2.3.31 |
| Maintainer : | Elmer Joandi <Elmer.Joandi@ut.ee> |
| Documentation : | Configure.help file |
| Configuration : | /proc interface |
| Statistics : | /proc interface |
| Multi-devices : | - |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | Support ad-hoc and managed mode, and WEP (encryption). |
| Non implemented : | Pcmcia interface |
| Bugs : | Buggy SMP support. |
| License : | GPL |
| Vendor web page : | http://www.aironet.com/products/ |
The code is very complete, especially the /proc interface. It comes as four modules, the generic core, the /proc interface, the PCI/ISA interface and the Pcmcia interface. The driver support both the 4500 and 4800 families. Unfortunately, the Pcmcia interface is incompatible with the Linux Pcmcia support and doesn't work well.
Elmer told me that compared to Ben driver, his driver was
probably more robust and featured but much less friendly. In essence,
the focus was slightly different, so each driver has it own strength.
16 Raytheon Raylink, WebGear Aviator2.4 & Aviator Pro and BUSlink wireless LAN
| Driver status : | stable |
| Version : | 1.67 (stable) and 1.70 (experimental) |
| Where : | Pcmcia package (3.1.9)
Linux kernel (2.3.18 & 2.3.24) |
| Maintainer : | Corey Thomas <corey@world.std.com> |
| Web page : | http://world.std.com/~corey/raylink.html |
| Documentation : | README file + headers |
| Configuration : | Modules parameters and Wireless Extension (read only) |
| Statistics : | Wireless Extensions |
| Multi-devices : | yes (except for module parameters setting) |
| Interoperability : | 802.11-FH (need updated firmware), interoperate with Windows (need to set the correct parameters) |
| Other features : | hardware multicast, MTU selection |
| Non implemented : | A few high level 802.11 functionalities. |
| Bugs : | SMP not fully tested, changing parameters through Wireless Extensions doesn't work right yet. |
| License : | GPL |
| Vendor web page : |
http://www.raylink.com/micro/raylink/
http://www.webgear.com/ http://www.buslink.com/Net1.htm |
You are more likely to buy the Raylink as a WebGear product, either as Aviator2.4 or Aviator2.4 pro (which have nothing in common with their old Aviator 900 MHz line). The Aviator2.4 and Aviator2.4 pro are in fact the same product as the Raylink, the Aviator2.4 driver comes pre-configured in ad-hoc mode and offer only the Pcmcia card, whereas the Aviator2.4 pro driver comes preconfigured in managed mode and offer both the Pcmcia card and the Access Point (translation seems also to be different in each driver). Of course, it is possible to change the mode in the driver and all these products are fully interoperable. WebGear also offers a ISA to Pcmcia bridge to install the Pcmcia card in desktops.
Lately, WebGear has stop selling those cards, but recently BUSlink has started selling them again (same card, different sticker).
The Raylink delivers all the features expected from a 802.11 compliant device, with ad-hoc networking, access point operation, authentication and roaming. The MAC protocol is as defined in 802.11 : CSMA/CA with MAC level retransmissions. Configuration includes mostly the ESSID (network name).
The modem is 2.4 GHz Frequency Hopping, with 1 Mb/s and 2 Mb/s bit rate, and includes antenna diversity.
The new version of the driver adds Alpha support, authentication, and compatibility with the Windows driver. SMP is slowly being tested. I've added to the driver quite complete support for Wireless Extension (changing parameters still doesn't work right - therefore wireless.opts do not work).
The driver has been developed for the Raytheon Raylink and has also
been successfully tested with the WebGear Aviator2.4 and the BUSlink.
17 No Wires Needed
| Driver status : | stable |
| Version : | 0.3.5 (kernel 2.2.14) and 0.5.5 (kernel 2.3.X) |
| Where : | http://www.xs4all.nl/~bvermeul/swallow/ |
| Maintainer : | Bas Vermeulen <bvermeul@blackstar.xs4all.nl> |
| Documentation : | README file |
| Configuration : | Module parameters, Wireless Extensions |
| Statistics : | no |
| Multi-devices : | unknown |
| Interoperability : | 802.11-DS and 802.11-b, interoperate with Windows |
| Other features : | Security (very complete) |
| Non implemented : | Multicast, roaming |
| Bugs : | - |
| License : | GPL |
| Vendor web page : | http://www.nwn.com/ |
The Swallow delivers all the features expected from a 802.11 compliant device, with ad-hoc networking, authentication and roaming. The main difference with other 802.11 devices is that NWN offers some strong link layer encryption and a key management and distribution system.
The modem is the famous Prism chipset used in many other cards (see section 7), which is 2.4 GHz Direct Sequence, with 1 Mb/s, 2 Mb/s, 5.5 Mb/s and 11 Mb/s bit rate. No Wires Needed use their own MAC design on an embedded ARM processor, and not the PrismII MAC controller. Now that Intersil has aquired No Wires Needed, Intersil can offer 2 different 802.11 MAC controller !
Bas has also implemented Wireless Extension support for the
security support, and support the full range of security features in
the driver. You can also configure the ESSID on the fly with Wireless
Extensions...
18 Z-Com LANEscape
| Driver status : | ? |
| Version : | 1.3 (stable) and 2.03 (unstable) |
| Where : | http://www.boerde.de/~matthias/airnet/zcom/ |
| Maintainer : | ? |
| Documentation : | README file |
| Configuration : | no |
| Statistics : | no |
| Multi-devices : | unknown |
| Interoperability : | 802.11-FH (need updated firmware), interoperate with Windows |
| Other features : | - |
| Non implemented : | - |
| Bugs : | Must have the correct firmware revision. |
| License : | Binary only, no license info |
| Vendor web page : | http://www.zcom.com.tw/ |
Z-Com claims that the WL2400 is firmware upgradable to 802.11, but I've been told that some old cards have an hardware bug preventing it. Anyway, the card has all the usual 802.11 features, and the modem is classsical Direct Sequence at 2.4 GHz, supporting 1 and 2 Mb/s.
Z-Com also offers the XI family, which support 5.5. and 11 Mb/s (probably using a Prism II chipset).
Matthias seems to now have access to the driver source code and
is investigating compatibility with 2.2.X and new firmware revisions.
19 Diamond Multimedia HomeFree
| Driver status : | stable |
| Version : | 06/02/2000 |
| Where : | http://david.poda.cz/Homefree |
| Maintainer : | Pavel Machek <pavel@suse.cz> |
| Documentation : | README file |
| Configuration : | Modules parameters |
| Statistics : | None |
| Multi-devices : | yes (except for module parameters setting) |
| Interoperability : | proprietary protocol, do not interoperate with Windows |
| Other features : | Act as a tty device (not a network driver) |
| Non implemented : | Windows compatibility |
| Bugs : | May not be legal in all locales... |
| License : | GPL |
| Vendor web page : |
http://www.diamondmm.com/
http://www.alation.com/ |
To reduce the cost, Alation has used the same solution as IrDA : to implement the MAC protocol in the driver instead of on the card. In fact, they are using a IrDA chip as the baseband, and instead of connecting it to an Ir transceiver, they use a classical 1 Mb/s Frequency Hopping modem at 2.4 GHz.
This solution save the cost of an embedded microcontroller on the card and allow to build a cheaper product (and to develop it faster). The downside is that building the MAC protocol in the driver tend to increase the protocol overhead (the MAC need more time to react to events - this reduce throughput and increase latency) and use more resources on the host (processor cycles and memory). In fact, this is an effect similar to win-modems and win-printers. Also, because there is a lot more code (which is more tightly integrated in the OS and performance critical), the driver is more difficult to port to other OSes (and that's why the driver below doesn't implement the HomeFree MAC protocol).
Personally, I'm not a fan of this design, but it seems to do the job cheaply.
This driver is both very different from a standard network driver (as the other driver I present on this page) and very different from the HomeFree Windows driver. This driver is a straight tty interface to the hardware (like a serial port), and doesn't implement any MAC protocol. Therefore, it can't be interfaced directly to the standard Linux networking stack, and is not compatible with the Windows driver.
Therefore, to use this driver, a MAC protocol of some sort is needed (to arbitrate access to the medium, multiplex connection and ensure reliability). Pavel recommend to use either some Ham protocols such as Scarab, or to use the Linux-IrDA stack. You can also develop you own application directly on top of this half duplex interface (most serial applications will assume full duplex).
The advantage of that is that those protocols are very lightweight, so usually perform much better (in term of raw throughput) than the original HomeFree protocol, and even better than some other WLAN products. However, those protocol (Scarab, IrDA) are not designed for the specifics of the 2.4 GHz band and don't include all the goodies found in 802.11. For example, IrDA allow only two nodes to be exchanging data at one time (only one IrLAP connection active) and deal poorly with multi nodes network. I also don't know how they deal with co-located networks and radio interferences.
However, the most critical missing feature is regulations
compliance. The 802.11 protocol include some feature to insure
compliance with all the various regulations in the 802.11 band (such
as Frequency Hopping - usage of Radio Frequency tend to be highly regulated). As the driver of
Pavel doesn't include all these features, this driver may
not be legal in your country (note : this doesn't apply to the
Windows driver, the Windows driver is legal because Diamond has
certified it with the FCC and ETSI), and usage of this driver may
bring you big troubles (same as setting up a illegal transmitter in
the FM band). So, if you care about legislation, I advise you to check
with Pavel about your specific case, otherwise use at your own
risks...
20 BreezeCom BreezeNet PRO Pcmcia
| Driver status : | stable |
| Version : | 1,0 |
| Where : |
http://www.breezecom.com/TechSupport/linux_drivers.htm
ftp://sourceforge.org/pcmcia/contrib/ |
| Creator : | Christian Olrog |
| Maintainer : | Alfred Cohen <alfred@breezecom.co.il> |
| Documentation : | Readme file |
| Configuration : | module parameters |
| Statistics : | /proc interface |
| Multi-devices : | no |
| Interoperability : | 802.11-FH (only pro.11), interoperate with Windows |
| Other features : | - |
| Non implemented : | security (WEP), power saving |
| Bugs : | - |
| License : | GPL |
| Vendor web page : | http://www.breezecom.com/ |
In term of protocol and modem, the Pcmcia cards are very similar to the other BreezeCom products (see section 20). The first two Pcmcia cards were limited in term of bit-rate (only 1 Mb/s), and have lower transmit power.
BreezeCom has also release a Linux driver for their latest pro.11 card. I've been informed of the existence of this driver since October 99, and many people have been using it since by getting it directly from BreezeCom, but BreezeCom did release this driver to the wide public only very recently (6 months later). Let's not complain, because the driver contains the full source and is now GPL, so it was worth the wait !
The driver was written by Christian Olrog, an employee of Ericsson, based on the original Windows driver source, and it seems that the maintainance has been taken over by Alfred Cohen of BreezeCom. The source code looks very nice and complete, with only a few features missing. One interesting feature is that the driver can show the signal strength for Access Points in the area. However, the initial configuration could be simpler...
The driver has been in use by many Linux users since its original development and there doesn't seem to have been much complains about it, which is good ;-)
The driver probably do not support the new DS.11 cards from BreezeCom
(which are 802.11-b compliant).
21 BreezeCom BreezeNet (not Pcmcia)
| Driver status : | not needed (for Pcmcia, see above) |
| Version : | - |
| Where : | - |
| Maintainer : | none |
| Documentation : | none |
| Configuration : | none |
| Statistics : | none |
| Multi-devices : | yes |
| Interoperability : | 802.11-FH (only pro.11), interoperate with Windows |
| Other features : | - |
| Non implemented : | configuration & statistics |
| Vendor web page : | http://www.breezecom.com/ |
There is three versions of the BreezeNet, the old one, somewhat Netwave compatible, then the first pro.11 version (flash upgradable to 802.11) and the new pro.11 version, which is 802.11 compliant, so with all the usual MAC features expected from 802.11 devices. In all cases the modem includes Frequency Hopping Spread Spectrum (20 ms hop period), a 3 Mb/s signalling rate (fall back to 2 and 1 Mb/s) and antenna diversity. Note that the 3 Mb/s bit rate is not 802.11 compliant.
BreezeCom now offers a DS.11 series of adapters which is 802.11-b compliant, with usual 802.11-b features (and up to 11 Mb/s) and still using the Ethernet interface.
RadioLan has a 10 Mb/s at 5 GHz product, rather very short range and no Linux drivers.
WebGear Aviator 900 MHz : connect to the parallel port and offer cable replacement solution. No functional Linux driver yet.
The IBM Wireless LAN Entry is a discontinued product that may be sometime found for a very very low price. Unfortunately, there is no working driver for those and information on the device is impossible to find.
Most drivers are GPL, which prevent their use with non-GPL kernels (so commercial operating systems can't reuse the code) and prevent to use portions of the source in non-GPL drivers, except with the explicit authorisation from the author.
Some other drivers come with a binary library, which restrict its potential use (the driver can't be ported to other architectures).
This may be tough, but those people have spend long nights and week ends convincing the hardware manufacturer to release information, writing and debugging the code, so please respect their copyrights and decisions.
They are many more products available than the ones that I've listed (which are the most common). If your favourite wireless LAN is not listed above, either there is no driver under Linux that I know of, or it is an OEM version of one of these (same hardware under a new brand).
To have a good picture of all the devices available and their characteristics, you should redirect your favourite browser to :
http://hydra.carleton.ca/info/wlan.html
These devices are a totally independent box (like other bridges, routers or gateways) and not a card to plug in your PC, so have no interactions with Linux.
More information on IrDA for Linux is available at :
http://www.cs.uit.no/linux-irda/
There is also some real Wireless LANs using diffuse infrared (no more peer to peer), but I don't have any information on these.
More information on BlueTooth for Linux is available at :
http://sourceforge.net/project/?group_id=1088
http://developer.axis.com/software/bluetooth/
Digital mobile phones (GSM, TDMA, CDMA) often allow data connections, but I guess that they use a modem (serial) interface. Wireless WANs such as the Metricom and ARDIS should use modem interface as well.