* [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
@ 2013-06-25 7:48 Hangbin Liu
2013-06-27 16:25 ` Jan Stancek
0 siblings, 1 reply; 8+ messages in thread
From: Hangbin Liu @ 2013-06-25 7:48 UTC (permalink / raw)
To: LTP list
In some old machines or guests, the system may not have the ability to set up
all the connections, e.g. 4000 tcp connections, quickly. Then the system will
take lots of time to try setup the connections or just huang there.
I think we should just kill all the connections after testing timeout, no
matter how many connections we have setup. So mv the connecting setup while
loop into whatchdog while loop.
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
---
.../stress/tcp/multi-diffip/tcp4-multi-diffip01 | 62 ++++++++++-----------
.../stress/tcp/multi-diffnic/tcp4-multi-diffnic01 | 28 +++++-----
.../tcp/multi-diffport/tcp4-multi-diffport01 | 64 +++++++++++-----------
.../tcp/multi-sameport/tcp4-multi-sameport01 | 33 +++++------
4 files changed, 94 insertions(+), 93 deletions(-)
diff --git a/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01 b/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01
index 8b9652c..58fdde7 100644
--- a/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01
+++ b/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01
@@ -389,41 +389,41 @@ done
server_pid=`grep PID: $info_file | cut -f 2 -d ' '`
rm -f $info_file
-# Make connections
connection_num=0
-while [ $connection_num -lt $ipaddr_pair_num ]; do
- # IP addresses
- x=`expr $connection_num \/ 255 % 255`
- y=`expr $connection_num % 255`
-
- case $IP_VER in
- 4)
- lhost_addr="10.${x}.${y}.2"
- ;;
-
- 6)
- hex_x=`printf %x $x`
- hex_y=`printf %x $y`
- lhost_addr="fd00:1:${hex_x}:${hex_y}::2"
- ;;
- esac
-
- ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $server_port' ; echo $?'`
- if [ $ret -ne 0 ]; then
- if [ $connection_num -eq 0 ]; then
- tst_resm TFAIL "Failed to run any client"
- exit 1
- else
- tst_resm TINFO "$connection_num seems the maximum number of the client"
- fi
- break
- fi
- connection_num=`expr $connection_num + 1`
-done
-
# Watch the TCP traffic server
start_epoc=`date +%s`
while true ; do
+ # Make connections
+ if [ $connection_num -lt $ipaddr_pair_num ]; then
+ # IP addresses
+ x=`expr $connection_num \/ 255 % 255`
+ y=`expr $connection_num % 255`
+
+ case $IP_VER in
+ 4)
+ lhost_addr="10.${x}.${y}.2"
+ ;;
+
+ 6)
+ hex_x=`printf %x $x`
+ hex_y=`printf %x $y`
+ lhost_addr="fd00:1:${hex_x}:${hex_y}::2"
+ ;;
+ esac
+
+ ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $server_port' ; echo $?'`
+ if [ $ret -ne 0 ]; then
+ if [ $connection_num -eq 0 ]; then
+ tst_resm TFAIL "Failed to run any client"
+ exit 1
+ else
+ tst_resm TINFO "$connection_num seems the maximum number of the client"
+ fi
+ break
+ fi
+ connection_num=`expr $connection_num + 1`
+ fi
+
current_epoc=`date +%s`
elapse_epoc=`expr $current_epoc - $start_epoc`
diff --git a/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01 b/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01
index dc9e784..6a5a72c 100644
--- a/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01
+++ b/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01
@@ -340,24 +340,24 @@ done
server_pid=`grep PID: $info_file | cut -f 2 -d ' '`
rm -f $info_file
-# Main loop
connection_num=0
-while [ $connection_num -lt $link_total ]; do
- field=`expr $connection_num + 1`
- lhost_addr=`echo $lhost_addrs | cut -d ' ' -f $field`
-
- # Run a client
- ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $server_port'; echo $?'`
- if [ $ret -ne 0 ]; then
- tst_resm TFAIL "Failed to run client on Link${connection_num}"
- exit 1
- fi
- connection_num=`expr $connection_num + 1`
-done
-
# Watch the TCP traffic server
start_epoc=`date +%s`
while true ; do
+ # Main loop
+ if [ $connection_num -lt $link_total ]; then
+ field=`expr $connection_num + 1`
+ lhost_addr=`echo $lhost_addrs | cut -d ' ' -f $field`
+
+ # Run a client
+ ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $server_port'; echo $?'`
+ if [ $ret -ne 0 ]; then
+ tst_resm TFAIL "Failed to run client on Link${connection_num}"
+ exit 1
+ fi
+ connection_num=`expr $connection_num + 1`
+ fi
+
current_epoc=`date +%s`
elapse_epoc=`expr $current_epoc - $start_epoc`
diff --git a/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01 b/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01
index e260d35..1b9f342 100644
--- a/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01
+++ b/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01
@@ -320,44 +320,44 @@ fi
start_port=`echo $portbundle | cut -f 1 -d '-'`
end_port=`echo $portbundle | cut -f 2 -d '-'`
-# Making connections
connection_num=0
current_port=$start_port
-while [ $current_port -le $end_port ]; do
- # Run a server
- ns-tcpserver -b -f $IP_VER -p $current_port
- if [ $? -ne 0 ]; then
- # Failed to start no server
- if [ $connection_num -eq 0 ]; then
- tst_resm TFAIL "Failed to run a server"
- exit 1
- fi
- # Failed to start a server
- tst_resm TINFO "$connection_num seems the maximum number of the server"
- break
- fi
-
- # Run a clinet
- ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $current_port' ; echo $?'`
- if [ $ret -ne 0 ]; then
- # Failed to start any client
- if [ $connection_num -eq 0 ]; then
- tst_resm TFAIL "Failed to run any client."
- exit 1
- fi
- # Failed to start a client
- tst_resm TINFO "$connection_num seems the maximum number of the client"
- break
- fi
-
- current_port=`expr $current_port + 1`
- connection_num=`expr $connection_num + 1`
-done
-
# Watch the TCP traffic server
start_epoc=`date +%s`
while true ; do
+ # Making connections
+ if [ $current_port -le $end_port ]; then
+ # Run a server
+ ns-tcpserver -b -f $IP_VER -p $current_port
+ if [ $? -ne 0 ]; then
+ # Failed to start no server
+ if [ $connection_num -eq 0 ]; then
+ tst_resm TFAIL "Failed to run a server"
+ exit 1
+ fi
+ # Failed to start a server
+ tst_resm TINFO "$connection_num seems the maximum number of the server"
+ break
+ fi
+
+ # Run a clinet
+ ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $current_port' ; echo $?'`
+ if [ $ret -ne 0 ]; then
+ # Failed to start any client
+ if [ $connection_num -eq 0 ]; then
+ tst_resm TFAIL "Failed to run any client."
+ exit 1
+ fi
+ # Failed to start a client
+ tst_resm TINFO "$connection_num seems the maximum number of the client"
+ break
+ fi
+
+ current_port=`expr $current_port + 1`
+ connection_num=`expr $connection_num + 1`
+ fi
+
current_epoc=`date +%s`
elapse_epoc=`expr $current_epoc - $start_epoc`
if [ $elapse_epoc -ge $NS_DURATION ]; then
diff --git a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01 b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
index aff2481..206a0d1 100644
--- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
+++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
@@ -334,27 +334,28 @@ done
server_pid=`grep PID: $info_file | cut -f 2 -d ' '`
rm -f $info_file
-# Making connections
connection_num=0
-while [ $connection_num -lt $CONNECTION_TOTAL ]; do
- # Run a client
- ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $server_port' ; echo $?'`
- if [ $ret -ne 0 ]; then
- # Failed to start any client
- if [ $connection_num -eq 0 ]; then
- tst_resm TFAIL "Failed to run any client"
- exit 1
- fi
- # Failed to start a client
- tst_resm TINFO "$connection_num seems the maximum number of the client"
- break
- fi
- connection_num=`expr $connection_num + 1`
-done
# Watch the TCP traffic server
start_epoc=`date +%s`
while true ; do
+ # Making connections
+ if [ $connection_num -lt $CONNECTION_TOTAL ]; then
+ # Run a client
+ ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p $server_port' ; echo $?'`
+ if [ $ret -ne 0 ]; then
+ # Failed to start any client
+ if [ $connection_num -eq 0 ]; then
+ tst_resm TFAIL "Failed to run any client"
+ exit 1
+ fi
+ # Failed to start a client
+ tst_resm TINFO "$connection_num seems the maximum number of the client"
+ break
+ fi
+ connection_num=`expr $connection_num + 1`
+ fi
+
current_epoc=`date +%s`
elapse_epoc=`expr $current_epoc - $start_epoc`
--
1.8.1.4
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
2013-06-25 7:48 [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout Hangbin Liu
@ 2013-06-27 16:25 ` Jan Stancek
[not found] ` <CAPwn2JTuF3EVb8_XoWkFk=qZc61FhNHenNDmdR7b6xrZFf9x1g@mail.gmail.com>
0 siblings, 1 reply; 8+ messages in thread
From: Jan Stancek @ 2013-06-27 16:25 UTC (permalink / raw)
To: Hangbin Liu; +Cc: LTP list
----- Original Message -----
> From: "Hangbin Liu" <liuhangbin@gmail.com>
> To: "LTP list" <ltp-list@lists.sourceforge.net>
> Sent: Tuesday, 25 June, 2013 9:48:52 AM
> Subject: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
>
> In some old machines or guests, the system may not have the ability to set up
> all the connections, e.g. 4000 tcp connections, quickly. Then the system will
> take lots of time to try setup the connections or just huang there.
>
> I think we should just kill all the connections after testing timeout, no
> matter how many connections we have setup. So mv the connecting setup while
> loop into whatchdog while loop.
>
> Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Hi,
correct me if I'm reading this wrong.
By moving it to watchdog loop you allow only 1 connection per second,
then taking your example number (4000), it is going to take 4000 seconds.
Should we also lower that sleep?
Regards,
Jan
> ---
> .../stress/tcp/multi-diffip/tcp4-multi-diffip01 | 62
> ++++++++++-----------
> .../stress/tcp/multi-diffnic/tcp4-multi-diffnic01 | 28 +++++-----
> .../tcp/multi-diffport/tcp4-multi-diffport01 | 64
> +++++++++++-----------
> .../tcp/multi-sameport/tcp4-multi-sameport01 | 33 +++++------
> 4 files changed, 94 insertions(+), 93 deletions(-)
>
> diff --git a/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01
> b/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01
> index 8b9652c..58fdde7 100644
> --- a/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01
> +++ b/testcases/network/stress/tcp/multi-diffip/tcp4-multi-diffip01
> @@ -389,41 +389,41 @@ done
> server_pid=`grep PID: $info_file | cut -f 2 -d ' '`
> rm -f $info_file
>
> -# Make connections
> connection_num=0
> -while [ $connection_num -lt $ipaddr_pair_num ]; do
> - # IP addresses
> - x=`expr $connection_num \/ 255 % 255`
> - y=`expr $connection_num % 255`
> -
> - case $IP_VER in
> - 4)
> - lhost_addr="10.${x}.${y}.2"
> - ;;
> -
> - 6)
> - hex_x=`printf %x $x`
> - hex_y=`printf %x $y`
> - lhost_addr="fd00:1:${hex_x}:${hex_y}::2"
> - ;;
> - esac
> -
> - ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $server_port' ; echo $?'`
> - if [ $ret -ne 0 ]; then
> - if [ $connection_num -eq 0 ]; then
> - tst_resm TFAIL "Failed to run any client"
> - exit 1
> - else
> - tst_resm TINFO "$connection_num seems the maximum number of the client"
> - fi
> - break
> - fi
> - connection_num=`expr $connection_num + 1`
> -done
> -
> # Watch the TCP traffic server
> start_epoc=`date +%s`
> while true ; do
> + # Make connections
> + if [ $connection_num -lt $ipaddr_pair_num ]; then
> + # IP addresses
> + x=`expr $connection_num \/ 255 % 255`
> + y=`expr $connection_num % 255`
> +
> + case $IP_VER in
> + 4)
> + lhost_addr="10.${x}.${y}.2"
> + ;;
> +
> + 6)
> + hex_x=`printf %x $x`
> + hex_y=`printf %x $y`
> + lhost_addr="fd00:1:${hex_x}:${hex_y}::2"
> + ;;
> + esac
> +
> + ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $server_port' ; echo $?'`
> + if [ $ret -ne 0 ]; then
> + if [ $connection_num -eq 0 ]; then
> + tst_resm TFAIL "Failed to run any client"
> + exit 1
> + else
> + tst_resm TINFO "$connection_num seems the maximum number of the client"
> + fi
> + break
> + fi
> + connection_num=`expr $connection_num + 1`
> + fi
> +
> current_epoc=`date +%s`
> elapse_epoc=`expr $current_epoc - $start_epoc`
>
> diff --git a/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01
> b/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01
> index dc9e784..6a5a72c 100644
> --- a/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01
> +++ b/testcases/network/stress/tcp/multi-diffnic/tcp4-multi-diffnic01
> @@ -340,24 +340,24 @@ done
> server_pid=`grep PID: $info_file | cut -f 2 -d ' '`
> rm -f $info_file
>
> -# Main loop
> connection_num=0
> -while [ $connection_num -lt $link_total ]; do
> - field=`expr $connection_num + 1`
> - lhost_addr=`echo $lhost_addrs | cut -d ' ' -f $field`
> -
> - # Run a client
> - ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $server_port'; echo $?'`
> - if [ $ret -ne 0 ]; then
> - tst_resm TFAIL "Failed to run client on Link${connection_num}"
> - exit 1
> - fi
> - connection_num=`expr $connection_num + 1`
> -done
> -
> # Watch the TCP traffic server
> start_epoc=`date +%s`
> while true ; do
> + # Main loop
> + if [ $connection_num -lt $link_total ]; then
> + field=`expr $connection_num + 1`
> + lhost_addr=`echo $lhost_addrs | cut -d ' ' -f $field`
> +
> + # Run a client
> + ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $server_port'; echo $?'`
> + if [ $ret -ne 0 ]; then
> + tst_resm TFAIL "Failed to run client on Link${connection_num}"
> + exit 1
> + fi
> + connection_num=`expr $connection_num + 1`
> + fi
> +
> current_epoc=`date +%s`
> elapse_epoc=`expr $current_epoc - $start_epoc`
>
> diff --git
> a/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01
> b/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01
> index e260d35..1b9f342 100644
> --- a/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01
> +++ b/testcases/network/stress/tcp/multi-diffport/tcp4-multi-diffport01
> @@ -320,44 +320,44 @@ fi
> start_port=`echo $portbundle | cut -f 1 -d '-'`
> end_port=`echo $portbundle | cut -f 2 -d '-'`
>
> -# Making connections
> connection_num=0
> current_port=$start_port
> -while [ $current_port -le $end_port ]; do
> - # Run a server
> - ns-tcpserver -b -f $IP_VER -p $current_port
> - if [ $? -ne 0 ]; then
> - # Failed to start no server
> - if [ $connection_num -eq 0 ]; then
> - tst_resm TFAIL "Failed to run a server"
> - exit 1
> - fi
> - # Failed to start a server
> - tst_resm TINFO "$connection_num seems the maximum number of the server"
> - break
> - fi
> -
> - # Run a clinet
> - ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $current_port' ; echo $?'`
> - if [ $ret -ne 0 ]; then
> - # Failed to start any client
> - if [ $connection_num -eq 0 ]; then
> - tst_resm TFAIL "Failed to run any client."
> - exit 1
> - fi
> - # Failed to start a client
> - tst_resm TINFO "$connection_num seems the maximum number of the client"
> - break
> - fi
> -
> - current_port=`expr $current_port + 1`
> - connection_num=`expr $connection_num + 1`
> -done
> -
>
> # Watch the TCP traffic server
> start_epoc=`date +%s`
> while true ; do
> + # Making connections
> + if [ $current_port -le $end_port ]; then
> + # Run a server
> + ns-tcpserver -b -f $IP_VER -p $current_port
> + if [ $? -ne 0 ]; then
> + # Failed to start no server
> + if [ $connection_num -eq 0 ]; then
> + tst_resm TFAIL "Failed to run a server"
> + exit 1
> + fi
> + # Failed to start a server
> + tst_resm TINFO "$connection_num seems the maximum number of the server"
> + break
> + fi
> +
> + # Run a clinet
> + ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $current_port' ; echo $?'`
> + if [ $ret -ne 0 ]; then
> + # Failed to start any client
> + if [ $connection_num -eq 0 ]; then
> + tst_resm TFAIL "Failed to run any client."
> + exit 1
> + fi
> + # Failed to start a client
> + tst_resm TINFO "$connection_num seems the maximum number of the client"
> + break
> + fi
> +
> + current_port=`expr $current_port + 1`
> + connection_num=`expr $connection_num + 1`
> + fi
> +
> current_epoc=`date +%s`
> elapse_epoc=`expr $current_epoc - $start_epoc`
> if [ $elapse_epoc -ge $NS_DURATION ]; then
> diff --git
> a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> index aff2481..206a0d1 100644
> --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> @@ -334,27 +334,28 @@ done
> server_pid=`grep PID: $info_file | cut -f 2 -d ' '`
> rm -f $info_file
>
> -# Making connections
> connection_num=0
> -while [ $connection_num -lt $CONNECTION_TOTAL ]; do
> - # Run a client
> - ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $server_port' ; echo $?'`
> - if [ $ret -ne 0 ]; then
> - # Failed to start any client
> - if [ $connection_num -eq 0 ]; then
> - tst_resm TFAIL "Failed to run any client"
> - exit 1
> - fi
> - # Failed to start a client
> - tst_resm TINFO "$connection_num seems the maximum number of the client"
> - break
> - fi
> - connection_num=`expr $connection_num + 1`
> -done
>
> # Watch the TCP traffic server
> start_epoc=`date +%s`
> while true ; do
> + # Making connections
> + if [ $connection_num -lt $CONNECTION_TOTAL ]; then
> + # Run a client
> + ret=`$LTP_RSH $RHOST ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER
> -S $lhost_addr -p $server_port' ; echo $?'`
> + if [ $ret -ne 0 ]; then
> + # Failed to start any client
> + if [ $connection_num -eq 0 ]; then
> + tst_resm TFAIL "Failed to run any client"
> + exit 1
> + fi
> + # Failed to start a client
> + tst_resm TINFO "$connection_num seems the maximum number of the client"
> + break
> + fi
> + connection_num=`expr $connection_num + 1`
> + fi
> +
> current_epoc=`date +%s`
> elapse_epoc=`expr $current_epoc - $start_epoc`
>
> --
> 1.8.1.4
>
>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by Windows:
>
> Build for Windows Store.
>
> http://p.sf.net/sfu/windows-dev2dev
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
[not found] ` <CAPwn2JTuF3EVb8_XoWkFk=qZc61FhNHenNDmdR7b6xrZFf9x1g@mail.gmail.com>
@ 2013-06-28 7:13 ` Jan Stancek
[not found] ` <CAPwn2JRYRWDEvn090NdtM1K178R=yQSasmBX3ZoKymVtcRWPXw@mail.gmail.com>
0 siblings, 1 reply; 8+ messages in thread
From: Jan Stancek @ 2013-06-28 7:13 UTC (permalink / raw)
To: Hangbin Liu; +Cc: ltp-list
----- Original Message -----
> From: "Hangbin Liu" <liuhangbin@gmail.com>
> To: "Jan Stancek" <jstancek@redhat.com>
> Sent: Friday, 28 June, 2013 8:36:05 AM
> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
>
> No, we can set up $CONNECTION_TOTAL connections as soon as possible, and also
> transmit tcp data at the same time.
Where does this happen?
I'm looking at the while loop, and I see it creates 1 connection each
iteration, then it sleeps for 1 second.
Am I missing something here?
while true ; do
# Making connections
if [ $connection_num -lt $CONNECTION_TOTAL ]; then
# make new connection
...
connection_num=`expr $connection_num + 1`
fi
# check time
...
sleep 1
done
Regards,
Jan
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
[not found] ` <CAPwn2JRYRWDEvn090NdtM1K178R=yQSasmBX3ZoKymVtcRWPXw@mail.gmail.com>
@ 2013-06-28 11:06 ` Jan Stancek
2013-07-01 8:31 ` Hangbin Liu
0 siblings, 1 reply; 8+ messages in thread
From: Jan Stancek @ 2013-06-28 11:06 UTC (permalink / raw)
To: Hangbin Liu; +Cc: ltp-list
----- Original Message -----
> From: "Hangbin Liu" <liuhangbin@gmail.com>
> To: "Jan Stancek" <jstancek@redhat.com>
> Sent: Friday, 28 June, 2013 11:30:02 AM
> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
>
Hangbin,
just fyi, your replies are not going to list.
> Opps, My mistake. Didn't find there is a sleep 1...
>
> I will send another patch for this issue. How about check
> $connection_num every 100 times. like
I'd go with new variable to count each attempt, not just successful ones.
Or something like this (on top your patch):
Skip the sleep and continue on success, if we hit issue sleep and retry as watchdog allows.
diff --git a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01 b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
index 206a0d1..649c60b 100644
--- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
+++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
@@ -351,9 +351,10 @@ while true ; do
fi
# Failed to start a client
tst_resm TINFO "$connection_num seems the maximum number of the client"
- break
+ else
+ connection_num=`expr $connection_num + 1`
+ continue;
fi
- connection_num=`expr $connection_num + 1`
fi
current_epoc=`date +%s`
Regards,
Jan
>
> --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> @@ -340,7 +340,7 @@ connection_num=0
> start_epoc=`date +%s`
> while true ; do
> # Making connections
> - if [ $connection_num -lt $CONNECTION_TOTAL ]; then
> + while [ $connection_num -lt $CONNECTION_TOTAL ]; do
> # Run a client
> ret=`$LTP_RSH $RHOST
> ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p
> $server_port' ; ec
> if [ $ret -ne 0 ]; then
> @@ -354,7 +354,12 @@ while true ; do
> break
> fi
> connection_num=`expr $connection_num + 1`
> - fi
> +
> + # check timeout every 100 times
> + if [ $(($connection_num % 100)) -eq 0 ];then
> + break
> + fi
> + done
>
> current_epoc=`date +%s`
> elapse_epoc=`expr $current_epoc - $start_epoc`
>
> 2013/6/28 Jan Stancek <jstancek@redhat.com>:
> >
> >
> >
> >
> > ----- Original Message -----
> >> From: "Hangbin Liu" <liuhangbin@gmail.com>
> >> To: "Jan Stancek" <jstancek@redhat.com>
> >> Sent: Friday, 28 June, 2013 8:36:05 AM
> >> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill
> >> the test case after timeout
> >>
> >> No, we can set up $CONNECTION_TOTAL connections as soon as possible, and
> >> also
> >> transmit tcp data at the same time.
> >
> > Where does this happen?
> >
> > I'm looking at the while loop, and I see it creates 1 connection each
> > iteration, then it sleeps for 1 second.
> >
> > Am I missing something here?
> >
> > while true ; do
> > # Making connections
> > if [ $connection_num -lt $CONNECTION_TOTAL ]; then
> > # make new connection
> > ...
> > connection_num=`expr $connection_num + 1`
> > fi
> >
> > # check time
> > ...
> > sleep 1
> > done
> >
> > Regards,
> > Jan
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
2013-06-28 11:06 ` Jan Stancek
@ 2013-07-01 8:31 ` Hangbin Liu
2013-07-01 10:56 ` Jan Stancek
2013-07-01 12:56 ` KUMAR, BHUSHAN
0 siblings, 2 replies; 8+ messages in thread
From: Hangbin Liu @ 2013-07-01 8:31 UTC (permalink / raw)
To: Jan Stancek; +Cc: ltp-list
Hi Jan,
The problem is the connection won't fail, but only need too much
time. For example:
On a guest: on cpu process, 2G memory
# for i in `seq 4000`; do ./ns-tcpclient -b -f 4 -S 10.66.87.216 -p
9999; echo "The $i connection : `date`"; done
The 1 connection : Mon Jul 1 04:03:05 EDT 2013
The 2 connection : Mon Jul 1 04:03:05 EDT 2013
The 3 connection : Mon Jul 1 04:03:05 EDT 2013
The 4 connection : Mon Jul 1 04:03:06 EDT 2013
<snip>
The 19 connection : Mon Jul 1 04:04:46 EDT 2013
<snip>
The 30 connection : Mon Jul 1 04:06:34 EDT 2013
The 31 connection : Mon Jul 1 04:07:52 EDT 2013
<snip>
The 45 connection : Mon Jul 1 04:10:11 EDT 2013
<snip>
The 50 connection : Mon Jul 1 04:12:05 EDT 2013
You can saw we took 9 minutes to set up 50 tcp connections.
But on a powerful physical machine,
The 1 connection : Mon Jul 1 04:21:08 EDT 2013
The 2 connection : Mon Jul 1 04:21:08 EDT 2013
<snip>
The 499 connection : Mon Jul 1 04:24:35 EDT 2013
The 500 connection : Mon Jul 1 04:24:35 EDT 2013
It only use 3 minutest to set up 500 connections.
So we can't just continue on success, but should check the time after
some connections.
Thanks and Best regards
Hangbin Liu
2013/6/28 Jan Stancek <jstancek@redhat.com>:
>
>
> ----- Original Message -----
>> From: "Hangbin Liu" <liuhangbin@gmail.com>
>> To: "Jan Stancek" <jstancek@redhat.com>
>> Sent: Friday, 28 June, 2013 11:30:02 AM
>> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
>>
>
> Hangbin,
>
> just fyi, your replies are not going to list.
>
>> Opps, My mistake. Didn't find there is a sleep 1...
>>
>> I will send another patch for this issue. How about check
>> $connection_num every 100 times. like
>
> I'd go with new variable to count each attempt, not just successful ones.
>
> Or something like this (on top your patch):
> Skip the sleep and continue on success, if we hit issue sleep and retry as watchdog allows.
>
> diff --git a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01 b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> index 206a0d1..649c60b 100644
> --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> @@ -351,9 +351,10 @@ while true ; do
> fi
> # Failed to start a client
> tst_resm TINFO "$connection_num seems the maximum number of the client"
> - break
> + else
> + connection_num=`expr $connection_num + 1`
> + continue;
> fi
> - connection_num=`expr $connection_num + 1`
> fi
>
> current_epoc=`date +%s`
>
> Regards,
> Jan
>
>>
>> --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> @@ -340,7 +340,7 @@ connection_num=0
>> start_epoc=`date +%s`
>> while true ; do
>> # Making connections
>> - if [ $connection_num -lt $CONNECTION_TOTAL ]; then
>> + while [ $connection_num -lt $CONNECTION_TOTAL ]; do
>> # Run a client
>> ret=`$LTP_RSH $RHOST
>> ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p
>> $server_port' ; ec
>> if [ $ret -ne 0 ]; then
>> @@ -354,7 +354,12 @@ while true ; do
>> break
>> fi
>> connection_num=`expr $connection_num + 1`
>> - fi
>> +
>> + # check timeout every 100 times
>> + if [ $(($connection_num % 100)) -eq 0 ];then
>> + break
>> + fi
>> + done
>>
>> current_epoc=`date +%s`
>> elapse_epoc=`expr $current_epoc - $start_epoc`
>>
>> 2013/6/28 Jan Stancek <jstancek@redhat.com>:
>> >
>> >
>> >
>> >
>> > ----- Original Message -----
>> >> From: "Hangbin Liu" <liuhangbin@gmail.com>
>> >> To: "Jan Stancek" <jstancek@redhat.com>
>> >> Sent: Friday, 28 June, 2013 8:36:05 AM
>> >> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill
>> >> the test case after timeout
>> >>
>> >> No, we can set up $CONNECTION_TOTAL connections as soon as possible, and
>> >> also
>> >> transmit tcp data at the same time.
>> >
>> > Where does this happen?
>> >
>> > I'm looking at the while loop, and I see it creates 1 connection each
>> > iteration, then it sleeps for 1 second.
>> >
>> > Am I missing something here?
>> >
>> > while true ; do
>> > # Making connections
>> > if [ $connection_num -lt $CONNECTION_TOTAL ]; then
>> > # make new connection
>> > ...
>> > connection_num=`expr $connection_num + 1`
>> > fi
>> >
>> > # check time
>> > ...
>> > sleep 1
>> > done
>> >
>> > Regards,
>> > Jan
>>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
2013-07-01 8:31 ` Hangbin Liu
@ 2013-07-01 10:56 ` Jan Stancek
2013-07-04 1:03 ` Hangbin Liu
2013-07-01 12:56 ` KUMAR, BHUSHAN
1 sibling, 1 reply; 8+ messages in thread
From: Jan Stancek @ 2013-07-01 10:56 UTC (permalink / raw)
To: Hangbin Liu; +Cc: ltp-list
----- Original Message -----
> From: "Hangbin Liu" <liuhangbin@gmail.com>
> To: "Jan Stancek" <jstancek@redhat.com>
> Cc: "ltp-list" <ltp-list@lists.sf.net>
> Sent: Monday, 1 July, 2013 10:31:28 AM
> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
>
> Hi Jan,
> The problem is the connection won't fail, but only need too much
> time. For example:
I see, checking after each X connection seems reasonable.
I'm not very familiar with this test, so it's up to you to come up with some number.
Regards,
Jan
> On a guest: on cpu process, 2G memory
> # for i in `seq 4000`; do ./ns-tcpclient -b -f 4 -S 10.66.87.216 -p
> 9999; echo "The $i connection : `date`"; done
> The 1 connection : Mon Jul 1 04:03:05 EDT 2013
> The 2 connection : Mon Jul 1 04:03:05 EDT 2013
> The 3 connection : Mon Jul 1 04:03:05 EDT 2013
> The 4 connection : Mon Jul 1 04:03:06 EDT 2013
> <snip>
> The 19 connection : Mon Jul 1 04:04:46 EDT 2013
> <snip>
> The 30 connection : Mon Jul 1 04:06:34 EDT 2013
> The 31 connection : Mon Jul 1 04:07:52 EDT 2013
> <snip>
> The 45 connection : Mon Jul 1 04:10:11 EDT 2013
> <snip>
> The 50 connection : Mon Jul 1 04:12:05 EDT 2013
>
> You can saw we took 9 minutes to set up 50 tcp connections.
>
> But on a powerful physical machine,
> The 1 connection : Mon Jul 1 04:21:08 EDT 2013
> The 2 connection : Mon Jul 1 04:21:08 EDT 2013
> <snip>
> The 499 connection : Mon Jul 1 04:24:35 EDT 2013
> The 500 connection : Mon Jul 1 04:24:35 EDT 2013
>
> It only use 3 minutest to set up 500 connections.
>
> So we can't just continue on success, but should check the time after
> some connections.
>
> Thanks and Best regards
> Hangbin Liu
>
> 2013/6/28 Jan Stancek <jstancek@redhat.com>:
> >
> >
> > ----- Original Message -----
> >> From: "Hangbin Liu" <liuhangbin@gmail.com>
> >> To: "Jan Stancek" <jstancek@redhat.com>
> >> Sent: Friday, 28 June, 2013 11:30:02 AM
> >> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill
> >> the test case after timeout
> >>
> >
> > Hangbin,
> >
> > just fyi, your replies are not going to list.
> >
> >> Opps, My mistake. Didn't find there is a sleep 1...
> >>
> >> I will send another patch for this issue. How about check
> >> $connection_num every 100 times. like
> >
> > I'd go with new variable to count each attempt, not just successful ones.
> >
> > Or something like this (on top your patch):
> > Skip the sleep and continue on success, if we hit issue sleep and retry as
> > watchdog allows.
> >
> > diff --git
> > a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> > b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> > index 206a0d1..649c60b 100644
> > --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> > +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> > @@ -351,9 +351,10 @@ while true ; do
> > fi
> > # Failed to start a client
> > tst_resm TINFO "$connection_num seems the maximum
> > number of the client"
> > - break
> > + else
> > + connection_num=`expr $connection_num + 1`
> > + continue;
> > fi
> > - connection_num=`expr $connection_num + 1`
> > fi
> >
> > current_epoc=`date +%s`
> >
> > Regards,
> > Jan
> >
> >>
> >> --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> >> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> >> @@ -340,7 +340,7 @@ connection_num=0
> >> start_epoc=`date +%s`
> >> while true ; do
> >> # Making connections
> >> - if [ $connection_num -lt $CONNECTION_TOTAL ]; then
> >> + while [ $connection_num -lt $CONNECTION_TOTAL ]; do
> >> # Run a client
> >> ret=`$LTP_RSH $RHOST
> >> ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p
> >> $server_port' ; ec
> >> if [ $ret -ne 0 ]; then
> >> @@ -354,7 +354,12 @@ while true ; do
> >> break
> >> fi
> >> connection_num=`expr $connection_num + 1`
> >> - fi
> >> +
> >> + # check timeout every 100 times
> >> + if [ $(($connection_num % 100)) -eq 0 ];then
> >> + break
> >> + fi
> >> + done
> >>
> >> current_epoc=`date +%s`
> >> elapse_epoc=`expr $current_epoc - $start_epoc`
> >>
> >> 2013/6/28 Jan Stancek <jstancek@redhat.com>:
> >> >
> >> >
> >> >
> >> >
> >> > ----- Original Message -----
> >> >> From: "Hangbin Liu" <liuhangbin@gmail.com>
> >> >> To: "Jan Stancek" <jstancek@redhat.com>
> >> >> Sent: Friday, 28 June, 2013 8:36:05 AM
> >> >> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will
> >> >> kill
> >> >> the test case after timeout
> >> >>
> >> >> No, we can set up $CONNECTION_TOTAL connections as soon as possible,
> >> >> and
> >> >> also
> >> >> transmit tcp data at the same time.
> >> >
> >> > Where does this happen?
> >> >
> >> > I'm looking at the while loop, and I see it creates 1 connection each
> >> > iteration, then it sleeps for 1 second.
> >> >
> >> > Am I missing something here?
> >> >
> >> > while true ; do
> >> > # Making connections
> >> > if [ $connection_num -lt $CONNECTION_TOTAL ]; then
> >> > # make new connection
> >> > ...
> >> > connection_num=`expr $connection_num + 1`
> >> > fi
> >> >
> >> > # check time
> >> > ...
> >> > sleep 1
> >> > done
> >> >
> >> > Regards,
> >> > Jan
> >>
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
2013-07-01 8:31 ` Hangbin Liu
2013-07-01 10:56 ` Jan Stancek
@ 2013-07-01 12:56 ` KUMAR, BHUSHAN
1 sibling, 0 replies; 8+ messages in thread
From: KUMAR, BHUSHAN @ 2013-07-01 12:56 UTC (permalink / raw)
To: Hangbin Liu, Jan Stancek; +Cc: ltp-list
Hi,
I have also seen "connect(): connection timeout for basically ipv6 " behavior for networking/stress/tcp testcase
i.e.
tcp6-multi-sameport12 0 TINFO : - Test duration is 120 [sec]
tcp6-multi-sameport12 0 TINFO : - Target number of the connection is 128
tcp6-multi-sameport12 0 TINFO : - Version of IP is IPv6
tcp6-multi-sameport12 0 TINFO : - Network delay is 600ms +/- 200ms
tcp6-multi-sameport12 0 TINFO : - IPsec [ ESP / tunnel ]
connect(): Connection timed out
connect(): Connection timed out
connect(): Connection timed out
connect(): Connection timed out
connect(): Connection timed out
connect(): Connection timed out
connect(): Connection timed out
connect(): Connection timed out
connect(): Connection timed out
This behavior is not due testcase but its due to kernel. So I did some code changes in Linux kernel 3.2 i.e. mentioned below
In /net/ipv6/ip6_output.c
int ip6_xmit(struct sock *sk, struct sk_buff *skb, struct flowi6 *fl6,
dst->dev, dst_output);
}
- net_dbg_ratelimited("IPv6: sending pkt_too_big to self\n");
skb->dev = dst->dev;
- icmpv6_send(skb, ICMPV6_PKT_TOOBIG, 0, mtu);
+ ipv6_local_error(sk, EMSGSIZE, fl6, mtu);
IP6_INC_STATS(net, ip6_dst_idev(skb_dst(skb)), IPSTATS_MIB_FRAGFAILS);
kfree_skb(skb);
return -EMSGSIZE;
After above mentioned code changes all networking/stress/tcp testcase gets PASS.
Thanks and Regards,
Bhushan
-----Original Message-----
From: Hangbin Liu [mailto:liuhangbin@gmail.com]
Sent: Monday, July 01, 2013 2:01 PM
To: Jan Stancek
Cc: ltp-list
Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
Hi Jan,
The problem is the connection won't fail, but only need too much time. For example:
On a guest: on cpu process, 2G memory
# for i in `seq 4000`; do ./ns-tcpclient -b -f 4 -S 10.66.87.216 -p 9999; echo "The $i connection : `date`"; done The 1 connection : Mon Jul 1 04:03:05 EDT 2013 The 2 connection : Mon Jul 1 04:03:05 EDT 2013 The 3 connection : Mon Jul 1 04:03:05 EDT 2013 The 4 connection : Mon Jul 1 04:03:06 EDT 2013 <snip> The 19 connection : Mon Jul 1 04:04:46 EDT 2013 <snip> The 30 connection : Mon Jul 1 04:06:34 EDT 2013 The 31 connection : Mon Jul 1 04:07:52 EDT 2013 <snip> The 45 connection : Mon Jul 1 04:10:11 EDT 2013 <snip> The 50 connection : Mon Jul 1 04:12:05 EDT 2013
You can saw we took 9 minutes to set up 50 tcp connections.
But on a powerful physical machine,
The 1 connection : Mon Jul 1 04:21:08 EDT 2013 The 2 connection : Mon Jul 1 04:21:08 EDT 2013 <snip> The 499 connection : Mon Jul 1 04:24:35 EDT 2013 The 500 connection : Mon Jul 1 04:24:35 EDT 2013
It only use 3 minutest to set up 500 connections.
So we can't just continue on success, but should check the time after some connections.
Thanks and Best regards
Hangbin Liu
2013/6/28 Jan Stancek <jstancek@redhat.com>:
>
>
> ----- Original Message -----
>> From: "Hangbin Liu" <liuhangbin@gmail.com>
>> To: "Jan Stancek" <jstancek@redhat.com>
>> Sent: Friday, 28 June, 2013 11:30:02 AM
>> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will
>> kill the test case after timeout
>>
>
> Hangbin,
>
> just fyi, your replies are not going to list.
>
>> Opps, My mistake. Didn't find there is a sleep 1...
>>
>> I will send another patch for this issue. How about check
>> $connection_num every 100 times. like
>
> I'd go with new variable to count each attempt, not just successful ones.
>
> Or something like this (on top your patch):
> Skip the sleep and continue on success, if we hit issue sleep and retry as watchdog allows.
>
> diff --git
> a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> index 206a0d1..649c60b 100644
> ---
> a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport0
> +++ 1
> @@ -351,9 +351,10 @@ while true ; do
> fi
> # Failed to start a client
> tst_resm TINFO "$connection_num seems the maximum number of the client"
> - break
> + else
> + connection_num=`expr $connection_num + 1`
> + continue;
> fi
> - connection_num=`expr $connection_num + 1`
> fi
>
> current_epoc=`date +%s`
>
> Regards,
> Jan
>
>>
>> ---
>> a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport
>> +++ 01
>> @@ -340,7 +340,7 @@ connection_num=0
>> start_epoc=`date +%s`
>> while true ; do
>> # Making connections
>> - if [ $connection_num -lt $CONNECTION_TOTAL ]; then
>> + while [ $connection_num -lt $CONNECTION_TOTAL ]; do
>> # Run a client
>> ret=`$LTP_RSH $RHOST
>> ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p
>> $server_port' ; ec
>> if [ $ret -ne 0 ]; then @@ -354,7 +354,12 @@ while
>> true ; do
>> break
>> fi
>> connection_num=`expr $connection_num + 1`
>> - fi
>> +
>> + # check timeout every 100 times
>> + if [ $(($connection_num % 100)) -eq 0 ];then
>> + break
>> + fi
>> + done
>>
>> current_epoc=`date +%s`
>> elapse_epoc=`expr $current_epoc - $start_epoc`
>>
>> 2013/6/28 Jan Stancek <jstancek@redhat.com>:
>> >
>> >
>> >
>> >
>> > ----- Original Message -----
>> >> From: "Hangbin Liu" <liuhangbin@gmail.com>
>> >> To: "Jan Stancek" <jstancek@redhat.com>
>> >> Sent: Friday, 28 June, 2013 8:36:05 AM
>> >> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we
>> >> will kill the test case after timeout
>> >>
>> >> No, we can set up $CONNECTION_TOTAL connections as soon as
>> >> possible, and also transmit tcp data at the same time.
>> >
>> > Where does this happen?
>> >
>> > I'm looking at the while loop, and I see it creates 1 connection
>> > each iteration, then it sleeps for 1 second.
>> >
>> > Am I missing something here?
>> >
>> > while true ; do
>> > # Making connections
>> > if [ $connection_num -lt $CONNECTION_TOTAL ]; then
>> > # make new connection
>> > ...
>> > connection_num=`expr $connection_num + 1`
>> > fi
>> >
>> > # check time
>> > ...
>> > sleep 1
>> > done
>> >
>> > Regards,
>> > Jan
>>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
2013-07-01 10:56 ` Jan Stancek
@ 2013-07-04 1:03 ` Hangbin Liu
0 siblings, 0 replies; 8+ messages in thread
From: Hangbin Liu @ 2013-07-04 1:03 UTC (permalink / raw)
To: Jan Stancek; +Cc: ltp-list
Sorry the late reply, too busy these days. I think 100 is suitable, It
won't take too much time on sleeping, and will check timeout after a
while.
I will send a new patchv2 for all this issue.
Thanks
Hangbin Liu
2013/7/1 Jan Stancek <jstancek@redhat.com>:
>
>
>
>
> ----- Original Message -----
>> From: "Hangbin Liu" <liuhangbin@gmail.com>
>> To: "Jan Stancek" <jstancek@redhat.com>
>> Cc: "ltp-list" <ltp-list@lists.sf.net>
>> Sent: Monday, 1 July, 2013 10:31:28 AM
>> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
>>
>> Hi Jan,
>> The problem is the connection won't fail, but only need too much
>> time. For example:
>
> I see, checking after each X connection seems reasonable.
> I'm not very familiar with this test, so it's up to you to come up with some number.
>
> Regards,
> Jan
>
>> On a guest: on cpu process, 2G memory
>> # for i in `seq 4000`; do ./ns-tcpclient -b -f 4 -S 10.66.87.216 -p
>> 9999; echo "The $i connection : `date`"; done
>> The 1 connection : Mon Jul 1 04:03:05 EDT 2013
>> The 2 connection : Mon Jul 1 04:03:05 EDT 2013
>> The 3 connection : Mon Jul 1 04:03:05 EDT 2013
>> The 4 connection : Mon Jul 1 04:03:06 EDT 2013
>> <snip>
>> The 19 connection : Mon Jul 1 04:04:46 EDT 2013
>> <snip>
>> The 30 connection : Mon Jul 1 04:06:34 EDT 2013
>> The 31 connection : Mon Jul 1 04:07:52 EDT 2013
>> <snip>
>> The 45 connection : Mon Jul 1 04:10:11 EDT 2013
>> <snip>
>> The 50 connection : Mon Jul 1 04:12:05 EDT 2013
>>
>> You can saw we took 9 minutes to set up 50 tcp connections.
>>
>> But on a powerful physical machine,
>> The 1 connection : Mon Jul 1 04:21:08 EDT 2013
>> The 2 connection : Mon Jul 1 04:21:08 EDT 2013
>> <snip>
>> The 499 connection : Mon Jul 1 04:24:35 EDT 2013
>> The 500 connection : Mon Jul 1 04:24:35 EDT 2013
>>
>> It only use 3 minutest to set up 500 connections.
>>
>> So we can't just continue on success, but should check the time after
>> some connections.
>>
>> Thanks and Best regards
>> Hangbin Liu
>>
>> 2013/6/28 Jan Stancek <jstancek@redhat.com>:
>> >
>> >
>> > ----- Original Message -----
>> >> From: "Hangbin Liu" <liuhangbin@gmail.com>
>> >> To: "Jan Stancek" <jstancek@redhat.com>
>> >> Sent: Friday, 28 June, 2013 11:30:02 AM
>> >> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill
>> >> the test case after timeout
>> >>
>> >
>> > Hangbin,
>> >
>> > just fyi, your replies are not going to list.
>> >
>> >> Opps, My mistake. Didn't find there is a sleep 1...
>> >>
>> >> I will send another patch for this issue. How about check
>> >> $connection_num every 100 times. like
>> >
>> > I'd go with new variable to count each attempt, not just successful ones.
>> >
>> > Or something like this (on top your patch):
>> > Skip the sleep and continue on success, if we hit issue sleep and retry as
>> > watchdog allows.
>> >
>> > diff --git
>> > a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> > b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> > index 206a0d1..649c60b 100644
>> > --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> > +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> > @@ -351,9 +351,10 @@ while true ; do
>> > fi
>> > # Failed to start a client
>> > tst_resm TINFO "$connection_num seems the maximum
>> > number of the client"
>> > - break
>> > + else
>> > + connection_num=`expr $connection_num + 1`
>> > + continue;
>> > fi
>> > - connection_num=`expr $connection_num + 1`
>> > fi
>> >
>> > current_epoc=`date +%s`
>> >
>> > Regards,
>> > Jan
>> >
>> >>
>> >> --- a/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> >> +++ b/testcases/network/stress/tcp/multi-sameport/tcp4-multi-sameport01
>> >> @@ -340,7 +340,7 @@ connection_num=0
>> >> start_epoc=`date +%s`
>> >> while true ; do
>> >> # Making connections
>> >> - if [ $connection_num -lt $CONNECTION_TOTAL ]; then
>> >> + while [ $connection_num -lt $CONNECTION_TOTAL ]; do
>> >> # Run a client
>> >> ret=`$LTP_RSH $RHOST
>> >> ${LTPROOT}/testcases/bin/ns-tcpclient -b -f $IP_VER -S $lhost_addr -p
>> >> $server_port' ; ec
>> >> if [ $ret -ne 0 ]; then
>> >> @@ -354,7 +354,12 @@ while true ; do
>> >> break
>> >> fi
>> >> connection_num=`expr $connection_num + 1`
>> >> - fi
>> >> +
>> >> + # check timeout every 100 times
>> >> + if [ $(($connection_num % 100)) -eq 0 ];then
>> >> + break
>> >> + fi
>> >> + done
>> >>
>> >> current_epoc=`date +%s`
>> >> elapse_epoc=`expr $current_epoc - $start_epoc`
>> >>
>> >> 2013/6/28 Jan Stancek <jstancek@redhat.com>:
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > ----- Original Message -----
>> >> >> From: "Hangbin Liu" <liuhangbin@gmail.com>
>> >> >> To: "Jan Stancek" <jstancek@redhat.com>
>> >> >> Sent: Friday, 28 June, 2013 8:36:05 AM
>> >> >> Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will
>> >> >> kill
>> >> >> the test case after timeout
>> >> >>
>> >> >> No, we can set up $CONNECTION_TOTAL connections as soon as possible,
>> >> >> and
>> >> >> also
>> >> >> transmit tcp data at the same time.
>> >> >
>> >> > Where does this happen?
>> >> >
>> >> > I'm looking at the while loop, and I see it creates 1 connection each
>> >> > iteration, then it sleeps for 1 second.
>> >> >
>> >> > Am I missing something here?
>> >> >
>> >> > while true ; do
>> >> > # Making connections
>> >> > if [ $connection_num -lt $CONNECTION_TOTAL ]; then
>> >> > # make new connection
>> >> > ...
>> >> > connection_num=`expr $connection_num + 1`
>> >> > fi
>> >> >
>> >> > # check time
>> >> > ...
>> >> > sleep 1
>> >> > done
>> >> >
>> >> > Regards,
>> >> > Jan
>> >>
>>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2013-07-04 1:03 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-25 7:48 [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout Hangbin Liu
2013-06-27 16:25 ` Jan Stancek
[not found] ` <CAPwn2JTuF3EVb8_XoWkFk=qZc61FhNHenNDmdR7b6xrZFf9x1g@mail.gmail.com>
2013-06-28 7:13 ` Jan Stancek
[not found] ` <CAPwn2JRYRWDEvn090NdtM1K178R=yQSasmBX3ZoKymVtcRWPXw@mail.gmail.com>
2013-06-28 11:06 ` Jan Stancek
2013-07-01 8:31 ` Hangbin Liu
2013-07-01 10:56 ` Jan Stancek
2013-07-04 1:03 ` Hangbin Liu
2013-07-01 12:56 ` KUMAR, BHUSHAN
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox