[dev] BFD daemon is now part of master

Rafael Zalamena rzalamena at opensourcerouting.org
Tue Aug 14 08:50:42 EDT 2018

Hi all,

Today the BFD daemon (`bfdd`) got merged into master. It implements
the Bidirectional Forwarding Detection protocol and its main purpose
is to detect link failures to notify services. The daemon is
automatically built on standard distribution on all platforms.

Currently the following FRR daemons support BFD:

* bgpd;
* ospfd;
* ospf6d;
* pimd;



The BFD daemon was implemented re-using some Cumulus implementation,
but it was extracted from another service (
https://github.com/CumulusNetworks/ptm/blob/master/src/ptm_bfd.c ).
The code went through the following changes:

* it became a stand alone daemon;
* added new configuration interfaces: vtysh and control socket (using JSON);
* replaced uthash.h with FRR's hash implementation;
* added compatibility code to run on *BSDs;
* changed event manager with FRR's;
* minor code/protocol fixes;

Related RFCs:

* RFC 5880 (protocol description);
* RFC 5881 (single hop IPv4/IPv6 implementation);
* RFC 5883 (multi hop implementation);

Thanks to everyone that helped reviewing the code!


More information about the dev mailing list