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

Reply via email to