opportunistic routing in multi-hop wireless networksbiswas/exor-sigcomm.pdf · opportunistic...
Post on 10-Jul-2020
7 Views
Preview:
TRANSCRIPT
Opportunistic Routing in Multi-hop Wireless Networks
Sanjit Biswas and Robert MorrisMIT CSAIL
http://pdos.csail.mit.edu/roofnet/
ExOR: a new approach to routing in multi-hop wireless networks
• Dense 802.11-based mesh
• Goal is high-throughput and capacity
1 kilometer
packet
packet
packet
Initial approach: Traditional routing
• Identify a route, forward over links
• Abstract radio to look like a wired link
srcsrcsrcsrc
AAAA BBBB
dstdstdstdst
CCCC
Radios aren’t wires
• Every packet is broadcast
• Reception is probabilistic
1 2 3 4 5 61 2 3 63 51 42 3 4 561 2 4 5 6 srcsrcsrcsrc
AAAA BBBB
dstdstdstdst
CCCC
packet
packetpacketpacketpacketpacket
ExOR: exploiting probabilistic broadcast
srcsrcsrcsrc
AAAA BBBB
dstdstdstdst
CCCC
packetpacketpacket
• Decide who forwards after reception• Goal: only closest receiver should forward• Challenge: agree efficiently and avoid duplicate transmissions
Outline
• Introduction
• Why ExOR might increase throughput
• ExOR protocol
• Measurements
• Related Work
Why ExOR might increase throughput (1)
• 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%
Why ExOR might increase throughput (2)
• 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%
Outline
• Introduction
• Why ExOR might increase throughput
• ExOR protocol
• Measurements
• Related Work
ExOR batching
• Challenge: finding the closest node to have rx’d
• Send batches of packets for efficiency
• Node closest to the dst sends first– Other nodes listen, send remaining packets in turn
• Repeat schedule until dst has whole batch
src
N3
dst
N4
tx: 23
tx: 57 -23≅ 24
tx: ≅ 8
tx: 100
rx: 23
rx: 57
rx: 88
rx: 0
rx: 0tx: 0
tx: ≅ 9
rx: 53
rx: 85
rx: 99
rx: 40
rx: 22
N1
N2
Reliable summaries
• Repeat summaries in every data packet
• Cumulative: what all previous nodes rx’d
• This is a gossip mechanism for summaries
src
N1
N2
N3
dst
N4
tx: {1, 6, 7 ... 91, 96, 99}
tx: {2, 4, 10 ... 97, 98}summary: {1,2,6, ... 97, 98, 99}
summary: {1, 6, 7 ... 91, 96, 99}
Priority ordering
• Goal: nodes “closest” to the destination send first• Sort by ETX metric to dst
– Nodes periodically flood ETX “link state” measurements– Path ETX is weighted shortest path (Dijkstra’s algorithm)
• Source sorts, includes list in ExOR header• Details in the paper
src
N1
N2
N3
dst
N4
Using ExOR with TCP
Node
Proxy
ExORExORExORExOR
Gateway
Web Proxy
Client PC Web ServerTCPTCPTCPTCP TCPTCPTCPTCP
ExORExORExORExOR Batches (not TCP)Batches (not TCP)Batches (not TCP)Batches (not TCP)
• Batching requires more packets than typical TCP window
Outline
• Introduction
• Why ExOR might increase throughput
• ExOR protocol
• Measurements
• Related Work
ExOR Evaluation
• Does ExOR increase throughput?
• When/why does it work well?
65 Roofnet node pairs
1 kilometer
Evaluation Details
• 65 Node pairs
• 1.0MByte file transfer
• 1 Mbit/s 802.11 bit rate
• 1 KByte packets
802.11 broadcasts
100 packet batch size
802.11 unicast with link-level retransmissions
Hop-by-hop batching
UDP, sending as MAC allows
ExORTraditional Routing
ExOR: 2x overall improvement
• 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
Cu
mu
lati
ve F
ract
ion
of N
od
e Pa
irs
ExORTraditional
25 Highest throughput pairs
Node Pair
Thro
ug
hp
ut
(Kb
its/
sec)
0
200
400
600
800
1000 ExOR
Traditional Routing
1 Traditional Hop1 Traditional Hop1 Traditional Hop1 Traditional Hop1.14x1.14x1.14x1.14x
2 Traditional Hops2 Traditional Hops2 Traditional Hops2 Traditional Hops1.7x1.7x1.7x1.7x
3 Traditional Hops3 Traditional Hops3 Traditional Hops3 Traditional Hops2.3x2.3x2.3x2.3x
25 Lowest throughput pairs
Node Pair
4 Traditional Hops4 Traditional Hops4 Traditional Hops4 Traditional Hops3.3x3.3x3.3x3.3x
Longer RoutesLonger RoutesLonger RoutesLonger Routes
Thro
ug
hp
ut
(Kb
its/
sec)
0
200
400
600
800
1000 ExOR
Traditional Routing
ExOR uses links in parallel
Traditional Routing3 forwarders
4 links
ExOR7 forwarders
18 links
ExOR moves packets farther
• ExOR average: 422 meters/transmission• Traditional Routing average: 205 meters/tx
Frac
tio
n o
f Tra
nsm
issi
on
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 25% of 25% of 25% of ExORExORExORExOR transmissionstransmissionstransmissionstransmissions
58% of Traditional Routing transmissions58% of Traditional Routing transmissions58% of Traditional Routing transmissions58% of Traditional Routing transmissions
Future Work
• Choosing the best 802.11 bit-rate
• Cooperation between simultaneous flows
• Coding/combining
Related work
• Relay channels[Van der Meulen][Laneman+Wornell]
• Flooding in meshes / sensor nets [Peng][Levis]
• Multi-path routing [Ganesan][Haas]
• Selection Diversity[Miu][Roy Chowdhury][Knightly][Zorzi]
Summary
• ExOR achieves 2x throughput improvement
• ExOR implemented on Roofnet
• Exploits radio properties, instead of hiding them
Thanks!
For more information and source code:http://pdos.csail.mit.edu/roofnet/
top related