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 <[email protected]>:
>
>
> ----- Original Message -----
>> From: "Hangbin Liu" <[email protected]>
>> To: "Jan Stancek" <[email protected]>
>> 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 <[email protected]>:
>> >
>> >
>> >
>> >
>> > ----- Original Message -----
>> >> From: "Hangbin Liu" <[email protected]>
>> >> To: "Jan Stancek" <[email protected]>
>> >> 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
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to