LDP Timers
Load isis.cfg
Configure LDP on all routers using LDP IGP autoconfig.
Configure R1 and R2 to use a hello/hold time of 1/3 seconds for the UDP discovery. The R2-R3 and the R2-R4 neighborship should continue using 5/15 seconds.
Configure XR1 and R6 to detect failure for the TCP session after 20 seconds. Configure only XR1 to achieve this.
Answer
Explanation
The discovery hello/hold time is only configurable globally. It is not configurable per-interface or per-peer. This poses a problem for us to achieve the 1/3 timers for R1/R2 but keep the default timer for R2’s other LDP neighbors. However, we can use the fact that LDP timers are negotiated to our advantage.
By default, the UDP discovery hello/holdtime is 5/15 seconds, and the TCP session keepalive/holdtime is 60/180 seconds. The targeted LDP discovery hello/holdtime is 10/90 seconds.
R1 configures the hello/hold interval as 1/3 seconds, and then advertises its local hold time in the LDP UDP Hello:
R2 sees that R1’s hold time is lower than its own, so it negotiates down to R1’s value. We can see the discovery timers using the following command:
We can also double check that R2’s other neighbors are still using the default discovery timers.
Likewise, the LDP TCP session timers are negotiated to the lowest value. On R6, we can see the TCP session timers using the same command. R6 uses the lower timer which XR1 advertised.
The keepalive is always 1/3 of the holdtime. You cannot actually configure the session keepalive interval, only the session holdtime. So TCP keepalives are sent roughly every 6-7 seconds between R6 and XR1.
Note that the LDP discovery interval can be configured separately, and does not need to be 1/3 of the holdtime. For instance, if we configure R4 to use an interval of 2 seconds and a holdtime of 12 seconds, all of its neighbors will negotiate to 12 seconds for the holdtime and calculate an interval of 4 seconds, but R4 will use 2 seconds.
Last updated