[multipathtcp] Re: comments on draft-baerts-tcpm-mptcpext-00

Matthieu Baerts <matthieu.baerts@uclouvain.be> Thu, 17 July 2025 22:53 UTC

Return-Path: <matthieu.baerts@uclouvain.be>
X-Original-To: multipathtcp@mail2.ietf.org
Delivered-To: multipathtcp@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 59E12455EF63; Thu, 17 Jul 2025 15:53:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=uclouvain.be
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id IAy3OWuUrytb; Thu, 17 Jul 2025 15:53:50 -0700 (PDT)
Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11020091.outbound.protection.outlook.com [52.101.69.91]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 00C21455EF14; Thu, 17 Jul 2025 15:53:50 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qQpnz0MGyPsDdYtt6pQBAsDRqyrV2QrBd73++2pdRX4EE0NDYkO5u+KMQRVtVIGQdIpJyXDvYwoCNl8D83BN7TOR7A/VeDDrywwyCfIQVmfwuIG9rO6EzJgzMAzK1JQHFPFyI20qmjDcO5imiG1jNa/G7OS6EK1FRBSpQZbzUm0X4JM8zz+wOEhR6jCuAsyJ4VEGMz48zX47L9V8qF3rnaoYsdNxnohmaTHyjSdqaCiX9/h+8ZxelGrAG1TMwuzO8ddM1zJHLQ1FsGUD3zwsiFvyjz+bUCynjDRNGvYFq8hStN0ZamP0Z/LD2hNx3KayvCuNJzfM01FymwsNdtjP7g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=UPRArlvx0Bo73WI7SJqac6GTFgWrmgTZpGj8Xgfww08=; b=oJsI5i9X+5hmBuyIlbanrvpfi58QtYSoTqldQZ5s43J/tNc+GQRfnw3FxcDGACFoJSV//h3DbMXvS/mPl8sXuPFe3Fcyhvqotq1DdMqghtzdbmddsYkFJAfplTWho9+mok5IpH1kg5SiyXe1W0LU/RbIgKInPnrgj3pqwgdIUx+guLR1pMwWEHe/FpnrAMKm6SozLzELRn3eCA48dl2r8bu0coPlnYLEgRl83w9p8OgJwr4iy89sXfQk1+9WNH4pxG1nZCSAFIOY8P5Qdi6dsya7iyQiIiGYIkXpwlO5gwYSA5H75CXc2AOlk1Tu4QYnnQQ03FjcCm67JGbvQmW4eA==
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=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UPRArlvx0Bo73WI7SJqac6GTFgWrmgTZpGj8Xgfww08=; b=u9gE2KtEgIoPYrjCUfUvvBDkpmDOjOIMC+rVvsMgIBf8YME5d+UtFqNUyNk0jRUfDg0wnADKnsn8Dw0s3CZdqFhwpD2TpdmeJhPGHydj5u2H04I7jOt74BOwP/z6JDCSl8hsu4BRmpwTCNm6wOpyG6rhdVCUsaN35Oh7CS0SojbC4r2FdfsIRxS/AQ9ag6bMhcSK/OfWwyIBUCO+6Mi0zz02PjoMTpg1AAmFq2fQaorsXNgv7d9aawSSPiFvxRcrz8+V88l+2dyJXzVTI7KN9AAMTU83Xnma3r9/9/1JU5PWAC9onjoGIN1q0ozBJrV17OlZW0pvU47LijwRFxotvQ==
Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=uclouvain.be;
Received: from GVXPR03MB8450.eurprd03.prod.outlook.com (2603:10a6:150:4::16) by PA6PR03MB10449.eurprd03.prod.outlook.com (2603:10a6:102:3d6::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.38; Thu, 17 Jul 2025 22:53:48 +0000
Received: from GVXPR03MB8450.eurprd03.prod.outlook.com ([fe80::68d8:d72f:6e4b:f863]) by GVXPR03MB8450.eurprd03.prod.outlook.com ([fe80::68d8:d72f:6e4b:f863%5]) with mapi id 15.20.8943.024; Thu, 17 Jul 2025 22:53:48 +0000
Message-ID: <3b7e6261-5750-4a50-bad2-1ba678ad4373@uclouvain.be>
Date: Fri, 18 Jul 2025 00:53:46 +0200
User-Agent: Mozilla Thunderbird Beta
Content-Language: en-GB, fr-BE
To: Yoshifumi Nishida <nsd.ietf@gmail.com>
References: <CAAK044Rmey=zL-zx=a2bZFR_r04WUUK-ij8Wuxm8P4YtE_eF7A@mail.gmail.com> <9144fcf7-9087-45b6-af4c-3d5f7040a06f@uclouvain.be> <CAAK044R+yKp38qcvGvV7AZcL2bynim1aDTFcDygddR8xaafwvg@mail.gmail.com>
From: Matthieu Baerts <matthieu.baerts@uclouvain.be>
Organization: UCLouvain
In-Reply-To: <CAAK044R+yKp38qcvGvV7AZcL2bynim1aDTFcDygddR8xaafwvg@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: AM0PR03CA0078.eurprd03.prod.outlook.com (2603:10a6:208:69::19) To GVXPR03MB8450.eurprd03.prod.outlook.com (2603:10a6:150:4::16)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: GVXPR03MB8450:EE_|PA6PR03MB10449:EE_
X-MS-Office365-Filtering-Correlation-Id: c5c9a5f2-e61e-4402-8a33-08ddc584ca7d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016|13003099007;
X-Microsoft-Antispam-Message-Info: 2zCnuc3cUoar0DlY9QwjoTDb1VlhUutId6AhSAfEtXBERn0++PxXc5yUufMGZDQ0c23SbbtBEzLOa43Sk15sqSn3KHTg0Y5/wjLUMANLW2mI7rEyDDJsIHAjnV6eUphhcNrRgLfoSmUUkCri4PgHR3wh27ok6wdoBgi1FfwjEaE2s2K26DyFx7opdDVyQ3DZc6gCHVEhfniPMY+UdCmqfbSjZokm7pSP0lBBIBG/VclFRQz8tU3pGXOVT/E0S7q2kpgjFsDuivbriCAinUA4aF3vsqAqu47Aqw2fgbRmHRH/ImpXPMdc/cb8GMjjrFu9jAuSmm6U7K/4KMiIylirswMXeNPreJRauEbcIgXFg1WPOGc4XRIki7nMMLeExWQ5kzjGW57FLS/QHBBwjDKF31tSWV6ttiQiP+F6mI67g4xeREHeo0KiT8tsiO7g2lhHLEGJmjvlwrbh6VNCqt9rY/E5ZGmKiffvfNI54QZodqTAQ+JwaGu9pT5fZmGFwCDVbydQDr9TZIcqqubN8TH+Ral7AtVydVI5rWVYYs36k/iNQ+EzsSoO7IZfFgnuslu/d1+KylKQafoNHpPoc1H7ZvCfMH8W4z0hSFgatN3iy5+qv7vL09/LBiiBdx3OlOF3BTHRMT7rR/bM7bLErmf2KhbxKY475JRdeVRa2TPdkSCtXjqSdkSiuCunZoQIJLUU+slWbYI2figJLEf1FHbCahc//cq+5+vC+D1tZeczJf7WdrglxVg5MfpOwekTkAHJBqEbMhZy+KfWH2zBzKRzIgnMaDcaglaW5Oqh9sKM2SflOedVpUbUEk51UK7+Ha7xq8t9QVJduD+L2kL7RQyPsC4Lrx0dBtLAdAWGjX91Sc1jebitisZNRQVGSjRogM6BlD8wXCmyb/gbPd4yn+HXK9x6HpJhsKEWJeBl0XLGZvc7kuKwkAZfj7stdhd99s/Pg/v5fcNGW0aJ5E4XgvIa+IVPCvXG/EHKDevw6yYtannNs3eatbHvUjjMJBjkaLehzPmDyFpexle5x73edJkPgv8p56ZGQC35SYW91awyWd5T+4jFVR0dQdgnocjJi5iDEcVggc7YyfY1a5dhSclab50jyKUpX1P+ekEMlpQX7dBKJC68r9l1uV+w/AdhN9JMG+Im0yhyHcqGZUI+AVk3aIe2Gb88ZyYg9TMsDSJ5soBpiYtR2pvTXezx5LffkqgBkvoXYPVsEoMzHXBqPcdUPaQ00DiX754riY/m7fiMDczScjqVIpAtGE6qcPZSzyLpn3eOQDg/OiKzrTPTVgZMI9hFz1i+bNUotnt56GxDZRdaM3RTrnLQH/alAT8QNf725+/0sOeY0nz9dexzOgMkfYf8Jj6jFcD5RWEk+J8+qANps7CE8MIzAWZkKxJvh/bKJJlVMy50Yd7rftP5h6hg8KBOJt5qRy6ZDongTIe9CfA=
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GVXPR03MB8450.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(13003099007);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: zncIhBEmTrpXFIE7B9652qYwjObg3Iz30bh5TucW4HlqsylXRNtxsFihPqguNwjrKW5+8eLv+Uf6Jml2TWVklIsmJ/oKfTnXxJOCcgTpEB4nR4KjC6PFCArZGs1/moNJ0rjYchS9sf4WDg1tNafSb/KMu0lscHRe60G3MsFEGtN+OCqI8Mm73mw0iM0uwo3fAaYznxImOezhfpLMmNZNFtiNs18xRL15A3PihcuHy9ojyEn4aW8fD8yIH6kS7MM0WLaKKBjTiRwR8gqTVGjTvRHj29emi7VJ1mfsIN55BEtGdlkUmTcGikju0GrjU4yaBg3YErfYDSLMKtrOmy6weHMxFr7m6QyN6n+CG4JNbuqLwpHoReoBIYRZh3/8ZmEQKJ22VxNVhWLC9t4mNBnjq4S6cJr5jQ6d0psdDqWfs6+K5S9aTA1TPMDLF3gVZEma52HgfhfGNxk0m7QYsl5ARtdAFd4pi9Tbyts8KaJAPj1XQ3FTb8RQTfoIPMcweYEwBWQ3sJlWonTw5DLTgv+8cKLTA+oTK03QkESGHhfWe1wZ4G7RZWsAHRlv/8Rpsc95hdlan3tBRnMa9huYof4ji1sfR0yrLOGyg1chJJ2iG0aVkiI+gDtbEWbyxk/eR5shrbG2wvUnVaioNGQR3NzEJxQSWo3/mMPCQslPfzfYf2a8lDX1VGb6yP8AiTBJrGw8n2OobaT+sAAP58lxnR7bZZNBdtAktT0MgNGlKfu/V8HsyhED9K4P1fLkMT/fDGjuLLabRmcq1q70jaW9GrTlrX2VZ6r85qiAtUHInJqWx6NHo3dOEYKNlZolrRrm30/GQlHYcjGDhRZm/JMCToUEeR7CqWo5Eqhy1Qy9f0v48RfcK23vQBIaj8mS8Kzum+YblykcqH/WlMO3b+1CbD7CaRjTnzAzFdNuN5Z0wXisGu4e3KhkAgYPF4LlBiIAxjUoay0XVu8g5/RCP2Xrgu0outDIIDZeeFA8GmW5jb651dT6rRWSkMw3ShSt6h7pB9nNyTtyBkZaqsfM6ngyDUL3mQXPGnTQMOH0GC6OshBj16Yv3JSXM9UNPz8NBwrfFjDfCLGOnIbidvmFec32l9a94F2wKGJfkRfFv/qRt+PMo1nMCOBm4l951U9j0W9eL5Pu3xL1XNNg2HmQjIWK6dIAdgwPMEHOw5Lb+DILNhS2rRrQCjxO1YhhwVGoYpv48X7dPXfx39NKJjJAdSjLsXv2mBPwtLsLfdJMiTmDB2w4kdfMPDTokxcBjGjDj1Aifns+WYlLt4w1Snd1jnqcvMtbgsG8W4jDr2Nh9fLGVROxu02fTfyBZ0dqoxKyfg2MmJ7ALLNeifzJMQ39kUnK7OL1tIEEs3R/IV7qcUFycbR9VSxoZt5Izw3akJoC1Jiy3bKGKdlV2SN5pBq8JpLSpeXfJTLLgif/jofXdIdYCN8/V8wazpVyYzMSa00GRnNbeNeZetLpIW0bKLTbCS9TvNUc+uY7vaW5Z43k45Bb0+VdSfd8KUt3e7QW9YJv50am7VEQmQnrTmW8LKQm3P16brGLJG6BUXls6JuaX/bBmpIP/FJ/MFF/ydejHsvQL9bxPIlKpG5bBMoHAzCebBY9suJhPQ==
X-OriginatorOrg: uclouvain.be
X-MS-Exchange-CrossTenant-Network-Message-Id: c5c9a5f2-e61e-4402-8a33-08ddc584ca7d
X-MS-Exchange-CrossTenant-AuthSource: GVXPR03MB8450.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jul 2025 22:53:48.1381 (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: nsY1DvEMKMIe+bY63ahfaMJYsPSnyUNUvAKCg96DRsd6YSElfhU+4hzAOZnM2MQJ/E7AurFVqLFDlS7zU+O5dCCHLqVMtnt0+vAi0p2IY7M=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA6PR03MB10449
Message-ID-Hash: XF2WDY7TAQF52532VELFHWQGQ6J57TFI
X-Message-ID-Hash: XF2WDY7TAQF52532VELFHWQGQ6J57TFI
X-MailFrom: matthieu.baerts@uclouvain.be
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-multipathtcp.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: multipathtcp <multipathtcp@ietf.org>, "tcpm@ietf.org Extensions" <tcpm@ietf.org>, Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [multipathtcp] Re: comments on draft-baerts-tcpm-mptcpext-00
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/ks_He8Y4wbV71M937xWk0wgnCFE>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Owner: <mailto:multipathtcp-owner@ietf.org>
List-Post: <mailto:multipathtcp@ietf.org>
List-Subscribe: <mailto:multipathtcp-join@ietf.org>
List-Unsubscribe: <mailto:multipathtcp-leave@ietf.org>

Hi Yoshi,

Thank you for your reply! Please see my comments below:

On 16/07/2025 18:51, Yoshifumi Nishida wrote:
> On Tue, Jul 15, 2025 at 2:14 PM Matthieu Baerts
> <matthieu.baerts@uclouvain.be> wrote:
>> On 15/07/2025 05:57, Yoshifumi Nishida wrote:
>>> Hi Matt, Olivier,
>>>
>>> Thanks for providing a draft. I have a couple of comments on the
>>> following points.
>>
>> We appreciate your review!
>>
>>> It would be great if you could clarify them.
>>>
>>> 1: As far as I remember we had draft-paasch-mptcp-application-
>>> authentication and draft-paasch-mptcp-ssl which address similar points.
>>> I think it would be great if the draft can address what's the difference
>>> between them and this draft and what's the advantages of this approach, etc.
>>
>> Good point! These drafts have been mentioned, but that's it. I created a
>> task for that:
>>
>>   https://github.com/IPNetworkingLab/draft-mptcp-ext/issues/1
> 
> Thanks!
> 
>>> 2: How to send NEW_KEY options is not very clear to me. Should it be
>>> sent with an ack or a data packet or doesn't it matter?
>>
>> Similar to other signalling options from RFC8684, it doesn't matter, as
>> long as there is space in the TCP options. (That's why most signals are
>> sent in a pure ACK)
> 
> I think it's fine if they're not retransmitted. But, it seems that
> this option requires retransmissions.

Sorry, I was not clear about that: some MPTCP signalling options will be
retransmitted if needed. This is the case with ADD_ADDR for example, and
also the case here with NEW_KEY [1].

[1]
https://www.ietf.org/archive/id/draft-baerts-tcpm-mptcpext-00.html#section-4.2-7

> In my understanding, MPTCP retransmits pure ACKs only if they are third ACKs.
> However, this option will be used in other pure ACKs. One concern for
> this is if we retransmit pure ACKs, it can be looked as dup acks,
> which might trigger CC by mistake.

MPTCP will retransmit pure ACKS, and indeed, this could be seen by
middleboxes -- or the sender/receiver if this event is not treated
differently -- as dup acks. But this should not happen often, and very
likely due to congestion, so probably not an issue for the CC, no?

>>> Also, what's the receiver's reaction when it receives the option?
>>
>> Each side should announce the new key, and switch to it when both sides
>> receive it. We tried to explain this in the draft [1], but I suspect
>> this is not clear enough, is that right?
> 
> Well, if a host receives a hash that doesn't match the stored one, it
> just discards the option. I guess this means NEW_KEY option won't be
> sent back.
> Doesn't it cause retransmissions on the other side?

Yes, that's correct. It is similar to the behaviour linked to the
ADD_ADDR in RFC8684 [2]: it leaves the choice to the implementors to
decide how to proceed with the retransmissions:

> According to local policy, the lack of this type of "echo" can indicate
> to the initial ADD_ADDR sender that the ADD_ADDR needs to be retransmitted.

On Linux for example, an ADD_ADDR will be retransmitted maximum 3 times.

[2] https://www.rfc-editor.org/rfc/rfc8684#section-3.4.1-9

>> [1]
>> https://www.ietf.org/archive/id/draft-baerts-tcpm-mptcpext-00.html#section-4.2-7
>>
>>> In addition, I think
>>> we'll need to define what we should do when the receipt of the option
>>> cannot be confirmed. (e.g. no response from the receiver or rejected)
>>
>> For the moment, the receiver will discard the option [2]:
>>
>>> If a host receives a NEW_KEY option whose HMAC and key identifier do
>>> not match the stored ones, it simply discards the option.
>> [2]
>> https://www.ietf.org/archive/id/draft-baerts-tcpm-mptcpext-00.html#section-4.2-10
>>
>> Do you think it would not be OK? Or should it be clearer?
> 
> I think a host that sends NEW_KEY option needs to give up resending it
> at some point.
> I think the draft needs to address this point.

It was not specified in RFC8684 for the ADD_ADDR [2], but this new draft
can of course advise stopping at some points:

  https://github.com/IPNetworkingLab/draft-mptcp-ext/issues/3

>>> 3: Why does it store just two keys? Or, does it mean it generates a new
>>> key when the next key is chosen and throws away the current key?
>>
>> We don't think there is a need to deal with more than two keys: the
>> current one, and the previous/next one. Only two keys can be used "at
>> the same time" when we are in the process of switching to a new one.
>>
>> So yes, when there is a need to switch to a new one, the "non-active"
>> key is thrown away, and the new one is suggested via NEW_KEY. The
>> "active" key remains active until the reception of a NEW_KEY for the
>> same new key.
>>
>> We should probably clarify in the draft why a maximum of two keys is enough:
>>
>>   https://github.com/IPNetworkingLab/draft-mptcp-ext/issues/2
> 
> Thanks. I think it would be good if this point is clarified.
> 
>>> 4: What will happen if responders don't support this feature? Is it
>>> possible to fall back to normal MPTCP?
>>
>> Yes it is possible to fall back to "normal" MPTCP. Similar to the
>> "mptcpdss" extension: compared to RFC8684, the only difference in the
>> SYN + MP_CAPABLE is the 'E' flag. Something often confusing when reading
>> RFC8684 is that the SYN + MP_CAPABLE doesn't carry any key. It looks
>> like that:
>>
>>                           1                   2                   3
>>       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
>>      +---------------+---------------+-------+-------+---------------+
>>      |     Kind      |    Length     |Subtype|Version|A|B|C|D|E|F|G|H|
>>      +---------------+---------------+-------+-------+---------------+
>>      |  Data-Level Length (16 bits)  |  Checksum (16 bits, optional) |
>>      +-------------------------------+-------------------------------+
>>
>>
>> So if the 'E' flag is not supported, the receiver can send a SYN + ACK +
>> MP_CAPABLE without the 'E' flag. At the reception of this SYN+ACK, the
>> initiator can generate a token like before, and send it in the 3rd ACK.
>> The draft tries to explain the fallback if this extension is not
>> supported [3]:
>>
>>> A responder that receives a SYN with the MP_CAPABLE option having the
>>> TBD bit set responds with an MP_CAPABLE option and the TBD bit set if
>>> it supports the external keys. Otherwise, it replies with an
>>> MP_CAPABLE option whose TBD bit is reset and follows the procedure
>>> defined in [RFC8684].
>>
>> [3]
>> https://www.ietf.org/archive/id/draft-baerts-tcpm-mptcpext-00.html#section-4.1-7
>>
>> Should it maybe be clearer?
> 
> Yes, thanks for the clarification.

Great, thank you!

Cheers,
Matt