Re: [tcpm] [Tmrg] Increasing the Initial Window - Notes

Joe Touch <touch@isi.edu> Thu, 18 November 2010 21:21 UTC

Return-Path: <touch@isi.edu>
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 3451228C114 for <tcpm@core3.amsl.com>; Thu, 18 Nov 2010 13:21:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.568
X-Spam-Level:
X-Spam-Status: No, score=-102.568 tagged_above=-999 required=5 tests=[AWL=0.031, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
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 2T5JlGexxVi3 for <tcpm@core3.amsl.com>; Thu, 18 Nov 2010 13:21:20 -0800 (PST)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) by core3.amsl.com (Postfix) with ESMTP id 00C523A68CF for <tcpm@ietf.org>; Thu, 18 Nov 2010 13:21:19 -0800 (PST)
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 oAILLOjm023909 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT); Thu, 18 Nov 2010 13:21:24 -0800 (PST)
Message-ID: <4CE598D4.50606@isi.edu>
Date: Thu, 18 Nov 2010 13:21:24 -0800
From: Joe Touch <touch@isi.edu>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.12) Gecko/20101027 Thunderbird/3.1.6
MIME-Version: 1.0
To: David Borman <david.borman@windriver.com>
References: <20101110152857.GA5094@hell> <804D02FE-39AF-4437-BB15-C2247842E120@mac.com> <20101110170017.GF5094@hell> <97C75EA8-6CC7-444C-A19D-370148B81918@mac.com> <20101110174056.GH5094@hell> <AANLkTim7g=XqfSMHpHVbw1qqPOL-oNApt2i_2RCt0SCi@mail.gmail.com> <AD2BFE84-CA5B-4CDC-8822-1FC2713E3AE0@cisco.com> <alpine.DEB.2.00.1011161345170.11898@wel-95.cs.helsinki.fi> <E798B9A8-29BB-425B-B0C2-2B2735C49948@cisco.com> <5FDC413D5FA246468C200652D63E627A0B7BD0DF@LDCMVEXC1-PRD.hq.netapp.com> <686EBD23-7B65-455F-9348-196BBFD88ECD@comsys.rwth-aachen.de> <931FAE2C-F66E-43B2-8EE1-CFEB17DABD5E@windriver.com> <7309FCBCAE981B43ABBE69B31C8D213909B72A7B1F@EUSAACMS0701.eamcs.ericsson.se> <36F89B79-EABA-4C38-A59E-023D9A630832@windriver.com> <4CE585E9.6060203@isi.edu> <6B25AF56-AFED-4085-AF42-F8AD47CB9F41@windriver.com> <4CE58FED.608@isi.edu> <752D4660-5063-4050-B7C5-A30164ADAB09@windriver.com>
In-Reply-To: <752D4660-5063-4050-B7C5-A30164ADAB09@windriver.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: tcpm <tcpm@ietf.org>
Subject: Re: [tcpm] [Tmrg] Increasing the Initial Window - Notes
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: <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: Thu, 18 Nov 2010 21:21:21 -0000

On 11/18/2010 1:10 PM, David Borman wrote:
...
>> To be more clear, here's the case:
>>
>> 	start 1000 connections in a row.
>>
>> 	during the first connection, lose some packets and do
>> 	normal TCP backoff
>>
>> 	so what do the other 999 connections start with?
>> 	ans: 10 packets
>>
>> The point is that subsequent connections don't do anything different. If you have 1000 connections, you're sending a certain amount of data into the network without reacting. We're tripling that.
>>
>> That can easily cause congestion. At which point the *existing* connections will backoff, but new connections keep making problems.
>
> If you are doing the 1000 connections serially, then any connection
> that experiences packet loss will slow down that connection, and delay
> the creation of all the successive connections, and hence delay the next
> IW burst. Seems to me that that is reacting to congestion across
> connections.

That's true if the connections are serial, but I didn't say that. I said
try to start 1000 connections. They'll start in a sequence, but they 
don't get delayed based on what other connections are doing necessarily.

> If you are doing 1000 connections in parallel, well, you are now
> spitting out 3,000 packets with IW=3 and 10,000 packets with IW=10, both
> of which are probably going to cause congestion.

The 10,000 packets cause more congestion, or causes congestion more of 
the time - depending on the network parameters. I.e., it *increases* the 
congestion, regardless.

> Remember, from the end-point of a TCP connection, it is not aware of
> congestion unless there is packet loss or an ECN indication. There may
> be congestion on the path, but if the packets gets through, TCP is
> unaware of the congestion, other than the RTO going up due to delayed
> packets, and will continue to open up its idea of the congestion window.

Agreed.

> But here's a thought: Any TCP connection with a large IW that has to
> retransmit or gets an ECN notification during the initial 3-way
> handshake must clamp down its IW to a small value. That won't catch
> every case, but it'll catch some.

Sure - that's basically what I'm suggesting. We can refine the feedback 
mechanism (packet loss detected via SACK or ACK gaps vs. ECN 
notification vs retransmit). I'm also suggesting that the IW should 
increase over time, too - so that we don't need to revisit this issue 
explicitly.

Joe