BGP graceful restart and BFD

Vincent Bernat bernat at
Fri Dec 2 14:46:40 CET 2016

 ❦  2 décembre 2016 11:42 +0100, Vincent Bernat <bernat at> :

> Therefore, BFD seems incompatible with graceful restart. The Juniper
> implementation has some provisions to make BFD and BGP graceful restart
> works together:

After trying the Juniper implementation, I discovered that the behavior
is consistent with BIRD: if BFD fails, the session is destroyed and no
graceful restart is possible. The difference is that on JunOS, you have
a separate bfdd process and therefore, you can gracefully restart the
BGP process while keeping the BFD sessions up. Something not possible
with BIRD.

Restarting BIRD "fast" is not enough. The discriminator changes and
therefore, the BFD session is detected as down. I suppose JunOS could
consider this as a graceful restart, but that's not the case.

So far, my only solution would be to have a move BFD into its own
Don't stop at one bug.
            - The Elements of Programming Style (Kernighan & Plauger)

More information about the Bird-users mailing list