Re: Summary of responses so far and proposal moving forward[WasRe: [tcpm] Is this a problem?]

Joe Touch <touch@ISI.EDU> Tue, 27 November 2007 03:46 UTC

Return-path: <tcpm-bounces@ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1IwrPS-0004yU-17; Mon, 26 Nov 2007 22:46:54 -0500
Received: from tcpm by megatron.ietf.org with local (Exim 4.43) id 1IwrPQ-0004yI-0z for tcpm-confirm+ok@megatron.ietf.org; Mon, 26 Nov 2007 22:46:52 -0500
Received: from [10.90.34.44] (helo=chiedprmail1.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1IwrPP-0004y8-MZ for tcpm@ietf.org; Mon, 26 Nov 2007 22:46:51 -0500
Received: from vapor.isi.edu ([128.9.64.64]) by chiedprmail1.ietf.org with esmtp (Exim 4.43) id 1IwrPP-0005zD-6c for tcpm@ietf.org; Mon, 26 Nov 2007 22:46:51 -0500
Received: from [70.211.147.178] (178.sub-70-211-147.myvzw.com [70.211.147.178]) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id lAR3kGlb022710; Mon, 26 Nov 2007 19:46:18 -0800 (PST)
Message-ID: <474B92FA.7020902@isi.edu>
Date: Mon, 26 Nov 2007 19:46:02 -0800
From: Joe Touch <touch@ISI.EDU>
User-Agent: Thunderbird 2.0.0.9 (Windows/20071031)
MIME-Version: 1.0
To: Lloyd Wood <L.Wood@surrey.ac.uk>
Subject: Re: Summary of responses so far and proposal moving forward[WasRe: [tcpm] Is this a problem?]
References: <20071126163305.326192FC402@lawyers.icir.org> <474AFB2A.9080504@isi.edu> <200711262103.VAA27187@cisco.com>
In-Reply-To: <200711262103.VAA27187@cisco.com>
X-Enigmail-Version: 0.95.5
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 4b800b1eab964a31702fa68f1ff0e955
Cc: tcpm@ietf.org, mallman@icir.org
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1204135438=="
Errors-To: tcpm-bounces@ietf.org


Lloyd Wood wrote:
> At Monday 26/11/2007 08:58 -0800, Joe Touch wrote:
> 
>> I see an OS that has to decide how to allocate resources:
>>
>>        a- leave them with existing apps and prohibit new ones
>>
>>        b- terminate existing apps to make room for new ones
>>
>> I expect that a reasonable, modern OS would do (a).
> 
> That presumes that all TCP connections are long-lived. It permits a
> few long-lived connections to tie up resources that could service
> short-lived connections.
> 
> (http, beep, xml-rpc and other short-lived transactions over TCP
> weren't invented when RFC1122 was written.) 

It presumes only that a connection shouldn't be terminated to make room
for new ones. It says nothing about the duration of the connection.

1122 says that connections that are active - i.e., actively exchanging
packets - MUST NOT be terminated. Connections are terminated only when
applications indicate, OR when the endpoints cannot communicate.

If you start "robbing Peter to pay Paul" - i.e., killing some
connections to make room for others - you end up with a very unreliable
kind of TCP. One where connections just disappear.

Modern OS's don't kill apps to make room for new ones (presuming they're
static in resource use). This is the connection equivalant.

I agree that having the OS - who is SOLELY in view of shared resources -
informing the application when resources are critical, and applications
being designed to decide which connections to keep and which to drop
based on *knowlege about the connections they alone possess*.

However, once a connection is opened, I don't agree that it's the OS's
perogative to kill it for any reason, any more than it would kill a
process that isn't running away. Holding resources already granted is
how current app/OS interfaces work; revocation isn't normal.

Yes, this means that *applications* can be DOS attacked, and they need
to be written to react accordingly.

Joe

_______________________________________________
tcpm mailing list
tcpm@ietf.org
https://www1.ietf.org/mailman/listinfo/tcpm