Re: Submitted new I-D: Cache Digests for HTTP/2

Patrick McManus <mcmanus@ducksong.com> Mon, 11 April 2016 16:11 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@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 4AE7612E1F1 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 11 Apr 2016 09:11:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.916
X-Spam-Level:
X-Spam-Status: No, score=-7.916 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.996, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=sendgrid.me
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4S_hPf1n0qwc for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 11 Apr 2016 09:11:22 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A6D4A12ED54 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Mon, 11 Apr 2016 09:11:22 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1apeMC-0000QT-Go for ietf-http-wg-dist@listhub.w3.org; Mon, 11 Apr 2016 16:06:32 +0000
Resent-Date: Mon, 11 Apr 2016 16:06:32 +0000
Resent-Message-Id: <E1apeMC-0000QT-Go@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <bounces+1568871-208f-ietf-http-wg=w3.org@sendgrid.net>) id 1apeM6-0000Ok-6h for ietf-http-wg@listhub.w3.org; Mon, 11 Apr 2016 16:06:26 +0000
Received: from o1678924164.outbound-mail.sendgrid.net ([167.89.24.164]) by maggie.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA256:128) (Exim 4.80) (envelope-from <bounces+1568871-208f-ietf-http-wg=w3.org@sendgrid.net>) id 1apeM3-0002KA-EA for ietf-http-wg@w3.org; Mon, 11 Apr 2016 16:06:25 +0000
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sendgrid.me; h=mime-version:in-reply-to:references:subject:from:to:cc:content-type; s=smtpapi; bh=UQNItzBDdTgmiGYlguHEeBwLUSw=; b=xd95ARBa4rbYUjyi1E 7+OhC6Un65mIIz2xEsTkXMZ5eSibTINa+Y0tDHF4VLSvYkbiAMRpTqRWczLpVdP7 DjT4STm5rj8nl7yw5254rm5XqgPnqs7Ah8UgSlGHkoGpA8Xbbb/ANuTmKETpY4y1 MR+wObY8XLNQtFrEcvVJjqZoM=
Received: by filter0801p1mdw1.sendgrid.net with SMTP id filter0801p1mdw1.16711.570BCB38B 2016-04-11 16:05:12.124450521 +0000 UTC
Received: from mail-vk0-f45.google.com (mail-vk0-f45.google.com [209.85.213.45]) by ismtpd0002p1iad1.sendgrid.net (SG) with ESMTP id cZZkhv2TSteL8WxYSU8CiQ for <ietf-http-wg@w3.org>; Mon, 11 Apr 2016 16:05:12.090 +0000 (UTC)
Received: by mail-vk0-f45.google.com with SMTP id t129so133004398vkg.2 for <ietf-http-wg@w3.org>; Mon, 11 Apr 2016 09:05:12 -0700 (PDT)
X-Gm-Message-State: AD7BkJI9n3SmWQ9X7fhlvLVDHBN0hEVUVSkZ+O66hctpSTDN1JblGS5qgLBDkcw/9fwk8txI3v44/YwMSkOEsg==
MIME-Version: 1.0
X-Received: by 10.31.135.200 with SMTP id j191mr10771728vkd.91.1460390711159; Mon, 11 Apr 2016 09:05:11 -0700 (PDT)
Received: by 10.159.37.3 with HTTP; Mon, 11 Apr 2016 09:05:10 -0700 (PDT)
In-Reply-To: <CAAMqGzbxEz0wt8vZaNm1UV7L4=_-1Gw8FjrWX=+d1XLizrb33w@mail.gmail.com>
References: <CANatvzxcKS46iAqAdfBHuWPt5k3XkR79NDMPPtDakOb2jPAywA@mail.gmail.com> <56A26B1E.4050303@rd.bbc.co.uk> <CANatvzyHbyrK7cjh+JsRpTR42knc6LXX7GWzj8ZEYPgv8cs49g@mail.gmail.com> <56B0F0DC.3060807@rd.bbc.co.uk> <56B110EE.5050705@treenet.co.nz> <CABkgnnU=BEPC=2X1f+DKDd11CrEG1awDG=j+J-Ha3B-mTPxfvA@mail.gmail.com> <CY1PR03MB137425A025736905630C91BF87D00@CY1PR03MB1374.namprd03.prod.outlook.com> <CAAMqGzbuSNYC6ResLR=NT5bLoDFDBn+=jjk00jKTN2v5TFSZ5Q@mail.gmail.com> <CANatvzzUQ+TEFZ5kML+Eagsb_O2pdmWosjMx_xspzrsCTy2hkA@mail.gmail.com> <F6EC743C-187F-4189-B78B-51079FBB5F02@greenbytes.de> <CANatvzzYKy0L3h+_-cEZXR7W+NbGhMg7BchsaZd0uVuQSpig-g@mail.gmail.com> <CAAMqGzZZCrjLmZhR3XmsF+1C1NbwdgVQ8w-p1QBNejoFpOWDuA@mail.gmail.com> <CANatvzxTO3fRj_+4W+PEURfOt_h7ZPB2RDc0Kn7_tWUrepQfDg@mail.gmail.com> <CABkgnnW+XFYQ9wtXUgozLxUhoB4jdrPA2OgT_w5mTLJ-or+pgg@mail.gmail.com> <CAAMqGzbwYXznMPyG71KGNYTM-iUiCW63vzgyrSGGyJEA1+eqTg@mail.gmail.com> <CH1PR03MB19160147CECF7BE0C680516E87940@CH1PR03MB1916.namprd03.prod.outlook.com> <CAAMqGzbxEz0wt8vZaNm1UV7L4=_-1Gw8FjrWX=+d1XLizrb33w@mail.gmail.com>
Date: Mon, 11 Apr 2016 12:05:10 -0400
X-Gmail-Original-Message-ID: <CAOdDvNr-VwnmsnVAR0mma=1zAGftLHqAJ3_MommGW1ZiNdHj0Q@mail.gmail.com>
Message-ID: <CAOdDvNr-VwnmsnVAR0mma=1zAGftLHqAJ3_MommGW1ZiNdHj0Q@mail.gmail.com>
From: Patrick McManus <mcmanus@ducksong.com>
To: Alcides Viamontes E <alcidesv@zunzun.se>
Cc: Mike Bishop <Michael.Bishop@microsoft.com>, Martin Thomson <martin.thomson@gmail.com>, Kazuho Oku <kazuhooku@gmail.com>, HTTP Working Group <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="001a1145a1f29278c8053037b5c3"
X-SG-EID: YLWet4rakcOTMHWvPPwWbcsiUJbN1FCn0PHYd/Uujh6XjIPvQw21gJA7guk8CTlrG3dWEmWRs73sOj y6i6Bj6p08jBG2mJRrkgAbC4QZ2+h/mQdyECRt8mp1NmO/E2Mp6TMhadzoqQfKtQs1HfBSlLaf5lpA 6CnhgAArx9vD1AXnqAzIbSGULMwEgoH302pqX3KjRigq2jvlkPEIrZyv3SpGatilQ9KHew4bTouCcT g=
Received-SPF: pass client-ip=167.89.24.164; envelope-from=bounces+1568871-208f-ietf-http-wg=w3.org@sendgrid.net; helo=o1678924164.outbound-mail.sendgrid.net
X-W3C-Hub-Spam-Status: No, score=-5.9
X-W3C-Hub-Spam-Report: AWL=-0.419, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.996, SPF_PASS=-0.001, URIBL_GREY=0.424, W3C_AA=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: maggie.w3.org 1apeM3-0002KA-EA 68062baaf9093911e4ae076564253ca7
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Submitted new I-D: Cache Digests for HTTP/2
Archived-At: <http://www.w3.org/mid/CAOdDvNr-VwnmsnVAR0mma=1zAGftLHqAJ3_MommGW1ZiNdHj0Q@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/31421
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>

Sometimes you will get race conditions - especially when bootstrapping
whether things are h2 or not, that result in connections that don't carry
any (or perhaps 1) transaction.. and then coalescing moves everything to
one connection going forward.. typically most of that information is cached.

When I load your page in firefox I see 46 streams ( a mix of push and pull)
associated with one connection, 0 streams associated with another, and 1
stream associated with api1.shimmercat.com.. that last one is considered an
anonymous channel and won't be coalesced into your non-anonymous mix...
firefox would in general cache that coalescing information for the rest of
the session (subject to whatever memory cached eviction logic goes on).

if that's not what you're seeing - I'm happy to work with you directly.

(related to the on topic query of cache digests.. they are per origin and
coalescing is cross origin (and as we see often late bound), so I think
sending them as multiple blobs makes the most sense.)


On Mon, Apr 11, 2016 at 11:32 AM, Alcides Viamontes E <alcidesv@zunzun.se>
wrote:

> Thanks Mike,
>
> Can you point to any public-facing website  where connection coalescing
> is working?
>
> We haven't been lucky at configuring connection coalescing in our website
> and that have led me to believe (perhaps mistakenly) that browsers don't
> implement it yet. This page (
> https://www.shimmercat.com/en/blog/articles/data-density/ )  for example
> pulls resources from three subdomains on the same wildcard certificate,
> same web server. Chrome creates a separate connection* for each of them
> (seen by looking to chrome://net-internals, also confirmed by looking to
> the logs of ShimmerCat). As a side-note, we use SANs at development, and
> there there is no coalescing either. Same situation with Firefox.
>
> * Actually Chrome opens  an entire connection pool for
> media.shimmercat.com with six sockets, of which only one is used.
>
> On Mon, Apr 11, 2016 at 4:57 PM, Mike Bishop <Michael.Bishop@microsoft.com
> > wrote:
>
>> I believe that Chrome and Firefox coalesce when DNS/SANs permit.  Edge/IE
>> currently does not.
>>
>>
>>
>> *From:* Alcides Viamontes E [mailto:alcidesv@zunzun.se]
>> *Sent:* Sunday, April 10, 2016 1:16 AM
>> *To:* Martin Thomson <martin.thomson@gmail.com>
>> *Cc:* Kazuho Oku <kazuhooku@gmail.com>; HTTP Working Group <
>> ietf-http-wg@w3.org>
>> *Subject:* Re: Submitted new I-D: Cache Digests for HTTP/2
>>
>>
>>
>> Hello Martin,
>>
>>
>>
>> We will take a closer look at this. But what is the state of coalescing
>> regarding browser implementations?
>>
>>
>>
>> On Fri, Apr 8, 2016 at 3:53 PM, Martin Thomson <martin.thomson@gmail.com>
>> wrote:
>>
>> On 8 April 2016 at 10:44, Kazuho Oku <kazuhooku@gmail.com> wrote:
>> > So the question boils down to two.
>> >
>> > Q1. How many fresh resources exist per origin?
>>
>> > Q2. What is the appropriate value for P?
>>
>> I have some others:
>>
>> What is the effect of connection coalescing on this? When coalescing,
>> Is a client better off sending a separate digest for each origin, or
>> is a single large blob better?
>>
>>
>>
>
>