DSSS with 802.11 Prime and 802.11b
The tremendous growth of Wi-Fi that is occurring right now means that many new engineers are getting into Wi-Fi. Our skills are in high demand, and new Wi-Fi engineers need the knowledge to design, build, and deploy successful wireless networks. I’m a firm advocate that it starts with fundamentals. Wi-Fi is a complex technology, and much of the “black-magic” that outsiders attribute to Wi-Fi network operation can be explained with a thorough understanding of underlying physical (PHY) properties.
Let’s start the new year by getting back to fundamentals, and boiling down Wi-Fi to some of its core nuts and bolts. This will provide the basic framework to understand how Wi-Fi works at the physical layer, hopefully in an easy to comprehend fashion. It will also enable newly minted Wi-Fi engineers to have a more complete understanding of Wi-Fi operation at higher layers in the stack, explain many of the “rules-of-thumb” in the industry, and provide background so engineers can properly address unique design requirements. If there is one thing every seasoned Wi-Fi engineer will tell you, it’s that there are no guaranteed methods that work in all situations. Every environment is different, solutions that work in some don’t work in others, and best practices don’t always work. Critical reasoning and problem-solving are a large part of the job, so let’s get you prepared!
First up – Direct Sequence Spread Spectrum as implemented in 802.11 prime and 802.11b
Data Rates Supported
802.11 prime supports 1 and 2 Mbps, and is often referred to as DSSS.
802.11b supports 5.5 and 11 Mbps, and is often referred to as High-Rate DSSS (HR-DSSS).
Yeah, that was the easy part 🙂
802.11 prime and 802.11b use Direct Sequence Spread Spectrum (DSSS), which is graphically represented by the typical bell-shaped curve on a frequency vs. amplitude graph you may have seen in other Wi-Fi literature (technically called a Spectral Mask).
Direct Sequence Spread Spectrum (DSSS) is a method of spreading out a serial data stream across a range of frequencies which make up a single “channel”. The channels are referenced by their primary carrier frequency at the center of the channel and each channel is separated by 5MHz. DSSS is designed to be used at low power but spanning a much larger frequency range (bandwidth) than is required to encode the data versus a narrowband transmitter (such as a radio or television transmitter). By spreading the data out over a larger range of frequencies, spread spectrum technologies such as DSSS are less susceptible to narrowband interference. Additionally, due to the low power, DSSS is also less likely to cause interference to other RF systems. This is part of the reason why unlicensed frequency use is permitted by the FCC.
The DSSS spectral mask consists of a primary signal (main lobe) as well as secondary signals (sideband lobes). The main lobe consists of the carrier signal frequency and 11MHz above and below. The first sideband lobe consists of 11-22Mhz above and below the carrier signal and must have power output reduced by 30dB relative to the power output of the primary signal. The sideband lobe power reduction is required to reduce interference with systems on adjacent channels. Additional sideband lobes beyond 22MHz above or below the carrier frequency must have power reduce by 50dB.
Due to channels being defined at 5MHz increments and the DSSS main lobe being effectively 22MHz wide, confusion arises between non-overlapping, overlapping and adjacent Wi-Fi channels. For two channels to be non-overlapping they must be separated by 25MHz (5 channels), which is slightly larger than the 22MHz used by the main lobes of two adjacent channels, 11MHz above one channel and 11MHz below the other. Adjacent channels are defined similar to non-overlapping channels for DSSS, which are channels that are separated by at least 25MHz. (The adjacent channel definition is different with OFDM and 802.11a/g, whereby adjacent channels must be exactly 25MHz apart, not less and not greater). Therefore, any channels that are not separated by at least 25MHz are considered overlapping.
This leads to the common practice of only using Wi-Fi channels 1, 6, and 11 during multi-access point deployments because these channels provide the most capacity using only non-overlapping channels.
Let’s take a few examples:
- Channel 1 would be overlapping with channels 2-5 since they are less than 25MHz apart, and non-overlapping / adjacent with channels 6-14 since they are separated by at least 25MHz or more.
- Channel 9 would be overlapping with channels 5-13 since they are less than 25MHz apart, and non-overlapping / adjacent with channels 1-4 and 14 since they are separated by at least 25MHz or more.
Modulation and Coding
Digital-to-Analog modulation refers to the process of changing one or more of the characteristics of an analog signal based on information in a digital signal (1’s and 0’s). Typically an analog carrier signal is modified in order to transmit information. The transmitter performs modulation to achieve digital-to-analog conversion for transmission over the air (an analog medium) and the receiver performs de-modulation to achieve analog-to-digital conversion and recover the transmitted data.
Radio frequency waveforms (sine waves) have three basic properties that can be modified in order to transmit digital data over a analog carrier signal: amplitude, frequency, and phase.
Amplitude Modulation (AM) – amplitude represents the strength of the signal. Amplitude modulation varies the strength of the transmitted analog waveform in order to encode the data being sent. Digital data is encoded by slightly “shifting” the carrier signal strength among pre-determined amplitude levels which each represent different digital data values. When used to encode digital data, amplitude modulation is also referred to as Amplitude Shift Keying (ASK). Amplitude modulation is especially susceptible to outside noise which can corrupt the encoded data transmission.
Frequency Modulation (FM) – frequency represents the periodic nature of an oscillating waveform to complete one cycle. Frequency modulation varies the frequency / wavelength of the transmitted analog waveform in order to encode the data being sent. Digital data is encoded by slightly “shifting” the carrier frequency among a list pre-determined settings which each represent different digital data values. When used to encode digital data, frequency modulation is also referred to as Frequency Shift Keying (FSK).
Phase Shift Keying (PSK) – phase represents the current position (often referenced in degrees) of an oscillating waveform. PSK varies the phase of the current oscillating waveform with reference to an arbitrary position on a reference waveform. Digital data is encoded by shifting the waveform among a list of pre-determined degree offsets from the expected position (for example o°, 90°, 180°, or 270° shifts).
Differential PSK (DPSK) is when the receiver determines the degree of phase shift change using the carrier waveform itself rather than using a reference waveform. DPSK depends on the difference between two successive phases of the same carrier signal, which determines the degree of phase shift. DPSK is commonly used because it is simpler to implement than PSK using a reference waveform.
A fourth method, Quadrature Amplitude Modulation (QAM), combines amplitude shift keying and phase shift keying, and provides a more efficient and resilient modulation technique. However, QAM is only used in subsequent Wi-Fi physical layer specifications such as 802.11a/g/n, and is not used in 802.11 prime or 802.11b.
Differential Binary PSK (DBPSK) is a DPSK modulation technique that is capable of encoding a single bit of digital data per-symbol, by using two distinct phases (typically 180° apart from one another).
Differential Quadrature PSK (DQPSK) is a DPSK modulation technique that is capable of encoding two bits of digital data per-symbol, by using four distinct phases (typically 90° apart from one another).
Modulation rate is roughly analogous to the baud rate, which it the rate at which a signal is modified in order to encode the data bits. It it’s simplest form (such as with DBPSK), one baud encodes one bit. However, in more sophisticated modulation techniques, each baud may encode multiple bits. The fewer baud required to encode the bit stream, the more efficient the transmission and conversely the more susceptible to data corruption by noise and interference. More complex modulation methods require a better signal to interference and noise ratio (SINR). Due to processing gain (explained below), each signal modulation for DSSS and HR-DSSS actually encodes “chips” instead of “bits” from the input data stream.
Symbol rate is also usually analogous to baud or modulation rate, in that it a single symbol represents a single waveform change or signalling event. In subsequent Wi-Fi specifications with 802.11a/g/n it is equivalent to one Fast Fourier Transform (FFT). However, with 802.11 prime and 802.11b the concept of a symbol is slightly different than normal, again due to the processing gain where a single waveform change encodes “chips” instead of “bits”. Due to this, one symbol in 802.11b represents the collective waveform changes required to transmit a single set of “chips” which represent one or more “bits” from the input data stream.
As higher order modulation techniques increase data throughput by encoding more bits per-baud, it also reduces resistance to noise. That is why Wi-Fi clients will data-rate shift to lower data rates in the presence of interference, noise, or data corruption, possibly despite a strong link signal.
DSSS Encoding with Pseudonoise (PN) codes and “chips” – in order to provide more reliable transmission and forward error correction (FEC), 802.11 prime and 802.11b use pseudonoise codes which add processing gain to the incoming bit stream from the MAC layer. 802.11 prime at 1 and 2 Mbps uses the 11-bit Barker Code which is XOR’d with each incoming bit. This expands the amount of modulated information sent out over the air. For each incoming data bit from the MAC layer, 11 “chips” as they are called are transmitted. Therefore, the receiving station can still determine the original bit that was transmitted even in the presence of noise or interference that corrupts up to 9 of the 11 chips sent over the air.
HR-DSSS Encoding with Complementary Code Keying (CCK) – in order to provide higher data rates than 2Mbps, 802.11b employs CCK which replaces the 11-bit Barker Code with an 8-bit code. Also, rather than using a single 11-bit chipping sequence, CCK uses a table of various 8-bit sequences that each map to either 4 or 8 data bit sequences. Essentially, CCK uses a chipping sequence lookup table, and the chip sequences have been carefully selected to provide optimal transmission characteristics (such as not having long strings of a single value repeating, and overall direct current symmetry). The shorter chipping sequence reduces data spreading and processing gain to achieve greater data throughput. However, CCK is also more susceptible to narrowband interference than DSSS/Barker Code. CCK is a bit of an esoteric subject; don’t worry about knowing the mathematics behind it.
802.11 prime defined a physical layer frame format consisting of 3 main sections:
- PLCP Preamble – the physical layer convergence protocol (PLCP) preamble is used to allow the receiving station to recognize and “lock-on” to an incoming Wi-Fi modulated signal and synchronize its clock to accurately determine bit boundaries.
- PLCP Header – used to inform the receiving station of important physical layer information used to interpret and decode the incoming frame. For example, the SIGNAL field indicates the modulation and data rate at which the MPDU is encoded, and the LENGTH field indicates the number of microseconds required to transmit & receive the MPDU (octets can be derived from this using the modulation type and symbol rate; in subsequent PHY standards such as 802.11a/g/n the length field directly contains the number of octets transmitted).
- PSDU / MPDU – the physical-layer service data unit (PSDU) is the portion of the frame which contains the 802.11 MAC header, 802.2 LLC header, and higher layer payload (typically TCP/IP). This can also be referred to as the MAC protocol data unit (MPDU) from a layer 2 terminology perspective (they mean the same thing however).
The PLCP Preamble and Header are always encoded at statically defined data rates so the receiver can decode and interpret the incoming data. The PSDU/MPDU is transmitted at a variable data rate, which can be much higher speed.
The original frame format specified a 144-bit preamble. The 802.11b amendment provided optional support for a 72-bit short preamble in order to improve network performance by reducing overhead. It also included restrictions on data rate support for the PLCP header and PSDU.
- 144-bit PLCP Preamble – modulated at 1Mbps
- PLCP Header – modulated at 1 Mbps
- PSDU/MPDU – modulated at 1, 2, 5.5, or 11 Mbps as specified within the PLCP Header “Signal” field
|802.11 DSSS – Long Preamble Frame Format|
- 72-bit PLCP Preamble – modulated at 1Mbps
- PLCP Header – modulated at 2 Mbps
- PSDU/MPDU – modulated at 2, 5.5, or 11 Mbps as specified within the PLCP Header “Signal” field
|802.11 DSSS – Short Preamble Frame Format|
You may be interested in performing various calculations, such as how the modulation type and rate equates to the raw data rate, how long a frame of arbitrary size takes to transmit over the air, and how much throughput can be achieved given frames of a specific size.
Data Rate Calculation:
Select a data rate from the table above, then:
Transmission Time of a Frame:
Select a data rate from the table above, then:
*Note – Portions of each frame are transmitted at different data rates. Calculate the PLCP Preamble, PLCP Header, and PSDU/MSDU independently, then sum the results together. Hint – once you calculate the PLCP Preamble and Header for both long and short preambles, those values can be re-used since they are constant.
Maximum Network Throughput:
The easiest method is to calculate maximum network throughput (under ideal circumstances) by using a single frame size. Select a frame size that is representative of the average real-world or observed network traffic in your environment, then calculate the transmission time for that frame using the formula above.
For raw layer 2 throughput, you will then need to add in network overhead due to initial medium contention (DIFS, AIFS), one SIFS inter-frame spacing, and receiver acknowledgement frame (typically 76 bytes of payload at a variable data rate).
For layer 4 TCP/IP throughput, you will also need to add in expected TCP conversation traffic in the reverse direction. At minimum, for a mostly one-way data transfer, this would be TCP acknowledgements. For bi-directional traffic, you will need to understand the application behavior and traffic flow patterns.
Additionally, sophisticated statistical models are usually required to account for the probability of collisions and re-transmissions, but you could get close by analyzing actual re-transmission rates in your environment as a basis for adjusting the throughput calculation downward by a certain percentage.
Throughput calculations are not easy, but just performing the exercise is a great learning tool! For actual throughput analysis it can be easier to simply run some tests on a live network using tools such as iperf, Nuts about Nets NetStress, Ixia QCheck/Chariot, VeriWave WaveDeploy, Ruckus Zap, or TamoSoft Througput Test, or WLANBook’s suite of mobile iperf and zap tools.
I know this may have been a lot to take in. Don’t sweat it, you don’t need to memorize the specifics. Understand the concepts and refer back as needed. I hope this provides a useful, easy-to-understand overview of the 802.11 prime and 802.11b PHY without going into too much complexity. Understanding these foundational topics will serve you well as you work on designing and troubleshooting real-world networks. Just think, now you know why channels 1, 6, and 11 are a rule of thumb, how enabling or disabling data rates affects the link resiliency and performance, and why some legacy devices may not be compatible with 802.11b short preamble due to a different PLCP header data rate.
Stay tuned for follow-up articles on OFDM with 802.11a/g and High Throughput OFDM with 802.11n.