Re: [babel] [netmod] NULL value for uint16

Jürgen Schönwälder <j.schoenwaelder@jacobs-university.de> Mon, 13 September 2021 20:05 UTC

Return-Path: <J.Schoenwaelder@jacobs-university.de>
X-Original-To: babel@ietfa.amsl.com
Delivered-To: babel@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 30CB63A0870; Mon, 13 Sep 2021 13:05:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, MSGID_FROM_MTA_HEADER=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=jacobsuniversity.onmicrosoft.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 X_SYiy33hmKQ; Mon, 13 Sep 2021 13:05:02 -0700 (PDT)
Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2048.outbound.protection.outlook.com [40.107.22.48]) (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 E7DF73A086A; Mon, 13 Sep 2021 13:05:01 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AVYvipRn9PGy2qz9Q9o5XlRUwnAG+wpNboh/qFknaMHLkSb28nMU045BPFgI+HiTMNM1nNi7qk40R52l0WY3bHzzsneIJAxAgIWPQNekg8GWQ4uUj/d6N7FWADtBbyheFfq1u0q8kLAHeIN1RDk7rRKUk84agNephiX9HQYJzsCOOMu/5lDqIiGCT7N2ZzhmrL1X5zTpnb0ak+nRz4Wv02SVvwWqkKoNg8nqJL56fOK3Z9Hjq2tj85ZyqWd2z6XF54KI24SI1fUwXdhEdKGf73SA8op9Gl0nf54oTPoyUkaRaD5Usvb7AkUmEXzjHbs5y3oyARnfmg7DzOCwK5ofNg==
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=+Zfr60QRVo8aemvPIWwqiPZzXGNdBTrYkSNAse22efY=; b=b3CKWsATmY3OPQ2kOxwpSHVkbpVdmy3vI/b1+5gf8j3b/6C8lCVo6xGwAoQT9yaom+wvRF6Su2xXqnTh1MRff/retxJav+lONmrr8wr8fhebS6oMQ2rJWR/uCy2NIl+njxmvnlvLI0JqDox+W+uXgXc2w/qJZ5upw/pFY6lQTgTNKfvVKk7nfJraQ2+OVQJWcJ7jwzU6zxxidAlfOFjpkHSqrIqAZ5kRidvgk9IhBtkMqRlAHqw0YW7okRG/WxLFDbdTr5vHOYeR3wGxGj4tWmdcTTxNV4+Y6TIUm8jFyHiEIgih3K8pMDo0xi0SW7KEStW7uLWtxGsIoNI2Ks3YRQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=jacobs-university.de; dmarc=pass action=none header.from=jacobs-university.de; dkim=pass header.d=jacobs-university.de; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jacobsuniversity.onmicrosoft.com; s=selector2-jacobsuniversity-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+Zfr60QRVo8aemvPIWwqiPZzXGNdBTrYkSNAse22efY=; b=mngsPAT176h442U+Zj+oc3pIj6KqiIIQGQtikIkRVIoIq2QCi9k9t+kr8AmhapWhsMI5LducUwAis/tePC7TfsvWbiV//FulwU1Rw+cEpCV2f0hd/skunckhjx9ranceJ+kj0w7+s9nt/emcOv3tWF/tPGHzFup62JnwpvY9GUY=
Authentication-Results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=jacobs-university.de;
Received: from AM0P190MB0641.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:194::23) by AM0P190MB0737.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:195::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.17; Mon, 13 Sep 2021 20:04:55 +0000
Received: from AM0P190MB0641.EURP190.PROD.OUTLOOK.COM ([fe80::6539:572:25dd:e6ab]) by AM0P190MB0641.EURP190.PROD.OUTLOOK.COM ([fe80::6539:572:25dd:e6ab%7]) with mapi id 15.20.4500.018; Mon, 13 Sep 2021 20:04:55 +0000
Date: Mon, 13 Sep 2021 22:04:55 +0200
From: Jürgen Schönwälder <j.schoenwaelder@jacobs-university.de>
To: Mahesh Jethanandani <mjethanandani@gmail.com>
Cc: Lou Berger <lberger@labn.net>, "netmod@ietf.org" <netmod@ietf.org>, Babel at IETF <babel@ietf.org>
Message-ID: <20210913200455.xot7lihpmqiemm5c@anna.jacobs.jacobs-university.de>
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Mail-Followup-To: Mahesh Jethanandani <mjethanandani@gmail.com>, Lou Berger <lberger@labn.net>, "netmod@ietf.org" <netmod@ietf.org>, Babel at IETF <babel@ietf.org>
References: <AM7PR07MB624802516EFB174B6912C5DAA0D69@AM7PR07MB6248.eurprd07.prod.outlook.com> <20210910121430.kofyvd2q3ludm2pk@anna.jacobs.jacobs-university.de> <AM7PR07MB62482A4271AF1CA5013EB136A0D69@AM7PR07MB6248.eurprd07.prod.outlook.com> <b1b1cd18-537f-561f-dcb1-9aca41b7d3c9@labn.net> <20210910200902.bic4rhyhp75bgsjz@anna.jacobs.jacobs-university.de> <BBC6AA9F-86C1-4A9C-86FD-AD77668CA9D9@gmail.com>
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <BBC6AA9F-86C1-4A9C-86FD-AD77668CA9D9@gmail.com>
X-ClientProxiedBy: AM0PR04CA0089.eurprd04.prod.outlook.com (2603:10a6:208:be::30) To AM0P190MB0641.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:194::23)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
Received: from localhost (212.201.44.244) by AM0PR04CA0089.eurprd04.prod.outlook.com (2603:10a6:208:be::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4500.16 via Frontend Transport; Mon, 13 Sep 2021 20:04:55 +0000
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: bac7b546-d0de-4b35-25d3-08d976f1c186
X-MS-TrafficTypeDiagnostic: AM0P190MB0737:
X-MS-Exchange-Transport-Forked: True
X-Microsoft-Antispam-PRVS: <AM0P190MB0737A0E8A3C5B0AF38C4E898DED99@AM0P190MB0737.EURP190.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: DRmyuTtKj0znY17PQtDZJzjjZkUYnSOWTlXpo94aoAtjmCRRLQFbg6ssOZrXR4nky1NZ3SZSbcx6jRygLSTZKOuwlusfoCsZNKuUPEw7z0CPLSsv7c7IT6JF45J0W+8y+MON9Tb+ZAV5+L4UP4hTB8qt9wDeKuWcokVM7nZeUD3528c1MTCX0+glwKopWBCi2ImRJFkVIcwbwv/zzPnwSpFYsBvOs7wwZ4dzzGuU1v7TDw60NWBAO046XJ7GZ46W1ZRWh/NrI/CnagITt9CR8bUtOHnVloIh+Y8bs85DipOqdq1FI2656ircaYkD+KgjyQzR5OESCIWdJ1ZJbaDAFRPTVtVpOc6f7v4qwGuWvPkliz3iXVX6tZWahzD4fmUFbqpws4q+ojevd8qae1ky6Cj83Zf5uKUB+RBihjxCUyDRUNHW2dRzLewFDHU3+uq47BL9mNUZhXq2Yw7YpPbzWCasWOrx6sUhp9yJ6c/cusTFP4UueNq9u/+BBILaxIJqEVeYdKq3o3kU2xZOZokRsOKHaAWG9p5MnFN7ve9H/BoaOPkGRTXrdEA6wuJ9b+lIX5J38IlCWvaP+LLgnKvbe7xOBqlMJhmyWnh5Pwh6hgJu4gdLg5+xV7iJbvMgUQGkWW/YcmjW61dgGET7AyGNIUNVxqZjiroJ4i2123onME6gDkSzkV6CMXb7jtqPtLPuoc4K62mVAbNh7SwTciCKSWqqn9RmEmIKwYMz/SY//sL/7bwx1Ygu5uPRPAeIa/G5bhnfd1zEDaG9aGwcmr08VmRsHQstovMISzkUU4XmUj8=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM0P190MB0641.EURP190.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(346002)(396003)(376002)(39860400002)(366004)(136003)(26005)(316002)(52116002)(966005)(5660300002)(38100700002)(38350700002)(86362001)(6496006)(1076003)(85202003)(40140700001)(85182001)(66574015)(83380400001)(53546011)(66556008)(66476007)(66946007)(3450700001)(8676002)(4326008)(6916009)(956004)(8936002)(186003)(478600001)(2906002)(54906003)(6486002); DIR:OUT; SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: eCTYpfBsAo0OKMXzJxhoKEPuCFw4B1QO+VMhtSWRvAuB42whM85Ub6YVOcgK8DrvWAfRE6LlKsJdQavEryULv9kL0bjj8zfMvGWmvkpxFr+UYuExGo3k23cQNY1VH6BjBVEE7TL8zpsI+t64F/boF0gCXIiEmNuIQyfTomcPWTanezVkdL83I9Sf9olGpj0j9V4Kseewi+DGC0SkQY3tWxgxv5A+OGqcE89OWHXDwpHMGcAzXvzGzvxwRN34zJzx3IUtilyFMkMcdQXOKDW+7iN0L/PHylf+cJBQyY024/u4bfR/+TeL/iWiYyv1SYpJnOk/X1rJgr8nLgeCV1q6jPVwa3XBjJSIFAeZC0ByZTkXRH75m0eRpe12XYMNSbu6d41taMR6eG8pI/6/A0vD7PldJHxBCmVhR/DyKgnmz0zIjTDeI0/k8ib6hNLzo/GzvfWMwhpbhoOlZHsH4TFx6b6Yi6/X6azmkuYuX7+Kq0utA4V41h1knY25Ps6Jht3k4VZfQ4wqaRWTt/gUm7dJpGFAE/wjErOEcayCqGZ/7jfo82/NvymBdq5D89IzQC5AQd+l8zOh81xD/PqNplisWT3+cjyg901N75grDIxFF65c8jukG2929yvE82Kd/vZsZbesrw+V65PRHSHo4luXYuEEeI1bxmTowBS9QQSPGPC6YwiWwxhT1b+HlsDkniFzTyGfYf8XUCT8peNAZP1OpkEpTwW6jmvbueXaMbByTUF4YQZCqY6E7cUZo42DGDsTyo8Bnu7pmGx/rvP/cYWnX7PONd8zkta/Avj86HPMZuB9PPZmccg1ea9LWD3Fk3EGzXmYepdrmsfUMQFfT4t5sqnphiKGDQJgPXPXH2DJGyVPowdJFzp18tgrRIGQ+EwAqvFfGnvkTux2ryumfiLoqyID9tlTh5iSCcvqPen7+Db7ckPS9IzIdrVt/ikuMGqMKshW2sBforTU2NOWqDmRXvlz6Y1Ha4LlNGhb3V1fA2tSfW5slNgrLWmGh7Mxj8j0//Jjsehc/IPK53b4oXK3rm0A1bjUTzJSvMH68pe9mAQRAAHZn0ucAtTiFVzHu2gce54pT3itxei9Zxp4pJi3U8Snvf9lEtiSp5VeJa3sc2v24Dkd4qFZ85F9Mked+NCD5Ft8Wd1PeOBr9whNgS00+UkuBYjxts0twg/5zlDTzI1LCRl9CpMLwdGJxl8La3pXBmqvZW8m7FsAV+O233kBCXUVRT3ON8fkwLTUadyO7Nwf4bneP/yX3MKQtGu1MUC/8djGwFZfiwjX/ahuCNX5hAg7GKJRDNDUpNzBhofVfCPQ9xI0FzTYddHjJbndedXH
X-OriginatorOrg: jacobs-university.de
X-MS-Exchange-CrossTenant-Network-Message-Id: bac7b546-d0de-4b35-25d3-08d976f1c186
X-MS-Exchange-CrossTenant-AuthSource: AM0P190MB0641.EURP190.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2021 20:04:55.6502 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f78e973e-5c0b-4ab8-bbd7-9887c95a8ebd
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: cpa3kXZ7UfoOYXzJggidrp3xinIKsu3NlvGvXr9966kJtKfC5XH5EBgdIHfUVlLbTzujq3iYvX62ojcUsjpXuRZIA6wf6tj9SszHnw7fJn0=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0P190MB0737
Archived-At: <https://mailarchive.ietf.org/arch/msg/babel/YuHpST9NL-jMN0bgaIMWKbzunhk>
Subject: Re: [babel] [netmod] NULL value for uint16
X-BeenThere: babel@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "A list for discussion of the Babel Routing Protocol." <babel.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/babel>, <mailto:babel-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/babel/>
List-Post: <mailto:babel@ietf.org>
List-Help: <mailto:babel-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/babel>, <mailto:babel-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 13 Sep 2021 20:05:10 -0000

Hi Mahesh,

management interface usually do not change protocol semantics (for the
simple reason that protocol engines do not necessarily know which
management interfaces control them and their peers).

Does the Babel RFC reserve the special sequence number 0? If not, does
this document formally update the Babel RFC to reserve the sequence
number 0? And will implementations and deployments follow on or will
we see "old" and "updated" implementations in the wild causing
operational trouble?

/js

On Mon, Sep 13, 2021 at 12:49:33PM -0700, Mahesh Jethanandani wrote:
> [Bringing in babel WG, instead of maintaining two threads]
> 
> 
> Hi Juergen,
> 
> 
> > On Sep 10, 2021, at 1:09 PM, Jürgen Schönwälder <j.schoenwaelder@jacobs-university.de> wrote:
> > 
> > On Fri, Sep 10, 2021 at 01:40:03PM -0400, Lou Berger wrote:
> > 
> >> and it references an RFC that says:
> >> 
> >>      This is a 16-bit unsigned integer;
> >>      if the data model uses zero (0) to represent NULL values for
> >>      unsigned integers, the data model MAY use a different data type
> >>      that allows differentiation between zero (0) and NULL.
> > 
> > We are talking about RFC 9046? RFC 9046 repeats this sentence several
> > times but I find it difficult to infer the intended meaning. If 0 is a
> > legal value, you can't have it represent "NULL" at the same time.
> 
> There are five definitions in the Babel YANG model <https://www.ietf.org/archive/id/draft-ietf-babel-yang-model-11.html> that use NULL to represent a special meaning.
> 
> With ‘babel-route-received-metric’, and ‘babel-route-calculated-metric’ values use NULL or 0 to represent that a route was NOT received. A non-zero value indicates that a route was received and subsequently advertised.
> 
> With ‘babel-expo-mcast-hello-seqno’, and ‘babel-exp-ucast-hello-seqno’ a value of NULL or 0 is used to represent that a multicast, or unicast hello packets respectively are NOT expected or processing of multicast/unicast packets is not enabled. Although not explicit stated, it also means that the sequence number cannot be a 0.
> 
> Finally, with ‘babel-ucast-hello-seqno’ a value of NULL or 0 is used to represent a unicast hello is not being sent. A non-zero value reflects the current sequence number in use for unicast hellos. Again, although not explicit, it also means that the sequence number cannot be a 0.
> 
> > 
> > In YANG, we tend to not instantiate leafs that do not have a value.
> > Anyway, if a YANG author wants to report a special value to indicate
> > that there is no value, then you have design for it and reserve and
> > set aside a special value from the number space or use a union.
> 
> This YANG model reserves the value of 0 to indicate that these leafs are not set or the particular attribute is not enabled.
> 
> Thanks.
> 
> > 
> > RFC 9046 uses the same text for things like sequence numbers. Skimming
> > RFC 8966, it seems sequence numbers are 16-bit integers:
> > 
> >   Sequence numbers (seqnos) appear in a number of Babel data
> >   structures, and they are interpreted as integers modulo 2^(16).
> > 
> > The text in the context makes me believe they are an unsigned 16-bit
> > integers. If so, there simply is no way to use 0 to indicate that a
> > sequence number is absent. The problem really might be the text in RFC
> > 9046.
> > 
> > /js
> > 
> > -- 
> > Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> > Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> > Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
> > 
> > _______________________________________________
> > netmod mailing list
> > netmod@ietf.org
> > https://www.ietf.org/mailman/listinfo/netmod
> 
> Mahesh Jethanandani
> mjethanandani@gmail.com
> 
> 
> 
> 
> 

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>