EIGRP - Enhanced Interior Gateway Routing Protocol. EIGRP is an advanced distance-vector routing protocol created by Cisco. This Routing protocol is classified as an IGP (Interior Gateway Protocol). Up until 2016, EIGRP was a Cisco proprietary routing protocol
EIGRP uses the algorithm "DUAL," a Diffusing Update Algorithm as referenced in "Loop-Free Routing Using Diffusing Computations" (Garcia-Luna-Aceves 1993). -RFC 7868
EIGRP is a dynamic routing protocol that creates a loop-free path to destination networks based on the best "metric"
EIGRP Neighborship Overview
EIGRP Enabled routers will initially send EIGRP "hello" packets out of their active EIGRP interfaces to form a "neighborship" with any EIGRP-enabled router with the same parameters
EIGRP Packets will use something called an "opcode" to specify which type of EIGRP packets. See the image below.
To form "neighborship," EIGRP routers will need to have the same values for the following:
- Autonomous System Number
- K Values
- Authentication (if configured)
Once the neighborship has formed, EIGRP will send Hello packets at intervals of 10 seconds (by default). This is called a "hello-timer" EIGRP will also have a "hold-timer," which is at default 40 seconds. Once the "hold-timer" has reached 40 seconds, the EIGRP connection will terminate with a "goodbye" message.
EIGRP will maintain a neighbor table, and from that "neighbor table," we will build a topology table
EIGRP Topology Table
EIGRP will build a topology table from its EIGRP neighbors using the information from it's neighbor's "update" packets.
Once an EIGRP-enabled router has received all updates from its neighbors, EIGRP will execute DUAL (diffusion update algorithm), decide which routes to its neighbor's routes are "best," and place those routes into the "global" routing table.
EIGRP's DUAL algorithm uses two main values to calculate the best path to a destination network. Bandwidth and Delay. These values are called "K" values. There is actually a total of 5 K Values used in DUAL. But for brevity, we usually refer to just bandwidth and delay as the two main metrics that get used to determine the best path.
The Global routing is built based on the best routes from the EIGRP topology table. The best routes are called "successor" routes. But what about all the other possible routes that do not have the preferred metric? Those are called feasible successor" routes. Feasible successor routes are loop-free alternative routes to the destination.
EIGRP allows for redundant loop-free paths to destination networks by following what we call the "feasibility condition." The feasibility condition will take the "reported distance" of all routes and ensure that the value for the "RD" is not more than the total "feasible" distance.
If a route's "RD" is higher than the "FD" then the route is not considered a "feasible successor."
EIGRP Global Routing Table
The EIGRP global routing table is built from the successor routes in the topology table. The best metric wins and gets placed into the routing table.
EIGRP allows for unequal load-balancing to destination routes. So it is possible to use the feasible successor to route traffic in the global routing table.