Re: [netmod] Y34 - root node
Ladislav Lhotka <lhotka@nic.cz> Thu, 20 August 2015 09:10 UTC
Return-Path: <lhotka@nic.cz>
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 262541A1EFF for <netmod@ietfa.amsl.com>; Thu, 20 Aug 2015 02:10:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] 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 x2ba22fw2zqE for <netmod@ietfa.amsl.com>; Thu, 20 Aug 2015 02:10:13 -0700 (PDT)
Received: from trail.lhotka.name (trail.lhotka.name [77.48.224.143]) by ietfa.amsl.com (Postfix) with ESMTP id 8611B1A1A2C for <netmod@ietf.org>; Thu, 20 Aug 2015 02:10:13 -0700 (PDT)
Received: from localhost (unknown [195.113.220.110]) by trail.lhotka.name (Postfix) with ESMTPSA id D67781CC0058; Thu, 20 Aug 2015 11:10:12 +0200 (CEST)
From: Ladislav Lhotka <lhotka@nic.cz>
To: Andy Bierman <andy@yumaworks.com>, Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <CABCOCHRgAHah6_f1qZkPs0_v8Cj6NA5TKokb_RtUv+XWNOocFA@mail.gmail.com>
References: <55D36473.90609@cisco.com> <CABCOCHRP3omx37XmEJfPwg6eELuSKF=YL8pgpnvLh9PQxgV62A@mail.gmail.com> <55D45CAF.2070605@cisco.com> <20150819.132555.871710491924929960.mbj@tail-f.com> <CABCOCHRgAHah6_f1qZkPs0_v8Cj6NA5TKokb_RtUv+XWNOocFA@mail.gmail.com>
User-Agent: Notmuch/0.20.2 (http://notmuchmail.org) Emacs/24.4.51.2 (x86_64-apple-darwin14.0.0)
Date: Thu, 20 Aug 2015 11:10:13 +0200
Message-ID: <m2twru5nre.fsf@birdie.labs.nic.cz>
MIME-Version: 1.0
Content-Type: text/plain
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/jBZF8_hedJOC7nf5fRWiJo7yUik>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Subject: Re: [netmod] Y34 - root node
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: Thu, 20 Aug 2015 09:10:18 -0000
Andy Bierman <andy@yumaworks.com> writes: > On Wed, Aug 19, 2015 at 4:25 AM, Martin Bjorklund <mbj@tail-f.com> wrote: > >> Robert Wilton <rwilton@cisco.com> wrote: >> > >> > >> > On 18/08/2015 18:22, Andy Bierman wrote: >> > > This is how languages like SMIv2 and YANG work. >> > > A conceptual object is given a permanent "home" within the tree of >> > > object identifiers. >> > > Moving data is very expensive, since any clients working with the old >> > > data >> > > will break as soon as the data is moved. >> > > >> > > I am not convinced the IETF can or should come up with a set of >> > > containers >> > > that covers every possible topic that can be modeled in YANG. >> > >> > I mostly agree, but having some more structure/advice as to where to >> > place YANG modules may be helpful. I'm thinking more along the lines >> > of broad categories rather than precise locations. >> >> +1 >> >> > > If someone wants to builds a YANG controller node that is managing >> > > the configuration for a network of devices then wouldn't they want >> > > a particular device's interface configuration to be located >> > > somewhere like /network/device/<device-name>/interfaces/interface? >> > > Ideally, they would be able to use the same YANG definitions that >> > > are defined for /interfaces/ but root them relative to >> > > /network/device/<device-name>/. >> > > >> > > >> > > >> > > Yes -- some of us (like Martin) have pointed this out many times. >> > > The "device" container on an NE does not help at all wrt/ >> > > aggregation on a controller. "/device" or "/" work the same for this >> > > purpose. >> >> Actually, I would argue that / works better. On the controller, you >> probably have a list of devices you control (this is how our NCS >> works, and how ODL works (I have been told)): >> >> container devices { >> list device { >> key name; >> // meta-info about the device goes here, things like >> // ip-address, port, auth info... >> container data { >> // all models supported by the devices are "mounted" here >> } >> } >> } >> >> So on the controller, the path to interface "eth0" on device "foo" >> would be: >> >> /devices/device[name='foo']/data/interfaces/interface[name='eth0'] >> >> if we also have a top-level "/device" container we'd have: >> >> /devices/device[name='foo']/data/device/interfaces/interface[name='eth0'] >> >> > What would the real resource location for >> > "/network/device/<device-name>/interfaces/interface" be? >> >> I don't think there is such a thing as a "real" location. The path is >> scoped in the system you work with; in the controller it might be as I >> illustrated above, in the device it starts with /interfaces, but in a >> controller-of-controllers it might be: >> >> /domains/domain[name='bar']/devices/device[name='foo']/data >> /interfaces/interface[name='eth0'] >> >> Currently we have a proprietary way of "relocating" YANG modules, and >> ODL has its "mount", and I think Andy has some other mechanism. Maybe >> the time has come to standardize how mount works, and maybe then also >> standardize the list of devices in a controller model. >> >> > > +1 > > We just need to standardize a "docroot within a docroot". This is not > relocation of subtrees within the datastore, this is just mounting a > datastore somewhere within a parent datastore. The current definition of datastore is too general, so I don't know what datastore inside datastore means. What's clear is that a single module cannot just be mounted anywhere. For example, if ietf-interfaces is mounted under /device and ietf-ip straight under /, then I don't see how references and XPath expressions could be reliably modified to work as expected. That's why I think only self-contained packages can be mounted, and inside them all references can be prepended with the mount root. Lada > > In YANG validation terms, you simply adjust the docroot to the nested mount > point, > and the replicated datastore can be used as if it were stand-alone. > This would allow any sort of encapsulation of datastores and not add any > data model complexity to devices which do not have virtual servers > (most of them). > > >> >> /martin >> > > > Andy > _______________________________________________ > netmod mailing list > netmod@ietf.org > https://www.ietf.org/mailman/listinfo/netmod -- Ladislav Lhotka, CZ.NIC Labs PGP Key ID: E74E8C0C
- [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Juergen Schoenwaelder
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Juergen Schoenwaelder
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Acee Lindem (acee)
- Re: [netmod] Y34 Lou Berger
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Lou Berger
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Juergen Schoenwaelder
- Re: [netmod] Y34 Lou Berger
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Lou Berger
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Juergen Schoenwaelder
- Re: [netmod] Y34 Acee Lindem (acee)
- Re: [netmod] Y34 Juergen Schoenwaelder
- Re: [netmod] Y34 Andy Bierman
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 - root node t.petch
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node t.petch
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node t.petch
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Einar Nilsen-Nygaard (einarnn)
- Re: [netmod] Y34 - root node Ladislav Lhotka
- Re: [netmod] Y34 - root node Jonathan Hansford
- Re: [netmod] Y34 - root node Einar Nilsen-Nygaard (einarnn)
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Acee Lindem (acee)
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Acee Lindem (acee)
- Re: [netmod] Y34 - root node Ladislav Lhotka
- Re: [netmod] Y34 - root node t.petch
- Re: [netmod] Y34 - root node Robert Wilton
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Robert Wilton
- Re: [netmod] Y34 - root node Martin Bjorklund
- Re: [netmod] Y34 - root node Ladislav Lhotka
- Re: [netmod] Y34 - root node Robert Wilton
- Re: [netmod] Y34 - root node t.petch
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Martin Bjorklund
- Re: [netmod] Y34 - root node Ladislav Lhotka
- Re: [netmod] Y34 - root node Robert Wilton
- Re: [netmod] Y34 - root node Martin Bjorklund
- Re: [netmod] Y34 - root node Ladislav Lhotka
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Juergen Schoenwaelder
- Re: [netmod] Y34 - root node Kent Watsen
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Eric Voit (evoit)
- Re: [netmod] Y34 - root node Nadeau Thomas
- Re: [netmod] Y34 - root node t.petch
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Alexander Clemm (alex)
- Re: [netmod] Y34 - root node Martin Bjorklund
- Re: [netmod] Y34 - root node Juergen Schoenwaelder
- Re: [netmod] Y34 - root node Lou Berger
- Re: [netmod] Y34 - root node Andy Bierman
- Re: [netmod] Y34 - root node Lou Berger
- Re: [netmod] Y34 - root node Ambika Prasad Tripathy (ambtripa)
- Re: [netmod] Y34 - root node t.petch
- Re: [netmod] Y34 - root node Alexander Clemm (alex)
- Re: [netmod] Y34 Robert Varga
- Re: [netmod] Y34 Robert Varga
- Re: [netmod] Y34 Ladislav Lhotka
- Re: [netmod] Y34 Robert Varga