Title: Opportunistic Routing in MultiHop Wireless Networks
1ExOR Opportunistic Multi-Hop Routing for
Wireless Networks
Sanjit Biswas and Robert Morris M.I.T. Computer
Science and Artificial Intelligence Laboratory
Presented by Deepak Bastakoty
With slides from Sanjit Biswas, Robert Morris,
(MIT) Saurabh Gupta (WPI) Yao Zhao (Northwestern)
2Multi-Hop Wireless Networks
2km
Gateway
Gateways
2km
- Dense 802.11b-based mesh, all sorts of loss rates
- Goal is efficiency and high-throughput
3The Traditional View
packet
packet
packet
A
B
src
dst
packet
packet
C
- Identify a route, forward over links
- Use link level retransmissions
4How Radios Actually Work
A
B
src
dst
1
2
3
4
5
6
1
2
3
6
3
5
1
4
2
3
4
5
6
1
2
4
5
6
C
- Every packet is broadcast
No such thing as a link
5ExOR Exploiting the Insight
A
B
src
dst
packet
packet
packet
packet
packet
C
packet
packet
packet
packet
- Figure out which nodes rxd broadcast
- Node closest to destination forwards
6ExOR Exploiting the Insight
packet
packet
packet
packet
A
B
src
dst
packet
packet
packet
packet
packet
C
- Figure out which nodes rxd broadcast
- Node closest to destination forwards
7ExORs Assumptions
- Many receivers hear every broadcast
- Gradual distance-vs-reception tradeoff
- Receiver losses are uncorrelated
A
B
src
dst
C
81. Multiple Receivers per Transmission
- Broadcast tests on rooftop network
- Source sends packets at max rate
- Receivers record delivery ratios
- Omni-directional antennas
- Multiple nodes in radio range
100
1km
75
50
25
0
S
92. Gradual Distance vs. Reception Tradeoff
Same Source
Delivery Ratio
Distance (meters)
- Wide spread of ranges, delivery ratios
- Transmissions may get lucky and travel long
distances
103. Receiver Losses are Uncorrelated
Example Broadcast trace
Receiver 1 (38)
Receiver 2 (40)
Receiver 3 (74)
Receiver 4 (12)
- Two 50 links dont lose the same 50 of packets
- Losses not due to common source of interference
11Extremely Opportunistic Routing (ExOR) Design
Goals
- Ensure only one receiver forwards the packet
- The receiver closest to the destination should
forward - Lost agreement messages may be common
- Lets not get eaten alive by overheads
12How ExOR might provide more throughput
N5
N1
N3
N7
N6
N2
N4
N8
S
D
Traditional Path
- Traditional routing must compromise between hops
to choose ones that are long enough to make good
progress but short enough for low loss rate - With ExOR each transmission may have more
independent chances of being received and
forwarded - It takes advantage of transmissions that reach
unexpectedly far, or fall unexpectedly short
13How ExOR might provide more throughput (contd..)
N1
25
100
N2
25
100
src
dst
100
25
N3
100
25
N4
- Traditional routing 1/0.25 1 5 transmissions
- ExOR 1/(1 (1 0.25)4) 1 2.5 transmissions
- Assumes independent losses
14ExOR Protocol
- How often should ExOR run?
- Per packet is expensive
- Use batches
- Who should participate in the forwarding?
- Too many participants cause large overhead
- When should each participant forward?
- Avoid simultaneous transmission
- What should each participant forward?
- Avoid duplicate transmission
- How and When does the process complete?
- Identify the convergence of the algorithm
Jump Ahead
15Who should participate?
- The source chooses the participants (forwarder
list) using ETX-like metric - Only considers forward delivery rate
- The source runs a simulation and selects only the
nodes which transmit at least 10 of the total
transmission in a batch - A background process collects ETX information via
periodic link-state flooding
16When should each participant forward?
- Forwarders are prioritized by ETX-like metric to
the destination - Receiving nodes buffer successfully received
packets till the end of the batch - The highest priority forwarder transmits from its
buffer when the batch ends - These transmissions are called the nodes
fragment of the batch - 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
17What should each participant forward?
- Packets it receives yet not received by higher
priority forwarders - Each packet includes a copy of the senders batch
map, containing the senders best guess of the
highest priority node to have received each
packet in the batch - Question How does a node know the set of packets
received by higher priority nodes? - Using batch map
18How and When does the process complete?
- If a nodes batch map indicates that over 90 of
the batch has been received by higher priority
nodes, the node sends nothing when its turn comes - When ultimate destinations turn comes to send,
it transmits 10 packets including only its batch
map and no data - Question How is the remaining 10 data
delivered? - Using traditional routing
19Who Received the Packet?
Standard unicast 802.11 frame with ACK
payload
ACK
src
dest
src
dest
ExOR frame with slotted ACKs
payload
ACK1
cand1
cand2
cand3
src
ACK2
ACK3
src
cand1
cand2
cand3
- Slotting prevents collisions (802.11 ACKs are
synchronous) - Only 2 overhead per candidate, assuming 1500
byte frames
20Slotted ACK Example
A
B
C
D
- Packet to be forwarded by Node C
- But if ACKs are lost, causes confusion
21Agreeing on the Best Candidate
A
B
C
D
X
X
- A Sends frame with (D, C, B) as candidate set
D Broadcasts ACK D in first slot (not rxd
by C, A)
C Broadcasts ACK C in second slot (not rxd
by D)
B Broadcasts ACK D in third slot
Node D is now responsible for forwarding the
packet
22ExOR Packet Format
- HdrLen PayloadLen indicate size of ExOR header
and payload respectively - PktNum is current packets offset in the batch,
corresponding to the current batch-map entry - FragSz is size of currently sending nodes
fragment (in packets) - FragNum is current packets offset within the
fragment - FwdListSise is is number of forwarders in list
- ForwarderNum is current senders offset within
the list - Forwarder List is copy of senders local
forwarder list - Batch Map is copy of sending nodes batch map,
where each entry is an index into Forwarder List
23Transmission Timeline for an ExOR transfer
N24 not able to listen to N5.
N8 does not send
N17 might have missed some batch-maps
24Preliminary Concept Evaluation
- Strengths
- ExOR is nimble
- Efficient in total number of packet transmissions
- Weaknesses
- Requires (partial) link-state graph
- Candidate selection is tricky
- Requires changes to MAC
2565 Roofnet node pairs
1 kilometer
26ExOR 2x Improvement in throughput
1.0
0.8
0.6
Cumulative Fraction of Node Pairs
0.4
0.2
ExOR
Traditional
0
0
200
400
600
800
Throughput (Kbits/sec)
Figure 8 The distribution of throughputs of ExOR
and traditional routing between the 65 node
pairs. The plots shows the median throughput
achieved for each pair over nine experimental
runs.
Median throughputs 240 Kbits/sec for ExOR,
121 Kbits/sec for Traditional
2725 Highest throughput pairs
1 Traditional Hop 1.14x
2 Traditional Hops 1.7x
3 Traditional Hops 2.3x
1000
ExOR
Traditional Routing
800
600
Throughput (Kbits/sec)
400
200
0
Node Pair
Figure 9 The 25 highest throughput pairs, sorted
by traditional routing throughput. The bars show
each pair's median throughput, and the error bars
show the lowest and highest of the nine
experiments.
- For single hop pairs ExOR provides the advantage
of lower probability of source resending packets,
as theres higher probability of source receiving
the destinations 10 batch-map packets
2825 Lowest throughput pairs
1000
ExOR
4 Traditional Hops 3.3x
Traditional Routing
800
600
Throughput (Kbits/sec)
400
200
0
Node Pair
Longer Routes
Figure 10 The 25 lowest throughput pairs. The
bars show each pair's median throughput, and the
error bars show the lowest and the highest of the
nine experiments. ExOR outperforms traditional
routing by a factor of two or more.
- As number of node pairs increases along a route,
the likelihood of increased choice of forwarding
nodes and multiple ways to gossip back
batch-maps, increases - With greater routing length ExOR is able to take
advantage of asymmetric links also
29Retransmissions affected by selection of hops
Figure 11 The number of transmissions made by
each node during a 1000-packet transfer from N5
to N24. The X axis indicates the sender's ETX
metric to N24. The Y axis indicates the number of
packet transmissions that node performs. Bars
higher than 1000 indicate nodes that had to
re-send packets due to losses.
30ExOR moves packets farther
Figure 12 Distance traveled towards N24 in ETX
space by each transmission. The X axis indicates
the dierence in ETX metric between the sending
and receiving nodes the receiver is the next hop
for traditional routing, and the highest-priority
receiving node for ExOR. The Y axis indicates the
number of transmissions that travel the
corresponding distance. Packets with zero
progress are not received by the next hop (for
traditional routing) or by any higher-priority
node (for ExOR).
31ExOR moves packets farther
0.6
ExOR
Traditional Routing
0.2
Fraction of Transmissions
0.1
0
0
100
200
300
400
500
600
700
800
900
1000
Distance (meters)
- Delivery Probability decreases with distance
- ExOR average 422 meters/transmission
- Traditional Routing average 205 meters/tx
32ExOR uses links in parallel
Traditional Routing 3 forwarders 4 links
ExOR 7 forwarders 18 links
33Batch Size
- ExOr header grows with the batch size
- Large batches work well for low-throughput pairs
due to redundant batch map transmissions - Small batches work well for high throughput pairs
due to lower header overhead
34Critical Analysis
- Static
- No mobility
- Small Scale
- Tens of nodes
- Dense network
- - Maybe Only Rooftop Networks
- File downloading application
- No voice, maybe not web (No reliable guarantee)
- No Cross Traffic
35Static
- Knowing the whole topology
- In a mobile network, this is expensive
- EXT is costly
- Measure link states of all possible links
- Route change
- During a batch, route may change
36Small Scale
- Knowing the whole topology
- In a mobile network, this is expensive
- EXT is costly
- Measure link states of all possible links
- Large overhead in ExOR packet header
- All the forwarders are included in ExOR header
- Long vain waiting of forwarding timer
- The larger the network, the longer the average
distance between S and D, the more forwarders in
the list - Traditional header (2448 -gt 8 if AODV)
- ExOR header (44114 for 38-node network)
37Dense Networks
A
C
S
E
X
B
D
38Dense Networks
39More Critical AnalysisYao Zhao (Northwestern)
- No TCP and hence proxy
- Voice
- Jitter
- Web service
- Is batch good?
- May introduce large delay
- Large file download
- Best for ExOR
40Cross TrafficYao Zhao (Northwestern)
- Forwarding timer
- Give higher-priority nodes enough time to send?
- Assume 5 packets sent if a node cannot hear
another node with higher priority hard to
justify heuristic. Also, forwarders could be
consistently mutually inaccessible - 802.11 use CSMA/CA, competition based MAC
- If there is cross traffic, hard to estimate the
transmission time of other nodes
41Unfair Comparison ?Yao Zhao (Northwestern)
- Bad Traditional routing (DSR)
- Dont think about link state changing
- Long packet header
- Send the entire file to the next node before the
next node starts sending - Bad MAC Selection
- Retransmit packet if ACK is lost
- Why not packet train?
- A Paper in 2005 compared to some works before
1999 ?
42Questions?
43Acknowledgements
- Many sketches, animated-diagrams, as well as some
text have been sourced from the following
materials- - Course material on Net Centric Systems taught
at TECHNISCHE UNIVERSITÄT DARMSTADT - Presentation on A High Throughput Route-Metric
for Multi-Hop Wireless Routing by Eric Rozner of
University of Texas, Austin - Presentation on ExOR Opportunistic Multi-Hop
Routing for Wireless Networks, by Sanjit Biswas
and Robert Morris at Siggcomm - ExOR Opportunistic Multi-Hop Routing for
Wireless Networks - Sanjit Biswas and Robert
Morris - Presentation on ExOR Opportunistic Multi-Hop
Routing for Wireless Networks, by Avijit of
University of California, Santa Barbara - Presentation on ExOR Opportunistic Multi-Hop
Routing for Wireless Networks, by Yu Sun of
University of Texas, Austin - Presentation on ExOR Opportunistic Multi-Hop
Routing for Wireless Networks, by Gaurav Gupta,
University of Southern California - Presentation on ExOR Opportunistic Multi-Hop
Routing for Wireless Networks, by Ao-Jan Su,
Northwestern University