On this post, I will be exploring the concepts of EIGRP Unequal Cost Load Balancing. To give some quick overview, let’s see how Equal Cost Load Balancing works and created.

I will be using the same topology and configurations which I have for the EIGRP Successor and Feasible Successor topic.

In order to achieved equal cost load balancing, I did NOT modify the bandwidth or the delay parameters. It uses the default value. Example of this default value is the interface Gi0/2.

R1#show interfaces gi0/2

GigabitEthernet0/2 is administratively down, line protocol is down
  Hardware is iGbE, address is fa16.3e50.cf95 (bia fa16.3e50.cf95)
  Internet address is 13.0.0.1/24
  MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec, 
     reliability 255/255, txload 1/255, rxload 1/255

Let me show you this output from R1 routing table. The route towards 5.5.5.5/32 is an example of Equal Cost Load Balancing.

 R1#show ip route eigrp 
Codes: L – local, C – connected, S – static, R – RIP, M – mobile, B – BGP
       D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area 
       N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2
       E1 – OSPF external type 1, E2 – OSPF external type 2
       i – IS-IS, su – IS-IS summary, L1 – IS-IS level-1, L2 – IS-IS level-2
       ia – IS-IS inter area, * – candidate default, U – per-user static route
       o – ODR, P – periodic downloaded static route, H – NHRP, l – LISP
       a – application route
       + – replicated route, % – next hop override, p – overrides from PfR
Gateway of last resort is not set
      5.0.0.0/32 is subnetted, 1 subnets
D        5.5.5.5 
                 [90/131072] via 14.0.0.4, 00:48:03, GigabitEthernet0/3
                 [90/131072] via 13.0.0.3, 00:48:03, GigabitEthernet0/2
                 [90/131072] via 12.0.0.2, 00:48:03, GigabitEthernet0/1
      25.0.0.0/24 is subnetted, 1 subnets
D        25.0.0.0 [90/3072] via 12.0.0.2, 00:48:06, GigabitEthernet0/1
      35.0.0.0/24 is subnetted, 1 subnets
D        35.0.0.0 [90/3072] via 13.0.0.3, 00:48:03, GigabitEthernet0/2
      45.0.0.0/24 is subnetted, 1 subnets
D        45.0.0.0 [90/3072] via 14.0.0.4, 00:48:03, GigabitEthernet0/3
R1#

With the name itself, Unequal Cost Load Balancing means that there are one or more Feasible Successors to reach a certain prefix or routes.  Here is an example of this as observed from EIGRP topology table in R1.

R1#show ip eigrp topology | sec 5.5.5 

P 5.5.5.5/32, 1 successors, FD is 5248512
        via 12.0.0.2 (5248512/5248256), GigabitEthernet0/1
        via 14.0.0.4 (25728512/3785216), GigabitEthernet0/3
R1#

It is interesting to note that only the route learns via the Successor is installed on the routing table.

R1#show ip route | sec 5.5.5.

D        5.5.5.5 [90/5248512] via 12.0.0.2, 02:32:43, GigabitEthernet0/1
      12.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
R1#

So the question is, how can enable Unequal Cost Load Balancing?  In order to enable Unequal Cost Load Balancing, we need to configure a parameter called Variance under EIGRP process.

R1(config)#router eigrp 12345
R1(config-router)#variance ?
    Metric variance multiplier

But the question is how do we determine the Variance?

In order to calculate the variance , we need to follow a simple rules:


Feasible Distance of Feasible Successor  < Feasible Distance of Successor * Variance

So for the following EIGRP topology on R1, we need to ensure that the path through R4 is a Feasible Successor and then compute the variance which we can use to allow Unequal Load Balancing.


R1#show ip eigrp topology | sec 5.5.5 

P 5.5.5.5/32, 1 successors, FD is 5248512
        via 12.0.0.2 (5248512/5248256), GigabitEthernet0/1
        via 14.0.0.4 (25728512/3785216), GigabitEthernet0/3
R1#

In Order to  check whether R4 is a Feasible Successor, we need to verify using the Feasibility Condition. I have a detailed discussion about this rule on this post regarding EIGRP Successor and Feasible Successor.

The Feasiblity Condition states that “Advertised Distance of Potential Feasible Successor should be less than the Feasible Distance of the Successor”.

             Advertised Distance of F.S. <  Feasible Distance of Successor 

Let’s have a look into R4 topology table for Prefix 5.5.5.5/32


R4#show ip eigrp topology | sec 5.5.5
P 5.5.5.5/32, 1 successors, FD is 130816
        via 45.0.0.5 (3785216/128256), GigabitEthernet0/2
R4

We can see that R4 Feasible distance is 3785216. This value is advertise to R1 which became the Reported Distance or the Advertised Distance towards 5.5.5.5/32 via R4.
Going back on R1, we can see that 3785216 is the Reported Distance.

R1#show ip eigrp topology | sec 5.5.5 

P 5.5.5.5/32, 1 successors, FD is 5248512
        via 12.0.0.2 (5248512/5248256), GigabitEthernet0/1
        via 14.0.0.4 (25728512/3785216), GigabitEthernet0/3
R1#

So let’s check the Feasibility Condition:

               Advertised Distance of R4 <  Feasible Distance of R2 
                                         3785216   <   5248512

YES, that meets our Feasibility Conditions, therefore R4 is considered as a Feasible Successor.

Now , lets compute the Variance

 
Feasible Distance of Feasible Successor < Feasible Distance of Successor *Variance


25728512    <    5248512  * Variance


Mathematically, we can divide as follows:

     25728512
——————   = 4.90
      5248512

So i can used a Variance of 5 to meet the Variance conditions:
25728512  < 5248512 * 5 
25728512  < 26242560

So lets configure EIGRP process on R1 to use a variance of 5 and observed what it does on R1 routing table towards 5.5.5.5/32.

R1(config)#router eig
R1(config)#router eigrp 12345
R1(config-router)#variance 5
R1(config-router)#^Z
R1#show ip route eigrp | inc 5.5.5
D        5.5.5.5 [90/25728512] via 14.0.0.4, 00:00:24, GigabitEthernet0/3
R1#show ip route eigrp            
Codes: L – local, C – connected, S – static, R – RIP, M – mobile, B – BGP
       D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area 
       N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2
       E1 – OSPF external type 1, E2 – OSPF external type 2
       i – IS-IS, su – IS-IS summary, L1 – IS-IS level-1, L2 – IS-IS level-2
       ia – IS-IS inter area, * – candidate default, U – per-user static route
       o – ODR, P – periodic downloaded static route, H – NHRP, l – LISP
       a – application route
       + – replicated route, % – next hop override, p – overrides from PfR
Gateway of last resort is not set
      5.0.0.0/32 is subnetted, 1 subnets
D        5.5.5.5 
                 [90/25728512] via 14.0.0.4, 00:00:29, GigabitEthernet0/3
                 [90/5248512] via 12.0.0.2, 00:00:29, GigabitEthernet0/1
As observed above, the Feasible Successor (R4)  were installed on R1 routing table as well together with the Successor (R2).
It should be interesting to note that the variance is only used to enable Feasible Successors to be used for load balancing but amount of traffic that is carried by the Successor and Feasible Successor is not the same.
In this particular scenario, I would say that the ratio of the amount of traffic on R2 and R4 is 1:5, that is the variance used on R4.

#########################END OF LAB/NOTES#####################################

Leave a comment

Quote of the week

"People ask me what I do in the winter when there's no baseball. I'll tell you what I do. I stare out the window and wait for spring."

~ Rogers Hornsby