Skip to main content

EIGRP load balancing

More
15 years 4 months ago #31540 by pedenski
I am always confused how these load balancing works on EIGRP routing protocols please help me clear out some questions

1. It is recommended to set the bandwidth to each link when using EIGRP. When a router connects to a LAN, it automaticallys sets the bandwidth right? (e.g when using FA it is default to 100mbps) when it comes to serial interfaces, the default is 1544mbps.
Can we literally increase the serial links using different kinds of serial cables then adjust it according to the speed for better efficiency of EIGRP?

2. How do you configure load balancing in EIGRP? and how do i know if the load balancing is working?
More
15 years 4 months ago #31545 by Perlhack
Replied by Perlhack on topic Re: EIGRP load balancing
Hi,
Fast E does default to 100M, and some serial interfaces default to 1536K. If your doing shaping or rate limiting on the interface and running EIGRP on that interface it is a good idea to set the BW to the shaped rate. By default EIGRP can use up to 50% of the BW on the interface. Having more than one ip next hop for the same destination with equal or unequal (variance XXX) costs in the routing table is load balancing. The CEF table is automatically updated from the FIB and its actually CEF that does the load balanacing. Options available:

ip cef load-sharing algorithm ?
include-ports Algorithm that includes layer 4 ports
original Original algorithm
tunnel Algorithm for use in tunnel only environments
universal Algorithm for use in most environments



D 10.0.4.0/24 [90/335360] via 11.1.1.8, 00:13:27, Tunnel0
[90/335470] via 11.1.1.7, 00:13:27, Tunn

sh ip cef | b 10.0.4.0/24
10.0.4.0/24 11.1.1.7 Tunnel0
11.1.1.8 Tunnel0


If you have two physical interfaces (mGRE tunnel is bad example) and there is eigrp load balancing it can be checked with "show interface stat"
each interface will have Route cache hits if load balancing is working. Also should have a host behind the router to send traffic. Router generated traffic is always processed switched, data plane traffic is switch via CEF (route cache). In the output below i do not have host behind this router in the lab.

show interface stat
Switching path Pkts In Chars In Pkts Out Chars Out
Processor 58837 8964365 82597 7095652
Route cache 0 0 0 0
Total 58837 8964365 82597 7095652
More
15 years 3 months ago #31560 by pedenski
Replied by pedenski on topic Re: EIGRP load balancing
hi perlhack i really appreciate your input.. I really do, but im not familiar with the terms youre using.. Im only studying for CCNA and I havent learned yet about CEF, tunneling.. :shock:
More
15 years 3 months ago #31565 by broadcaststorm
CCNA level EIGRP then ;)

Bandwidth... who cares right now? Unless you want to deliberately affect the bandwidth calculation that EIGRP will run, leave the bandwidth alone.
EIGRP will base it's routing table (successor routes) based on the DUAL algorithm which it will run on all the routes in it's topology table

The DUAL algorithm is run on the Bandwidth (K1) and Delay (K3) numbers, and is as follows:

Bandwidth (K1)
100,000,000 / Bandwidth in Kb/s of the slowest link x 256 = NNNNN

PLUS

Delay (K3)
Sum of the delay of every interface, in 10's of Microseconds x 256 = NNNN

Add the two NNNN values together to give you the EIGRP "cost" expressed either as the Advertised Distance, or the Feasible Distance.
If you have two or more routes with identical AD numbers, then an EIGRP router will load balance. If you have unequal cost paths, then you need to increase the Variance value so that the router will load balance across unequal paths.
I believe EIGRP is unique in being able to load balance across unequal paths. Equal cost load balancing is done by default in EIGRP and OSPF, if I recall correctly.

To work out if load balancing is working, look at the routing table; "show ip route". If a network has two entries listed under 1 "heading" load balancing is happening. If I can drag some output up, I'll copy 'n' paste it up in a moment...

To see the variance value do a "show IP protocols" command. The K values should also be displayed here as well:
More
15 years 3 months ago #31566 by broadcaststorm
OK...

show ip protocols command looks like this:

BOTTOM#sho ip protocols
Routing Protocol is "eigrp 100"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Default networks flagged in outgoing updates
Default networks accepted from incoming updates
EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
EIGRP maximum hopcount 100
EIGRP maximum metric variance 1
Redistributing: eigrp 100
EIGRP NSF-aware route hold timer is 240s
Automatic network summarization is not in effect
Maximum path: 4
Routing for Networks:
192.168.10.0
200.140.10.0
Routing Information Sources:
Gateway Distance Last Update
200.140.10.1 90 00:01:52
192.168.10.1 90 00:01:53
Distance: internal 90 external 170


Note the K vlaues, and the variance command.

With these values, my routing table looks like this:

BOTTOM#sho ip route
Codes: 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

Gateway of last resort is not set

100.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
D 100.140.10.2/32 [90/2195456] via 192.168.10.1, 00:04:58, Ethernet0/0
D 100.140.10.0/24 [90/2195456] via 192.168.10.1, 00:04:58, Ethernet0/0
D 100.140.10.1/32 [90/2681856] via 200.140.10.1, 00:04:58, Serial0/0
C 192.168.10.0/24 is directly connected, Ethernet0/0
200.140.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 200.140.10.0/24 is directly connected, Serial0/0
C 200.140.10.1/32 is directly connected, Serial0/0


I have two links to the 100.140.10.0 network. 2 x 128k serial links (see note at the bottom), and a 100mb/s ethernet link. As you can see, the route to 100.140.10.0 is via the ethernet0/0 interface 'cos the serial0/0 is just too slow!. Now I'm going to alter the variance value:

config-router#variance 3

Spot the difference:

BOTTOM#sho ip protocols
Routing Protocol is "eigrp 100"
Outgoing update filter list for all interfaces is not set
Incoming update filter list for all interfaces is not set
Default networks flagged in outgoing updates
Default networks accepted from incoming updates
EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
EIGRP maximum hopcount 100
EIGRP maximum metric variance 3
Redistributing: eigrp 100
EIGRP NSF-aware route hold timer is 240s
Automatic network summarization is not in effect
Maximum path: 4
Routing for Networks:
192.168.10.0
200.140.10.0
Routing Information Sources:
Gateway Distance Last Update
200.140.10.1 90 00:00:15
192.168.10.1 90 00:00:15
Distance: internal 90 external 170


And check the routing table entries:

BOTTOM#sho ip route
Codes: 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

Gateway of last resort is not set

100.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
D 100.140.10.2/32 [90/2195456] via 192.168.10.1, 00:00:55, Ethernet0/0
D 100.140.10.0/24 [90/2195456] via 192.168.10.1, 00:00:55, Ethernet0/0
[90/2681856] via 200.140.10.1, 00:00:55, Serial0/0

D 100.140.10.1/32 [90/2681856] via 200.140.10.1, 00:00:55, Serial0/0
C 192.168.10.0/24 is directly connected, Ethernet0/0
200.140.10.0/24 is variably subnetted, 2 subnets, 2 masks
C 200.140.10.0/24 is directly connected, Serial0/0
C 200.140.10.1/32 is directly connected, Serial0/0


Note the route to the 100.140.10.0 network now has two routing table entries via different interfaces. Load balancing across unequal cost pathways will be happening ;)
Sadly the formatting isn't helping here, but if you look closely you can see that there is definitely two routes to the 100.140.10.0 ;)


**Note**

These configs were created on a 3 router lab. TOP, MIDDLE and BOTTOM.
TOP connects to MIDDLE with a serial cable. MIDDLE connects to BOTTOM with a serial cable. TOP connects to BOTTOM with an ethernet crossover cable. All routers are Cisco 2600 variants running either IOS 12.2 or 12.3.
All show commands were performed on the BOTTOM router.
More
15 years 3 months ago #31567 by broadcaststorm
Oh yeah, a "show ip eigrp topology" is also useful. It shows EIGRP's topology table...

sho ip eigrp topology
IP-EIGRP Topology Table for AS(100)/ID(200.140.10.2)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status

P 200.140.10.2/32, 0 successors, FD is Inaccessible
via 192.168.10.1 (2707456/2681856), Ethernet0/0
via 200.140.10.1 (2681856/2169856), Serial0/0
P 200.140.10.0/24, 1 successors, FD is 2169856
via Connected, Serial0/0
P 200.140.10.1/32, 1 successors, FD is 2169856
via Rconnected (2169856/0)
P 192.168.10.0/24, 1 successors, FD is 281600
via Connected, Ethernet0/0
P 100.140.10.2/32, 1 successors, FD is 2195456
via 192.168.10.1 (2195456/2169856), Ethernet0/0
P 100.140.10.0/24, 1 successors, FD is 2195456
via 192.168.10.1 (2195456/2169856), Ethernet0/0
via 200.140.10.1 (2681856/2169856), Serial0/0

P 100.140.10.1/32, 1 successors, FD is 2681856
via 200.140.10.1 (2681856/2169856), Serial0/0



Check out the successors and feasible successors in there! Nice 8)
Remember, the costs show as FD first, then AD second ;)
So you can hopefully see that the path to the 100.140.10.0 via Eth 0/0 has an FD of 2195456 and an AD of 2169856.
The successor via the Serial has an FD of 2681856 and an AD of 2169856. So the AD of the feasible successor (the Serial0/0) is less than the FD of the current successor (Ethernet 0/0), so the numbers work according to the rules.

All this good stuff with just 3 routers, 2 serial cables, one ethernet crossover cable and some fun with the configs. Practice makes perfect.
ALL the above configs can be recreated exactly as you see here in Packet Tracer, but IMO it's always best to have some real kit to use ;) Luckily, I was sitting at my lab when the call came in!!!
Time to create page: 0.132 seconds