Introduce BFD protocol in ovn-controller according to RFC5880 [0] We added BFD implementation in ovn since layered protocols usually request to enable it on ovn entities (e.g. logical router ports) while ovs implementation relies on physical entities (e.g. ovs interfaces). Moreover we would establish a BFD session between a given ovn-port and multiple peers (1:n relation). A typical use-case is reported in [1]. In the current implementation Asynchronous mode is fully supported, while Demand mode is supported only on rx side.
[0] - https://tools.ietf.org/html/rfc5880 [1] - https://bugzilla.redhat.com/show_bug.cgi?id=1847570 Changes since v1: - rebase ontop of ovn master - rename handle_bfd_msg action in handle_bfd_msg() - add ovn-northd unit-tests - improve commit logs - remove global BFD control check - introduce BFD support for ovn static routes Lorenzo Bianconi (5): controller: introduce BFD tx path in ovn-controller action: introduce handle_bfd_msg() action controller: bfd: introduce BFD state machine bfp: support demand mode on rx side ovn: integrate bfd for static routes NEWS | 3 + controller/ovn-controller.c | 1 + controller/pinctrl.c | 600 +++++++++++++++++++++++++++++++++++- controller/pinctrl.h | 2 + include/ovn/actions.h | 7 + lib/actions.c | 27 ++ lib/ovn-l7.h | 19 ++ northd/ovn-northd.8.xml | 21 ++ northd/ovn-northd.c | 229 +++++++++++++- ovn-nb.ovsschema | 20 +- ovn-nb.xml | 62 ++++ ovn-sb.ovsschema | 24 +- ovn-sb.xml | 74 +++++ tests/atlocal.in | 3 + tests/ovn-nbctl.at | 5 +- tests/ovn-northd.at | 31 ++ tests/ovn.at | 4 + tests/system-ovn.at | 110 +++++++ utilities/ovn-nbctl.8.xml | 6 + utilities/ovn-nbctl.c | 18 +- utilities/ovn-trace.c | 2 + 21 files changed, 1240 insertions(+), 28 deletions(-) -- 2.29.2 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
