developerWorks: Linux Wireless Networking
Mar 04, 2004, 07:00 (0 Talkback[s])
(Other stories by Sreekrishnan Venkateswaran)
"Wireless technologies like WLAN (Wireless Local Area Network),
Bluetooth, GPRS (General Packet Radio Service), GSM (Global System
for Mobile communications), and IrDa (Infrared Data) serve
different niches. While WLAN supports higher speeds and longer
range than Bluetooth, it also has higher costs and higher power
consumption. GPRS is slower than Bluetooth and WLAN, but can be
used on the move. Despite their diversity, or rather because of it,
devices with multiple wireless capabilities can use them in tandem.
For example, a device can switch transparently from GPRS on the
road to a cheaper WLAN in an Internet cafe for network
connectivity, depending on location input from a GPS module. A cell
phone can communicate through Bluetooth to a heart rate monitor and
send an alert over GSM to a doctor if the patient's heart rate
crosses a certain threshold.
"These wireless technologies are widely available today in the
form of PCMCIA or Compact Flash (CF) cards, or as USB devices. Most
computer systems, including embedded devices, have PCMCIA, CF, or
USB interfaces, thus instantly enabling them to take advantage of
wireless technologies even if they do not have built-in support for
them. This article examines examples of such wireless devices and
explores the respective Linux implementations of the device
drivers, bus technologies, and protocols.
"You'll first see how WLAN devices work on Linux by tracing the
code flow for an example WLAN card. Then you'll see how several
Bluetooth devices interface with the Linux Bluetooth stack and
other kernel layers. Next, you'll learn how to get GPRS and GSM
devices to work with Linux. The article ends with the examination
of Linux IrDa support and a brief look at performance issues faced
by wireless networking devices..."