routing protocols of on- demand dynamic source routing (dsr) ad-hoc on-demand distance vector (aodv)
TRANSCRIPT
Outline DSR
Introduction Route Discovery Route Maintenance
AODV Introduction Route Discovery Route Maintenance Comparison
Dynamic Source Routing (DSR)
Route Cache A packet carries the list of routers in the
path Two main operation
Route Discovery Route Maintenance
No periodic messages
DSR Assumptions
Small network diameter Speed of mobility is moderate Choice of promiscuous receive mode Links may or may not be bi-directional
DSR Route Discovery RREQ (Route Request)
[Initiator, Target, Request id, Path] RREP (Route Reply)
Target sends ROUTE REPLY if it knows route to sender
Target initiates ROUTE REQUEST to sender and piggybacks the ROUTE REPLY to avoid infinite recursion
Target uses the reverse route from the recorded route RRER (Route Error)
DSR Route Discovery
A
B
C
D
E G
F H
[A,G,ID,A]
[A,G,ID,AB]
[A,G,ID,ABE]
[A,G,ID,AC]Node E drop the packet because it has forward the same ID packet
Source A forward data to destination G
DSR Route Reply
A
B
C
D
E G
F H
[A,B,E]
[A,B,E]
[A,B,E]
[A,B,E]
Node A stores the route from A to G in its route cache
DSR Route Maintenance Use low-level acknowledgements to detect broken
links; inform sender via route error packet If no route to the source exists
Use piggybacking Send out a route request and buffer route error
Sender truncates all routes which use nodes mentioned in route error
Initiate route discovery
DSR Route Error
A
B
C
D
E G
F H
E sends a route error to A along route E-B-A
RERR [E-G]
RERR [E-G]
Nodes hearing RERR update their route cache to remove link E-G
Optimizations for efficiency
Route Cache Store the recent information Each forwarding host can add route
information to cache All source routes learned by a node
are kept in Route cache reduces cost of route discovery
Optimizations for efficiency
A B C D
Step1: Discovery A->D
E
Step2: Discovery A->EStep3: Discovery, find A->C only single host
BCDCE
CD
CE
Optimizations for efficiency
Piggybacking Data is piggybacked on Route Request
Packet and Route Reply Packet Reflecting shorter routes
A B C D
BCDCD
DSR Advantages
Routes maintained only between nodes who need to communicate reduces overhead of route maintenance
Route caching can further reduce route discovery overhead
DSR Disadvantages
Packet header size grows with route length due to source routing
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
Ad-hoc On-demand Distance Vector (AODV)
Improved over DSDV algorithm minimize the number of required broadcast by creating
routes on a demand basis AODV retains the desirable feature of DSR that
routes are maintained only between nodes which need to communicate DSR resulting large headers can sometimes degrade
performance Nodes (not on a selected path) don’t maintain
routing information or participate in routing table exchanges.
AODV uses sequence numbers
AODV
Route table entry Destination Next hop Number of hops (metric) Sequence number for the destination Active neighbors for this route Expiration time for the route table entry
AODV
RREQ < source_addr, source_sequence-# , broadcast
_id, dest_addr, dest_sequence_#, hop_cnt > Route Requests (RREQ) are forwarded in a ma
nner similar to DSR A node re-broadcasts a Route Request, it sets u
p a reverse path pointing towards the source
AODV
RREP <source_addr , dest_addr , dest_sequence_#,
hop_cnt , lifetime > Route Reply travels along the reverse path set-up when
Route Request is forwarded RERR (Route Error) Periodic forward messages to detect link
Hello Message Neighboring nodes periodically exchange hello message
AODV Route Discovery
A
B
C
D
E G
F H
Source A forward data to destination G
A broadcast RREQ
sets up a reverse path
AODV Reverse Path
Reverse path setup Forward RREP
Destination IP address Source IP address Broadcast_id Expiration time for reverse path route entry Source node’s sequence number
DSR VS AODV
Difference DSR forward greater packets than AODV AODV periodically forward Hello Message to
neighbors , DSR not. Similarity
Node (not on a select path) do not maintain routing information
Only forward the first copy packet RREQ , RREP , RRER