Skip-Correlation for Multi-Power Wireless Carrier Sensing Romil Bhardwaj, Krishna Chintalapudi, Ramachandran Ramjee
TCP Throughput (Mbps) Motivation C1 AP1 1W AP2 100 mw C2 100 90 80 70 60 50 40 30 20 10 0 1W AP1 -> C1 100mW AP2 -> C2 0 20 40 60 80 Time (s)
Why does this happen? Devices listen before they talk Listening sensitivity? 802.11 defines Carrier Sensing Threshold (CST) at -82 dbm -78 dbm AP1 1W AP1 does not detect AP2-88 dbm AP2 100 mw AP2 detects AP1
Why is this important? vs
A New Sensing Technique Skip Correlation A senses B if and only if B senses A (Carrier Sensing Symmetry) No Collateral Damage Causes no new, unnecessary interactions Backward Compatible Works with legacy devices, minor change to existing circuits
Use a lower CST? -82 dbm -92 dbm AP1 1W Now Sensing @ -92 dbm CST AP2 100 mw Now Sensing @ -92 dbm CST
Use a lower CST? -82 dbm -92 dbm Collateral Damage AP1 1W Now Sensing @ -92 dbm CST AP2 100 mw Now Sensing @ -92 dbm CST AP3 100 mw Now Sensing @ -92 dbm CST
High Power APs use lower CST? -82 dbm Collateral Damage AP4 1W Now Sensing @ -92 dbm CST AP1 1W Now Sensing @ -92 dbm CST AP2 100 mw AP3 100 mw
Key Insights (-82-10) = -92 dbm -82 dbm Should lower CST to -92 dbm P 1 = 30 dbm P 2 =20 dbm
Key Insights (-82-4) = -88 dbm -82 dbm Should lower CST to -88 dbm P 3 =26 dbm P 1 = 30 dbm CST(P 1,P 2 ) = ቊ 82, 82 P 1 P 2, P 1 P 2 P 1 > P 2
Counter-Intuitive Insight Dynamic CST is dependent on the receiver s AND transmitter s transmit powers!
Determining Transmitter s Power is Hard! Cannot encode power in the SIGNAL Field 8µs 8µs 20µs STS Preamble LTS Preamble SIGNAL Field (OFDM) DATA Back-off Decision
Skip Correlation
Carrier Sensing 101 Wi-Fi STS Preamble 0 16 32 48 64 80 96 112 128 144 160 STS STS STS STS STS STS STS STS STS STS L 2 AutoCorrelation = i=1 S recv i S recv i + L 2 1.2 1 0.8 0.6 0.4 0.2 0 Correlation Running Sum Correlation Threshold
Changing the Correlation Length Wi-Fi STS Preamble 0 16 32 48 64 80 96 112 128 144 160 STS STS STS STS STS STS STS STS STS STS Correlation SNR Length L 2 AutoCorrelation = S recv i S recv i + L 2 i=1 2.5 2 1.5 1 0.5 Correlation Running Sum Threshold 0 L 2L Correlation Window 0 Correlation L Correlation 2L
Correlation Length & Packet Detection Correlation Length L -> 90% detection probability @ -82 dbm Correlation Length 2L -> 90% detection probability @ -85 dbm Doubling L is same as lowering CST by 3 db!
Skip Correlation CST(P a, P b ) = ቊ 82, 82 P a P b, P a P b P a > P b Transmitter Receiver High Power Short preambles Low Power Long preambles Skip Correlate Dependent on Receiver's Tx Power
Skip Correlation Example - 4 Power Levels Transmit Preambles 0 L/4 L/2 3L/4 L 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 Receive Correlation Sequence L/4 L/2 3L/4 L 0 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29
AP 20 -> AP 20 CST(P 1,P 2 ) = ቊ 82, 82 P 1 P 2, P 1 P 2 P 1 > P 2 Transmit Preambles 0 L/4 L/2 3L/4 L 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 AP 20 -> AP 20 Correlation 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 0 L/4 L/2 3L/4 L Correlation Value = C CST = -82 dbm
AP 20 -> AP 29 CST(P 1,P 2 ) = ቊ 82, 82 P 1 P 2, P 1 P 2 P 1 > P 2 Transmit Preambles 0 L/4 L/2 3L/4 L 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 AP 20 -> AP 29 Correlation 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 0 L/4 L/2 3L/4 L Correlation Value = 8C CST = -91 dbm
AP 23 -> AP 26 CST(P 1,P 2 ) = ቊ 82, 82 P 1 P 2, P 1 P 2 P 1 > P 2 Transmit Preambles 0 L/4 L/2 3L/4 L 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 AP 23 -> AP 26 Correlation 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 0 L/4 L/2 3L/4 L Correlation Value = 2C CST = -85 dbm
Skip Correlation CST(P 1,P 2 ) = ቊ 82, 82 P 1 P 2, P 1 P 2 P 1 > P 2 Transmit Preambles 0 L/4 L/2 3L/4 L 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29 Receive Correlation Sequence L/4 L/2 3L/4 L 0 20 dbm AP 20 23 dbm AP 23 26 dbm AP 26 29 dbm AP 29
Receiver Tx Power All Tx-Rx Pairs CST(P 1,P 2 ) = ቊ 82, 82 P 1 P 2, P 1 P 2 P 1 > P 2 Transmitter Tx Power 20 dbm 23 dbm 26 dbm 29 dbm 20 dbm L, -82 L, -82 L, -82 L, -82 23 dbm 2L, -85 L, -82 L, -82 L, -82 26 dbm 4L, -88 2L, -85 L, -82 L, -82 29 dbm 8L, -91 4L, -88 2L, -85 L, -82 Effective Correlation Length (L) and CST (dbm) using Skip Correlation
Receive Transmit Not Just 4 Power Levels.. P N P k P k i+1 P k i P 2 P 1 Υ Υ P N P k Υ P N P k i+1 Υ P N P k i Υ P N P 2 Υ P N P 1 P N P k P 2 λ k,1 λ k,i λ k,i+1 λ k,k 1 λ 2,1 P 1
Minimal Change in Silicon Regular Wi-Fi Auto-Correlator Skip Correlator 12 adders = 0.03% increase in FPGA utilization
Implementation Implemented on the WARP v3 FPGA Supports 4 power levels, 0 to 9 db in increments of 3 db Backward compatible design
Throughput Experiments 20dBm 23dBm 26dBm Nexus 5x Samsung Galaxy S3 TP-Link Archer C7 AP 802.11n WARP AP A B B can sense A
Without Skip Correlation
With Skip Correlation
Detection Probability Sensing Symmetry Experiments Log 10 (C)
Skip Correlation Summary Carrier Sense Threshold Dynamic Tx Rx power level dependent Skip Correlation Realizes dynamic CST Leverages L and CST Relationship Experiments Sensing symmetry, even with legacy devices Simple implementation