-
Notifications
You must be signed in to change notification settings - Fork 0
Home
BFD that keeps its timers in the kernel.
A userspace BFD daemon has to wake up, be scheduled, and write a packet before its peer's detection timer expires. Under load that stops being reliable, and sessions flap for reasons that have nothing to do with the link. xdp-bfd moves transmission and detection into the driver path and softirq, so a 50 ms interval survives a box that is busy.
It is not a replacement for bfdd. FRR still owns the sessions, the
configuration and the state you see in show bfd peer; this runs
underneath as the data plane bfdd offloads to. It also runs standalone
with a static session, which is mostly useful for testing.
Start here: Installation, then Deployment.
- Installation - packages, building, what it needs.
- Deployment - wiring it to FRR, in the right order, and checking that the fast path is actually carrying the traffic.
- Monitoring - the statistics snapshot and what each counter means.
- Troubleshooting - sessions that will not come up, and the handful of ways this goes wrong in practice.
- Limitations - where this differs from stock bfdd, and what it will refuse to do.
- RFC conformance - what is implemented, per RFC.
- Supported kernels - where the object is known to load, measured rather than assumed.
- Security model - what the fast path does with a hostile packet, and what a flood costs.
- Testing - the suites, what each needs, and what only a testbed can reach.
Benchmark captures, the per-distro load records and the instruments that produced them are on the docs branch.
Running it
Reference
Development