Re: [netmod] draft-openconfig-netmod-opstate: Changes in -01

Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> Tue, 11 August 2015 07:13 UTC

Return-Path: <j.schoenwaelder@jacobs-university.de>
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 BDB041A1A8C for <netmod@ietfa.amsl.com>; Tue, 11 Aug 2015 00:13:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.86
X-Spam-Level:
X-Spam-Status: No, score=-3.86 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_MED=-2.3, T_RP_MATCHES_RCVD=-0.01] 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 MSNYDYWJkeHy for <netmod@ietfa.amsl.com>; Tue, 11 Aug 2015 00:12:58 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6F8831A1A91 for <netmod@ietf.org>; Tue, 11 Aug 2015 00:12:58 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id 1227B1500; Tue, 11 Aug 2015 09:12:57 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id vc4dEMMRCwsT; Tue, 11 Aug 2015 09:12:55 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Tue, 11 Aug 2015 09:12:55 +0200 (CEST)
Received: from localhost (demetrius2.jacobs-university.de [212.201.44.47]) by hermes.jacobs-university.de (Postfix) with ESMTP id B3E5C20056; Tue, 11 Aug 2015 09:12:55 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius2.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id MmgDWjna6zxY; Tue, 11 Aug 2015 09:12:54 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 55AF820048; Tue, 11 Aug 2015 09:12:53 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 1A056362DDFA; Tue, 11 Aug 2015 09:12:48 +0200 (CEST)
Date: Tue, 11 Aug 2015 09:12:48 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Rob Shakir <rjs@rob.sh>
Message-ID: <20150811071246.GA18393@elstar.local>
Mail-Followup-To: Rob Shakir <rjs@rob.sh>, "netmod@ietf.org" <netmod@ietf.org>
References: <55C4B9DB.1030400@rob.sh> <20150807141439.GA76991@elstar.local> <55C4C346.406@rob.sh> <20150807153909.GA182@elstar.local> <55C5054C.1090704@rob.sh>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <55C5054C.1090704@rob.sh>
User-Agent: Mutt/1.4.2.3i
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/CNE4Aq3e8Qr6Bp474jTjrkj1bDM>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Subject: Re: [netmod] draft-openconfig-netmod-opstate: Changes in -01
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: Tue, 11 Aug 2015 07:13:04 -0000

On Fri, Aug 07, 2015 at 03:21:48PM -0400, Rob Shakir wrote:
> 
> 
> Juergen Schoenwaelder wrote:
> >But you are right, it is not just the path that is needed to identify
> >data residing in configuration datastores. It is in general a tuple
> ><selector, path>  and for configuration data the selector is a
> >configuration datastore name.
> 
> Thanks for the clarification. Do you have examples of other (i.e., 
> non-NETCONF) systems that utilise this convention that a path is not an 
> absolute reference to a certain data node? Reviewing with various 
> interested parties, I'm not sure that there are clear cases that form a 
> precedent for this.

SNMP has an even more complex naming scheme.

> If we consider that this then might drive some new behaviour where the 
> systems architecture for NMS differs from elsewhere then we might want 
> to question whether this is necessary complexity. Indeed, for me this 
> comes back to one of the discussions about the other datastores that we 
> had on an interim call.

>  * 'startup' is really a property of the intended configuration - as to 
> whether it has been made persistent. In general, I see very few changes 
> that are made where we interact only with the persistent version of the 
> intended configuration; and even fewer where the intended configuration 
> is not made persistent. In both cases, it tends to be the lack of a 
> declarative configuration API that drives the need to interact with either.

You can have a NETCONF server without 'startup' and it still has
persistent running config. I have no clue what 'the lack of a
declarative configuration API' means.

>  * 'candidate' is again a property of the intended configuration - 
> insofar that the 'candidate' set of configuration represents a set of 
> changes that have not been requested to be transitioned to the 'applied 
> configuration'. This makes sense when a human is working through 
> building up a transaction (configure protocol X, protocol Y .. protocol 
> Z, then commit) - but isn't quite so clear when it programmatic 
> interaction with the network.

There are commercial implementations that make use of candidate
datastores and the transaction, validation and rollback capabilities
they provide. You may decide that you do not need them but this does
not imply that nobody else will need them.

> It is quite trivial for me to see cases where an external NMS would 
> never really need to interact with either of these datastores - such 
> that it's quite tricky for me to determine that we really want to 
> architect the entire NMS to be able to carry the <selector,path> tuple 
> (stealing your terms, thanks!), especially if this means that it has to 
> work entirely differently w.r.t paths than the rest of OSS.

It is certainly up to you how you architect your NMS the way to think
it works best. I am just trying to explain how NETCONF and YANG
work. But I would expect that an NMS is able to integrate namespaces.

The <selector, path> approach allows us to use the same path in
different datastores, this is considered to be a feature and not a
bug.

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>