Re: [mpls] [netmod] Use of schema mounts for common model
"Tarek Saad (tsaad)" <tsaad@cisco.com> Fri, 29 April 2016 16:17 UTC
Return-Path: <tsaad@cisco.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 D7EEE12D15E; Fri, 29 Apr 2016 09:17:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -15.516
X-Spam-Level:
X-Spam-Status: No, score=-15.516 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.996, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 SxWDaSXYfjfe; Fri, 29 Apr 2016 09:17:21 -0700 (PDT)
Received: from rcdn-iport-8.cisco.com (rcdn-iport-8.cisco.com [173.37.86.79]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8DD3F12D147; Fri, 29 Apr 2016 09:17:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=17876; q=dns/txt; s=iport; t=1461946640; x=1463156240; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=DN2yQSt7utfpvgKgcKeFzJifVbBYp876IsrpWKjxu9Y=; b=CAh5SmprREyPbPtq4al1SIljgQWoKY4ogW2D14izHMCvoLjTlgZp166d VagvgNC+jXXw2IUl6lFo0GUBvKZYQsFw8rvC6yD6Af8MFvFtyR58VzDa8 ZGO+gm1YF1ZAwHgLIDWiAxxib/fTP7hQ9ORVtjlliS1JlI/BrXTFSwPUg o=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0BMAgDkhyNX/5hdJa1dgmxMU30GtHeEcwENgXYkhWwCHIEOOBQBAQEBAQEBZSeEQgEBBCNWEAIBCA4xAwICAjAUEQIEDgUbiA8OszWRIgEBAQEBAQEBAQEBAQEBAQEBAQEBAREEhiGBdoJWhFSCaSuCKwWNVoVMhHEBhXuIG4FnhE2IXYYkiQsBHgEBQoIFG4FLbAGHRCUYAX4BAQE
X-IronPort-AV: E=Sophos; i="5.24,552,1454976000"; d="scan'208,217"; a="97431017"
Received: from rcdn-core-1.cisco.com ([173.37.93.152]) by rcdn-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 29 Apr 2016 16:17:19 +0000
Received: from XCH-RTP-005.cisco.com (xch-rtp-005.cisco.com [64.101.220.145]) by rcdn-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id u3TGHJtj025505 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Fri, 29 Apr 2016 16:17:19 GMT
Received: from xch-rtp-001.cisco.com (64.101.220.141) by XCH-RTP-005.cisco.com (64.101.220.145) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Fri, 29 Apr 2016 12:17:17 -0400
Received: from xch-rtp-001.cisco.com ([64.101.220.141]) by XCH-RTP-001.cisco.com ([64.101.220.141]) with mapi id 15.00.1104.009; Fri, 29 Apr 2016 12:17:18 -0400
From: "Tarek Saad (tsaad)" <tsaad@cisco.com>
To: Martin Bjorklund <mbj@tail-f.com>
Thread-Topic: [netmod] Use of schema mounts for common model
Thread-Index: AQHRoYTn8Q7ybSBq9EC0qN+9tgYLnp+hBBqAgAAeDQA=
Date: Fri, 29 Apr 2016 16:17:18 +0000
Message-ID: <50BEAA4E-C645-4DCE-A992-44B14B4EFC43@cisco.com>
References: <4A05DD10-0885-435C-9D13-9634388B9F4B@cisco.com> <20160429.122943.1926404425708749601.mbj@tail-f.com>
In-Reply-To: <20160429.122943.1926404425708749601.mbj@tail-f.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/f.15.1.160411
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [161.44.213.64]
Content-Type: multipart/alternative; boundary="_000_50BEAA4EC6454DCEA99244B14B4EFC43ciscocom_"
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/mpls/gQpDeSDucX2TOlX8vfZJ2Cf_ps8>
Cc: "draft-ietf-teas-yang-te@ietf.org" <draft-ietf-teas-yang-te@ietf.org>, "mpls@ietf.org" <mpls@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>, "teas@ietf.org" <teas@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 16:17:24 -0000
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.
- [mpls] Use of schema mounts for common model Tarek Saad (tsaad)
- Re: [mpls] [netmod] Use of schema mounts for comm… Martin Bjorklund
- Re: [mpls] [netmod] Use of schema mounts for comm… Tarek Saad (tsaad)
- Re: [mpls] [netmod] Use of schema mounts for comm… Joel M. Halpern
- Re: [mpls] [Teas] [netmod] Use of schema mounts f… Xufeng Liu
- Re: [mpls] [netmod] Use of schema mounts for comm… Robert Wilton
- Re: [mpls] [netmod] [Teas] Use of schema mounts f… Balazs Lengyel
- Re: [mpls] [netmod] Use of schema mounts for comm… Tarek Saad (tsaad)