Re: [Teas] [netmod] Question about optional data nodes in YANG

Italo Busi <Italo.Busi@huawei.com> Wed, 19 May 2021 18:22 UTC

Return-Path: <Italo.Busi@huawei.com>
X-Original-To: teas@ietfa.amsl.com
Delivered-To: teas@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C1BC13A1A34; Wed, 19 May 2021 11:22:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 3r_LaqwufQ-w; Wed, 19 May 2021 11:22:16 -0700 (PDT)
Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 465CF3A192C; Wed, 19 May 2021 11:22:16 -0700 (PDT)
Received: from fraeml712-chm.china.huawei.com (unknown [172.18.147.201]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4Flgs11fnzz6Vyck; Thu, 20 May 2021 02:10:29 +0800 (CST)
Received: from fraeml715-chm.china.huawei.com (10.206.15.34) by fraeml712-chm.china.huawei.com (10.206.15.61) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Wed, 19 May 2021 20:22:10 +0200
Received: from fraeml715-chm.china.huawei.com ([10.206.15.34]) by fraeml715-chm.china.huawei.com ([10.206.15.34]) with mapi id 15.01.2176.012; Wed, 19 May 2021 20:22:10 +0200
From: Italo Busi <Italo.Busi@huawei.com>
To: 'Andy Bierman' <andy@yumaworks.com>
CC: "netmod@ietf.org" <netmod@ietf.org>, "teas@ietf.org" <teas@ietf.org>
Thread-Topic: [netmod] Question about optional data nodes in YANG
Thread-Index: AddM0kod0IYHJNBMS/G0OPlt3Ipjtv//5GkA///ZhwA=
Date: Wed, 19 May 2021 18:22:10 +0000
Message-ID: <2aea140d56b74a9e8f99044a92dcee9d@huawei.com>
References: <bcb91cd543414a74a42605827bf7c71e@huawei.com> <CABCOCHR=1=Cb_rHEbn0UWDutPvVV594uaxxx8tivynwHpMqdwA@mail.gmail.com>
In-Reply-To: <CABCOCHR=1=Cb_rHEbn0UWDutPvVV594uaxxx8tivynwHpMqdwA@mail.gmail.com>
Accept-Language: it-IT, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.47.94.178]
Content-Type: multipart/alternative; boundary="_000_2aea140d56b74a9e8f99044a92dcee9dhuaweicom_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/teas/cAPaoNG-NaSRGWcL7q_EBdCI1CQ>
Subject: Re: [Teas] [netmod] Question about optional data nodes in YANG
X-BeenThere: teas@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Traffic Engineering Architecture and Signaling working group discussion list <teas.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/teas>, <mailto:teas-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/teas/>
List-Post: <mailto:teas@ietf.org>
List-Help: <mailto:teas-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/teas>, <mailto:teas-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 19 May 2021 18:22:21 -0000

Then, what would be the difference between an optional and a mandatory data node?

In some RFC8795 implementations, the support or not support of a data node may also depend on the specific network-type so in this case the data node cannot be marked as not-supported

Italo

From: Andy Bierman [mailto:andy@yumaworks.com]
Sent: mercoledì 19 maggio 2021 19:35
To: Italo Busi <Italo.Busi@huawei.com>
Cc: netmod@ietf.org; teas@ietf.org
Subject: Re: [netmod] Question about optional data nodes in YANG



On Wed, May 19, 2021 at 10:12 AM Italo Busi <Italo.Busi@huawei.com<mailto:Italo.Busi@huawei.com>> wrote:
We have got a question about how to deal with YANG optional data nodes and in particular how can a client know which optional data node has been implemented by a server.

We think that there is no issue with config=false data nodes. When the client retrieves a YANG tree from the operational datastore it will not get the data nodes that are not implemented by the server, as reported in section 5.3 of RFC8342:

If no value is returned for a given node, then
this implies that the node is not used by the device.

Is our understanding correct?



The server is expected to advertise a deviation for not-supported for every subtree
it does not implement.

https://datatracker.ietf.org/doc/html/rfc7950#section-7.20.3.2




       deviation /base:system/base:daytime {

         deviate not-supported;

       }


Andy



The doubt we have is about the config=true data nodes.

How can the client know whether the server supports the configuration of an optional config=true data node before trying to configure them and getting an error message?

We understand that it is possible to know whether a YANG model or a feature of the YANG model (i.e. a group of data nodes) is supported by the server. The question is rather on specific data nodes with config=true.

We have found scenarios where it could be useful to implement a sub-set of optional data nodes (profile) of an IETF standard YANG model, but it is not very clear how a client can understand which profile has been implemented by the server.

Some examples of profiles of an IETF standard YANG model are provided in:

https://datatracker.ietf.org/doc/html/draft-busi-teas-te-topology-profiles

Thanks, Aihua and Italo

_______________________________________________
netmod mailing list
netmod@ietf.org<mailto:netmod@ietf.org>
https://www.ietf.org/mailman/listinfo/netmod