BIRD 2.x is single-threaded. The config file is non-trivial. For IPv4, it is 359,018 lines and 38,367,665 bytes (37 MiB). This is due to the massive configuration generated by the IRR stuff. (This is especially true for HE, which is the majority of the config. HE's part of the config is 2,335 lines of ASNs and 217,914 lines of prefixes. Note that there is than one per line.) Since this problem occurs when BIRD is being reconfigured, my working theory is that BIRD is just getting overwhelmed for a bit. From the packet capture I have of CTC, it's definitely the CTC side tearing down the session due to the hold timer expiring. This will likely get better in BIRD 3.x. I think 3.x is multithreaded. On 2025-10-17 16:33, Jonathan Stewart wrote:
What is the problem with shorter hold timers? Shorter hold timers allow BGP failures to be detected more quickly, reducing time to find an alternate, functional route.
60 second hold timers with 20 second keepalives are fine in the real world in my experience.
-- Richard Laager Chief Manager, Director Midwest Internet Cooperative Exchange LLC