@@ -473,10 +473,6 @@ do_transfer()
check_transfer $cin $sout "file received by server"
rets=$?
- if [ $retc -eq 0 ] && [ $rets -eq 0 ]; then
- printf "[ OK ]"
- fi
-
local stat_synrx_now_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
local stat_ackrx_now_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
local stat_cookietx_now=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesSent")
@@ -492,6 +488,22 @@ do_transfer()
expect_synrx=$((stat_synrx_last_l+1))
expect_ackrx=$((stat_ackrx_last_l+1))
fi
+
+ if [ ${expect_synrx} -lt ${stat_synrx_now_l} ]; then
+ printf "[ FAIL ] lower MPC SYN rx than expected: %d -> %d\n" \
+ "${expect_synrx}" "${stat_synrx_now_l}" 1>&2
+ retc=1
+ fi
+ if [ ${expect_ackrx} -lt ${stat_ackrx_now_l} ]; then
+ printf "[ FAIL ] lower MPC ACK rx than expected: %d -> %d\n" \
+ "${expect_ackrx}" "${stat_ackrx_now_l}" 1>&2
+ rets=1
+ fi
+
+ if [ $retc -eq 0 ] && [ $rets -eq 0 ]; then
+ printf "[ OK ]"
+ fi
+
if [ $cookies -eq 2 ];then
if [ $stat_cookietx_last -ge $stat_cookietx_now ] ;then
printf " WARN: CookieSent: did not advance"
@@ -508,12 +520,12 @@ do_transfer()
fi
fi
- if [ $expect_synrx -ne $stat_synrx_now_l ] ;then
- printf " WARN: SYNRX: expect %d, got %d" \
+ if [ $expect_synrx -gt $stat_synrx_now_l ]; then
+ printf " WARN: SYNRX: expect %d, got %d (probably retransmissions)" \
"${expect_synrx}" "${stat_synrx_now_l}"
fi
- if [ $expect_ackrx -ne $stat_ackrx_now_l ] ;then
- printf " WARN: ACKRX: expect %d, got %d" \
+ if [ $expect_ackrx -gt $stat_ackrx_now_l ]; then
+ printf " WARN: ACKRX: expect %d, got %d (probably retransmissions)" \
"${expect_ackrx}" "${stat_ackrx_now_l}"
fi
If we receive less MPCapable SYN or 3rd ACK than expected, we now mark the test as failed. On the other hand, if we receive more, we keep the warning but we add a hint that it is probably due to retransmissions and that's why we don't mark the test as failed. Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/148 Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net> --- .../selftests/net/mptcp/mptcp_connect.sh | 28 +++++++++++++------ 1 file changed, 20 insertions(+), 8 deletions(-)