Lecture 18: Mesh Networking - Computer...

25
Lecture 18: Mesh Networking CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks:Sanjit Biswas, Lili Qiu

Transcript of Lecture 18: Mesh Networking - Computer...

Page 1: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Lecture 18:Mesh Networking"

CSE 222A: Computer Communication Networks Alex C. Snoeren

Thanks:Sanjit Biswas, Lili Qiu

Page 2: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Lecture 18 Overview"  Wireless mesh networks

  ExOR

2 2 CSE 222A – Lecture 18: Mesh Networking"

Page 3: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

  Dense 802.11-based mesh   Goal is high-throughput and capacity

1 kilometer

MIT Roofnet"

3 3 CSE 222A – Lecture 18: Mesh Networking"

Page 4: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

packet

packet

packet

  Identify a route, forward over links   Abstract radio to look like a wired link

src

A B

dst

C

Multi-hop routing"

4 4 CSE 222A – Lecture 18: Mesh Networking"

Page 5: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Radios aren’t wires"

  Every packet is broadcast   Reception is probabilistic

1 2 3 4 5 6 1 2 3 6 3 5 1 4 2 3 4 5 6 1 2 4 5 6 src

A B

dst

C

5 5 CSE 222A – Lecture 18: Mesh Networking"

Page 6: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

packet

packet packet packet packet packet src

A B

dst

C

packet packet packet

  Decide who forwards after reception   Goal: only closest receiver should forward   Challenge: agree efficiently and avoid duplicate transmissions

ExOR"

6 6 CSE 222A – Lecture 18: Mesh Networking"

Page 7: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

  Traditional routing: 1/0.25 + 1 = 5 tx   ExOR: 1/(1 – (1 – 0.25)4) + 1 = 2.5 transmissions

  Assumes independent losses

N1

src dst

N2

N3

N4

25%

25% 100% 100%

Example scenarios"

7 7 CSE 222A – Lecture 18: Mesh Networking"

Page 8: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

  Best traditional route over 50% hops: 3(1/0.5) = 6 tx   Throughput ≅ 1/# transmissions   ExOR exploits lucky long receptions: 4 transmissions   Assumes probability falls off gradually with distance

src dst N1 N2 N3 N4

75% 50%

N5

25%

Example scenarios"

8 8 CSE 222A – Lecture 18: Mesh Networking"

Page 9: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Issues to Address"  What we want: an effective protocol with low overhead   How often should ExOR run?

◆  Per packet is expensive ◆  Use batches

  Who should participate the forwarding? ◆  Too many participants cause large overhead

  When should each participant forward? ◆  Avoid simultaneous transmissions

  What should each participant forward? ◆  Avoid duplicate transmissions

9 9 CSE 222A – Lecture 18: Mesh Networking"

Page 10: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Who should participate? "  A background process collects ETX

information via periodic link-state flooding.

  The source chooses the participants (forwarder list) using ETX-like metric. ◆  Only consider forward delivery rate

» Why? ◆  The source runs a simulation and selects only the

nodes which transmit at least 10% of the total transmission in a batch.

10 10 CSE 222A – Lecture 18: Mesh Networking"

Page 11: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

  Forwarders are prioritized by ETX-like metric to the destination

  The highest priority forwarder transmits when the batch ends

  The remaining forwarders transmit in prioritized order

  Question: How does each forwarder know it is its turn to transmit? ◆  Assume other higher priority nodes send for five

packet durations if not hearing anything from them

When to forward?"

11 11 CSE 222A – Lecture 18: Mesh Networking"

Page 12: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

ExOR batching"

  Source estimates ETX between each node and the destination

  Source decides on a list of forwarders and prioritizes the list. Let the list be (dst, N4, N3, N2, N1)

  Node closest to the dst sends the overheard packet first ◆  Other nodes listen, send remaining packets in turn

src

N3

dst N4

tx: 23

tx: 57 -23 ≅ 34

tx: ≅ 31

tx: 100

rx: 23

rx: 57

rx: 88

rx: 0

rx: 0 tx: 0 tx: ≅ 12

N1

N2 rx: 45

rx: 18

12 12 CSE 222A – Lecture 18: Mesh Networking"

Page 13: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Which packets: Batch maps"  Batch map indicates, for each packet in a batch,

the highest-priority node known to have received a copy of that packet.

N0

N1

N2

N3

1st round Tx: 1, 2, 3, 4, 5, 6, 7, 8

Forwarder list:

N3(dst), N2, N1, N0 (src)

Rx:2,5,8

Rx: 2,4

Rx: 1,2,7,8 Batch map: 03030000

Batch map: 03032002

Batch map: 13032012

Tx: batch map only

Tx: 5,8

Tx: 1,7

2nd round Tx: 3,6 Batch map: 13032012

13 13 CSE 222A – Lecture 18: Mesh Networking"

Page 14: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

End Game"  A nodes stops sending the remaining packets in the

batch if its batch map indicates over 90% of this batch has been received by higher priority nodes.

  The remaining packets transferred with traditional routing.

14 14 CSE 222A – Lecture 18: Mesh Networking"

Page 15: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Example"

Forwarder list: N24(dst), N20, N18, N11, N8, N17, N13, N5(src)

15 15 CSE 222A – Lecture 18: Mesh Networking"

Page 16: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Using ExOR with TCP"

Node Proxy

ExOR

Gateway

Web Proxy

Client PC Web Server TCP TCP

ExOR Batches (not TCP)

  Batching requires more packets than typical TCP window

16 16 CSE 222A – Lecture 18: Mesh Networking"

Page 17: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Evaluation on Roofnet"

1 kilometer

17 17 CSE 222A – Lecture 18: Mesh Networking"

Page 18: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

  65 Node pairs   1.0-MB file transfer   1 Mbit/s 802.11 bit rate   1-KB packets

Traditional Routing ExOR 802.11 unicast with link-level retransmissions Hop-by-hop batching UDP, sending as MAC allows

802.11 broadcasts 100 packet batch size

Evaluation setup"

Page 19: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Throughput improves"

  Median throughputs: 240 Kbits/sec for ExOR, 121 Kbits/sec for Traditional

Throughput (Kbits/sec)

1.0

0.8

0.6

0.4

0.2

0 0 200 400 600 800 C

umul

ativ

e Fr

actio

n of

Nod

e Pa

irs

ExOR Traditional

19 19 CSE 222A – Lecture 18: Mesh Networking"

Page 20: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

25 Highest throughput pairs"

Node Pair

Thro

ughp

ut (K

bits

/sec

)

0

200

400

600

800

1000 ExOR Traditional Routing

1 Traditional Hop

1.14x

2 Traditional Hops 1.7x

3 Traditional Hops 2.3x

20 20 CSE 222A – Lecture 18: Mesh Networking"

Page 21: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

25 Lowest throughput pairs"

Node Pair

4 Traditional Hops 3.3x

Longer Routes

Thro

ughp

ut (K

bits

/sec

)

0

200

400

600

800

1000 ExOR Traditional Routing

21 21 CSE 222A – Lecture 18: Mesh Networking"

Page 22: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

ExOR uses links in parallel"

Traditional Routing 3 forwarders

4 links

ExOR 7 forwarders

18 links

22 22 CSE 222A – Lecture 18: Mesh Networking"

Page 23: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

ExOR moves packets farther"

  ExOR average: 422 meters/transmission   Traditional Routing average: 205 meters/tx

Frac

tion

of T

rans

mis

sion

s

0

0.1

0.2

0.6 ExOR Traditional Routing

0 100 200 300 400 500 600 700 800 900 1000

Distance (meters)

25% of ExOR transmissions

58% of Traditional Routing transmissions

23 23 CSE 222A – Lecture 18: Mesh Networking"

Page 24: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

Discussion"  Pros

◆  Takes advantage of the probabilistic reception to increase the throughput

◆  Does not require changes in the MAC layer ◆  Can cope well with unreliable wireless medium

  Cons ◆  Batches increase delay ◆  Cannot take advantage of multiple data rates ◆  Forwarders take turns; do not leverage spectral reuse ◆  Does not explicitly support multiple flows or TCP traffic ◆  No framework for exploiting higher data rates

24 24 CSE 222A – Lecture 18: Mesh Networking"

Page 25: Lecture 18: Mesh Networking - Computer Sciencecseweb.ucsd.edu/classes/wi13/cse222A-a/lectures/222A-wi13-l18.pdf · Lecture 18 Overview" Wireless mesh networks ExOR CSE 222A – Lecture

For Next Class…"   Read and review SloMo paper

  Start reviewing for quiz next Thursday

25 25 CSE 222A – Lecture 18: Mesh Networking"