Re: [mpls] [netmod] Use of schema mounts for common model

"Joel M. Halpern" <jmh@joelhalpern.com> Fri, 29 April 2016 17:04 UTC

Return-Path: <jmh@joelhalpern.com>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0FE4B12D13E; Fri, 29 Apr 2016 10:04:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level:
X-Spam-Status: No, score=-2.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.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 cj6_jr2mAGHN; Fri, 29 Apr 2016 10:04:57 -0700 (PDT)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (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 27FEE12D12B; Fri, 29 Apr 2016 10:04:57 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id F12602411E5; Fri, 29 Apr 2016 10:04:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=1.tigertech; t=1461949496; bh=hwMPH6/7VVfwrOtHc55Mnx3pXmddpW5sg6hBTRTyMXQ=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=cq9qLddIDAStd89DKnNU5e6CfzqtjwRl3eO7JZ2KGG0X9oJdCHKZyr9gmIwHocdW7 K1jWayh+nU0z0X8AzEUBSvpFYPptXFhmLUq0FON9RdstjCfWvVOapDfZNB56tJKZq0 R+ZtaN354zYa/hikw8RmuippPSTNRCSt6Gv+fIR0=
X-Virus-Scanned: Debian amavisd-new at maila2.tigertech.net
Received: from Joels-MacBook-Pro.local (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id 040EC240E6E; Fri, 29 Apr 2016 10:04:55 -0700 (PDT)
To: "Tarek Saad (tsaad)" <tsaad@cisco.com>, Martin Bjorklund <mbj@tail-f.com>
References: <4A05DD10-0885-435C-9D13-9634388B9F4B@cisco.com> <20160429.122943.1926404425708749601.mbj@tail-f.com> <50BEAA4E-C645-4DCE-A992-44B14B4EFC43@cisco.com>
From: "Joel M. Halpern" <jmh@joelhalpern.com>
Message-ID: <dbb1a964-084a-ca29-440d-6cdc9a4bdb64@joelhalpern.com>
Date: Fri, 29 Apr 2016 13:04:39 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:45.0) Gecko/20100101 Thunderbird/45.0
MIME-Version: 1.0
In-Reply-To: <50BEAA4E-C645-4DCE-A992-44B14B4EFC43@cisco.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/mpls/zTgto-xTFLJ64pCV-hKPWdbQlkg>
Cc: "draft-ietf-teas-yang-te@ietf.org" <draft-ietf-teas-yang-te@ietf.org>, "mpls@ietf.org" <mpls@ietf.org>, "teas@ietf.org" <teas@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>, "draft-ietf-netmod-schema-mount@ietf.org" <draft-ietf-netmod-schema-mount@ietf.org>
Subject: Re: [mpls] [netmod] Use of schema mounts for common model
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mpls>, <mailto:mpls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mpls/>
List-Post: <mailto:mpls@ietf.org>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mpls>, <mailto:mpls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 29 Apr 2016 17:04:59 -0000

With regard to leafrefs trying to point into groupings, would 
instance-identifiers work for your use case?

Yours,
Joel

On 4/29/16 12:17 PM, Tarek Saad (tsaad) wrote:
> Thanks Martin, please see inline..
>
>
> On 2016-04-29, 6:29 AM, "Martin Bjorklund" <mbj@tail-f.com
> <mailto:mbj@tail-f.com>> wrote:
>
>     "Tarek Saad (tsaad)" <tsaad@cisco.com <mailto:tsaad@cisco.com>> wrote:
>
>         Hi authors/WG,
>         In draft-ietf-teas-yang-te, we are driving the definition for a
>         generic TE YANG model that can/may be used (and extended when
>         necessary) for different data plane technologies (e.g. MPLS,
>         OTN, WDM,
>         etc.).
>         Reviewing the schema mount idea presented in
>         draft-ietf-netmod-schema-mount, we are thinking this proposal is
>         useful and can facilitate the reuse of the our model in multiple
>         places in the YANG tree (once per each technology), e.g.:
>         …/mpls/mount-points/mount-point/module=ietf-te.yang
>         …/otn/mount-points/mount-point/module=ietf-te.yang
>
>
>     Schema mount is probably not the right solution to your problem.  I
>     think a better solution in your case is to define groupings.
>     Groupings are designed to be re-used at different places in the
>     hierarchy.
>
>
> We thought of this earlier, and found groupings pose their own set of
> challenges too.. Specifically:
> - a groupings with leafrefs could not reference data nodes that reside
> in another grouping
> - a grouping with leafrefs of relative path were challenge when the
> relative path references data nodes outside the grouping
> - the augmentation of the grouping by other modules is not as
> straightforward
>
> That said, the grouping proposal seems to
>
> one could also think that with groupings one could address reuse of the
> a model (e.g. Ietf-interfaces) for logical devices or VM (see below). In
> fact, in your draft (section 2) you explicitly discourage this approach
> as not scalable solution
>
>
>    With the "uses" approach, ietf-interfaces would have to define a
>    grouping with all its nodes, and the new model for logical devices
>    would have to use this grouping.  This is a not a scalable solution,
>    since every time there is a new model defined, we would have to
>    update our model for logical devices to use a grouping from the new
>    model.  Another problem is that this approach cannot handle vendor-
>
>
>
>         We have a comment/concern/suggestion and we value your feedback.
>         The generic TE model currently references data nodes in the global
>         tree (e.g. from the ietf-interfaces model to define additional TE
>         properties associated with a specific device interface). Our
>         understanding after reading section 3.1 of your draft is the mounted
>         model can *not* reference any data nodes outside the scope of the
>         mount-point (e.g. global data nodes in the yang tree). This poses a
>         limitation for us, do you have a suggestion for this problem?
>         One possible solution we thought of was to replace the leaf-refs
>         pointing to the global data nodes (e.g. Ietf-interfaces) with
>         context
>         names (e.g. the interface name).. This decouples the data-nodes
>         defined in the TE generic model from those in the global tree
>         (e.g. the actual interface ietf-interfaces model). Any feedback on
>         this or better suggestions?
>
>
>     If you use groupings instead, you can still use proper leafrefs.
>
>
> Not in all cases — as described above.
>
> Regards,
> Tarek
>
>
>
>     /martin
>
>
>
>         Regards,
>         Tarek
>         Excerpt from draft-ietf-netmod-schema-mount
>         3.1<https://tools.ietf.org/html/draft-ietf-netmod-schema-mount-01#section-3.1>.
>         Augment and Validation in Mounted Data
>             All paths (in leafrefs, instance-identifiers, XPath
>         expressions, and
>             target nodes of augments) in the data models mounted at a
>         mount point
>             are interpreted with the mount point as the root node, and the
>             mounted data nodes as its children.  This means that data
>         within a
>             mounted subtree can never refer to data outside of this subtree.
>
>
>
>
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
>