Routing daemons commonly describe the next hop of a route with a separate nexthop object that the route names through a nexthop id, and with net.ipv4.nexthop_compat_mode turned off the kernel reports nothing else, so such a route was never learned. These patches resolve the id against the kernel nexthop table, expanding a group into one learned route per member, and relearn a table only when an object its routes use changes.
This is an RFC because it needs the route table parsing added by "route-table: Support routes resolving through a nexthop object." on the OVS side. The submodule has to be bumped to a version containing it before this can be used. Applies on top of "[PATCH ovn 0/5] controller: Learn routes incrementally.". Han Zhou (2): controller: Learn routes referencing a kernel nexthop object. controller: Only relearn routes when a nexthop they use changes. .../topics/dynamic-routing/architecture.rst | 20 +++ NEWS | 5 + controller/nexthop-exchange.c | 42 ++++-- controller/nexthop-exchange.h | 56 ++++++++ controller/ovn-controller.c | 127 +++++++++++++++--- controller/route-exchange-netlink.c | 90 ++++++++++++- controller/route-exchange-netlink.h | 9 +- controller/route-exchange.c | 44 +++++- controller/route-exchange.h | 11 ++ tests/ovn-inc-proc-graph-dump.at | 1 + tests/system-ovn-netlink.at | 120 ++++++++++++++++- tests/system-ovn.at | 57 ++++++++ tests/test-ovn-netlink.c | 56 +++++++- 13 files changed, 599 insertions(+), 39 deletions(-) -- 2.38.1 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
