Re: [Webtransport] Choosing the Transport, pt. 2

Martin Thomson <mt@lowentropy.net> Tue, 10 November 2020 05:05 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 13C5A3A0CF4 for <webtransport@ietfa.amsl.com>; Mon, 9 Nov 2020 21:05:16 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.598
X-Spam-Level:
X-Spam-Status: No, score=-1.598 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, GB_ABOUTYOU=0.5, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=lowentropy.net header.b=UVpl08T0; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=bfUkqu/H
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 Aqezlxz7jK8A for <webtransport@ietfa.amsl.com>; Mon, 9 Nov 2020 21:05:14 -0800 (PST)
Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 791E03A0CFE for <webtransport@ietf.org>; Mon, 9 Nov 2020 21:05:14 -0800 (PST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 9D6C55C01D2 for <webtransport@ietf.org>; Tue, 10 Nov 2020 00:05:13 -0500 (EST)
Received: from imap10 ([10.202.2.60]) by compute1.internal (MEProxy); Tue, 10 Nov 2020 00:05:13 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lowentropy.net; h=mime-version:message-id:in-reply-to:references:date:from:to :subject:content-type:content-transfer-encoding; s=fm3; bh=7l8VF VYUaNn75za+Abp3z7AxmarOSc5bXm0vlcZKz+c=; b=UVpl08T0Buyi8gH+DsPhD sXIbIwzQXnLKkirbkBKzpvCOGPQG5z1OmEqEgbSpx8TA6bw51Cj/mHvPwLmps4hi 7Z1s011pLP/8CRkeO3w+7rbbJuye7xKAVJEaXcqsXiUqeC9hktqIcxsWHK82Bjbf BkK535iqLYewsKbuQKhGlEPxRyqCiCi4rKHfK6ZWiRHdTZiOCmaGiJJVnYq3qky5 l0TKBDD7i3XAKWXseLqy+LL+josK/ZF8bqCQXh4lKGlfkNL2N/PLAKcAoQHC5wOh FdOajHV9KFVcMaJWVf/0RV/VNl6KnbhpsIygnHfZnQxCPlCwHO0k5Pyv6YCsQvAx g==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; bh=7l8VFVYUaNn75za+Abp3z7AxmarOSc5bXm0vlcZKz +c=; b=bfUkqu/H84fFqCubxGL4e1sEpCl092SIQz0bSNr0/5xM3Yq1TI5c5chPh /HY9chW6AqSTcuTxpwuoGpSlZ8GsNOJCBS+PUJvOmjblHIgK0d0xS7ZH+L2EBJYm DGANqbbi1xsxrV53dRMp+L6VBIrFX/hqhX0t63vlid7tcVkcfm1epBgp5wKx4iGz MBocLQkURdChisNO+cNQzKscZjJENwJTGz4p9d5qeBLKgoGDAGIoTEf/8B/yGV89 crGXEtI272pozGQCrN/8afQ6M5JUNvombPcwaPgFsFpjDVtxe47Rstqa065tiTnz jzgUxJGVosjNZt7EOtIOlMzuJ83+A==
X-ME-Sender: <xms:iR-qX7ho2_lsUdioIOy5v8xYzxj3yQ7_ag9_L8RP5JYxDUCFW-oLUw> <xme:iR-qX4ACF-THXpupT10J9spD5MZgYYDWxTiDzauIQGPxrhbcZTBPU0g1sNwvPaqTP CUeMJCwTMAph0ZLKFw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedujedrudduiedgkedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefofgggkfgjfhffhffvufgtgfesth hqredtreerjeenucfhrhhomhepfdforghrthhinhcuvfhhohhmshhonhdfuceomhhtsehl ohifvghnthhrohhphidrnhgvtheqnecuggftrfgrthhtvghrnhepieehgffgvddtkeduie eufedtteetueehkeeihedtgfffudeggeeiuddtudfguedtnecuffhomhgrihhnpehivght fhdrohhrghdpghhithhhuhgsrdgtohhmnecuvehluhhsthgvrhfuihiivgeptdenucfrrg hrrghmpehmrghilhhfrhhomhepmhhtsehlohifvghnthhrohhphidrnhgvth
X-ME-Proxy: <xmx:iR-qX7Foaw8agb-GCMocMK8WZjatq7khT88SV9YxmJGGemfPC2FQKA> <xmx:iR-qX4QF2lZG74SOda3UtC8ies0Pxfy-j2tK3q9iM1AScniel0hhkw> <xmx:iR-qX4y1vKWbKqTr46Lj7i9MyGp-RoQTtSAQuQBeRddXamVxZ2N0fQ> <xmx:iR-qX38yO3IcvMXPQulkDAFvZIxifw0H4HoORtCajkOtHltianzdLA>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 33D8320373; Tue, 10 Nov 2020 00:05:13 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.3.0-570-gba0a262-fm-20201106.001-gba0a2623
Mime-Version: 1.0
Message-Id: <98dfa9e0-6a37-4b79-9eb5-b4bbf8b6850d@www.fastmail.com>
In-Reply-To: <CAAZdMafdbwusA3Ks_k=RW9FXCh+OMj90Y_7A7Pj5cBHTXgyQPA@mail.gmail.com>
References: <CAAZdMafdbwusA3Ks_k=RW9FXCh+OMj90Y_7A7Pj5cBHTXgyQPA@mail.gmail.com>
Date: Tue, 10 Nov 2020 16:04:52 +1100
From: Martin Thomson <mt@lowentropy.net>
To: webtransport@ietf.org
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/webtransport/Vkizx496DzlhYujr6kdrmfdvnZM>
Subject: Re: [Webtransport] Choosing the Transport, pt. 2
X-BeenThere: webtransport@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <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, 10 Nov 2020 05:05:16 -0000

Hey Victor,

I have a hard time understanding this.

If I recall correctly, your original proposal involved multiple protocols.  So this sounds like you have discovered something that supports that view, or at least has consolidated your own opinion.  But I don't see any actual evidence here to support building multiple protocols.

Building one protocol is hard enough.  It seems like we signed on to do two here, on the basis that we need a fallback.  But I don't see how that naturally extends to three.  On the contrary, just one protocol is pretty tempting at this point.  TCP fallback could be handled by a websockets polyfill outside of the browser (or a WebRTC polyfill for those who are less complexity-averse).

It seems your arguments are based on it being possible to hide a bunch of this complexity under a unified API.  That's great, but it doesn't mean that the abstraction won't leak.  I'm sure that running over h2 will look very different to running on bare QUIC.

That doesn't meant that I'm not curious about your semantic unification idea.  I don't understand that either, but it's an abstract notion with some appeal to me.

Cheers,
Martin

On Wed, Oct 28, 2020, at 03:22, Victor Vasiliev wrote:
> (previous iteration of this thread here 
> <https://mailarchive.ietf.org/arch/msg/webtransport/CEGNLkMqrvug3uPyPmQIXnWVIAY/>)
> 
> Hello everyone,
> 
> As you might remember, we've still not decided which of QuicTransport, 
> Http2Transport and Http3Transport we should adapt:
>  1. There has been a strong interest in running WebTransport over HTTP. 
> HTTP allows us to do connection pooling, a well-understood mechanism of 
> falling back to TCP and better integration with existing load balancers.
>  2. There has also been interest in running WebTransport over QUIC 
> itself, due to the complexity of WebTransport over HTTP, both in terms 
> of design and in terms of writing servers for it (nice discussion here 
> <https://mailarchive.ietf.org/arch/msg/webtransport/O8P5nmmw0ywra1VWtJmS4lBglhI/>).
>  3. There has been a desire to pick only one of those.
> I've been reworking <https://github.com/vasilvv/webtransport/pull/18> 
> the QuicTransport draft based on what we've found while implementing it 
> in Chrome.  Doing that, and observing how it becomes more and more like 
> HTTP with every revision, has convinced me more than ever that all of 
> the transports above should be the same thing conceptually, differing 
> only in wire protocol.  That observation was very helpful, since it 
> allowed us to replace <https://github.com/w3c/webtransport/issues/129> 
> all of the different API entry points with just one, already 
> dramatically simplifying the situation.  Same observation also can 
> potentially help us make some progress here.  We can unify all of the 
> proposals semantically (make them share a URL scheme and the headers 
> format), and then the variants just become different encodings.
> 
> If we compare the WebTransport proposals to the HTTP ecosystem, besides 
> the obvious equivalences (webtransport-http2 ≅ HTTP/2, 
> webtransport-http3 ≅ HTTP/3), it becomes apparent that 
> webtransport-quic ≅ HTTP/1.1.  This gives us a hint of why we might 
> want all three of those.  This is also really nice, since we know how 
> to switch between all of those protocols, and we have a lot of 
> experience with an ecosystem shaped like that: webtransport-quic and 
> webtransport-http3 can be switched via ALPN, webtransport-http2 can be 
> raced in parallel with the former.
> 
> So I propose that we adapt all of them.  As it stands, 
> webtransport-quic is a simple-to-implement and proven-to-work solution 
> that should not require much of working group's time.  There are 
> questions regarding whether webtransport-http is too complex; I believe 
> that we won't know unless we try, and since there's clearly interest in 
> trying, I believe we should adopt that draft and actually start working 
> out those complex details.
> 
> What does everyone think?
> 
> Cheers,
>   Victor.
> -- 
> Webtransport mailing list
> Webtransport@ietf.org
> https://www.ietf.org/mailman/listinfo/webtransport
>