Re: Comments on Extensible Prioritization Scheme for HTTP

Willy Tarreau <w@1wt.eu> Thu, 31 March 2022 07:08 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 41F853A0CA4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 31 Mar 2022 00:08:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.659
X-Spam-Level:
X-Spam-Status: No, score=-2.659 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.248, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 JvDXfezoevBb for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 31 Mar 2022 00:08:01 -0700 (PDT)
Received: from lyra.w3.org (lyra.w3.org [128.30.52.18]) (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 2E7813A0CBC for <httpbisa-archive-bis2Juki@lists.ietf.org>; Thu, 31 Mar 2022 00:07:45 -0700 (PDT)
Received: from lists by lyra.w3.org with local (Exim 4.92) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1nZou5-0008Gq-AC for ietf-http-wg-dist@listhub.w3.org; Thu, 31 Mar 2022 07:07:33 +0000
Resent-Date: Thu, 31 Mar 2022 07:07:33 +0000
Resent-Message-Id: <E1nZou5-0008Gq-AC@lyra.w3.org>
Received: from mimas.w3.org ([128.30.52.79]) by lyra.w3.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <w@1wt.eu>) id 1nZou4-0008Fw-GF for ietf-http-wg@listhub.w3.org; Thu, 31 Mar 2022 07:07:32 +0000
Received: from wtarreau.pck.nerim.net ([62.212.114.60] helo=1wt.eu) by mimas.w3.org with esmtp (Exim 4.92) (envelope-from <w@1wt.eu>) id 1nZou3-0006Dc-0s for ietf-http-wg@w3.org; Thu, 31 Mar 2022 07:07:32 +0000
Received: (from willy@localhost) by pcw.home.local (8.15.2/8.15.2/Submit) id 22V779Tc023993; Thu, 31 Mar 2022 09:07:09 +0200
Date: Thu, 31 Mar 2022 09:07:09 +0200
From: Willy Tarreau <w@1wt.eu>
To: Glenn Strauss <gs-lists-ietf-http-wg@gluelogic.com>
Cc: HTTP Working Group <ietf-http-wg@w3.org>, kazuhooku@gmail.com, lucaspardue.24.7@gmail.com
Message-ID: <20220331070709.GE23808@1wt.eu>
References: <YkU6IoXeg470P45G@xps13>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <YkU6IoXeg470P45G@xps13>
User-Agent: Mutt/1.10.1 (2018-07-13)
Received-SPF: pass client-ip=62.212.114.60; envelope-from=w@1wt.eu; helo=1wt.eu
X-W3C-Hub-Spam-Status: No, score=-7.9
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, W3C_AA=-1, W3C_IRA=-1, W3C_IRR=-3, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1nZou3-0006Dc-0s 92ac50a3d64474998c6b60056dd2d04f
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Comments on Extensible Prioritization Scheme for HTTP
Archived-At: <https://www.w3.org/mid/20220331070709.GE23808@1wt.eu>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/39926
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>

Hello Glenn,

On Thu, Mar 31, 2022 at 01:21:42AM -0400, Glenn Strauss wrote:
> Comments on Extensible Prioritization Scheme for HTTP
> https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-priority-12
> 
> HTTP/2 SETTINGS frame in the original RFC7540 spec contains
>   SETTINGS_ENABLE_PUSH
> This is a logical, boolean flag to enable an optional-use feature.
> 
> draft-ietf-httpbis-priority-12 has had multiple revisions with name
> changes for a new setting, and the current proposed name is
>   SETTINGS_NO_RFC7540_PRIORITIES
> with an *inverted boolean value*, which if set to *true* results in
> indicating a desire to *disable* use of RFC7540 HTTP/2 PRIORITY frame.

It's not as much a desire to "disable" as it is an indication that
it will neither emit nor process them.

> I am a developer mocking up draft-ietf-httpbis-priority.
> From my perspective, in order to follow a logical opt-in to enable use
> of optional features, I prefer the following proposal: new SETTINGS
>   SETTINGS_ENABLE_PRIORITY
>   SETTINGS_ENABLE_PRIORITY_UPDATE
> each named after the respective HTTP/2 frame type PRIORITY
> and (proposed) PRIORITY_UPDATE.  These are named in similar pattern to
> SETTINGS_ENABLE_PUSH feature, associated with HTTP/2 frame PUSH_PROMISE.

But that wouldn't work with existing deployments! Right now support for
priorities is implied by H2. Both a client and a server willing to use
them have nothing to say, and any RFC7540-compliant implementation will
see it like this. Thus a client may expect that the server will deliver
important objects first and may possibly announce certain priorities
based on what it thinks it needs. In fact both sides may act in a way
that is supposed to help the other one based on the assumption that it
will use it and benefit from this.

Explicitly saying "no need to make efforts for me" and "I will not
bother you with this" can be a useful indication to the partner that
it ought to fall back to alternate mechanisms instead.

Hoping this helps,
Willy