Re: [netmod] system DS polluting intended and operational

"maqiufang (A)" <maqiufang1@huawei.com> Wed, 12 January 2022 08:11 UTC

Return-Path: <maqiufang1@huawei.com>
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 1014D3A08CE for <netmod@ietfa.amsl.com>; Wed, 12 Jan 2022 00:11:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=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 FcbWedrP60X5 for <netmod@ietfa.amsl.com>; Wed, 12 Jan 2022 00:11:17 -0800 (PST)
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 11AB43A08CC for <netmod@ietf.org>; Wed, 12 Jan 2022 00:11:17 -0800 (PST)
Received: from fraeml711-chm.china.huawei.com (unknown [172.18.147.206]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4JYgDT5KtKz67ydD; Wed, 12 Jan 2022 16:08:25 +0800 (CST)
Received: from kwepemm600019.china.huawei.com (7.193.23.64) by fraeml711-chm.china.huawei.com (10.206.15.60) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Wed, 12 Jan 2022 09:11:13 +0100
Received: from kwepemm600017.china.huawei.com (7.193.23.234) by kwepemm600019.china.huawei.com (7.193.23.64) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Wed, 12 Jan 2022 16:11:11 +0800
Received: from kwepemm600017.china.huawei.com ([7.193.23.234]) by kwepemm600017.china.huawei.com ([7.193.23.234]) with mapi id 15.01.2308.020; Wed, 12 Jan 2022 16:11:11 +0800
From: "maqiufang (A)" <maqiufang1@huawei.com>
To: "Sterne, Jason (Nokia - CA/Ottawa)" <jason.sterne@nokia.com>
CC: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: [netmod] system DS polluting intended and operational
Thread-Index: AdftJDTUHgXdkjwsR2+EQX3pIo8vsv//g/MAgDIXCID//OT/0A==
Date: Wed, 12 Jan 2022 08:11:11 +0000
Message-ID: <c304193a45b148b3a5f09ab9aafbea28@huawei.com>
References: <DM6PR08MB5084B9DBE725907D5F4576FE9B709@DM6PR08MB5084.namprd08.prod.outlook.com> <20211209181900.imnvmxjywszmgnwz@anna> <DM6PR08MB5084809297E58263E720A3469B509@DM6PR08MB5084.namprd08.prod.outlook.com>
In-Reply-To: <DM6PR08MB5084809297E58263E720A3469B509@DM6PR08MB5084.namprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.136.100.87]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/_sSu7qm51X8h_F41yr6oZpVC0no>
Subject: Re: [netmod] system DS polluting intended and operational
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
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: Wed, 12 Jan 2022 08:11:22 -0000

Hi, Jason,
Please see my reply inline.

-----Original Message-----
From: netmod [mailto:netmod-bounces@ietf.org] On Behalf Of Sterne, Jason (Nokia - CA/Ottawa)
Sent: Monday, January 10, 2022 11:14 PM
To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Cc: maqiufang (A) <maqiufang1=40huawei.com@dmarc.ietf.org>; netmod@ietf.org
Subject: Re: [netmod] system DS polluting intended and operational

Please see inline.

> -----Original Message-----
> From: Jürgen Schönwälder <j.schoenwaelder@jacobs-university.de>
> Sent: Thursday, December 9, 2021 1:19 PM
> To: Sterne, Jason (Nokia - CA/Ottawa) <jason.sterne@nokia.com>
> Cc: maqiufang (A) <maqiufang1=40huawei.com@dmarc.ietf.org>;
> netmod@ietf.org
> Subject: Re: [netmod] system DS polluting intended and operational
> 
> On Thu, Dec 09, 2021 at 05:51:48PM +0000, Sterne, Jason (Nokia - 
> CA/Ottawa)
> wrote:
> > I wonder if having all the system config appear in intended and 
> > operational
> may be annoying. We didn't want to pollute running with 100s/1000s of 
> lines of unreferenced system config. So maybe putting all that in 
> intended & operational is also ugly ?
> >
> 
> The applied config, part of operational, is the config that is 
> actually used by the device. RFC 8342 has the details.

[>>JTS: ] RFC 8342 (rightly) leaves a lot of grey zone around what is considered used/active and what an implementation is allowed to return in <operational>.  But I'm also concerned about polluting intended.
[Qiufang Ma] I never think that all the system configuration will appear in <operational>. E.g., I don’t think inactive-until-referenced( which is defined in https://datatracker.ietf.org/doc/html/draft-ma-netmod-with-system-00.txt#section-2.3)  system configuration will present in <operational> before it’s referenced.
The presence of system configuration in <operational> only dependents on whether it plays a role in current operational functionality of the device. Going against the definition of <operational> is not the intention.
IMHO there is no such thing as "pollute <operational>/<intended>", if a particular system-defined node is actually in use, it should be present in <operational>, otherwise it is not.
As defined in  NMDA, <intended> holds the configuration that the device attempts to apply. I think we all agree that referenced system configuration should appear in <intended>. 
But unreferenced system configuration(including expansion of system-defined template) is also what is intended to be used by the device and should be subject to validation. Once it is applied successfully, it will appear in <operational>.

> 
> > We should have *some* way that a client can retrieve system
> configuration though.
> >
> > Some potential options (without system flowing 100% of its contents 
> > into
> intended):
> > a) <system> DS that can be read (but doesn't flow into intended or
> operational)
> > b) a "with-system" extension (like "with-defaults"). Returns a merge 
> > of
> running+system (or candidate+system, or intended+system).
> 
> You want to rewrite RFC 8342?

[>>JTS: ] I think we're already discussing potential changes to "system" config in this draft (i.e. having system config flow into intended instead of operational). Maybe we won't do that in the end, but while we're discussing it I wanted to raise other options for consideration to avoid the potential pollution.
[Qiufang Ma] Happy to discuss other options without breaking the definition of <operational>/<intended>.:-)

> 
> > Maybe we'd also want (or maybe want instead) is a way to see
> *referenced* system config (either on its own, or merged with another DS).
> 
> The 'referenced system config' has to be in running since otherwise it 
> can't be referenced.

[>>JTS: ] That's a big part of the debate going on around this draft. I'm leaning the same way as you on this point (for system config), but there doesn't seem to be agreement in the working group. Having the referenced config (at least the list key) explicitly configured by the user in running is a solution I like for this system config problem, but I don't see how we'll handle config templates if running must be valid.  (we should continue that debate on the thread "Must offline-validation of <running> alone be valid?" though).
[Qiufang Ma] On the heavy debate on "MUST offline-validation of <running> alone be valid", the authors are trying to make a compromise to define that all the referenced system configuration MUST be present in <running> and allow the system to auto-populate referenced system configuration into <running> if the client isn’t willing to explicitly configure by themselves.
But I also agree with you that, even we define that the referenced system configuration should be in <running>, the problem may still exist if the validation against the configuration dependents on the template expansion (to populate mandatory fields, satisfy constraints on leafref or when/must statement, etc).
> 
> /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