EIGRP: Bandwidth Part2

R1#sh interfaces serial 0/0
Serial0/0 is up, line protocol is up
Hardware is PowerQUICC Serial
Description: This is a DCE to R2
Internet address is 10.0.1.1/24
MTU 1500 bytes, BW 1544 Kbit/sec, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation HDLC, loopback not set
Keepalive set (10 sec)
Last input 00:00:06, output 00:00:05, output hang never
Last clearing of “show interface” counters 03:37:30
Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 46
Queueing strategy: fifo
Output queue: 0/40 (size/max)
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
1020 packets input, 69253 bytes, 0 no buffer
Received 1020 broadcasts, 0 runts, 0 giants, 0 throttles
1 input errors, 0 CRC, 1 frame, 0 overrun, 0 ignored, 0 abort
1051 packets output, 70248 bytes, 0 underruns
0 output errors, 0 collisions, 7 interface resets
0 unknown protocol drops
0 output buffer failures, 0 output buffers swapped out
9 carrier transitions
DCD=up  DSR=up  DTR=up  RTS=up  CTS=up

Remember that I set the clock rate of DCE se0/0 to 512kbps? Look at the show interfaces output, the bandwidth is 1.544mbps which is a T1 bandwidth. EIGRP assumes the serial link is a T1 link.

Now by default EIGRP will utilize 50% of the total bandwidth of the link. Half of 1.544mbps is 772kbps. My DCE serial 0/0 original clock rate is 512kbps, EIGRP will use up to 772kbps of this link causing the 512kbps link to be oversubscribed.

Also remember the EIGRP calculation based on K values.

K1. Bandwidth

K2. Reliability

K3. Delay

K4 and K5. Loading

MTU is never in the formula.

By default K1 and K3 are used, so both will be set to 1 while the remaining K values are zeroes. To obtain an accurate EIGRP metric calculation the serial link bandwidth has to be accurate.

R1(config)#int serial 0/0
R1(config-if)#bandwidth ?
<1-10000000>  Bandwidth in kilobits
inherit       Specify that bandwidth is inherited
receive       Specify receive-side bandwidth

Notice the bandwidth is in kilobits. Hence,

R1(config-if)#bandwidth 512

R2(config)#int serial 0/0
R2(config-if)#bandwidth 512

R2#sh interfaces serial 0/0
Serial0/0 is up, line protocol is up
Hardware is PowerQUICC Serial
Description: This is a DTE to R1
Internet address is 10.0.1.2/24
MTU 1500 bytes, BW 512 Kbit/sec, DLY 20000 usec,

R1#sh interfaces serial 0/0
Serial0/0 is up, line protocol is up
Hardware is PowerQUICC Serial
Description: This is a DCE to R2
Internet address is 10.0.1.1/24
MTU 1500 bytes, BW 512 Kbit/sec, DLY 20000 usec,

R1(config)#router eigrp 100
R1(config-router)#network 10.0.1.0 0.0.0.255

R1(config-router)#no passive-interface se0/0

Configuring specific EIGRP route is my way of doing, remember the router will look for the most specific match in the routing table to route. The route with the longest prefix is the best route to routers. If there’s a RIP route with the most specific entry in the routing table, the router will choose the RIP route with the highest prefix match.

Hello will not be exchanged with passive interface and hence no EIGRP adjacency will be formed with passive interface.

R1#sh ip eigrp neighbors
IP-EIGRP neighbors for process 100
H   Address                 Interface       Hold Uptime   SRTT   RTO  Q  Seq
(sec)         (ms)       Cnt Num
2   10.0.1.2                Se0/0             13 00:01:21    6   282  0  14
1   10.0.0.3                Fa0/0             11 01:32:31    9   200  0  7
0   10.0.0.2                Fa0/0             11 01:36:22    3   200  0  11

Neighbourship between R1 and R2 serial interfaces is formed.

R3 has learned the new route

R3#sh ip route eigrp 100
10.0.0.0/24 is subnetted, 4 subnets
D       10.1.1.0 [90/156160] via 10.0.0.1, 00:42:32, FastEthernet0/0
D       10.0.1.0 [90/5514496] via 10.0.0.2, 00:03:11, FastEthernet0/0
[90/5514496] via 10.0.0.1, 00:03:11, FastEthernet0/0

I want to see EIGRP in action, I purposefully shut down serial interface of R2.

*Mar  1 15:04:26.061: EIGRP: Received HELLO on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:04:26.061:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Mar  1 15:04:26.610: EIGRP: Received QUERY on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.610:   AS 100, Flags 0x0, Seq 16/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0

As soon as serial 0/0 of R2 is down, R1 asked for a route and send a query to R3 via fa0/0
*Mar  1 15:04:26.614: EIGRP: Enqueueing ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.614:   Ack seq 16 iidbQ un/rely 0/0 peerQ un/rely 1/0
*Mar  1 15:04:26.618: EIGRP: Sending ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.618:   AS 100, Flags 0x0, Seq 0/16 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 1/0

R3 says understood, I do not have the route to 10.0.1.0/24 but I can help you to find out from my friend (R2)

*Mar  1 15:04:26.626: EIGRP: Enqueueing QUERY on FastEthernet0/0 iidbQ un/rely 0/1 serno 6-6
*Mar  1 15:04:26.630: EIGRP: Enqueueing QUERY on FastEthernet0/0 nbr 10.0.0.2 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 6-6
*Mar  1 15:04:26.630: EIGRP: Enqueueing QUERY on FastEthernet0/0 nbr 10.0.0.1 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 6-6
*Mar  1 15:04:26.630: EIGRP: Sending QUERY on FastEthernet0/0

*Mar  1 15:04:26.630:   AS 100, Flags 0x0, Seq 10/0 idbQ 0/0 iidbQ un/rely 0/0 serno 6-6

R3 is preparing a query to R1 and R2… oh.. R1 too? This is stupid….

R3 asked, “Hey R1 and R2, you know a path to 10.0.1.0/24?”

*Mar  1 15:04:26.638: EIGRP: Received ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.638:   AS 100, Flags 0x0, Seq 0/10 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1

R1 says ok I will help to find out. (o_O);; Does R1 have split personality?

*Mar  1 15:04:26.638: EIGRP: Received ACK on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:04:26.638:   AS 100, Flags 0x0, Seq 0/10 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1

R2 says ok I will help to find out.

*Mar  1 15:04:26.638: EIGRP: FastEthernet0/0 multicast flow blocking cleared

What’s this?
*Mar  1 15:04:26.646: EIGRP: Received REPLY on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:04:26.646:   AS 100, Flags 0x0, Seq 18/10 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0

R2 replied. Probably said “No”

*Mar  1 15:04:26.646: EIGRP: Enqueueing ACK on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:04:26.646:   Ack seq 18 iidbQ un/rely 0/0 peerQ un/rely 1/0
*Mar  1 15:04:26.650: EIGRP: Sending ACK on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:04:26.650:   AS 100, Flags 0x0, Seq 0/18 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 1/0

R3 thanked R2, “Roger, thanks”

*Mar  1 15:04:26.650: EIGRP: Received REPLY on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.654:   AS 100, Flags 0x0, Seq 17/10 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0

R1 said, “No”

*Mar  1 15:04:26.654: EIGRP: Enqueueing ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.654:   Ack seq 17 iidbQ un/rely 0/0 peerQ un/rely 1/0
*Mar  1 15:04:26.654: EIGRP: Sending ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.654:   AS 100, Flags 0x0, Seq 0/17 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 1/0

R3 said, “Erm…Thanks.” -_-a

*Mar  1 15:04:26.666: EIGRP: Enqueueing REPLY on FastEthernet0/0 nbr 10.0.0.1 iidbQ un/rely 0/1 peerQ un/rely 0/0 serno 7-7
*Mar  1 15:04:26.670: EIGRP: Requeued unicast on FastEthernet0/0
*Mar  1 15:04:26.674: EIGRP: Sending REPLY on FastEthernet0/0 nbr 10.0.0.1

*Mar  1 15:04:26.674:   AS 100, Flags 0x0, Seq 11/17 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1 serno 7-7

R3 said to R1, “Sorry buddy I asked my friends they do not have a path to 10.0.1.0/24 as well” o_Oa

*Mar  1 15:04:26.678: EIGRP: Received ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:26.678:   AS 100, Flags 0x0, Seq 0/11 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1

R1 said, “Thanks buddy, that’s fine”

*Mar  1 15:04:27.772: EIGRP: Received HELLO on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:04:27.772:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
R3#
R3#
*Mar  1 15:04:29.383: EIGRP: Sending HELLO on FastEthernet0/0
*Mar  1 15:04:29.383:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0
R3#
*Mar  1 15:04:30.749: EIGRP: Received HELLO on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:04:30.749:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
R3#

Life goes on as usual.

Now I turn on the serial interface of R2 again.

R3#
*Mar  1 15:20:55.912: EIGRP: Received HELLO on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:20:55.912:   AS 100, Flags 0x0, Seq 0/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Mar  1 15:20:57.394: EIGRP: Received UPDATE on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:20:57.394:   AS 100, Flags 0x0, Seq 25/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0

R1 told R3, “Hey buddy! Something new is happening! blah blah blah”

*Mar  1 15:20:57.394: EIGRP: Enqueueing ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:20:57.394:   Ack seq 25 iidbQ un/rely 0/0 peerQ un/rely 1/0
*Mar  1 15:20:57.398: EIGRP: Sending ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:20:57.398:   AS 100, Flags 0x0, Seq 0/25 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 1/0

R1 said, “R3 that’s exciting! Thanks for sharing!”

*Mar  1 15:20:57.402: EIGRP: Received UPDATE on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:20:57.402:   AS 100, Flags 0x0, Seq 27/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0

R2 said to R1, “Hey buddy! I have something new to share! blah blah blah”

*Mar  1 15:20:57.402: EIGRP: Enqueueing ACK on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:20:57.402:   Ack seq 27 iidbQ un/rely 0/0 peerQ un/rely 1/0
*
R3#Mar  1 15:20:57.406: EIGRP: Sending ACK on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:20:57.406:   AS 100, Flags 0x0, Seq 0/27 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 1/0

R3 said, “Thanks R2. I got to share this news to my friends”

*Mar  1 15:20:57.410: EIGRP: Enqueueing UPDATE on FastEthernet0/0 iidbQ un/rely 0/1 serno 12-12
*Mar  1 15:20:57.415: EIGRP: Enqueueing UPDATE on FastEthernet0/0 nbr 10.0.0.2 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 12-12
*Mar  1 15:20:57.415: EIGRP: Enqueueing UPDATE on FastEthernet0/0 nbr 10.0.0.1 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 12-12
*Mar  1 15:20:57.415: EIGRP: Sending UPDATE on FastEthernet0/0

*Mar  1 15:20:57.415:   AS 100, Flags 0x0, Seq 16/0 idbQ 0/0 iidbQ un/rely 0/0 serno 12-12

R3 said, “This is interesting! I got to tell R1 and R2 about this news!” -_-a HUH? WTF?

*Mar  1 15:20:57.423: EIGRP: Received ACK on FastEthernet0/0 nbr 10.0.0.2
*Mar  1 15:20:57.423:   AS 100, Flags 0x0, Seq 0/16 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1
*Mar  1 15:20:57.423: EIGRP: Received ACK on FastEthernet0/0 nbr 10.0.0.1
*Mar  1 15:20:57.423:   AS 100, Flags 0x0, Seq 0/16 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1
*Mar  1 15:20:57.423: EIGRP: FastEthernet0/0 multicast flow blocking cleared

R1 and R2 both said thanks to R3… -_-” Rumours spread among themselves and repeated the rumour to the same source again…I thought there’s split horizon….-_-” Perhaps I misinterpreted it…

I posted a question to the learning network:

https://learningnetwork.cisco.com/message/93455

Refer to this. Thanks to Brian and Keith for answering the question.

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s