380 likes | 563 Views
Opportunistic Multi-Hop Routing for Wireless Networks Sanjit Biswas and Robert Morris M.I.T. Computer Science and Artificial Intelligence Lab. Introduction Motivation Background Basic Idea of how ExOR works Why ExOR works ? Design Challenges Results and Evaluation Conclusion.
E N D
Opportunistic Multi-Hop Routing for Wireless Networks Sanjit Biswas and Robert Morris M.I.T. Computer Science and Artificial Intelligence Lab
Introduction • Motivation • Background • Basic Idea of how ExOR works • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
An integrated routing and MAC protocol • Aims to increase the throughput of large unicast transfers in multi hop wireless networks. • Based on cooperative diversity routing
Introduction • Motivation • Background • Basic Idea of how ExOR works • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
Why the need for a new routing protocol ? • Traditional routing protocols were designed for wired networks. • These protocols don’t take into account underlying wireless dynamics at MAC and PHY layer.
Reference : 802.11 Wireless Networks: The Definitive Guide O'Reilly Publications . Mathew Gast. April 2005
RF Link Quality – As compared to wired Ethernet, 802.11 has to deal with interference, noise and multipath fading in unlicensed bands which results in loss of packets. • Solution – Positive Acknowledgments • When ACK doesn’t arrive , packet is retransmitted. Reference : 802.11 Wireless Networks: The Definitive Guide O'Reilly Publications . Mathew Gast. April 2005
ExOR tries to avoid these retransmissions by relying on cooperative diversity scheme. Reference : 802.11 Wireless Networks: The Definitive Guide O'Reilly Publications . Mathew Gast. April 2005
Introduction • Motivation • Background • Basic Idea of how ExOR works • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
Routing Protocols Traditional Routing Protocols Choose Best Sequence of nodes Between source and Destination Cooperative Diversity Protocols Uses broadcast transmission to Send info through multiple relays
Classic network architectures employ point to point transmissions. • Cooperative transmission takes advantage of broadcast transmission to send information through multiple relays concurrently. • Originally meant to avoid multipath fading.
Introduction • Motivation • Background • ExOR • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
ExOR broadcasts each packet, choosing a receiver to forward only after learning the set of nodes that actually received the packet. • By delaying this decision until after reception, multiple long but radio lossy links are given a trial.
Source Source Destination Destination Traditional Routing ExOR Routing
Source Source Destination Destination Traditional Routing ExOR Routing
Source Source Destination Destination Traditional Routing ExOR Routing
Source Source Destination Destination Traditional Routing ExOR Routing
Source Source Destination Destination Traditional Routing ExOR Routing
Source Source Destination Destination Traditional Routing ExOR Routing
Introduction • Motivation • Background • ExOR • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
src N1 N2 N3 N4 N5 dst 75% 50% 25% • 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 Reference : pdos.csail.mit.edu/~biswas/exor-sigcomm.ppt
N1 25% 100% 25% 100% N2 100% 25% src dst N3 100% 25% N4 • Traditional routing: 1/0.25 + 1 = 5 tx • ExOR: 1/(1 – (1 – 0.25)4) + 1 = 2.5 transmissions • Assumes independent losses Reference : pdos.csail.mit.edu/~biswas/exor-sigcomm.ppt
Introduction • Motivation • Background • Basic Idea of how ExOR works • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
Agreement amongst the nodes which received each packet. • Need for a metric which decides the node which is closest to the destination. • Not too many nodes should be potential forwarders. • Minimize collisions.
Agreement amongst the nodes which received each packet. • Agreement protocol should have low overhead. Solution -- Batch Forwarding and Node State
rx: 0 rx: 57 rx: 0 rx: 88 rx: 23 tx:0 N2 N4 tx:100 tx:57 -23 24 tx:9 src dst N1 N3 tx: 8 tx:23 • 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 Reference : pdos.csail.mit.edu/~biswas/exor-sigcomm.ppt
Each node maintains this for each batch of packets its operating on. • Packet Buffer • Local Forwarder List • Forwarding timer • Transmission Tracker • Batch Map
N2 N4 src dst N1 N3 • 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 Reference : pdos.csail.mit.edu/~biswas/exor-sigcomm.ppt
Introduction • Motivation • Background • Basic Idea of how ExOR works • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
65 Node pairs • 1.0MByte file transfer • 1 Mbit/s 802.11 bit rate • 1 KByte packets Reference : pdos.csail.mit.edu/~biswas/exor-sigcomm.ppt
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) • Median throughputs: 240 Kbits/sec for ExOR, 121 Kbits/sec for Traditional Reference : pdos.csail.mit.edu/~biswas/exor-sigcomm.ppt
1000 ExOR 4 Traditional Hops 3.3x TraditionalRouting 800 600 Throughput (Kbits/sec) 400 200 0 Node Pair Longer Routes Reference : pdos.csail.mit.edu/~biswas/exor-sigcomm.ppt
Introduction • Motivation • Background • Basic Idea of how ExOR works • Why ExOR works ? • Design Challenges • Results and Evaluation • Conclusion
Positives • Works well on long range links • Works well on one hop links • Weaknesses • Doesn’t integrate well with TCP • Working with multiple radios