For the series:

Acked-by: Mark Michelson <mmich...@redhat.com>

On 11/17/20 9:26 AM, num...@ovn.org wrote:
From: Numan Siddique <num...@ovn.org>

This patch series optimizes the load balancer hairpin logical flows.
Presently, ovn-northd generates a lot of these logical flows.

Suppose there are 'm' load balancers associated to a logical switch and each 
load balancer
has 'n' VIPs and each VIP has 'p' backends then ovn-northd adds (m * ((n * p) + 
n))
hairpin logical flows.

With this patch series, ovn-northd adds just 5 hairpin logical flows.

To reduce the number of lflows, load balancer information is now pushed
to the Southbound database using a new 'Load_Balancer' table.
ovn-controller programs the OF flows required for handling the load
balancer hairpin traffic directly and new OVN actions are added to
abstract the hairpining from ovn-northd.

v4 -> v5
----
   * Incorporated Dumitru's changes on top of v4 patch 2 and squashed it
     into one patch - v5 p2.

v3 -> v4
----
   * Addressed review comments from Dumitru which was missed out in v3.
   * Separate lb structures for northd and ovn-controller in lib/lb.c.
   * Incorporated Dumitru's code suggestions in patch 1 for syncing
     the NB load balancer to SB load balancer.

v2 -> v3
----
   * Addressed most of the review comments from Dumitru.
   * Modified the test cases to make use of the newly added helper test
     functions.

v1 -> v2
-----
   * Addressed the review comments from Mark Michelson.
   * Added 2 more patches to the series to have SB Load balancer support
     ovn-detrace and 'ovn-sbctl --vflows' as pointed by Dumitru Ceara.


Dumitru Ceara (1):
   northd: Refactor load balancer vip parsing.

Numan Siddique (6):
   Add new table Load_Balancer in Southbound database.
   controller: Add load balancer hairpin OF flows.
   actions: Add new actions chk_lb_hairpin, chk_lb_hairpin_reply and
     ct_snat_to_vip.
   northd: Make use of new hairpin actions.
   ovn-detrace: Add SB Load Balancer cookier handler.
   sbctl: Add Load Balancer support for vflows option.

  controller/lflow.c           | 234 +++++++++++++
  controller/lflow.h           |   6 +-
  controller/ovn-controller.c  |  27 +-
  include/ovn/actions.h        |  15 +-
  include/ovn/logical-fields.h |   3 +
  lib/actions.c                | 116 ++++++-
  lib/automake.mk              |   4 +-
  lib/lb.c                     | 301 +++++++++++++++++
  lib/lb.h                     |  97 ++++++
  northd/ovn-northd.8.xml      |  65 +++-
  northd/ovn-northd.c          | 632 ++++++++++++++---------------------
  ovn-sb.ovsschema             |  27 +-
  ovn-sb.xml                   |  82 +++++
  tests/ovn-northd.at          | 115 ++++++-
  tests/ovn.at                 | 510 +++++++++++++++++++++++++++-
  tests/test-ovn.c             |   3 +
  utilities/ovn-detrace.in     |  11 +-
  utilities/ovn-sbctl.c        |  59 ++++
  utilities/ovn-trace.c        |  65 +++-
  19 files changed, 1940 insertions(+), 432 deletions(-)
  create mode 100644 lib/lb.c
  create mode 100644 lib/lb.h


_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to