netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rick Jones <rick.jones2@hp.com>
To: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
Cc: David Miller <davem@davemloft.net>,
	alex@sectorb.msk.ru, netdev@vger.kernel.org
Subject: Re: [PATCH][RFC] Re: high latency with TCP connections
Date: Fri, 22 Sep 2006 10:15:47 -0700	[thread overview]
Message-ID: <45141A43.8020306@hp.com> (raw)
In-Reply-To: <20060922134642.GA10175@ms2.inr.ac.ru>

Alexey Kuznetsov wrote:
> Hello!
> 
> 
>>transactions to data segments is fubar.  That issue is also why I wonder 
>>about the setting of tcp_abc.
> 
> 
> Yes, switching ABC on/off has visible impact on amount of segments.
> When ABC is off, amount of segments is almost the same as number of
> transactions. When it is on, ~1.5% are merged. But this is invisible
> in numbers of throughput/cpu usage.

Hmm, that would seem to suggest that for "new" the netperf/netserver 
were being fast enough that the code didn't perceive the receipt of 
back-to-back sub-MSS segments? (Is that even possible once -b is fairly 
large?)  Otherwise, with new I would have expected the segment count to 
be meaningfully > than the transaction count?

> 
> That' numbers:
> 
> 1Gig link. The first column is "b". - separates runs of netperf
> in backward direction.
> 
> Run #1. One host is slower.
> 
>         old,abc=0
> 	 new,abc=0
> 	  new,abc=1
> 	   old,abc=1
> 
> 2	23652.00  6.31   21.11  10.665  8.924
> 	 23622.16  6.47   21.01  10.951  8.893
> 	  23625.05  6.21   21.01  10.512  8.891
> 	   23725.12  6.46   20.31  10.898  8.559
> 	-
> 	23594.87  21.90  6.44   9.283   10.912
> 	 23631.52  20.30  6.36   8.592   10.766
> 	  23609.55  21.00  6.26   8.896   10.599
> 	   23633.75  21.10  5.44   8.929   9.206
> 
> 4	36349.11  8.71   31.21  9.584   8.585
> 	 36461.37  8.65   30.81  9.492   8.449
> 	  36723.72  8.22   31.31  8.949   8.526
> 	   35801.24  8.58   30.51  9.589   8.521
> 	-
> 	35127.34  33.80  8.43   9.621   9.605
> 	 36165.50  30.90  8.48   8.545   9.381
> 	  36201.45  31.10  8.31   8.592   9.185
> 	   35269.76  30.00  8.58   8.507   9.732
> 
> 8	41148.23  10.39  42.30  10.101  10.281
> 	 41270.06  11.04  31.31  10.698  7.585
> 	  41181.56  5.66   48.61  5.496   11.803
> 	   40372.37  9.68   56.50  9.591   13.996
> 	-
> 	40392.14  47.00  11.89  11.637  11.775
> 	 40613.80  36.90  9.16   9.086   9.019
> 	  40504.66  53.60  7.73   13.234  7.639
> 	   40388.99  48.70  11.93  12.058  11.814
> 
> 16	67952.27  16.27  43.70  9.576   6.432
> 	 68031.40  10.56  53.70  6.206   7.894
> 	  67777.95  12.81  46.90  7.559   6.920
> 	   67814.41  16.13  46.50  9.517   6.857
> 	-
> 	68031.46  51.30  11.53  7.541   6.781
> 	 68044.57  40.70  8.48   5.982   4.986
> 	  67808.13  39.60  15.86  5.840   9.355
> 	   67818.32  52.90  11.51  7.801   6.791
> 
> 32	90445.09  15.41  99.90  6.817   11.045
> 	 90210.34  16.11  100.00 7.143   11.085
> 	  90221.84  17.31  98.90  7.676   10.962
> 	   90712.78  18.41  99.40  8.120   10.958
> 	-
> 	89155.51  99.90  12.89  11.205  5.782
> 	 90058.54  99.90  16.16  11.093  7.179
> 	  90092.31  98.60  15.41  10.944  6.840
> 	   88688.96  99.00  17.59  11.163  7.933
> 
> 64	89983.76  13.66  100.00 6.071   11.113
> 	 90504.24  17.54  100.00 7.750   11.049
> 	  92043.36  17.44  99.70  7.580   10.832
> 	   90979.29  16.01  99.90  7.038   10.981
> 	-
> 	88615.27  99.90  14.91  11.273  6.729
> 	 89316.13  99.90  17.28  11.185  7.740
> 	  90622.85  99.90  16.81  11.024  7.420
> 	   89084.85  99.90  17.51  11.214  7.861
> 
> Run #2. Slower host is replaced with better one. ABC=0.
> No runs in backward directions.
> 
> 	new
> 	 old
> 
> 2	24009.73  8.80   6.49   3.667   10.806
> 	 24008.43  8.00   6.32   3.334   10.524
> 4	40012.53  18.30  8.79   4.574   8.783
> 	 39999.84  19.40  8.86   4.851   8.857
> 8	60500.29  26.30  12.78  4.348   8.452
> 	 60397.79  26.30  11.73  4.355   7.769
> 16	69619.95  39.80  14.03  5.717   8.063
> 	 70528.72  24.90  14.43  3.531   8.184
> 32	132522.01  53.20  21.28  4.015   6.424
> 	 132602.93  57.70  22.59  4.351   6.813
> 64	145738.83  60.30  25.01  4.138   6.865
> 	 143129.55  73.20  24.19  5.114   6.759
> 128	148184.21  69.70  24.96  4.704   6.739
> 	 148143.47  71.00  25.01  4.793   6.753
> 256	144798.91  69.40  25.01  4.793   6.908
> 	 144086.01  73.00  24.61  5.067   6.832
> 
> Frankly, I do not see any statistically valid correlations.

Does look like it jumps-around quite a bit - for example the run#2 with 
-b 16 had the CPU util all over the map on the netperf side.  That 
wasn't by any chance an SMP system?

>>that "linux" didn't seem to be doing the same thing. Hence my tweaking 
>>when seeing this patch come along...]
> 
> 
> netperf does not catch this. :-)

Nope :(  One of these days.... I need to teach netperf how to extract 
TCP statistics from as many platforms as possible.  Meantime it relies 
as always on the kindness of benchmarkers :) (My appologies to Tennesee 
Williams :)

> Even with this patch linux does not ack each second segment dumbly,
> it waits for some conditions, mostly read() emptying receive queue.

Good.  HP-UX is indeed dumb about this, but I'm assured it will be 
changing.  I forget what Solaris does in this situation - I thought I 
looked a while ago but cannot recall the result.

> To model this it is necessary to insert some gaps between
> bursted segments or to use slow network.
> 
> I have no doubts it is easy to model a situation when we send
> lots of useless ACKs. F.e. inserting 20ms gaps between requests.
> To see effect on thoughput/cpu, we could start enough of connections,
> doing the same thing.

Adding --enable-intervals might work there.  I don't recall how well it 
gets along with --enable-burst though, and you have already made lots of 
runs as it is.

rick

  reply	other threads:[~2006-09-22 17:15 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-30 10:07 high latency with TCP connections Alexander Vodomerov
2006-08-30 17:27 ` Stephen Hemminger
2006-08-30 21:39   ` David Miller
2006-08-30 22:04     ` Stephen Hemminger
2006-08-30 23:00     ` Rick Jones
2006-08-31  8:14     ` Alexander Vodomerov
2006-08-31 15:44       ` Sridhar Samudrala
2006-08-31 18:22     ` Kelly Burkhart
2006-08-31 19:40       ` Rick Jones
2006-08-31 21:08       ` Ian McDonald
2006-08-31 21:46   ` Alexey Kuznetsov
2006-08-31 22:14     ` Stephen Hemminger
2006-08-31 22:44       ` David Miller
2006-08-31 23:29         ` Alexey Kuznetsov
2006-08-31 23:57           ` David Miller
2006-09-01  3:23             ` Stephen Hemminger
2006-09-01  3:39               ` Ian McDonald
2006-09-01  6:23                 ` David Miller
2006-09-01  9:44             ` Pekka Savola
2006-09-01  9:49               ` David Miller
2006-09-01  9:47             ` Alexey Kuznetsov
2006-09-01 11:00               ` Evgeniy Polyakov
     [not found]                 ` <20060901090046.69b3d583@localhost.localdomain>
2006-09-01 20:55                   ` [PATCH] tcp: turn ABC off Stephen Hemminger
2006-09-02  7:22                     ` Evgeniy Polyakov
2006-09-02  8:10                       ` Herbert Xu
2006-09-04  9:10                 ` high latency with TCP connections Alexey Kuznetsov
2006-09-04 16:00 ` [PATCH][RFC] " Alexey Kuznetsov
2006-09-05 17:55   ` Rick Jones
2006-09-05 22:13     ` Alexey Kuznetsov
2006-09-18  7:39     ` David Miller
2006-09-18 17:11       ` Rick Jones
2006-09-18 20:41         ` Alexey Kuznetsov
2006-09-18 21:24           ` Rick Jones
2006-09-18 22:51             ` Alexey Kuznetsov
2006-09-19  0:37               ` Rick Jones
2006-09-22 13:46                 ` Alexey Kuznetsov
2006-09-22 17:15                   ` Rick Jones [this message]
2006-09-18  7:31   ` David Miller
2006-09-18 10:37     ` Alexey Kuznetsov
2006-09-18 13:56       ` David Miller
2006-09-20 22:44         ` Stephen Hemminger
2006-09-20 22:47           ` David Miller
2006-09-20 22:55             ` Stephen Hemminger

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=45141A43.8020306@hp.com \
    --to=rick.jones2@hp.com \
    --cc=alex@sectorb.msk.ru \
    --cc=davem@davemloft.net \
    --cc=kuznet@ms2.inr.ac.ru \
    --cc=netdev@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).