DUAL Algorithm
The Diffusing Update Algorithm (DUAL) is the core of EIGRP's rapid convergence and loop-free operation. DUAL ensures that all routes calculated are loop-free and allows for quick re-convergence when a primary path fails.
Key Concepts in DUAL:
- Feasible Distance (FD): The best metric from the local router to the destination network. This is the metric of the successor route.
- Advertised Distance (AD) / Reported Distance (RD): The metric advertised by a neighbor to reach a destination network.
- Successor: The next-hop router for the best path to a destination. The successor route is stored in the routing table.
- Feasible Successor (FS): A backup path to a destination that is guaranteed to be loop-free. A neighbor can be a feasible successor if its Advertised Distance to the destination is less than the local router's Feasible Distance to the same destination.
DUAL Operation:
- Passive State: When a router has a stable route (successor) and potentially a feasible successor, it is in a passive state for that route.
- Active State: If the successor route fails and there is no feasible successor available, the router enters an active state for that route. It sends queries to its neighbors to find a new path.
- Queries and Replies: Neighbors respond to queries with their best paths to the destination. If a neighbor doesn't have a path, it queries its own neighbors. This diffusion process continues until a new path is found or it's determined that the network is unreachable.
- Convergence: Once a new path is found (either directly or through a query/reply process), the router updates its routing table and returns to a passive state.
The ability of DUAL to pre-calculate backup paths (feasible successors) significantly reduces convergence time, as the router doesn't need to re-calculate a path from scratch when the primary path fails.