Re: Preparing for discussion on what to do about the multipath extension milestone

Robin MARX <robin.marx@uhasselt.be> Wed, 30 September 2020 13:39 UTC

Return-Path: <robin.marx@uhasselt.be>
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 BE83B3A099F for <quic@ietfa.amsl.com>; Wed, 30 Sep 2020 06:39:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, 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 (1024-bit key) header.d=uhasselt.be
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 EhViaOvrLoDC for <quic@ietfa.amsl.com>; Wed, 30 Sep 2020 06:39:31 -0700 (PDT)
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) (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 795843A0997 for <quic@ietf.org>; Wed, 30 Sep 2020 06:39:31 -0700 (PDT)
Received: by mail-wr1-x436.google.com with SMTP id o5so1837281wrn.13 for <quic@ietf.org>; Wed, 30 Sep 2020 06:39:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uhasselt.be; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=vmw95ebfyD3KqjU07v/3bBtHmqytR3A7D1NfZKrpdSk=; b=I4w4kjwXqmYjf/qCjCpsbWwgSSRpMpqF4+0l7K/ZJAf21JZGpwoAq/2eGY7Ri+omn6 HGiOJpVST7x1xD7iH10sij6Ht6zyv8LXr+erYzYs2chEFCTdhsIUiSHVvEikUfayyCYF rmRBimbPmUHGs80q8ONk1Z1mPQTtlvvgWjvb8=
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=vmw95ebfyD3KqjU07v/3bBtHmqytR3A7D1NfZKrpdSk=; b=ArYNWMsiKByms0O8yfxK5D38Osze9rRDJ6mSJlTeXDBstyKzHgKXfE9PClQBwq1PbR ZSAnc9Hm/6k3zTlxEwrIDcFhoCnTtPr2pD/doh+h7So0+DBIfZZ2lsKCbOku050e9tlt l0yI2fDj5xuzTBpPWV6uCG8ZN6mxJNLitVJd8C1pmi2DtC5J61nCULJ0HIUJfrHpWl97 sb8jNZ8VToGPAk058kT9m++tJR9ENugAdV0mpcFDf2gS+823N2QsHceF6udNB86oFFUM bVgQXzDQFCAXfu0tDoD+3w5dbwXt5maUT/1IqhteaZ6iQp+OTzkSna1V5KT6hr7rnSGU Kz4w==
X-Gm-Message-State: AOAM531h6qLhUrauUvUd/k/wRi7BsTnp7bvHPLuaO7cvR7YKMIj0aptM +U4MXFkvZwxvvSLN7U0VWDr0Iuc/b1THfq9SATi8ng==
X-Google-Smtp-Source: ABdhPJxXSJfH+FOJ+gUeqICVkmwP63fivSOJeVvVqY3CTZwSzTbiFWnQOby3zrs5pCJa/l0zjR07um0QW1DbXkkkbWo=
X-Received: by 2002:adf:cd05:: with SMTP id w5mr3271815wrm.62.1601473169217; Wed, 30 Sep 2020 06:39:29 -0700 (PDT)
MIME-Version: 1.0
References: <F0A5E38D-4117-4729-BFF8-72D97CAA9908@eggert.org> <CAKKJt-e=+XLZhNWqaG9YSLTRqyQRvDc-dagUSkFwHOByFwZ++Q@mail.gmail.com> <78651438-2fce-ba67-4f44-4228bbc79a75@uclouvain.be> <CADdTf+hOACZ1x=d8SV-aX0f3vc+_fyqTziRqi5gi+nJgppaz8A@mail.gmail.com> <1ada66fc-61b1-c541-8a25-afbc7c978940@uclouvain.be> <CALGR9oZzi=Ucf54xZxcy4Qfc3Q6JWuxjv5jxwR41JaEUHkcXZw@mail.gmail.com> <1e9119a6-ef0a-ebe1-8925-e0ff0d6ce9aa@uclouvain.be> <CALGR9oaSXtzi8eTdm03CQ4jt2-O1iENzD1D-8aCwn-osrjbyPQ@mail.gmail.com>
In-Reply-To: <CALGR9oaSXtzi8eTdm03CQ4jt2-O1iENzD1D-8aCwn-osrjbyPQ@mail.gmail.com>
From: Robin MARX <robin.marx@uhasselt.be>
Date: Wed, 30 Sep 2020 15:39:08 +0200
Message-ID: <CAC7UV9Y=LhYh1Z0gYAZaDrxy2C486CZc_7atC_LEzQJHiP4g3Q@mail.gmail.com>
Subject: Re: Preparing for discussion on what to do about the multipath extension milestone
To: Lucas Pardue <lucaspardue.24.7@gmail.com>
Cc: Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be>, QUIC WG <quic@ietf.org>, Spencer Dawkins at IETF <spencerdawkins.ietf@gmail.com>, Matt Joras <matt.joras@gmail.com>
Content-Type: multipart/alternative; boundary="0000000000005e740f05b0880737"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/5DhqjQ5JisPHvgSXpT199ezVDqs>
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, 30 Sep 2020 13:39:36 -0000

Hello all,

I don't want to get too deep into this, as I don't have enough experience
with multipath to have a well-founded opinion.

With regards to Lucas' questions on interfacing HTTP2/3 priorities with
multipath TCP/QUIC, I am aware of several recent works that have looked at
this problem (e.g., [1], [2], [3]).
I'm not entirely convinced of their results, methodology or conclusions
myself, but they all claim to see benefits for the Web page loading use
case.
I share the concern that this specifically is a generally difficult and
largely unsolved (research) problem and that APIs/interfaces for exposing
the full power of multipath to the application layer will be difficult to
create.
Then again, the same can be said for exposing QUIC-layer scheduling to the
application layer, and we seem to be happy to stick our heads in the sand
for that...

I also feel it's important to make the clear distinction between general
multipath scheduling (what I feel is mostly what Olivier is describing) and
"stream-aware" scheduling (what I'd call "prioritiy-driven", and my remarks
above allude to),
where I get the impression the first is a generally solved problem for
MPTCP with a large body of research (and deployment experience) that can be
relatively directly re-used for MP-QUIC.


As a personal critical remark on the use of multipath for the Web browsing
use case, I feel that the wider Web performance community in general is of
the opinion that the network itself matters less these days,
and that the (ab)use of e.g., JavaScript frameworks, loading of (too) large
images, etc. has a much more profound impact on the observed user
performance than (limited) network bandwidth,
especially on slow mobile devices with limited processing capabilities.

As such, I too posit that we should not consider Multipath just or
primarily for the HTTP use case (or hinge it on its application in that
area), but as a property of the general purpose transport that QUIC aims to
be.
In this context, like Olivier, I feel most of the lessons learned from
MPTCP can be transposed to QUIC, including its deployment experience.
If true, the question of the usefulness of MPQUIC devolves into the
usefulness of MPTCP, which I think the past decade of research and
implementation has shown to be considerable.
As such, I wonder if the amount of work necessary for MPQUIC isn't being
overestimated, as well as if (some of) the "outstanding questions" really
are unanswered.

Robin

[1] : A stream-aware multipath quic scheduler for heterogeneous paths -
Rabitsch et al. - https://dl.acm.org/doi/pdf/10.1145/3284850.3284855
[2] : SRPT-ECF: challenging Round-Robin for stream-aware multipath
scheduling - Jonglez et al. - https://hal.inria.fr/hal-02570686/document
[3] : PriorityBucket: A Multipath-QUIC Scheduler on Accelerating First
Rendering Time in Page Loading - Shi et al. -
https://dl.acm.org/doi/pdf/10.1145/3396851.3402923


On Wed, 30 Sep 2020 at 12:50, Lucas Pardue <lucaspardue.24.7@gmail.com>
wrote:

> It's this special sauce that concerns me.
> I don't know how I'd objectively measure that the MP-QUIC design and all
> the implementation effort would actual result in improvement. For instance,
> more bandwidth via aggregation can still be misused; some types of streams
> will be more latency sensitive than others. Putting the decision making
> into the transport library could also be seen as black box.
>
> I also want to draw some parallels between uniflows and the HTTP/2
> priority tree. The tree was a fully expressive model that allowed a client
> to hint to the server about the relationship between streams. The problem
> of actioning this signal was left up to the server. Deployment experience
> reveals that getting this well-tuned, just for a single TCP connection, is
> hard. Some implementers just never got around to fixing some serious and
> easily detectable performance problems.
>
> Presenting a bunch of uniflows to a sever and leaving it responsible for
> using them properly seems to me quite a similar problem.
>
> Lucas
>
>
>>

-- 

Robin Marx
PhD researcher - web performance
Expertise centre for Digital Media

T +32(0)11 26 84 79 - GSM +32(0)497 72 86 94

www.uhasselt.be
Universiteit Hasselt - Campus Diepenbeek
Agoralaan Gebouw D - B-3590 Diepenbeek
Kantoor EDM-2.05