EIGRP Calculating The Composite Metric

In EIGRP Each router calculates its own composite metric to a destination using the following formula:

EIGRP CM

The K values K1 to K5  are constants that can have the values (0 – 255) and can be tweaked to influence the formula. All K values must match in the EIGRP autonomous system or router adjacencies will not form.

By default K1 and K3 are set to 1, and the other values are set to 0, leaving the formula as follows:

EIGRP CM simplified

The term “BWscaled” is how much smaller the bandwidth is compared to a 10Gbps link, multiplied by 256 (it is multiplied by 256 as a result of expanding from 24bits (legacy IGRP) to 32bits

The term “Dscaled” is the sum of all the delays in tens of microseconds multiplied by 256 (for the same reason as above).

Wide Metrics

Wide metrics were developed to cope with circuits faster than 10Gbps. Also the default delay on a 1Gbps circuit is set to 1 (10 microseconds) which is the smallest value. It’s not possible to set the value less for faster circuits.

To see if your router supports wide metric use the commands:

show eigrp plugins (the version should be at least 8:00:00)

R1#show eigrp plugins
EIGRP feature plugins:::
eigrp-release : 10.00.00 : Portable EIGRP Release
<snip>

show eigrp tech-support (the version should be at least 8:00:00)

R1#show eigrp tech-support
EIGRP feature plugins:::
    eigrp-release      :  10.00.00 : Portable EIGRP Release
<snip>

show ip protocols (You should see the K6 constant)

R1#show ip protocols
*** IP Routing is NSF aware ***

Routing Protocol is "eigrp 100"
  Outgoing update filter list for all interfaces is not set
  Incoming update filter list for all interfaces is not set
  Default networks flagged in outgoing updates
  Default networks accepted from incoming updates
  EIGRP-IPv4 VR(sia) Address-Family Protocol for AS(100)
    Metric weight K1=1, K2=0, K3=1, K4=0, K5=0 K6=0
    Metric rib-scale 128
    Metric version 64bit
<snip>

EIGRP Wide metrics consist of the following components

Throughput: Analogous to the classic Bandwidth component – calculated at 65536×10^7 / Interface Bandwidth (The throughput component effectively tells you how much slower a circuit is compared to a 655.36 Tbps circuit.

Latency:  Analogous to the classic Delay component – calculated at 65536 x Interface Delay / 10^6 with the interface delay expressed in picoseconds.

The Interface Delay is calculated as follows:

Interfaces of 1Gbps and lower IOS default delay converted to picoseconds
Interfaces over 1Gbps without bandwidth and delay commands 10^13 / interface default
Interfaces of any speed configured with the bandwidth command (not delay) IOS default delay converted to picoseconds
Interfaces of any speed configured with the bandwidth and delay command Specified delay converted to picoseconds

Reliability – same as classic reliability

Load – same as classic load

MTU – same as classic MTU

Hop Count – Same as classic Hop Count

Extended metrics – These are placeholders for future extensions and include; Jitter, Energy, Quiescent Energy. To incorporate these into the composite metric the K6 constant was introduced.

The Wide Metric support is available when EIGRP is configured in named mode. In this mode the router will detect if its neighbour is using wide metrics, and if so these will be preferred. If not, classic metrics will be used.

The EIGRP Metric value can result in values greater than 32 bits and has to be down scaled before the route can be passed to the IOS RIB. This done by dividing by a factor configured in the “metric rib-scale” command. The default value is 128 (range 1-255). The downscaled value is not used by EIGRP in anyway.

Tweaking Interface Metrics to influence Path Selection

Tweaking bandwidth on an interface is a bad idea, because this can also impact QoS. Also EIGRP throttles to 50 percent of the configured bandwidth, so you could potentially starve EIGRP neighbours from getting packets.

It is much better to change the delay.