I am running into a small issue with BGP, see below example setup.
Router A ---- Leased Line ---- Router B
Between the two routers we run a eBGP session. The link sometimes gets a hit, when this happens the interface on Router A will go down, but the interface on Router B will stay up. We have BGP Fall-Over configured on Router A, so when the interface goes down the route will disappear from RIB and BGP will skip the hold down timers. But this does not happen on Router B, as the interface stays up on that side. So router B will still have the 180 seconds hold timer. Is there a way for BGP to tell Router B that the session is down and it can skip hold timers, or could there be another way to achieve this? Was thinking about IPSLA and EEM or just tweak the timers for this specific neighbor, but dont think that is the cleanest solution.
Hope someone can help me out with this.
Thanks in advance!
Solved! Go to Solution.
First of all I’d ask the leased line provider how come they do not propagate the link failure signal end-to-end (that is a must).
Maybe what you perceive as a leased line is in fact a virtual circuit with incorrect configuration if this is the case in fact then, while on it, have them also confirm that your circuit MTU will be the same regardless the path it takes through the provider’s network (in case of failures in their core)
Also check you have carrier delay 0 configured on interfaces at both ends of the link.
Regarding the options for solving this in control-plane.
The option selection depends on the HW you have at both ends, and on your business requirements.
You could for instance register BFD session with the BGP peer this way you could rely on low overhead protocol to tear the session down in a timely manner, instead of tweaking the heavy weight BGP machinery.
But if you’re not after sub-second failover times, then tweaking BGP timers is perfectly fine cause what we’re talking about is just a single sessions with aggressive timers, so not a big deal in terms of overall platform resources (CPU) utilization.
But please note that what goes hand in hand with swift failure detection is instability.
When reducing failure detection times consider enabling event dampening as well
Luckily in your setup you can deal with it on a number of levels,
At interface level you have ip event dampening or link state dampening, or just simple interface hold down timer, but please not this last one might tie the up and down hold down timer into one variable –in that case you want to set it to 0 and use BGP route state dampening instead.
::carrier-class solutions for the telecommunications industry::