Ad hoc On-Demand Distance Vector (AODV) Routing is a routing protocol for mobile ad hoc networks (MANETs) and other wireless ad hoc networks. It was jointly developed by Charles Perkins (Sun Microsystems) and Elizabeth Royer (now Elizabeth Belding) (University of California, Santa Barbara) and was first published in the ACM 2nd IEEE Workshop on Mobile Computing Systems and Applications in February 1999.[1]
Communication protocol | |
Abbreviation | AODV |
---|---|
Purpose | Unicast Routing protocol for mobile-node wireless networks |
Developer(s) | Charles Perkins & Elizabeth Belding |
Introduction | 1999 |
RFC(s) | RFC 3561 |
AODV is the routing protocol used in Zigbee – a low power, low data rate wireless ad hoc network. There are various implementations of AODV such as MAD-HOC, Kernel-AODV, AODV-UU, AODV-UCSB and AODV-UIUC.[2]
The original publication of AODV won the SIGMOBILE Test of Time Award in 2018.[3] According to Google Scholar, this publication reached 30,000 citations at the end of 2022. AODV was published in the Internet Engineering Task Force (IETF) as Experimental RFC 3561[4] in 2003.
How it works
editEach node has its own sequence number that grows monotonically over time and ensures that there are no loops in the paths used. In addition, each network component assigned to routing functionality stores its own path index, which contains the address of the next node in the direction of the destination (next hop), its sequence number, and the total distance given in hops, or possibly other metrics designed to measure link quality.
In AODV, the network remains completely silent until a connection is required to forward a data packet. When routes need to be searched on the network, AODV resorts to the following packets defined by its protocol:
- Route request (RREQ)
- Route reply (RREP)
- Route error (RERR)
These messages can be implemented as simple UDP packets, so routing is still based on the Internet Protocol (IP).
RREQ packets are broadcast from the source node, so a burst of messages is generated and forwarded through the entire network. When a node in the network receives a request packet, it can send an RREP packet through a temporary path to the requesting node, which can then exploit the newly received information. Generally, each node compares different paths based on their length and chooses the most convenient one. If a node is no longer reachable, a RERR message is generated to alert the rest of the network.
Each RREQ has a "time to live" that limits the times it can be retransmitted. In addition, AODV implements a binary backoff mechanism in case the node does not receive a response to its RREQ, whereby requests are repeated at linearly increasing time intervals up to a maximum set by the implementation.
Evaluation
editThe main advantage of AODV is that it does not generate traffic in the case of already established and working routes. In fact, the algorithm itself is completely irrelevant as long as it does not turn out to be necessary to send a packet to a node whose route is unknown. Beyond that, distance vector-based routing is computationally simple and does not require large amounts of memory.
However, the protocol takes longer than other protocols to establish a connection between two nodes in a network.
See also
editReferences
edit- ^ Perkins, C.; Royer, E. (1999), Ad hoc On Demand Distance Vector (AODV) Routing (PDF)
- ^ Jhaveri, R.H.; Patel, N.M. (2015). "Mobile Ad-hoc Networking with AODV: A Review". International Journal of Next-Generation Computing. 6 (3): 165–191.
- ^ Prof. Elizabeth Belding receives the 2018 SIGMOBILE Test-of-time Award, University of California, Santa Barbara, retrieved 2018-12-07
- ^ Perkins, C.; Royer, E.; Das, S. (2003), Ad hoc On-Demand Distance Vector Routing (AODV) Experimental RFC 3561, doi:10.17487/RFC3561