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

Lecture 18: Mesh Networking...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" CSE 222A – Lecture

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture 18: Mesh Networking...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" 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...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" CSE 222A – Lecture

Lecture 18 Overview"

●  Wireless mesh networks

●  ExOR

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

Page 3: Lecture 18: Mesh Networking...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" CSE 222A – Lecture

Evaluation on Roofnet"

1 kilometer

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

Page 18: Lecture 18: Mesh Networking...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" 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...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" 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...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" 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...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" 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...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" 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...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" 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...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" CSE 222A – Lecture

For Next Class…" ●  Read and review SloMo paper

●  Start reviewing for quiz next Thursday

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