Re: [tcpm] TCP tuning

Joe Touch <touch@ISI.EDU> Thu, 04 February 2010 16:42 UTC

Return-Path: <touch@ISI.EDU>
X-Original-To: tcpm@core3.amsl.com
Delivered-To: tcpm@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 879B928C0FA for <tcpm@core3.amsl.com>; Thu, 4 Feb 2010 08:42:50 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id S805+Gc0WdST for <tcpm@core3.amsl.com>; Thu, 4 Feb 2010 08:42:49 -0800 (PST)
Received: from nitro.isi.edu (nitro.isi.edu [128.9.208.207]) by core3.amsl.com (Postfix) with ESMTP id 54A2028C0F4 for <tcpm@ietf.org>; Thu, 4 Feb 2010 08:42:49 -0800 (PST)
Received: from [70.213.22.78] (78.sub-70-213-22.myvzw.com [70.213.22.78]) (authenticated bits=0) by nitro.isi.edu (8.13.8/8.13.8) with ESMTP id o14GddxQ003256 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Thu, 4 Feb 2010 08:39:41 -0800 (PST)
Message-ID: <4B6AF84A.9080509@isi.edu>
Date: Thu, 04 Feb 2010 08:39:38 -0800
From: Joe Touch <touch@ISI.EDU>
User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
MIME-Version: 1.0
To: rick jones <perfgeek@mac.com>
References: <7BE9742D-6EDC-43FE-84FC-D22C52D23152@nokia.com> <133D9897FB9C5E4E9DF2779DC91E947C025F1861@SLFSNX.rcs.alcatel-research.de> <d1c2719f1002031110v3b76ca9eu14c9a110847548e7@mail.gmail.com> <4B69CDD7.6060802@isi.edu> <E086E248-DEFA-4AA4-B25D-F7FBB0FB9E7D@mac.com> <4B6A43D1.2010706@isi.edu> <9E43CA53-5BFD-4377-93D1-1AED32C09B0E@mac.com> <443C71B6-1D1A-49CA-B5E4-FB81FDCB7FD1@mac.com> <4B6A6848.80904@isi.edu> <6C3B471F-6ACB-467E-9D11-EE68388B3F5B@mac.com>
In-Reply-To: <6C3B471F-6ACB-467E-9D11-EE68388B3F5B@mac.com>
X-Enigmail-Version: 0.96.0
Content-Type: multipart/signed; micalg="pgp-sha1"; protocol="application/pgp-signature"; boundary="------------enig317DAECC8B75F2BBD696D391"
X-MailScanner-ID: o14GddxQ003256
X-ISI-4-69-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: tcpm@ietf.org, "SCHARF, Michael" <Michael.Scharf@alcatel-lucent.com>
Subject: Re: [tcpm] TCP tuning
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 04 Feb 2010 16:42:50 -0000


rick jones wrote:
> 
> On Feb 3, 2010, at 10:25 PM, Joe Touch wrote:
>> Did you use a netperf option to disable Nagle?
> 
> No, there should be no need for that.  For a TCP_RR test netperf
> presents all the data of a request or response to the transport in a
> single send call,  there should be no delays Nagle at all.

I don't know why this still isn't widely known, but there is *no*
correlation between the OS interface and TCP segment emissions per se.
Send calls don't correspond to buffer flushes or anything else. All they
do is load the buffer.

Nagle still needs to be disabled.

> Further, in
> this case, there was only ever the one transaction in flight at a time,
> so at the time of each send() the connection was "idle" in the Nagle sense.

Again, "at the time of each send()" is irrelelvant. What's relevant is
what's in the buffers.

>> There are also many reasons this could happen; it might be easier to see
>> in a plot.
> 
> Anyone should feel free to grab either the binary (.pcap) or "cooked"
> (ascii) traces off of netperf.org and run them through whatever post
> processing tools they like.  I would have shoved them into the original
> email, but didn't want to stuff peoples' inboxes unnecessarily.  Still,
> if you think that copying some examples from the ascii into email would
> help I'm willing to do that.
> 
> I'm not the acme of tcpdump trace reading, but it seemed pretty
> conclusive in the traces - with slowstart after idle, the 2.6.31 server
> sent the data of each 16K response with what certainly appears to be
> slow-start behaviour, with that sysctl set to disable slowstart after
> idle, no such slow start behaviour in the middle of the trace.  So, for
> Linux 2.6.31, as distributed by Ubuntu, it would seem that the arrival
> of the next request is not going to preclude slowstart after idle
> behaviour.

Some versions of Linux may have various tricks implemented. None of them
havae been standardized, though. It's worth checking with a few
different OS's.

Joe