CS 577 / EE 537 Advanced Computer Networks Fall 2006 1 ExOR: Opportunistic Multi-Hop Routing for Wireless Networks Sanjit Biswas and Robert Morris M.I.T. Computer Science and Artificial Intelligence Laboratory Sigcomm 2005, Philadelphia Presented by Saurabh Gupta
43
Embed
CS 577 / EE 537 Advanced Computer Networks Fall 2006 1 ExOR: Opportunistic Multi-Hop Routing for Wireless Networks Sanjit Biswas and Robert Morris M.I.T.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
CS 577 / EE 537 Advanced Computer NetworksFall 2006
1
ExOR: Opportunistic Multi-Hop Routing for Wireless Networks
Sanjit Biswas and Robert Morris
M.I.T. Computer Science and Artificial Intelligence Laboratory
Sigcomm 2005, Philadelphia
Presented by
Saurabh Gupta
CS 577 / EE 537 Advanced Computer NetworksFall 2006
2
Content
Background
ExOR: Overview
ExOR: Design
ExOR: Protocol
Evaluation
Summary
CS 577 / EE 537 Advanced Computer NetworksFall 2006
3
Wired Networks differ from Wireless Networks
Fixed nodes and fixed topology
Fixed Links between nodes
Independent Links between neighboring nodes
No great variance in link quality
CS 577 / EE 537 Advanced Computer NetworksFall 2006
4
Challenges for Wireless Routing
Capability constraints- Limited and varying range of transmission- Low Bandwidth Link- Common transmission medium shared by all nodes- Transmit power limitation
Realizes some of the gains of cooperative diversity on standard radio hardware, such as 802.11
Uses broadcasts for large unicast transfers in multi-hop wireless networks
Uses Delayed Forwarding
- does not make the forwarding decision until after reception
- only the “best” receiver of each packet forwards it
- avoids duplication
Operates on batches of packets, to reduce communication cost of agreement
CS 577 / EE 537 Advanced Computer NetworksFall 2006
11
packet
packetpacketpacketpacketpacketsrc
A B
dst
C
packetpacketpacket
ExOR: Basic Functionality
Decide which nodes receive broadcasts
Decide who forwards, after reception
Node closest to the destination forwards
CS 577 / EE 537 Advanced Computer NetworksFall 2006
12
packet
packetpacketpacketpacketpacketsrc
A B
dst
C
packetpacketpacket
ExOR: Basic Functionality(contd…)
CS 577 / EE 537 Advanced Computer NetworksFall 2006
13
N1 N3 N5 N7N6N2 N4 N8S 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
How ExOR might provide more throughput
CS 577 / EE 537 Advanced Computer NetworksFall 2006
14
Traditional routing: 1/0.25 + 1 = 5 transmissions
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%
How ExOR might provide more throughput (contd..)
CS 577 / EE 537 Advanced Computer NetworksFall 2006
15
Background
ExOR: Overview
ExOR: Design
ExOR: Protocol
Evaluation
Summary
CS 577 / EE 537 Advanced Computer NetworksFall 2006
16
ExOR: Design Challenges
Agreement amongst the nodes on which sub-set of them received each packet
Algorithm to decide, from amongst the receiving nodes, the node “closest” to the ultimate destination that forwards the packet
– requires a metric reflecting the likely cost of moving a packet from any node to the destination
Algorithm to choose only the most useful nodes as participants
Avoid simultaneous transmissions by different nodes to minimize collisions
CS 577 / EE 537 Advanced Computer NetworksFall 2006
17
Node States for each batch it participates in
Packet Buffer- stores successfully received packets, according to the batch numbers
Local Forwarder List- is the copy of prioritized list of nodes, copied from one of the packets
- for a given batch, all nodes use same forwarder list as specified by the sender
Forwarding Timer- time at which the node predicts that it should forward packets
- timer set far enough ahead to give higher priority nodes enough time to send
- adjusted when packets from other nodes heard
CS 577 / EE 537 Advanced Computer NetworksFall 2006
18
Node States for each batch it participates in (contd…)
Transmission Tracker- records measured rate of current sending node and expected number of packets left to
send
- used by node to adjust forwarding timer
- adapts to competing traffic
Batch map- indicates, for each packet in a batch, the highest-priority node to have received a copy
of that packet
CS 577 / EE 537 Advanced Computer NetworksFall 2006
19
ExOR: Packet Format
-HdrLen & PayloadLen indicate size of ExOR header and payload respectively
-PktNum is current packet’s offset in the batch, corresponding to the current batch-map entry
-FragSz is size of currently sending node’s fragment (in packets)
-FragNum is current packet’s offset within the fragment
-FwdListSise is is number of forwarders in list
-ForwarderNum is current sender’s offset within the list
-Forwarder List is copy of sender’s local forwarder list
-Batch Map is copy of sending node’s batch map, where each entry is an index into Forwarder List
CS 577 / EE 537 Advanced Computer NetworksFall 2006
20
Background
ExOR: Overview
ExOR: Design
ExOR: Protocol
Evaluation
Summary
CS 577 / EE 537 Advanced Computer NetworksFall 2006
21
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
ExOR: Protocol
CS 577 / EE 537 Advanced Computer NetworksFall 2006
22
Who 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
CS 577 / EE 537 Advanced Computer NetworksFall 2006
23
When 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 node’s 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
CS 577 / EE 537 Advanced Computer NetworksFall 2006
24
What should each participant forward?
Packets it receives yet not received by higher priority forwarders
Each packet includes a copy of the sender’s batch map, containing the sender’s 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
CS 577 / EE 537 Advanced Computer NetworksFall 2006
25
How and When does the process complete?
If a node’s 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 destination’s 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
CS 577 / EE 537 Advanced Computer NetworksFall 2006
26
Gossip Mechanism for Reliable summaries
Repeat summaries in every data packet
Cumulative: what all previous nodes rx’d
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: 5,8
Tx: 1,7
2nd round Tx: 3,6
Batch map: 13032012
CS 577 / EE 537 Advanced Computer NetworksFall 2006
27
Transmission Timeline for an ExOR transfer
N24 not able to listen to N5.
N8 does not send
N17 might have missed some batch-maps
CS 577 / EE 537 Advanced Computer NetworksFall 2006
28
Background
ExOR: Overview
ExOR: Design
ExOR: Protocol
Evaluation
Summary
CS 577 / EE 537 Advanced Computer NetworksFall 2006
29
1 kilometer
65 Roofnet node pairs
CS 577 / EE 537 Advanced Computer NetworksFall 2006
Reported values are median of nine experimental runs, to reduce effect from other user traffic and other sources
CS 577 / EE 537 Advanced Computer NetworksFall 2006
31
Throughput (Kbits/sec)
1.0
0.8
0.6
0.4
0.2
00 200 400 600 800C
um
ula
tive F
ract
ion o
f N
ode P
air
s
ExORTraditional
ExOR: 2x Improvement in throughput
Median throughputs: 240 Kbits/sec for ExOR, 121 Kbits/sec for Traditional
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.
CS 577 / EE 537 Advanced Computer NetworksFall 2006
32
25 Highest throughput pairs
Node Pair
Thro
ughput
(Kbit
s/se
c)
0
200
400
600
800
1000 ExORTraditional Routing
1 Traditional Hop
1.14x
2 Traditional Hops1.7x
3 Traditional Hops2.3x
For single hop pairs ExOR provides the advantage of lower probability of source resending packets, as there’s higher probability of source receiving the destination’s 10 batch-map packets
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.
CS 577 / EE 537 Advanced Computer NetworksFall 2006
33
25 Lowest throughput pairs
Node Pair
4 Traditional Hops3.3x
Longer Routes
Thro
ughput
(Kbit
s/se
c)
0
200
400
600
800
1000 ExORTraditional Routing
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
CS 577 / EE 537 Advanced Computer NetworksFall 2006
34
Retransmissions affected by selection of hops
Traditional routing has to select the ‘shortest’ path which results in compromise on selecting drop probability, thus increasing the number of transmissions
ExOR has no limitations on number of nodes, from the forwarder list, that can forward the packet. Hence it uses both nodes closer to source and nodes closer to destination, irrespective of their drop probability
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.
CS 577 / EE 537 Advanced Computer NetworksFall 2006
35
ExOR moves packets farther
Figure 12: Distance traveled towards N24 in ETX space by each transmission. The X axis indicates the di®erence 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).
Max. distance traveled by hops in traditional routing
Distance traveled by transmissions in ExOR
Big chunk of transmission, in traditional routing, takes place over shorter distances
Number of packets carried over individual long distance links is small
But cumulative transmission is substantial
CS 577 / EE 537 Advanced Computer NetworksFall 2006
36
ExOR moves packets farther
Delivery Probability decreases with distance ExOR average: 422 meters/transmission Traditional Routing average: 205 meters/tx
Fract
ion o
f Tra
nsm
issi
ons
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
CS 577 / EE 537 Advanced Computer NetworksFall 2006
37
ExOR uses links in parallel
Traditional Routing3 forwarders
4 links
ExOR7 forwarders
18 links
CS 577 / EE 537 Advanced Computer NetworksFall 2006
38
Batch 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
CS 577 / EE 537 Advanced Computer NetworksFall 2006
39
Background
ExOR: Overview
ExOR: Design
ExOR: Protocol
Evaluation
Summary
CS 577 / EE 537 Advanced Computer NetworksFall 2006
40
Summary
Integrated routing and MAC protocol for Multi-Hop Wireless Networks
Uses Delayed forwarding mechanism, whereby the forwarding decision is made only after reception of packets
Takes advantage of the probabilistic nature of wireless broadcast transmissions, and does not hide it
ExOR does not require separate control signals for agreement
Forwarding based on reception of the given data packets and not on signal
strength measurements or previous control/data packets
Less dependent upon channel stability
“Gossip” mechanism reduces the likelihood of duplicate transmissions
CS 577 / EE 537 Advanced Computer NetworksFall 2006