Wireless AODV Protocol
Wireless AODV Protocol
Dr. Pradip M Jawandhiya, Professor & Head, Computer Engineering Department, Jagadambha College of Engg. & Tech, Yavatmal [email protected] (9763717428) & Mangesh M Ghonge Faculty, Department of Computer Science & Engineering, Jawaharlal Darda Institute of Engineering & Technology, Yavatmal (Maharashtra)- 445001, India. [email protected] (9096449280)
Outline
AODV
Ad Hoc On Demand Distance Vector Routing Protocol Reactive Protocol: discovers a route on demand. Nodes do not have to maintain routing information. Route Discovery Route Maintenance Hello messages:
used to determine local connectivity. can reduce response time to routing requests. can trigger updates when necessary.
If a source needs a route to a destination for which it does not already have a route in its cache:
Source broadcasts Route Request (RREQ) message for specified destination Intermediate node:
Returns a route reply packet (RREP) (if route information about destination in its cache), or forwards the RREQ to its neighbors (if route information about destination not in its cache). If cannot respond to RREQ, increments hop count, saves info to implement a reverse path set up, to use when sending reply (assumes bidirectional link)
AODV RREQ
RREQ
destination and source IP address, broadcast ID, source nodes sequence number and destination nodes sequence number. Node 1 wants to send data packet to node 7. Node 6 knows a current route to node 7. Node 1 sends a RREQ packet to its neighbors.
packet
contains:
Type
Flag
Resvd
hopcnt
Source_addr =1 dest_addr =7 broadcast_id = broadcast_id +1 source_sequence_# = source_sequence_# + 1 dest_sequence_# = last dest_sequence_# for node 7
AODV (RREQ)
Nodes 2 and 4 verify that this is a new RREQ (source_sequence_# is not stale) with respect to the reverse route to node 1. Forward the RREQ, and increment hop_cnt in the RREQ packet. RREQ reaches node 6 from node 4, which knows a route to 7. Node 6 verify that the destination sequence number is less than or equal to the destination sequence number it has recorded for node 7. Nodes 3 and 5 will forward the RREQ packet to node 6, but it recognizes the packets as duplicates.
AODV (RREP)
Node 6 has a route to destination. It sends a route reply RREP to the neighbor that sent the RREQ packet. Intermediate nodes propagate RREP towards the source using cached reverse route entries. Other RREP packets discarded unless, dest_seq_# is higher than the pervious, or same but hop_cnt is smaller. Cached reverse routes timeout in nodes that do not see RREP packet.
Type Flag prsz hopcnt
AODV (RREP)
Node 6 sends RREP to node 4 Source_addr=1, dest_addr=7, dest_sequence_# = maximum (sequence no. stored for node 7, dest_sequence_# in RREQ), hop_cnt =1. Node 4 finds out it is a new route reply and propagates the RREP packet to Node 1.
The
routing problem is to find a route from S to D when some or all of the nodes are mobile.
11
When node S wants to send a packet to node D, but does not know a route to D, node S initiates a route discovery
Source node S floods Route Request (RREQ) Each node appends own identifier when forwarding RREQ
12
[S]
S B A H I C G D K E F M
Node H receives packet RREQ from two neighbors: potential for collision
15
Node C receives RREQ from G and H, but does not forward it again, because node C has already forwarded RREQ once
16
Nodes J and K both broadcast RREQ to node D Since nodes J and K are hidden from each other, their transmissions may collide
17
[S,E,F,J,M]
Node D does not forward RREQ, because node D is the intended target of the route discovery
18
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
19
20
Intermediate nodes use the source route included in a packet to determine to whom a packet should be forwarded
21