Lecture 18: Mesh Networking - Computer...
Transcript of Lecture 18: Mesh Networking - Computer...
Lecture 18:Mesh Networking"
CSE 222A: Computer Communication Networks Alex C. Snoeren
Thanks:Sanjit Biswas, Lili Qiu
Lecture 18 Overview" Wireless mesh networks
ExOR
2 2 CSE 222A – Lecture 18: Mesh Networking"
Dense 802.11-based mesh Goal is high-throughput and capacity
1 kilometer
MIT Roofnet"
3 3 CSE 222A – 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"
4 4 CSE 222A – Lecture 18: Mesh Networking"
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"
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"
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"
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"
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"
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"
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"
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"
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"
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"
Example"
Forwarder list: N24(dst), N20, N18, N11, N8, N17, N13, N5(src)
15 15 CSE 222A – Lecture 18: Mesh Networking"
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"
Evaluation on Roofnet"
1 kilometer
17 17 CSE 222A – Lecture 18: Mesh Networking"
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"
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"
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"
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"
ExOR uses links in parallel"
Traditional Routing 3 forwarders
4 links
ExOR 7 forwarders
18 links
22 22 CSE 222A – Lecture 18: Mesh Networking"
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"
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"
For Next Class…" Read and review SloMo paper
Start reviewing for quiz next Thursday
25 25 CSE 222A – Lecture 18: Mesh Networking"