CCNP ROUTE Study – EIGRP Unequal-Cost Load Balancing

By | June 13, 2013

EIGRP will load balance traffic across up to 16 links (4 by default) of equal cost.  One nice feature of EIGRP is that it can also be configured to load balance across unequal cost links, as opposed to other routing protocols like RIP and OSPF.

Our topology is made up of two routers connected to each other over 10Mbps Ethernet and 100Mbps Fast Ethernet links:

EIGRP LB

 

 

 

 

 

 

 

 

 

The first thing to note here is that even though there is only one router on each side of the link, because we have enabled EIGRP on both interfaces, two neighbour relationships are formed:

R1#sh ip eigrp neighbors 
IP-EIGRP neighbors for process 1000
H Address     Interface Hold  Uptime   SRTT RTO Q   Seq
                        (sec) (ms)              Cnt Num
1 192.168.1.2 Et1/0     10    00:36:21 3    200 0   24
0 192.168.1.6 Fa0/0     11    00:36:21 3    200 0   21

For simplicity I have configured EIGRP to only use the Bandwidth K value when calculating Feasible Distances.  The formula used normally throws up some ridiculous numbers that are of no use when it comes to understanding the protocol, so by telling EIGRP to only use Bandwidth in its calculations, we’ll end up with easier numbers to deal with.

This is achieved by the following commands:

R2(config-router)#router eigrp 1000
R2(config-router)#metric weights 0 1 0 0 0 0

We’ve configured a Loopback interface on R1 with the address 10.1.1.1, and R2 will use the faster link via Fa0/0 to get to this network by default, rather than load balancing traffic across both links.  R2’s routing table confirms this:

R2#sh ip route eigrp
 10.0.0.0/24 is subnetted, 1 subnets
D 10.1.1.0 [90/25600] via 192.168.1.5, 00:00:02, FastEthernet0/0

Also, if we look at R2’s topology table for the EIGRP 1000 routing process, we can see that it knows about both routes to the 10.1.1.0/24 network, but hasn’t placed the slower route in the routing table due to it’s Feasible Distance being 10 times that of the route via fa0/0:

R2#show ip eigrp 1000 topology 
IP-EIGRP Topology Table for AS(1000)/ID(192.168.1.6)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
 r - reply Status, s - sia Status
P 10.1.1.0/24, 1 successors, FD is 25600
 via 192.168.1.5 (25600/256), FastEthernet0/0
 via 192.168.1.1 (256000/256), Ethernet1/0

Now let’s configure unequal-cost load balancing to make use of the link via e1/0.  We do this with the variance command:

R2(config)#router eigrp 1000
R2(config-router)#variance 10

By setting the variance to 10 we are telling the router to load balance over routes that have an FD of up to 10 times worse than the FD of the Successor route.  This means that R2 will now place both routes into the routing table:

R2#sh ip route eigrp 
 10.0.0.0/24 is subnetted, 1 subnets
D 10.1.1.0 [90/25600] via 192.168.1.5, 00:10:25, FastEthernet0/0
           [90/256000] via 192.168.1.1, 00:10:25, Ethernet1/0

The result of this is that for every 10 packets that R2 sends to the 10.1.1.0/24 network out of it’s 100Mbps interface it will also send 1 packet out of the 10Mbps interface – load balancing packets across the two unequal-cost links.

 

I hope this has been a useful explanation.  Thanks for reading.

Rich

 

Follow Rich on Twitter

3 thoughts on “CCNP ROUTE Study – EIGRP Unequal-Cost Load Balancing

  1. Darko

    Great explanation, I love your posts from CCNP ROUTE Study section.
    Thanks

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *