Re: [netmod] I-D Action: draft-kwatsen-netmod-opstate-02.txt
Robert Wilton <rwilton@cisco.com> Fri, 05 February 2016 17:22 UTC
Return-Path: <rwilton@cisco.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D02261B3BCA for <netmod@ietfa.amsl.com>; Fri, 5 Feb 2016 09:22:24 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.502
X-Spam-Level:
X-Spam-Status: No, score=-14.502 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
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 e5rRIUdyI9Nx for <netmod@ietfa.amsl.com>; Fri, 5 Feb 2016 09:22:22 -0800 (PST)
Received: from aer-iport-1.cisco.com (aer-iport-1.cisco.com [173.38.203.51]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7B0251B3BC5 for <netmod@ietf.org>; Fri, 5 Feb 2016 09:22:22 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=6631; q=dns/txt; s=iport; t=1454692942; x=1455902542; h=subject:to:references:from:message-id:date:mime-version: in-reply-to:content-transfer-encoding; bh=6EvNxyKSod5xsoA5rtMIx0FYKr1ZuQ3iFCfuB6zJ9zc=; b=Sn5coAoGmaSvNyFpl0SVTFcYzAPzp1WBzd+6FpR/o4hlS/tZjsGPavl/ MKDo2zlvkTaKCN66sHlrIeasaiVbTm1pj7DOgOagQOBb1/TNFnfh7QIRN hISn2k3Ezjqubn8txhClIlATGopzg8iEo816pK1kDh3HDJX6Gfrq3OWg+ A=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DPAQDT2bRW/xbLJq1ehAxtiFuxDAENgWYXCoUiSgKBbRQBAQEBAQEBgQqEQgEBBAEBASAECwEFNgoRCw4KAgIFFgsCAgkDAgECARUwBgEMBgIBAQUSiAAOsRGOXgEBAQEBAQEBAQEBAQEBAQEBAQEBARV7hReEN4cygToFjSeJToVMiASBW0qDeYMDhVKFboEQEIcwHgEBQoNkPC4BiXsBAQE
X-IronPort-AV: E=Sophos;i="5.22,401,1449532800"; d="scan'208";a="649075668"
Received: from aer-iport-nat.cisco.com (HELO aer-core-1.cisco.com) ([173.38.203.22]) by aer-iport-1.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Feb 2016 17:22:02 +0000
Received: from [10.63.23.97] (dhcp-ensft1-uk-vla370-10-63-23-97.cisco.com [10.63.23.97]) by aer-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id u15HM28V027912; Fri, 5 Feb 2016 17:22:02 GMT
To: Kent Watsen <kwatsen@juniper.net>, "netmod@ietf.org" <netmod@ietf.org>
References: <20160202153033.9430.65698.idtracker@ietfa.amsl.com> <F5BA2439-E24E-40C5-B6EE-3CE6F36E8C48@juniper.net>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <56B4DA3B.7080504@cisco.com>
Date: Fri, 05 Feb 2016 17:22:03 +0000
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0
MIME-Version: 1.0
In-Reply-To: <F5BA2439-E24E-40C5-B6EE-3CE6F36E8C48@juniper.net>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/CvAyNEn98yts3tGbjm7uFw3kHes>
Subject: Re: [netmod] I-D Action: draft-kwatsen-netmod-opstate-02.txt
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.15
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: Fri, 05 Feb 2016 17:22:25 -0000
Hi Kent, and other authors, I've taken a quick look through this draft, and hence have a few comments/questions below. Some of these comments are the same that I made in reference to the previous version of this draft. 1. Minor nit: I think that the key point of this solution is that it is introducing a new applied configuration datastore, but this draft doesn't seem to state that anywhere in the introduction or abstract. E.g. the first reference to the applied configuration datastore is in section 5.1. 2. Personally, for a datastore solution, I would prefer if the new datastore was for the intended configuration, and that the applied configuration was stored in the same datastore (running?) as all the rest of the operational state. If the logical flows of system information is as follows: [candidate] -> intended cfg -> applied cfg -> derived state Then it seems strange to bundle intended cfg & derived state together in one datastore, and to have applied-cfg separate (a bit like an unwanted step child). 3. For the related-state statement, I think that this statement would be better as related-config and expressed in the reverse direction. To give a contrived example of problems with related-state based on the example in 4.1.1: Say I defined a new module that augments the ex-interfaces module that provides some further operational state for an interface. In my specific example it wants to report the actual L2 MTU/MRU values programmed in the hardware. (This could differ from a configured MTU to take into vary 802.1Q VLAN tag overheads or perhaps other slop). module ex-controller { namespace "http://example.com/controller"; prefix ctrlr; import ex-interface { prefix ex-if; } import ietf-yang-related-state { prefix yrs; } // Standard module definition. augment "/ex-if:interfaces/ex-if:interface-state" { when "if:type = 'ianaift:ethernetCsmacd'"; leaf hardware-mru { type { uint16; } description "Actual MRU programmed in hardware"; } leaf hardware-mtu { type { uint16; } description "Actual MTU programmed in hardware"; } } // Separate augmentation required for each related-state // statement. augment "/ex-if:interfaces/ex-if:interface/ex-if:mtu" { when "if:type = 'ianaift:ethernetCsmacd'"; yrs:related-state "/interfaces-state/interface/name=current()/name/hardware-mtu"; } // Separate augmentation required for each related-state // statement. augment "/ex-if:interfaces/ex-if:interface/ex-if:mtu" { when "if:type = 'ianaift:ethernetCsmacd'"; yrs:related-state "/interfaces-state/interface/name=current()/name/hardware-mru"; } } Here you will see that I would need a separate augmentation statement to set up every related-state binding. Further, YANG would need to be modified to even allow such an augmentation of a leaf. If you reverse the sense of the binding to "related-config" then I think that these problems disappear. 4. For section 5.4, get-state operation, it might be useful to clarify that if neither of the applied/derived options are specified then the data that is returned covers both the applied configuration and derived state (i.e. the data that is returned spans two datastores). 5. Am I correct to presume that this draft doesn't provide any support to return intended config, applied config & derived state all in a single request? I appreciate that this isn't included as a formal requirement - but part of me wonders whether this might have been an oversight in the requirements. 6. I can understand the decision of get-diff to reuse edit-config or YANG patch, but I'm not sure that this makes it particularly easy for clients to then process that data. I might be wrong, but I suspect that a solution that returns the values of the intended and applied config nodes in an easier to relate way may be preferable (perhaps something along the lines of the encoding proposed in draft-wilton-netmod-opstate-yang). Thanks, Rob On 02/02/2016 17:54, Kent Watsen wrote: > Hi All, > > I didn’t receive the usual announcement CC-ed to the netmod list, so I’m replying to this one sent to the id-announce list instead. > > Anyway, this morning I posted -01 of this draft and then shortly after -02 to fix some cleanup items I only noticed after -01 was posted :ooops: > > Either way, this update is an overhaul to the original draft posted last September. > > Kent > > > > > > On 2/2/16, 10:30 AM, "internet-drafts@ietf.org" <internet-drafts@ietf.org> wrote: > >> A New Internet-Draft is available from the on-line Internet-Drafts directories. >> >> >> Title : Operational State Enhancements for YANG, NETCONF, and RESTCONF >> Authors : Kent Watsen >> Andy Bierman >> Martin Bjorklund >> Juergen Schoenwaelder >> Filename : draft-kwatsen-netmod-opstate-02.txt >> Pages : 27 >> Date : 2016-02-02 >> >> Abstract: >> This document presents enhancements to YANG, NETCONF, and RESTCONF >> satisfying the requirements set forth in Terminology and Requirements >> for Enhanced Handling of Operational State. >> >> >> The IETF datatracker status page for this draft is: >> https://datatracker.ietf.org/doc/draft-kwatsen-netmod-opstate/ >> >> There's also a htmlized version available at: >> https://tools.ietf.org/html/draft-kwatsen-netmod-opstate-02 >> >> A diff from the previous version is available at: >> https://www.ietf.org/rfcdiff?url2=draft-kwatsen-netmod-opstate-02 >> >> >> Please note that it may take a couple of minutes from the time of submission >> until the htmlized version and diff are available at tools.ietf.org. >> >> Internet-Drafts are also available by anonymous FTP at: >> ftp://ftp.ietf.org/internet-drafts/ >> >> _______________________________________________ >> I-D-Announce mailing list >> I-D-Announce@ietf.org >> https://www.ietf.org/mailman/listinfo/i-d-announce >> Internet-Draft directories: http://www.ietf.org/shadow.html >> or ftp://ftp.ietf.org/ietf/1shadow-sites.txt >> > _______________________________________________ > netmod mailing list > netmod@ietf.org > https://www.ietf.org/mailman/listinfo/netmod
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Gert Grammel
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Martin Bjorklund
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Kent Watsen
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Gert Grammel
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Juergen Schoenwaelder
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Kent Watsen
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Juergen Schoenwaelder
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Juergen Schoenwaelder
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Gert Grammel
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Martin Bjorklund
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Juergen Schoenwaelder
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Juergen Schoenwaelder
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Kent Watsen
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Juergen Schoenwaelder
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Juergen Schoenwaelder
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Robert Wilton
- Re: [netmod] I-D Action: draft-kwatsen-netmod-ops… Kent Watsen