[ovs-dev] [PATCH v2 ovn 0/9] northd: rework ovn-northd lb flow installation

Lorenzo Bianconi lorenzo.bianconi at redhat.com
Wed Jun 30 12:41:08 UTC 2021


> On Fri, Jun 18, 2021 at 9:04 AM Lorenzo Bianconi
> <lorenzo.bianconi at redhat.com> wrote:
> >
> > Rework lb flow logic in order to visit first each load_balancer and then
> > related datapath during lb flow installation.
> > This patch allows to reduce memory footprint and cpu utilization in
> > ovn-northd.
> >
> 
> Hi Lorenzo,
> 
> The ovsrobot CI runs show failures with memory leaks.  Please take a
> look at them - https://github.com/ovsrobot/ovn/runs/2859118644
> 
> Numan

ack, Numan, thx for reporting this. I will fix it in v3.

Regards,
Lorenzo

> 
> 
> northd: move snat_type out of vip loop
> 
> > Testing environment:
> > ovn-nbctl lr-list |wc -l
> > 308
> > ovn-nbctl ls-list |wc -l
> > 615
> > ovn-nbctl lb-list |wc -l
> > 14524
> >
> > Time needed for build_lrouter_lb_flows() to run for all datapaths/lbs (logical routers)
> >     Total samples: 22
> >     Maximum: 6937 msec
> >     Minimum: 6869 msec
> >     95th percentile: 6933.000000 msec
> >     Short term average: 6916.599206 msec
> >     Long term average: 6914.809656 msec
> >
> > Time needed for build_pre_lb()/build_stateful()[lb-only] to run for all datapaths/lbs (logical switches)
> >   Total samples: 20
> >   Maximum: 1735 msec
> >   Minimum: 1693 msec
> >   95th percentile: 1735.000000 msec
> >   Short term average: 1731.136610 msec
> >   Long term average: 1698.853040 msec
> >
> > Time needed for build_lrouter_flows_for_lb() to run for all lbs/datapaths (logical routers)
> >    Total samples: 22
> >    Maximum: 2745 msec
> >    Minimum: 2674 msec
> >    95th percentile: 2742.000000 msec
> >    Short term average: 2724.775973 msec
> >    Long term average: 2681.334522 msec
> >
> > Time needed for build_lswitch_flows_for_lb() to run for all lbs/datapaths (logical switches)
> >   Total samples: 20
> >   Maximum: 406 msec
> >   Minimum: 354 msec
> >   95th percentile: 406.000000 msec
> >   Short term average: 383.915676 msec
> >   Long term average: 363.318006 mse
> >
> >
> > This series does not introduce any new feature to ovn-northd.
> >
> > Changes since v1:
> > - rebase ontop of ovn-master
> > - add build_lswitch_flows_for_lb routine
> >
> > Lorenzo Bianconi (9):
> >   northd: move snat_type out of vip loop
> >   lib: link logical routers assigned for the same lb
> >   northd: move build_empty_lb_event_flow in build_lrouter_flows_for_lb
> >   northd: move lb_{skip,force}_snat code in
> >     build_lrouter_snat_flows_for_lb
> >   northd: get rid of add_router_lb_flow
> >   northd: remove dead code in build_lrouter_nat_defrag_and_lb
> >   lb: link logical switches assigned for the same lb
> >   northd: move build_empty_lb_event_flow in build_lswitch_flows_for_lb
> >   northd: move build_lb_rules in build_lswitch_flows_for_lb
> >
> >  lib/lb.c            |  22 ++
> >  lib/lb.h            |  12 +
> >  northd/ovn-northd.c | 606 +++++++++++++++++++++++++++-----------------
> >  3 files changed, 403 insertions(+), 237 deletions(-)
> >
> > --
> > 2.31.1
> >
> > _______________________________________________
> > dev mailing list
> > dev at openvswitch.org
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
> >
> 


More information about the dev mailing list