Title: Trading Coordination For Randomness
1Trading Coordination For Randomness
Mike Jennings, Sachin Katti, and Dina Katabi
2Wireless mesh networks have high loss rates
Objective High throughput despite lossy links
3Use Opportunistic Routing
4Use Opportunistic Routing
R1
0
50
R2
0
50
dst
src
0
50
R3
50
0
R4
- Best single path ? loss prob. 50
5Use Opportunistic Routing
- Best single path ? loss prob. 50
- In opp. routing ExOR05, any router that hears
the packet can forward it ? loss prob. 0.54 6
Opportunistic routing promises large increase in
throughput
6But
- Overlap in received packets ? Routers forward
duplicates
7But
- Overlap in received packets ? Routers forward
duplicates
R1
src
dst
R2
8But
- Overlap in received packets ? Routers forward
duplicates
R1
src
dst
R2
- State-of-the-art opp. routing, ExOR imposes a
global scheduler - Requires full coordination every node must know
who received what - Only one node transmits at a time, others listen
9Global Scheduling?
dst
src
- Global coordination is too hard
- One transmitter
10Global Scheduling?
dst
src
Does opportunistic routing have to be so
complicated?
- Global coordination is too hard
- One transmitter ? You lost spatial reuse!
11Our Contributions
- Opportunistic routing with no global scheduler
and no coordination - We use random network coding
- Experiments show that randomness outperforms both
current routing and ExOR
12Go Random
Each router forwards random combinations of
packets
13Go Random
Each router forwards random combinations of
packets
R1
P1
a P1 ß P2
P2
src
dst
R2
P1
? P1 d P2
P2
14Random Coding Benefits Multicast
P1
P2
src
P3
P4
dst1
dst2
dst3
P1
P2
P2
P3
P3
P4
Without coding ? source retransmits all 4 packets
15Random Coding Benefits Multicast
Random combinations
P1
8 P15 P2 P33 P4
P2
src
P3
7 P13 P26 P3 P4
P4
dst1
dst2
dst3
P1
P2
P2
P3
P3
P4
Random coding is more efficient thanglobal
coordination
Without coding ? source retransmits all 4 packets
With random coding ? 2 packets are sufficient
16MORE
17MORE
- Source sends packets in batches
- Forwarders keep all heard packets in a buffer
- Nodes transmit linear combinations of buffered
packets
Can compute linear combinations and sustain high
throughput!
4,1,3
4,1,3
0,2,1
18MORE
- Source sends packets in batches
- Forwarders keep all heard packets in a buffer
- Nodes transmit linear combinations of buffered
packets
4,1,3
4,1,3
8,4,7
0,2,1
8,4,7
19MORE
- Source sends packets in batches
- Forwarders keep all heard packets in a buffer
- Nodes transmit linear combinations of buffered
packets
- Destination decodes once it receives enough
combinations - Say batch is 3 packets
- Destination acks batch, and source moves to next
batch
20But How Do We Get the Most Throughput?
- Naïve approach transmits whenever 802.11 allows
If A and B have same information, it is more
efficient for B to send it
Need a Method to Our Madness
21Probabilistic Forwarding
22Probabilistic Forwarding
e1
A
e2
dst
Loss rate 0
B
Src
Loss rate 50
e1
23Probabilistic Forwarding
How many packets should I forward?
50 of buffer
e1
A
e2
dst
B
?
Src
e1
e1
e1
24Probabilistic Forwarding
Pr 0.5
e1
A
e2
dst
0
Pr 1
B
50
Src
e1
e1
Compute forwarding probabilities without
coordination using loss rates
25Can ExOR Use Probabilistic Forwarding To Remove
Coordination?
Pr 0.5
Probability of duplicates is 50
P1
P1
A
P2
dst
Pr 1
B
- Without random coding ? need to know the exact
packets to forward every time - With random coding ? need to know only the
average amount of overlap
P1
P1
26MORE needs to adapt to short-term dynamics
Long-term averages are great, but Wireless is
unpredictable over short time-scales
27Adapting to Short-term Dynamics
- Need to balance sent information with received
information - MORE triggers transmission by receptions
- A node has a credit counter
- Upon reception, increment the counter using
forwarding probabilities - Upon transmission, decrement the counter
- Source stops ? No triggers ? Flow is done
28Performance
29Experimental Setup
- We implemented MORE in Linux
- 20-node testbed
- Compare MORE with
- Current Routing (Single Best Path)
- ExOR (State-of-the-art Opportunitic Routing)
- Experiment
- Random source-destination pairs
- Transmit 5 MB file
30Testbed
- 20-node testbed over three floors
31Testbed
- 20-node testbed over three floors
Avg. loss 27
32Does MORE Improve Wireless Throughput?
Avg. Throughput over 180 src-dst pairs pkts/s
MORE
80
ExOR
Current
40
- MOREs throughput is
- 2x better than current routing
- 22 better than ExOR
33Throughput of All Source-Destination Pairs
- CDF of 180 source-destination pairs
Current
ExOR
MORE
Throughput packets/s
34Zoom in on the worst 10
Current
ExOR
MORE
MORE addresses dead spots
Throughput packets/s
35Sensitivity to Batch Size
MORE works for short flows
36What About Multicast?
Avg. Throughput Per Destination pkts/s
200
260
100
320
50
MORE improves both multicast and unicast
throughput
2 destinations
3 destinations
4 destinations
37MORE for Less!
- Lesser coordination and lesser rigidity
- No scheduler
- More flexibility
- Works on top of 802.11 ? enjoy spatial reuse
- One framework for unicast and multicast
- More throughput
- 22 better than ExOR
- 2x better than current routing