105 Views

Download Presentation
##### Cross-Layer Approach to Wireless Collisions

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -

**Cross-Layer Approach to Wireless Collisions**Dina Katabi**802.11 devices are increasingly prevalent**office Home City mesh distributed and bursty access Two devices access medium together Collision**Job of the MAC:**Avoid Collisions! And when they happen? Be in denial!**In This Talk**• Collisions are not harmful • We can decode colliding packets as efficiently as if they were sent separately • Collisions are beneficial • We can exploit strategic collisions to increase throughput Analog Network Coding**The Hidden Terminals Problem**Collision! Bob Alice**The Hidden Terminals Problem**Retransmissions More Collisions! Bob Alice Can’t get any useful traffic!**Can we take two collisions and produce the two packets?**Pa Pa Pb Pb Yes, we can!**∆2**ZigZag Exploits 802.11’s behavior • Retransmissions Same packets collide again • Senders use random jitters Collisions start with interference-free bits ∆1 Pa Pa Pb Pb Interference-free Bits**∆2**How Does ZigZag Work? 1 1 ∆1 ∆1 ≠∆2 Find a chunk that is interference-free in one collisions and has interference in the other Decode and subtract from the other collision**∆2**How Does ZigZag Work? 1 1 ∆1 2 ∆1 ≠∆2 Find a chunk that is interference-free in one collisions and has interference in the other Decode and subtract from the other collision**∆2**How Does ZigZag Work? 3 1 ∆1 2 2 ∆1 ≠∆2 Find a chunk that is interference-free in one collisions and has interference in the other Decode and subtract from the other collision**∆2**How Does ZigZag Work? 3 3 1 ∆1 2 4 ∆1 ≠∆2 Find a chunk that is interference-free in one collisions and has interference in the other Decode and subtract from the other collision**∆2**How Does ZigZag Work? 5 3 1 ∆1 4 2 4 ∆1 ≠∆2 Find a chunk that is interference-free in one collisions and has interference in the other Decode and subtract from the other collision**∆2**How Does ZigZag Work? 5 3 5 1 ∆1 2 6 4 ∆1 ≠∆2 Find a chunk that is interference-freein one collisions and has interferencein the other Decode and subtract from the other collision**∆2**How Does ZigZag Work? 7 5 3 1 ∆1 6 2 6 4 ∆1 ≠∆2 Find a chunk that is interference-freein one collisions and has interference in the other Decode and subtract from the other collision**∆2**How Does ZigZag Work? 7 5 3 7 1 ∆1 2 8 6 4 • Delivered 2 packets in 2 timeslots • As if packets didn’t collide • Low-complexity linear decoder • No need for synchronization ∆1 ≠∆2 Find a chunk that is interference-freein one collisions and has interference in the other Decode and subtract from the other collision**AP received a collision signal**How does the AP know it is a collision and where the second packet starts? Time ∆**Detecting Collisions and the Value of ∆**AP received signal Correlate Time Packets start with known preamble AP correlates known preamble with signal • Preamble Correlation • Detect collision and the value of ∆ • Works despite interference because correlation with an independent signal is zero ∆ Correlation Time**How Does the AP Subtract the Signal?**• Channel’s attenuation or phase may change between collisions • Can’t simply subtract a chunk across collisions Alice’ s signal in first collision Alice’ s signal in second collision**Subtracting a Chunk**• Decode chunk into bits • Removes effects of channel during first collision • Re-modulate bits to get channel-free signal • Apply effect of channel during second collision • Use correlation to estimate channel despite interference • Now, can subtract!**∆1**What if AP Makes a Mistake? Bad News: Errors can propagate 3 1 1 ∆2 2 2 Can we deal with these errors?**∆1**What if AP Makes a Mistake? Good News: Temporal Diversity A bit is unlikely to be affected by noise in both collisions ∆2 Get two independent decodings**∆2**∆1 AP Decodes Backwards as well as Forwards 2 2 3 1 1 Errors propagate differently in the two decodings Which decoded value should the AP pick? For each bit, AP picks the decoding that has a higher PHY confidence [JB07, WKSK07]**ZigZag Generalizes**• Flipped order ∆2 1 1 2 2 ∆1**∆1**ZigZag Generalizes • Flipped order • Different packet sizes 1 1 2 2 ∆2**ZigZag Generalizes**1 1 1 2 2 2 3 3 3 • Flipped order • Different packet sizes • Multiple colliding packets 1 1 1 2 2 2 3 3 3**ZigZag Generalizes**• Flipped order • Different packet sizes • Multiple colliding packets • Capture effect Pa1 Pa2 Pb Pb 3 packets in 2 timeslots better than no collisions**Implementation**• USRP Hardware • GNURadio software • Carrier Freq: 2.4-2.48GHz • BPSK modulation**Testbed**USRPs • 10% HT, 10% partial HT, 80% perfectly sense each other • Each run randomly picks an AP and two clients • Co-located 802.11a nodes that measure HTs. The USRPs use the same collision patterns as 802.11 802.11a**Throughput Comparison**CDF of concurrent flow pairs Throughput**Throughput Comparison**Perfectly Sense Partial Hidden Terminals Hidden Terminals CDF of concurrent flow pairs 802.11 Throughput**Throughput Comparison**Hidden Terminals get high throughput CDF of concurrent flow pairs ZigZag 802.11 Throughput**Throughput Comparison**ZigZag Exploits Capture Effect CDF of concurrent flow pairs ZigZag 802.11 Throughput ZigZag improved average Throughput by 25%**Throughput Comparison**Hidden Terminals CDF of concurrent flow pairs ZigZag 802.11 Throughput Improved hidden terminals loss rate from 72% to 0.7%**Is ZigZag as efficient as if the colliding packets were sent**in separate slots? • For every SNR, Check that ZigZag can match the BER of collision-free receptions**Is ZigZag as efficient as if packets were collision-free**Receptions? Bit Error Rate (BER) SNR in dB**Is ZigZag as efficient as if packets were collision-free**Receptions? Collision-Free Receptions Bit Error Rate (BER) SNR in dB**Is ZigZag as efficient as if packets were collision-free**Receptions? Collision-Free Receptions Bit Error Rate (BER) ZigZag-Decoded Collisions ZigZag is as efficient as if the colliding packets were sent separately SNR in dB**But can collisions be beneficial?**ZigZag makes collisions harmless**Current Wireless**Bob Alice**Current Wireless**Bob Alice Current approach requires 4time slots Can we do better?**Naive Application of ZigZag**Collision! Bob Alice**Naive Application of ZigZag**Decode Collisions Bob Alice Naïvely applying ZigZag requires 4time slots Decoding collisions at AP doesn’t reduce timeslots But the AP doesn’t need to decode!**What if the AP doesn’t decode?**Collision! Bob Alice Alice and Bob transmit simultaneously**What if the AP doesn’t decode?**Collision! Bob Alice Alice and Bob transmit simultaneously AP amplifies and broadcasts the collision**What if the AP doesn’t decode?**Bob Alice Bob’s pkt 1 1 Alice’s pkt 1 1 1fhj 1fhj Alice and Bob transmit simultaneously AP amplifies and broadcasts the collision Alice subtracts her packet from the collision 2 time slots instead of 4 Throughput Gain of 2x**Extends Network Coding to Signals**• Traditional network coding: nodes forward linear combinations of received packets • New approach: channel naturally creates linear combinations of signals Analog Network Coding (ANC)!