Re: [tcpm] draft-minshall-nagle
Joe Touch <touch@isi.edu> Wed, 04 June 2014 16:56 UTC
Return-Path: <touch@isi.edu>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 172E81A02E8 for <tcpm@ietfa.amsl.com>; Wed, 4 Jun 2014 09:56:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.851
X-Spam-Level:
X-Spam-Status: No, score=-4.851 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.651] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TdQooojG1os0 for <tcpm@ietfa.amsl.com>; Wed, 4 Jun 2014 09:56:46 -0700 (PDT)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 643AB1A037D for <tcpm@ietf.org>; Wed, 4 Jun 2014 09:56:44 -0700 (PDT)
Received: from [128.9.160.166] (abc.isi.edu [128.9.160.166]) (authenticated bits=0) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id s54GtWN6003268 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Wed, 4 Jun 2014 09:55:33 -0700 (PDT)
Message-ID: <538F4F84.6040004@isi.edu>
Date: Wed, 04 Jun 2014 09:55:32 -0700
From: Joe Touch <touch@isi.edu>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0
MIME-Version: 1.0
To: Wesley Eddy <wes@mti-systems.com>, Neal Cardwell <ncardwell@google.com>
References: <538D2BCC.8030906@mti-systems.com> <538DE3EA.2030104@isi.edu> <CADVnQy=Jmi10aFiSr1vnziY5bDNBv_W4+qhSkwMEiS4hSsRTkQ@mail.gmail.com> <538E00D9.4030802@isi.edu> <538E9094.4020205@mti-systems.com>
In-Reply-To: <538E9094.4020205@mti-systems.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Archived-At: http://mailarchive.ietf.org/arch/msg/tcpm/nW-wKWNFAVfQDxL1ywEfEdOp_is
Cc: "tcpm@ietf.org" <tcpm@ietf.org>
Subject: Re: [tcpm] draft-minshall-nagle
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/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: Wed, 04 Jun 2014 16:56:48 -0000
On 6/3/2014 8:20 PM, Wesley Eddy wrote: > On 6/3/2014 1:07 PM, Joe Touch wrote: ... >> My point is that even by the time of this paper, it was well-understood >> that Nagle should not be used in these environments. The paper cites >> 1999 personal communication with Jim Gettys for this, but it was >> well-known long before it was recited as an issue in this 1996 paper: >> http://ccr.sigcomm.org/archive/1997/apr97/ccr-9704-heidemann.pdf > > Even before that! RFC 1122 (from 1989) says: > > Some applications (e.g., real-time display window > updates) require that the Nagle algorithm be turned > off, so small data segments can be streamed out at the > maximum rate. I saw that, but it's more than for displays; it's actually anything *interactive* where the data unit is longer than one byte (e.g., Unicode telnet!). >> The use case cited is quite dated - network news has been largely >> abandoned. Is there a currently relevant use case for this approach, and >> given that interactive apps already should be disabling Nagle, how much >> will it help? > > > I agree that disabling Nagle for "interactive" flows should be a > recognized best current practice. (assuming they're aiming for > a packets/segments per second rate that isn't absurd) > > I think this would be a part of the "TCP Usage Guidelines" > analogue to RFC 5405 (for UDP) that Lars once thought about. > > Since Nagle is on by default in many OSes, and deciding to turn > it off means a developer has to know what it is, and that it's > even there to be turned off, I didn't think O_NODELAY was all that cryptic... > the Minshall tweak to Nagle does > seem to make it "more friendly" default to a diversity of > application behaviors (small writes, or odd patterns of writes), > while retaining the benefit of conserving packet count. > > I've noticed some people seem to have a tendency to disable Nagle > automatically, whether or not that's really necessary, since > maybe it bit them once in the distant past, and was difficult to > debug or understand. The Minshall flavor stands a better chance > of not indoctrinating people against Nagle this way. Nagle is useful in a very small use case that no longer exists - it's rare that we have interactive traffic that we know can be split at a byte boundary. > That said, this is not a burning problem. Agreed. Joe
- Re: [tcpm] draft-minshall-nagle Joe Touch
- [tcpm] draft-minshall-nagle Wesley Eddy
- Re: [tcpm] draft-minshall-nagle Eggert, Lars
- Re: [tcpm] draft-minshall-nagle Neal Cardwell
- Re: [tcpm] draft-minshall-nagle Joe Touch
- Re: [tcpm] draft-minshall-nagle Wesley Eddy
- Re: [tcpm] draft-minshall-nagle gorry
- Re: [tcpm] draft-minshall-nagle Greg Minshall
- Re: [tcpm] draft-minshall-nagle Joe Touch
- Re: [tcpm] draft-minshall-nagle Jim Gettys
- Re: [tcpm] draft-minshall-nagle Joe Touch
- Re: [tcpm] draft-minshall-nagle David Borman
- Re: [tcpm] draft-minshall-nagle Joe Touch