Re: Multi-path QUIC Extension Experiments

Roberto Peon <fenix@fb.com> Mon, 19 July 2021 22:20 UTC

Return-Path: <prvs=6834e28425=fenix@fb.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 3F9363A0D69 for <quic@ietfa.amsl.com>; Mon, 19 Jul 2021 15:20:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.536
X-Spam-Level:
X-Spam-Status: No, score=-2.536 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.452, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=fb.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 PsAoK4t7iQ_4 for <quic@ietfa.amsl.com>; Mon, 19 Jul 2021 15:20:10 -0700 (PDT)
Received: from mx0a-00082601.pphosted.com (mx0a-00082601.pphosted.com [67.231.145.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BF1B53A0D63 for <quic@ietf.org>; Mon, 19 Jul 2021 15:20:10 -0700 (PDT)
Received: from pps.filterd (m0044010.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 16JMF0PK016591; Mon, 19 Jul 2021 15:19:44 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=facebook; bh=ka0UC+cM+thdfyxwkv8Au0XiVyBmZjXEJ0UUpgjh7Ig=; b=SGVLm6bLEAI6h3035mzaAyTBmMLCXxzd5aSrVgBIkwHiNCY31grpF/JJQw4SFEhkWW3j Zkem1CknyWddzPgtsMifuiWd111SePSZ30CuiootYaM5EvFSgl6Z2PNHBaZ+Euo2Xokw qZENdU75HdBIg0ZhVxG9co2Lc32/EWTJ1Ow=
Received: from maileast.thefacebook.com ([163.114.130.16]) by mx0a-00082601.pphosted.com with ESMTP id 39vytc5t5g-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Mon, 19 Jul 2021 15:19:44 -0700
Received: from NAM11-CO1-obe.outbound.protection.outlook.com (100.104.31.183) by o365-in.thefacebook.com (100.104.35.174) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Mon, 19 Jul 2021 15:19:42 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Gq1oWexHw+y0+ZbOWjAcBdvLVLOja0W9Vku4109rcDn+igl7hEkC9GjMZs174cV/Ml+7Qebqal4pWgT/3dQ7OBHN2Cmz9XX1Z8fKPMg5ykCR+IZi8iEJjSAqY8bGUG8qTaDhZ+AJw/jPIN7jlUgBsrrvEb2XbKhNsvfH1DnAHSnyZvYpFDPQwtweBGQrtJWi/cPkSlSpHOx7UDRvaF8bf7PXDaZoKt/IFJMC2ts3PUnobVHreGjCqgYxxZQQZG1uDW+j7ig6aHFW8gsVga4Fd/54A/2r+QP0Dfs7TI8tYJEU6smDXzg6ZuexxKPaW17lxACGX1yEPzWk63iv12TLdw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OmXN+hmnBuuKMuXiglIgkpHAN1JEzE/eoVzivjuJhxE=; b=HWIhdo7xpoJi2qhT4LHFfcuPSfYX0/mHOHjVZyCj1eNTb1uYKKgFo3n0QT5hrHa9IOCXPzyENFasRV3zNTUz1KhT3yZgkpoTeow5kwOHst6P1Xq3v4LFZ9ejSsUJHnxVToworrvQNACYOd9vRMKPpVMs6HMp0z/ea19uhAzlx00AS/fPGHGj1Cf4EPl3cv1c2IZottco8ApPKMLhQB/jnYygaiStyuJ7fRhbmrEulQDIpODNn8dxedwMOnrLCvjTZgn1YOcWmRWMtdUHtFY8PdCoHABqpyt5n92bsjNk0Xsdaq2rWu06g1yjzTnmuu3poHrOEcSFG1zixVLU2bXTAw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fb.com; dmarc=pass action=none header.from=fb.com; dkim=pass header.d=fb.com; arc=none
Received: from MN2PR15MB2687.namprd15.prod.outlook.com (2603:10b6:208:129::15) by MN2PR15MB3088.namprd15.prod.outlook.com (2603:10b6:208:f5::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.31; Mon, 19 Jul 2021 22:19:40 +0000
Received: from MN2PR15MB2687.namprd15.prod.outlook.com ([fe80::53b:a18c:9d8b:a4ac]) by MN2PR15MB2687.namprd15.prod.outlook.com ([fe80::53b:a18c:9d8b:a4ac%6]) with mapi id 15.20.4331.033; Mon, 19 Jul 2021 22:19:40 +0000
From: Roberto Peon <fenix@fb.com>
To: Charles 'Buck' Krasic <charles.krasic@gmail.com>, Yunfei Ma <yfmascgy@gmail.com>
CC: Mirja Kuehlewind <mirja.kuehlewind@ericsson.com>, "matt.joras" <matt.joras@gmail.com>, 李振宇 <zyli@ict.ac.cn>, Christian Huitema <huitema@huitema.net>, Yanmei Liu <miaoji.lym@alibaba-inc.com>, "lucaspardue.24.7" <lucaspardue.24.7@gmail.com>, quic <quic@ietf.org>, Qing An <anqing.aq@alibaba-inc.com>, Yunfei Ma <yunfei.ma@alibaba-inc.com>
Subject: Re: Multi-path QUIC Extension Experiments
Thread-Topic: Multi-path QUIC Extension Experiments
Thread-Index: AQHXekR/rwb9xtCPfE2fLUknTCKSfqtFgxqAgAB/+ACAAmLTAIACczoA//+VU4A=
Date: Mon, 19 Jul 2021 22:19:40 +0000
Message-ID: <0B9EAA73-802A-49F9-AEA3-A4F6C574A3F9@fb.com>
References: <8C2E8EFB-756B-449B-84E0-11CD6B57E541@ericsson.com> <0334A48E-B6C6-464C-A48C-4512A453DA81@fb.com> <CAPhuoz0vz2k63_ZaWmUg_XgSHUopid7vf+JY=JVFm_VqQJY87w@mail.gmail.com> <CAHgerOGhX3G_aBMrwZ0zXjN8tu9dqtu-9tu4z7YU80qfqaZkzQ@mail.gmail.com> <CAPhuoz1cG_ZftSFtapg-cKR23Y5AzWLxzqYq3NUfeL-8r890-g@mail.gmail.com>
In-Reply-To: <CAPhuoz1cG_ZftSFtapg-cKR23Y5AzWLxzqYq3NUfeL-8r890-g@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/16.50.21061301
authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=fb.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 7ce37f8e-c51f-456a-8e85-08d94b034d65
x-ms-traffictypediagnostic: MN2PR15MB3088:
x-microsoft-antispam-prvs: <MN2PR15MB30883095040B6CFE983A7DE2CDE19@MN2PR15MB3088.namprd15.prod.outlook.com>
x-fb-source: Internal
x-ms-oob-tlc-oobclassifiers: OLM:6790;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: dEZ5mKaoPon/SpY0SeYw15QNlPLoIgN5fuXrKqv6yDIBSbez42My335ft+xeReu0tzMV9wnhPvx/41cJDQZ4baER8zmUfEzg3pjfd2XYwQsOFt2lKVK2aIQmtkRCnM9XVMSqTGOMzkBMMlDXh46ynaoxN+dJTkCiZKzNIhkKVTzf+YBTHEaib9lePqdjxQtV4LF5wGyAenzFDV6jKeo1dq0W5vl8uxs76mhTl4vlTuPWvvNeRntyflMZ+Qn7QsTy8ISUFnCIJtZwsdK7k15RG8Uf0gcfRuWnegw15W3hJEmYJRntC/14RHUFUJSVI5H2gILsvHoNvIvzNyPPb3nd4CokKGqNf1k5hIa1EKDYMSi8qU6nuC51d49G5xwCT9qIjZg5wO92qRUUveSnpVKPl5JZgAEM4npO+vQICX+pM7bmmf4gS0/IQdtBbMYMZDvJXHSdkqfBQyWmi2Pa81ajRF9O9djeCeofp2qZ5TU1Gu1HM/0dnGKEtkp1Sl/qSKGwzMml5CRmkTfCAiRTK7Wa/ySxWuFwwpxBpWC19VBAcbb8jGvysZfKcde1TLR3XX8L+QVsGXx5JREUsXe98DW3GkddnXHmhmul1ScxCOSVvWw8nKuk0k/jUjlGjGAMirRfHhZz6qqBPHXC10PsG9PzlkI8vKEZsGLyAeNhGD8Gn58b30L1E9OjiajQ4hsZoWdzIa9yAytQqwkxjpCPW3ZgNspYeLa7oUQaIG8vAnS3slDUipTqdvm4wm+oCEXn9s3757cGdPgDsZ9icqAp5tCJPA2gsDgk9R4TUniezr7UyVPYcneyF1jwI5rg7Vya6iQGkCQUCjOfbf7rmsgLJOsyoZvdZFxv4aX/d6qhBbqtVo4=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR15MB2687.namprd15.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(366004)(376002)(346002)(136003)(39860400002)(4326008)(76116006)(91956017)(66556008)(66476007)(66946007)(122000001)(38100700002)(26005)(6506007)(3480700007)(30864003)(5660300002)(6512007)(186003)(53546011)(64756008)(66446008)(83380400001)(8936002)(8676002)(2906002)(6486002)(71200400001)(7416002)(2616005)(36756003)(478600001)(166002)(33656002)(86362001)(316002)(54906003)(110136005)(38070700004)(45980500001); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: dBVSddTVukEnlutCEvi8phue8bZlggPAnhq0VrHDSnxdRpk7mdEs4n5E6xNjH9bVmiRZGt6baTdNVkc2UGu1a2oin4hxKQZY9s0Eo2sbzAwVtKZkLnAG7hI0Nv39CwRn+jUpXleDAxJygVBVgy7eAKGVJSj8i6YPKTpQull29AMWq12ReP3825k1CKdgp9sO6wqQ+OnaMZ8+DAl0GUnagDnnVkJ4DLO302yq8mXPXnzlBJnZNQm0LUsKrqKhp9vXDrUCOTvE64RlC+NJbSgbOucRtmb+xEdSQMDsdsqH0brDvbtxXYrq2vxH/Rejc5ZwAG9FQ5Sd6UIV8RmCmYq6dgH/Y+kyFiCvisYEsPN+eziV9w8dqtQpXCUnFRhr8horykIIOpMb9SH67JYR8+Ym/j4STh5GfY7tuu6i0blz+Ct+s+L58Xw2Ql6ENHKv8Lk9UIKh4kpEFQGAZxmt/1PMDYFE5crKRDzDbQ/xXnDvpYr8EO+hYKOCaY6NGYCSIa+1UVpvSI8GWTmDKxhbJ1ffK3P6umraxahUXKIJa76+L4AeMX6pwJl5VsSf+suZiK+chfe/gH12twocZnRmeSlHYU7gFZimu4xnFS13jtc2SffwIngAbGANJQKH6bFljU7qhoqS6TQfyLysajolfHQvmziYsIe3qIXKNm/yyoPG5XLEG/HtdFyTfrqcHoO4blEdqSi6N7G392tSlK0MtEgUbx4yhKPTiitv6z7fwvPLbir0Epkdj3iAZxbK007Okk5u5oY4tyBSqZiWTMn4WR51yf0NAOpzYX/RvcGm3+/FqMzm8DEoZXEsS1fdTVZivGTPPf9aFeh+tK7YCmNIrHyoTD1y89+9xJN7C9WJogFZhk/VlluYiB8ej753Fm6IzHjWZY3KkiK/Gq9cipbE0Y8VtldgG70Me8wSd+AkyIJcUPA7LBkAhPqLlm9fz2SOQ2ZI/L/OU4DBF+grsKm+79RU78KmyI373YeGJwE1tF3g7gKQHFKf+NsHfOvsAL5OYOwsZX2udt77x28yH+cHL1/Q/A2sBjtqATTkF9NEnijXsiVwZT+yBPwqRpk5OJtpKMI2vQqOVS5NvXt8SlcCeukcphRaOu/3L9QA+LJCK5mZbpnYMM4fIBDKU/oshudP/mhdmeG3nCrr6nC2Q2Oq3eJ1k4+XZ3EyOTRdMy/xF51ZClEijnHXIXmCnG3AJUsarG4S2Bmw51vnsqyAd+LuKF6vh2HqGB15XFNhvTVv129dIQbGLqcpTGAhncXqR+q6rdcBmSeS8EOdqi+6ugqDJMWqr9sRjbrW6DDUu3ZHTkx85ojJTcYvwitYJM0tTXnzSah1
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_0B9EAA73802A49F9AEA3A4F6C574A3F9fbcom_"
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MN2PR15MB2687.namprd15.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7ce37f8e-c51f-456a-8e85-08d94b034d65
X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Jul 2021 22:19:40.4002 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 8ae927fe-1255-47a7-a2af-5f3a069daaa2
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: YH91QeeXIre0AivF5MUrhFoU+nkWEw/QFHH9+jXjohoZ1c5VF9nfCeTo0o76H7ZP
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR15MB3088
X-OriginatorOrg: fb.com
X-Proofpoint-GUID: RzZkZu5U7-tjkWpAuCsnEWFLzQYdClhF
X-Proofpoint-ORIG-GUID: RzZkZu5U7-tjkWpAuCsnEWFLzQYdClhF
X-Proofpoint-UnRewURL: 10 URL's were un-rewritten
MIME-Version: 1.0
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391, 18.0.790 definitions=2021-07-19_11:2021-07-19, 2021-07-19 signatures=0
X-Proofpoint-Spam-Details: rule=fb_default_notspam policy=fb_default score=0 phishscore=0 lowpriorityscore=0 priorityscore=1501 malwarescore=0 adultscore=0 spamscore=0 impostorscore=0 bulkscore=0 suspectscore=0 clxscore=1015 mlxscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104190000 definitions=main-2107190128
X-FB-Internal: deliver
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/egIy0xCAkDuOkCB-8WMbIjW-atg>
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, 19 Jul 2021 22:20:18 -0000

If we have to send data along a path in order to discover properties about that path, then sending less data on the path means discovering less about that path.

The ideal would be to send *enough* data on any one path to maintain an understanding of its characteristics (including variance), and no more than that, and then to schedule the rest of the data to whichever path(s) are best at the moment.

Because the tradeoffs here are so deep, I don’t believe that there is an “optimal” that will work well for everything… however, it is interesting to think about a few canonical (mostly video) examples as motivations.
- Videoconferencing
- VoD with deep buffering
- small, reliable RPCs (e.g. financial transactions)

Each of these would likely wish to have different redundancy, efficiency, and latency tradeoffs.

I do believe that innovation in APIs to allow applications to express this kind of thing well is necessary if we wish to do a good job with multipath (or multiconnection).
-=R


From: Charles 'Buck' Krasic <charles.krasic@gmail.com>
Date: Monday, July 19, 2021 at 2:41 PM
To: Yunfei Ma <yfmascgy@gmail.com>
Cc: Mirja Kuehlewind <mirja.kuehlewind@ericsson.com>, Roberto Peon <fenix@fb.com>, "matt.joras" <matt.joras@gmail.com>, 李振宇 <zyli@ict.ac.cn>, Christian Huitema <huitema@huitema.net>, Yanmei Liu <miaoji.lym@alibaba-inc.com>, "lucaspardue.24.7" <lucaspardue.24.7@gmail.com>, quic <quic@ietf.org>, Qing An <anqing.aq@alibaba-inc.com>, Yunfei Ma <yunfei.ma@alibaba-inc.com>
Subject: Re: Multi-path QUIC Extension Experiments

Yunfei, thank you for the clarification, it makes a great deal of sense.

It feels very reminiscent of QPACK to me, in the sense that it would be helpful for the multi-path scheduling to have insight into application data dependencies, so that it can use that information to avoid scheduling decisions that would be vulnerable to HoL blocking, conversely to take advantage when such dependencies are absent.

On Sun, Jul 18, 2021 at 1:17 AM Yunfei Ma <yfmascgy@gmail.com<mailto:yfmascgy@gmail.com>> wrote:
Hi Charles, Roberto, and Mirja:

Thanks a lot for your questions. As all three of you are curious about the definition of MP-HoL, I am putting my answer into one reply.

Short answer: the MP-HoL is not because of flow control, but rather, it is related to the nature of path heterogeneity. In other words, MP-HoL can happen when flow control limit is not reached (as pointed out by Charles, you can set a large limit on the client side).

More specifically, when you want to send out packets on different paths at the same time, there is a scheduler to decide how to split your packets and put them on different paths. However, in mobile networks, the network paths could have very different path delays. MP-HoL blocking arises when the packets sent earlier at the slow path arrive later than the packets sent later at the fast path, causing out-of-order arrival. As a consequence, the out-of-order packets are not eligible to be submitted to applications, so the fast path has to wait.

For example, say we want to send out two packets that belong to the same video frame with a min-RTT scheduler, which is default in MPTCP. For each packet, the scheduler selects a path for that packet to transmit. The selection has two criterias: (1) the path's congestion window is not full and (2) the path selected has a smaller RTT than the other. If somehow, at the moment of transmitting, the fast path's cwnd is full (some traffic has been sent before), the first packet is then put on the slow path by the scheduler. Later, an ACK is received and the fast path becomes available, so the scheduler puts the second packet on the fast path. As a result, there is an out-of-order arrival.

What makes the problem even more difficult is that in mobile networks, the RTTs can change quickly, which makes accurate prediction very difficult. Worst case is that when the scheduler thinks it is using the fast path, it is actually using the slow path instead. As you can see, in order to make multi-path transport efficient, it is important to solve this problem and that's what we are doing in this project .

I hope I have answered your questions. If not, please let me know.

Cheers,
Yunfei



On Fri, Jul 16, 2021 at 12:51 PM Charles 'Buck' Krasic <charles.krasic@gmail.com<mailto:charles.krasic@gmail.com>> wrote:
"don't overcommit" includes the common practice of setting very large limits on the client side, where in aggregate the case of server being flow control limited is effectively non-existent.

I am curious to hear clarification of the precise definition of MP-HoL blocking here.  is it not flow control, but rather path aliasing where distinct paths are actually sharing some physical link(s)?

On Fri, Jul 16, 2021 at 12:13 PM Roberto Peon <fenix=40fb.com@dmarc.ietf.org<mailto:40fb.com@dmarc.ietf.org>> wrote:
I too am curious!
There are only two ways to handle flow control—overcommit, or don’t overcommit.

The “don’t overcommit” choice leads to blocking, since any of that resource allocated to one path can’t be used by the other.
The “overcommit” choice either leads to OOM, or throwing out some successfully transmitted and received data.

Underlying this is a fun question: Which inefficiency is worse? Not using resources that should be used (i.e. from choosing to not overcommit), or sometimes redundantly using a resource (from choosing to overcommit)?
I’m curious too about what implementation strategies we end up doing in general around this, and.. if enough implementations are choosing overcommit, if we need some different protocol mechanisms to bound the redundancy?
-=R

From: QUIC <quic-bounces@ietf.org<mailto:quic-bounces@ietf.org>> on behalf of Mirja Kuehlewind <mirja.kuehlewind=40ericsson.com@dmarc.ietf.org<mailto:40ericsson.com@dmarc.ietf.org>>
Date: Friday, July 16, 2021 at 6:15 AM
To: "Ma, Yunfei" <yunfei.ma<http://yunfei.ma>=40alibaba-inc.com@dmarc.ietf.org<mailto:40alibaba-inc.com@dmarc.ietf.org>>, Robin MARX <robin.marx@uhasselt.be<mailto:robin.marx@uhasselt.be>>, Yanmei Liu <miaoji.lym@alibaba-inc.com<mailto:miaoji.lym@alibaba-inc.com>>
Cc: "matt.joras" <matt.joras@gmail.com<mailto:matt.joras@gmail.com>>, 李振宇 <zyli@ict.ac.cn<mailto:zyli@ict.ac.cn>>, Christian Huitema <huitema@huitema.net<mailto:huitema@huitema.net>>, "lucaspardue.24.7" <lucaspardue.24.7@gmail.com<mailto:lucaspardue.24.7@gmail.com>>, quic <quic@ietf.org<mailto:quic@ietf.org>>, Qing An <anqing.aq@alibaba-inc.com<mailto:anqing.aq@alibaba-inc.com>>
Subject: Re: Multi-path QUIC Extension Experiments

Hi Yunfei,

thanks as well for you sharing your results! Can you explain even a bit more what you mean by MP-HoL Blocking? Is this because of the flow control limits? If so wouldn’t it make sense to reserve a certain “space” for each path?

Mirja


From: QUIC <quic-bounces@ietf.org<mailto:quic-bounces@ietf.org>> on behalf of "Ma, Yunfei" <yunfei.ma<http://yunfei.ma>=40alibaba-inc.com@dmarc.ietf.org<mailto:40alibaba-inc.com@dmarc.ietf.org>>
Date: Thursday, 15. July 2021 at 04:18
To: Robin MARX <robin.marx@uhasselt.be<mailto:robin.marx@uhasselt.be>>, Yanmei Liu <miaoji.lym@alibaba-inc.com<mailto:miaoji.lym@alibaba-inc.com>>
Cc: "matt.joras" <matt.joras@gmail.com<mailto:matt.joras@gmail.com>>, 李振宇 <zyli@ict.ac.cn<mailto:zyli@ict.ac.cn>>, Christian Huitema <huitema@huitema.net<mailto:huitema@huitema.net>>, "lucaspardue.24.7" <lucaspardue.24.7@gmail.com<mailto:lucaspardue.24.7@gmail.com>>, quic <quic@ietf.org<mailto:quic@ietf.org>>, Qing An <anqing.aq@alibaba-inc.com<mailto:anqing.aq@alibaba-inc.com>>
Subject: Re: Re: Multi-path QUIC Extension Experiments

Hi Robin,

Thanks so much for your questions!

First, the head of line blocking discussed here is called multi-path head-of-line blocking or MP-HoL blocking, and its root cause is quite different from the stream HoL blocking usually discussed in QUICv1. The MP-HoL blocking happens when one path blocks the other path, not when one stream blocks the other stream. Please note that we indeed use multiple streams, for example, different video requests are carried in different QUIC streams. QUIC’s stream multiplexing ability and its benefits still hold in this scenario.

Second, regarding packet scheduling mode, right now, in our Taobao A/B test, we transmit packets on multiple paths simultaneously. However, you can definitely use traffic switching only and choose to switch when one path could not meet your bandwidth requirement. Basically, if you use multiple paths simultaneously, you get the most elasticity from a resource pooling perspective. It really comes down on what your application needs. We will also update the packet scheduling section soon in a newer version of the draft, in which we plan to include more discussions on the packet scheduling policy.

Third, regarding the benefits of more bandwith versus the "downsides". Whether you want more bandwidth depends on your application. For videos, yes, more bandwidth is extremely helpful in improving the long tail QoE, which is an important target for Taobao. We find multi-path QUIC helps us improve two important metrics, rebuffer rate and video start-up delays. In the past, if you work on multi-path scheduling that does not collaborate close enough with applications such as MPTCP, the MP-HoL blocking becomes the downside that cripples the performance. However, the user space nature of QUIC provides us the opportunity to solve this problem, so now our conclusion is that you can enjoy the benefits of more bandwidth and more reliable connectivity from multi-path without much of the “downsides”.

I hope my answer is helpful, but feel free to let me know if you have any additional comments.

Cheers,
Yunfei

from Alimail macOS<https://protect2.fireeye.com/v1/url?k=7cc82aa7-2353138a-7cc86a3c-8692dc8284cb-e08a325a5c75cf95&q=1&e=de295b4f-9105-4e32-980f-779c711eaa62&u=https://mail.alibaba-inc.com/>
------------------Original Mail ------------------
Sender:Robin MARX <robin.marx@uhasselt.be<mailto:robin.marx@uhasselt.be>>
Send Date:Wed Jul 14 07:39:37 2021
Recipients:Yanmei Liu <miaoji.lym@alibaba-inc.com<mailto:miaoji.lym@alibaba-inc.com>>
CC:quic <quic@ietf.org<mailto:quic@ietf.org>>, Ma, Yunfei <yunfei.ma@alibaba-inc.com<mailto:yunfei.ma@alibaba-inc.com>>, Christian Huitema <huitema@huitema.net<mailto:huitema@huitema.net>>, Qing An <anqing.aq@alibaba-inc.com<mailto:anqing.aq@alibaba-inc.com>>, 李振宇 <zyli@ict.ac.cn<mailto:zyli@ict.ac.cn>>, matt.joras <matt.joras@gmail.com<mailto:matt.joras@gmail.com>>, lucaspardue.24.7 <lucaspardue.24.7@gmail.com<mailto:lucaspardue.24.7@gmail.com>>
Subject:Re: Multi-path QUIC Extension Experiments
Hello Yanmei,

Thanks for the additional results on an interesting topic. I'm looking forward to reading the SIGCOMM paper.

I was a bit surprised to (apparently) see HOL blocking mentioned as a major issue, as that's one of the things QUIC aims to be better at than TCP.
It's a bit difficult to understand from the slides, but it seems like you're sending packets for a single stream (Stream ID 1 in the diagrams) on both the slow and fast path, which would indeed induce HOL blocking.
Consequently, I was wondering what the practical reasons are for you to multiplex packets for a single stream over multiple paths, as opposed to for example attaching a single stream to a single path (say: high priority streams use the fast path for all their packets).

I see this mentioned a bit in the draft under "packet scheduling", where it talks about switching paths once the cwnd is full for one. That indeed leads to the behaviour seen in the slides, but that's my question: why would you take those approaches then?
Are there so many cases where the additional "bandwidth" from using multiple path's cwnd for a single stream outweigh the downsides of HOL blocking? Relatedly: what are the packet loss rates you've observed on real networks?
Have you experimented with e.g., tying streams to paths more closely? Does that work better or worse? Why?

I'm mainly wondering how these tradeoffs evolve depending on the type of paths available and if it's possible to make a model to drive this logic.
I assume there is much existing work on this for MPTCP, but I also assume some of that changes due to QUIC's independent streams / stream prioritization flexibility.

Thank you in advance and with best regards,
Robin


On Sun, 11 Jul 2021 at 20:48, Yanmei Liu <miaoji.lym=40alibaba-inc.com@dmarc.ietf.org<mailto:40alibaba-inc.com@dmarc.ietf.org>> wrote:
Hi everyone,

We have finished some experiments about deploying multi-path quic extension(https://datatracker.ietf.org/doc/draft-liu-multipath-quic/)<https://datatracker.ietf.org/doc/draft-liu-multipath-quic/)> in Alibaba Taobao short-form video streaming, and the experiment results are concluded in the slides (attached file).
If anyone is interested in the experimental details about multi-path quic, please let us know.
All the feedbacks and suggestions are appreciated!

Best regards,
Yanmei


--

dr. Robin Marx
Postdoc researcher - Web protocols
Expertise centre for Digital Media

Cellphone +32(0)497 72 86 94

www.uhasselt.be<https://protect2.fireeye.com/v1/url?k=37557dd4-68ce44f9-37553d4f-8692dc8284cb-fe608437d16ed9d9&q=1&e=de295b4f-9105-4e32-980f-779c711eaa62&u=http://www.uhasselt.be/>
Universiteit Hasselt - Campus Diepenbeek
Agoralaan Gebouw D - B-3590 Diepenbeek
Kantoor EDM-2.05

Error! Filename not specified.