EIGRP is able to use the bandwidth, delay, load, reliability and MTU as input for its metric calculation. The metric is calculated using some weighting constants called the K values.
By default only bandwidth and delay are used for the metric calculation and Cisco recommends not to use load and reliability. The bandwidth and delay are both static values while load and reliability are dynamic, they change all the time.
For labs it might be useful to disable bandwidth as it simplifies the metric calculation. By default, EIGRP will use the lowest bandwidth in the path while the delays of all interfaces in the path are accumulated.
The formula to calculate the metric is quite complicated as I explained here. In this lesson we’ll take a look how we can configure these K values. This is the topology I will use:
Let’s start by enabling EIGRP:
R1 & R2#
(config)#router eigrp 12
(config-router)#network 192.168.12.0
With the default configuration EIGRP will use these K values:
R1#show ip protocols | include K
EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
K1 and K3 are set to one, with these two enabled the routers will include bandwidth and delay in the metric calculation. Let’s change the K values so that our router will only use K3:
R1(config)#router eigrp 12
R1(config-router)#metric weights ?
<0-8> Type Of Service (Only TOS 0 supported)
We use the metric weights command to change the K values. The first value is for the TOS byte but as you can see it only supports a value of 0. The next values are for the actual K values:
R1(config-router)#metric weights 0 ?
<0-255> K1
This one is for K1, let’s set it to zero. If you increase the weight here then bandwidth will be more of an influence for the metric calculation. Let’s continue:
R1(config-router)#metric weights 0 0 ?
<0-255> K2
K2 is disabled by default so let’s keep it that way:
R1(config-router)#metric weights 0 0 0 ?
<0-255> K3
K3 is enabled by default, let’s keep it enabled:
R1(config-router)#metric weights 0 0 0 1 ?
<0-255> K4
K4 is also disabled by default, let’s keep it disabled. Last but not least is K5:
R1(config-router)#metric weights 0 0 0 1 0 ?
<0-255> K5
This one refers to the MTU which isn’t really used in the metric calculation. Our final command will be:
R1(config-router)#metric weights 0 0 0 1 0 0
As soon as you change the weight values you will see this on your console:
Is there any reason in a real world deployment you might not want to disable BW? It seems more deterministic to use just BW.
Hi William,
As Rene has mentioned in the lesson, Cisco by default has Bandwidth and delay enabled while load and reliability are disabled as they change dynamically and Cisco recommended us to not enable them.
So in other term, Cisco wanted to say keep BW and delay only active. In the real world, I don’t see any reason to disable BW & delay. In case you want to disable any of them then it is better to disable the delay and keep the bandwidth enabled because the delay is calculated based on the sum of delays in the path as per the below formula’s
... Continue reading in our forumMetric = band
Hi William,
The calculation is sum of all the delays and the lowest bandwidth.
So if you only enable the bandwidth then essentially the path length is not taken into consideration.
Usually you would prefer a shortest path if all the bandwidths are the same.
Stuart
Hi, Rene.
I was reading and researching on Google about the K6, and they say it represents jittler and energy. Jittler makes sense, but energy can’t understand. Are you going to use electricity as a metric? LOL
Would you know clearly how to explain the real need of K6 and how the metric is calculated?
Hi Stefanio,
As weird as it sounds, that’s exactly what they intend with energy yes
Here’s an excerpt from RFC 7868:
https://datatracker.ietf.org/doc/html/rfc7868
On the Cisco site, you can find
... Continue reading in our forum