Re: [netmod] draft-ietf-netmod-rfc8407bis: must + error-message for "config false"

Kent Watsen <kent@watsen.net> Mon, 06 November 2023 22:26 UTC

Return-Path: <0100018ba6be8b0f-4059eb68-ec6a-46d9-9b2d-48ee5fbd7b2c-000000@amazonses.watsen.net>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6ECDDC151557 for <netmod@ietfa.amsl.com>; Mon, 6 Nov 2023 14:26:32 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.905
X-Spam-Level:
X-Spam-Status: No, score=-1.905 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, 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=amazonses.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 XxE4RyQ0sb1U for <netmod@ietfa.amsl.com>; Mon, 6 Nov 2023 14:26:28 -0800 (PST)
Received: from a48-93.smtp-out.amazonses.com (a48-93.smtp-out.amazonses.com [54.240.48.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 770FDC151548 for <netmod@ietf.org>; Mon, 6 Nov 2023 14:26:28 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=224i4yxa5dv7c2xz3womw6peuasteono; d=amazonses.com; t=1699309587; h=Content-Type:Mime-Version:Subject:From:In-Reply-To:Date:Cc:Content-Transfer-Encoding:Message-Id:References:To:Feedback-ID; bh=xuIZJI/0F3NVa29BOmcrQbuu3x+yN81/RORPhBT/F1g=; b=Mj0w8KzykbVX09l4Pv9uUOOrwluOK3I0gfXsXqeQ/BJHZ9ToYhHY06NxdcWYPI1c O5+4Qhqn+rVcv3uI87cClsTvlmMjVdMFotvGRpI1oKnR5LNHS3Y0g+lZyHUkSmdj1kX HqsRiiQGcSOSEul8Y4B6FVkpbWART90V9LJ5Xg64=
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.600.7\))
From: Kent Watsen <kent@watsen.net>
In-Reply-To: <DM6PR08MB5084EBAE193D62AF9FF922449BAAA@DM6PR08MB5084.namprd08.prod.outlook.com>
Date: Mon, 06 Nov 2023 22:26:27 +0000
Cc: "Rob Wilton (rwilton)" <rwilton=40cisco.com@dmarc.ietf.org>, Jürgen Schönwälder <jschoenwaelder@constructor.university>, "mohamed.boucadair@orange.com" <mohamed.boucadair@orange.com>, "netmod@ietf.org" <netmod@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-ID: <0100018ba6be8b0f-4059eb68-ec6a-46d9-9b2d-48ee5fbd7b2c-000000@email.amazonses.com>
References: <DU2PR02MB101603161862E378A02A4BDD388A0A@DU2PR02MB10160.eurprd02.prod.outlook.com> <ZUICMr0AgbPip1qK@alice.eecs.jacobs-university.de> <BY5PR11MB4196CCB231A271136077F2FAB5A6A@BY5PR11MB4196.namprd11.prod.outlook.com> <DM6PR08MB5084EBAE193D62AF9FF922449BAAA@DM6PR08MB5084.namprd08.prod.outlook.com>
To: "Jason Sterne (Nokia)" <jason.sterne@nokia.com>
X-Mailer: Apple Mail (2.3731.600.7)
Feedback-ID: 1.us-east-1.DKmIRZFhhsBhtmFMNikgwZUWVrODEw9qVcPhqJEI2DA=:AmazonSES
X-SES-Outgoing: 2023.11.06-54.240.48.93
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/tIvUtgJ2ktGsTI-6eEcFb2Au3i8>
Subject: Re: [netmod] draft-ietf-netmod-rfc8407bis: must + error-message for "config false"
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Nov 2023 22:26:32 -0000

“Must” statements on opstate usefully helps clients know when certain values will always appear, enabling better optimization and usability.

E.g., for Syslog messages, there must always be a timestamp, severity, and a message.  It would be unhelpful for the server to not declare its intention to always send these fields.

Kent


> On Nov 6, 2023, at 10:49 AM, Jason Sterne (Nokia) <jason.sterne@nokia.com> wrote:
> 
> +1 on what Jurgen and Rob are pointing out here.
> 
> I'm not sure it makes a ton of sense to actually have a lot of "must" statements in state models. We could consider discouraging them?  (but we need to continue *allowing* them).
> 
> Jason
> 
>> -----Original Message-----
>> From: netmod <netmod-bounces@ietf.org> On Behalf Of Rob Wilton
>> (rwilton)
>> Sent: Thursday, November 2, 2023 5:17 AM
>> To: Jürgen Schönwälder <jschoenwaelder@constructor.university>;
>> mohamed.boucadair@orange.com
>> Cc: netmod@ietf.org
>> Subject: Re: [netmod] draft-ietf-netmod-rfc8407bis: must + error-message
>> for "config false"
>> 
>> 
>> CAUTION: This is an external email. Please be very careful when clicking
>> links or opening attachments. See the URL nok.it/ext for additional
>> information.
>> 
>> 
>> 
>> Specifically regarding MUST statements on state date, RFC 8342 section 5.3,
>> also has this statement (which effectively aligns to Jürgen's last paragraph):
>> 
>>   <operational> SHOULD conform to any constraints specified in the data
>>   model, but given the principal aim of returning "in use" values, it
>>   is possible that constraints MAY be violated under some circumstances
>>   (e.g., an abnormal value is "in use", the structure of a list is
>>   being modified, or remnant configuration (see Section 5.3.1) still
>>   exists).  Note that deviations SHOULD be used when it is known in
>>   advance that a device does not fully conform to the <operational>
>>   schema.
>> 
>>   Only semantic constraints MAY be violated.  These are the YANG
>>   "when", "must", "mandatory", "unique", "min-elements", and
>>   "max-elements" statements; and the uniqueness of key values.
>> 
>>   Syntactic constraints MUST NOT be violated, including hierarchical
>>   organization, identifiers, and type-based constraints.  If a node in
>>   <operational> does not meet the syntactic constraints, then it
>>   MUST NOT be returned, and some other mechanism should be used to
>> flag
>>   the error.
>> 
>> Regards,
>> Rob
>> 
>> 
>> -----Original Message-----
>> From: netmod <netmod-bounces@ietf.org> On Behalf Of Jürgen
>> Schönwälder
>> Sent: Wednesday, November 1, 2023 7:46 AM
>> To: mohamed.boucadair@orange.com
>> Cc: netmod@ietf.org
>> Subject: Re: [netmod] draft-ietf-netmod-rfc8407bis: must + error-message
>> for "config false"
>> 
>> Here is what RFC 7950 says:
>> 
>>  7.5.4.1.  The "error-message" Statement
>> 
>>     The "error-message" statement, which is optional, takes a string as
>>     an argument.  If the constraint evaluates to "false", the string is
>>     passed as <error-message> in the <rpc-error> in NETCONF.
>> 
>> Since state data is not (directly) modified by processing RPCs, which
>> <rpc-error> would carry the <error-message>? If the answer is 'none',
>> then why define an <error-message> for state data?
>> 
>> My take has always been that operational state data should report as
>> much as possible the true state of the device - even if the current
>> state violates certain constraints. The entity to check constraints
>> would be a managing system, not the managed system. That said, the
>> wording in section 7.5.4.1 indicates that the designers had servers
>> processing RPCs in mind.
>> 
>> /js
>> 
>> On Tue, Oct 31, 2023 at 10:40:15AM +0000,
>> mohamed.boucadair@orange.com wrote:
>>> Hi all,
>>> 
>>> In the context of https://datatracker.ietf.org/doc/draft-ietf-pce-pcep-yang/,
>> Dhruv has received in the past a comment about the use of "must + error-
>> message" for "config false" data nodes. He reported that comment at
>> https://mailarchive.ietf.org/arch/msg/yang-
>> doctors/gWnXnyNHPVv_nZB1PQjThAwP1JY/, but without any follow-up.
>>> 
>>> rfc7950#section-8.1 includes a provision for the use of "must" for state
>> data, but silent about the use of error-message. Some guidance for authors
>> may be useful here.
>>> 
>>> The following options are being considered:
>>> 
>>> (1) Remove both must and error-message for config false data nodes
>>> (2) Remove error-message but keep the must
>>> (3) keep both
>>> 
>>> I think that (3) is OK as this is a formal way to detect anomalies in state
>> data, but I'm open to hear what the WG thinks.
>>> 
>>> Opinions whether we need to include a mention about this in draft-ietf-
>> netmod-rfc8407bis are welcome.
>>> 
>>> Thank you.
>>> 
>>> Cheers,
>>> Med
>>> 
>>> 
>> __________________________________________________________________
>> __________________________________________
>>> Ce message et ses pieces jointes peuvent contenir des informations
>> confidentielles ou privilegiees et ne doivent donc
>>> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu
>> ce message par erreur, veuillez le signaler
>>> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages
>> electroniques etant susceptibles d'alteration,
>>> Orange decline toute responsabilite si ce message a ete altere, deforme ou
>> falsifie. Merci.
>>> 
>>> This message and its attachments may contain confidential or privileged
>> information that may be protected by law;
>>> they should not be distributed, used or copied without authorisation.
>>> If you have received this email in error, please notify the sender and delete
>> this message and its attachments.
>>> As emails may be altered, Orange is not liable for messages that have
>> been modified, changed or falsified.
>>> Thank you.
>> 
>>> _______________________________________________
>>> netmod mailing list
>>> netmod@ietf.org
>>> https://www.ietf.org/mailman/listinfo/netmod
>> 
>> 
>> --
>> Jürgen Schönwälder              Constructor University Bremen gGmbH
>> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
>> Fax:   +49 421 200 3103         <https://constructor.university/>
>> 
>> _______________________________________________
>> netmod mailing list
>> netmod@ietf.org
>> https://www.ietf.org/mailman/listinfo/netmod
>> _______________________________________________
>> netmod mailing list
>> netmod@ietf.org
>> https://www.ietf.org/mailman/listinfo/netmod
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod