37
Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Embed Size (px)

Citation preview

Page 1: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Trading Coordination For Randomness

Szymon Chachulski Mike Jennings, Sachin Katti, and Dina

Katabi

Page 2: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Wireless mesh networks have high loss rates

Roofnet

Objective: High throughput despite lossy linksObjective: High throughput despite lossy links

Avg. 30% loss

Page 3: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Use Opportunistic Routing

Page 4: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

src

R1

dst

R4

R2

R3

50%0

%

50% 0%

0%

0%

50%

50%

Use Opportunistic Routing

• Best single path loss prob. 50%

Page 5: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

• Best single path loss prob. 50%

• In opp. routing [ExOR’05], any router that hears the packet can forward it loss prob. 0.54 = 6%

Use Opportunistic Routing

Opportunistic routing promises large increase in throughput

Opportunistic routing promises large increase in throughput

src

R1

dst

R4

R2

R3

50%0

%

50% 0%

0%

0%

50%

50%

Page 6: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

ButOverlap in received packets Routers forward

duplicates

Page 7: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

src

R1

dst

But

R2

Overlap in received packets Routers forward duplicates

P1P2

P10

P1P2

P1P2

Page 8: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

src

R1

dst

But

R2

Overlap in received packets Routers forward duplicates

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

P1P2

P10

P1P2

P1P2

Page 9: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Global Scheduling?

• Global coordination is too hard

• One transmitter

src

dst

Page 10: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Global Scheduling?

src

dst

• Global coordination is too hard

• One transmitter You lost spatial reuse!

Does opportunistic routing have to be so complicated? Does opportunistic routing

have to be so complicated?

Page 11: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Our 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

Page 12: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Go Random

Each router forwards random combinations of packets

Page 13: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

src

R1

dst

Go Random

R2

α P1+ ß P2

γ P1+ δ P2

Each router forwards random combinations of packets

Randomness prevents duplicates

No scheduler; No coordination

Simple and exploits spatial reuse

P1P2

P1P2

Page 14: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

src

dst1 dst2 dst3

P1P2P3P4

P1P2 P2

P3 P3P4

P3

P4

P1

P4

P1

P2

Random Coding Benefits Multicast

Without coding source retransmits all 4 packets

Page 15: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

src

dst1 dst2 dst3

P1P2P3P4

P1P2 P2

P3 P3P4

8 P1+5 P2+ P3+3 P4

7 P1+3 P2+6 P3+ P4

P3

P4

P1

P4

P1

P2

Random Coding Benefits Multicast

Without coding source retransmits all 4 packetsWith random coding 2 packets are sufficient

Random combinations

Random coding is more efficient thanglobal coordination

Random coding is more efficient thanglobal coordination

Page 16: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

MORE

Page 17: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

MORE• Source sends packets in batches

• Forwarders keep all heard packets in a buffer

• Nodes transmit linear combinations of buffered packets

src A B dst

P1

P2

P3

P1 P2 P3 =+ b + ca a,b,c

4,1,3

0,2,1

4,1,3

P1 P2 P3 =+ 1 + 34 4,1,3P1 P2 P3 =+ 2 + 10 0,2,1

Can compute linear combinations and sustain high throughput!

Can compute linear combinations and sustain high throughput!

Page 18: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

src A B dst

P1

P2

P3

P1 P2 P3 =+ b + ca a,b,c

4,1,3

0,2,1

4,1,3

=2 + 1 0,2,1 8,4,74,1,3

8,4,7

8,4,7

MORE• Source sends packets in batches

• Forwarders keep all heard packets in a buffer

• Nodes transmit linear combinations of buffered packets

Page 19: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

• Destination decodes once it receives enough combinations Say batch is 3 packets

1,3,2

5,4,5

4,5,5

P1 P2 P3 =+ 3 + 21

P1 P2 P3 =+ 4 + 55

P1 P2 P3 =+ 5 + 54

• Destination acks batch, and source moves to next batch

MORE• Source sends packets in batches

• Forwarders keep all heard packets in a buffer

• Nodes transmit linear combinations of buffered packets

Page 20: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

But 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 Need a Method to Our Madness

A

B

dst

Page 21: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Probabilistic Forwarding

A

B

dst

Page 22: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Probabilistic Forwarding

e1

e1e2

A

B

dst

Src

P1P2

Loss rate 50%

Loss rate 0%

Page 23: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Probabilistic Forwarding

e1

A

B

dst

Src

P1P2

e1

?

50% of buffer

e1e2

e1

How many packets should I

forward?

Page 24: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Probabilistic Forwarding

e1

A

B

dst

Src

P1P2

50%

0%

e1

e1e2

Pr = 0.5

Pr = 1

Compute forwarding probabilities without coordination using loss ratesCompute forwarding probabilities

without coordination using loss rates

Page 25: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

A

B

dst

Pr = 0.5

Pr = 1

Can ExOR Use Probabilistic Forwarding To Remove Coordination?

P1P2

P1P1

P1

• 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

• 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

Probability of duplicates is 50%

Page 26: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

MORE needs to adapt to short-term dynamics

There are known knowns. These are things we know that we

know. There are known unknowns. That is to say, there

are things that we know we don't know. But there are also

unknown unknowns.

Long-term averages are great, but…Wireless is unpredictable over short time-scales

Page 27: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

•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

Adapting to Short-term Dynamics

Page 28: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Performance

Page 29: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Experimental 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

Page 30: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Testbed• 20-node testbed over three floors

Page 31: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Testbed• 20-node testbed over three floors

Avg. loss 27%

Page 32: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Does MORE Improve Wireless Throughput?

Current

MORE

40

80

MORE’s throughput is • 2x better than current routing • 22% better than ExOR

MORE’s throughput is • 2x better than current routing • 22% better than ExOR

Avg. Throughput over 180 src-dst pairs [pkts/s]

ExOR

Page 33: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

0

0.2

0.4

0.6

0.8

1

0 50 100 150 200

Throughput of All Source-Destination Pairs

CDF of 180 source-destination pairs

Throughput [packets/s]

Current

MOREExOR

Page 34: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

0

0.1

0.20.3

0.4

0.5

0.6

0.70.8

0.9

1

0 50 100 150 200Throughput [packets/s]

MORE addresses dead spotsMORE addresses dead spots

4x

Zoom in on the worst 10%

Current

MOREExOR

Page 35: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

Sensitivity to Batch Size

Throughput [packets/s]

0

0.25

0.5

0.75

1

0 50 100 150

ExOR CDF

Batch = 8 pktsBatch = 128 pkts

0

0.25

0.5

0.75

1

0 50 100 150

MORE CDF

Throughput [packets/s]

Batch = 8 pktsBatch = 128 pkts

MORE works for short flows MORE works for short flows

Page 36: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

2 destinations 3 destinations

4 destinations

50

100

What About Multicast?

MORE

Current+200%

+260%

+320%

MORE improves both multicast and unicast throughput

MORE improves both multicast and unicast throughput

Avg. Throughput Per Destination [pkts/s]

Page 37: Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi

MORE 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