lecture 18: mesh networkingcseweb.ucsd.edu/classes/wi18/cse222a-a/lectures/222a-wi...abstract radio...
TRANSCRIPT
-
Lecture 18:Mesh Networking
CSE 222A: Computer Communication NetworksAlex C. Snoeren
Thanks:Sanjit Biswas, Lili Qiu
-
Lecture 18 Overview
● Wireless mesh networks
● ExOR
22CSE 222A – Lecture 18: Mesh Networking
-
● Dense 802.11-based mesh● Goal is high-throughput and capacity
1 kilometer
MIT Roofnet
33CSE 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
44CSE 222A – Lecture 18: Mesh Networking
-
Radios aren’t wires
● Every packet is broadcast● Reception is probabilistic
123456123 63 51 42345612 456 src
A B
dst
C
55CSE 222A – Lecture 18: Mesh Networking
-
packet
packetpacketpacketpacketpacketsrc
A B
dst
C
packetpacketpacket
● Decide who forwards after reception● Goal: only closest receiver should forward● Challenge: agree efficiently and avoid duplicate transmissions
ExOR
66CSE 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%
25%25%
100%
100%
100%
100%
Example scenarios
77CSE 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 dstN1 N2 N3 N4
75%50%
N5
25%
Example scenarios
88CSE 222A – Lecture 18: Mesh Networking
-
Issues to Address● What we want: an effective protocol with low overhead● How often should ExOR run?
u Per packet is expensiveu Use batches
● Who should participate the forwarding? u Too many participants cause large overhead
● When should each participant forward?u Avoid simultaneous transmissions
● What should each participant forward?u Avoid duplicate transmissions
99CSE 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.u Only consider forward delivery rate
» Why?u The source runs a simulation and selects only the
nodes which transmit at least 10% of the total transmission in a batch.
1010CSE 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?u Assume other higher priority nodes send for five
packet durations if not hearing anything from them
When to forward?
1111CSE 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 firstu Other nodes listen, send remaining packets in turn
src
N3
dstN4
tx: 23
tx: 57 -23@ 34
tx: @ 31
tx: 100
rx: 23
rx: 57
rx: 88
rx: 0
rx: 0tx: 0tx: @ 12
N1
N2rx: 45
rx: 18
1212CSE 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,6Batch map: 13032012
1313CSE 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.
1414CSE 222A – Lecture 18: Mesh Networking
-
Example
Forwarder list: N24(dst), N20, N18, N11, N8, N17, N13, N5(src)
1515CSE 222A – Lecture 18: Mesh Networking
-
Using ExOR with TCP
NodeProxy
ExOR
GatewayWeb Proxy
Client PC Web ServerTCP TCP
ExOR Batches (not TCP)
● Batching requires more packets than typical TCP window
1616CSE 222A – Lecture 18: Mesh Networking
-
Evaluation on Roofnet
1 kilometer
1717CSE 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 retransmissionsHop-by-hop batchingUDP, sending as MAC allows
802.11 broadcasts100 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
00 200 400 600 800
Cum
ulat
ive
Frac
tion
of N
ode
Pairs
ExORTraditional
1919CSE 222A – Lecture 18: Mesh Networking
-
25 Highest throughput pairs
Node Pair
Thro
ughp
ut (K
bits
/sec
)
0
200
400
600
800
1000 ExORTraditional Routing
1 Traditional Hop
1.14x
2 Traditional Hops1.7x
3 Traditional Hops2.3x
2020CSE 222A – Lecture 18: Mesh Networking
-
25 Lowest throughput pairs
Node Pair
4 Traditional Hops3.3x
Longer Routes
Thro
ughp
ut (K
bits
/sec
)
0
200
400
600
800
1000 ExORTraditional Routing
2121CSE 222A – Lecture 18: Mesh Networking
-
ExOR uses links in parallel
Traditional Routing3 forwarders
4 links
ExOR7 forwarders
18 links
2222CSE 222A – Lecture 18: Mesh Networking
-
ExOR moves packets farther
● ExOR average: 422 meters/transmission● Traditional Routing average: 205 meters/tx
Frac
tion
of Tr
ansm
issio
ns
0
0.1
0.2
0.6 ExORTraditional Routing
0 100 200 300 400 500 600 700 800 900 1000
Distance (meters)
25% of ExOR transmissions
58% of Traditional Routing transmissions
2323CSE 222A – Lecture 18: Mesh Networking
-
For Next Class…
● Review for quiz Wednesday
2424CSE 222A – Lecture 18: Mesh Networking