From cwhite's wiki
Jump to: navigation, search

EIGRP is an "advanced" distance vector protocol based on the way it does its path calculation; it does not have an overall view of the topology.

General Information

  • IP protocol 88 (EIGRP)
    • Uses Reliable Transport Protocol (RTP)
  • Uses multicast to (hellos) and unicast (updates).
  • Forms active neighbor adjacencies - guarantees packet delivery and supports partial updates.
  • Uses the Diffusing Update Algorithm (DUAL) to guarantee a loop-free topology.
  • Fast convergence (in some cases it has the fastest convergence of all IGPs depending on the design).
  • Supports unequal cost load balancing. This is the only IGP that supports true load distribution.
  • Supports auto-summary and manual summaries anywhere in the network.
  • Supports MD5 based authentication.

Forming Adjacencies

Neighbors are discovered with HELLO packets that are sent to from the primary IP address.

The neighbors must agree on
  • IPv4 subnet
  • AS Number
  • Authentication
  • Metric Weightings (K values)
The neighbors do not need to agree on
  • HELLO timers

Since EIGRP is a distance vector protocol, you can only advertise what you have installed in the RIB.

Loop Prevention

EIGRP sends the router ID in updates to prevent routing loops. This is mainly used for external EIGRP but the router ID is still sent in updates to internal EIGRP neighbors. DUAL also helps with loop prevention in which if your metric is lower than mine, you are loop-free. You also have split-horizon which states that you will not send an update out an interface you received that update from.

Path calculation and convergence

All routes learned from all neighbors make up the EIGRP topology table. Once the topology is learned, DUAL runs to choose a loop-free best path to each destination (path with the lowest "composite metric").

Composite metric can be calculated from the following K-values
  • K1 - Bandwidth (default)
  • K2 - Load
  • K3 - Delay (default)
  • K4 - Reliability
  • K6 - EIGRP Wide Metrics (only used in named EIGRP)

(K5 - MTU is not used to calculate the composite metric).

EIGRP composite cost metric = 256*((K1*Scaled Bw) + (K2*Scaled Bw)/(256 – Load) + (K3*Scaled Delay)*(K5/(Reliability + K4)))

EIGRP Wide metric cost = [(K1*Minimum Throughput + {K2*Minimum Throughput} / 256-Load) + (K3*Total Latency)+(K6*Extended Attributes)]* [K5/(K4 + Reliability)]

The feasibility condition (FC) is used to select loop-free backup paths. The FC is used to find the lowest end-to-end metric in the network. Once the FC has determined the successor, it will look at any of the other possible paths it is learning and determine if any of them are eligible to become feasible successors.

The precomputed backup paths make it possible to have sub second reconvergence when the primary path fails, allows for unequal cost load distribution and helps with fault isolation.

Best path to destination
Feasible Distance (FD)
Composite metric of the best path (successor)
Reported Distance (RD)
Composite metric learned from neighbors
Feasible Successor (FS)
Backup paths that meet the feasibility condition.

The feasibility condition finds loop-free backup routes if the RD is less than the FD. Basically, if your metric is lower than mine, you are closer to the destination and loop-free. Paths that meet the FC are feasible successors and can be used for unequal cost load balancing.

Reconvergence differs for paths with or without a FS. Paths without a FS will have a loss of a successor and put the route into the active state. The router will send a QUERY to all neighbors and when converged will have heard a REPLY from all neighbors. There is something called stuck in active (SIA) which can happen if you do not hear a REPLY back from neighbors within a specific time interval. If a route goes into SIA, it will drop the neighbor and will flush all the routes in the RIB. Some ways to prevent this is to use EIGRP stubs or use summarization.

Diffusing Update Algorithm (DUAL)


IOS 15SY EIGRP Configuration Guide