Re: Use of multiple paths [was: Re: [Fwd: New Liaison Statement, "LS on need for Multi-Path QUIC for ATSSS"]]

Spencer Dawkins at IETF <spencerdawkins.ietf@gmail.com> Mon, 06 April 2020 22:21 UTC

Return-Path: <spencerdawkins.ietf@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 18AAB3A0D6F for <quic@ietfa.amsl.com>; Mon, 6 Apr 2020 15:21:14 -0700 (PDT)
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 7CdeUOQudAIp for <quic@ietfa.amsl.com>; Mon, 6 Apr 2020 15:21:10 -0700 (PDT)
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 4782F3A0D60 for <quic@ietf.org>; Mon, 6 Apr 2020 15:21:10 -0700 (PDT)
Received: by mail-lj1-x229.google.com with SMTP id v16so1495125ljg.5 for <quic@ietf.org>; Mon, 06 Apr 2020 15:21:10 -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=MSFwLMN35LC09Ydj71V0cgfkcQUsVnlZ9/SC3cYsAj0=; b=efbrSvMkOksXovCWDzYxfJzbNAbt7brMd7KxrbhF0TsfbdfngWSc46S9qhfBKf8gIL kNpMdxAgaHYLjdbDCbhntPMMZbzA/2XpaPRQQDEtdCEYnOhEFJHaFHWTeV3QbHyWxGmt vWP30RAk762sRi6ADnlULKpV/RDDICQY1IPk2JTn2EbyMeVYIAs8fdjSR89YrUOMFeWV 2nWIPNUSSIHTNf/oNL1JOR+Z9JZH5w1MjUSxPHw64xvBxA2xDN22glV4hiUKPETvE09H Mr7J1CnvktzT0Y3YJxIpFPdsSoQfPoRFT5eVAFrfITmDPzPugQOcG+lZLDxBcmwqjFFL /ULQ==
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=MSFwLMN35LC09Ydj71V0cgfkcQUsVnlZ9/SC3cYsAj0=; b=ub6vQ7P6h6eVULQR7hDCQk6iFzFum4nfbDZOCiqLFYtFQVI78UFsdYb/n87Sdpxihb rfM9i1vEell6rGLV5/GU5Z9yoU0N7eJdszsS6raV1XH8bxDUwq/ECW7/5yZccYd2oHlj rJhLO7WZxDe28vZcVDPRjv2YiKEU6rsFO71ZTA8OcdB53aZxu6AkI2dvZeb2BKGuuy5f /HnTxPJOWVYbhtMF85s1qVzDMoEyDH+V6SltegXR52V3Vg9dSHgZUyeTvZkTSuizQqjP Cg4tg+NgyNK9th2+jZPCz6nkCZDQYcA7t+NBu+GCb8wX3m4ENKwHkjV9/XZPBjc8BjQI G5Dw==
X-Gm-Message-State: AGi0PuaR3y3pa9YDcSMyTYP6keFt07zhJrDalZ26mxLvhVc0ojnwNsTe lcIMMTqIU4+0L5CuCBEXsipGK434VsrMvTLAdcM=
X-Google-Smtp-Source: APiQypJgpIkqQKGO0bd6dtmwv3fiAWrWFeQC/K51H/0yMlQwp+vjA4FUBj69+b4NV/WAaCYbdRYo7JaRt7wl6NE7ReU=
X-Received: by 2002:a2e:9886:: with SMTP id b6mr845732ljj.237.1586211668109; Mon, 06 Apr 2020 15:21:08 -0700 (PDT)
MIME-Version: 1.0
References: <C48DFF7F-1B67-42E2-8A82-1A04E097AD46@ericsson.com> <b9f29f18-ec1b-3c3d-48de-e52d420d66c4@uclouvain.be> <CALGR9oaNSqPMRNwt27J=cRfCS3paLoVPcGORyoZUKBQwuM+4tA@mail.gmail.com> <2387458e-f2fd-2de9-ee68-4cee8ebbe9ed@uclouvain.be> <F2392732-FC09-46D0-99DF-EED238C68C77@fb.com> <b9982c48f7d9fd07542ec2504f1a9fbe67956a62.camel@ericsson.com>
In-Reply-To: <b9982c48f7d9fd07542ec2504f1a9fbe67956a62.camel@ericsson.com>
From: Spencer Dawkins at IETF <spencerdawkins.ietf@gmail.com>
Date: Mon, 06 Apr 2020 17:20:41 -0500
Message-ID: <CAKKJt-csFnU=Poiu6gEYkqsawfKeRiOu_ssn4LjxXmFFHHu2GA@mail.gmail.com>
Subject: Re: Use of multiple paths [was: Re: [Fwd: New Liaison Statement, "LS on need for Multi-Path QUIC for ATSSS"]]
To: Magnus Westerlund <magnus.westerlund@ericsson.com>
Cc: "fenix@fb.com" <fenix@fb.com>, "Olivier.Bonaventure@uclouvain.be" <Olivier.Bonaventure@uclouvain.be>, "lucaspardue.24.7@gmail.com" <lucaspardue.24.7@gmail.com>, "ted.ietf@gmail.com" <ted.ietf@gmail.com>, "mt@lowentropy.net" <mt@lowentropy.net>, "lars@eggert.org" <lars@eggert.org>, Mirja Kuehlewind <mirja.kuehlewind@ericsson.com>, "quic@ietf.org" <quic@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000042f8805a2a6affa"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/PDzEPp-E8Ftt34aXwwU1ZW_TWXY>
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: Mon, 06 Apr 2020 22:21:14 -0000

For what it's worth,

On Mon, Apr 6, 2020 at 7:44 AM Magnus Westerlund <
magnus.westerlund@ericsson.com> wrote:

> Hi Roberto,
>
> Do you have a reference or can you expand on what functionalities you
> actually
> expect from a session layer?
>

>From https://www.ietf.org/jabber/logs/masque/2020-03-24.html (extracted,
please feel free to correct me if I'm misrepresenting anyone):

*[23:48:45]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:48:45.357561>
<carrickdb@jabber.hot-chilli.net
<carrickdb@jabber.hot-chilli.net>> Can someone explain why you couldn't you
have QUIC over QUIC? The payload would be the packet the proxy forwards.*
[23:48:46]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:48:46.658966>
<sftcd> could be, fine question though
[23:48:47]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:48:47.474340>
<hta> jonathan: I don't regard drop-from-queue as congestion control.
[23:48:55]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:48:55.904420>
<keithmoore> Magnus: but I also think that we're inevitably going to have
something like this, whether we want it or not, including the potential for
each app to negotiate its own relationship with an external proxy.   so we
might as well try to understand the hazards.
*[23:49:00]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:49:00.650063>
<ekr@jabber.org
<ekr@jabber.org>> carrick: you can have quic over quic. It's just not
specified yet*

*[23:49:02]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:49:02.352887>
<achernya> There's
no specification for anything-over-QUIC over than h3[23:49:10]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:49:10.785012>
<achernya> *other
than, rather*
[23:49:15]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:49:15.956316>
<Ted.h> @Martin I dropped Matt a note to ask for a citation; will forward
to you if he has one that can be referenced.
[23:49:18]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:49:18.593009> <
carrickdb@jabber.hot-chilli.net> I see, thanks
[23:49:25]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:49:25.634095>
<Martin
Thomson> Ted.h: appreciate it, thanks
*[23:49:30]
<https://www.ietf.org/jabber/logs/masque/2020-03-24.html#23:49:30.856183>
<spencerdawkins> That's
the problem - there's not a generalized upper interface for QUIC.  *

 and, in https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html
(extracted, and please feel free to correct me ...

[22:35:32]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:35:32.68890>
<Martin
Thomson> I also support adoption.  The requirements parts are mostly
solid.  I have concerns about the composition of transports in the overview
piece.
[22:35:45]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:35:45.447758>
<ekr@jabber.org> I also support adoption of this draft.
[22:36:38]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:36:38.771346>
<kaduk@jabber.org/barnowl> schmansport sessions?

*[22:36:40]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:36:40.118114>
<hta> Session
transport![22:36:41]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:36:41.310567>
<spencerdawkins> Is
there an agreed upper interface for QUIC that is not HTTP/3?*
[22:36:48]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:36:48.169519>
<carrickdb@jabber.hot-chilli.net> +1 on what Mark said
[22:36:49]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:36:49.696124>
<ekr@jabber.org> WebSockets/2
[22:36:49]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:36:49.855420>
<brong> SPLITTERS
[22:36:54]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:36:54.772286>
<carrickdb@jabber.hot-chilli.net> about "transport"
*[22:37:07]
<https://www.ietf.org/jabber/logs/webtrans/2020-03-27.html#22:37:07.443469>
<dschinazi@jab.im
<dschinazi@jab.im>> Spencer: draft-ietf-quic-transport ?  *

So, ISTM that this question is banging around from venue to venue. Some
people are assuming draft-ietf-quic-transport will work well enough for
protocols that aren't HTTP/3, and others are not so sure.

Definitely worth talking about, in what I hope is the near future ...

(It's also worth mentioning that
https://tools.ietf.org/html/draft-pardue-quic-siduck-00 appears in at least
one of those jabber logs)

Best,

Spencer

Cheers
>
> Magnus
>
> On Fri, 2020-04-03 at 19:15 +0000, Roberto Peon wrote:
> > QUIC is currently missing a session layer other than H3.
> >
> > I'm pretty unhappy about the idea of other protocols right now, since I
> > believe moving forward without a generic session layer is a mistake
> we'll all
> > pay for in the future ( again).
> >
> > -=R
> >
> > On 4/3/20, 10:01 AM, "QUIC on behalf of Olivier Bonaventure" <
> > quic-bounces@ietf.org on behalf of Olivier.Bonaventure@uclouvain.be>
> wrote:
> >
> >     Hello Lucas,
> >
> >     > I'll acknowledge that HTTP/3 isn't the only use of QUIC, but it is
> a
> >     > comprehensive use of the transport features that has deployment
> >     > experience.
> >
> >     I agree that HTTP/3 has been the main use case for QUIC and that it
> has
> >     influenced some parts of its design. However, I personally consider
> QUIC
> >     as the generic transport protocol that will support a broad set of
> >     applications that will probably have different requirements than
> HTTP/3.
> >
> >     QUIC has a very clean and extensible design and architecture. It
> opens
> >     new ways to think about the transport layer without all the problems
> >     that TCP has faced since roughly the last two decades.
> >
> >     > So looking at MPQUIC thorough the lens of HTTP/3, streams
> >     > may not be truly independent because of their reliance on other
> streams
> >     > such control or QPACK.
> >
> >     Agreed, but there are applications that will use independant
> streams. A
> >     simple example is a standard file transfert and many existing
> >     applications that rely on a single bytestream. A TLS VPN that uses
> QUIC
> >     instead of TLS/TCP could map each transported TCP connection over a
> >     different QUIC stream.
> >
> >     > Furthermore, even if we model the streams as
> >     > independent HTTP requests, the reality is that there is often a
> higher
> >     > layer that wants to put them back together and there the ordering
> can
> >     > matter. These are elements of the puzzle for prioritizing
> multiplexing
> >     > of streams.
> >     >
> >     > Getting scheduling of HTTP streams right is really hard. With
> HTTP/2
> > and
> >     > TCP today we see several server implementations that just don't do
> it
> >     > very well and may never get around to fixing it. We've also seen
> issues
> >     > in how servers adapt their scheduling to client reprioritization
> >     > signals. That seems quite relevant to this use case which requires
> a
> >     > server to select an appropriate path based on client conditions.
> >     >
> >     > The experience, to me, is a sign that people would struggle to
> build an
> >     > HTTP/3 implementation (particularly server-side response
> scheduling)
> >     > that achieves the theoretical goals of MPQUIC. Is it something
> that can
> >     > be tested and shown to demonstrably outperform HTTP/3 plus
> connection
> >     > migration in a statistically significant fashion? Maybe there are
> case
> >     > studies of  HTTP/2 implementations that have tried adapting to
> MPTCP,
> >     > which could inform an analysis for HTTP/3?
> >
> >     In MPTCP, we were less ambitious than in HTTP/2 or HTTP/3 concerning
> the
> >     packet schedulers. We considered that each host is independant and
> that
> >     it uses its own packet scheduler. In contrast with HTTP/2, we did
> not
> >     define ways to prioritise one path over the other by exchanging
> >     information in the protocol (except the backup bit, but this
> disables a
> >     path). In practice, what we observe is that the application selects
> the
> >     packet scheduler that it needs locally. On Apple smartphones, this
> is
> >     the choice between the Handover and the Interactive modes for
> example.
> >     This is not as powerful as negotiating packet schedulers over the
> MPTCP
> >     connection, but seems a reasonable tradeoff from an engineering
> >     viewpoint based on deployment experience.
> >
> >
> >     Olivier
> >
> >
> >
> --
> Cheers
>
> Magnus Westerlund
>
>
> ----------------------------------------------------------------------
> Networks, Ericsson Research
> ----------------------------------------------------------------------
> Ericsson AB                 | Phone  +46 10 7148287
> Torshamnsgatan 23           | Mobile +46 73 0949079
> SE-164 80 Stockholm, Sweden | mailto: magnus.westerlund@ericsson.com
> ----------------------------------------------------------------------
>
>
>