Re: [tcpm] WGLC on draft-ietf-tcpm-early-rexmt-01

Mark Allman <mallman@icir.org> Mon, 18 May 2009 15:21 UTC

Return-Path: <mallman@icir.org>
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 B62963A7049 for <tcpm@core3.amsl.com>; Mon, 18 May 2009 08:21:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.519
X-Spam-Level:
X-Spam-Status: No, score=-1.519 tagged_above=-999 required=5 tests=[AWL=-0.779, BAYES_20=-0.74]
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 mWNFhz8eQ0+S for <tcpm@core3.amsl.com>; Mon, 18 May 2009 08:21:24 -0700 (PDT)
Received: from pork.ICSI.Berkeley.EDU (pork.ICSI.Berkeley.EDU [192.150.186.19]) by core3.amsl.com (Postfix) with ESMTP id CAB4E3A67AE for <tcpm@ietf.org>; Mon, 18 May 2009 08:21:11 -0700 (PDT)
Received: from guns.icir.org (adsl-69-222-35-58.dsl.bcvloh.ameritech.net [69.222.35.58]) by pork.ICSI.Berkeley.EDU (8.12.11.20060308/8.12.11) with ESMTP id n4IFMlOV002269; Mon, 18 May 2009 08:22:47 -0700
Received: from lawyers.icir.org (unknown [69.222.35.58]) by guns.icir.org (Postfix) with ESMTP id 4ADDC3A23262; Mon, 18 May 2009 11:22:41 -0400 (EDT)
Received: from lawyers.icir.org (localhost [127.0.0.1]) by lawyers.icir.org (Postfix) with ESMTP id 8C4F1D5C2C4; Mon, 18 May 2009 11:22:41 -0400 (EDT)
To: Iljitsch van Beijnum <iljitsch@muada.com>
From: Mark Allman <mallman@icir.org>
In-Reply-To: <B99977B8-9968-406C-9AF7-40FD2C6125D1@muada.com>
Organization: International Computer Science Institute (ICSI)
Song-of-the-Day: Lawyers, Guns and Money
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="--------ma32063-1"; micalg="pgp-sha1"; protocol="application/pgp-signature"
Date: Mon, 18 May 2009 11:22:41 -0400
Sender: mallman@icir.org
Message-Id: <20090518152241.8C4F1D5C2C4@lawyers.icir.org>
Cc: tcpm@ietf.org
Subject: Re: [tcpm] WGLC on draft-ietf-tcpm-early-rexmt-01
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
Reply-To: mallman@icir.org
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: Mon, 18 May 2009 15:21:30 -0000

> >> I don't like the part about tracking the seqnum edges.
>
> >> Why would someone send 400 byte packets when the MSS is 1400+?
> 
> > Something interactive like ssh.  Why do we give apps the chance to
> > turn off Nagle?  It's a big, ugly world with a vast range of
> > behavior.
> 
> Yes, but you don't want all that behavior to be reflected in the
> decision tree in your TCP implementation.

I guess I have lost track of what you really don't like here.  Early
retransmit depends on having a notion of how many *packets* are
outstanding.  However, since TCP work in terms of *bytes* this is not
readily apparent.  When you get down to it all the draft says is that
you have to somehow figure out how many packets are outstanding and to
do so you can do estimation on one end of the spectrum to full tracking
on the other end.  These options both have their pros and cons and so we
leave it to the implementer to puzzle through these for their own
implementation.

Sure, it would be nice if I could tie a "method [foo] is always best,
use it" bow around this question.  But, I don't know what [foo] is.
Perhaps that can be viewed as part of the experiment here.  If you know
what [foo] is and why then certainly tell us because that's useful
information.  But, in the absence of such an answer that is based on
observations of actual network behavior (i.e., as opposed to simple
conjecture or our all-too-often-wrong mental models of how networks
work) my inclination here is to leave the draft as it is and let the
implementers choose and then we can go look at those those choices are
working after some period of time.

> Would it be possible to specify a single behavior that is simple,
> provides the intended benefits in the common cases that compromise 90%
> or more of all cases and doesn't do worse than what we have today in
> the remaining cases?

If don't view any of ER as complicated in any form.  But, certainly
YMMV.  Further, note that ER provides additional opportunities to
retransmit some packet and I do not expect it to be worse that what we
have today.  (The only chance of it being worse is that reordering could
cause needless retransmits that both waste network resources and reduce
the cwnd (although the impact of both of these is likely very minor
within the well-defined scope of ER).)

allman