Multipath QUIC prototypes

Michael Eriksson <michael.eriksson@ericsson.com> Thu, 09 September 2021 06:59 UTC

Return-Path: <michael.eriksson@ericsson.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 D4D593A1ED1 for <quic@ietfa.amsl.com>; Wed, 8 Sep 2021 23:59:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.552
X-Spam-Level:
X-Spam-Status: No, score=-2.552 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_MSPIKE_H2=-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=ericsson.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 tuxoQS4IqnDw for <quic@ietfa.amsl.com>; Wed, 8 Sep 2021 23:59:40 -0700 (PDT)
Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00088.outbound.protection.outlook.com [40.107.0.88]) (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 125713A1ECF for <quic@ietf.org>; Wed, 8 Sep 2021 23:59:39 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IPv+w9+DDqNgj4cpR6EX3a3Trborh9dKD2RQYHHF3DJpCAkd8N3ykhxnlLmsAyR4Let+RzYadMDYvTIKaNMui/nxx6z91nBcDYmwUpjrE1QtUFSI4KBwd6h/Dv/A6VxbJFHDIxqTrKiaPrsrVnU9qBrYDtUfLvykpqHSNSfkCVgNVmAYdjN5P0ZWnJPgJ2byJOfnsKUHfTSgm55sGoL8eEMgxeECgU5JrdTFFz8goXZoxv7fxWlB9zA2IPYDXfiPZ884c1CfXmrdHrVyjw4+7Y7s5TzxsaG/6ei6+UZ5S71ANq2AkWxR2BrpIPUzH8HJeVudE2Lzm5vhh7kz3I083w==
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; bh=DZEbxLa3VKVVaNLRGUqSuQ0ru/+A1IG6s1MLyLv3ezo=; b=ZbsHIJcWFnTMzN4Yc5Bf0/p/XoO+ZbDCmY2rIJDqmYIgNwAygDGWuyn3xggLHV/ZSrdsYl8oxyUMDYK2iGOLy6396oodGh2712gnzpmP217wh875PY09Rk2NS7mSo2KJBXp0kf9AB7MutWZOOGqW4pWMAhzFht5HQs8EbveBrbfq11rC184w+/U0gxAQhgzAWmMVWimxOA50DkFnN7MzW9kzbJuT0bIkYYQvSUhWGsRL855VqhkLskGjfAYR+zCU/lMHPtfHK8Qaf18DOYhERdkIExneMpJS3neKi7RjIIisK5t9uSvEed8AZRllybNi/YZsdNwtsEYYTIcW9NuCng==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DZEbxLa3VKVVaNLRGUqSuQ0ru/+A1IG6s1MLyLv3ezo=; b=QiedMeYJZitbWvnBf0G4AuGMJSmJGmIJtZDuM++L46PrO83abf3vQX+gs/VVP8Dj2WpQ0K3hvfejhoFpQ5KfbNBSkT0yFDspOeWz5RniBM224yKpyVST7wTrw0tnshpV0C5tWPM1NQdpvdlP5qmFgXXWgotVKpsfzK6SKoz0gSo=
Received: from HE1PR0701MB2538.eurprd07.prod.outlook.com (2603:10a6:3:73::19) by HE1PR0701MB2460.eurprd07.prod.outlook.com (2603:10a6:3:70::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.10; Thu, 9 Sep 2021 06:59:35 +0000
Received: from HE1PR0701MB2538.eurprd07.prod.outlook.com ([fe80::ac1f:90b7:d750:17f6]) by HE1PR0701MB2538.eurprd07.prod.outlook.com ([fe80::ac1f:90b7:d750:17f6%6]) with mapi id 15.20.4523.009; Thu, 9 Sep 2021 06:59:35 +0000
From: Michael Eriksson <michael.eriksson@ericsson.com>
To: "quic@ietf.org" <quic@ietf.org>
Subject: Multipath QUIC prototypes
Thread-Topic: Multipath QUIC prototypes
Thread-Index: AQHXpUg/NlW0VHuHYky08sfHvxH7zQ==
Date: Thu, 9 Sep 2021 06:59:35 +0000
Message-ID: <2a583307-7acc-323b-202b-1c500a63d358@ericsson.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: ietf.org; dkim=none (message not signed) header.d=none;ietf.org; dmarc=none action=none header.from=ericsson.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 8f0b350e-8a06-479c-0861-08d9735f6247
x-ms-traffictypediagnostic: HE1PR0701MB2460:
x-microsoft-antispam-prvs: <HE1PR0701MB2460C0862FB58305206E7155F4D59@HE1PR0701MB2460.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: u3bjf1rwRlyxV3UrCpPfnmygEHlJrGpEbt9iiu7zqR8xoQ/VBuBsGn2dWJ785InSjoqVUSLF7LqwgIREsHhZYz7ugiCYL1deG+OEKRY7DVscGujUqGA4DMZudxW9+QDbmAsqdv1HN6+9iiOz+GMERc5jw7gOB0K78BMpDULHwiht0Jzv1vkhBbLzk5GQxAM5jcLZd5zUyWS5PYk8BNQiciOdZGVwRtMNYgfjye00fUKGQKXC5RoRLrxw8yVtSumJbQ9lRQyk7TYZIoI2cCuFPECrxbkYWyNg71oXH6/W2/MngaQiDWGzmtwZPodJUzl3D/Fr9nP4urY1SLeEOojKN0+ENLuL6HJNylHc2AZvDKjyDf1dbRAEWTBnf5ci0xiLVXA3Tudimh5bhpssOkaK02o45gsj+qpTYl3fblvxcGX5qOCBvssZ0a+xfkPdi2UTfmHpvMFQnPWslRIttOejkef1ISok+c5Ll6+kCewXiDIlPtQtnJCQjjBjGD550kFZ2GvMmQEBWdVcGJ++9Ich5lcEoevYO8SFLeTO2bQQrzKunnn/ppArjTtsQly0jCPC4r11T36aT4Fk4HzWzzZV5l7YssSUyFCWZOKuQyB/TF3P34NFKkpgeaIenLkkKBpJHwP7rSueI4PUQQdwMqIyrdETAZonAAyD4IIDxWtTbRMNV8WdBv61ea9ZZI6D4047WClRPN6N070kLtsqVYanW3f+tI91h55dqpD7qxRhH7lOs4rzjVWzHAJH0zxKnFf2
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:HE1PR0701MB2538.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(5660300002)(71200400001)(122000001)(8676002)(508600001)(31686004)(3480700007)(6506007)(66946007)(66476007)(64756008)(6512007)(38070700005)(76116006)(2906002)(8936002)(6916009)(66556008)(38100700002)(6486002)(2616005)(31696002)(66446008)(186003)(36756003)(7116003)(26005)(44832011)(86362001)(316002)(45980500001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Z1pTcEhtN3dYY0xJcm4yNXY2SGN6RXBDMzBDVGk1aUV1NllGQThPd05Ycllj?= =?utf-8?B?cGRmeUdFNW5jMlc4QVRDOEtqbnl5NnJXMm81ZjVHY0RKaHM4NUw3YWszaFdw?= =?utf-8?B?aDVzVWhwUnJyZ0IycEtGTUNoWEJ5aEFoeFovTHV6V2IwUmtpclAzKzlkUjFz?= =?utf-8?B?TWJPbkFlNFpXM3loMjVTaS84SExvVllyelVmTkJXSTk0Rmp3enprTHJIREV4?= =?utf-8?B?MURPYmk0SkJ4eHJuYnpYcmpaOEluRWdCbzNOaVhiZW94Mm91aFRWY0xiM2M1?= =?utf-8?B?SWZQZlFSWmY0YmJEMGt0YWlVdW0rcXJtaGVUT3YwZlJhNGlMRzQyb3Rod3VN?= =?utf-8?B?MjM5dm91T1ZnS2w5aDhYelFiM01qMmJYR2s4cW83R1M3bHU4Ym1HbUhPYkxn?= =?utf-8?B?TnZOWUZnUWdzMHFpYnFDWkovaklZV2gyaDJCaS91US9aOFpmNmlTY0NDNkdz?= =?utf-8?B?WFkwQ2VXRDdMOWV6czFjTDViSXdFVEw4NjZubk5pUWpWUzRhU3N3TFhEU1Ja?= =?utf-8?B?SXV5aWdGay9XNURkSE1rUldBWkljano2SVcrd054RXp4NWpJQnR1M2R1cDlY?= =?utf-8?B?c3BhYlAzbWNSbzZQVHZBMnVxYW1peEQ0ZmVYSmNZZEN0QndPNERXWGthS2pO?= =?utf-8?B?Rnl3a2FWSEp2NVJRM2pPMURkYko3VVZIalM3M01vRTIyRG96ekFvVi9kdG1D?= =?utf-8?B?NTJiaUo0dHRtVm1BUUVrN1pxcDBCNzhQaTlaOVU0eVI3UmljeUdPM1psM1ZU?= =?utf-8?B?TGc5T2dyV0REeUtLc2ZPYXFmM2FiSzEvNDk1eGd6WHBHdXZEdjZmY2syaGlV?= =?utf-8?B?VC90NkNDYXJRdjdLZFEvTjZIMFJna1RnNkxWRnlVVm42OWFlb1pVNXAzdnpq?= =?utf-8?B?S3d3b212UVNuNGpWck4wcXZiTkFMVnhodEl3Z01WT0gzL1E5WlE0R01OdjBx?= =?utf-8?B?WUhEU0dpUHZtemw5WENZc3MwZ1NUMVplTTlsZ044M0FhMmtkL2tFREk3SEhM?= =?utf-8?B?cVBCOFMwc0ZLVXlYZkp0ZzJEOVcvK1lraEJmR29RZDV6VmZ6UVk2cjRjcUJr?= =?utf-8?B?d0tpOG8wUlptV3RuazFjVGhOTEdyZWFxNHJXclRxQ09vY2ZoWTc3ZC85dGVQ?= =?utf-8?B?OWF5SGlEOFhWSWxVbExSZ0RXMEthRXpRWnhtcWVpajEvT3E0c3M4UW5ENFVv?= =?utf-8?B?TytyajFaZjhkN1cxT0g5U2xBQjE0RndCdmpxWG9XOGJGOTdrSnlYSVM4c1Fk?= =?utf-8?B?ZTBMcXVYYVltNTdiakg4UDZCV2FCejVvcVk4NDNDQ05PNnlHSENTSlVhSGZB?= =?utf-8?B?NFo2YzRrSDBuRUV6bldhaDQya3hnclFPZ1BoclZSVzVKUk9QTjJxZ2piMmVK?= =?utf-8?B?UlZySXhqSmdYcHZBakZlNTg1VnMvS3pSNGRqRmh4SWNPdVpEdGNkazNQOTd6?= =?utf-8?B?YjVRVXF2Y3IxTGNUY3RmUms5bUNjZkZxUzM4Mkh6Q3M5WExnNkN1YSt6TkNE?= =?utf-8?B?UmR1RkhmS2srVlpXRU11TGhWV0VyWHJISUhLQnYvYzg4Ulo2RTF0d0xQQVBr?= =?utf-8?B?cmJ0d29OSWlaMVp2ZVpmemRQZFViN1NhODFQOFFDK0grSFRGVmN5SS9HQzBl?= =?utf-8?B?UlpQSzBEd0FpWUpzQ0p5ZzZGL1RMZXU4blo5enVYZGFkc2RzRkNMMFlrdDhK?= =?utf-8?B?OFN2K0pKNkFrT1UrNW9QMy80eVlLbU1nd1JPbnFyNktoT3VIekdtNy9NNE5t?= =?utf-8?B?MXNpYXpkSDVVOGRMd2VvdGs5ekE4cU5yWFBkV2V2R0NULzI1VFpmUGFwSlNV?= =?utf-8?B?WFRZaVlzMGFWa0tKVnFyQT09?=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_2a5833077acc323b202b1c500a63d358ericssoncom_"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: HE1PR0701MB2538.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8f0b350e-8a06-479c-0861-08d9735f6247
X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2021 06:59:35.5946 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: O3qOBgk/lA9oHUyPv7vHAcMgYT34kArg0+PLEeMJuIz5HWHqfFk/8fsiAgZLhP2Wuvpv+Yaxb2vH6rmxqY86jqb5VEzN8YYdO4DTiHGy5uM=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0701MB2460
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/u0-fFpVogUcQCvJ17Ndr167_bd8>
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: Thu, 09 Sep 2021 06:59:45 -0000

Hi,

At Ericsson Research we are doing some prototyping of multipath QUIC (of the fully parallel kind). So far, we have very rudimentary support in our prototype but are about to take the next step.

Our initial implementation uses a single packet number space, which turned out to be a pretty clean addition to the path migration mechanism. Some care has to be taken with the ACK handling on both sides, but so far it has been straightforward. The key is that the sender has to keep track of over which path each packet was sent, but that is trivial to do. Some smartness with the ACK ranges is also needed, but you already need to prune them for the single path case.


This is what I think I know about existing "active" multipath implementations, please correct me if I'm wrong:

- picoquiq has experimental but undocumented support (open source)

- Alibaba are running A/B tests with real users and have published a paper about it. The implementation is planned to be open sourced (this seems to be delayed).

- Quentin De Coninck et al at UCLovain have a prototype and paper on multiflow QUIC, using unidirectional "uniflows" (open source)


Are there any other existing or planned multipath prototype activities in the QUIC community? I would be particularly interested in:

- Open source implementations (preferably in Rust :-))

- Public servers for interop testing

- Designs with a single packet number space and the experiences collected. Separate number spaces, as in draft-liu-multipath-quic, will of course work; however, it would be interesting to also understand the cleaner single PN space alternative.


Best regards,
Michael Eriksson