Re: Alibaba's Technical Report of single packet number space implementation (SPNS) for multi-path QUIC

Quentin De Coninck <quentin.deconinck@uclouvain.be> Fri, 21 October 2022 07:20 UTC

Return-Path: <quentin.deconinck@uclouvain.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 7A343C14F724 for <quic@ietfa.amsl.com>; Fri, 21 Oct 2022 00:20:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.109
X-Spam-Level:
X-Spam-Status: No, score=-2.109 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, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=uclouvain.be
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Fg2Kn-vO45sJ for <quic@ietfa.amsl.com>; Fri, 21 Oct 2022 00:20:52 -0700 (PDT)
Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-eopbgr130137.outbound.protection.outlook.com [40.107.13.137]) (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 C477CC14F735 for <quic@ietf.org>; Fri, 21 Oct 2022 00:20:46 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NFGe13vcaUorohWMuCVFFSSs+gaq2KThGp79yYl1Jfn2aXYqEAMgQY9dILUVD1+ZJPCLY954xibGG9PGubCJgGh7ow52+7n4AaqGVXiAjs39VqqXI7EVsfRdfgF95xNqBC2b5HhaJTar2V27Gz+d5+0KpLzcNyI+eJwlGffAAj/168cI5dfy2uJMytrDXUmeJXbZHJfZme4ZpSs/OukasNQIBEU5MMLtomfL6Xj6qs28iUyRbThkeTuOBD/xd+S2ijaFsEiMhrEMmlb9pPVyVqdpc1v2ZGIY6WdYyyR+IVIBz1fmaZHVTqr+cgjbb8LhB+klTf8xjbjUrzOX/cq9EQ==
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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=FEp4PCsHcoq5WJ0iiuAKtervWRB9eXhLy/g1J6tyEYk=; b=Voo6q9xBeflfrHemnAmYoqfcnjxZsLxasDKpIib/3D+eOevP8BGtv8Z0u+MNXl4VR7RGqHkkVmbIiYYlafroQzPnmuYpoIQv42qL2eyl/UQSNjcBRzxGbvNoqrq2f4H56gnEQUmCpy/IQlwJe7XESI0ybBjyLWw8n/XdlByy8plHsjMQR1z2oxoOW7DulDcgm705qQs/KZmORjemXC1eC+uj6MpER+oLfrP707WWnWH6B/4c4qZ4fnjVY/n1vQYHDiU0ZylyayXr+84w2dBiWvb2K7SRg2sEwmeUxi3WQucQKpmCJTrkxoJfzRkUks+XeLmhVkjnr9C9gKcg+bWMxA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uclouvain.be; dmarc=pass action=none header.from=uclouvain.be; dkim=pass header.d=uclouvain.be; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uclouvain.be; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FEp4PCsHcoq5WJ0iiuAKtervWRB9eXhLy/g1J6tyEYk=; b=Cd+SmqMJsl0byLMa0xe/+V5YyE7XegYOkOHKdR0kR/rsnJCg6dqTykSyrdDfbPRkNtR02w7TKnndgtUNcCmh4ze0THXxzcZ6HKsz23kVzFk2yrp8Glcj94I6gq84V0MHXX6NpeB0JHuZJfu/WazvaMn1g0yged9gzQfp1u+viNE=
Received: from DU0PR03MB8292.eurprd03.prod.outlook.com (2603:10a6:10:320::10) by PAXPR03MB7806.eurprd03.prod.outlook.com (2603:10a6:102:201::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.32; Fri, 21 Oct 2022 07:20:40 +0000
Received: from DU0PR03MB8292.eurprd03.prod.outlook.com ([fe80::18ea:adf0:ddf3:2d6a]) by DU0PR03MB8292.eurprd03.prod.outlook.com ([fe80::18ea:adf0:ddf3:2d6a%3]) with mapi id 15.20.5723.035; Fri, 21 Oct 2022 07:20:40 +0000
From: Quentin De Coninck <quentin.deconinck@uclouvain.be>
To: Yunfei Ma <yfmascgy@gmail.com>
CC: QUIC <quic@ietf.org>, Yanmei Liu <healing4d@gmail.com>, "tangyingqi.tyq@alibaba-inc.com" <tangyingqi.tyq@alibaba-inc.com>, "matt.joras" <matt.joras@gmail.com>, "lucaspardue.24.7" <lucaspardue.24.7@gmail.com>, Christian Huitema <huitema@huitema.net>, Mirja Kuehlewind <mirja.kuehlewind@ericsson.com>, Olivier Bonaventure <olivier.bonaventure@uclouvain.be>, Yunfei Ma <yunfei.ma@alibaba-inc.com>, Yanmei Liu <miaoji.lym@alibaba-inc.com>
Subject: Re: Alibaba's Technical Report of single packet number space implementation (SPNS) for multi-path QUIC
Thread-Topic: Alibaba's Technical Report of single packet number space implementation (SPNS) for multi-path QUIC
Thread-Index: AQHY5QT+1eEWtGGMuUi/XSq8SYtxc64YcTAA
Date: Fri, 21 Oct 2022 07:20:40 +0000
Message-ID: <BFD957DD-D60E-485B-86C2-44FB4E0ED972@uclouvain.be>
References: <CAHgerOEauwcrX__Lk+vCweQU7edL=fuCpEs5epErZUhQ3prh=Q@mail.gmail.com>
In-Reply-To: <CAHgerOEauwcrX__Lk+vCweQU7edL=fuCpEs5epErZUhQ3prh=Q@mail.gmail.com>
Accept-Language: fr-BE, en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3696.100.31)
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=uclouvain.be;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DU0PR03MB8292:EE_|PAXPR03MB7806:EE_
x-ms-office365-filtering-correlation-id: 1139384f-16f7-4879-e93f-08dab334c257
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: borzlfo5ho2tuXQGwDELEAuxH+aXgKJAvjui7osXK5lOhdn3FbjzCzjMTWywQB2x68NeIrmSihja1Mb0ULe8XAWEi7v+BoPc4c0LtA3wVWy20VUYWpyKS0gEKDUmd/HOEOeAtPm81kjv2+byvaGEjpjPeOUlByoWesoVPb6RkbsuW2uMjVzN3IaQCKKb7c8KezxChQP+23sRMRVT0TNlp2UTt8VQnSJglDlZfZ/XWsSMB+a3OxLOV/xxM5tVLNkEX4O+aeA1ucsh9SQyCQbtW95tfQqDl6Y5MjvmavkQ6q06DwUnC/gBmGR5tbzPWDnZdA+KusTN7MamVKRp/FXThRgLfa6JNflJUZROGJBzuqmEWm4u5Le52SXAj1+vski0aoc9ULayGvUt3/ZS8PfON74q+FfKLvL9VbQD0MspUadIvQ7Tu+iNG5pQgtj/t8Ur+uGo/dosxIcLT+qCugMb/IXcnihrl5j7wUo3N9EEKp8lPaVpkqv0gOpwKwqSntZ52EbQCTUZRC7Ak/frqjbVnsZeohyiUzV1oEmbIjGZOPJZAPMxdudYMCJouFaQAITG8ab8SRnkXET0W4MPx1zyVjf/CCo63K/HBUR0pt/sh88nPut3h9/J1NP/euLpJh2qh7ncZJ37VSxKl4yYgjQnGPdihtA30oi5pusRBtYdjqNYJnGlhNJ8M7i/jsAJlPHd/BDwX04K68+Vfn/aQme8d1DsoIl0DeNequluTUdVtP/1pjEoJIY+80KAxsgbCOMi4nS/Ll7DYq0UG+CkXIGbkWbFd4b2+L0TkPmYFQ/KVDY=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR03MB8292.eurprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(136003)(346002)(396003)(39860400002)(376002)(366004)(451199015)(66574015)(186003)(36756003)(33656002)(86362001)(71200400001)(2906002)(38070700005)(99936003)(122000001)(38100700002)(83380400001)(6506007)(26005)(2616005)(53546011)(6512007)(41300700001)(316002)(786003)(8676002)(66556008)(4326008)(91956017)(6486002)(478600001)(64756008)(66446008)(8936002)(66476007)(76116006)(66946007)(6916009)(5660300002)(54906003)(7416002)(45980500001); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: G4ZU+Cb9iSJxSK7YXMYVXUS6GBY91/kHHKheo0EpB67e2b/qs9V+H1BDpwDV65EkrBB1RamdR5/V1fCQvGfv3m0kuWl3uxS9UQpWWjXR6x6oi7gNBQSt/6qhmyej5meQdnx2jdQX9L9el/lUtpcTtpigzMoA/hnVTnbBExOWtoV93eEJT5QVOLn5MmoGsNGNhwkG4qCNPMRm264DiLYEJInRYUJmSnSmIkf4fQq32E0eqpJRyrqIKBSAvw8DhJTOZzZJAdGwBpT6K58HPxqvlW60ztRs3LLQ2qbAUt9Yefgt86Gcis1OCky42TFeP2jc5NxEFVmoFU03QRwubwYE6r5ejdZuymFwAesgGuq8KXmqWmsHuKp5p0hFy4CSLZFsuUQpA0jaPSEtGV24v5h8tzApjFwYG1NAzDzGaArOuwHlCSznA8uDuhiy+hSvtNnyoEGztQaCVuraKJKAmz2DO0Jh2KZdQdsJFMZgCPsk3rYInfkak3EDlrcdSBcil2z9Nc6EDVd30WzeWQQPW9JR5CGM0oJz9qRXSxHqb+Nurji0yqbK3LZjjG6Y0+F19mRtWeTRH3PTTyKTLrzLESR4hiLrFcvMzsI7E2Pkjz6eMQ/ceIASSSQfu55Y1uwZd49lH3juKy1q9IRMwZOEmHTZQbb/aQiWPEsIZfNfZrG4xOymaI+uPg8Y9p3lqoo/ybjxx2/BvE+FyqCZ/sFNKsDrI2HP3OAefKaiemzd8sRO1sN12NM/PMOr5ZJqAQEdiibKRs1hJEwi0TtyHNEx8ab2P3uVHIYbRHjhJuH3rjB1p/mbK8GQ3IIkkMmbWl1IGUZmFINBCehwVzKC7tn3fDyywXq35dNqRcYv7bodtAfdK2PrS34KJoEJBTg7PXdxjjfRyYWnEXpM5wOmktfOLiV7wL0jPmdRQ5CN/iutUMVczYhjuAdqPUKckVPFcgYmBebJCjHPMA66r1iEoX7H9H3LLs4gYqEVL7A/IKEfErga9ufWkw19u1IsiDA1uHn5JlFkeytvi9714sa9ux+W2lms06+WUI15Qc4hoC1z/3HCuY93wewrmXH5MmB5XmtOcVrYv+bEEqMmDrIwBMPO4QZartLltmZookzOiYHOir7LkO2ktUhsUPlE2HDpUvnnnqDnrONdWzmdqEHHN4CEI9EhxynMb9Y+bMrkFTOsYR7EfJVh6UWe+QUBi8IzwzxT0p5XYpuvc5f9EXtuDEKv1JYOsG37Y26MZ1jLvLq7MtpreXsrD/x0bGesRpISwy4mwyJGblmenc3pufQQT52HCYEkVKJ8OUa+ZSojdCRBj9nQiGtajDoWq+7H0/1sM5KNh97nX0sAvt3Ny+4VHQGVockSxhxy2Y+9i+eqSbd5vwdGLwRRfeW3SR0hVxkOrlCfR+w0nSYmuNMmnhJHlNPDHvEF28SJmTWQl9GbSD4UHRbeV51x4CJa+inhOBp0RNJT/tEOzmMD7P3WJ+P+Vz2o2QKTY67j3MfTJML2gIoP25HrOkWOKgaCAwRGbw+7dieneOAOlTjgpksWy/wLPmhSH/WknJ5gw8cWDWB0YJ0E+kzPKUQ0sImSNrY1KH7cIu1fLi3xZqw4k08osSW+MjEwdB+n4q5IeC5BOHyeom0DCKSu3dI=
Content-Type: multipart/mixed; boundary="_004_BFD957DDD60E485B86C244FB4E0ED972uclouvainbe_"
MIME-Version: 1.0
X-OriginatorOrg: uclouvain.be
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DU0PR03MB8292.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1139384f-16f7-4879-e93f-08dab334c257
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Oct 2022 07:20:40.6090 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 7ab090d4-fa2e-4ecf-bc7c-4127b4d582ec
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: Fjw2kzMjnjj8piwaFlDDmd5J2Rtdwn76NR3Cfw3U/VCmb9+eErHopbqz5JZkftiu/HvbeS+PghMU8MdIjC/7cPgPJ92tsNBaFMFaHlpvWgY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR03MB7806
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/9MvUdOXQtJZWace81iH7u1sG5AI>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.39
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: Fri, 21 Oct 2022 07:20:57 -0000

Hi Yunfei,

Thanks for the report! This is an interesting in-the-wild experience paper complementary to an experience I performed some months ago with picoquic in NS3 environment exploring various 2-path setups (“The Packet Number Space Debate in Multipath QUIC. In: ACM SIGCOMM Computer Communication Review, July 2022 issue“, attached here for convenience). Most of your findings (2, 3 and 4) are consistent with my previous observations.

As an individual, my main concern regarding single packet number space (SPNS) solution relates to the receiver implementation, especially regarding the packet number duplicate detection. Given that paths may have very different latencies, a receiver might eventually drop all packets coming from slow paths because their packet numbers are too low compared to other paths. Assume for instance that your receiver tracks the last 150 packets before the largest PN seen. Assume 1-200 are sent on a slow path and 201-400 on a fast one. If all of 201-400 arrive at the receiver before any of 1-200, all the packets of the 1-200 burst will be dropped by the receiver (due to duplicate prevention). Of course, one could adopt more clever receiver’s heuristics (e.g., timing-based). But in any case, I don’t see how a receiver could always make the right distinction between a very delayed packet (number) on a slow path and an actually lost one. Because the sender does not advertise, in advance, how it will spread packet number over paths, neither its current lowest in-flight packet number. In multiple packet number space (MPNS), you have monotonically increasing per-path packet numbers, so there is no such here there. I wonder if this is somewhat related to your finding (3.). Did you adapted the receiver algorithm in some way to tackle this?

In general, multipath transport performance (e.g. MPTCP) depends on the sender (scheduling,...) and the network. With SPNS, you will also have the receiver implementation that will interfere, especially if it does not correctly advertise all the packets it received, which is IMHO annoying. This would make some traffic patterns hard to benefit from multipath in some network situations. Of course, with MPNS the receiver still needs to send ACK_MP frames “in a correct way”, but this is the case for any SPNS/MPNS variant anyway.

Also, as your report outlines as well, providing good SPNS performance also requires specific changes in the recovery, RTT, ACK generation, ECN,… algorithms, while with MPNS the usual QUIC ones can be applied per-path.

From your experience, would you recommend going one variant only or keeping both is still valuable?

Best regards,
Quentin


On 21 Oct 2022, at 06:22, Yunfei Ma <yfmascgy@gmail.com<mailto:yfmascgy@gmail.com>> wrote:

Hi All,

At the last IETF meeting (114), one of the key questions regarding multipath QUIC was on the choice of packet number space. The current working group draft (02) has the multiple packet number space (MPNS) as the required and the single packet number space (SPNS) as the optional. While MPNS is relatively straightforward to implement, SPNS is not. To help the community better understand the implementation complexity and performance tradeoff, we have wrapped up a report on our SPNS implementation and experiments with real-world deployments at Alibaba's Taobao RPC scenario. Please check the attached report at the end of this email.

Some of our findings:
1. We outline our algorithm changes and show that SPNS could achieve similar RTT estimation accuracy as MPNS (Fig. 3b).
2. There is an ACK size bloating issue for SPNS. We find that even without packet loss, in SPNS the number of ACK range holes can still be large (Fig. 3c).
3. When the request size is small, SPNS achieves almost the same speed as MPNS. However, when the request size becomes large, we have observed speed degradation of SPNS compared to MPNS (Fig. 5a).
4. The ACK size can be suppressed. We set two limits in ACK ranges. One is the default_range and the other is the max_range. (See sec. 2.4). However, reducing ACK size may sacrifice performance.

We hope this report can serve as a useful reference for engineers and researchers who are interested in multipath QUIC, and we encourage more testing and experiments from the community, and together, move this technology forward.

I would like to acknowledge my two coauthors Yingqi and Yanmei for this report. We also want to thank Christian Huitema, Mirja Küehlewind, Quentin De Coninck and Olivier Bonaventure for helpful discussions on the implementation details and tradeoffs of SPNS.

Cheers,
Yunfei


<Alibaba_SPNS_Report.pdf>