Prof. Marco Aurélio Spohn

Slides:



Advertisements
Similar presentations
Unicast Routing Protocols for Ad Hoc Networks Kumar Viswanath CMPE 293.
Advertisements

1 Chapter 04 Routing in Ad Hoc Networks Mobile Ad Hoc Networks (MANET) Introduction and Generalities.
Network Layer Routing Issues (I). Infrastructure vs. multi-hop Infrastructure networks: Infrastructure networks: ◦ One or several Access-Points (AP) connected.
MANETs Routing Dr. Raad S. Al-Qassas Department of Computer Science PSUT
Advanced Topics in Next-Generation Wireless Networks
Mobile Ad-Hoc Networks (MANET)
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #4 Mobile Ad-Hoc Networks AODV Routing.
Revisiting On Demand Routing On Demand Routing schemes are reactive – a route is found when needed. This precludes the periodic exchange of routing tables.
1 Routing in Mobile Ad Hoc Networks most slides taken with permission from presentation of Nitin H. Vaidya University of Illinois at Urbana-Champaign.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Mobile Ad Hoc Networks Routing 9th Week Christian.
ITIS 6010/8010 Wireless Network Security Dr. Weichao Wang.
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
CS541 Advanced Networking 1 Mobile Ad Hoc Networks (MANETs) Neil Tang 02/02/2009.
Winter CMPE 155 Week 9. Winter Project 8 Setting up wireless ad hoc network. Designing/implementing application- level neighbor discovery.
Spring 2005UCSC CMPE2571 CMPE 257: Wireless Networking SET 4: Unicast Routing in MANETs.
1 Mobile Ad Hoc Networks (MANET). 2 Mobile Ad Hoc Networks  Formed by wireless hosts which may be mobile  Without (necessarily) using a pre-existing.
Comparison of Routing Metrics for Static Multi-Hop Wireless Networks Richard Draves, Jitendra Padhye and Brian Zill Microsoft Research Presented by Hoang.
Aodv. Distance vector routing Belman principle AODV - overview Similar to DSR –On demand –Route request when needed and route reply when a node knows.
Ad Hoc Wireless Routing COS 461: Computer Networks
Routing Two papers: Location-Aided Routing (LAR) in mobile ad hoc networks (2000) Ad-hoc On-Demand Distance Vector Routing (1999)
ENHANCING AND EVALUATION OF AD-HOC ROUTING PROTOCOLS IN VANET.
Slides from Prof. Sridhar Iyer, IIT Bombay
Mobile Ad Hoc Networks: Routing, MAC and Transport Issues Material in this slide set are from a tutorial by Prof. Nitin Vaidya 1.
Itrat Rasool Quadri ST ID COE-543 Wireless and Mobile Networks
Dsr – dynamics source routing. basics Two types of routing –On-demand / reactive Information is only collected when required, I.e., when a packet needs.
1 Spring Semester 2009, Dept. of Computer Science, Technion Internet Networking recitation #3 Mobile Ad-Hoc Networks AODV Routing.
Mobile Routing protocols MANET
Mobile Adhoc Network: Routing Protocol:AODV
Ad hoc On-demand Distance Vector (AODV) Routing Protocol ECE 695 Spring 2006.
Ad-hoc On-Demand Distance Vector Routing (AODV) and simulation in network simulator.
Ad-Hoc Networks. References r Elizabeth Royer and Chai-Keong Toh, " A Review of Current Routing Protocols for Ad Hoc Wireless Mobile Networks, " IEE Personal.
Routing Protocols of On- Demand Dynamic Source Routing (DSR) Ad-Hoc On-Demand Distance Vector (AODV)
Ad Hoc Routing: The AODV and DSR Protocols Speaker : Wilson Lai “Performance Comparison of Two On-Demand Routing Protocols for Ad Hoc Networks”, C. Perkins.
1 ECE453 – Introduction to Computer Networks Lecture 13 – Network Layer (V) -
Routing Protocols for Mobile Ad-Hoc Networks By : Neha Durwas For: Professor U.T. Nguyen COSC 6590.
1 Dynamic Source Routing in Ad Hoc Wireless Networks David B. Johnson and David A. Maltz published in the book “Mobile Computing” 1996.
1 Mobile Ad Hoc Networks for CSC 453 Sp 2011 From a tutorial by Nitin H. Vaidya University of Illinois at Urbana-Champaign.
Routing in Mobile Ad Hoc Networks (from Ad Hoc Networking by Charles Perkins) Thanks to Prof. Yu at Cleveland State Univ.
Asstt. Professor Adeel Akram. Infrastructure vs. multi-hop Infrastructure networks: One or several Access-Points (AP) connected to the wired network.
1 Ad Hoc On-Demand Distance Vector Routing (AODV) Dr. R. B. Patel.
AODV: Introduction Reference: C. E. Perkins, E. M. Royer, and S. R. Das, “Ad hoc On-Demand Distance Vector (AODV) Routing,” Internet Draft, draft-ietf-manet-aodv-08.txt,
DSR: Introduction Reference: D. B. Johnson, D. A. Maltz, Y.-C. Hu, and J. G. Jetcheva, “The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks,”
Traditional Routing A routing protocol sets up a routing table in routers A node makes a local choice depending on global topology.
Background of Ad hoc Wireless Networks Student Presentations Wireless Communication Technology and Research Ad hoc Routing and Mobile IP and Mobility Wireless.
Intro DSR AODV OLSR TRBPF Comp Concl 4/12/03 Jon KolstadAndreas Lundin CS Ad-Hoc Routing in Wireless Mobile Networks DSR AODV OLSR TBRPF.
Session 15 Mobile Adhoc Networks Prof. Sridhar Iyer IIT Bombay
Paper Reviews Written reviews for each paper to be discussed in class are due by noon on Fridays of the previous week The soft copy of the reviews should.
a/b/g Networks Routing Herbert Rubens Slides taken from UIUC Wireless Networking Group.
Ασύρματα Δίκτυα και Κινητές Επικοινωνίες Ενότητα # 13: Δρομολόγηση σε Κινητά Αδόμητα Δίκτυα (Mobile Ad Hoc Networks) Διδάσκων: Βασίλειος Σύρης Τμήμα: Πληροφορικής.
Dynamic Source Routing in Ad Hoc Wireless Networks
1 Mobile Ad Hoc Networks (MANET) Introduction and Generalities.
Routing in Mobile Ad Hoc Network (MANET)
Ad Hoc On-Demand Distance Vector Routing (AODV) ietf
Doc.: IEEE /0174r1 Submission Hang Liu, et al. March 2005 Slide 1 A Routing Protocol for WLAN Mesh Hang Liu, Jun Li, Saurabh Mathur {hang.liu,
Mobile Ad Hoc Networks. What is a MANET (Mobile Ad Hoc Networks)? Formed by wireless hosts which may be mobile No pre-existing infrastructure Routes between.
Mobile Computing CSE 40814/60814 Spring 2017.
Internet Networking recitation #4
Sensor Network Routing
Slides courtesy of Nitin Texas A&M
Mobile and Wireless Networking
Mobile Computing CSE 40814/60814 Spring 2018.
CSCI {4,6}900: Ubiquitous Computing
Mobile Ad-hoc Networks (MANET)
Folien aus: Mobile Ad Hoc Networks: Routing, MAC and Transport Issues
Overview: Chapter 3 Networking sensors
Routing.
Vinay Singh Graduate school of Software Dongseo University
A Routing Protocol for WLAN Mesh
Routing in Mobile Wireless Networks Neil Tang 11/14/2008
A Talk on Mobile Ad hoc Networks (Manets)
Presentation transcript:

Prof. Marco Aurélio Spohn Unicast Routing in MANETs Prof. Marco Aurélio Spohn COPIN/UFCG 2010.1 Excerpt from presentation by Prof. Garcia-Luna-Aceves and Katia O. (CMPE 257 - Wireless and Mobile Networking, University of California Santa Cruz, Spring 2005)

Ad-Hoc Routing Requirements Dissemination of routing information Multi-hop paths Loop free all the time, or almost loop-free Limited signaling overhead. Self configuring, and adaptive to dynamic topology. Low consumption of communication bandwidth, energy. Scalable with number of nodes. Localized effect of topology or flow change.

MANET Unicast Routing Many protocols have been proposed. Many have been invented specifically for MANETs. Many are adapted from protocols for wired networks. Can any one protocol work well in all MANET environments?

Conventional Wisdom: Distance Vector (DV) or Link State (LS) ? DV protocols: May form loops: wasteful in wireless environment Bandwidth and power. Loop avoidance may be complex LS protocols: Higher storage and communication overhead.

Taxonomy Proactive protocols: Reactive protocols: Hybrid protocols. Determine routes independently of traffic patterns. Traditional link-state and distance-vector routing protocols are proactive. Reactive protocols: Maintain routes only if needed. Hybrid protocols.

Why Loop-Free Routing? Efficient use of resources Bandwidth, processing, storage, and energy Application deadlines Some degree of confidence that information reaches its destination in a dynamic topology.

Trade-Offs Latency of route discovery. Proactive protocols may have lower latency since routes are maintained at all times. Reactive protocols may have higher latency because a route from X to Y will be found only when X attempts to send to Y.

Trade-Offs Overhead of route discovery/maintenance. Reactive protocols may have lower overhead because routes are determined only if needed. Proactive protocols may result in higher overhead due to continuous route updating (depends on rate of changes). Which approach achieves a better trade-off depends on the traffic and mobility patterns.

On-Demand Approaches

Well-known On-demand Routing Techniques Nodal Synchronization TORA and others. Require synchronization over multiple hops. Based on “link-reversal” algorithms first proposed by Gafni and Bertsekas. TORA requires synchronized clocks. Source Routing Dynamic Source Routing (DSR) protocol and others. Complete routes need to be specified in every data packet. Destination sequence numbers Ad hoc On-demand Distance Vector (AODV) and others. Require a sequence number reset from the destination.

Dynamic Source Routing (DSR) [Johnson96] When node S wants to send a packet to D, and does not have a route to D, node S initiates a route discovery. S floods Route Request (RREQ). Each node appends own identifier when forwarding RREQ.

Route Discovery in DSR Y Z S E F B C M L J A G H D K I N Represents a node that has received RREQ for D from S

Broadcast transmission Route Discovery in DSR Y Broadcast transmission Z [S] S E F B C M L J A G H D K I N Represents transmission of RREQ [X,Y] Represents list of identifiers appended to RREQ

Route Discovery in DSR Node H receives packet RREQ from two neighbors: Z S [S,E] E F B C M L J A G [S,C] H D K I N Node H receives packet RREQ from two neighbors: potential for collision

Route Discovery in DSR Y Z S E F B [S,E,F] C M L J A G H D K [S,C,G] I Node C receives RREQ from G and H, but does not forward it again, because node C has already forwarded RREQ once

Route Discovery in DSR Y Z S E F [S,E,F,J] B C M L J A G H D K I N [S,C,G,K] Nodes J and K both broadcast RREQ to node D Since nodes J and K are hidden from each other, their transmissions may collide

Route Discovery in DSR Y Z S E [S,E,F,J,M] F B C M L J A G H D K I N Node D does not forward RREQ, because node D is the intended target of the route discovery

Route Discovery in DSR Destination D on receiving the first RREQ, sends a Route Reply (RREP). RREP is sent on a route obtained by reversing the route appended to received RREQ. RREP includes the route from S to D on which RREQ was received by node D.

Route Reply in DSR Y Z S RREP [S,E,F,J,D] E F B C M L J A G H D K I N Represents RREP control message

Route Reply in DSR RREP can be sent by reversing the route in RREQ only if links are guaranteed to be bi-directional If unidirectional (asymmetric) links are allowed, then RREP may need a route discovery for S from D. Unless D already knows a route to S. If a route discovery is initiated by D for a route to S, then the RREP is piggybacked on D’s RREQ. If IEEE 802.11 MAC is used to send data, then links have to be bi-directional (since Ack is used)

Processing RREP Node S on receiving RREP, caches the route. When node S sends a data packet to D, the entire route is included in the packet header Hence the name source routing. Intermediate nodes use the source route included in a packet to determine to whom a packet should be forwarded.

Data Delivery in DSR Y Z DATA [S,E,F,J,D] S E F B C M L J A G H D K I Packet header size grows with route length

DSR Optimization: Route Caching Each node caches a new route it learns by any means. When node S finds route [S,E,F,J,D] to node D, node S also learns route [S,E,F] to node F. When node K receives Route Request [S,C,G], K learns route [K,G,C,S] to S. When node F forwards Route Reply RREP [S,E,F,J,D], F learns route [F,J,D] to D. When a node forwards a Data packet the node may learn a new route to the destination (see example in next slides) Nodes may also learn route when it overhears data.

Use of Route Caching When S learns that a route to D is broken, it uses another route from its local cache, if such a route to D exists in its cache; otherwise, S initiates route discovery. Node X on receiving a RREQ for some node D can send a RREP if X knows a route to D. Use of route cache Can speed up route discovery. Can reduce propagation of route requests.

Use of Route Caching S E F B C M L J A G H D K I N Z [S,E,F,J,D] [E,F,J,D] S E [F,J,D],[F,E,S] F B [J,F,E,S] C M L J A G [C,S] H D [G,C,S] K I N Z [P,Q,R]: Represents cached route at a node

Route Caching: Speed up Route Discovery, Reduce RREQ Flooding [S,E,F,J,D] [E,F,J,D] S E [F,J,D],[F,E,S] F B [J,F,E,S] C M L [G,C,S] J A G [C,S] H D K [K,G,C,S] I N RREQ Z When node Z sends a route request for node C, node K sends back a route reply [Z,K,G,C] to node Z using a locally cached route

Route Caching: Speed up Route Discovery, Reduce RREQ Flooding [S,E,F,J,D] [E,F,J,D] S E [F,J,D],[F,E,S] F B [J,F,E,S] C M L [G,C,S] J A G [C,S] H D K [K,G,C,S] I N RREP Z Assume that there is no link between D and Z. Route Reply (RREP) from node K limits flooding of RREQ. In general, the reduction may be less dramatic.

Route Caching: Speed up Route Discovery, Reduce RREQ Flooding [S,E,F,J,D] [E,F,J,D] S E [F,J,D],[F,E,S] F B [J,F,E,S] C M L [G,C,S] J A G [C,S] H D K [K,G,C,S] I N Z Intermediary nodes learn route to Z as DATA packets are routed from Z do C.

Route Error (RERR) Y Z RERR [J-D] S E F B C M L J A G H D K I N J sends a route error to S along route J-F-E-S when its attempt to forward the data packet S (with route SEFJD) on J-D fails. Nodes hearing RERR update their route cache to remove link J-D

Route Caching: Beware! Stale caches can adversely affect performance. With time and host mobility, cached routes may become invalid. A sender host may try several stale routes (obtained from local cache, or replied from cache by other nodes), before finding a good route.

DSR: Advantages Routes maintained only between nodes who need to communicate. Reduces overhead of route maintenance. Route caching can further reduce route discovery overhead. Single route discovery may yield many routes to the destination, due to intermediate nodes replying from local caches.

DSR: Disadvantages Packet header size grows with route length. Flood of route requests may potentially reach all nodes in the network. Care must be taken to avoid collisions between route requests propagated by neighboring nodes. Insertion of random delays before forwarding RREQ. Mechanisms to reduce redundant broadcasting: Dominant pruning (DP), PDP, TDP, EDP, CC-I, CC-II.

DSR: Disadvantages Increased contention if too many route replies come back due to nodes replying using their local cache. “RREP” storm problem. Reply storm may be eased by preventing a node from sending RREP if it hears another RREP with a shorter route.

DSR: Disadvantages An intermediate node may send RREP using a stale cached route, thus polluting other caches. This problem can be eased if some mechanism to purge (potentially) invalid cached routes is incorporated. Static timeouts. Adaptive timeouts based on link stability.

DSR: key Disadvantages Source routes are too brittle in large nets with dynamic topologies! Repairing source routes is difficult to do at intermediate nodes w/o causing loops.

Routing Using Destination Sequence Numbers Goal is to avoid inter-nodal synchronization and source-routed data packets. Approach derives from the flooding of link- state information. First instance was DSDV (proactive), which amounts to flooding of distances with higher sequence numbers.

AODV Route Requests (RREQ) are forwarded similarly to DSR. When a node re-broadcasts a RREQ, it sets up a reverse path pointing towards the source. AODV assumes symmetric (bi-directional) links. When the intended destination receives a RREQ, it replies by sending a RREP. RREPs travel along the reverse path set-up when RREQ is forwarded.

Route Requests in AODV Y Z S E F B C M L J A G H D K I N Represents a node that has received RREQ for D from S

Broadcast transmission Route Requests in AODV Y Broadcast transmission Z S E F B C M L J A G H D K I N Represents transmission of RREQ

Route Requests in AODV Y Z S E F B C M L J A G H D K I N Represents links on Reverse Path

AODV Route Discovery: Observations RREQ contains source and destination IP address, current destination seq. number (incremented as a result of loss of prior route), and broadcast id (incremented for every RREQ). Source IP + bcast id uniquely identifies RREQ: nodes do not forward RREQs they have forwarded recently. RREQ processing: node creates reverse route table entry for RREQ source with TTL. If node has “unexpired” route to destination in its table with sequence number >= RREQ’s, it replies to RREQ with Route Reply (RREP) back to source. Otherwise, broadcast RREQ onward.

Destination Sequence Number When node D receives route request with destination sequence number N, D sets its sequence number to N, unless it is already larger than N. Node’s own sequence number is monotonically increasing. Sequence number is incremented after neighborhood topology change.

Reverse Path Setup in AODV Y Z S E F B C M L J A G H D K I N Node C receives RREQ from G and H, but does not forward it again, because node C has already forwarded RREQ once

Reverse Path Setup in AODV Y Z S E F B C M L J A G H D K I N

Reverse Path Setup in AODV Y Z S E F B C M L J A G H D K I N Node D does not forward RREQ, because node D is the intended target of the RREQ

Route Reply in AODV An intermediate node has current route to destination, responds to RREQ with RREP. RREP contains source and destination IP, current sequence number, number of hops to destination. If destination, then destination seq. #. Else, node’s current record of destination’s seq. #. Node receiving RREP sets up forward path to destination. If multiple RREPs received, node forwards first one. Later RREPs discarded unless greater seq. # or smaller # of hops.

Route Reply Example Y Z S E F B C M L J A G H D K I N Represents links on path taken by RREP

Forward Path Setup in AODV Y Z S E F B C M L J A G H D K I N Forward links are setup when RREP travels along the reverse path Represents a link on the forward path

Data Delivery in AODV Y DATA Z S E F B C M L J A G H D K I N Routing table entries used to forward data packet. Route is not included in packet header.

Timeouts A routing table entry maintaining a reverse path is purged after a timeout interval. Timeout should be long enough to allow RREP to come back. Routing table entry maintaining a forward path is purged if not used for active_route_timeout interval. If no data being sent using a particular routing table entry, that entry will be deleted from the routing table (even if the route may actually still be valid).

Terminology B C D Predecessor Set At node A A Successor (Next hop) to Destination D X Destination D

Link Failure Reporting Link failures are propagated by means of Route Error messages, which also update destination sequence numbers. RERR lists destinations now unreachable. If upstream node has neighbors as precursors for the affected destinations, it broadcasts RERR. Nodes receiving the RERR update cost to destination to infinity and forward RERR if needed. Upon receiving RERR, source will initiate route discovery if still needs route.

Route Error (RERR) When node X is unable to forward packet P (from node S to node D) on link (X,Y), it generates a RERR message. Node X increments the destination sequence number for D cached at node X. The incremented sequence number N is included in the RERR. When node S receives the RERR, it initiates a new route discovery for D using destination sequence number at least as large as N.

Link Failure Detection Hello messages: neighbour nodes periodically exchange hello messages. Absence of hello message is used as an indication of link failure. Alternatively, failure to receive several MAC-level ACKs may be used as an indication of link failure.

Sequence Numbers in AODV To avoid using old/broken routes To determine which route is newer.

Sequence Numbers in AODV To prevent formation of loops Assume that A does not know about failure of link C- D because RERR sent by C is lost Now C performs a route discovery for D. A receives the RREQ (say, via path C-E-A) A will reply since it knows a route to D via B. Results in a loop (for instance, C-E-A-B-C ) A B C D E

Optimization: Expanding Ring Search RREQs are initially sent with small Time- to-Live (TTL) field, to limit their propagation. If no RREP is received, then larger TTL tried.

Does The Sequence Numbering Work? To some extent: Sequence numbering scheme is not very efficient Scheme requires that any given node A either never forgets a destination sequence number it learns, or is able to wait “long enough” so that it cannot possibly attempt to reach a destination D through a path involving a node B that uses A to reach D.

Counting-to-Infinity in AODV Sn:1 Sn:1 Sn:1 Sn:1 P Q R S t1 – Link failure t2 – RERR and route invalidation t3 – RREQ (SQ:2) t4 – SN deleted t5 – RREQ(null) t6 – RREP(1) Sn:1 A D Sn:1

Counting-to-Infinity in AODV Sn:1 Sn:1 Sn:1 Sn:1 RERR propogation time > DELETE_PERIOD P Q R S RERR t1 – Link failure t2 – RERR (which may not be delivered!) and route invalidation t3 – RREQ (SQ:2) t4 – SN deleted t5 – RREQ(null) t6 – RREP(1) Sn:1 A Sn:2, invalid D Sn:1

Counting-to-Infinity in AODV Sn:1 Sn:1 Sn:1 Sn:1 RERR propogation time > DELETE_PERIOD P Q R S RREQ(2) RERR t1 – Link failure t2 – RERR and route invalidation t3 – RREQ (SQ:2) t4 – SN deleted t5 – RREQ(null) t6 – RREP(1) A Sn:2, invalid D Sn:1

Counting-to-Infinity in AODV Sn:1 Sn:1 Sn:1 Sn:1 RERR propogation time > DELETE_PERIOD P Q R S RERR t1 – Link failure t2 – RERR and route invalidation t3 – RREQ (SQ:2) t4 – SN deleted t5 – RREQ(null) t6 – RREP(1) A Sn:1 Sn:2, invalid DELETE PERIOD D Sn:1 Sn: NULL

Counting-to-Infinity in AODV Sn:1 Sn:1 Sn:1 Sn:1 RERR propogation time > DELETE_PERIOD P Q R S RERR t1 – Link failure t2 – RERR and route invalidation t3 – RREQ (SQ:2) t4 – SN deleted t5 – RREQ(null) t6 – RREP(1) A RREQ(Null) Sn: NULL D Sn:1

Counting-to-Infinity in AODV Sn:1 Sn:1 Sn:1 Sn:1 RERR propogation time > DELETE_PERIOD P Q R S RERR t1 – Link failure t2 – RERR and route invalidation t3 – RREQ (SQ:2) t4 – SN deleted t5 – RREQ(null) t6 – RREP(1) A RREP (Sn:1) Sn: NULL D Sn:1

Counting-to-Infinity in AODV Sn:1 Sn:1 Sn:1 Sn:1 RERR propogation time > DELETE_PERIOD P Q R S RERR t1 – Link failure t2 – RERR and route invalidation t3 – RREQ (SQ:2) t4 – SN deleted t5 – RREQ(null) t6 – RREP(1) A Sn:1 Sn:2, invalid DELETE PERIOD D Sn:1 Sn: NULL Sn: 1,valid LOOP!

Counting-to-Infinity in AODV A node “A” along a path “P” to destination “D” should never delete its invalid route table entry for “D” before guaranteeing that all its upstream nodes along path “P” have invalidated their active route entries for “D”. That is, a node should wait “long enough” (what is hard to estimate in a topology changing env.) before deleting invalid routes or rejoining normal operation after reboots.

References J.J. Garcia-Luna-Aceves and H. Rangarajan. “A new framework for loop-free on demand routing using destination sequence numbers”, Proc. IEEE MASS 2004: The 1st IEEE International Conference on Mobile Ad-hoc and Sensor Systems, Fort Lauderdale, Florida, October 25-27, 2004.