Re: [netmod] explicit mount
Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> Wed, 24 February 2016 22:39 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 07C8F1A0856 for <netmod@ietfa.amsl.com>; Wed, 24 Feb 2016 14:39:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.856
X-Spam-Level:
X-Spam-Status: No, score=-3.856 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.006] 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 S37190FNXtgq for <netmod@ietfa.amsl.com>; Wed, 24 Feb 2016 14:39:18 -0800 (PST)
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 6FB051A066C for <netmod@ietf.org>; Wed, 24 Feb 2016 14:39:18 -0800 (PST)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id C73FF14A3; Wed, 24 Feb 2016 23:39:16 +0100 (CET)
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 1fwJpTJzCbJR; Wed, 24 Feb 2016 23:39:01 +0100 (CET)
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; Wed, 24 Feb 2016 23:39:15 +0100 (CET)
Received: from localhost (demetrius4.jacobs-university.de [212.201.44.49]) by hermes.jacobs-university.de (Postfix) with ESMTP id 810DB20037; Wed, 24 Feb 2016 23:39:15 +0100 (CET)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius4.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id DG1hnCoM1-nD; Wed, 24 Feb 2016 23:39:14 +0100 (CET)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id D6C3A20036; Wed, 24 Feb 2016 23:39:13 +0100 (CET)
Received: by elstar.local (Postfix, from userid 501) id C119F39FD072; Wed, 24 Feb 2016 23:39:13 +0100 (CET)
Date: Wed, 24 Feb 2016 23:39:13 +0100
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Martin Bjorklund <mbj@tail-f.com>
Message-ID: <20160224223913.GA18519@elstar.local>
Mail-Followup-To: Martin Bjorklund <mbj@tail-f.com>, netmod@ietf.org
References: <20160223.160806.696185201696745163.mbj@tail-f.com> <20160224160933.GA17873@elstar.local> <20160224.223040.105115912610069020.mbj@tail-f.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20160224.223040.105115912610069020.mbj@tail-f.com>
User-Agent: Mutt/1.4.2.3i
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/uemj1zC8iRJLgi_NS3YhEWO_Scg>
Cc: netmod@ietf.org
Subject: Re: [netmod] explicit mount
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: Wed, 24 Feb 2016 22:39:25 -0000
On Wed, Feb 24, 2016 at 10:30:40PM +0100, Martin Bjorklund wrote: > Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote: > > On Tue, Feb 23, 2016 at 04:08:06PM +0100, Martin Bjorklund wrote: > > > Hi, > > > > > > In yesterday's meeting, Lou (I think?) mentioned a use case for mount > > > that is not documented in draft-rtgyangdt-rtgwg-device-model; the need > > > for being able to specify modules to mount directly in the schema. > > > Something like this: > > > > > > container root { > > > ymnt:mount-point "lne" { > > > ymnt:mount-module "ietf-interfaces"; > > > } > > > } > > > > > > It would be useful if the use case for this could be described in more > > > details. Is it a requirement to be able to specify this in the > > > schema, or could it be done (as Chris mentioned) in the RFC text? > > > > > > The reason I ask is that it is probably not as simple as the example > > > above. First, you probably need to specify a revision of the module > > > to be mounted. Or a min-revision. Then probably a set of features > > > that must be enabled. And so on. It turns out that there is already > > > a proposal for specifying such a "conformance profile" - YANG Packages > > > (see draft-bierman-netmod-yang-package). Maybe it would be better to > > > re-use packages? > > > > We are talking schema mount, right? > > Yes. > > > So why would features matter? > > If you want to mount a certain module, and that module has > feature-conditional subtrees, you may want to make sure that those > features are supported. If these features are not specified in the > schema, we need to invent some mechanism for the server to advertise > them for the mounted subtree. This is the job for the inline > ietf-yang-library, or /mount-points state data in the structural-mount > draft. > > My point is that while this idea (list the module you want to be > mounted) seems simple, there are some issues to solve. Hence I would > like to understand the use case before suggesting a solution. A schema in general does not explain which features an implementation of that schema supports. A static schema mount is fully consistent with that. Yes, the current YANG library may not expose features that apply to a certain mounted schema but this I do not see this as something that makes things more complicated from the schema point of view. I think the use cases are rather obvious. I build a device and I like to rearrange existing models into a beautiful hierarchy (for some definition of beauty). Or I deal with some form of virtualization and I write a bunch of nested containers and lists that express this and then I mount existing YANG models into this hierarchy. In cases like this, I know exactly which model I want to mount where at design time. In your I-D (if I got this right), you only declare mount-points in the schema and then an implementation can mount whatever it likes on a mount-point. What is the use case for this? Why is it a feature to not express in the schema at design time what can be expected behind a mount point? BTW, in your example on page 10, should <name>device-root</name> be <name>logical-device</name> ? There are likely many other questions that are largely independent of the question whether the schema is fixed in a schema at schema design time or only discoverable at runtime. (How do protocols interpret instance-identifiers crossing mount points, how do you mix chrooted and non-chrooted behaviour, what about edit-configs crossing mount points, how does this all play with NACM, etc. Nobody expected this to be easy.) Since you and Lada thought way more about this than I ever did, there may be a reason why you both propose to make this runtime data driven instead of having a piece of YANG defining how schemas are mounted together. /js > > Yes, > > there might be interesting versioning issues but how are they > > different from an augmentation putting data under root? I naively > > considered such a 'static schema defined mount' the simplest case, > > then the 'augmented schema defined mount' naturally following from the > > way augmentations work: > > > > augment /some:root { > > ymnt:mount-point "lne" { > > ymnt:mount-module "ietf-interfaces"; > > } > > } > > > > The 'dynamic runtime defined mounts' may be most flexible but then > > they require me to read runtime data in order to adapt to the schema > > structure, which has its own set of complexities. > > I agree. > > > /martin > > > > Yes, the versioning > > issues go away since I have to adapt to each implementation > > dynamically but there is surely a cost involved with that as well. > > > > Am I missing something? > > > > /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/> > > -- 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/>
- [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Nadeau Thomas
- Re: [netmod] explicit mount Ladislav Lhotka
- Re: [netmod] explicit mount Kent Watsen
- Re: [netmod] explicit mount Ladislav Lhotka
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Juergen Schoenwaelder
- Re: [netmod] explicit mount Robert Varga
- Re: [netmod] explicit mount Alexander Clemm (alex)
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Juergen Schoenwaelder
- Re: [netmod] explicit mount Juergen Schoenwaelder
- Re: [netmod] explicit mount chopps
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Alexander Clemm (alex)
- Re: [netmod] explicit mount Robert Varga
- Re: [netmod] explicit mount Ladislav Lhotka
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Juergen Schoenwaelder
- Re: [netmod] explicit mount Juergen Schoenwaelder
- Re: [netmod] explicit mount Ladislav Lhotka
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Juergen Schoenwaelder
- Re: [netmod] explicit mount Ladislav Lhotka
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Juergen Schoenwaelder
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Robert Wilton
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Robert Wilton
- Re: [netmod] explicit mount Robert Wilton
- Re: [netmod] explicit mount Martin Bjorklund
- Re: [netmod] explicit mount Robert Wilton
- Re: [netmod] explicit mount Lou Berger
- Re: [netmod] explicit mount Robert Wilton
- Re: [netmod] explicit mount Lou Berger