Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a WG document
Ted Faber <faber@ISI.EDU> Fri, 03 October 2008 18:38 UTC
Return-Path: <tcpm-bounces@ietf.org>
X-Original-To: tcpm-archive@megatron.ietf.org
Delivered-To: ietfarch-tcpm-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 44D4D28C0E9; Fri, 3 Oct 2008 11:38:03 -0700 (PDT)
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 E0B5328C0E9 for <tcpm@core3.amsl.com>; Fri, 3 Oct 2008 11:38:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.562
X-Spam-Level:
X-Spam-Status: No, score=-2.562 tagged_above=-999 required=5 tests=[AWL=0.038, 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 x93FTdEY6shK for <tcpm@core3.amsl.com>; Fri, 3 Oct 2008 11:38:00 -0700 (PDT)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) by core3.amsl.com (Postfix) with ESMTP id 30C733A6986 for <tcpm@ietf.org>; Fri, 3 Oct 2008 11:38:00 -0700 (PDT)
Received: from zod.isi.edu (zod.isi.edu [128.9.168.221]) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id m93IbRdb018334 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 3 Oct 2008 11:37:27 -0700 (PDT)
Received: (from faber@localhost) by zod.isi.edu (8.14.3/8.14.2/Submit) id m93IbQft029944; Fri, 3 Oct 2008 11:37:26 -0700 (PDT) (envelope-from faber)
Date: Fri, 03 Oct 2008 11:37:26 -0700
From: Ted Faber <faber@ISI.EDU>
To: Murali Bashyam <MBashyam@OcarinaNetworks.com>
Message-ID: <20081003183726.GD27519@zod.isi.edu>
References: <53797EED-2C93-4E20-AF60-E3C0EF8F85AC@windriver.com> <1e41a3230809292310o591b7f98l5048083b9e0966f2@mail.gmail.com> <EC7B72027914A242B991C029F5F213CF2AB0CCA6AA@exchsvr01.ocarina.local>
Mime-Version: 1.0
In-Reply-To: <EC7B72027914A242B991C029F5F213CF2AB0CCA6AA@exchsvr01.ocarina.local>
User-Agent: Mutt/1.4.2.3i
X-url: http://www.isi.edu/~faber
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: faber@zod.isi.edu
Cc: "Anantha Ramaiah (ananth)" <ananth@cisco.com>, "tcpm@ietf.org" <tcpm@ietf.org>, David Borman <david.borman@windriver.com>
Subject: Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a WG document
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: <https://www.ietf.org/mailman/private/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>
Content-Type: multipart/mixed; boundary="===============0934646697=="
Sender: tcpm-bounces@ietf.org
Errors-To: tcpm-bounces@ietf.org
I don't mean to be answering from John, but your comments interested me. On Thu, Oct 02, 2008 at 05:13:50PM -0700, Murali Bashyam wrote: > > > From: John Heffner [mailto:johnwheffner@gmail.com] > > I have reservations about moving forward with this draft as a wg > > document. While the information is technically correct, it is overly > > specific to the point of possibly being misleading rather than > > clarifying. An operating system may terminate a tcp connection at any > > time, not just when the connection is in the persist state. Further, > > I would actually argue that terminating a connection *because* it's in > > the persist state is a bad idea and should be discouraged. (The > > reason for termination should be for its use of resources, not TCP's > > state.) > > No implementation today (the well-known ones BSD, Windows and Linux) > terminates the TCP connection in that persist state as long as ACKs > are being reliably received from the peer. Those three implementations > are not doing what you are saying they should be doing, and if it's > crystal clear from the standard that they should be doing so, why > aren't they? Your comment is a little ambiguous. John says that he believes that persist state is not necessarily a good marker for aborting connections when resources are scarce. To take him to task because implementations are not using it as a marker - because the implementers agreed with his position - is a little unfair, IMHO. On the WG item: As a bigger picture issue, I find it helpful to remember that protocol standards, like 1122, are primarily interoperation documents. As such, they tend to focus on what protocol implementers must do to talk with one another successfully, not to nail down all possible choices. Once we start offering advice (or stronger) to developers, we're leaving the interoperability domain. We, as a standards body, have to assume that implementers know their application and their environment better than we do, and that they can and will make appropriate decisions if we give them the room to do so. Where a standard has unnecessarily tied the hands of implementers, that standard should be changed, IMHO. I am also sympathetic to clarifying the standards body's intent where poor language has obscured it. I don't see that kind of confusion in the text the authors are addressing (that is RFC 1122 Section 4.2.2.17), but reasonable people can disagree on such things. As such, taking on this work item - clarifying 1122 4.2.2.17 - doesn't excite me, but I don't oppose it. The draft should, IMHO, point out that 1122 has nothing to say about resource management. Designers and implementers are free to be as clever or foolish as they'd like. End of thoughts on the WG item. As for the draft itself, I'm concerned that it seems to be advocating a particular resource management position more strongly than simply pointing out that RFC1122 should not affect resource allocation decisions. I also see some misplaced standards language that is somewhat confusing. I'm looking at this paragraph in Section 2: An extensive discussion took place recently about this issue on the TCPM WG mailing list [TCPM]. The general opinion seemed to be that terminating a TCP connection in persist condition does not violate RFC 1122. In particular the operating system, a resource manager, or an application can instruct TCP to abort a connection in the persist condition. TCP itself SHOULD not take any action and continue to keep the connection open as mandated by RFC 1122 unless otherwise instructed to do so. The exact mechanism by which the instruction to abort the connection is conveyed to TCP is an implementation decision and falls beyond the scope of the current memo. There's no instruction going on, and one doesn't request an abort. Abort is a command in the TCP interface (defined in RFC 793, p. 50) that destroys a TCP connection. Abort works in any state. Anything with access to the TCP interface, including the OS, a resource manager, or an application, can call it. A TCP abort is "the exact mechanism by which the instruction to abort the connection is conveyed to TCP", and the only reason that it's outside the scope of this document is that it's defined in 793. In light of that I think that the sentence about "TCP itself SHOULD not[sic] take any action..." is more confusing than the 1122 section. It seems to imply that TCP might react differently to an abort than the single paragraph in 793, and I don't think that's the case. Now, a strictly defined abort command seems to somewhat contradict my earlier comments about allowing implementers some freedom. This is a spot where the standards body has required a specific tool to be available to applications (and OSes and resource managers): there must be a way to annihilate a TCP connection from outside without regard to its state or anything else. The standard is silent about how the command is used; that's the flexibility here. -- Ted Faber http://www.isi.edu/~faber PGP: http://www.isi.edu/~faber/pubkeys.asc Unexpected attachment on this mail? See http://www.isi.edu/~faber/FAQ.html#SIG
_______________________________________________ tcpm mailing list tcpm@ietf.org https://www.ietf.org/mailman/listinfo/tcpm
- [tcpm] draft-ananth-tcpm-persist-00.txt as a WG d… David Borman
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Joe Touch
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Ted Faber
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … David Borman
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Joe Touch
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Ted Faber
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Eddy, Wesley M. (GRC-RCN0)[VZ]
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … John Heffner
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Murali Bashyam
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Joe Touch
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Murali Bashyam
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Joe Touch
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Ted Faber
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Murali Bashyam
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … David Borman
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Ted Faber
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … David Borman
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Murali Bashyam
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Murali Bashyam
- Re: [tcpm] draft-ananth-tcpm-persist-00.txt as a … Eddy, Wesley M. (GRC-RCN0)[VZ]