Recitation: Rehearsing Wireless Packet Reception in Software Zhenjiang Li, Yaxiong Xie, Mo Li, Nanyang Technological University Kyle Jamieson University College London
Wireless transmissions is going wider-band Up to 160 MHz Up to 40 MHz 802.11 ac (2013) 802.11 n (2009) Up to 22 MHz 802.11 a/b/g (1999)
Selective fading in wideband channels SNR 30+ dB! Subcarriers
Selective fading in wideband channels Heterogeneous BERs
Can we predict the bit destiny before transmitting the packet? Optimal bit rate selection Efficient partial packet recovery Unequal packet protection
Can we predict the bit destiny before transmitting the packet? Narrow band SNR-BER theory cannot apply Approximation with effective SNR inaccurate Work with commodity WiFi NICs
Rehearsing before transmissions (Output) Packet error rate (PER) Error-prone bit positions Rehearse transmissions CSI (Input)
Complex but predictable To this end, we need? Complex but predictable
Channel CSI (as input)
Interleaving Channel CSI (as input) Interleaving Deterministic
Interleaving interleaver Block interleaver write in row read in column 𝐗 𝟏 𝐗 𝟐 𝐗 𝟑 𝐗 𝟏 𝐗 𝟒 𝐗 𝟕 𝐗 𝟏𝟎 𝐗 𝟐 𝐗 𝟓 𝐗 𝟖 𝐗 𝟏𝟏 𝐗 𝟑 𝐗 𝟔 𝐗 𝟗 𝐗 𝟏𝟐 𝐗 𝟏 𝐗 𝟐 𝐗 𝟑 𝐗 𝟒 𝐗 𝟓 … 𝐗 𝟏𝟐 𝐗 𝟒 𝐗 𝟓 𝐗 𝟔 write in row 𝐗 𝟕 𝐗 𝟖 𝐗 𝟗 Generally, there are two kinds of interleaver widely used in communication systems: block interleaver and convolutional interleaver. 802.11 system adopts block interleaver. 𝐗 𝟏𝟎 𝐗 𝟏𝟏 𝐗 𝟏𝟐 read in column
Interleaving interleaver Block interleaver write in row read in column 𝒋= 𝑩 𝟏𝟑 × 𝒊 𝒎𝒐𝒅 𝟏𝟑 + 𝒊/𝟏𝟑 interleaver 𝐗 𝟏 𝐗 𝟐 𝐗 𝟑 𝐗 𝟒 𝐗 𝟓 … 𝐗 𝟏𝟐 write in row Generally, there are two kinds of interleaver widely used in communication systems: block interleaver and convolutional interleaver. 802.11 system adopts block interleaver. read in column 𝐗 𝟏 𝐗 𝟒 𝐗 𝟕 𝐗 𝟏𝟎 𝐗 𝟐 … 𝐗 𝟏𝟐
So far Coded Bits Packet Bits
Coding CSI (as input) Deterministic Predictable Channel Interleaving
Convolutional coding + + Simple encoder Output Input Coding rate of ½ 3 registers (4 finite states) Convolutional Coding + Output Input +
Convolutional coding Decoding Failure Path with the minimal Hamming distance Failure Faulty path is chosen Error event
Convolutional coding Error event probability (EVP) EVPi Probability that a faulty path will be selected EVPi Any faulty path that diverges at state i
Convolutional coding EVPi varies EVPi varies Indicate the error-prone bit positions
Convolutional coding
Convolutional coding
Convolutional coding lim 𝒌→∞ 𝒌 ∞ 𝒏 𝒌 ∗ 𝑷 𝒌 Viterbi theory Andrew James Viterbi lim 𝒌→∞ 𝒌 ∞ 𝒏 𝒌 ∗ 𝑷 𝒌 Viterbi theory 𝑷 𝒌 is the probability that one path with Hamming distance 𝑘 will be chosen as the decoding result 𝑷 𝒌 = 𝒎=(𝒌+𝟏)/𝟐 𝒌 𝒌 𝒆 𝒑 𝒆 𝒎 (𝟏− 𝒑 𝒆 ) 𝒌−𝒎 , 𝒌 𝒊𝒔 𝒐𝒅𝒅 𝟏 𝟐 𝒌 𝒌/𝟐 𝒑 𝒆 𝒌/𝟐 (𝟏− 𝒑 𝒆 ) 𝒌/𝟐 + 𝒎= 𝒌 𝟐 +𝟏 𝒌 𝒌 𝒆 𝒑 𝒆 𝒎 (𝟏− 𝒑 𝒆 ) 𝒌−𝒎 ,𝒌 𝒊𝒔 𝒆𝒗𝒆𝒏 𝒏 𝒌 = 2k is the number of paths with Hamming distance 𝑘
Convolutional coding lim 𝒌→∞ 𝒌 ∞ 𝒏 𝒌 ∗ 𝑷 𝒌 Andrew James Viterbi lim 𝒌→∞ 𝒌 ∞ 𝒏 𝒌 ∗ 𝑷 𝒌 Viterbi theory Assumption Each coded bit has the same error probability 𝑝 𝑒 Coded Bits
However … + + Output 1 Input Output 2 Coded Bits 𝑿 𝒏 𝑿 𝒏−𝟏 𝑿 𝒏−𝟐 𝑿 𝒏−𝟑 𝑿 𝒏−𝟒 𝑿 𝒏−𝟓 𝑿 𝒏−𝟔 Input Output 2 +
EVP calculation in 802.11 Diverging segments of faulty paths Cannot be directly measured Use error burst length to approximate All possible error combinations
EVP calculation in 802.11 (1) Short divergent segments (2) Small number of error bits
Reducing computations Sort 𝛌 𝒊∈𝑭 𝒑 𝒊 × 𝒊∉𝑭 (𝟏− 𝒑 𝒊 ) × 𝒘 𝒆,𝒍 𝑬𝑽𝑷+=
LDPC (Low Density Parity Check) Block code Packet bits Coded bits
LDPC (Low Density Parity Check) Block code Packet bits Coded bits Decoding Error 𝑬𝑽𝑷 𝒊 = 𝒍=𝑬𝑪𝑪 𝒏 𝒊 𝓕∈ 𝑭 𝒍 𝒋∈𝓕 𝒑 𝒋 ∙ 𝒋∈𝓕 (𝟏− 𝒑 𝒋 )
Finally CSI (as input)
Experiment evaluation TP-Link TL-WDR7500 Wi-Fi router Atheros 9580 NIC (802.11n) SoC QCA9558 Data collected 50 locations (U-shape route) 93,000+ UDP packets with 1000 byte random payloads Iterating all 8 data rates (6.5, 13, 19.5, 26, 39, 52, 58.5, 65 Mbps) CSIs and transmitted packets (correct and corrupted)
Benchmark tests Packet Error Rate (PER) prediction Convolutional Code LDPC Code
Benchmark tests Computational overhead Average delay < 0.2 ms
Application -- #1 Rate selection Throughput improvement Average: 25.6% Rect-Rate: PER by Recitation < 0.1 ESNR: ESNR rate selection approach OPT: Oracle selection based on actual transmissions
Application -- #2 Unequal protection Error-prone positions Periodical pattern (in OFDM symbols) EVP accurately describes the BER
Application -- #2 Unequal protection Video streaming Rect-Video I-frames at more reliable positions P-, B- frames at other positions Stan-Video Average 6dB improvement on PSNR (peak SNR), a standard metric to measure video quality
More evaluations System parameters Partial packet recovery MIMO settings Mobility
Takeaways 1. Frequency selective fading in wideband channels 2. Narrow band experience unsuitable 3. Complicated but predictable 802.11 PHY operations