Ad-hoc On-demand Distance Vector
The ad hoc on-demand distance vector - routing algorithm ( AODV ) is an algorithm for routing data through a mobile ad-hoc network . The protocol belongs to the topology-based, reactive routing methods, i. H. Routes to certain destinations are only determined when necessary.
functionality
In the AODV protocol, each network node manages a routing table, the loop-free routes are created by an incrementing sequence number. In addition to the IP address of the next node in the direction of the destination ( next hop ), the sequence number of the destination node, the distance to the destination node (number of hops) and various status flags are stored in the routing table .
An AODV operation requires various network messages to distribute data across the network. The algorithm defines various message types for this purpose: Route Requests (RREQ), Route Replies (RREP) and Route Errors (RERR).
AODV is a reactive routing protocol: AODV is inactive as long as valid routes exist between two end points of a communication link. AODV only becomes active when a new route to a (new) destination has to be created: The originating node sends a request message (RREQ) by broadcast . A route is determined when the RREQ either reaches the destination or finds an intermediate node with a route that is "current enough". A route is "current enough" if the route entry is valid and the entered destination sequence number is at least as large as the destination sequence number in the request message. This route is sent back to the origin of the RREQ via a unicast response message (RREP) . For this purpose, each node that received and forwarded the request has stored the node from which it received the RREQ message.
Nodes monitor the connection status of neighboring nodes in active routes. If a break in the connection is detected, an error message (RERR) is sent to notify the link break. This message indicates the nodes that can no longer be reached through the broken connection. This notification mechanism is made possible by lists of “active neighbors” (nodes that have received a packet for forwarding to the destination within a period of time) in the route entries.