Re: [Masque] Prioritizing QUIC DATAGRAMs (was: Re: Prioritizing HTTP DATAGRAMs)

Lucas Pardue <lucaspardue.24.7@gmail.com> Wed, 23 June 2021 20:25 UTC

Return-Path: <lucaspardue.24.7@gmail.com>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 168383A3F4F; Wed, 23 Jun 2021 13:25:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.847
X-Spam-Level:
X-Spam-Status: No, score=-1.847 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 sFCC7MTIvLnt; Wed, 23 Jun 2021 13:25:22 -0700 (PDT)
Received: from mail-qk1-x732.google.com (mail-qk1-x732.google.com [IPv6:2607:f8b0:4864:20::732]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3ED733A3F4E; Wed, 23 Jun 2021 13:25:22 -0700 (PDT)
Received: by mail-qk1-x732.google.com with SMTP id x1so4640607qkp.7; Wed, 23 Jun 2021 13:25:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=zEjFqQB7MtBeYAHTQckR/dyh0C9Th2veP32qebev618=; b=Em0fFyeI8o5si8eoILPVAT9UA5MTmQBmFgqdGwImJTCd27WV0s09ITQVR+lLHTmoxv Cf5G1WnRFev+NicCNWAslYn36n8+eYoN7qGTGU6NjKhsBwhf8rHd7a/T5JBZ+HjTft0a 7tDEqs4jKh4FVbzKFj9sMWYdJNH/A0RTA7JCoLJjobFGNZMPNE1hOoZbNSeO4jsuKRj+ CMR0S4y014ingJECTpheWUsVbMOiyIUYN66UBzwWye5vW3oD1yDrozAAxRF44EZ3xWAc SqDmBnUtR0QPb6fEjnt4uykdiaAkgejlagcInZBZf9vFkTdMQaOQyRVfrj0Xl/LejbYL EDBA==
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=zEjFqQB7MtBeYAHTQckR/dyh0C9Th2veP32qebev618=; b=M36cYMIhHJRMwBWXb3hb4zhlridOoqWZ2nLfwMNbE0ufhB3HKbWsiokl9glQEDLTdn 0IVtCtuRvLakvCZlaOcE1PrAFFPSxqi/krlX3+qaQ0eZpIHcCRA6zGe+uENeLPcfX6M/ zmi611/wjHkK4GU28sbwOGV/ldVGEdR9qAaq8s/Ry1gZK7GJrH2Zgtn7jgNkN4zsJee9 E9E40NzzQIUAFuvflg4gCNPLMjUTddImLnoYdNbca5Sqn9CFBnbE55OmWTs1cmr4Xxsk YTvPH4iN+rzSno47QNCE53YhduznYprASfKykQnFfvFs+0iysqIpS/rOvbmPMBoA9UoC pEgw==
X-Gm-Message-State: AOAM531TL0fFqoesHl40NHCZw7PuEhZuj486Qdsro/z8kh7NzoD+1lm5 rnTALw+vKXS88lch3i+e7nnXSV0FBj8wHZjy8To=
X-Google-Smtp-Source: ABdhPJw40+QIJYYptd7iwaeSAcqolqkuXdYpB/nbVe/CEPPl4XDiUPxa25e3IvU3/NHJ0IpLa4zjYFnU06UUDaaf59s=
X-Received: by 2002:a5b:b44:: with SMTP id b4mr1725574ybr.440.1624479920381; Wed, 23 Jun 2021 13:25:20 -0700 (PDT)
MIME-Version: 1.0
References: <CALGR9ob=3CywgYvLJpSba6xCGwDEBzdJbuco28BMk9ayMcFe6Q@mail.gmail.com> <CAKKJt-d0srxhm==cxyXuJuDiqUk0sEgOAJRY+6ejq21LQVPsgQ@mail.gmail.com> <CALGR9oZOp5YWMWx61Etq42McOi02LOjxtRLL+xHhDpHKS94ukA@mail.gmail.com> <b9d7e589-df4a-0440-b5d4-847cca5a6908@rd.bbc.co.uk> <CALGR9oYRE0hBap+=VEr-KPD7Qp6gZZ_gg_0bcaDoquthKikMJg@mail.gmail.com> <CAJV+MGz=sszxnUn-oSrGbd_az7QPATLB_3VeaHmC4R1Gj0ua8g@mail.gmail.com> <53BD22F8-2BAA-4F9A-9673-77AD781C2EDD@gmail.com> <CAM4esxQTkMEi7y_QSVmYvEgN4U98-BHeTYwpFDRmTOdxjPkHqg@mail.gmail.com> <CALGR9oacZNVAKUD2qAv-ZB8VXs-XZEW+GE9GL_25gHNH13YiOg@mail.gmail.com> <CAM4esxQ=Z=_pn65pF=yMe3OcgLN3jfXkYpSs+d6FqgC7r18_qQ@mail.gmail.com>
In-Reply-To: <CAM4esxQ=Z=_pn65pF=yMe3OcgLN3jfXkYpSs+d6FqgC7r18_qQ@mail.gmail.com>
From: Lucas Pardue <lucaspardue.24.7@gmail.com>
Date: Wed, 23 Jun 2021 21:24:46 +0100
Message-ID: <CALGR9oZPRU-6kODqSBwW5xeEhVcyZb7vHx65H-AajhcmiKUfFw@mail.gmail.com>
Subject: Re: [Masque] Prioritizing QUIC DATAGRAMs (was: Re: Prioritizing HTTP DATAGRAMs)
To: Martin Duke <martin.h.duke@gmail.com>
Cc: Mikkel Fahnøe Jørgensen <mikkelfj@gmail.com>, Patrick Meenan <patmeenan@gmail.com>, MASQUE <masque@ietf.org>, Samuel Hurst <samuelh@rd.bbc.co.uk>, Spencer Dawkins at IETF <spencerdawkins.ietf@gmail.com>, HTTP Working Group <ietf-http-wg@w3.org>, David Schinazi <dschinazi.ietf@gmail.com>, QUIC WG <quic@ietf.org>, Kazuho Oku <kazuhooku@gmail.com>
Content-Type: multipart/alternative; boundary="00000000000099624705c574b474"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/eS0MovQ49SbnsKd_fLInkHWI3lM>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Jun 2021 20:25:25 -0000

Hey Martin,

On Wed, Jun 23, 2021 at 9:13 PM Martin Duke <martin.h.duke@gmail.com> wrote:

> Lucas,
>
> Assuming that we have the necessary language about QUIC APIs, as I've just
> proposed, to enable something in future, then I personally have no use
> cases or strong objection to punting. It is somewhat annoying to have a
> draft for priorities, datagrams, and then priorities-with-datagrams, but if
> writing the last bit will be a struggle (which I have no informed opinion
> on) deferring it is probably the right decision.
>
> Now descending into the weeds:
>
> > It's easy to say this. The difficulty comes, as an implementer, with
> knowing what to actually do with the information. Concrete example, if a
> client signals "incremental false" does a server send all streams as FIFO
> and then all DATAGRAMS as FIFO, or does it look at DATAGRAM flow creation
> order
>
> No, I think the DATAGRAMs correspond to a stream and they go with the
> STREAM frames in with priority. Whether one delivers STREAM or DATAGRAM
> first within a particular stream maybe doesn't need tight specification; if
> we do, I'd say STREAM (if for no other reason than to deliver the headers)
> and then DATAGRAM, unless STREAM is being flow-controlled. As datagram
> flows don't have a 1-to-1 mapping with requests and responses, I think
> streams are the correct abstraction for datagram priority, not flows. If
> there are multiple Flow-IDs associated with the same stream, they all get
> grouped together for priority purposes.
>

I think this model breaks down entirely for something like WebTransport
where the session is created with a single stream and then there'll
potentially be multiple datagram flows in either direction all vying for a
slice of the pie.

Cheers,
Lucas