cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2897
Views
15
Helpful
7
Replies

EIGRP Wide Metric Delay Calculation

jpl861
Level 4
Level 4

This is kinda weird. By default the loopback has a delay of 500 (at least on the IOS that I am using)

 

As you can see below, the delay is 5000usec.

 

IOU2(config-if)#int loop 0
IOU2(config-if)#no delay
IOU2(config-if)#no bandwidth
IOU2(config-if)#end
IOU2#sh int loop 0
Loopback0 is up, line protocol is up
Hardware is Loopback
Internet address is 2.2.2.2/32
MTU 1514 bytes, BW 8000000 Kbit/sec, DLY 5000 usec,
reliability 255/255, txload 1/255, rxload 1/255

 

EIGRP wide metric says the delay is a total of 1,250,000 pisoseconds.

 

IOU2#sh ip eig topo 2.2.2.2/32
EIGRP-IPv4 VR(multi-af) Topology Entry for AS(100)/ID(2.2.2.2) for 2.2.2.2/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 163840
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (163840/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 1250000 picoseconds

 

Changed delay to 50 to set it to 500usec. It is now 500,000,000 picoseconds

 

IOU2(config-if)#delay 50
IOU2(config-if)#do sh ip eigrp topo 2.2.2.2/32
EIGRP-IPv4 VR(multi-af) Topology Entry for AS(100)/ID(2.2.2.2) for 2.2.2.2/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 32849920
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (32849920/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 500000000 picoseconds

 

Changed it back to default which is 500 (5000usec). It is now 5,000,000,000 picoseconds.

 

IOU2(config-if)#delay 500

IOU2(config-if)#do sh int loop 0
Loopback0 is up, line protocol is up
Hardware is Loopback
Internet address is 2.2.2.2/32
MTU 1514 bytes, BW 8000000 Kbit/sec, DLY 5000 usec,

IOU2(config-if)#do sh ip eigrp topo 2.2.2.2/32
EIGRP-IPv4 VR(multi-af) Topology Entry for AS(100)/ID(2.2.2.2) for 2.2.2.2/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 327761920
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (327761920/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 5000000000 picoseconds

 

I don't know where EIGRP derived the 1,250,000 picoseconds when delay was not altered yet. When configured back to default, the correct picoseconds value appeared.

1 Accepted Solution

Accepted Solutions

Alex Mac
Level 1
Level 1

This thread looks a bit old but I thought it would be worth to mention what I found.
For EIGRP Wide Metrics (not classic ones taken from IGRP) it seems that, in IOS, for interfaces whose speed does not exceed 1 Gbps, IF THE DELAY IS NOT EXCPLICITLY SET, the delay is computed in this way:

Delay = ( Interface Delay * EIGRP_DELAY_PICO ) [EIGRP_DELAY_PICO = 10^6] .

 

For interface whose speed exceeds 1 Gbps, since IOS doesn't seem to report correctly the speed, the formula used is the following

 

Delay = ( (EIGRP_BANDWIDTH * EIGRP_DELAY_PICO) / Interface's Bandwidth ) .

 

Since the loopback's speed is set to 8Gbits then the second formula applies:

 

Delay = (10^7 * 10^6 )/8*10^6 = 10^7/8 = 1.250.000 picosec


I would expect the same behaviour for TenGigabit ones.

HTH, Alex

References
https://www.ciscolive.com/c/dam/r/ciscolive/us/docs/2017/pdf/BRKRST-2336.pdf#page=89 (page89)

https://tools.ietf.org/html/rfc7868#section-5.6.2.4

 

View solution in original post

7 Replies 7

Hello,

 

I recreated your setup in GNS3, with the below results. I am using 15.6(2)T-1. So your output might be IOS/platform dependent...

 

R1#sh int loopback 0
Loopback0 is up, line protocol is up
Hardware is Loopback
Internet address is 1.1.1.1/32
MTU 1514 bytes, BW 8000000 Kbit/sec, DLY 5000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation LOOPBACK, loopback not set
Keepalive set (10 sec)
Last input never, output never, output hang never
Last clearing of "show interface" counters never
Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
Queueing strategy: fifo
Output queue: 0/0 (size/max)
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
0 packets input, 0 bytes, 0 no buffer
Received 0 broadcasts (0 IP multicasts)
0 runts, 0 giants, 0 throttles
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort
0 packets output, 0 bytes, 0 underruns
0 output errors, 0 collisions, 0 interface resets
0 unknown protocol drops
0 output buffer failures, 0 output buffers swapped out

 

R1#sh ip eigrp topology 1.1.1.1/32
EIGRP-IPv4 Topology Entry for AS(1)/ID(1.1.1.1) for 1.1.1.1/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 128256
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (128256/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 5000 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1514
Hop count is 0
Originating router is 1.1.1.1

 

R1(config-if)#delay 50
1R1#sh ip eigrp topology 1.1.1.1/32
*Jun 24 17:51:50.314: %SYS-5-CONFIG_I: Configured from console by console
R1#sh ip eigrp topology 1.1.1.1/32
EIGRP-IPv4 Topology Entry for AS(1)/ID(1.1.1.1) for 1.1.1.1/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 13056
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (13056/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 500 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1514
Hop count is 0
Originating router is 1.1.1.1

 

R1(config-if)#delay 500

R1#sh ip eigrp topology 1.1.1.1/32
EIGRP-IPv4 Topology Entry for AS(1)/ID(1.1.1.1) for 1.1.1.1/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 128256
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (128256/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 5000 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1514
Hop count is 0
Originating router is 1.1.1.1

Hi,

You are using classic EIGRP so that is pretty much accurate. The problem is with EIGRP wide-metrics which measures the delay in picoseconds.

Thanks!

Hello,

 

ouch...sorry for that.

 

But even with wide metrics, when I change the delay from 50 back to the default 500, the result is:

 

Total delay is 1250000 picoseconds

That’s weird. 500 x 10,000,000 is not 1,250,000.

So I am resurrecting this discussion. Does anyone know why delay 5000 mircoseconds is translated into 1250000 picoseconds when using wide-metric EIGRP?

 

R9#sh int Lo0 | i DLY|addr
Internet address is 150.1.9.9/32
MTU 1514 bytes, BW 8000000 Kbit/sec, DLY 5000 usec,

 

R9#show ip eigrp topology 150.1.9.9/32
EIGRP-IPv4 VR(MULTI_AF) Topology Entry for AS(200)/ID(150.1.9.9) for 150.1.9.9/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 81920
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (81920/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 1250000 picoseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1514
Hop count is 0
Originating router is 150.1.9.9

 

If I change the dely to 6000 microseconds (600 tens) the picoseconds value will become correct

R9#sh int Lo0 | i add|DLY
Internet address is 150.1.9.9/32
MTU 1514 bytes, BW 8000000 Kbit/sec, DLY 6000 usec,
R9#show ip eigrp topology 150.1.9.9/32
EIGRP-IPv4 VR(MULTI_AF) Topology Entry for AS(200)/ID(150.1.9.9) for 150.1.9.9/32
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 393216000
Descriptor Blocks:
0.0.0.0 (Loopback0), from Connected, Send flag is 0x0
Composite metric is (393216000/0), route is Internal
Vector metric:
Minimum bandwidth is 8000000 Kbit
Total delay is 6000000000 picoseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1514
Hop count is 0
Originating router is 150.1.9.9

 

Alex Mac
Level 1
Level 1

This thread looks a bit old but I thought it would be worth to mention what I found.
For EIGRP Wide Metrics (not classic ones taken from IGRP) it seems that, in IOS, for interfaces whose speed does not exceed 1 Gbps, IF THE DELAY IS NOT EXCPLICITLY SET, the delay is computed in this way:

Delay = ( Interface Delay * EIGRP_DELAY_PICO ) [EIGRP_DELAY_PICO = 10^6] .

 

For interface whose speed exceeds 1 Gbps, since IOS doesn't seem to report correctly the speed, the formula used is the following

 

Delay = ( (EIGRP_BANDWIDTH * EIGRP_DELAY_PICO) / Interface's Bandwidth ) .

 

Since the loopback's speed is set to 8Gbits then the second formula applies:

 

Delay = (10^7 * 10^6 )/8*10^6 = 10^7/8 = 1.250.000 picosec


I would expect the same behaviour for TenGigabit ones.

HTH, Alex

References
https://www.ciscolive.com/c/dam/r/ciscolive/us/docs/2017/pdf/BRKRST-2336.pdf#page=89 (page89)

https://tools.ietf.org/html/rfc7868#section-5.6.2.4

 

Thanks Alex.  

Review Cisco Networking for a $25 gift card