[ovs-dev] [PATCH ovn 0/3] Handle LB VIPs that share backends and make flows offloadable.

Dumitru Ceara dceara at redhat.com
Tue Feb 23 13:19:22 UTC 2021


Patch 1/3 fixes a bug when using learn() action to generate hairpin
reply flows for different VIPs that share backends.  It also addresses
backwards compatibility in order to avoid having issues during upgrades.

Patches 2/3 and 3/3 use the new OVS registers populated by patch 1/3 to
simplify the hairpin flows and to avoid matching on conntrack original
tuple fields or ct.dnat as tests have shown that these are not offloadable
on specific NICs (e.g., MLX-CX5).

Dumitru Ceara (3):
      Properly handle hairpin traffic for VIPs with shared backends.
      lflow: Avoid matching on conntrack original tuple if possible.
      northd: Avoid matching on ct.dnat flags for load balancers.


 controller/lflow.c           |  106 +++++++++-
 include/ovn/logical-fields.h |    6 -
 lib/lb.c                     |    3 
 lib/lb.h                     |    3 
 northd/ovn-northd.8.xml      |   53 +++--
 northd/ovn-northd.c          |  143 +++++++++++---
 ovn-sb.xml                   |    6 +
 tests/ofproto-macros.at      |    2 
 tests/ovn-northd.at          |   28 +--
 tests/ovn.at                 |  443 +++++++++++++++++++++++++++++-------------
 tests/system-ovn.at          |   40 ++--
 11 files changed, 610 insertions(+), 223 deletions(-)



More information about the dev mailing list