Re: [ledbat] list of reasons for needing multiple TCP connections
Murari Sridharan <muraris@microsoft.com> Tue, 25 November 2008 21:04 UTC
Return-Path: <ledbat-bounces@ietf.org>
X-Original-To: tana-archive@ietf.org
Delivered-To: ietfarch-tana-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 333A63A6C64; Tue, 25 Nov 2008 13:04:24 -0800 (PST)
X-Original-To: ledbat@core3.amsl.com
Delivered-To: ledbat@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 905BD3A6C64 for <ledbat@core3.amsl.com>; Tue, 25 Nov 2008 13:04:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level:
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
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 agEEJN24v2Hr for <ledbat@core3.amsl.com>; Tue, 25 Nov 2008 13:04:21 -0800 (PST)
Received: from smtp.microsoft.com (mailc.microsoft.com [131.107.115.214]) by core3.amsl.com (Postfix) with ESMTP id 602493A6C62 for <ledbat@ietf.org>; Tue, 25 Nov 2008 13:04:21 -0800 (PST)
Received: from tk5-exmlt-c102.redmond.corp.microsoft.com (157.54.24.67) by TK5-EXGWY-E803.partners.extranet.microsoft.com (10.251.56.169) with Microsoft SMTP Server (TLS) id 8.1.291.1; Tue, 25 Nov 2008 13:04:18 -0800
Received: from NA-EXMSG-C110.redmond.corp.microsoft.com ([157.54.62.150]) by tk5-exmlt-c102.redmond.corp.microsoft.com ([157.54.24.67]) with mapi; Tue, 25 Nov 2008 13:04:18 -0800
From: Murari Sridharan <muraris@microsoft.com>
To: Reinaldo Penno <rpenno@juniper.net>, Stanislav Shalunov <shalunov@shlang.com>, "Andrew G. Malis" <agmalis@gmail.com>
Date: Tue, 25 Nov 2008 13:04:01 -0800
Thread-Topic: [ledbat] list of reasons for needing multiple TCP connections
Thread-Index: AclOkBmw5uhpWMyG5EqWK9p9i6ZyOAAsPNSQ
Message-ID: <FCA794787FDE0D4DBE9FFA11053ECEB61AFFFAE532@NA-EXMSG-C110.redmond.corp.microsoft.com>
References: <DC2CEB0C-4C70-42CD-8ADE-AFF4E45B1915@shlang.com> <C5507EE5.16A89%rpenno@juniper.net>
In-Reply-To: <C5507EE5.16A89%rpenno@juniper.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
MIME-Version: 1.0
Cc: "ledbat@ietf.org" <ledbat@ietf.org>
Subject: Re: [ledbat] list of reasons for needing multiple TCP connections
X-BeenThere: ledbat@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Mailing list of the LEDBAT WG <ledbat.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/ledbat>, <mailto:ledbat-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/pipermail/ledbat>
List-Post: <mailto:ledbat@ietf.org>
List-Help: <mailto:ledbat-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ledbat>, <mailto:ledbat-request@ietf.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: ledbat-bounces@ietf.org
Errors-To: ledbat-bounces@ietf.org
-----Original Message----- From: ledbat-bounces@ietf.org [mailto:ledbat-bounces@ietf.org] On Behalf Of Reinaldo Penno Sent: Monday, November 24, 2008 3:55 PM To: Stanislav Shalunov; Andrew G. Malis Cc: ledbat@ietf.org Subject: Re: [ledbat] list of reasons for needing multiple TCP connections Hello Stas, On 11/24/08 3:28 PM, "Stanislav Shalunov" <shalunov@shlang.com> wrote: > We do need to cover the impact on middleboxes in the document -- it's > in the charter. > > Popular applications are made to work with existing middleboxes. > Middleboxes are made to work with existing popular apps which do open > couple hundred of (mostly idle) TCP connections. Home NATs > ("routers") don't generally crash when you run BitTorrent. The > "mostly idle" part doesn't matter for state consumption, naturally. Why not? A middlebox that offers NAT/FW has to keep track of all connections irrespective if they are mostly idle. [MS] I think most NATs aggressively reuse stale mappings and if your protocol relies on this mapping for connectivity, it would fail, we routinely see this with Teredo where the address/ external port would change unless you keep a periodic bubble to keep the mapping up. > > Thousands and tens of thousands of connections (UDP state counts) is > another matter. Making one DNS request per every swarm member you > learn about will overwhelm a few common devices for large enough > swarms. (There are client behavior extensions that use DNS requests > to learn about locations of peers.) In general, scanning-type > behavior is problematic. Interesting, but usually middleboxes age UDP entries very quickly (specially quickly if they have ALGs). So, TCP and UDP have the dealt differently. > > -- Stas > > > On Nov 20, 2008, at 12:06 PM, Andrew G. Malis wrote: > >> As was mentioned in the IAB plenary yesterday, a reason to not use >> multiple TCP connections is the possible exhaustion of middlebox (read >> NAT) resources, such as state memory or port numbers. So if you are >> going to use multiple connections in parallel, you may wish to include >> a method for the user to control that behavior, and a way to detect >> that you're behind a NAT and adapt appropriately. >> >> Cheers, >> Andy >> >> On Thu, Nov 20, 2008 at 1:43 PM, Joe Touch <touch@isi.edu> wrote: >>> -----BEGIN PGP SIGNED MESSAGE----- >>> Hash: SHA1 >>> >>> Responding to the issue of reasons to need multiple connections, here >>> are a few of mine (extended from those listed at the mic). This is >>> not >>> intended to be a complete list, but a reasonable place to start. The >>> general point is that this is NOT always about hogging bandwidth, >>> either >>> intentionally or not. >>> >>> Joe >>> >>> - -------------------------------------- >>> Reasons to use multiple concurrent TCP connections: >>> >>> - - get around head-of-line blocking >>> this was an original reason for web browsers needing them >>> >>> - - demultiplexing >>> related to HOL blocking but not requiring it, >>> this uses TCP connections to demultiplex different >>> streams, because TCP doesn't provide that labeling itself >>> >>> this was a reason for using different connections for FTP >>> data and control, e.g. >>> >>> - - support different stream properties >>> i.e., a single app may want different streams with Nagle >>> enabled and disabled, or with different socket buffer >>> sizes (to limit delay) >>> >>> - - support "CLOSE means EOF" semantics >>> a reason for multiple connections in HTTP 1.0 >>> >>> - - support larger socket buffer sizes >>> esp. without autotuning, but even with, more connections >>> means more socket buffering is available >>> >>> - ------- >>> >>> One I forgot to note: >>> >>> - - different interaction with errors >>> a single connection would keep restarting; >>> multiple connections increases the possibility that >>> one connection doesn't get hit with a short error burst >>> >>> - ---------------------------------------------- >>> -----BEGIN PGP SIGNATURE----- >>> Version: GnuPG v1.4.9 (MingW32) >>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org >>> >>> iEYEARECAAYFAkklve4ACgkQE5f5cImnZru0gQCfaxwMKa8BPYliwCay9hFGLcD3 >>> HUQAn1zIlOBJRu1u0qbtpNX8ryuur8ZF >>> =YmcT >>> -----END PGP SIGNATURE----- >>> _______________________________________________ >>> ledbat mailing list >>> ledbat@ietf.org >>> https://www.ietf.org/mailman/listinfo/ledbat >>> >> _______________________________________________ >> ledbat mailing list >> ledbat@ietf.org >> https://www.ietf.org/mailman/listinfo/ledbat > > -- > Stanislav Shalunov > > > > _______________________________________________ > ledbat mailing list > ledbat@ietf.org > https://www.ietf.org/mailman/listinfo/ledbat _______________________________________________ ledbat mailing list ledbat@ietf.org https://www.ietf.org/mailman/listinfo/ledbat _______________________________________________ ledbat mailing list ledbat@ietf.org https://www.ietf.org/mailman/listinfo/ledbat
- [ledbat] list of reasons for needing multiple TCP… Joe Touch
- Re: [ledbat] list of reasons for needing multiple… Andrew G. Malis
- Re: [ledbat] list of reasons for needing multiple… Joe Touch
- Re: [ledbat] list of reasons for needing multiple… Kartik Chandrayana (karchand)
- Re: [ledbat] list of reasons for needing multiple… Joe Touch
- Re: [ledbat] list of reasons for needing multiple… Kartik Chandrayana (karchand)
- Re: [ledbat] list of reasons for needing multiple… Joe Touch
- Re: [ledbat] list of reasons for needing multiple… lars.eggert
- Re: [ledbat] list of reasons for needing multiple… Caitlin Bestler
- Re: [ledbat] list of reasons for needing multiple… Joe Touch
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski
- Re: [ledbat] list of reasons for needing multiple… Joe Touch
- Re: [ledbat] list of reasons for needing multiple… Caitlin Bestler
- Re: [ledbat] list of reasons for needing multiple… Reinaldo Penno
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski
- Re: [ledbat] list of reasons for needing multiple… Joe Touch
- Re: [ledbat] list of reasons for needing multiple… Bryan Ford
- Re: [ledbat] list of reasons for needing multiple… Michael Welzl
- Re: [ledbat] list of reasons for needing multiple… Stanislav Shalunov
- Re: [ledbat] list of reasons for needing multiple… Stanislav Shalunov
- Re: [ledbat] list of reasons for needing multiple… Stanislav Shalunov
- Re: [ledbat] list of reasons for needing multiple… Reinaldo Penno
- Re: [ledbat] list of reasons for needing multiple… Stanislav Shalunov
- Re: [ledbat] list of reasons for needing multiple… Murari Sridharan
- Re: [ledbat] list of reasons for needing multiple… Reinaldo Penno
- Re: [ledbat] list of reasons for needing multiple… Stanislav Shalunov
- Re: [ledbat] list of reasons for needing multiple… Murari Sridharan
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski
- Re: [ledbat] list of reasons for needing multiple… Lars Eggert
- Re: [ledbat] list of reasons for needing multiple… Richard Bennett
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski
- Re: [ledbat] list of reasons for needing multiple… Richard Bennett
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski
- Re: [ledbat] list of reasons for needing multiple… Richard Bennett
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski
- Re: [ledbat] list of reasons for needing multiple… Richard Bennett
- Re: [ledbat] list of reasons for needing multiple… Nicholas Weaver
- Re: [ledbat] list of reasons for needing multiple… Reinaldo Penno
- Re: [ledbat] list of reasons for needing multiple… Eric Spaeth
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski
- Re: [ledbat] list of reasons for needing multiple… Robb Topolski