Ad hoc On Demand Distance Vector (AODV) Routing Protocol



Similar documents
Behavior Analysis of TCP Traffic in Mobile Ad Hoc Network using Reactive Routing Protocols

Keywords: DSDV and AODV Protocol

Optimization of AODV routing protocol in mobile ad-hoc network by introducing features of the protocol LBAR

A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks

Formal Measure of the Effect of MANET size over the Performance of Various Routing Protocols

Study And Comparison Of Mobile Ad-Hoc Networks Using Ant Colony Optimization

PERA: Ad-Hoc Routing Protocol for Mobile Robots

Internet Connectivity for Ad hoc Mobile Networks

A Performance Comparison of Routing Protocols for Large-Scale Wireless Mobile Ad Hoc Networks

Abstract. 1 Introduction. Aleksandr Huhtonen Helsinki University of Technology Telecommunication Software and Multimedia Laboratory ahuhtone@cc.hut.

Performance Analysis of Load Balancing in MANET using On-demand Multipath Routing Protocol

COMPARATIVE ANALYSIS OF ON -DEMAND MOBILE AD-HOC NETWORK

A Study of Internet Connectivity for Mobile Ad Hoc Networks in NS 2

SIMULATION STUDY OF BLACKHOLE ATTACK IN THE MOBILE AD HOC NETWORKS

NetworkPathDiscoveryMechanismforFailuresinMobileAdhocNetworks

DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks

Study of Network Characteristics Incorporating Different Routing Protocols

Lecture 2.1 : The Distributed Bellman-Ford Algorithm. Lecture 2.2 : The Destination Sequenced Distance Vector (DSDV) protocol

International Journal of Advanced Research in Computer Science and Software Engineering

Performance Evaluation of AODV, OLSR Routing Protocol in VOIP Over Ad Hoc

An Extended AODV Protocol to Support Mobility in Hybrid Networks

PERFORMANCE ANALYSIS OF AD-HOC ON DEMAND DISTANCE VECTOR FOR MOBILE AD- HOC NETWORK

An Efficient AODV-Based Algorithm for Small Area MANETS

ADAPTIVE LINK TIMEOUT WITH ENERGY AWARE MECHANISM FOR ON-DEMAND ROUTING IN MANETS

Load Balancing and Resource Reservation in Mobile Ad-Hoc Networks 1

Location Information Services in Mobile Ad Hoc Networks

A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols

Delay aware Reactive Routing Protocols for QoS in MANETs: a Review

Micro Mobility and Internet Access Performance for TCP Connections in Ad hoc Networks

SURVEY OF OPTIMISTIC POWER AWARE ROUTING PROTOCOLS IN MOBILE DATACENTER NETWORKS

Dynamic Source Routing in Ad Hoc Wireless Networks

INTELLIGENT LOAD BALANCING IN MOBILE AD HOC NETWORKS. A Thesis by. Varun Khanna. Bachelor of Technology, Kurukshetra University, India, 2004

A Modified Shared-tree Multicast Routing Protocol in Ad Hoc Network

A Review of Secure Ad-hoc Routing

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING

Adaptive Multiple Metrics Routing Protocols for Heterogeneous Multi-Hop Wireless Networks

Routing with Load Balancing in Wireless Ad hoc Networks

Distance Vector Routing Protocols. Routing Protocols and Concepts Ola Lundh

Fast and Secure Data Transmission by Using Hybrid Protocols in Mobile Ad Hoc Network

POWER AWARE QOS MULTIPATH ROUTING PROTOCOL FOR DISASTER RECOVERY NETWORKS

Achieving Energy Efficiency in MANETs by Using Load Balancing Approach

Performance Comparison of AODV, DSDV, DSR and TORA Routing Protocols in MANETs

Security Threats in Mobile Ad Hoc Networks

Investigating the Performance of Routing Protocols Using Quantitative Metrics in Mobile Ad Hoc Networks

Congestion control in Mobile Ad-Hoc Networks (MANETs)

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage

Performance Evaluation of Aodv and Dsr Routing Protocols for Vbr Traffic for 150 Nodes in Manets

An Efficient QoS Routing Protocol for Mobile Ad-Hoc Networks *

Routing in Mobile Ad Hoc Networks

Security in Ad Hoc Network

Performance of VoIP strategies for hybrid Mobile Ad Hoc Networks

Chapter 4. Distance Vector Routing Protocols

Routing in Multi-Channel Multi-Interface Ad Hoc Wireless Networks

Control overhead reduction: A Hierarchical Routing Protocol In Mobile Ad hoc Networks

DESIGN AND DEVELOPMENT OF LOAD SHARING MULTIPATH ROUTING PROTCOL FOR MOBILE AD HOC NETWORKS

II RELATED PROTOCOLS. Dynamic Source Routing (DSR)

Multipath Routing in Mobile Ad Hoc Networks: Issues and Challenges

Energy-Aware Performance Metric for AODV and DSDV Routing Protocols in Mobile Ad-Hoc Networks

MASTER'S THESIS. Routing Protocols in Wireless Ad-hoc Networks - A Simulation Study. Tony Larsson, Nicklas Hedman. Civilingenjörsprogrammet

Security for Ad Hoc Networks. Hang Zhao

Location-Aided Routing (LAR) in mobile ad hoc networks

Ariadne A Secure On-Demand Routing Protocol for Ad-Hoc Networks

IP - The Internet Protocol

Comprehensive Evaluation of AODV, DSR, GRP, OLSR and TORA Routing Protocols with varying number of nodes and traffic applications over MANETs

Internet Control Message Protocol (ICMP)

Security and Scalability of MANET Routing Protocols in Homogeneous & Heterogeneous Networks

Position and Velocity Aided Routing Protocol in Mobile Ad Hoc Networks

UNIT 8:- Mobile Ad-Hoc Networks, Wireless Sensor Networks

Keywords- manet, routing protocols, aodv, olsr, grp,data drop parameter.

Tema 5.- Seguridad. Problemas Soluciones

A Review of Routing Protocols for Mobile Ad-Hoc NETworks (MANET)

Robust Routing in Wireless Ad Hoc Networks

Lecture 12: Link-state Routing"

Route Discovery Protocols

VoIP over MANET (VoMAN): QoS & Performance Analysis of Routing Protocols for Different Audio Codecs

Design and Implementation of Ad-hoc Communication and Application on Mobile Phone Terminals

Performance Metrics Evaluation of Routing Protocols in MANET

Mobile Ad Hoc Networks. Ad Hoc Networks - A New Communication Paradigm 1. Mobile Ad Hoc Networks (MANET) Mobile Ad Hoc Networks. Why Ad Hoc Networks?

A Survey of Mobile Ad Hoc network Routing Protocols*

Location-Aided Routing (LAR) in mobile ad hoc networks

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing

Chapter 5. Simple Ad hoc Key Management. 5.1 Introduction

RARP: Reverse Address Resolution Protocol

IP Multicasting. Applications with multiple receivers

Performance Comparison Of MANET Routing Protocols In Different Network Sizes

Name Resolution in On-Demand MANETs and over External IP Networks

Transcription:

Ad hoc On Demand Distance Vector (AODV) Routing Protocol CS: 647 Advanced Topics in Wireless Networks Dr. Baruch Awerbuch & Dr. Amitabh Mishra Department of Computer Science Johns Hopkins 4-1

Reading Chapter 6, Sections 6.1-6.3, 6.5 Ad Hoc Networking, Perkins, Addison Wesley, 2001 4-2

Outline Introduction AODV properties Route discovery Flooding Route maintenance Local connectivity management Hello Messages Summary 4-3

Introduction: DSDV vs. AODV DSDV broadcasts every change in the network to every node In AODV such broadcasts are not necessary When two neighbors enter communication range of each other This results in a network wide broadcast If a link breakage does not affect on going transmission -> no global broadcast occurs Only affected nodes are informed Similarly when two nodes drift apart from each other s range > link breakage Also results in a network wide broadcast Local movements have global effects Local movements of nodes have local effects AODV reduces the network wide broadcasts to the extent possible Significant reduction in control overhead as compared to DSDV 4-4

Ad Hoc On Demand Distance- Vector (AODV) Routing (1) Reactive or on Demand Descendant of DSDV Uses bi-directional links Route discovery cycle used for route finding Maintenance of active routes Sequence numbers used for loop prevention and as route freshness criteria Provides unicast and multicast communication 4-5

Ad Hoc On Demand Distance- Vector (AODV) Routing (2) Whenever routes are not used -> get expired -> Discarded Reduces stale routes Reduces need for route maintenance Minimizes number of active routes between an active source and destination Can determine multiple routes between a source and a destination, but implements only a single route, because Difficult to manage multiple routes between same source/destination pair If one route breaks, its difficult to know whether other route is available Lot of book-keeping involved 4-6

AODV Properties (1) 1. AODV discovers routes as and when necessary Does not maintain routes from every node to every other 2. Routes are maintained just as long as necessary 3. Every node maintains its monotonically increasing sequence number -> increases every time the node notices change in the neighborhood topology 4-7

AODV Properties (2) AODV utilizes routing tables to store routing information 1. A Routing table for unicast routes 2. A Routing table for multicast routes The route table stores: <destination addr, next-hop addr, destination sequence number, life_time> For each destination, a node maintains a list of precursor nodes, to route through them Precusor nodes help in route maintenance (more later) Life-time updated every time the route is used If route not used within its life time -> it expires 4-8

AODV Route Discovery (1) When a node wishes to send a packet to some destination It checks its routing table to determine if it has a current route to the destination If Yes, forwards the packet to next hop node If No, it initiates a route discovery process Route discovery process begins with the creation of a Route Request (RREQ) packet -> source node creates it The packet contains source node s IP address, source node s current sequence number, destination IP address, destination sequence number 4-9

AODV Route Discovery (2) Packet also contains broadcast ID number Broadcast ID gets incremented each time a source node uses RREQ Broadcast ID and source IP address form a unique identifier for the RREQ Broadcasting is done via Flooding 4-10

Outline Introduction AODV properties Route discovery Flooding Route maintenance Local connectivity management Hello Messages Summary 4-11

Flooding for Control Packet Delivery Sender S broadcasts a control packet P to all its neighbors Each node receiving P forwards P to its neighbors Sequence numbers help to avoid the possibility of forwarding the same packet more than once Packet P reaches destination D provided that D is reachable from sender S Node D does not forward the packet 4-12

Flooding for Control Packet Delivery - Example Y Z S E A B H C I G F K J D M N L Represents a node that has received packet P Represents that connected nodes are within each other s transmission range 4-13

Flooding for Control Packet Delivery Broadcast transmission Y Z S E A B H C I G F K J D M N L Represents a node that receives packet P for the first time Represents transmission of packet P 4-14

Flooding for Control Packet Delivery Y Z S E A B H C I G F K J D M N L Node H receives packet P from two neighbors: potential for collision 4-15

Flooding for Control Packet Delivery Y Z S E A B H C I G F K J D M N L Node C receives packet P from G and H, but does not forward it again, because node C has already forwarded packet P once 4-16

Flooding for Control packet Delivery Y Z S E A B H C I G F K J D M N L Nodes J and K both broadcast packet P to node D Since nodes J and K are hidden from each other, their transmissions may collide => Packet P may not be delivered to node D at all, despite the use of flooding 4-17

Flooding for Control Packet Delivery Y Z S E A B H C I G F K J D M N L Node D does not forward packet P, because node D is the intended destination of packet P 4-18

Flooding for Control Packet Delivery Y Z S E B A H Flooding completed C I G F K J D M N L Nodes unreachable from S do not receive packet P (e.g., node Z) Nodes for which paths go through the destination D also do not receive packet P (example: node N) 4-19

Flooding for Control Packet Delivery Y Z S E A B H C I G F K J D M N L Flooding may deliver packets to too many nodes (in the worst case, all nodes reachable from sender may receive the packet) 4-20

Flooding of Control Packets - Summary Many protocols perform flooding of control packets e.g. AODV & DSR, instead of data packets The control packets are used to discover routes Discovered routes are subsequently used to send data packet(s) Overhead of control packet flooding is amortized over data packets transmitted between consecutive control packet floods 4-21

Flooding for Data Delivery -Advantages Simplicity May be more efficient than other protocols when rate of information transmission is low enough that the overhead of explicit route discovery and maintenance incurred by other protocols is relatively higher this scenario may occur, for instance, when nodes transmit small data packets relatively infrequently, and many topology changes occur between consecutive packet transmissions Potentially higher reliability of data delivery Because packets may be delivered to the destination on multiple paths 4-22

Flooding for Data Delivery - Disadvantages Potentially, very high overhead Data packets may be delivered to too many nodes who do not need to receive them Potentially lower reliability of data delivery Flooding uses broadcasting -- hard to implement reliable broadcast delivery without significantly increasing overhead Broadcasting in IEEE 802.11 MAC is unreliable In this example, nodes J and K may transmit to node D simultaneously, resulting in loss of the packet in this case, destination would not receive the packet at all 4-23

Route Discovery (Contd.) Once an intermediate node receives a RREQ, the node sets up a reverse route entry for the source node in its route table Reverse route entry consists of <Source IP address, Source seq. number, number of hops to source node, IP address of node from which RREQ was received> Using the reverse route a node can send a RREP (Route Reply packet) to the source Reverse route entry also contains life time field RREQ reaches destination -> In order to respond to RREQ a node should have in its route table: 1. Unexpired entry for the destination 2. Seq. number of destination at least as great as in RREQ (for loop prevention) 4-24

Route Discovery (Contd.) RREQ reaches destination (contd.) If both conditions are met & the IP address of the destination matches with that in RREQ the node responds to RREQ by sending a RREP back using unicasting and not flooding to the source using reverse path If conditions are not satisfied, then node increments the hop count in RREQ and broadcasts to its neighbors Ultimately the RREQ will make to the destination 4-25

AODV Route Discovery - Example B S A C D 1. Node S needs a route to D 4-26

AODV Route Discovery B S A C D 1. Node S needs a route to D 2. Creates a Route Request (RREQ) Enters D s IP addr, seq#, S s IP addr, seq#, hopcount (=0) 4-27

AODV Route Discovery RREQ B S A C D 1. Node S needs a route to D 2. Creates a Route Request (RREQ) Enters D s IP addr, seq#, S s IP addr, seq#, hopcount (=0) 3. Node S broadcasts RREQ to neighbors 4-28

AODV Route Discovery RREQ B S A C D 4. Node A receives RREQ Makes a reverse route entery for S dest=s, nexthop=s, hopcount=1 It has no routes to D, so it rebroadcasts RREQ 4-29

AODV Route Discovery RREQ B S A C D 4. Node A receives RREQ Makes a reverse route entery for S dest=s, nexthop=s, hopcount=1 It has no routes to D, so it rebroadcasts RREQ 4-30

AODV Route Discovery RREQ B S A C D 5. Node C receives RREQ Makes a reverse route entry for S dest=s, nexthop=a, hopcount=2 It has a route to D, and the seq# for route to D is >= D s seq# in RREQ 4-31

Route Reply in AODV - Comments An intermediate node (not the destination) may also send a Route Reply (RREP) provided that it knows a more recent path than the one previously known to sender S To determine whether the path known to an intermediate node is more recent, destination sequence numbers are used The likelihood that an intermediate node will send a Route Reply when using AODV not as high as DSR (Later) A new Route Request by node S for a destination is assigned a higher destination sequence number. An intermediate node which knows a route, but with a smaller sequence number, cannot send Route Reply 4-32

AODV Route Discovery RREQ B S A C D 5. Node C receives RREQ (Cont.) C creates a Route Reply (RREP) Enters D s IP addr, seq#, S s IP addr, hopcount to D (=1) Unicasts RREP to A 4-33

AODV Route Discovery B S A RREP C D 5. Node C receives RREQ (Cont.) C creates a Route Reply (RREP) Enters D s IP addr, seq#, S s IP addr, hopcount to D (=1) Unicasts RREP to A 4-34

AODV Forward Path Setup B S RREP A RREP C D 5. Node A receives RREP Makes a forward route entry to D dest=d, nexthop=c, hopcount=2 Unicasts RREP to S 4-35

Forward Path Setup (1) When a node determines that it has a current route to respond to RREQ i.e. has a path to destination It creates RREP (Route Reply) RREP contains <IP address of source and destination> If RREP is being sent by destination The RREP will also contain the <current sqn # of destination, hop-count=0, life-time> If RREP is sent by an intermediate node RREP will contain its record of the <destination sequence number, hop-count=its distance to destination, its value of the life-time> 4-36

Forward Path Setup (2) When an intermediate node receives the RREP, it sets up a forward path entry to the destination in its route table Forward path entry contains <IP Address of destination, IP address of node from which the entry arrived, hop-count to destination, life-time> To obtain its distance to destination i.e. hop-count, a node increments its distance by 1 If route is not used within the life time, its deleted After processing the RREP, the node forwards it towards the source 4-37

AODV Forward Path Setup RREP B S A C D 5. Node S receives RREP Makes a forward route entry to D dest=d, nexthop =A, hopcount = 3 4-38

Receipt of Multiple RREP A node may receive multiple RREP for a given destination from more than one neighbor The node only forwards the first RREP it receives May forward another RREP if that has greater destination sequence number or a smaller hop count Rest are discarded -> reduces the number of RREP propagating towards the source Source can begin data transmission upon receiving the first RREP 4-39

AODV Data Delivery B S A C D 5. Node S receives RREP Makes a forward route entry to D dest=d, nexthop =A, hopcount = 3 Sends data packet on route to D 4-40

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

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

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

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

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

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

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

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

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

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 A routing table entry maintaining a forward path is purged if not used for a active_route_timeout interval if no is 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) 4-50

Outline Introduction Flooding AODV properties Route discovery Route maintenance link failures Local connectivity management 4-51

Link Failure Reporting A neighbor of node X is considered active for a routing table entry if the neighbor sent a packet within active_route_timeout interval and was forwarded using that entry If a source node moves, a new route discovery process is initiated If intermediate nodes or the destination move -> The next hop links break resulting in link failures Routing tables are updated for the link filaures All active neighbors are informed by RERR message 4-52

Route Maintenance - RERR RERR is initiated by the node upstream (closer to the source) of the break Its propagated to all the affected destinations RERR lists all the nodes affected by the link failure -> Nodes that were using the link to route messages (precursor nodes) When a node receives an RERR, it marks its route to the destination as invalid -> Setting distance to the destination as infinity in the route table When a source node receives an RRER, it can reinitiate the route discovery 4-53

AODV Route Maintenance- Example B S A RERR C X D 1. Link between C and D breaks 2. Node C invalidates route to D in route table 3. Node C creates Route Error message Lists all destinations that are now unreachable Sends to upstream neighbors 4-54

AODV Route Maintenance - Example B S RERR A RERR C D 4. Node A receives RERR Checks whether C is its next hop on route to D Deletes route to D (makes distance -> infinity) Forwards RERR to S 4-55

AODV Route Maintenance- Example RERR B S A C D 5. Node S receives RERR Checks whether A is its next hop on route to D Deletes route to D Rediscovers route if still needed 4-56

Route Error 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 4-57

Destination Sequence Number Continuing from the previous slide When node D receives the route request with destination sequence number N, node D will set its sequence number to N, unless it is already larger than N 4-58

Outline Introduction Flooding AODV properties Route discovery Route maintenance link failures Local connectivity management Hello Messages 4-59

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

Why Sequence Numbers in AODV To avoid using old/broken routes To determine which route is newer To prevent formation of loops A had a route to D initially Assume that A does not know about failure of link C-D because RERR sent by C is lost A B C D E Now C performs a route discovery for D. Node A receives the RREQ (say, via path C-E-A) Node A will reply since A knows a route to D via node B Results in a loop (for instance, C-E-A-B-C ) 4-61

Why Sequence Numbers in AODV A B C D E Loop C-E-A-B-C But because of usage of sequence number, A will not use the route A-B-C, because the sequence numbers will be lower than what A receives from A 4-62

Optimizations Route Requests are initially sent with small Time-to-Live (TTL) field, to limit their propagation DSR also includes a similar optimization If no Route Reply is received, then larger TTL tried 4-63

AODV: Optimizations Expanding Ring Search Prevents flooding of network during route discovery Control Time to Live (TTL) of RREQ to search incrementally larger areas of network Advantages: Less overhead when successful Disadvantages: Longer delay if route not found immediately 4-64

AODV: Optimizations (Cont.) Local Repairs Repair breaks in active routes locally instead of notifying source Use small TTL because destination probably hasn t moved far If first repair attempt is unsuccessful, send RERR to source Advantage: repair links with less overhead, delay and packet loss Disadvantages: longer delay and greater packet loss when unsuccessful 4-65

AODV: Summary (1) Routes need not be included in packet headers (DSR does it) Nodes maintain routing tables containing entries only for routes that are in active use At most one next-hop per destination maintained at each node DSR may maintain several routes for a single destination Unused routes expire even if topology does not change 4-66

AODV: Summary (2) Reactive/On demand Sequence numbers used for route freshness and loop prevention Route discovery cycle Optimizations can be used to reduce overhead and increase scalability 4-67