430 likes | 731 Views
ExOR: 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).
E N D
ExOR: 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)
Multi-Hop Wireless Networks • Dense 802.11b-based mesh, all sorts of loss rates • Goal is efficiency and high-throughput 2km Gateway Gateways 2km
The Traditional View packet packet packet • Identify a route, forward over links • Use link level retransmissions A B src dst packet packet C
How Radios Actually Work • Every packet is broadcast A B src dst 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 1 1 2 3 4 5 6 1 C No such thing as a link
ExOR: Exploiting the Insight • Figure out which nodes rx’d broadcast • Node closest to destination forwards A B src dst packet packet packet packet packet C packet packet packet packet
ExOR: Exploiting the Insight packet packet packet packet • Figure out which nodes rx’d broadcast • Node closest to destination forwards A B src dst packet packet packet packet packet C
ExOR’s Assumptions • Many receivers hear every broadcast • Gradual distance-vs-reception tradeoff • Receiver losses are uncorrelated A B src dst C
1. 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
2. Gradual Distance vs. Reception Tradeoff • Wide spread of ranges, delivery ratios • Transmissions may “get lucky” and travel long distances Same Source Delivery Ratio Distance (meters)
3. Receiver Losses are Uncorrelated • Two 50% links don’t lose the same 50% of packets • Losses not due to common source of interference Example Broadcast trace: Receiver 1 (38%): Receiver 2 (40%): Receiver 3 (74%): Receiver 4 (12%):
Extremely 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 • Let’s not get eaten alive by overheads
How ExOR might provide more throughput N5 S N1 N2 N3 N4 N6 N7 N8 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 (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
ExOR: 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
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
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
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
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
Who Received the Packet? Standard unicast 802.11 frame with ACK: • Slotting prevents collisions (802.11 ACKs are synchronous) • Only 2% overhead per candidate, assuming 1500 byte frames src dest payload ACK src dest ExOR frame with slotted ACKs: src cand1 cand2 cand3 payload ACK1 ACK2 ACK3 src cand1 cand2 cand3
X A D C B payload ACK ACK A D C B Slotted ACK Example • Packet to be forwarded by Node C • But if ACKs are lost, causes confusion A B C D
X Agreeing on the Best Candidate A: Sends frame with (D, C, B) as candidate set A B C D X X D: Broadcasts ACK “D” in first slot (not rx’d by C, A) C: Broadcasts ACK “C” in second slot (not rx’d by D) B: Broadcasts ACK “D” in third slot Node D is now responsible for forwarding the packet
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
Transmission Timeline for an ExOR transfer N24 not able to listen to N5. N8 does not send N17 might have missed some batch-maps
Preliminary 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
65 Roofnet node pairs 1 kilometer
ExOR: 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
25 Highest throughput pairs 3 Traditional Hops 2.3x 2 Traditional Hops 1.7x 1 Traditional Hop 1.14x 1000 ExOR TraditionalRouting 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 there’s higher probability of source receiving the destination’s 10 batch-map packets
25 Lowest throughput pairs 1000 ExOR 4 Traditional Hops 3.3x TraditionalRouting 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
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 Retransmissions 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.
Big chunk of transmission, in traditional routing, takes place over shorter distances Max. distance traveled by hops in traditional routing Distance traveled by transmissions in ExOR But cumulative transmission is substantial Number of packets carried over individual long distance links is small 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).
58% of Traditional Routing transmissions 25% of ExOR transmissions ExOR 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
ExOR uses links in parallel Traditional Routing 3 forwarders 4 links ExOR 7 forwarders 18 links
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
Critical 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
Static • 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
Small 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 (24~48 -> 8 if AODV) • ExOR header (44~114 for 38-node network)
Dense Networks A C S E X B D
More 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
Cross 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
Unfair Comparison ?Yao Zhao (Northwestern) • Bad Traditional routing (DSR) • Don’t 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 ?
Acknowledgements 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