Re: [Webtransport] Http3Transport pooling/sharing

Bernard Aboba <bernard.aboba@gmail.com> Tue, 10 November 2020 16:51 UTC

Return-Path: <bernard.aboba@gmail.com>
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 B20513A0AA3 for <webtransport@ietfa.amsl.com>; Tue, 10 Nov 2020 08:51:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 AdCiAZgA_fnx for <webtransport@ietfa.amsl.com>; Tue, 10 Nov 2020 08:51:54 -0800 (PST)
Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com [IPv6:2a00:1450:4864:20::229]) (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 96B073A0AA7 for <webtransport@ietf.org>; Tue, 10 Nov 2020 08:51:53 -0800 (PST)
Received: by mail-lj1-x229.google.com with SMTP id p12so919770ljc.9 for <webtransport@ietf.org>; Tue, 10 Nov 2020 08:51:53 -0800 (PST)
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=kubw9uUIcmDPQIGGXQO8zT60YgUQ/lc2Z8VT+cNQQ9c=; b=k06/CnD6JdBE2MT7DhCQ/RsmIn2j/gyQzofPrqMUZMRdCTigpKeGdzcCmCikScIQCQ YIPUyuZWjTF9F00J++faqe1NX4nWO7JDrJIYydy9VanyWMsTDgx0lVQ5z5lZDIbjrIBn 4ItLGAoLc49AkoxggbdLd+MqOrQ2EIKShTbXyo1fOjNQ0lV33NVE2XJSHC0DWWawv8Nl axjtz92zjmhDhq5BsUSN8rHgZRXSmLcv9WdjR8MfrOM6yrUnE99u2YSO0uYAdEh6Rw76 fk6vPTiloM4Zjl+XaItPqoHj+OcCw9PsqNGIgh/OjGwNwNsIfnLHniCF+LdErMULd2MS feqA==
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=kubw9uUIcmDPQIGGXQO8zT60YgUQ/lc2Z8VT+cNQQ9c=; b=WWYzECRwrDmNAVJg4GssUJ42WnXgFXpVj7tVCB7Lv7YglI6gWhDmrXk3JYLVLGDgan pT5JPPE1qGZvcNwZ9Zyd4X7C17q7crmhx7osdr5dKqXk3nImdT1oQpJ/a/nAzy365sEA jBbzbrO0abeyc2vGOyraFWhI47XNCK1PpyJeM0yNGX1sUtCqpLzWZLVPbJi/A82d8fI3 hAm7wMr7JdSaflnvVSjtbXz5VO/iVD7CucoP/fEluAYkjFb6mu5wug6/7LavMYzopSgh 2pqUNn7zCD+572m48mJKUDqbC1G3p2ZaDP8NC6qUknJ7HnHvrC9bhNhcUf2+CUzjYsKS y46g==
X-Gm-Message-State: AOAM531yIUTU9qjjbpfY9fBWqkC3CKVPNR34QI5an80XiMCAhn1AiDMe OUl5J8Dlz7s9UVADA3D0OzLs1IxFkKt2a1xiDPM=
X-Google-Smtp-Source: ABdhPJxuLFLJN+C9U/axTL/dZd2/fYzwnePHtIPghjKyBLLxboOtw/gwCPAz4BPxLbEJjuQU+k2P9ptoJt4L8sCAgqU=
X-Received: by 2002:a2e:b70d:: with SMTP id j13mr1158843ljo.240.1605027111724; Tue, 10 Nov 2020 08:51:51 -0800 (PST)
MIME-Version: 1.0
References: <CAOW+2duHJTByX_E2jrQMuapKm=cxVwiZKUYWtpz-K-nw9SWQiw@mail.gmail.com> <2759a04d-949e-45ed-86db-bd499b7cff19@www.fastmail.com>
In-Reply-To: <2759a04d-949e-45ed-86db-bd499b7cff19@www.fastmail.com>
From: Bernard Aboba <bernard.aboba@gmail.com>
Date: Tue, 10 Nov 2020 08:51:42 -0800
Message-ID: <CAOW+2dtRvpi0zKKi4NnjmsqTvGVFA4EVLjwtZePHUJ-fge3RQA@mail.gmail.com>
To: Martin Thomson <mt@lowentropy.net>
Cc: WebTransport <webtransport@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000d9855305b3c37e80"
Archived-At: <https://mailarchive.ietf.org/arch/msg/webtransport/NpGL7MayRumxqoqBoVx_D4DqOG4>
Subject: Re: [Webtransport] Http3Transport pooling/sharing
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 16:51:56 -0000

Martin said:

"But then if you later learn that you need webtransport, what then?"

[BA] Exactly.

It doesn't seem right to me to require support for WebTransport (and
associated functionality such as datagrams) on a connection that initially
is only to be used for HTTP/3.  It is also cumbersome to require that APIs
be used in a certain order (e.g. always call the WebTransport constructor
before fetch if you want to share the same connection).

On Mon, Nov 9, 2020 at 7:18 PM Martin Thomson <mt@lowentropy.net> wrote:

> There is a common problem with piecemeal negotiation.  I can imagine
> several responses to the case where you have an existing connection that
> doesn't support the features you want.
>
> 1. Fail.
> 2. Make a new connection.
> 3. Synthesize datagram support (probably not worth it).
>
> Failing isn't completely unreasonable.  If the connection doesn't have the
> features you need, and you have no reason to believe that the negotiation
> would be different next time, then this is a good reaction.  Of course, you
> need to be offering datagram support when you make the original connection,
> even if you are not currently aware of the need for the feature.
>
> The quote you provide indicates doesn't seem at all problematic: both
> features are negotiated at the same time, and one requires the other.  This
> is not particularly difficult to arrange.
>
> There is a more difficult problem to address: what if you have a
> connection to a server that supports h2 and webtransport, but you get
> Alt-Svc indicating support for h3.  Do you upgrade?  What if the upgraded
> service doesn't support webtransport?  If, at the time you upgrade, you
> don't know, it seems reasonable to upgrade.  But then if you later learn
> that you need webtransport, what then?
>
> On Tue, Nov 10, 2020, at 05:32, Bernard Aboba wrote:
> > One of the use cases that has been described in the recent W3C
> > WebTransport WG meeting was sharing of an HTTP/3 QUIC connection
> > between HTTP/3 Request/Response and WebTransport.
> >
> > In looking into how this would work in practice, it appears that there
> > are some complications.
> >
> > Http3Transport requires support for HTTP/3 Datagrams.
> > draft-vvv-webtransport-http3 Section 4.1 says:
> > "If "http3_transport_support" is negotiated, support for the QUIC
> > DATAGRAM extension MUST be negotiated."
> >
> > What happens if there is an existing HTTP/3 connection to the same
> > Origin but that connection did not negotiate support for QUIC DATAGRAMS?
> > --
> > 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
>