diff mbox series

[ovs-dev,07/15] test: Fix "conntrack - floating IP" test for TC.

Message ID 166238330681.2220027.12304754088831026505.stgit@ebuild
State Superseded
Headers show
Series tests: Add system-traffic.at tests to check-offloads. | expand

Checks

Context Check Description
ovsrobot/apply-robot success apply and check: success
ovsrobot/github-robot-_Build_and_Test success github build: passed
ovsrobot/intel-ovs-compilation success test: success

Commit Message

Eelco Chaudron Sept. 5, 2022, 1:08 p.m. UTC
This change fixes the "conntrack - floating" test for the TC
offload case. In this scenario, the connection might move to
CLOSE_WAIT, which would fail the test as it only accepts
TIME_WAIT. However, both indicate the connection was
established, so the test should pass.

Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
---
 tests/system-offloads-testsuite.at |    1 -
 tests/system-traffic.at            |   13 +++++++------
 2 files changed, 7 insertions(+), 7 deletions(-)

Comments

Roi Dayan Nov. 7, 2022, 9:01 a.m. UTC | #1
On 05/09/2022 16:08, Eelco Chaudron wrote:
> This change fixes the "conntrack - floating" test for the TC
> offload case. In this scenario, the connection might move to
> CLOSE_WAIT, which would fail the test as it only accepts
> TIME_WAIT. However, both indicate the connection was
> established, so the test should pass.
> 
> Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
> ---
>  tests/system-offloads-testsuite.at |    1 -
>  tests/system-traffic.at            |   13 +++++++------
>  2 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/tests/system-offloads-testsuite.at b/tests/system-offloads-testsuite.at
> index c3710cdfc..8ac16444d 100644
> --- a/tests/system-offloads-testsuite.at
> +++ b/tests/system-offloads-testsuite.at
> @@ -97,7 +97,6 @@ conntrack - IPv6 FTP with SNAT - orig tuple
>  conntrack - IPv4 TFTP with SNAT
>  conntrack - DNAT load balancing
>  conntrack - DNAT load balancing with NC
> -conntrack - floating IP
>  conntrack - Multiple ICMP traverse
>  conntrack - can match and clear ct_state from outside OVS
>  IGMP - flood under normal action"
> diff --git a/tests/system-traffic.at b/tests/system-traffic.at
> index c3cc443d5..6c1dec95f 100644
> --- a/tests/system-traffic.at
> +++ b/tests/system-traffic.at
> @@ -6772,16 +6772,17 @@ AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt])
>  
>  dnl non-FIP case
>  NS_CHECK_EXEC([at_ns1], [echo "foobar" |nc $NC_EOF_OPT 10.1.1.1 1234])
> -OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g' |
> +OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g' -e 's/CLOSE_WAIT\|CLOSING/TIME_WAIT/g' |
>  grep "tcp,orig=(src=10.1.1.2,dst=10.1.1.1,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.1,dst=10.1.1.2,sport=<cleared>,dport=<cleared>),protoinfo=(state=TIME_WAIT)"
>  ]])
>  
> -dnl Check that the full session ends as expected (i.e. TIME_WAIT). Otherwise it
> -dnl means the datapath didn't process the ct_clear action. Ending in SYN_RECV
> -dnl (OVS maps to ESTABLISHED) means the initial frame was committed, but not a
> -dnl second time after the FIP translation (because ct_clear didn't occur).
> +dnl Check that the full session ends as expected (i.e. TIME_WAIT, CLOSE_WAIT).
> +dnl Otherwise it means the datapath didn't process the ct_clear action. Ending
> +dnl in SYN_RECV (OVS maps to ESTABLISHED) means the initial frame was
> +dnl committed, but not a second time after the FIP translation (because
> +dnl ct_clear didn't occur).
>  NS_CHECK_EXEC([at_ns1], [echo "foobar" |nc $NC_EOF_OPT 10.254.254.1 1234])
> -OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g' |
> +OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g'  -e 's/CLOSE_WAIT\|CLOSING/TIME_WAIT/g' |
>  grep "tcp,orig=(src=10.254.254.2,dst=10.1.1.1,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.1,dst=10.254.254.2,sport=<cleared>,dport=<cleared>),protoinfo=(state=TIME_WAIT)"
>  ]])
>  
> 
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Acked-by: Roi Dayan <roid@nvidia.com>
diff mbox series

Patch

diff --git a/tests/system-offloads-testsuite.at b/tests/system-offloads-testsuite.at
index c3710cdfc..8ac16444d 100644
--- a/tests/system-offloads-testsuite.at
+++ b/tests/system-offloads-testsuite.at
@@ -97,7 +97,6 @@  conntrack - IPv6 FTP with SNAT - orig tuple
 conntrack - IPv4 TFTP with SNAT
 conntrack - DNAT load balancing
 conntrack - DNAT load balancing with NC
-conntrack - floating IP
 conntrack - Multiple ICMP traverse
 conntrack - can match and clear ct_state from outside OVS
 IGMP - flood under normal action"
diff --git a/tests/system-traffic.at b/tests/system-traffic.at
index c3cc443d5..6c1dec95f 100644
--- a/tests/system-traffic.at
+++ b/tests/system-traffic.at
@@ -6772,16 +6772,17 @@  AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt])
 
 dnl non-FIP case
 NS_CHECK_EXEC([at_ns1], [echo "foobar" |nc $NC_EOF_OPT 10.1.1.1 1234])
-OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g' |
+OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g' -e 's/CLOSE_WAIT\|CLOSING/TIME_WAIT/g' |
 grep "tcp,orig=(src=10.1.1.2,dst=10.1.1.1,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.1,dst=10.1.1.2,sport=<cleared>,dport=<cleared>),protoinfo=(state=TIME_WAIT)"
 ]])
 
-dnl Check that the full session ends as expected (i.e. TIME_WAIT). Otherwise it
-dnl means the datapath didn't process the ct_clear action. Ending in SYN_RECV
-dnl (OVS maps to ESTABLISHED) means the initial frame was committed, but not a
-dnl second time after the FIP translation (because ct_clear didn't occur).
+dnl Check that the full session ends as expected (i.e. TIME_WAIT, CLOSE_WAIT).
+dnl Otherwise it means the datapath didn't process the ct_clear action. Ending
+dnl in SYN_RECV (OVS maps to ESTABLISHED) means the initial frame was
+dnl committed, but not a second time after the FIP translation (because
+dnl ct_clear didn't occur).
 NS_CHECK_EXEC([at_ns1], [echo "foobar" |nc $NC_EOF_OPT 10.254.254.1 1234])
-OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g' |
+OVS_WAIT_UNTIL([[ovs-appctl dpctl/dump-conntrack | sed -e 's/port=[0-9]*/port=<cleared>/g' -e 's/id=[0-9]*/id=<cleared>/g'  -e 's/CLOSE_WAIT\|CLOSING/TIME_WAIT/g' |
 grep "tcp,orig=(src=10.254.254.2,dst=10.1.1.1,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.1,dst=10.254.254.2,sport=<cleared>,dport=<cleared>),protoinfo=(state=TIME_WAIT)"
 ]])