Re: [Idr] WG LC for draft-ietf-idr-bgp-sendholdtimer-03 (3/23 to 4/12/2024)

Ben Maddison <benm@workonline.africa> Tue, 26 March 2024 06:38 UTC

Return-Path: <benm@workonline.africa>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 54C6DC14F5EF for <idr@ietfa.amsl.com>; Mon, 25 Mar 2024 23:38:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.109
X-Spam-Level:
X-Spam-Status: No, score=-7.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, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=workonline.africa
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 eo8m3XSAY9Pq for <idr@ietfa.amsl.com>; Mon, 25 Mar 2024 23:38:34 -0700 (PDT)
Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2135.outbound.protection.outlook.com [40.107.22.135]) (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 DA9CFC14F5EB for <idr@ietf.org>; Mon, 25 Mar 2024 23:38:30 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hTRu+8wK4zLjSticQXzFfhbtg74UyFQHTvWbHoDPxnQ7J3TjZ5gaMb7f3qw7DKWAbeGC7jwyRHz2K5EgCHCRCO7qaXRLY9FYnvsXzx92wCDg69GxzjZSFU07yk1g2No8gYaYfOQSznJVLwmgpSG+dQtPXMKfw+qTEyuCU7UKM36EwtAMxNSKN7RT8fUxlmgJMTbmMVLzzU1NmC962rw4SoXboAlG4+0xuJLmQMWaI+Qlc2sA9paoT1DFdRW+zz+U1wqXizwJHq7t8ErI02f5UlRj0YQALzdFBrSDcXVpNURV88yxU8Zd2ktmYOvceQ4ET1BiqH6Nl1zkOYnYF4EplQ==
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=Fnsian5BTWE6mCYo4LPLDF7Wukw1ydCHSZdeQyCECPo=; b=ah/DQBl4YWdI97bFFBMGp5J63SO8ZC0FkDGPLx3DESbFvT2FmVQDL00w+/AiT14RzYbScX8zgB0w1OYooLnW34M0lMxHTbyrM3VWD9/9Rm6afvjWylsGi1PLs/K+rdQ4msThK8iUxp6XlrTe+/lHt1YQ+d8vyygYaukXlATjS8WHeKlD7bMA4+9uenaeiUGU6F6VTV3/pvfcaxoCdQ24s+fabuUMbidqqY5+bUdL3XRpQR2qNJTxRpnN0ng1UZa7nMc1qMY1CigrEHWK3S5HKtkdh3No2ftDBARJdQPeRTkQv5eS5FVgQJygFiKMll0YKeqmCbNfITLukPk+3aqDwA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=workonline.africa; dmarc=pass action=none header.from=workonline.africa; dkim=pass header.d=workonline.africa; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=workonline.africa; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Fnsian5BTWE6mCYo4LPLDF7Wukw1ydCHSZdeQyCECPo=; b=dA5CGXIjN9iDbZ8h28loX58et/NexABkibzQ0ZxXbDkam4BElCpM52tMdYQ5I+uuKPPtwMrRxTjRyGpS2cvFJ6M3VQtK3wpoeMgoKGNxOlodya/5zoDfisqhrTLB4Vp3UPXvpx2UogniesdIWgxQFuUQaE8HSCObx6n98qxzVWE=
Received: from AS8P190MB1078.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:2e7::13) by AM0P190MB0689.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:198::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.32; Tue, 26 Mar 2024 06:38:27 +0000
Received: from AS8P190MB1078.EURP190.PROD.OUTLOOK.COM ([fe80::cc5a:f8bb:6118:9752]) by AS8P190MB1078.EURP190.PROD.OUTLOOK.COM ([fe80::cc5a:f8bb:6118:9752%7]) with mapi id 15.20.7409.031; Tue, 26 Mar 2024 06:38:27 +0000
Date: Tue, 26 Mar 2024 08:38:21 +0200
From: Ben Maddison <benm@workonline.africa>
To: Jeffrey Haas <jhaas@pfrc.org>
Cc: Sue Hares <shares@ndzh.com>, "idr@ietf.org" <idr@ietf.org>
Message-ID: <b26p4lddu2ffottyhf3fybq3zuqsvxroozemrttk4s47hvt6nc@g3rqyz5ea2aw>
References: <DM6PR08MB48574BAABAAC203EA2F9F139B3312@DM6PR08MB4857.namprd08.prod.outlook.com> <z7xyp2afi6eqobgl5vpvl6as2yit6lyv3ye4so727gzobl4gdt@jp4akmw5lh7b> <09C3AD6C-E195-454B-8DBB-81EFE0E01E22@pfrc.org> <ekprce6utq55znihvwmuhshynoxy5lxyusbsrefx5ui2hbatmw@qzdu3yupao4z> <28214604-7847-40A2-9F4D-2CC83E3336B2@pfrc.org>
Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="x6sk2ofnvpgtbzt3"
Content-Disposition: inline
In-Reply-To: <28214604-7847-40A2-9F4D-2CC83E3336B2@pfrc.org>
X-ClientProxiedBy: CTXP275CA0018.ZAFP275.PROD.OUTLOOK.COM (2603:1086:100::30) To AS8P190MB1078.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:2e7::13)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8P190MB1078:EE_|AM0P190MB0689:EE_
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: gpKbpijPMwhyTRTHsoxtQwl+AYiO15s0+L9ajCWtuM0cqxM/rM0lfOFuA2icObjGi3NSJ7v13tgp5zj9ecnYXmJ9tq8OZRiOpHu0i8zZ8ZDL0Wz+ElX+pWOD/pzR8iT+j/77vMs8Jfx00mjc4fA1CG8WJ5R+4iB3n35W+b5NPzigd/r0MqM1KR8hko/FccRIoBiyMtwXlexPP/v6wKo7GNumGudsrO2wViHsMx42XtG7608igu8lmoay7j5XZuKt1Xi7iB6ML7gUZZu8T2tRYdCg0Ty3jeBP3GVVCPkMyNXxSmgnghH0ud9c/tIaZoUoKHU6IxjJo6VfOvMo7+BuU9/H3qVWJyCENHaDmPuhleaNXDjbKYNtrdw0OkYxp80kwZNkPb+ZC8sr+qkD8Mrlq6VYhK2GqfvOT7fsgeD865qwOIrdlsRwrPJAtbhAkLHusuwiJFY+v7US8Op2zBIdHA39NFJPjrGUNoRQ33jswDhV+cZ5HA7qlCHiQQz1sXz/lVTSMgOTnr3YVHFtKK0plEYqOgdlabnb/g/G6cz+jbSoe3HUuHTfgiB6q/PRFABrKmxJRgw4jBgHTCm4Z1fklLkpRC+nbNhZ/B86IqjZjlM7hcW3ZRIy02ubAQnNVgrHDVKEBblSLajVgvBgb0L6Pz3yoYrbGwULGP635EnrLpA=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8P190MB1078.EURP190.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230031)(1800799015)(366007)(376005); DIR:OUT; SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: 7+IuP90b6FM5E8r+S7ZtST1J6SJUobco2+t/kvoUG3oGx7AKfKF641NuBZ0tFHIJ95DF92gJpsycqhtfX/xJ24Kui8anSEyN8ytuErTpQqTUyJpzwjHMhg2THZoaJyET88tDXj+Vu29A5QDk65/8XCDQd9qJr2utasrrc9bZDl1i9eBhETXHxXHy9ScdEl+IZbUjqjgKp61YYu1J0L0YGyvoPhMh9p7tgbmvmyRR5JghfvpBcs7edcOyaKcTKZJfWQ5hJ+xfZka8RLi77kXHrHFH6T3V0i3vR84i3AOZtvC7ATiFwGO7yygNequtAJhu1BS6Wsg2VwgMCiqz/7EeNFIoYs1Qs1J0tUpnTAmmhd1yAZj73FUzr1heMUzEMhA/a06qi94mZTIJgRyGp/+btIYfEEz5UpbLxoPG9Se3fRG54w8ypP5eXZDPTGGMD1m2kDKGhEGt5W3Y0/1S7TAEs+jp/u5fZCkxtcqUbi2dqLdGA6jIFMFh8gNT3DrlW47wMiCImDQh/x7pHzSTZKcJgH69jz2rlxKWJwR4jBKzF6zGFMLQF8/FjPqAKPcSVhZQ93Qa7dOjpQFn7h5cAS8KwfxJlNqJqpbGpIe9VMHTfCJQg6kSeFHYR8+NPAbDl+xOkFcM6/ItutHL1WZBzUjxUXqQshhkxs89neEfqn4LBGFIkZbWDmSr9PTwg9Gqs/128PnL49IWmNTACw/HBZ2mkYOaXTgGZT1VokgLctYFXhiC8F3XLKo3d1MkO+ueXAPLbwAjJl4c7yd2IW1XOAceI6cDJQF1bhA6phioZWwDx//Q9drome9G9Y+h1GSQy8Zosa69KI+EXwri1gD99x8UNtfKoKePcsN7c9ybb23SmfFq1AXKHtR8G8MQwf1rVNqaFIRrktkbeSLI/PU237Ib9tl5B7+Jj/5b/XVm0f2BazM54wHAgd/YuYJPN0XIUb22G57utRmMuagTov76GEYFb9nJbNwkYIfI+0J9G9Qrh1Pw1ldVor08mzOMrXU8hrEhzkY2b5MscsZ/iHF6+qoTGmGUqutHoQk8vDAIw1J6xeFbUu1cyd5y9ZIyiZtXy9MmT97DSnbsT/fFVYPye8gVPW2dG53TFx0aYeLYrareEDCXu4NNehTYJmQC4/ZqkTbMMR2B9KPhYb0C81lsciB+RohVmU7JbyhpUeOnu8ncrtBzXXqFa6dhOCy0uvXCfCotNDwvkQUJhNWofdyGTeuRNdrXkdiIpFMby5t/q1D7NIeYQuFdP6zRMu9DtOZMZV8F/36bSNaXReMk0yIKNNjoRMj+lltIn392nyClmTJoV/CTf3SFIBw2maykNCmMW1TgT+8mu0pKi+aoavgZuvLpmaZZIVT+VHz0mLDWMSZIcZg6oxAb10w+qzZxsU/ca8FHOnTUi4O3Bo0excvHwsHoqJntmgDoczqanNBXp2cSaOe4p585gNURb3UQpWTPD9QZw73wuFmokHR4i1FfTrkC8Nau/3Jhf71V8ICvXXv2KKn4WDshi8cPn7XZDow+h3dWe4ERN9pFbZk/hZZ/xGd2lv7FegoeO7qRlZJT1BmC9CWkeC6oz9knQmrmxlUXVS0+XvYx0iTcxUAMMS7UdUDu1g==
X-OriginatorOrg: workonline.africa
X-MS-Exchange-CrossTenant-Network-Message-Id: 1489323f-cbb0-482c-9d25-08dc4d5f57db
X-MS-Exchange-CrossTenant-AuthSource: AS8P190MB1078.EURP190.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2024 06:38:27.3590 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: b4e811d5-95e8-453a-b640-0fba8d3b9ef7
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Q30JsjumtWvDKT4zLyjLq+hPjTtTZuWOMYyKkHMc4TGIkELRFpbpD5k1qBhFwr4L4O7Eid/lBaaLqDg3t7O6mw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0P190MB0689
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/eBuX_iiEgq-e_isdDks5n7vuxbY>
Subject: Re: [Idr] WG LC for draft-ietf-idr-bgp-sendholdtimer-03 (3/23 to 4/12/2024)
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/idr/>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 26 Mar 2024 06:38:43 -0000

Hi Jeff,

On 03/25, Jeffrey Haas wrote:
> 
> > On Mar 25, 2024, at 1:36 PM, Ben Maddison <benm@workonline.africa> wrote:
> > 
> > I think the fundamental issue with the text (and other similar parts or
> > RFC 4271) is that sending the NOTIFICATION is mandatory, and must
> > (obviously) happen before the socket is closed, leading to the naive
> > interpretation that the send must complete before the remainder of the
> > actions can proceed.
> > 
> > Expecting future readers to read this as "oh, I should enqueue this to
> > my write-thread, drop the handle (or future, or whatever), and proceed
> > to kill the socket" is asking too much.
> 
> And thus you come to the crux of the issue.
> 
> Anywhere we say "send a notification" would be vulnerable to stalling
> if we treated it as "... and wait until it's actually put at least
> into TCP locally before closing the connection".  

Yes, that's exactly the conclusion I came to when I was looking at prior
art yesterday.

More generally, that risk is present wherever the FSM's state
transitions are dependent on external factors. I wonder whether we would
find other examples of that if we looked a little harder!

> It might be worth writing this case up as an errata, especially since
> there's discussion about taking BGP forward in the standards track.
> 
> However, I wouldn't recommend trying to special case the correctness
> of this in the sendholdtimer.  That's more ocean than you want to boil
> here.

I find that suggestion surprising. I would think this is an ideal
opportunity to get the language we want for this right.

SendHoldTimer is a natural special case in this respect, since this is
exactly the state we expect to be in when SendHoldTimer_Expires is
fired.

In fact, one could argue that by getting it right here, we fix the issue
for the rest of the FSM, since blocking on sending a NOTIFICATION
elsewhere (for long enough) will cause SendHoldTimer_Expires to fire
eventually.

Cheers,

Ben