Re: [netmod] Action and RPC statements

Lou Berger <lberger@labn.net> Mon, 06 November 2017 16:51 UTC

Return-Path: <lberger@labn.net>
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 4D01413FB6B for <netmod@ietfa.amsl.com>; Mon, 6 Nov 2017 08:51:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.701
X-Spam-Level:
X-Spam-Status: No, score=-4.701 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (768-bit key) header.d=labn.net
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 ARabru2Qq54g for <netmod@ietfa.amsl.com>; Mon, 6 Nov 2017 08:51:30 -0800 (PST)
Received: from gproxy4-pub.mail.unifiedlayer.com (gproxy4-pub.mail.unifiedlayer.com [69.89.23.142]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1A91B13FBB2 for <netmod@ietf.org>; Mon, 6 Nov 2017 08:51:23 -0800 (PST)
Received: from cmgw2 (unknown [10.0.90.83]) by gproxy4.mail.unifiedlayer.com (Postfix) with ESMTP id 0F33D179B23 for <netmod@ietf.org>; Mon, 6 Nov 2017 09:48:28 -0700 (MST)
Received: from box313.bluehost.com ([69.89.31.113]) by cmgw2 with id WgoQ1w0092SSUrH01goT6N; Mon, 06 Nov 2017 09:48:28 -0700
X-Authority-Analysis: v=2.2 cv=dZfw5Tfe c=1 sm=1 tr=0 a=h1BC+oY+fLhyFmnTBx92Jg==:117 a=h1BC+oY+fLhyFmnTBx92Jg==:17 a=IkcTkHD0fZMA:10 a=sC3jslCIGhcA:10 a=AUd_NHdVAAAA:8 a=apQQR3hXPwcTO8itTgcA:9 a=QEXdDO2ut3YA:10
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=labn.net; s=default; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version :Date:Message-ID:From:References:Cc:To:Subject:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=uoMB99VOumY8ukh6m06p6o8fqiNMIUTYrr/Bu2kAz/E=; b=UfwBrJeunhQgK+tYLonxy6rEVv SQJ1psDtx5AILlRcvJ6VO4P9s94zOfTLS7YACnTd2vHnj5flxfTXT+5CRqqQUI8pBaaEdTO8SwG7x vEUhJ08SOfrP1TwQMgRfIYM9H;
Received: from pool-100-15-86-101.washdc.fios.verizon.net ([100.15.86.101]:32982 helo=fs2.dc.labn.net) by box313.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.87) (envelope-from <lberger@labn.net>) id 1eBkZU-000hkN-0o; Mon, 06 Nov 2017 09:48:24 -0700
To: Robert Wilton <rwilton@cisco.com>, netmod@ietf.org
References: <CABCOCHS+g45H7P8nZ7tUQeW5Q=xXQRm7kQJWwsfG8PrR-DERSQ@mail.gmail.com> <20171106.141924.996087392255055625.mbj@tail-f.com> <15f9188b728.27d3.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <20171106.154913.1683303692062360930.mbj@tail-f.com> <15f91db9dd0.27d3.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <5c1d29df-4cdf-4972-5a11-0a111177bf93@cisco.com> <15f92077478.27d3.9b4188e636579690ba6c69f2c8a0f1fd@labn.net> <f4cf2723-af37-c0ba-be28-ccb635ee9b4a@cisco.com>
From: Lou Berger <lberger@labn.net>
Message-ID: <a6eac745-0784-daa2-103a-1c4b28990f51@labn.net>
Date: Mon, 06 Nov 2017 11:48:23 -0500
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0
MIME-Version: 1.0
In-Reply-To: <f4cf2723-af37-c0ba-be28-ccb635ee9b4a@cisco.com>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - box313.bluehost.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - labn.net
X-BWhitelist: no
X-Source-IP: 100.15.86.101
X-Exim-ID: 1eBkZU-000hkN-0o
X-Source:
X-Source-Args:
X-Source-Dir:
X-Source-Sender: pool-100-15-86-101.washdc.fios.verizon.net (fs2.dc.labn.net) [100.15.86.101]:32982
X-Source-Auth: lberger@labn.net
X-Email-Count: 6
X-Source-Cap: bGFibm1vYmk7bGFibm1vYmk7Ym94MzEzLmJsdWVob3N0LmNvbQ==
X-Local-Domain: yes
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/7_mVFOoSnZNHOifEZJn_nnC1h-4>
Subject: Re: [netmod] Action and RPC statements
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, 06 Nov 2017 16:51:33 -0000

On 11/06/2017 11:41 AM, Robert Wilton wrote:
> 
> 
> On 06/11/2017 15:51, Lou Berger wrote:
>>
>>
>> On November 6, 2017 10:21:19 AM Robert Wilton <rwilton@cisco.com> wrote:
>>
>>> Hi Lou,
>>>
>>> All of proposed solutions (A through D) allow the action or the RPC to
>>> perform whatever behaviour that it wants.
>>>
>>> This issue is only about which datastore is used to evaluate and check
>>> that the parameters for the action/rpc are valid.  E.g. if the
>>> parameters use when, must, leaf-ref, or instance-identifier.
>>>
>>> So, to take option "A" for example: "A.  Always use <operational> for 1
>>> and 2."
>>>
>>> One can still define a RPC that modifies another datastore ("edit-data"
>>> in the NETCONF NMDA  draft is one such example).  But to check whether
>>> the edit-data request can be performed, any input parameter constraints
>>> would be evaluated against <operational>.  However, given that the input
>>> parameters to edit-data don't contain any when, must, leaf-ref, or
>>> instance-identifier statements then it makes absolutely no functional
>>> difference which the datastore the parameters are evaluated in, since
>>> the result will always be the same regardless.  But perhaps it just
>>> feels a little odd that they are conceptually evaluated against
>>> operational, even though the RPC only even affects one of the editable
>>> configurable datastores.
>>>
>>
>>
>> Yes, which is why I've been assuming we'd end up with c.
> 
> But I think that to do C properly also requires a new optional statement
> in YANG to indicate where the Action/RPC parameters are evaluated (with
> the default being <operational> if the new statement isn't specified).
> 
> Most RPCs/Action statements seem to naturally apply to <operational>.
> 
> For the RPCs/Action statements that don't naturally apply to
> <operational>, it seems that it mostly doesn't matter where the
> parameters are evaluated.
> 
> At the moment, the set of remaining RPCs/Actions (don't apply to
> <operational> but do care about parameter evaluation) seems quite small:
>  (i) RFC7517, if it defined a YANG model for the <partial-lock> RPC
>  (ii) A partial datastore diff from a subtree in <intended> to
> <operational> might be another - it would want an instance-identifier
> path to the subtree in <intended>.
>  (iii) Perhaps I2RS and dynamic datastores may also throw up some new
> examples.

The tags draft has an RPC to 'reset to default state'.  I could see
wanting the reset to be persistent or not depending on actual usage...

Lou
> 
> Thanks,
> Rob
> 
>