Multipath with zero-length connection identifiers

Michael Eriksson <michael.eriksson@ericsson.com> Fri, 18 November 2022 12: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 7E185C14F732 for <quic@ietfa.amsl.com>; Fri, 18 Nov 2022 04:59:57 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.097
X-Spam-Level:
X-Spam-Status: No, score=-7.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, 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_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, 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=ericsson.com
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 Zd1ATRh_Uais for <quic@ietfa.amsl.com>; Fri, 18 Nov 2022 04:59:53 -0800 (PST)
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on0617.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0c::617]) (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 48B9BC14CE4E for <quic@ietf.org>; Fri, 18 Nov 2022 04:59:52 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KjTIBFghfPkDw5DBrL3RUUp06ztVapkiCFuqitw3y4V7MzHnam1YEqT3H6MbaTZUBKGBANDmplYOP5xP0vCIF/JnodF0a0lenEGVE7VFBe8YzOf7HPerXASZt4SpWpmGQX1Bh6rH8PKe9ih0QlrPmGXAxsrUuiwHiOi96lNE666GlwVgOmoVe12LmP/wGpdkfkxvO1azG4E+s7GsG+HOwxKACecoOjHJH1xdW/cdDnw5B9QvBH0rZkKSYAE408oV73sAD223erJwNtjufOcyM0d5cqJJEvfaUbod2lGDrLw2BYsc4WkVpJdWdtgtHAtiF2geLiYv6uKox6PoqMvHSg==
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=xAnsS+v+HBMkRw7NkrYeW8yJKr3/fjkj5qYemJhSY6o=; b=hFOwtNuFi4bRfF97l1iolw8LjwyD22WeFhY3gZTQHHLIF93G3zzgdJUo+41VGz5E7Qe7PqciclZukTM89ssBM4GgRnzJLm36JqpsAko3VGMIFnIKMioBYuDzCkDwA5gBRhBfKCv6dt1FWdzfo9E+j7EBa0FiS+zRl8wghENYNJVz/ZxlkaBmwp0rsmd4e6+zAyIbgLnZddkdGgVzUAPaJNE2TSfGzYClDSkQxv+DfmBcnDg0IKpnZagS9V5It94c+ibPUfKlU/atlVVIblgxBW8hruQ01Lr9Nv6NMOagK5St1DxwMvO7YMMUsMHXyQ54W8aSDS3FXJe/CuAGslPOqg==
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=xAnsS+v+HBMkRw7NkrYeW8yJKr3/fjkj5qYemJhSY6o=; b=K9QNX40S/w3Ae6dZhLxFeyeXyQcSQVNMUt/Xyi5punNL6/qxot+MD5F2ItR2V2Q6LLOTd0/Y6NvzxhAvCgolxK1PBecmhBjcGtiAzkpeo1fLAa+HblkAXQfbiOy63f+o0bgVW4V5puitRQdE3/vWdFc5zWq2Dxnl0omPjTcUKK0=
Received: from DU2PR07MB8077.eurprd07.prod.outlook.com (2603:10a6:10:2b6::6) by PAVPR07MB9357.eurprd07.prod.outlook.com (2603:10a6:102:311::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5834.9; Fri, 18 Nov 2022 12:59:49 +0000
Received: from DU2PR07MB8077.eurprd07.prod.outlook.com ([fe80::30cd:9a61:4e49:9ebf]) by DU2PR07MB8077.eurprd07.prod.outlook.com ([fe80::30cd:9a61:4e49:9ebf%9]) with mapi id 15.20.5813.018; Fri, 18 Nov 2022 12:59:49 +0000
From: Michael Eriksson <michael.eriksson@ericsson.com>
To: IETF QUIC WG <quic@ietf.org>
Subject: Multipath with zero-length connection identifiers
Thread-Topic: Multipath with zero-length connection identifiers
Thread-Index: AQHY+02jQx0K35XgCEGvqMBC9JkovA==
Date: Fri, 18 Nov 2022 12:59:48 +0000
Message-ID: <178407a0-e7cb-4ae6-26e8-4de789728a6c@ericsson.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.4.2
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ericsson.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DU2PR07MB8077:EE_|PAVPR07MB9357:EE_
x-ms-office365-filtering-correlation-id: e9286c28-2f7e-4977-87d2-08dac964c696
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 4XUrr3LYDEVOD9AAlLaR3UvF7alVAZ/5U88X8WgqT04yP3Z0Vv8A/06RWKe0asdn/K2T8FTmC3KOggICLAxqW18Tz3Te7vXox+n/JfI9z0j4KUJuUYcRSPX9rDIBRFuOpTkXnDivpLosIlFKp197580BDvFYjzVE7tsB42CtQKX/lslUYi92GthXSETQWa/WLsaMFRVdX2MLt9AVAMXVKNp1TDMmep3w/3Nm+k8iiBD9RXLeHAlKtgOpulp6hUDJ9tA88j05ytkENWYgrmdQMnsUIxtzy0ouHWYyYPD7pLcYcJO99GD3b2yboOIIHZ0ZGLwJXGgeN+bVBKVFJPaOHdjfeN/tr3VcEIZ5Se+2TRwzJeveswlZQVs7lnTNGXNf9SO0dnOKVolmTSqTgbAFb+hTFUhnEzD9DoFRYNh5eEezPiMT6Uwk9h8KY1R1Nx0uB73QgE42avGsIGQvU1Os4e4xhEYQiHhe6RnkktMqScj3yNo1utw3t7Lg2+adCIXhsHV0iEQhOgVCoGc7YViPYdosVQEG8SQd4mW5HcXdxV1YpxgoyzBMTjZV9MNpb47GFDszDNDHDxlQKPUsg1+KlWUu9VyYuzp96HeXtxg+otZoxOdTLAvPMZUPEAsDLb63J9VcsiWy2F9G558dYo1Bhdj2dk9Q9/MJFY6uh67HKf2o0k0GIf0A7vxexGWGmMk5CLefGBuExhXio93giWIcjnMgPzmW9H8ykjptr3EqxfO/9hM/plfoDyPgJA0efZvbs/b2z1jbWsR5/oD7QbuR6A==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU2PR07MB8077.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(39860400002)(136003)(366004)(346002)(396003)(376002)(451199015)(82960400001)(36756003)(38070700005)(31696002)(86362001)(6486002)(478600001)(6512007)(26005)(6506007)(8936002)(41300700001)(71200400001)(91956017)(44832011)(66476007)(66946007)(66556008)(66446008)(5660300002)(8676002)(316002)(64756008)(2906002)(6916009)(38100700002)(76116006)(122000001)(186003)(2616005)(83380400001)(31686004)(66899015)(43740500002)(45980500001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: +hlRiqB2HdC/xb8rbrmhRiGIMnY/Ejkb/malaCGrKSeqgEhBXIVfKcdadRaYRKLnNatvPVpfgd0y8mgLkBjBGBh6lKeKs8aOTNIywELJrkE+Q6O8iU4DDneAFWU4jlVDsDT0Gn4YtnjRXE43PKpcxUBpxek0ny4Z6oAbXLy4e9XT4Kp5mtWhyLQf6JKJfqCefU74rnZjHuJp7ODMpijAHRgpl6zLMSjE8paigJLvItUToqDtbTra3tzSLrmIwqExIG1TXflCq3ykcpcChrKyEHi57k/hUmSkcKoujcQO4QvFHqKeIoL+Ao8GS8DbAK5IENTzCBve1egg/Ci2aueDV42jIWQV5khF0M0kQlhDYCoZvmZSQaufzOtSUaO2pR8KWXFu9IldflIxmwarxIraMcmnERigpBiayq0ip0VtAIE7s+rzqZyGnUPfHvEc8N3YjlrdLASfRPK2ESxz8LfRkjDKhmKHHjNAMu2k1Ae6Lh18owB3e7IA3xBGiSixWo/nLQ5OxA0dXIukU3FRUDIUYorW6rGlplga7QmzGongQsmuj9SUURl45N8noxuC0PpbpZW29XpOrIXZPo7BIeYHBQGaBZulFIVjXG/D/Pvuk+oZKUj1yS4lxu4aOY5Vt3+wACDhuqVfNmL3mNA5Aq5WTUkEoDX2R7H+z2qYWMb4J0onLGzhEVCob5UUlbMJmEqGNEthbxam/Lc6RsE7Vx9yPBvFErgHMvwWS5QGeUFSXuts7I5EL8qqizfcN00khcRmNaxASPt7LYiUPyq9rz8hGCsyijl9ZSkiaSNFkh7edzsydeJ9BmuH5i/D5zo0Wg5rgL6bwFA+df7jX7UrZT5FHHjXUSR23+nwf+EmQ6wHjy/PRKRi3QAJFIB+WMpEosnStOhzCb2dnioq9CEiAkVTA2aSmnsPvq0wGQ7K9eRiwJ6uXoZ2L+mSd9DPKYHfcSvUrxwAg8qx5ZcawBdeRgQ5i04XT+y2eKsHCyc8GzG6x5oKlHSm8KKk11i9FBtDosDZwX2kSkv6V/w4qVZCri/lM3qaBsP9TEF4hIdloNbhBHr7Av2FD6G9yS61M18S+oIQeDz/lCAoQyld91fX2cnlVikqGrKk62eMnPWUf6eX5BCX/71WFWc+Df/Dhl+vei3M08KZYjPt8Q3sOyN/k36utSjpQefhIXFLXB17C6qCb5qgwBb5W/JMXRzomUtGIwYJMo4yiZHC/E221KDvbVQQbIXKzigeaSZah7wF9DjL7svhm/w566gtdHymXEbOYZSCPRQ8XkQg2le+3ZotYGUZUAhvcfI9Ki+8N2UAB+61X9hgEl6iro7hYrvVQEntavRJ85PYRc1PQCAPoaB9DQJMAyTy5nCmoTQu3PdQWbY3isH3BWjiwul6W2Th93+BrVNMDlQzXcZnVE5pZY8LL0AIBR7vhYIngMTvvsNvUulcwcDm1f8ZIohNp1xmsT0gZRVZTYEkXkGoZ6AfUMsQZYe3kcygaI+Brd2o1nbQFjkxRexaKbbfI+6jE9zZNAOa+N0nR/jRSyr64eGF4Av5ZALuycs5IRgp7oyeYeV1khguatcqer4Hd+nGws+G1Bxw4Q+bMjzzz7Jzb64D+gKWhzXMV+UwJwn8pkQPQVXvxAYFvbs=
Content-Type: multipart/alternative; boundary="_000_178407a0e7cb4ae626e84de789728a6cericssoncom_"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DU2PR07MB8077.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e9286c28-2f7e-4977-87d2-08dac964c696
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Nov 2022 12:59:49.1700 (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: iFAf0Zg4tLjhMszcQxVDZSq56/VIFJrrpX4sDY72UOmGBgYrhH2pIfEgfWKF5hz1hl13CJrb0Xd6jvM7c+cbnkbZSiOY9YAlSY4mgeMjDKg=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR07MB9357
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/q4ikY-xK7OwrGpjhZrizQ-HScvA>
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, 18 Nov 2022 12:59:57 -0000

Greetings fellow multipathers,

TL;DR: Contrary to common belief, it is possible to use multipath with client-side zero-length connection identifiers and multiple packet number spaces. We have proven this with a prototype.


Introduction

In the QUIC multipath community, it is common knowledge that it is impossible to use client-side zero-length connection identifiers (CIDs) with multiple packet number spaces. This is unfortunate, as it is not true.

A small adjustment to the current multipath draft will allow the use of zero-length CIDs on the client side. The mechanism for it has been suggested multiple times, for instance by Ian Swett at IETF 115. This message is an attempt to flesh out the details to get a better multipath protocol without artificial limitations. Feedback is more than welcome.


Design

The main idea is that every path has a single numerical identifier that is used in both direction. The numerical value is the sequence number of the CID used by the client to create the path. The path identifier is used for generating the encryption nonce in both directions, and also to refer to the path in signaling in, e.g., ACK_MP and PATH_ABANDON frames. The server can generate the correct decryption nonce for the initial path setup packet, as it recognizes the CID it has issued and can determine its sequence number.

On the server side, the path is recognized by the CID. On the client side, the local IP address and UDP port number is used to separate paths.

If the server-side CID is changed (IIUC, that is currently impossible as a new CID will create a new path according to the current multipath semantics), the path would still keep the same identifier.

There are some additional advantages with this design, beyond the support for zero-length CIDs:

  *   The implementations can be simpler, when there is no need to keep track of two different identifiers for the same path
  *   It simplifies logging/tracing when a path has the same identifier in both directions

Will it really work?

Yes, we have verified that with an Ericsson-internal multipath QUIC prototype.


Summary

The multipath specification should be updated according to the path identifier design described above. It will enable zero-length client-side connection identifiers and also make the implementations slightly simpler.


/me