Re: HTTP 2.0 and a Faster, more Mobile-friendly web

Jonathan Ballard <dzonatas@gmail.com> Mon, 30 July 2012 20:24 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 0AA8411E8133 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 30 Jul 2012 13:24:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.122
X-Spam-Level:
X-Spam-Status: No, score=-10.122 tagged_above=-999 required=5 tests=[AWL=0.476, BAYES_00=-2.599, HTML_MESSAGE=0.001, 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 6LFsnAAN8Khc for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 30 Jul 2012 13:24:54 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 4E86911E8126 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Mon, 30 Jul 2012 13:24:54 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1SvwUF-0004Cs-SB for ietf-http-wg-dist@listhub.w3.org; Mon, 30 Jul 2012 20:22:43 +0000
Resent-Date: Mon, 30 Jul 2012 20:22:43 +0000
Resent-Message-Id: <E1SvwUF-0004Cs-SB@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <dzonatas@gmail.com>) id 1SvwU1-0004Bk-Vh for ietf-http-wg@listhub.w3.org; Mon, 30 Jul 2012 20:22:30 +0000
Received: from mail-vc0-f171.google.com ([209.85.220.171]) by maggie.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <dzonatas@gmail.com>) id 1SvwU0-0007K7-6z for ietf-http-wg@w3.org; Mon, 30 Jul 2012 20:22:29 +0000
Received: by vcdd16 with SMTP id d16so5252047vcd.2 for <ietf-http-wg@w3.org>; Mon, 30 Jul 2012 13:22:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=Ak5MNUROgjPH3/BuVl0MkdBKVvXzkdQ2s6NmXQjwloM=; b=LyqtKf1gHEkpNtd1pq+IlJ31Vtj2tPrrwyUzFEEnS18YBzU6ZvZjf2W4uYysftGzdW 5UKJckA8wQK8dZi6ZdtkGotVTmYa9/c7ck3dXtNeEeNlDHVZelmIpgR+vtg8WEZrBYBZ 775K+DE6zra5rxZSOULFm0eATftdk/MVw8LES1P20xAC5v8hiIcJo6cq/gj6zos53PZm FUeqxNWa/ABQRkMMrDgCo2VW9qZlsf9MOSmQRITL+o3AjKOpIyxyA+T5w4O7uQQ+RaqK Gma9sNij487nDF5WwknhdMRW+ddIsXWNMOCjdL3IJsVySZBZR1oMXWv5fh0XRxD5D7Cy Vy7w==
MIME-Version: 1.0
Received: by 10.52.23.14 with SMTP id i14mr10774497vdf.47.1343679722332; Mon, 30 Jul 2012 13:22:02 -0700 (PDT)
Received: by 10.58.221.97 with HTTP; Mon, 30 Jul 2012 13:22:02 -0700 (PDT)
In-Reply-To: <4C032A8F343D304CBF7C6EE7AF002F44187F841B@BY2PRD0310MB354.namprd03.prod.outlook.com>
References: <723b83d47f93417290cca860e2925703@CH1PR03MB622.namprd03.prod.outlook.com> <CAP+FsNeyziP0odLMOTQ1h9Ucnw+R9Hga1tJ0Wbjz=YVbosjFCg@mail.gmail.com> <4C032A8F343D304CBF7C6EE7AF002F44187F841B@BY2PRD0310MB354.namprd03.prod.outlook.com>
Date: Mon, 30 Jul 2012 13:22:02 -0700
Message-ID: <CAAPAK-7GgquyQNYtsNJRrWO-jbq_dj6fJ-=A9kk=wz+gCJHTuA@mail.gmail.com>
From: Jonathan Ballard <dzonatas@gmail.com>
To: Jitu Padhye <padhye@microsoft.com>
Cc: Roberto Peon <grmocg@gmail.com>, Henrik Frystyk Nielsen <henrikn@microsoft.com>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>, Gabriel Montenegro <Gabriel.Montenegro@microsoft.com>, Rob Trace <Rob.Trace@microsoft.com>, "Adalberto Foresti (MS OPEN TECH)" <aforesti@microsoft.com>
Content-Type: multipart/alternative; boundary="20cf307c9e548aa23d04c611d08f"
Received-SPF: pass client-ip=209.85.220.171; envelope-from=dzonatas@gmail.com; helo=mail-vc0-f171.google.com
X-W3C-Hub-Spam-Status: No, score=-1.7
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001
X-W3C-Scan-Sig: maggie.w3.org 1SvwU0-0007K7-6z 2defa2dc2310da463686ec0910d5ae3f
X-Original-To: ietf-http-wg@w3.org
Subject: Re: HTTP 2.0 and a Faster, more Mobile-friendly web
Archived-At: <http://www.w3.org/mid/CAAPAK-7GgquyQNYtsNJRrWO-jbq_dj6fJ-=A9kk=wz+gCJHTuA@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/14836
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>

Where that is all cold there is the medium expiration in the mentioned
common suite: chrome://chrome/settings/content/expiration/medium?true.

SPDY+TLS offers no immediate exception except recompile resources to local
storage, and all of that is said off-topic at Vancouver on or about USB.

On Monday, July 30, 2012, Jitu Padhye wrote:

>  **Ø  **Was the client/server speaking SPDY/2 or SPDY/3?****
>
>       Spdy/2****
>
> ** **
>
> **Ø  **A percentage of the time, Chrome will not use SPDY (it decides
> this at startup). Did you verify that it was always speaking SPDY? (I'd
> guess yes!)****
>
> Yes. ****
>
> ** **
>
> **Ø  **Was the server using the CWND set sent in the SETTINGS frame, and
> was it sending it to the client?****
>
> I did not check this – I will go back and look. ** **
>
> ** **
>
> **Ø  **What was the server's initcwnd?****
>
> Whatever the default is. I think it was 2 or 4. I will take a look. ****
>
> ** **
>
> **Ø  **Was slow-start-after-idle turned off on the kernel?****
>
> No. Again, we only used default settings. ****
>
> ** **
>
> **Ø  **How long were the various connections in slow start, and did they
> ever exit slow-start?****
>
> I will have to take a look. ****
>
> ** **
>
> **Ø  **Was the SSL cert chain the same size and using the same algorithms?
> ****
>
> Yes. ****
>
> ** **
>
> **Ø  **Was the dummynet (or equivalent) configured to have appropriate
> buffer size (else it does packet drops silently)?****
>
> Yes, and I know this, because I had initially screwed this up J****
>
> ** **
>
> **Ø  **Were these all cold-connection, cold-cache first-page load
> timings? The use of keep-alive in figure 3 would seem to indicate
> otherwise, but I'm not sure which are which...****
>
> All cold cache. Keep alive is for only fetches while loading the first
> page. ****
>
> ** **
>
> **Ø  **Did you put Chromium into 'replay' mode (where date and random
> always return in the same manner, regardless of actual date)?****
>
> No, but I agree that this setting would have made more sense. ****
>
> ** **
>
> **Ø  **Any particular reason that you turned off entity-body compression
> in Apache? Were the resources saved verbatim from WinHTTrack (in which case
> it'd make sense)?****
>
> Not quite sure what you are asking here … can you please clarify?****
>
> ** **
>
> **Ø  **Was the server emulating the original server's think times? This
> can have a very, very large impact on pipelined HTTP performance. ****
>
>       Only “index.html” was loaded for each site. I should clarify that in
> text. So think times are not an issue. ****
>
> ** **
>
> **Ø  **We've found that the various automatic page-is-done signals are
> often less useful than something which measures the above-the-fold page
> load time. This generally involves cameras pointed at screens and a human
> looking at the video to determine at which frame the page is useful, and
> designating that frame as 'done-for-above-the-fold'****
>
> I agree that age load time, as we measured it, is not a foolproof metric.
> The problem is that all other alternatives are too cumbersome to measure
> (and worse) replicate correctly. ****
>
> ** **
>
> **Ø  **I'd love to see if we could get a common suite of test data over
> which we could all run experiments/benchmarks. Is anyone else interested in
> doing so?****
>
> This is definitely interesting. Something like RFC5033?****
>
> ** **
>
> ** **
>
> *From:* Roberto Peon [mailto:grmocg@gmail.com <javascript:_e({}, 'cvml',
> 'grmocg@gmail.com');>]
> *Sent:* Sunday, July 29, 2012 3:16 PM
> *To:* Henrik Frystyk Nielsen
> *Cc:* ietf-http-wg@w3.org <javascript:_e({}, 'cvml',
> 'ietf-http-wg@w3.org');>; Gabriel Montenegro; Rob Trace; Adalberto
> Foresti (MS OPEN TECH)
> *Subject:* Re: HTTP 2.0 and a Faster, more Mobile-friendly web****
>
> ** **
>
> ** **
>
> Interesting data! Questions about test methodology:****
>
> ** **
>
> Was the client/server speaking SPDY/2 or SPDY/3?****
>
> A percentage of the time, Chrome will not use SPDY (it decides this at
> startup). Did you verify that it was always speaking SPDY? (I'd guess yes!)
> ****
>
> Was the server using the CWND set sent in the SETTINGS frame, and was it
> sending it to the client?****
>
> What was the server's initcwnd?****
>
> Was slow-start-after-idle turned off on the kernel?****
>
> How long were the various connections in slow start, and did they ever
> exit slow-start?****
>
> Was the SSL cert chain the same size and using the same algorithms?****
>
> Was the dummynet (or equivalent) configured to have appropriate buffer
> size (else it does packet drops silently)?****
>
> Were these all cold-connection, cold-cache first-page load timings? The
> use of keep-alive in figure 3 would seem to indicate otherwise, but I'm not
> sure which are which...****
>
> Did you put Chromium into 'replay' mode (where date and random always
> return in the same manner, regardless of actual date)?****
>
> Any particular reason that you turned off entity-body compression in
> Apache? Were the resources saved verbatim from WinHTTrack (in which case
> it'd make sense)?****
>
> Was the server emulating the original server's think times? This can have
> a very, very large impact on pipelined HTTP performance. ****
>
> ** **
>
> We've found that the various automatic page-is-done signals are often less
> useful than something which measures the above-the-fold page load time.
> This generally involves cameras pointed at screens and a human looking at
> the video to determine at which frame the page is useful, and designating
> that frame as 'done-for-above-the-fold'****
>
> ** **
>
> I'd love to see if we could get a common suite of test data over which we
> could all run experiments/benchmarks.****
>
> Is anyone else interested in doing so?****
>
> ** **
>
> -=R****
>
> On Sun, Jul 29, 2012 at 1:14 PM, Henrik Frystyk Nielsen <
> henrikn@microsoft.com> wrote:****
>
> Dear All,****
>
>  ****
>
> We remain committed to the HTTP/2.0 standards process and look forward to
> seeing many of you this week at the IETF meeting in Vancouver to continue
> the discussion.  In the spirit of open discussion, we wanted to share some
> observations in advance of the meeting and share the latest progress from
> prototyping and testing. ****
>
>  ****
>
> There are currently three different proposals that the group is working
> through:****
>
>  ****
>
>    * SPDY (http://tools.ietf.org/html/draft-mbelshe-httpbis-spdy),****
>
>    * HTTP Speed+Mobility (
> http://tools.ietf.org/html/draft-montenegro-httpbis-speed-mobility),****
>
>    * Network-Friendly HTTP Upgrade (
> http://tools.ietf.org/html/draft-tarreau-httpbis-network-friendly). ****
>
>  ****
>
> The good news is that everyone involved wants to make the Web faster, more
> scalable, more secure, and more mobile-friendly, and each proposal has
> benefits in different areas that the discussion can choose from.****
>
>  ****
>
> --- A Genuinely Faster Web ---****
>
>  ****
>
> The SPDY proposal has been great for raising awareness of Web performance.
> It takes a “clean slate” approach to improving HTTP.****
>
>  ****
>
> To compare the performance of SPDY with HTTP/1.1 we have run tests
> comparing download times of several public web sites using a controlled
> tested study. The test uses publically available software run with mostly
> default configurations while applying all the currently available
> optimizations to HTTP/1.1. You can find a prelim
>