Re: [tcpm] TCP tuning

Jerry Chu <hkchu@google.com> Thu, 04 February 2010 15:59 UTC

Return-Path: <hkchu@google.com>
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 3295E28C1A8 for <tcpm@core3.amsl.com>; Thu, 4 Feb 2010 07:59:04 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -101.54
X-Spam-Level:
X-Spam-Status: No, score=-101.54 tagged_above=-999 required=5 tests=[AWL=-1.103, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, SARE_LWHUGE=1.54, 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 AvwKTJTtTlSH for <tcpm@core3.amsl.com>; Thu, 4 Feb 2010 07:59:03 -0800 (PST)
Received: from smtp-out.google.com (smtp-out.google.com [216.239.44.51]) by core3.amsl.com (Postfix) with ESMTP id 1EE983A676A for <tcpm@ietf.org>; Thu, 4 Feb 2010 07:59:03 -0800 (PST)
Received: from wpaz37.hot.corp.google.com (wpaz37.hot.corp.google.com [172.24.198.101]) by smtp-out.google.com with ESMTP id o14FxnfA023616 for <tcpm@ietf.org>; Thu, 4 Feb 2010 07:59:49 -0800
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1265299189; bh=VPJPenUxBdzulmhdSkIh25sl0e4=; h=MIME-Version:In-Reply-To:References:Date:Message-ID:Subject:From: To:Cc:Content-Type:Content-Transfer-Encoding; b=AA3N1AhMnI0OIB7cYKqAcuyfS46DUeXrJdKEU9GMjpjOsgf+78D4ZdZBmSkH8gdfA M/SzF70Ok0QubBA6Ekocg==
DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=mime-version:in-reply-to:references:date:message-id:subject:from:to: cc:content-type:content-transfer-encoding:x-system-of-record; b=FUNOccxFcwxzD7ibSb5OwvUdoDF2t8boN6IicdOV5xBrhq57ZDt82AzJlVaQKv/Yc LLMHlg9KWiA+V6nJjuTIg==
Received: from ywh35 (ywh35.prod.google.com [10.192.8.35]) by wpaz37.hot.corp.google.com with ESMTP id o14Fxluq013671 for <tcpm@ietf.org>; Thu, 4 Feb 2010 07:59:48 -0800
Received: by ywh35 with SMTP id 35so2311658ywh.21 for <tcpm@ietf.org>; Thu, 04 Feb 2010 07:59:47 -0800 (PST)
MIME-Version: 1.0
Received: by 10.150.175.2 with SMTP id x2mr2234861ybe.180.1265299187390; Thu, 04 Feb 2010 07:59:47 -0800 (PST)
In-Reply-To: <133D9897FB9C5E4E9DF2779DC91E947C025F18D6@SLFSNX.rcs.alcatel-research.de>
References: <7BE9742D-6EDC-43FE-84FC-D22C52D23152@nokia.com> <1e41a3231002031232r6ec9edd3p6367dd9c2581fa08@mail.gmail.com> <d1c2719f1002031244g3415c8e1r7d36e26058158d20@mail.gmail.com> <133D9897FB9C5E4E9DF2779DC91E947C025F18D6@SLFSNX.rcs.alcatel-research.de>
Date: Thu, 04 Feb 2010 07:59:47 -0800
Message-ID: <d1c2719f1002040759m3bfc888fka28cf780a0f87656@mail.gmail.com>
From: Jerry Chu <hkchu@google.com>
To: "SCHARF, Michael" <Michael.Scharf@alcatel-lucent.com>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
X-System-Of-Record: true
Cc: tcpm@ietf.org
Subject: Re: [tcpm] TCP tuning
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, 04 Feb 2010 15:59:04 -0000

Michael,

On Thu, Feb 4, 2010 at 5:35 AM, SCHARF, Michael
<Michael.Scharf@alcatel-lucent.com> wrote:
> Jerry,
>
>> > - A significant increase to the initial window might benefit from
>> > introduction of some form of pacing, since you won't have any ack
>> > clock yet.  This might help reduce losses and delay jitter.
>>
>> Agreed. The question is, what is that threshold of
>> window/burst size beyond which pacing is required. My current
>> guess is > 10.
>
> I have the same impression, at least from what I have seen in simulations.
>
> Yet, one could think of a very simple form of pacing with a single timer that changes the Slow-Start only when it "hurts" - I think that I have mentioned this possibility on this list before:
>
> In this approach, the initial window remains at the value given by RFC 3390. But the sender is allowed to further increase the window after a certain time (say, 100ms), but only
> if the RTT is known to be larger than 100ms (as measured e. g. during handshake), if no ACK has been received until then, and if recently there have been no signs of congestion to this destination.
>
> The advantage of this approach is that TCP uses the larger initial window only if the RTT is larger than 100ms (or whatever threshold is defined). On the one hand, this reduces the performance problems that can be observed for RTTs of the order of 200ms. But, on the other hand, flows with a smaller RTT would use the existing Slow-Start, i. e., the faster startup is only used by a small number of flows and thus be much less disruptive than a general revision of RFC 3390.
>
> A simpler variant of this idea is to allow an increased initial window beyond RFC 3390 if the measured RTT is larger than a certain threshold such as 100ms.

Thanks for all the interesting ideas. We may need them in the future.

We actually spent the first few months testing a more complex
algorithm, partly based on Joe Touch's caching
idea described in RFC2140. We abandoned that approach later due to a
number of problems, low cache hit
rate due to server side load balancing being one of them. We have
since adopted a two-phase approach. The first
phase follows the KISS principle to simply pick a fixed, larger number
for initial window that has minimal negative
impact for all connections (and I can't believe it can't be bumped up
by more than a couple of MSS safely, given
the huge growth of average bandwidth and the gradual disappearing of
dialup links < 56Kbps. Our test data has
confirmed this, detailed in the upcoming paper). This enables a more
timely deployment and a faster web
experience for most people sooner while we can embark on a second
phase to investigate a more elaborate
algorithm involving pacing and other non-trivial implementation tasks
but can unleash more performance for the
regular users with 1.7Mbps, the average b/w globally reported recently
by Aktimai.

I understand and appreciate the "err on the conservative side"
principle. The robustness and ubiquity of the Internet
largely came out of it. But at some point it needs to be balanced
against the need for improvement. My fear is that
IETF might risk becoming irrelevant if it's too conservative, much
like California's highway speed limit 20 years
ago. It was at 55MPH while hardly anyone drove below that speed. (Of
course what is considered "conservative",
"risky" can be very subjective. The trick to get to some consensus here...)

Jerry

>
> Michael
>
>
>