Re: HTTP/2 GREASE, Results, and Implications

Bence Béky <bnc@chromium.org> Wed, 06 November 2019 20:06 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 6F1F41200A4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 6 Nov 2019 12:06:19 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.751
X-Spam-Level:
X-Spam-Status: No, score=-2.751 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=chromium.org
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 456XTJ1bIEa7 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 6 Nov 2019 12:06:18 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [IPv6:2603:400a:ffff:804:801e:34:0:38]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E9B7D120072 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Wed, 6 Nov 2019 12:06:17 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.89) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1iSRWj-0002XD-Ap for ietf-http-wg-dist@listhub.w3.org; Wed, 06 Nov 2019 20:03:37 +0000
Resent-Date: Wed, 06 Nov 2019 20:03:37 +0000
Resent-Message-Id: <E1iSRWj-0002XD-Ap@frink.w3.org>
Received: from mimas.w3.org ([2603:400a:ffff:804:801e:34:0:4f]) by frink.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from <bnc@google.com>) id 1iSRWh-0002Wa-2g for ietf-http-wg@listhub.w3.org; Wed, 06 Nov 2019 20:03:35 +0000
Received: from mail-vs1-xe31.google.com ([2607:f8b0:4864:20::e31]) by mimas.w3.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from <bnc@google.com>) id 1iSRWd-0006hN-8G for ietf-http-wg@w3.org; Wed, 06 Nov 2019 20:03:34 +0000
Received: by mail-vs1-xe31.google.com with SMTP id y129so16854158vsc.6 for <ietf-http-wg@w3.org>; Wed, 06 Nov 2019 12:03:30 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=xuAFVncfrjVX1QX8wMDxUI62qhKMC3eLCBelNOumtMI=; b=SuF9hIC9pojT3aKyjy83L2lO0f0bDOjpEYofT2aGRSFk88ZEqQrTLdcm/nF893mRyy xN47ltTTYrnEFYU1tobSybcPRjRBWrJ8RoAFklLmKsaCr8GcND7R4OKTjnsfwr5UmKiE ScBrc4Gahu7ntHgDjpTMr5/oKd4FuZwwVxhac=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=xuAFVncfrjVX1QX8wMDxUI62qhKMC3eLCBelNOumtMI=; b=Y/633DHxeLfQdtEXUkM4QNJrZvqFoODmwROs7zCkOwRuo016Y7hAgZZnTo+/JDnWlY S4JJG7P74QsP2WwVZYp/Ia1wylO+B+g8xvQFuXPvQnuKxyT0gvL+FT3VQCTEETZMp3qB CgNx6SryCL5USa9a4Z0sWxB1tPoBuxBlounHTh5KdRnSxBIycIzjuF+6FOsLdrNpWvBa WHAxr26X6sKNobuKtdH20timfqgWzl6FBQTIWyyP1ywn83WK+K1NyCBzPjhZ4JswmMqD RkMeT11ESX2xu7T46LHwNi0rgoOufD9zXdlbjOBDeSLZtP8lw1PStHfofLj2gRk2u+9m XlGg==
X-Gm-Message-State: APjAAAUzb/Mp1iM7Ym9/g7W6EG8qlOVtJfdgeQamA/Lnp/DlSdbfxSXN 67t8OPQs1OrJuQrg41RXZkN6iLmawBsKmvc0ztOnNMCJ
X-Google-Smtp-Source: APXvYqwDasY+rCSOp2+ayeyhK0k8RtKlsJ3CI6roh0/O7PvSHclvFuWYKIBkUm+poZAEMbtAu4XGW3adugsDsK0yH0w=
X-Received: by 2002:a67:f744:: with SMTP id w4mr2508161vso.219.1573070609426; Wed, 06 Nov 2019 12:03:29 -0800 (PST)
MIME-Version: 1.0
References: <BN6PR2201MB1700D10A34C72213C78E09A6DA630@BN6PR2201MB1700.namprd22.prod.outlook.com> <20191031155259.GC30674@1wt.eu> <CACMu3trL5UMukoPd8Nr4W-bMsyH+WKUnwg16yxu3tN5D=uZt8w@mail.gmail.com> <20191031203458.GA31017@1wt.eu> <CACMu3toue60Y_6Qxpzsqw-fOByc3Qjv=AG8Ed_DGvkR1EYn+4w@mail.gmail.com> <20191101131903.GA1988@1wt.eu> <6F4160E3-D460-4DD9-9931-348479F6437F@greenbytes.de>
In-Reply-To: <6F4160E3-D460-4DD9-9931-348479F6437F@greenbytes.de>
From: =?UTF-8?Q?Bence_B=C3=A9ky?= <bnc@chromium.org>
Date: Wed, 6 Nov 2019 15:03:18 -0500
Message-ID: <CACMu3trFUKpywX1GoChNn59B1tOmOUuaPESVFPy2u7Ah3gy0Jw@mail.gmail.com>
To: Stefan Eissing <stefan.eissing@greenbytes.de>
Cc: Willy Tarreau <w@1wt.eu>, Mike Bishop <mbishop@evequefou.be>, HTTP Working Group <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="000000000000e21dd20596b30aec"
Received-SPF: pass client-ip=2607:f8b0:4864:20::e31; envelope-from=bnc@google.com; helo=mail-vs1-xe31.google.com
X-W3C-Hub-Spam-Status: No, score=-12.3
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, USER_IN_DEF_SPF_WL=-7.5, W3C_AA=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1iSRWd-0006hN-8G fdeaeab2b1e3e580713cfe7bf4d58897
X-Original-To: ietf-http-wg@w3.org
Subject: Re: HTTP/2 GREASE, Results, and Implications
Archived-At: <https://www.w3.org/mid/CACMu3trFUKpywX1GoChNn59B1tOmOUuaPESVFPy2u7Ah3gy0Jw@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/37129
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: <https://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Hi,

I added two simple command line flags to Chrome to trigger sending greased
HTTP/2 elements, and they are available since version 80.0.3960.0 (not on
Linux quite yet).

--http2-grease-settings adds one settings parameter with a reserved
identifier and random value to every SETTINGS frame sent (one per HTTP/2
connection).

--http2-grease-frame-type sends one frame of reserved type and random short
payload after every SETTINGS and HEADERS frame, including HEADERS frames
with END_STREAM flag set.  This is what caused problems apparently with
Cloudflare and Akamai.

Cheers,

Bence


On Mon, Nov 4, 2019 at 3:56 AM Stefan Eissing <stefan.eissing@greenbytes.de>;
wrote:

> Thanks for mitigating this.
>
> > Am 01.11.2019 um 14:19 schrieb Willy Tarreau <w@1wt.eu>;:
> >
> > On Fri, Nov 01, 2019 at 07:43:51AM -0400, Bence Béky wrote:
> >> Hi Willy,
> >>
> >> Yes, I agree with you.  My current plan is to make Chrome send a frame
> of
> >> reserved type
> >> * on stream 0, after the SETTINGS frame;
> >> * on non-zero streams, after each HEADERS and DATA frame that does not
> have
> >> the END_STREAM flag set;
> >> * or alternatively, after each HEADERS and DATA frame, and if the stream
> >> should be closed, then send an empty DATA frame with END_STREAM after
> the
> >> reserved frame.
> >>
> >> I think this conforms to the state transition requirements you
> summarized.
> >
> > Yes that sounds good.
> >
> >> Thank you for the guidance.  I'll keep the list posted.
> >
> > Thanks!
> > Willy
> >
>
>