Re: Heads up -- unifying of multipath options.

Michael Eriksson <michael.eriksson@ericsson.com> Mon, 13 June 2022 13:33 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 CC96CC14F739 for <quic@ietfa.amsl.com>; Mon, 13 Jun 2022 06:33:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.73
X-Spam-Level:
X-Spam-Status: No, score=-4.73 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.745, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, NICE_REPLY_A=-1.876, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] 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 Ego2tRzejLDg for <quic@ietfa.amsl.com>; Mon, 13 Jun 2022 06:33:36 -0700 (PDT)
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2060c.outbound.protection.outlook.com [IPv6:2a01:111:f400:7d00::60c]) (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 3773CC14F718 for <quic@ietf.org>; Mon, 13 Jun 2022 06:33:36 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KQiprdqM8pJzgGIMeGRiAg5ugT8Jv0l1LXyngUs14VfwkHD+a3hLOlAKjIaLdkX8EZzlsOg0/kQt/h7qKLjWXMbTp0IZLvhawY1C/OAeuYP1lktU421rbXOpi73+W/qhF2pNd1IffrE5RtuWMtNrN/6TWxdLUFSF49r3JdLhGuAxibjJMFtR5wmiOQR9dGSDlC6Eh9qKQyMf3wdTB+BCIz2C4NvKQxusyV/SUwKmqEyVGn+aL/7VcvmS9kwtDYHr83SYSa2o6FfTQwxyNxRoqDyIOu9usBkOADAMg72+ZrLM3P7FYt51mefy+kmdkRIUd/56peR305K40CZBkLdroA==
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=i1aQoSIaB+BV3KLAq18lJioXDlKCOASL/QT9Ctwc7io=; b=ByoSLSHRAR8q8OMg0U25qFtwoCUDGhPa/GNVsiV7xpwN/Usfs2S9ujMvltw8lE/pukCaT6G7BzQJ2z1NuduAO5kV2bunymbKPbkI86CYB1+5KRp5m2DW4MPw8XTrGz1y9isTlL6NLnYZnewpgs+y5rWD0rQl7eXiY0g0GL3Hn/u0U+FzQKeWjham8oiFvLoD0PYICrnxkQ8X3E/x5Ke52xdyay45t2EKxbsJKbQ9nQaxsi1298M7VbUjEkXF77WvRvd1nZNGRN8cs0Zy1v91uRZQeNhpH4DyfgGZxfO3INCSmjDaGBjkHx7K4XD2ue83MnOoJJfdjdurCHBpw75F2Q==
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=i1aQoSIaB+BV3KLAq18lJioXDlKCOASL/QT9Ctwc7io=; b=cE72N1lfOm1GqguNI3QYlxpfEPrLWuQFGC/Wj2vmt+fu+v3fDdKV6zElGhA/Bnf1L8qlFaGJ/e6Z2SS1QGFsr3fFlJ6ZRJiH418i/6KaF57ajVavHRwnQNUg+mmczehwSajoXSUszgUbDMWzoyXRiMWKWiqRUj/pOFdYbOmeWp0=
Received: from DU2PR07MB8077.eurprd07.prod.outlook.com (2603:10a6:10:2b6::6) by DB6PR07MB3223.eurprd07.prod.outlook.com (2603:10a6:6:18::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5353.6; Mon, 13 Jun 2022 13:33:30 +0000
Received: from DU2PR07MB8077.eurprd07.prod.outlook.com ([fe80::6515:62ee:e14c:6dd7]) by DU2PR07MB8077.eurprd07.prod.outlook.com ([fe80::6515:62ee:e14c:6dd7%9]) with mapi id 15.20.5353.011; Mon, 13 Jun 2022 13:33:30 +0000
From: Michael Eriksson <michael.eriksson@ericsson.com>
To: Christian Huitema <huitema@huitema.net>
CC: IETF QUIC WG <quic@ietf.org>, Rebecka Alfredsson <rebecka.alfredsson@ericsson.com>
Subject: Re: Heads up -- unifying of multipath options.
Thread-Topic: Heads up -- unifying of multipath options.
Thread-Index: AQHYfyor3Fny8WxY8UqICTmmHvHspg==
Date: Mon, 13 Jun 2022 13:33:30 +0000
Message-ID: <14686ee3-a31b-bbd9-3016-4ac4081353e8@ericsson.com>
References: <1c4843da-5503-f02e-00bb-288c5d6aa5c6@huitema.net>
In-Reply-To: <1c4843da-5503-f02e-00bb-288c5d6aa5c6@huitema.net>
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:91.0) Gecko/20100101 Thunderbird/91.10.0
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ericsson.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 71844017-ad93-477d-8b9a-08da4d414e3e
x-ms-traffictypediagnostic: DB6PR07MB3223:EE_
x-microsoft-antispam-prvs: <DB6PR07MB3223BFBEC2F4AE9466C25132F4AB9@DB6PR07MB3223.eurprd07.prod.outlook.com>
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: Dmjhx59eGKGFTFOyhftGZHL+SVuNVnNjZzo408TzvhPGvdZksp+r6l59xLIabeuCME3DwPuhoqWuu4AH+Zpn7Nc14/TIdYacC6HUZd4s0WaF1zr3w5LIAzjFMZouJnoy9cI7HAGkgE40QpUSZiQtBZc2yc7EdEpRTXMMg/egKnxNOCZZCwqLj+mgENWMpgi+vfaGa8CFGK9IILW8xcegf3XTWrrK5ra5SON6R1cv8IXSKfTto5F488xEh36DXbrMPhZmkW2KfuWAmyyVPajhGWRe9G+krUOj/x9dZFIEQDS8T3s65kVqaB970sakjlj1sSIr+7t6FFQo9ud47O4RjBS7ALgerFKtWRzUm8ea3hxHuhVyLEhxAJ3Ib0aKZU+h62o84aSdU/b3O0lQqJmgSJO8jnv/TbmrtJ0wIB9oFfdQlVTp4u41csAlZBIJhcpoaPqGYMEGK83XwDVJXagxdJe3t1Ti0178ZefNBpIh54YSJUtigtsl2WB5WTww6KgnI+/zwBIjwJsMdNJ3zTdjOJgdvb5Ff+QBwf2OB/gq2lMkJWQzuw+TNOQLCpT8wZ38CL/aA+wBrMdJ8SgXt2gocKgekaMXN+s+vpVFibNYPOSZcmrAWQtlmC5lMSUBhWSCEhKgiak+ITBc896wcaUSoCb8yaPw39ZnzJUei3zOK7xmdw9VeiwQg5WYJFHomf5W22+NA3L+3pAxJ501RFj10NZWzBGAXPht1YaqmeVbMNVFZJUlqJdBASHpq1KJ0zPt+WwRv6GoSgKRZtiPxEOYBvIvg64H3fP5t7z2kqTxKdf02aKblf/hXVy0ou3XUo2Mk/3tK2DM+9j92CpPl49AcwOhjfCSEc1mzAzivB2tMJA=
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:(13230016)(4636009)(366004)(107886003)(38070700005)(186003)(6486002)(86362001)(2616005)(71200400001)(26005)(53546011)(6512007)(6506007)(5660300002)(31696002)(66556008)(44832011)(83380400001)(122000001)(82960400001)(66946007)(8936002)(76116006)(966005)(4326008)(38100700002)(91956017)(166002)(8676002)(316002)(2906002)(54906003)(31686004)(6916009)(36756003)(64756008)(508600001)(66476007)(66446008)(43740500002)(45980500001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: DJwjaoQwmgc/tsKpdUjqvl6mtdQMF1He9THDmKMxoY7no7nKhzKPfYlwVsJhiDWkT47ieIRVR2G7qIyZiciTIbxIC60hsNnyf96H2gvkEvLDhOpmV4GekIRPe35q+gCW9N3yVXy5dT3G6q2njNmKCx3eYskym0ID5IioDaPcqRXzFlFUriO8w0nqtjKb44fiiBfwf+ycVOwp95jehQ5BItphXD0cU7KdfJVX/JkGJ7yNtiDBNN7KukP+U2PaA4sIMSOw+vbO/eJd4+Vt9oWCa9Uhv3NhHLCTQEBm4zs7agMUO+XLlL8t84Em5jcLNPEUGW11nOBKi8Q742EreaZ3xaQW1Hd2ZIJhgb5z6qZVML2OJncMV/IiyASiyqce6U8nolYtNnVAZy7p1OEjyn9Pw8F4ws0l+j+EuaYFylTUk3KH4/oAMUP+Frwcy5PnT4puDOtlrL5djQaZkZrs5eKkXLwe6izNbHhI4+9t8zz+WJ8ztRk2qiDa+pbX3Mh73uQ/Mh3BZhr/caep8q1DPekn1sc1AoXm+AURkDGQD8rLfQlGO3hZE0FUEs2/h+vg3ZwM0WsM3aCELIRftSCKvZImxh1GLwYsOY3oS7tx4mbnHbQm4nWO2l0t/eR/2+kcwcPwC14PFWDtvpJNfRz2Fvwyzox/horC9sIW9ggsRd2bHo4Pz2O12nmNS2Pd0dd7UgmUpe4/1/OdSyG6zrxhT9GkrjwHVS+2VFglOd/b7cpzZK3FMWS8pGOSl2XgwLm04nAw76JwbEm5CbzD6bfY+rmljwGmbziNI16qOyFpeLclLnXQr0HGuWbnkPwwTBdotrjpEwsa85KN9RAk1nnwwCBRUvuVxdQKPBvtntF31LOJcjxrHfgxLpvfubJp6U/mquF87+VujUxpyjCrc1P28UmX+dq8xt2c518iCKe9dKNVS/37jPoi2K5mSjkmHE1kT5EKPKTcRic4wwIi1GmkeNmUPdEteLr3VHbX1n0T3yz0lLy1RoaH1JEtGAKYEC/uoACpRLSPwjsXIWMkrdO3cjS6q5gXDkXSFVcYBN7rzpmaM6DI3f5WGx8taJuKqU1GSAVzy+gAJLka4xfJiP+U2LquEUlT3f465P14ULWMiUCqM+XJY/E8hM++z3ybnEi4bTsOM5w06QapH9pJitbu2jhwlZBiuzOzMVk73IuPVoyWd68HuH580cY72dTTePVHWaWO1DTn2K1I/J1Qc7RWrAYvvEbgHLWbRtVOEaFWQ6NTIhigcWmsYfIuHqYhbcyg9g3c/rRgUxSpUH/xC7n78ipeH8Air1+hFJkuLuZ/ZJp0LGFKbVZ/56Vcgwf25DSDanCdENrKP49BnD3arUFLbGgH4RYhEHUQRH3czbRqyVQkIKYzOInVQftOpxhDJppdUg+6JsBctchoxE/mceCQKzBAvYOqQNvBjJ2ldK/BqmbNccSH3zxYarhO8hEXcyOtxAjv67Nu7B4PYRXr+ZtzH+gudbCg5elAg0g7hYvBoRYJSt3IYWJWO2ofQXg/Ns9A8o8OnMiy0ycBVoI3vssrjdQl/F742wunZR0t240APLTn+fgk8DnPuLLdkLlzGkbA8kbXqmAe8pBB1cBAuNSKgbk/DanT+yRBb9I7M3TAcsQYRZrzl4WYuPRXzKKQZaLRk1kfWT3qOYT4Q05aHaJjWOUvr31A5tYdhKWriFFLR1/DrYuh/2IDXA5o1StrzhRaDBvGqfMtSc/t9cHo8HY9/f8/gsbb9++ukTVqzXLGaOvnQlNtEEu4zbkAd9VjtZOlhqn7
Content-Type: multipart/alternative; boundary="_000_14686ee3a31bbbd930164ac4081353e8ericssoncom_"
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: 71844017-ad93-477d-8b9a-08da4d414e3e
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jun 2022 13:33:30.6656 (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: RCAiZ/y09NDa+UMqlVfg3Jzr92JGSah4+XXoqkhDeD7/A8dyn5aNUJw5QQJIsvqIIlCE53RN5b2bbzTcWWOCeyrKpNPxD3SBgWorr2U3PIs=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR07MB3223
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/OCEtgzZ5grQnByDI7hGDxlXog6s>
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: Mon, 13 Jun 2022 13:33:40 -0000

Hi Christian,

Thanks for progressing this!

Single vs multiple packet number spaces

I used to think that a single packet number (PN) space was a cleaner and simpler solution, partly because of less difference with singlepath QUIC. A later insight is that this is mainly an issue if you add multipath to an existing singlepath stack. With a stack designed for multipath from the beginning, multiple PN spaces actually seem more straightforward and efficient. With a careful design of multiple PN spaces, there is very little difference between a singlepath connection and a multipath-enabled connection that only uses one path.

Additionally: At Ericsson Research, we have Rebecka Alfredsson finishing her M.Sc. thesis and prototype of multipath QUIC hardware offload. During that work, we have realized that multiple PN spaces are more or less needed for multipath QUIC offload. The reason is the compressed packet numbers, holes in the packet number sequence makes it difficult to expand the packet number on the receiving side.


Both single and multiple packet number spaces

What you suggest is to use both single and multiple PN spaces, which I think is a mistake. The main reason is the increased complexity and double implementation.


Zero-length connection identifiers

The stated need for a single PN space is to support zero-length connection identifiers (CIDs). I think that multiple PN spaces can be used also for zero-length CIDs if the IP address and port number ("socket" in practice) is used for demultiplexing on the receiver side.

Zero-length CIDs are very seldom, if ever, used on the server side. The client will normally use separate local network interfaces (e.g., cellular and Wi-Fi) for the different paths, and thus have separate sockets for the different paths anyway. The server can handle a NAT rebinding, since the different paths are separated by the connection ID and the event is handled as in RFC 9000 (i.e., path validation).


Path Identification

Each path needs to have an identity for mainly two reasons:

  *   to refer to the path in signaling frames, e.g., PATH_ABANDON.
  *   to avoid reusing encryption nonces when using multiple PN spaces

The current draft uses the destination CID sequence number to create the nonce. Since zero-length CIDs don't have sequence numbers, they can't be used with multiple PN spaces.

I suggest that the sequence number of the server's CID is used to identify the path in both directions, including for nonce generation. This has two direct advantages:

  *   It allows multiple PN spaces for zero-length CIDs on the client side
  *   The path has the same identity in both directions, which reduces the complexity and risk for errors

"PN Space ID" should be removed from the specification and Path ID used everywhere.

Summary

I suggest that only multiple PN spaces are used for multipath QUIC. I have shown how zero-length CIDs can be used on the client side and argue that they will not be used on servers anyway.


/me

________________________________
From: Christian Huitema <huitema@huitema.net><mailto:huitema@huitema.net>
To: mailing-lists.ietf.quic
Subject: Heads up -- unifying of multipath options.
Date: Thu, 9 Jun 2022 06:30:29 +0200 (Central European Summer Time)

When we presented the work on QUIC multipath at the last IETF, we provided two options: one in which there is a packet number space for each path; and one in which there is a single number space. The high level summary is that the "number space per path" option allows for more precise management of packet loss recovery and congestion control, while the single number space option also works well if one of the peers use zero-length CID. The authors believe that we can "unify" the two options, as explained in the PR https://github.com/quicwg/multipath/pull/103.

The PR essentially proposes to use the "packet number space per path" option when both peers generate non-zero-length connection ID, but to fall back to the "number space per path" option for managing packets sent with a zero-length CID and their acks. That, plus a number of nice provision to control code complexity. The issue was discussed on this list, in WG meetings, and on Github. We know that many WG members care about multipath and have either preferences for one or the other option, or maybe opinions about how soon we need to converge. It would be very nice if we heard opinions quickly, and even better if those opinions came before the draft submission cut-off date!

-- Christian Huitema