On Thu, Mar 13, 2025 at 9:33 AM Xavier Simonart <xsimo...@redhat.com> wrote:

> Avoid using two similar load-balancers such as:
> ovn-nbctl lb-add lb4-no-aff [[fd11::a]]:8081 [[fd11::2]]:80
> ovn-nbctl lb-add lb40-no-aff [[fd11::a]]:8081 [[fd11::2]]:80
>
> Using such load balancers on the same switch would result in similar
> openflows
> in table OFTABLE_CHK_LB_HAIRPIN, containing learn actions, and differing
> only
> by the cookie. One of the two flows will be installed in OVS by OVN (e.g.
> the flow
> with the cookie from lb4-no-aff).
> Any flows learned by that learn action will be deleted by OVS when the
> corresponding flow in table OFTABLE_CHK_LB_HAIRPIN is deleted.
>
> In case of recompute, there is no guarantee that the same openflow is
> installed:
> the flow with the cookie from lb40-no-aff might now be installed. This
> would result
> in the deletion of the learned flow in OVS.
>
> If one of the two similar load balancers is deleted, the same behaviour
> might happen:
> the learned flow in table OFTABLE_CHK_LB_HAIRPIN_REPLY might be deleted,
> depending
> of which load balancer was preferred.
>
> Describing the behaviour so that, if one considers that this is a bug and
> that mutiple
> similar load balancers can be added and result in no flow deletion during
> recompute,
> a JIRA should be entered.
>
> THis wa identified by comparing flows from IP and recompute and frequent
> failures of test
> "load balancing affinity sessions - IPv6".
>

nit: s/THis/This/

>
> Signed-off-by: Xavier Simonart <xsimo...@redhat.com>
> ---
>  tests/system-ovn-kmod.at | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tests/system-ovn-kmod.at b/tests/system-ovn-kmod.at
> index 17607fbf2..5b010a1a2 100644
> --- a/tests/system-ovn-kmod.at
> +++ b/tests/system-ovn-kmod.at
> @@ -550,9 +550,9 @@ NS_CHECK_EXEC([foo1], [nc -z fd12::b 8081])
>
>  NS_CHECK_EXEC([foo1], [ip -6 neigh add fd11::b lladdr 00:00:01:01:02:03
> dev foo1], [0])
>  check ovn-nbctl --wait=sb lb-add lb4 [[fd11::a]]:8080 [[fd11::2]]:80
> -check ovn-nbctl --wait=sb lb-add lb40 [[fd11::a]]:8080 [[fd11::2]]:80
> +check ovn-nbctl --wait=sb lb-add lb40 [[fd11::c]]:8080 [[fd11::2]]:80
>  check ovn-nbctl --wait=sb lb-add lb4-no-aff [[fd11::a]]:8081
> [[fd11::2]]:80
> -check ovn-nbctl --wait=sb lb-add lb40-no-aff [[fd11::a]]:8081
> [[fd11::2]]:80
> +check ovn-nbctl --wait=sb lb-add lb40-no-aff [[fd11::c]]:8081
> [[fd11::2]]:80
>  check ovn-nbctl --wait=sb set load_balancer lb4
> options:affinity_timeout=60 options:hairpin_snat_ip="fd11::b"
>  check ovn-nbctl --wait=sb set load_balancer lb40
> options:affinity_timeout=60 options:hairpin_snat_ip="fd11::b"
>  check ovn-nbctl ls-lb-add foo lb4
> --
> 2.47.1
>
> _______________________________________________
> dev mailing list
> d...@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
>
Otherwise looks good to me, thanks.

Acked-by: Ales Musil <amu...@redhat.com>
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to