14-02-2013, 11:09 AM
Ad Hoc Routing:The AODV and DSR Protocols
Ad Hoc Routing.ppt (Size: 362.5 KB / Downloads: 39)
Routing Overview
Network with nodes, edges
Goal: Devise scheme for transferring message from one node to another
Which path?
Who decides – source or intermediate nodes?
Which path?
Generally try to optimize something:
Shortest path (fewest hops)
Shortest time (lowest latency)
Shortest weighted path (utilize available bandwidth)
Etc…
Who determines route?
Two general approaches:
Source (“path”) routing
Source specifies entire route: places complete path to destination in message header: A – D – F – G
Intermediate nodes just forward to specified next hop: D would look at path in header, forward to F
Like airline travel – get complete set of tickets to final destination before departing…
Destination (“hop-by-hop”) routing
Source specifies only destination in message header: G
Intermediate nodes look at destination in header, consult internal tables to determine appropriate next hop
Like postal service – specify only the final destination on an envelope, and intermediate post offices select where to forward next…
Ad Hoc Routing
Every node participates in routing: no distinction between “routers” and “end nodes”
No external network setup: “self-configuring”
Especially useful when network topology is dynamic (frequent network changes – links break, nodes come and go)
Ad Hoc Routing Protocols
Standardization effort led by IETF Mobile Ad-hoc Networks (MANET) task group
9 routing protocols in draft stage, 4 drafts dealing with broadcast / multicast / flow issues
Other protocols being researched
utilize geographic / GPS info, ant-based techniques, etc.
Leading MANET Contenders
DSR: Dynamic Source Routing
Source routing protocol
AODV: Ad-hoc On-demand Distance Vector Routing
“Hop-by-hop” protocol
Both are “on demand” protocols: route information discovered only as needed
DSR Protocol Activities
Route discovery
Undertaken when source needs a route to a destination
Route maintenance
Used when link breaks, rendering specified path unusable
Routing (easy!)