From: Jan Stancek <jstancek@redhat.com>
To: Hangbin Liu <liuhangbin@gmail.com>
Cc: LTP list <ltp-list@lists.sourceforge.net>
Subject: Re: [LTP] [PATCH] networking/stress/tcp: make sure we will kill the test case after timeout
Date: Thu, 27 Jun 2013 12:25:34 -0400 (EDT) [thread overview]
Message-ID: <538407137.757498.1372350334215.JavaMail.root@redhat.com> (raw)
In-Reply-To: <1372146532-3182-1-git-send-email-liuhangbin@gmail.com>
----- 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
next prev parent reply other threads:[~2013-06-27 16:25 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
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 [this message]
[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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=538407137.757498.1372350334215.JavaMail.root@redhat.com \
--to=jstancek@redhat.com \
--cc=liuhangbin@gmail.com \
--cc=ltp-list@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.