Shyamnath Gollakota Dina Katabi The Hidden Terminals Problem Collision Alice Bob The Hidden Terminals Problem Alice Bob More Collisions Retransmissions Cant get any useful connections ID: 446597
Download Presentation The PPT/PDF document "Decoding 802.11 Collisions" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Decoding 802.11 Collisions
Shyamnath GollakotaDina KatabiSlide2
The Hidden Terminals Problem
Collision!
Alice
BobSlide3
The Hidden Terminals Problem
Alice
Bob
More Collisions!
Retransmissions
Can’t get any useful
connectionsSlide4
Can we take two collisions and produce the two packets?
Pa
P
b
P
a
P
b
Yes, we can!Slide5
ZigZagExploits 802.11’s behavior
Retransmissions Same packets collide againSenders use random jitters Collisions start with interference-free bits
∆1
∆2
P
a
P
b
P
a
P
b
Interference-free BitsSlide6
How Does ZigZag Work?
∆1
∆2
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
1
∆1 ≠∆2
Decode and subtract
from the other collision
1Slide7
∆2
1
2
1
∆1
How Does ZigZag Work?
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
∆1 ≠∆2
Decode and subtract
from the other collisionSlide8
∆2
1
2
2
∆1
How Does ZigZag Work?
3
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
∆1 ≠∆2
Decode and subtract
from the other collisionSlide9
∆2
1
2
4
∆1
How Does ZigZag Work?
3
3
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
∆1 ≠∆2
Decode and subtract
from the other collisionSlide10
∆2
1
2
4
4
∆1
How Does ZigZag Work?
3
5
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
∆1 ≠∆2
Decode and subtract
from the other collisionSlide11
∆2
1
6
∆1
How Does ZigZag Work?
3
5
5
2
4
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
∆1 ≠∆2
Decode and subtract
from the other collisionSlide12
∆2
1
6
6
∆1
How Does ZigZag Work?
2
4
3
5
7
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
∆1 ≠∆2
Decode and subtract
from the other collisionSlide13
∆2
1
6
8
∆1
How Does ZigZag Work?
2
4
3
5
7
7
Find a chunk that is
interference-free
in one collisions and has
interference
in the other
∆1 ≠∆2
Decode and subtract
from the other collision
Delivered 2 packets in 2 timeslots
As efficient as if the packets did not collideSlide14
ZigZagA receiver design that decodes collisionsAs efficient as if the colliding packets were sent in separate time slots
Experimental results shows that it reduces hidden terminal losses from 72% to 0.7%Slide15
How does the AP know it is a collision and where the second packet starts?
Time
AP received a collision signal
∆Slide16
Detecting Collisions and the Value of
∆
Time
AP received signal
Packets start with known preamble
AP
correlates
known preamble with signal
Correlation
Time
Correlate
∆
Preamble Correlation
Detect collision and the value of
∆
Works despite interference
because correlation with an independent signal is zero Slide17
How Does the AP Subtract the Signal?
Channel’s attenuation or phase may change between collisionsCan’t simply subtract a chunk across collisions
Alice’s signal in first collision
Alice’s signal in second collisionSlide18
Subtracting a ChunkDecode chunk into bits
Removes effects of channel during first collisionRe-modulate bits to get channel-free signalApply effect of channel during second collisionUse correlation to estimate channel despite interference
Now, can
subtract!Slide19
What if AP Makes a Mistake?Slide20
∆1
∆2
1
1
2
2
Bad News: Errors can propagate
3
Can we deal with these errors?
What if AP Makes a Mistake?Slide21
∆1
∆2
What if AP Makes a Mistake?
Good News: Temporal Diversity
A bit is unlikely to be affected by noise in both collisions
Get two independent
decodingsSlide22
Errors propagate differently in the two
decodings
For each bit, AP picks the decoding that has a higher PHY confidence [JB07, WKSK07]
Which decoded value should the AP pick?
∆1
∆2
1
1
2
2
3
AP Decodes Backwards as well as ForwardsSlide23
ZigZag GeneralizesSlide24
ZigZag Generalizes
∆1
∆2
1
2
1
2
Flipped order Slide25
Flipped orderDifferent packet sizes
ZigZag Generalizes
∆1
∆2
1
2
1
2Slide26
ZigZag Generalizes
1
2
3
1
2
3
1
2
3
Flipped order
Different packet sizes
Multiple colliding packets
1
2
1
2
2
1
3
3
3Slide27
ZigZag GeneralizesFlipped order
Different packet sizesMultiple colliding packets Capture effectSubtract Alice and combine Bob’s packet across collisions to correct errors
∆1
∆2
P
a1
P
b
P
a2
P
b
3 packets in 2 time slots
better than no collisionsSlide28
PerformanceSlide29
Implementation
USRP Hardware GNURadio software
Carrier Freq: 2.4-2.48GHz
BPSK modulation Slide30
USRPs
Testbed
10% HT, 10% partial HT, 80% perfectly sense each other
Each run randomly picks an AP and two clients
Co-located 802.11a nodes to find out about HTs and created the same collision patterns by the USRPs
802.11aSlide31
Throughput ComparisonThroughput
CDF of concurrent flow pairs Slide32
Throughput Comparison
802.11Throughput
CDF of concurrent flow pairs
Hidden Terminals
Partial Hidden Terminals
Perfectly Sense Slide33
Throughput Comparison
ZigZagThroughput
CDF of concurrent flow pairs
802.11
Hidden Terminals get high throughputSlide34
Throughput Comparison
ZigZagThroughput
CDF of concurrent flow pairs
802.11
ZigZag Exploits Capture Effect
ZigZag improved average Throughput by 25%Slide35
Throughput Comparison
ZigZagThroughput
CDF of concurrent flow pairs
802.11
Improved hidden terminals loss rate from 72% to 0.7%
Hidden TerminalsSlide36
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 Slide37
Is
ZigZag as efficient as if packets were collision-free Receptions?SNR in dBBit Error Rate (BER)Slide38
Collision-Free
Receptions
Is
ZigZag as efficient as if packets were collision-free Receptions?
SNR in dBBit Error Rate (BER)Slide39
Collision-Free
Receptions
Is
ZigZag as efficient as if packets were collision-free Receptions?
ZigZag
-Decoded Collisions
SNR in dB
Bit Error Rate (BER)
ZigZag is as efficient as if the colliding packets were sent separatelySlide40
Three Colliding Senders
Collision!
Alice
Bob
Chris
Nodes picked randomly from testbedSlide41
Three Colliding Senders
ZigZag extends beyond two colliding senders
CDF of runs
Per-Sender Throughput
Alice
Bob
ChrisSlide42
Related WorkRTS-CTSExcessive Overhead; Administrators turn it off
Interference CancellationUnsuitable for 802.11 because of bit rate adaptation
Interference cancelation operates on one collision
Undecodable
Alice’s
Info
Rate
Bob’s
Info
Rate
Rmax
RmaxSlide43
Related Work
RTS-CTS
Excessive Overhead; Administrators turn it off
Interference Cancellation
Unsuitable for 802.11 because of
bit rate adaptation
ZigZag operates on two collisions
Can
decode
Alice’s
Info
Rate
Bob’s
Info
Rate
Rmax
RmaxSlide44
ConclusionZigZag is a receiver design that resolves collisions
It is as efficient as if the colliding packets were sent in separate time slotsIt reduces hidden terminal losses from 72% to 0.7%It enables aggressive MAC More concurrency