Re: [netmod] draft-ietf-netmod-revised-datastores-03 feedback

Robert Wilton <rwilton@cisco.com> Wed, 12 July 2017 16:56 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 C3645127978; Wed, 12 Jul 2017 09:56:54 -0700 (PDT)
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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, 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 rZfVk24brYJR; Wed, 12 Jul 2017 09:56:52 -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 B6E5B1300CF; Wed, 12 Jul 2017 09:56:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=15941; q=dns/txt; s=iport; t=1499878611; x=1501088211; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to; bh=1Yw85e12xvvuMUFHVeXAQdD4ruqdm6FBx5u6wMZ7l1s=; b=lJdyadfLwHYR/A/zXFuN/EgIxKWDORelhPlOhF6e/WrO1QUd5Doztv6J vaJ1473XK/lgYR6WJyGMBb2k8f2fuxtMjKDMEKjRoetmthfXEYGBwvJIv TqSZcFBIFB736xT4lUssmKVzd3LIcMx/5nZG4U4vSBKV29mCc1D44W8uY k=;
X-IronPort-AV: E=Sophos;i="5.40,350,1496102400"; d="scan'208,217";a="656043594"
Received: from aer-iport-nat.cisco.com (HELO aer-core-2.cisco.com) ([173.38.203.22]) by aer-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 12 Jul 2017 16:56:50 +0000
Received: from [10.63.23.142] (dhcp-ensft1-uk-vla370-10-63-23-142.cisco.com [10.63.23.142]) by aer-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id v6CGundS030320; Wed, 12 Jul 2017 16:56:50 GMT
To: Benoit Claise <bclaise@cisco.com>, NETMOD Working Group <netmod@ietf.org>
References: <e032599e-2b7a-9b26-efa4-5ed1de3ef218@cisco.com>
Cc: "draft-ietf-netmod-revised-datastores@ietf.org" <draft-ietf-netmod-revised-datastores@ietf.org>
From: Robert Wilton <rwilton@cisco.com>
Message-ID: <3bb7e104-6907-dcf5-191e-eb8827595423@cisco.com>
Date: Wed, 12 Jul 2017 17:56:49 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
In-Reply-To: <e032599e-2b7a-9b26-efa4-5ed1de3ef218@cisco.com>
Content-Type: multipart/alternative; boundary="------------8D069251811493D55A15D9F0"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/CZu8TbzzStUybK-mI2MxpOsXF3Q>
Subject: Re: [netmod] draft-ietf-netmod-revised-datastores-03 feedback
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: Wed, 12 Jul 2017 16:56:55 -0000

Hi Benoit,

Thanks for the review.  Some of these points will probably require 
further discussion.

Please see inline ...


On 11/07/2017 14:55, Benoit Claise wrote:
> Dear all,
>
> Good job on this document.
>
> Some comments below.
>
> -
>
> OLD:
>     o  learned configuration: Configuration that has been learned via
>        protocol interactions with other systems that is not conventional
>        or dynamic configuration.
>
> NEW (is this what wou want to say?):
>     o  learned configuration: Configuration that has been learned via dynamic configuration
>        or protocol interactions with other systems that is not conventional
The aim here is to indicate that "learned configuration" explicitly 
excluded configuration data that comes via the conventional or dynamic 
datastores.

So, configuration from I2RS would be dynamic configuration and not 
learned configuration.

>
> Thinking some more about this definition. Let's come back to it.
>
> -
>   
>     o  dynamic datastore: A datastore holding data obtained dynamically
>        during the operation of a device through interaction with other
>        systems, rather than through one of the conventional configuration
>        datastores.
>
>
> Should the dynamic datastore should say:
>     o  dynamic datastore: A datastore holding configuration data obtained dynamically ...
We think that dynamic datastores may also contain data for nodes that 
are not configuration.  Every schema node that is "config true" is 
configuration and hence may be programmed via the conventional 
datastores.  The I2RS requirements wants to be able to write to config 
false nodes, my assumption is that this is because they don't want all 
of their I2RS specific models (e.g. for modifying RIB/FIB entries) to 
also have to be configurable via conventional datastores.

So, this is the reason that it refers to "data" rather than "configuration".

>
>
> Background:
> Reading this definition:
>    o  system state: The additional data on a system that is not
>        configuration, such as read-only status information and collected
>        statistics.  System state is transient and modified by
>        interactions with internal components or other systems.  System
>        state is modeled in YANG using "config false" nodes.
>
> I guessed that the system states don't include the content from the dynamic datastore.
> It's not obvious with the current definitions.
If the dynamic datastore contains data for config false schema nodes 
then this would modify the system state in the operational state datastore.

>   
>
>
> - This figure and section 4.7 text.
>
>       +-------------+                 +-----------+
>       | <candidate> |                 | <startup> |
>       |  (ct, rw)   |<---+       +--->| (ct, rw)  |
>       +-------------+    |       |    +-----------+
>              |           |       |           |
>              |         +-----------+         |
>              +-------->| <running> |<--------+
>                        | (ct, rw)  |
>                        +-----------+
>                              |
>                              |        // configuration transformations,
>                              |        // e.g., removal of "inactive"
>                              |        // nodes, expansion of templates
>                              v
>                        +------------+
>                        | <intended> | // subject to validation
>                        | (ct, ro)   |
>                        +------------+
>                              |        // changes applied, subject to
>                              |        // local factors, e.g., missing
>                              |        // resources, delays
>                              |
>                              |   +-------- learned configuration
>         dynamic              |   +-------- system configuration
>         datastores -----+    |   +-------- default configuration
>                         |    |   |
>                         v    v   v
>                      +---------------+
>                      | <operational> | <-- system state
>                      | (ct + cf, ro) |
>                      +---------------+
>
>
>   Section 4.7
>     <operational> contains system state and all configuration actually
>     used by the system.  This includes all applied configuration from
>     <intended>, system-provided configuration, and default values defined
>     by any supported data models.  In addition, <operational> also
>     contains applied data from dynamic datastores.
>
> What about "learned configuration"
This is an omission and should be added.


>
> - Section 3.
> The important question is whether the section 2 "datastore" and 
> "configuration datastore" definitions are aligned with previous 
> definitions or not.
> I guess not. If this is the case, it should be clearly mentioned.
OK.

The definition of "datastore" aligns with NETCONF (RFC 6241) updated by 
YANG 1.1 (RFC 7050).

The definition of "configuration datastore" is slightly different, but I 
believe that it is meant to be semantically equivalent.

>
> - Section 4.5
> No need to repeat what's in the terminology section.
Do you mean not to mention the conventional datastores at all here? 
Currently the text does expand somewhat on the definition in the 
terminology section.

>
> - Section 4.7
>
> OLD:
>     In the original NETCONF model the operational
>     state only had "config false" nodes.
>
> OLD:
>     In the original NETCONF model (RFC6241 or section 3.1) the operational
>     state only had "config false" nodes.
OK.

>
> - Security Considerations.
> You might want to stress that, even if this document contains YANG 
> modules, those modules have no read or read/write leaves: only 
> identities and a metadata. Hence "YANG module security guidelines" 
> don't apply.
> Now, there surely exist some security considerations anyway.
Yes.

>
> - Is appendix A normative?
> Should it move to the document core?
I'm not sure on this one.

>
> Regards, Benoit
Thanks,
Rob


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