|W O R K S H O P|
Anatomy of IEEE 802.11b Wireless
August 7, 2000
By Joel Conover
Thanks to new and improved silicon technology, lower prices and a high degree of product interoperability, 802.11b high-rate wireless LANs are moving into the enterprise space.
Bit on a Wire
IEEE 802.11b data is encoded using DSSS (direct-sequence spread-spectrum) technology. DSSS works by taking a data stream of zeros and ones and modulating it with a second pattern, the chipping sequence. In 802.11, that sequence is known as the Barker code, which is an 11-bit sequence (10110111000) that has certain mathematical properties making it ideal for modulating radio waves. The basic data stream is exclusive OR'd with the Barker code to generate a series of data objects called chips. Each bit is "encoded" by the 11-bit Barker code, and each group of 11 chips encodes one bit of data.
The wireless radio generates a 2.4-GHz carrier wave (2.4 to 2.483 GHz) and modulates that wave using a variety of techniques. For 1-Mbps transmission, BPSK (Binary Phase Shift Keying) is used (one phase shift for each bit). To accomplish 2-Mbps transmission, QPSK (Quadrature Phase Shift Keying) is used. QPSK uses four rotations (0, 90, 180 and 270 degrees) to encode 2 bits of information in the same space as BPSK encodes 1. The trade-off is that you must increase power or decrease range to maintain signal quality. Because the FCC regulates output power of portable radios to 1 watt EIRP (equivalent isotropically radiated power), range is the only remaining factor that can change. Thus, on 802.11 devices, as you move away from the radio, the radio adapts and uses a less complex (and slower) encoding mechanism to send data.
In 1998, Lucent Technologies and Harris Semiconductor (now owned by Intersil Corp.) jointly proposed to the IEEE a standard called CCK (Complementary Code Keying). To achieve 11 Mbps, the vendors had to change the way they went about encoding the data. Rather than using the Barker code, they used a series of codes called Complementary Sequences. Because there are 64 unique code words that can be used to encode the signal, up to 6 bits can be represented by any one particular code word (instead of the 1 bit represented by a Barker symbol).
The CCK code word is then modulated with the QPSK technology used in 2-Mbps wireless DSSS radios. This allows for an additional 2 bits of information to be encoded in each symbol. Eight chips are sent for each 6 bits, but each symbol encodes 8 bits because of the QPSK modulation. The spectrum math for 1-Mbps transmission works out as 11 megachips per second times 2 MHz (the null-to-null bandwidth of a BPSK signal) equals 22 MHz of spectrum. Likewise, at 2 Mbps, you are modulating 2 bits per symbol with QPSK, 11 megachips per second, and thus have 22 MHz of spectrum. To send 11 Mbps, you'd send 11 million bits per second times 8 chips/8 bits, which equals 11 megachips per second times 2 MHz for QPSK-encoding, yielding 22 MHz of frequency spectrum.
It is much more difficult to discern which of the 64 code words is coming across the airwaves, because of the complex encoding. Furthermore, the radio receiver design is significantly more difficult. In fact, while a 1-Mbps or 2-Mbps radio has one correlator (the device responsible for lining up the various signals bouncing around and turning them into a bitstream), the 11-Mbps radio must have 64 such devices.
The wireless physical layer is split into two parts, called the PLCP (Physical Layer Convergence Protocol) and the PMD (Physical Medium Dependent) sublayer. The PMD takes care of the wireless encoding explained above. The PLCP presents a common interface for higher-level drivers to write to and provides carrier sense and CCA (Clear Channel Assessment), which is the signal that the MAC (Media Access Control) layer needs so it can determine whether the medium is currently in use (see "IEEE 802.11 PHY Frame Using DSSS" graphic).
The PLCP consists of a 144-bit preamble that is used for synchronization to determine radio gain and to establish CCA. The preamble comprises 128 bits of synchronization (scrambled 1 bits), followed by a 16-bit field consisting of the pattern 1111001110100000. This sequence is used to mark the start of every frame and is called the SFD (Start Frame Delimiter).
The next 48 bits are collectively known as the PLCP header. The header contains four fields: signal, service, length and HEC (header error check). The signal field indicates how fast the payload will be transmitted (1, 2, 5.5 or 11 Mbps). The service field is reserved for future use. The length field indicates the length of the ensuing payload, and the HEC is a 16-bit CRC of the 48-bit header (for comparison with an Ethernet frame, see "Ethernet PHY Frame" graphic.)
To further complicate the issue (and degrade performance) in a wireless environment, the PLCP is always transmitted at 1 Mbps. Thus, 24 bytes of each packet are sent at 1 Mbps. The PLCP introduces 24 bytes of overhead into each wireless Ethernet packet before we even start talking about where the packet is going. Ethernet introduces only 8 bytes of data. Because the 192-bit header payload is transmitted at 1 Mbps, 802.11b is at best only 85 percent efficient at the physical layer.
|PAGE: 1 I 2 I NEXT PAGE|