07-17-2021 12:33 PM
Hi! I have a question about CEF load-sharing buckets with EIGRP UCLB.
How does the load-sharing work with a very small ratio?
It all works as it is supposed to but I do not understand how the buckets are distributed since there is only 16 of them... ?
Or how is it working in general since there is no bucket for G0/0 or am I reading the output wrongly?
EXAMPLE:
R1#sh ip cef 1.1.1.1 in 1.1.1.1/32, epoch 0, RIB[I], refcnt 5, per-packet sharing sources: RIB feature space: IPRM: 0x00028000 ifnums: GigabitEthernet0/0(2): 10.0.0.2 GigabitEthernet0/1(3): 10.0.1.3 GigabitEthernet0/2(4): 10.0.2.4 path list 0FA2CC94, 3 locks, per-packet, flags 0x49 [shble, rif, hwcn] path 1139E584, share 4/4, type attached nexthop, for IPv4 nexthop 10.0.0.2 GigabitEthernet0/0, IP adj out of GigabitEthernet0/0, addr 10.0.0.2 1029CDD8 path 1139E5EC, share 67/67, type attached nexthop, for IPv4 nexthop 10.0.1.3 GigabitEthernet0/1, IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 path 1139E654, share 16/80, type attached nexthop, for IPv4 nexthop 10.0.2.4 GigabitEthernet0/2, IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 output chain: loadinfo 1139F008, per-packet, 2 choices, flags 0002, 5 locks flags [for-rx-IPv4] 16 hash buckets < 0*> IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 < 1 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 < 2 > IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 < 3 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 < 4 > IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 < 5 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 < 6 > IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 < 7 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 < 8 > IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 < 9 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 <10 > IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 <11 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 <12 > IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 <13 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 <14 > IP adj out of GigabitEthernet0/1, addr 10.0.1.3 1029CCA8 <15 > IP adj out of GigabitEthernet0/2, addr 10.0.2.4 116C7518 Subblocks: None R1#
Thanks in prior for any help.
Solved! Go to Solution.
07-19-2021 02:49 PM
Hello @jiri1 ,
for sure it is not process switching or UC load balancing would be more a problem then a feature (it would cause very high CPU load)
What I mean is that the UC EIGRP LB must use some hidden data structure that can be seen as similar to the CEF table but with more buckets.
This is my guess.
Hope to help
Giuseppe
07-17-2021 01:17 PM
are you set the max path to 3 or to 2 ?
07-17-2021 01:24 PM
4
R1#sh ip pro *Jul 17 19:38:27.581: %SYS-5-CONFIG_I: Configured from console by consoletocols *** IP Routing is NSF aware *** Routing Protocol is "application" Sending updates every 0 seconds Invalid after 0 seconds, hold down 0, flushed after 0 Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Maximum path: 32 Routing for Networks: Routing Information Sources: Gateway Distance Last Update Distance: (default is 4) Routing Protocol is "eigrp 1" 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-IPv4 Protocol for AS(1) Metric weight K1=1, K2=0, K3=1, K4=0, K5=0 Soft SIA disabled NSF-aware route hold timer is 240 Router-ID: 10.0.2.1 Topology : 0 (base) Active Timer: 3 min Distance: internal 90 external 170 Maximum path: 4 Maximum hopcount 100 Maximum metric variance 21 Automatic Summarization: disabled Maximum path: 4 Routing for Networks: 0.0.0.0 Routing Information Sources: Gateway Distance Last Update 10.0.1.3 90 00:00:11 10.0.0.2 90 00:00:11 10.0.2.4 90 00:00:13 Distance: internal 90 external 170
07-17-2021 01:40 PM
the three path have same metric or different ? if different what is value for each one?
07-17-2021 11:35 PM
P 1.1.1.1/32, 3 successors, FD is 131072 via 10.0.0.2 (2690816/130816), GigabitEthernet0/0 via 10.0.1.3 (156416/130816), GigabitEthernet0/1 via 10.0.2.4 (131072/130816), GigabitEthernet0/2
Which corresponds to already shown ratio (4:67:80).
07-18-2021 02:43 PM
and the variance is "21"?
07-18-2021 08:46 PM
So I can use all the paths, is there any problem with it?
07-19-2021 05:39 AM
Hello @jiri1 ,
you can use all of them because the Reported Distance is lower then the Feasible Distance for all three paths. All of them are feasible successors.
The variance value of 21 allows to include the first path via Gi0/0 but the high metric makes this path much less used then the others.
21* FD > 2690816
21 * 131072 > 2690816
but the CEF buckets do not report any bucket for this next-hop so UC load balancing in EIGRP uses something else.
Hope to help
Giuseppe
07-19-2021 07:27 AM
Thanks, that is what i thought, what else does it use?
Is there any other function of CEF that I am not familiar with or is the process switching in use?
07-19-2021 02:49 PM
Hello @jiri1 ,
for sure it is not process switching or UC load balancing would be more a problem then a feature (it would cause very high CPU load)
What I mean is that the UC EIGRP LB must use some hidden data structure that can be seen as similar to the CEF table but with more buckets.
This is my guess.
Hope to help
Giuseppe
07-19-2021 08:33 PM
Ok, so, since EIGRP UCLB is a proprietary function there is no way of knowing for sure.
Thanks for help, I think this will be enough for me I appreciate your help.
07-19-2021 03:38 PM - edited 07-21-2021 05:16 AM
...
07-21-2021 05:18 AM
I am so interested in this case, so can you confirm that all three interface is run CEF,
i think like this because CEF select only two, so can you check if all three interface has CEF?
07-21-2021 07:27 AM
Indeed, they are all running CEF.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide