EIGRP
Enhanced Interior Gateway Protocol (EIGRP) is a proprietary hybrid routing protocol developed by Cisco Systems. EIGRP uses the same distance vector algorithm and distance information as IGRP. However, as its name implies, EIGRP has been enhanced in convergence properties and operating efficiency over IGRP. Principally, EIGRP has been enhanced to use more advanced features to avoid routing loops and to speed convergence time. In addition, EIGRP transmits the subnet mask for each routing entry, enabling EIGRP to support features such as VLSM and route summarization.
EIGRP Features
EIGRP provides advanced features over its predecessors IGRP and RIP:
- Increased network width— With IP RIP, the largest possible width of your network is 15 hops. When IP EIGRP is enabled, the largest possible width is 224 hops.
- Fast convergence— EIGRP uses an algorithm called the Diffusing Update Algorithm (DUAL). This algorithm guarantees loop-free operation at every instant throughout a route computation and allows all routers involved in a topology change to synchronize at the same time. Routers that are not affected by topology changes are not involved in recomputations. DUAL provides a system for routers to not only calculate the best current route to each subnet, but also to calculate alternative routes that could be used if the current route fails. The alternate route, called the feasible successor route, is guaranteed to be loop-free, so convergence can happen quickly. Because of DUAL, the convergence time of EIGRP rivals that of other existing routing protocols.
- Partial updates— EIGRP sends incremental updates when the state of a destination changes, instead of sending the entire contents of the routing table. This feature reduces the bandwidth required for EIGRP packets and also reduces CPU processing.
- Neighbor-discovery mechanism— This is a simple hello mechanism used to learn about neighboring routers. It is protocol-independent.
- VLSM and route summarization— EIGRP supports variable-length subnet masks and route summarization.
- Automatic redistribution— Because IGRP and EIGRP share the same metrics, IP IGRP routes can be automatically redistributed into EIGRP, and IP EIGRP routes can be automatically redistributed into IGRP. If desired, you can turn off redistribution. Redistribution is covered in more detail in Chapter 11, “Route Redistribution.”
EIGRP Components
EIGRP has four basic components:
- Neighbor discovery/recovery— Routers use this process to dynamically learn of other routers on their directly attached networks. Routers also must discover when their neighbors become unreachable or inoperative. Neighbor discovery/recovery is achieved with low overhead by periodically sending small hello packets. As long as hello packets are received, a router can determine that a neighbor is alive and functioning. When this status is determined, the neighboring routers can exchange routing information.
- Reliable transport protocol— This protocol is responsible for guaranteed, ordered delivery of EIGRP packets to all neighbors. It supports intermixed transmission of multicast and unicast packets. Some EIGRP packets must be transmitted reliably and others need not be. For efficiency, reliability is provided only when necessary. For example, on a multi-access network that has multicast capabilities, such as Ethernet, it is not necessary to send hellos reliably to all neighbors individually. Therefore, EIGRP sends a single multicast hello with an indication in the packet informing the receivers that the packet need not be acknowledged. Other types of packets, such as updates, require acknowledgment, and this is indicated in the packet. The reliable transport has a provision to send multicast packets quickly when there are unacknowledged packets pending. Doing so helps ensure that convergence time remains low in the presence of varying speed links.
- DUAL finite state machine— This embodies the decision process for all route computations. It tracks all routes advertised by all neighbors. DUAL uses the distance information, known as a metric, to select efficient, loop-free paths. DUAL selects routes to be inserted into a routing table based on feasible successors. A successor is a neighboring router used for packet forwarding that has a least-cost path to a destination that is guaranteed not to be part of a routing loop. When there are no feasible successors but there are neighbors advertising the destination, a recomputation must occur. This is called “going active.” A router asks all of its neighbors if they have a feasible successor to the destination. If none replies, the neighbors go active and the process repeats. This is the process whereby a new successor is determined. The amount of time that it takes to recompute a route affects the convergence time. Even though the recomputation is not processor-intensive, it is advantageous to avoid recomputation if it is not necessary. When a topology change occurs, DUAL tests for changes to feasible successors. If feasible successors exist, it uses any that it finds, to avoid unnecessary recomputation.