Re: [Webtransport] Summary of today's interim and consensus call

Martin Thomson <mt@lowentropy.net> Tue, 05 March 2024 22:31 UTC

Return-Path: <mt@lowentropy.net>
X-Original-To: webtransport@ietfa.amsl.com
Delivered-To: webtransport@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E8A1AC14F61F for <webtransport@ietfa.amsl.com>; Tue, 5 Mar 2024 14:31:26 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 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, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=lowentropy.net header.b="UWXovoSf"; dkim=pass (2048-bit key) header.d=messagingengine.com header.b="QAZ+xZgD"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wy0F9mGFQUuK for <webtransport@ietfa.amsl.com>; Tue, 5 Mar 2024 14:31:22 -0800 (PST)
Received: from wfout7-smtp.messagingengine.com (wfout7-smtp.messagingengine.com [64.147.123.150]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 92C64C14F618 for <webtransport@ietf.org>; Tue, 5 Mar 2024 14:31:22 -0800 (PST)
Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfout.west.internal (Postfix) with ESMTP id 5E08A1C000D5; Tue, 5 Mar 2024 17:31:14 -0500 (EST)
Received: from imap41 ([10.202.2.91]) by compute6.internal (MEProxy); Tue, 05 Mar 2024 17:31:14 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lowentropy.net; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:subject:subject:to:to; s=fm2; t=1709677873; x=1709764273; bh=wyJ4SiHQspqU+ppmKE471/YV6rhhchvK PJyyHVsml4Q=; b=UWXovoSfklWL6MiXPwctf+ZoKZAY6e/s96XCxLHeySN3mtkq GILFe845ZnagPGG0SorzF69IDzGtg3YQsWpbhJYfS6D4apHxyiYwenW+P+4ZDeDu KccJpQ8KMDsaeiQNeg8Y+udUhazC08gdbbxrOI+LGfK/1e8YP9sj0fOTB+OxKUAD vMPwvjsopJvyK+QbyrmCI+xoVUuw8+g9fr4yoU2F0BWIsL3yDIh8QR9w4WecYuMS n+5grOLPDI9Hc5wpziAU+hLuLb/230DrwaiAd9/WQ5pVX0ekRHGuilmwOrTcCJbu ZTjZdXzpnHPzKmsCP6OHlkYNpG/CgH7SnOLgLw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1709677873; x= 1709764273; bh=wyJ4SiHQspqU+ppmKE471/YV6rhhchvKPJyyHVsml4Q=; b=Q AZ+xZgD99qcM2s+dLd1lvbmMiYEw73ttwsMW4lsZFN1iQGxorQTnQ368V73401s0 yAgBuwG3A5odKON5VxE2JWqsXMfjd2/hsdF6l7Bj+VnSRE6i0mG4uB3Feh2lxuzs HM6jSFfQj5sK3E/NwrPfLVIzPVo/HJs1R6YKoHq2jPyeHFqN0nPdOSSon7haFdsg v0GPAF57joizTdItinkcypqjkyPZzHqEp2n5BRxh2HeB74SkiStNhYw7BsE5H0rS NXk1jLUTLepLupDuwbCI/bj+oi8fiKCqbkmSxz92oPJAt4kDAoZkBc63W9wOJoNn ZoU7f0Z55sAkomLSUaiTg==
X-ME-Sender: <xms:MZ3nZZaWVkNHFqoNJsyeuY5dRNMh1gXsnKf4Kk__9PzJc_jTAPCkGw> <xme:MZ3nZQb-ZqX322rG3jvBtu98WGwGSaNuNWthabLL0babEqVVRRkMZqsGnIuM9TVwk wH86BvYVPuR8vknTY4>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrheelgdduheekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepofgfggfkjghffffhvfevufgtgfesthhqredtreerjeenucfhrhhomhepfdfo rghrthhinhcuvfhhohhmshhonhdfuceomhhtsehlohifvghnthhrohhphidrnhgvtheqne cuggftrfgrthhtvghrnhepkeeugfdvgedtueffveejleettdehheejheevfeeiieetgfdu geelleffiefhvdetnecuffhomhgrihhnpehgihhthhhusgdrtghomhdpihgvthhfrdhorh hgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhht sehlohifvghnthhrohhphidrnhgvth
X-ME-Proxy: <xmx:MZ3nZb_k-00tAyWCqabCLhta-BSR9zZzUzUpSvLLxJtUaW5nvoFDcg> <xmx:MZ3nZXpru0rG5_uOzq6zr5AKeFeILCD4tA1gWbQecfxnJTWbZO6bBg> <xmx:MZ3nZUojGFExg3RQtxBXTRCPmx9wZQLN-F1HdZLwekTGel79CmhNPA> <xmx:MZ3nZb2PhD5y8o4hXihcRctsPvtfSb1NbXxpsOpQrefq-bRROX3gAxNLxH4>
Feedback-ID: ic129442d:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 86F252340080; Tue, 5 Mar 2024 17:31:13 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.11.0-alpha0-208-g3f1d79aedb-fm-20240301.002-g3f1d79ae
MIME-Version: 1.0
Message-Id: <a827af15-d399-410f-9f08-ecf026920d47@betaapp.fastmail.com>
In-Reply-To: <CAOYVs2rL76Qa+BQbvAbu==0N6m2s1HQKRFq2kX0y_Cgf3OX88g@mail.gmail.com>
References: <CAPDSy+4W3SS18uWSkaa-ZwefGOJ-swLeM4ZHj3wTJ6TBXeVQ_Q@mail.gmail.com> <CAOYVs2pMghx5Ud5Fuja_0HXtCuqOUtB+tugjjSP6PV_Z-8G_yQ@mail.gmail.com> <CAPDSy+4RQm7j2QUqo6MuFL8Hktc+CL03+T-EEmGwBtuqpunUPg@mail.gmail.com> <CAPDSy+7B+zRaM6L7YqU+rhc27+hp2oaQm-7h4Zt9E9soXd5SwQ@mail.gmail.com> <CAOYVs2rL76Qa+BQbvAbu==0N6m2s1HQKRFq2kX0y_Cgf3OX88g@mail.gmail.com>
Date: Wed, 06 Mar 2024 09:30:53 +1100
From: Martin Thomson <mt@lowentropy.net>
To: Marten Seemann <martenseemann@gmail.com>, David Schinazi <dschinazi.ietf@gmail.com>
Cc: WebTransport <webtransport@ietf.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/webtransport/hs59QKhsbb6hyNPnUgvmsRxxmRk>
Subject: Re: [Webtransport] Summary of today's interim and consensus call
X-BeenThere: webtransport@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: WebTransport WG <webtransport.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/webtransport>, <mailto:webtransport-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/webtransport/>
List-Post: <mailto:webtransport@ietf.org>
List-Help: <mailto:webtransport-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/webtransport>, <mailto:webtransport-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2024 22:31:27 -0000

FWIW, I share Marten's concerns.

I know that some people won't care about added complexity in browsers, but I do.

On Tue, Mar 5, 2024, at 20:54, Marten Seemann wrote:
> Hi David,
>
> My concern that two variants of the protocol (and a way to negotiate 
> one of them) will end up complicating things more than necessary still 
> stands, but this depends on the exact protocol mechanism that we still 
> need to design.
>
> I don’t mean to block progress here, so I suggest we proceed with the 
> rough consensus in the room during the interim, and see how the 
> concrete solution turns out.
>
> Cheers,
> Marten 
>
> On Tue, Mar 5, 2024 at 12:23 David Schinazi <dschinazi.ietf@gmail.com> wrote:
>> Hi Marten, do you have any thoughts on my previous email?
>> Thanks,
>> David
>> 
>> On Mon, Feb 26, 2024 at 6:25 PM David Schinazi <dschinazi.ietf@gmail.com> wrote:
>>> Hi Marten,
>>> 
>>> In the room on Thursday, even though it seemed like the majority of folks prefered (2), there were some folks who preferred (1) over (2) but everyone could live with (2) whereas some folks said they couldn't live with (1) because they really didn't want to implement flow control and didn't want to use pooling. Additionally, the browser implementers in the room said they would be implementing flow control, and the chairs said we'd want to confirm that flow control works in the real world before publishing the documents. Given this information, can you also live with (2) ?
>>> 
>>> Your point about how to negotiate support for pooling is worth discussing though, I think we might need to build an explicit mechanism here. If this consensus call succeeds, we'll open a separate issue about how pooling is disabled, and we'll make sure it's discussed in Brisbane.
>>> 
>>> Thanks,
>>> David
>>> 
>>> On Fri, Feb 23, 2024 at 2:38 AM Marten Seemann <martenseemann@gmail.com> wrote:
>>>> I support the decision to add flow control to WebTransport, that is option (C) or (D), and I think (D) is a very reasonable way to achieve this goal.
>>>> 
>>>> I'm a bit skeptical regarding (1) vs. (2), mainly because I'm not sure I understand how client and server will negotiate support for pooling. This is because pooling in this context means something slightly different than SETTINGS_WEBTRANSPORT_MAX_SESSIONS > 1: Pooling here also means sending HTTP/3 requests on the same QUIC connection. Or is the proposal to redefine SETTINGS_WEBTRANSPORT_MAX_SESSIONS <= 1 to mean that the connection can't be used for HTTP requests as well? What happens to existing HTTP requests that might be in flight while the WebTransport session is established?
>>>> 
>>>> Maybe I'm too pessimistic, but I'm a bit worried that browsers wouldn't bother to support the flow control mechanism, and as a result it would be largely unused (and untested). From a protocol design perspective, it might be favorable to not split WebTransport into two distinct variants, one with and one without flow control. With that argument, (1) might be preferable.
>>>> 
>>>> On Fri, 23 Feb 2024 at 09:56, David Schinazi <dschinazi.ietf@gmail.com> wrote:
>>>>> Hi WebTransport enthusiasts,
>>>>> 
>>>>> Thanks to everyone who joined today's virtual interim meeting. Our main discussion point was flow control [1]. We discussed the following questions.
>>>>> 
>>>>> First, we discussed four options:
>>>>> A) Do nothing
>>>>> B) Add “hints” suggesting flow control breakdown
>>>>> C) Add flow control to groups of QUIC streams
>>>>> D) Add flow control to WebTransport over HTTP/3
>>>>> 
>>>>> Second, we discussed four potential approaches:
>>>>> 1) Adopt a flow control mechanism now; make it always mandatory.
>>>>> 2) Adopt a flow control mechanism now; make it mandatory for pooling (browsers won’t pool if the mechanism is not supported).
>>>>> 3) Defer flow control; ship the current version of the draft, ship an extension that would be prerequisite for pooling support in browsers later (gives us more time).
>>>>> 4) Do nothing (existing QUIC flow control is sufficient).
>>>>> 
>>>>> We managed to reach consensus in the room that everyone could live with (D) and (2). What this means in more detail:
>>>>> * pooling means any time a WebTransport session shares resources with anything else in the same HTTP connection (anything else could be a second WebTransport session, or a regular GET request)
>>>>> * pooling can only be used when flow control is supported by both endpoints
>>>>> * flow control in WebTransport will use [2]
>>>>> * clients can choose to not implement flow control, then they MUST NOT pool
>>>>> * servers can choose to not implement flow control, then they MUST send a WEBTRANSPORT_MAX_SESSIONS setting with value <= 1 to disable pooling
>>>>> 
>>>>> There is also more information available on the slides presented today [3] and in the minutes [4]. The recording of the session will also be posted on YouTube within a few days.
>>>>> 
>>>>> As chair, I'm formally starting a WG consensus call to confirm this decision. If anyone objects to this outcome, please say so in reply to this email. This consensus call will last for roughly two weeks and will end on Friday March 8th, 2024 at 23:59 UTC.
>>>>> 
>>>>> Thanks,
>>>>> David
>>>>> 
>>>>> [1] https://github.com/ietf-wg-webtrans/draft-ietf-webtrans-http3/issues/85
>>>>> [2] https://datatracker.ietf.org/doc/draft-thomson-webtrans-session-limit/
>>>>> [3] https://datatracker.ietf.org/meeting/interim-2024-webtrans-02/materials/slides-interim-2024-webtrans-02-sessa-webtrans-wg-virtual-interim-slides-04.pdf
>>>>> [4] https://datatracker.ietf.org/doc/minutes-interim-2024-webtrans-02-202402222100/
>>>>> -- 
>>>>> Webtransport mailing list
>>>>> Webtransport@ietf.org
>>>>> https://www.ietf.org/mailman/listinfo/webtransport
> -- 
> Webtransport mailing list
> Webtransport@ietf.org
> https://www.ietf.org/mailman/listinfo/webtransport