Re: [netmod] <running> vs <intended> [was Re: WG Last Call: draft-ietf-netmod-revised-datastores-04 updates]
Robert Wilton <rwilton@cisco.com> Mon, 18 September 2017 15:34 UTC
Return-Path: <rwilton@cisco.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 3F0D41321A2; Mon, 18 Sep 2017 08:34:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Level:
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 XumZhzQvpxxn; Mon, 18 Sep 2017 08:34:21 -0700 (PDT)
Received: from aer-iport-4.cisco.com (aer-iport-4.cisco.com [173.38.203.54]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 709BF134291; Mon, 18 Sep 2017 08:34:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=25102; q=dns/txt; s=iport; t=1505748860; x=1506958460; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=g+21SKw1oMc2CtuQ9zs+VYoBLRoubGPPewDmWwJLS3o=; b=mOYcHkOaQpz+r7lJ492vwXllx0/e0d80Xsz+upI6loW/FC7luqj2qNe+ Cm9vHlQj3Gb0d8xOaSYoEnQ5PYobUSrQNsnsB4g4o1sZJh2mvd+2OHfIV A9tjGD5BdlKWAajpi1lVwiYAQgy0UnLPGe0/OTlQvaCQIAIsbeNsN+HwQ E=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0C1AQD25r9Z/xbLJq1dGQEBAQEBAQEBAQEBBwEBAQEBhSwng3WLFJBLCSKWJoISCoQrgRAChQcXAQIBAQEBAQEBayiFGAEBAQECASNPBxAJAhACBiADBAMCAkYDDgYNBgIBAYonCIwxnWaCJyeLBQEBAQEBAQEBAQEBAQEBAQEBAQEBAR2DK4NSgWMrC4JyhGJMgl2CYAWYQIhIlFWCE4lEJIZ9igCDXodXgTkhATVBTDIhCBwVhheBTz82hVQrghQBAQE
X-IronPort-AV: E=Sophos;i="5.42,413,1500940800"; d="scan'208,217";a="657553748"
Received: from aer-iport-nat.cisco.com (HELO aer-core-3.cisco.com) ([173.38.203.22]) by aer-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Sep 2017 15:34:18 +0000
Received: from [10.63.23.66] (dhcp-ensft1-uk-vla370-10-63-23-66.cisco.com [10.63.23.66]) by aer-core-3.cisco.com (8.14.5/8.14.5) with ESMTP id v8IFYHNT000481; Mon, 18 Sep 2017 15:34:17 GMT
To: Andy Bierman <andy@yumaworks.com>
Cc: Martin Bjorklund <mbj@tail-f.com>, Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, "t.petch" <ietfc@btconnect.com>, Berger Lou <lberger@labn.net>, "netmod@ietf.org" <netmod@ietf.org>, NetMod WG Chairs <netmod-chairs@ietf.org>, draft-ietf-netmod-revised-datastores@ietf.org
References: <CABCOCHQcSUSUZMvzVGyaXObHadZqksKge89_6YcH9PCbxMCG=g@mail.gmail.com> <20170916072403.xp37556z6g7b42gr@elstar.local> <CABCOCHT8CMCAnqf6Oe1bKMzQ-B_0GjrQiQ8YXgQJvCo-NBOBBA@mail.gmail.com> <20170917.154115.791964858062115650.mbj@tail-f.com> <CABCOCHQeQYU+zBpFvVRqCc02nrtyS6Jix1=43it1fn9i9xrD6Q@mail.gmail.com> <c39dced6-9cd5-a7e6-db00-b121bc6de07c@cisco.com> <CABCOCHQYSpRrG93YCb6WxFkuRKNM2e8bjZrVpfDw2kDF1Q7uSQ@mail.gmail.com>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <70a5b659-83a3-5952-b5e7-b8e991c84ef1@cisco.com>
Date: Mon, 18 Sep 2017 16:34:17 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0
MIME-Version: 1.0
In-Reply-To: <CABCOCHQYSpRrG93YCb6WxFkuRKNM2e8bjZrVpfDw2kDF1Q7uSQ@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------26DC4F0C8AFF300D3BDE436C"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/bON4UzhNIiwR7qgywToTOFsksFs>
Subject: Re: [netmod] <running> vs <intended> [was Re: WG Last Call: draft-ietf-netmod-revised-datastores-04 updates]
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.22
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, 18 Sep 2017 15:34:24 -0000
On 18/09/2017 15:21, Andy Bierman wrote: > > > On Mon, Sep 18, 2017 at 2:28 AM, Robert Wilton <rwilton@cisco.com > <mailto:rwilton@cisco.com>> wrote: > > Hi Andy, > > At the moment, NMDA does not change the definition of <running> > for a standards compliant implementation of > YANG/NETCONF/RESTCONF. It is still the same as in 7950, and > <running> must still be a "valid configuration data tree" for a > standards complaint implementation. > > However, the draft acknowledges that proprietary extensions exist > that can modify the behaviour of <running> in ways that means that > <running> is not always a valid configuration data tree. The > draft gives two examples of how <running> could be manipulated > (inactive config, and templates). > > > I don't see how NMDA can both acknowledge and violate the MUST be > valid in RFC 7950. > That statement is quite clear in RFC 7950. I think that NMDA acknowledges non standard extensions could exist that would violate RFC 7950 if/when those features are used, and provides a standard architecture (i.e. the definition of <intended>) to allow devices to expose the effects of those bespoke features in a standard way. Phil had proposed adding the following text on validation: +The implication of the existence of templating mechanisms is that +<running> is now explicitly allowed to be invalid, since the +templating mechanism may be supplying additional data that satisfies +constraints that may not be satisfied by <running> itself. Do you think that text like this would help? Or perhaps more generically, something like this: The implication of the existence of mechanisms that can allow <intended> to differ from <running> means that <running> is no longer guaranteed to always be valid. However, when any change is made to <running>, <intended> must also be updated at the same time and be successfully validated before the operation on <running> can be completed. Obviously this would then need to update 7950. > > If those extensions are standardized then I think it is likely > that those RFCs would need to update 7950 to indicate that > <running> isn't necessarily a "valid configuration data tree" when > those extensions are used. But I don't think that needs to be > stated in the NMDA architecture at this time. > > > Right -- because 7950 still holds any any server that does not have a > valid <running> > is non-compliant to 7950. I agree. Thanks, Rob > > > Andy > > So, what is <intended>? > - this is meant to represent the configuration that the system > will actually attempt to apply after any and all manipulation > (e.g. by templates, inactive removal, perhaps system scripts, etc) > of the configuration has been performed. > - it must always be a valid configuration data tree. > - If <running> is updated then <intended> is always updated at > the same time. Hence, any successful change to <running> requires > that <intended> has also been updated and validated. E.g. in > RESTCONF terms, I think that both <running> and <intended> should > get the same last-change timestamp whenever <running> is updated. > - It provides a known fixed point so that any client can see the > full validated config, i.e. even for devices that implement > proprietary manipulations of the configuring in <running>. > - If the device doesn't support any extra proprietary config > manipulations, then <intended> is identical to <running>. > > I think that we can possibly do a bit more to better define what > <intended is>. My previous suggestion as an improvement was below > (perhaps you think it needs more clarification)?: > > *OLD:* > > 4.4. The Intended Configuration Datastore (<intended>) > > The intended configuration datastore (<intended>) is a read-only > configuration datastore. It is tightly coupled to <running>. When > data is written to <running>, the data that is to be validated is > also conceptually written to <intended>. Validation is > performed on > the contents of <intended>. > > For simple implementations, <running> and <intended> are identical. > > <intended> does not persist across reboots; its relationship with > <running> makes that unnecessary. > > ... > > *NEW:* > > 4.4. The Intended Configuration Datastore (<intended>) > > The intended configuration datastore (<intended>) is a read-only > configuration datastore. It represents the configuration after all > configuration transformations to <running> are performed (e.g. > template expansion, inactive configuration removal), and is the > configuration that the system attempts to apply. > > It is tightly coupled to <running>. When data is written to > <running>, the data that is to be validated is also conceptually > written to <intended>. Validation is performed on the contents of > <intended>. > > For simple implementations, <running> and <intended> are identical. > > The contents of <intended> is also related to the 'config true' > subset of <operational>, and hence a client can determine to what > extent the intended configuration is currently applied by checking > whether the contents of <intended> also appears in <operational>. > > <intended> does not persist across reboots; its relationship with > <running> makes that unnecessary. > > ... > > Thanks, > Rob > > > On 17/09/2017 16:31, Andy Bierman wrote: >> Hi, >> >> My concern is that the definition of <running> is being changed to >> include undefined and undeclared proprietary extensions. >> This is counter-productive to the IETF's stated goal of >> interoperability. >> >> >> Andy >> >> >> On Sun, Sep 17, 2017 at 6:41 AM, Martin Bjorklund <mbj@tail-f.com >> <mailto:mbj@tail-f.com>> wrote: >> >> Andy Bierman <andy@yumaworks.com <mailto:andy@yumaworks.com>> >> wrote: >> > On Sat, Sep 16, 2017 at 12:24 AM, Juergen Schoenwaelder < >> > j.schoenwaelder@jacobs-university.de >> <mailto:j.schoenwaelder@jacobs-university.de>> wrote: >> > >> > > On Fri, Sep 15, 2017 at 02:07:58PM -0700, Andy Bierman wrote: >> > > > Hi, >> > > > >> > > > I strongly agree with Tom that the current draft is an >> update to RFC >> > > 7950. >> > > > I also strongly disagree with the decision to omit RFC >> 2119 in a >> > > standards >> > > > track document. IMO RFC 2119 terms need to be used in >> normative text, >> > > > especially when dealing with XPath and YANG compiler >> behavior. >> > > > >> > > >> > > RFC 8174: >> > > >> > > o These words can be used as defined here, but using >> them is not >> > > required. Specifically, normative text does not >> require the use >> > > of these key words. They are used for clarity and >> consistency >> > > when that is what's wanted, but a lot of normative >> text does not >> > > use them and is still normative. >> > > >> > > >> > So what? >> > Existing YANG specifications use RFC 2119 terms. >> > This draft uses those terms, just with lower-case. >> >> Actually, section 5.1 XPath Context in the revised datastore >> draft >> uses the same language as section 6.4.1 XPath Context in RFC >> 7950. In >> fact, the text in the draft is copied (and adjusted) from RFC >> 7950. >> >> >> /martin >> >> > >
- [netmod] WG Last Call: draft-ietf-netmod-revised-… Lou Berger
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Martin Bjorklund
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Kent Watsen
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Martin Bjorklund
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Lou Berger
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Phil Shafer
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Ladislav Lhotka
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Ladislav Lhotka
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Martin Bjorklund
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Phil Shafer
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Andy Bierman
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Andy Bierman
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Andy Bierman
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Phil Shafer
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Andy Bierman
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Andy Bierman
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Martin Bjorklund
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Andy Bierman
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Andy Bierman
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Martin Bjorklund
- [netmod] <running> vs <intended> [was Re: WG Last… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Juergen Schoenwaelder
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Lou Berger
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Martin Bjorklund
- Re: [netmod] <running> vs <intended> [was Re: WG … Andy Bierman
- Re: [netmod] <running> vs <intended> [was Re: WG … Robert Wilton
- Re: [netmod] <running> vs <intended> [was Re: WG … Andy Bierman
- Re: [netmod] <running> vs <intended> [was Re: WG … Robert Wilton
- Re: [netmod] <running> vs <intended> [was Re: WG … Juergen Schoenwaelder
- Re: [netmod] <running> vs <intended> [was Re: WG … Andy Bierman
- Re: [netmod] <running> vs <intended> Martin Bjorklund
- Re: [netmod] <running> vs <intended> Andy Bierman
- Re: [netmod] <running> vs <intended> Robert Wilton
- Re: [netmod] <running> vs <intended> Martin Bjorklund
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… t.petch
- Re: [netmod] <running> vs <intended> Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Lou Berger
- Re: [netmod] <running> vs <intended> Robert Wilton
- Re: [netmod] <running> vs <intended> t.petch
- Re: [netmod] <running> vs <intended> Robert Wilton
- Re: [netmod] <running> vs <intended> Robert Wilton
- [netmod] RFC 2119 language [was Re: WG Last Call:… Robert Wilton
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Lou Berger
- Re: [netmod] RFC 2119 language Martin Bjorklund
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Juergen Schoenwaelder
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Andy Bierman
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Juergen Schoenwaelder
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Andy Bierman
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Lou Berger
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Juergen Schoenwaelder
- Re: [netmod] RFC 2119 language [was Re: WG Last C… Lou Berger
- Re: [netmod] <running> vs <intended> Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] <running> vs <intended> t.petch
- Re: [netmod] <running> vs <intended> Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton
- Re: [netmod] WG Last Call: draft-ietf-netmod-revi… Robert Wilton