Re: HTTP/2 and TCP CWND

Yuchung Cheng <ycheng@google.com> Wed, 17 April 2013 22:36 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 54DB121E80E4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 17 Apr 2013 15:36:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.978
X-Spam-Level:
X-Spam-Status: No, score=-5.978 tagged_above=-999 required=5 tests=[AWL=4.000, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id b1knCWinQa8Y for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 17 Apr 2013 15:36:35 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 3AB1021E80E1 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Wed, 17 Apr 2013 15:36:35 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1USawo-00078o-7Z for ietf-http-wg-dist@listhub.w3.org; Wed, 17 Apr 2013 22:35:26 +0000
Resent-Date: Wed, 17 Apr 2013 22:35:26 +0000
Resent-Message-Id: <E1USawo-00078o-7Z@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <ycheng@google.com>) id 1USawk-000784-1W for ietf-http-wg@listhub.w3.org; Wed, 17 Apr 2013 22:35:22 +0000
Received: from mail-la0-f54.google.com ([209.85.215.54]) by maggie.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <ycheng@google.com>) id 1USawi-0003do-UR for ietf-http-wg@w3.org; Wed, 17 Apr 2013 22:35:21 +0000
Received: by mail-la0-f54.google.com with SMTP id ec20so1989169lab.27 for <ietf-http-wg@w3.org>; Wed, 17 Apr 2013 15:34:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=9EcdD6Hk9woR67aT5FuGeqUolZaIdTblbC4oh10N3Sw=; b=AFmgFmJtQPxr0WyOw+gcMv7XIU7ALqorKNp4uoeXsG0tYBzZqxyMEv+DvCaLNAS23Y JkQdqZd+2CX5fv/961K0kI3tXCjkeDgs3UWIChDEYL6TqdfA0U2eGZnP7ZYPcofa6bEM S85j+oy4xbKGJhZ2e2SONwc+phPltZTbdin0AuSHNL1PY4Z5pUMUc4mKx/uPXC53WkIJ KcSfY7VhXNLeAl4dX3g1XNVbd7SN4htX+xpfsz56VA1rltjEXxYHPDb75FHpJPO6vFVP JDTDRCUs0p/QVfRWygV4mo1pHGKgD/bCq/gXy0RtNIhsROBp5MhXF+y3vx/UUumzvpA0 BGYw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type:x-gm-message-state; bh=9EcdD6Hk9woR67aT5FuGeqUolZaIdTblbC4oh10N3Sw=; b=n2dAQKtiTwa38dzpDa0xKprPy+7enIJBHwJ6nfPBhbBE+GBxo0jVdq9Ee6h6wp4PWo KHGyYvlSoOBI+aP12VjSS8OnA/jH4B6Hk1iCi9BLa1xIfz2kZe4C78NP9JL8aLZR6ZTf 0uHqjE9IvLvb8U6FEiMDy9uaSstWI0YwRkibhtI5lY89EwM8IulMKzzJ7cx9oyqlFBun 8oeP2clM2sIXQfFQMcVoBps8E4R1P1k769PmFs4m6+tUUhe9p9Hd92HXGUiWftUN1VB3 H7a15AtH85GJ0iFt2C+Kv8FvRLN2AZj6o91frWjE1VL8gFqsrFp1QfZYURx1QZRmop4p zYIQ==
X-Received: by 10.152.3.105 with SMTP id b9mr4432857lab.25.1366238093314; Wed, 17 Apr 2013 15:34:53 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.112.148.34 with HTTP; Wed, 17 Apr 2013 15:34:33 -0700 (PDT)
In-Reply-To: <CAOdDvNqS=hEt1exOzCvu7VEw1K=V-SvSss4wNdy9+cV=653Wqw@mail.gmail.com>
References: <516B8824.8040904@cisco.com> <DF8F6DB7E5D58B408041AE4D927B2F48CBB88103@CINURCNA14.e2k.ad.ge.com> <CAP+FsNfeUtKfOMPKriYP7Ak_YzsjEFKvprJOAQaxYP7_BxTBsw@mail.gmail.com> <cf53405c48dc431693573a9148776c8a@BN1PR03MB072.namprd03.prod.outlook.com> <CAOdDvNpidZwfMS_y_Hy56UjOaD9uNi-s=B9MErQSq4Msd3oBKw@mail.gmail.com> <516D51BE.1080402@cisco.com> <516ED26E.5010608@mti-systems.com> <CAOdDvNqS=hEt1exOzCvu7VEw1K=V-SvSss4wNdy9+cV=653Wqw@mail.gmail.com>
From: Yuchung Cheng <ycheng@google.com>
Date: Wed, 17 Apr 2013 15:34:33 -0700
Message-ID: <CAK6E8=dvtH=Le-wBxtjDoYFqLgvs3euS6w3vxQRVSOQAOMfCbg@mail.gmail.com>
To: Patrick McManus <mcmanus@ducksong.com>
Cc: Wesley Eddy <wes@mti-systems.com>, Eliot Lear <lear@cisco.com>, Gabriel Montenegro <Gabriel.Montenegro@microsoft.com>, Roberto Peon <grmocg@gmail.com>, "Simpson, Robby (GE Energy Management)" <robby.simpson@ge.com>, Robert Collins <robertc@squid-cache.org>, Jitu Padhye <padhye@microsoft.com>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>, "Brian Raymor (MS OPEN TECH)" <Brian.Raymor@microsoft.com>, Rob Trace <Rob.Trace@microsoft.com>, Dave Thaler <dthaler@microsoft.com>, Martin Thomson <martin.thomson@skype.net>, "Eggert, Lars" <lars@netapp.com>, Martin Stiemerling <martin.stiemerling@neclab.eu>
Content-Type: text/plain; charset="ISO-8859-1"
X-Gm-Message-State: ALoCoQnAoN9xYAic7+MkiQMLE3W4NqIVZQvkTlqpF1lx15wfucWsOCwGuqHJAQmI08R9AXRqD80XPa0GjzUgfTFPatKg8GJ+RUYcpC7OIek2sO/gZSVAhqFQ4XDUoZ4ciyQUtffZwfbm9PqeQw6ro0tHIN1oKwiGpk0GX9x8PMeZUzxluT10CsBCC+/YI7nr6muO6NxhsmYD
Received-SPF: pass client-ip=209.85.215.54; envelope-from=ycheng@google.com; helo=mail-la0-f54.google.com
X-W3C-Hub-Spam-Status: No, score=-1.4
X-W3C-Hub-Spam-Report: DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.556, SPF_PASS=-0.001
X-W3C-Scan-Sig: maggie.w3.org 1USawi-0003do-UR ada48d75eeeeec03bc4bc0e0b623ec00
X-Original-To: ietf-http-wg@w3.org
Subject: Re: HTTP/2 and TCP CWND
Archived-At: <http://www.w3.org/mid/CAK6E8=dvtH=Le-wBxtjDoYFqLgvs3euS6w3vxQRVSOQAOMfCbg@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/17311
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On Wed, Apr 17, 2013 at 11:12 AM, Patrick McManus <mcmanus@ducksong.com> wrote:
> Hi Wes,
>
> On Wed, Apr 17, 2013 at 12:48 PM, Wesley Eddy <wes@mti-systems.com> wrote:
>>
>>
>> It's definitely misinformation given the dynamic nature of the
>> CWND variable in TCP.  This is not a path property like MTU that
>> can be thought of as relatively static, and it can change on short
>> timescales with high granularity.
>
>
> Granted, an old CWND measurement can be inaccurate. It's an informed guess
> based on path performance. I'm sure we agree the path plays a
> (non-definitive) role in this.
>
> The alternative, IW, is an inaccurate guess too. Its an uninformed guess and
> I don't see why we should assume it would be more accurate.
>
> We can't argue that IW10 is strictly more conservative because my data says
> it typically isn't.  (median SPDY CWND SETTING in firefox data is 30 x 1
> session.. apples to apples that compares to at least 6 parallel HTTP/1
> sessions of IW 10 each). Roberto suggested he's seen something similar. I'm
> not sure that more conservative is a better thing anyhow but I don't see how
> it applies in this case in any event.
I'd like to give some historical perspective of IW10 and CWND-SETTING,
as I proposed both to tcpm and the SPDY team. Three years when we
started looking at the TCP startup latency problems, we wanted to
experiment both simple fixed size  solution and a dynamic
history-based one. We were aware of the pros and cons of both
approaches. But I emphasize cwnd-setting was meant to experiment the
cwnd-caching idea that's been floating around for 20? years. It was OK
to violate the layers for experimental purposes. I agree with the
consensus on the list to delegate this type of job to the network
transport.

I am happy about the discussion of this thread because it points out a
bigger issue: we need a better network transport that understands the
applications.

The situation is terrible as how much browsers need to work-around or
manage to reduce network latency: number of connections, per-opening
connections, prefer connections that have sent more data, disable
slow-start-after-idle, open two connections at the same time and use
the one that comes back first, blah blah blah. each has its merit but
together sometimes they do very bad/stupid things (e.g., opening too
many connections and hoses itself on slow networks).

I feel httpbis and tsvarea should start looking into this problem
together. The browser has good knowledge about the priorities of the
resources, HTTP/2 helps speeding up things talking to the same
host/domain, and the network/transport knows the packet delays and
bandwidth well. Together there should be a better solution. It can not
be done by any single layer/protocol.

>
> -Patrick
>