On Thu, Sep 17, 2026 at 4:12 AM Dumitru Ceara <[email protected]> wrote:
>
> Hi Han, Ales,
>
> On 9/17/26 9:27 AM, Han Zhou wrote:
> > On Wed, Sep 16, 2026 at 5:31 AM Ales Musil <[email protected]> wrote:
> >>
> >>
> >>
> >> On Thu, Sep 10, 2026 at 9:52 AM Han Zhou <[email protected]> wrote:
> >>>
> >>> Every notification about a change to a kernel routing table made
> >>> route_exchange recompute, which reads all watched tables, for both
> > address
> >>> families, and rebuilds the Learned_Route rows of every datapath that
uses
> >>> them.  A routing daemon that reconverges sends a burst of such
> >>> notifications, and none of them says anything about the tables OVN is
not
> >>> interested in.
> >>>
> >>> Keep the routes read from a table and let the notifications maintain
> > them.
> >>> A route change is applied to the routes of its table, and only the
> >>> Learned_Route rows of that table are written again.  A change to a
route
> > OVN
> >>> does not learn from, e.g. one a user configured in the VRF, ends
there.
> >>>
> >>> Reading the tables again is left to the cases that need it: the routes
> > OVN
> >>> advertises or the datapaths that distribute them changed,
notifications
> > were
> >>> missed, or the southbound database cannot be written to right now.
> >>>
> >>> With 10000 routes learned from a single table, handling one route
> >>> notification takes around 40ms, where reading that table again takes
> > 94ms.
> >>> What is saved is the netlink dump of both address families.  Resolving
> > the
> >>> routes of the table and reconciling the Learned_Route rows of its
> > datapaths
> >>> remain, and both still scale with the size of the table rather than
with
> > the
> >>> size of the change.
> >>>
> >>> Assisted-by: Claude Opus 5, Cursor
> >>> Signed-off-by: Han Zhou <[email protected]>
> >>> ---
> >>
> >>
> >> Hi Han,
> >>
> >> thank you for the patch. I have two small comments down below.
> >>
> >>>
> >>>  .../topics/dynamic-routing/architecture.rst   |   7 +-
> >>>  controller/ovn-controller.c                   | 112 ++++++---
> >>>  controller/route-exchange.c                   | 219
++++++++++++++++--
> >>>  controller/route-exchange.h                   |  28 ++-
> >>>  tests/ovn-inc-proc-graph-dump.at              |   2 +-
> >>>  tests/system-ovn-netlink.at                   |  74 ++++++
> >>>  tests/system-ovn.at                           |  39 ++++
> >>>  tests/test-ovn-netlink.c                      |  76 ++++++
> >>>  8 files changed, 508 insertions(+), 49 deletions(-)
> >>>
>
> ...
>
> >>
> >> Other than that it looks good.
> >> Acked-by: Ales Musil <[email protected]>
> >
> > Thanks Ales for the review.
> > I addressed all your comments and pushed to main.
> > I will figure out backporting to release branches tomorrow.
> >
>
>
> I was applying some other patches and backporting them so I also picked
> up your first two patches and applied them to 26.09.  Going further back
> we'll need to address more conflicts.
>

Thanks Dumitru.
I just backported it to 26.03 and 25.09, revising accordingly.

Best,
Han

> Regards,
> Dumitru
>
> > Best,
> > Han
> >
> >>
> >> Regards,
> >> Ales
> >
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to