Re: [netmod] Schema mount questions

wangzitao <wangzitao@huawei.com> Fri, 06 May 2016 02:49 UTC

Return-Path: <wangzitao@huawei.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C3B2F12D0FC for <netmod@ietfa.amsl.com>; Thu, 5 May 2016 19:49:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.216
X-Spam-Level:
X-Spam-Status: No, score=-5.216 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.996, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
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 ssZ1FShvpwY2 for <netmod@ietfa.amsl.com>; Thu, 5 May 2016 19:49:31 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F088B12D0B8 for <netmod@ietf.org>; Thu, 5 May 2016 19:49:29 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml704-cah.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id COB37676; Fri, 06 May 2016 02:49:27 +0000 (GMT)
Received: from SZXEML434-HUB.china.huawei.com (10.82.67.225) by lhreml704-cah.china.huawei.com (10.201.5.130) with Microsoft SMTP Server (TLS) id 14.3.235.1; Fri, 6 May 2016 03:49:26 +0100
Received: from SZXEML501-MBX.china.huawei.com ([169.254.1.108]) by szxeml434-hub.china.huawei.com ([10.82.67.225]) with mapi id 14.03.0235.001; Fri, 6 May 2016 10:49:23 +0800
From: wangzitao <wangzitao@huawei.com>
To: Andy Bierman <andy@yumaworks.com>, Balazs Lengyel <balazs.lengyel@ericsson.com>
Thread-Topic: [netmod] Schema mount questions
Thread-Index: AQHRpt3ELPPsxAQ3N0icew8PaQiz8J+qHO4AgAEYQnA=
Date: Fri, 06 May 2016 02:49:23 +0000
Message-ID: <E6BC9BBCBCACC246846FC685F9FF41EAD253AD@szxeml501-mbx.china.huawei.com>
References: <d20d5988-84d1-935c-dc25-b84a95101d02@ericsson.com> <CABCOCHTRobsdCsPvvP96ndywhaxsJ3P0OVNOXRLcc+pvYmPAhA@mail.gmail.com>
In-Reply-To: <CABCOCHTRobsdCsPvvP96ndywhaxsJ3P0OVNOXRLcc+pvYmPAhA@mail.gmail.com>
Accept-Language: en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.136.79.13]
Content-Type: multipart/alternative; boundary="_000_E6BC9BBCBCACC246846FC685F9FF41EAD253ADszxeml501mbxchina_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020204.572C0638.007C, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0, ip=169.254.1.108, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32
X-Mirapoint-Loop-Id: 3d558259fe46e2c55743f53906157a5f
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/FSFg5ZH_k1BVFbdAiY-PPtblSyc>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Subject: Re: [netmod] Schema mount questions
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.17
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: Fri, 06 May 2016 02:49:37 -0000

Hi all,

I think one important question is how to flexibly use “Schema mount”.
Currently, it support mount the modules which be listed in the ietf-yang-library.
But how to extend the mount? Or how to support other modules (these not include in yang library)?
One example is draft-rtgyangdt-rtgwg-device-model:

       module: network-device
          +--rw ietf-yang-library
          |
          +--rw interfaces
          +--rw hardware
          +--rw qos
          |
          +--rw system-management
          +--rw network-services
          +--rw oam-protocols


Do we need to model an “oam protocols library” first,

and then augment the Schema Mount YANG Module to get a “mount-oam-library” to support mounting the oam protocols library?



Best Regards!

-Michael


发件人: netmod [mailto:netmod-bounces@ietf.org] 代表 Andy Bierman
发送时间: 2016年5月6日 2:03
收件人: Balazs Lengyel
抄送: netmod@ietf.org
主题: Re: [netmod] Schema mount questions



On Thu, May 5, 2016 at 7:44 AM, Balazs Lengyel <balazs.lengyel@ericsson.com<mailto:balazs.lengyel@ericsson.com>> wrote:

Hello,

1) Will mounted YANG modules be listed in the base ietf-yang-library? Even the mounted ones?

Does the server providing the mounted modules claim conformance
to those models?

IMO YANG mount breaks the "YANG API contract" if even 1 tiny
property is ignored, due to mounting.

I asked for a conformance enum of 'none' or 'other' for this exact purpose but
the WG did not think it was possible for a server to do anything
other than implement or import a YANG module.

E.g, we are building a special server "library-mode" that just
provided\s the library and get-schema for every module.
They will all be listed as 'imported' (so that enum essentially
becomes 'other')



2) What does conformance to a YANG  module e.g. ietf-system mean now? Do we need to load the module at the top level, or is it enough to mount it “somewhere” in the containment tree?


It means the same if the server returns "implement"
Mounting the module violates the contract because the
module clearly defines /system as a top-level node.
Any other location is non-compliant.



3) If the answer to 2) is it can be mounted anywhere, which modules must be present at the top level? E.g. ietf-yang-library?

IMO the YANG contract only supports the data placement explicit
in the module.


4) If a new list entry is created can it introduce a completely new module never heard of before in the network element?

??

this is fine for "anydata"


5) IMHO allowing such dynamic introduction of new YANG modules into a network element, with flexible mountpoints, flexible set of modules at each mountpoint, a flexible set of deviations and features for each mounted module makes discovery actual available schema tree difficult. I think we are providing to much flexibility, over-complicating the issue. Some more static mounting solution that can be read from YANG modules instead of run-time data would be easier.

mount is way over-engineered  but schema-defined mount-points don't really help.
A nested "root" works and has a use-case.  Everything else is extra
and an implementation choice without any real use-case.  YANG is already
complicated and slow. mount and sym-links makes it worse.


regards Balazs




Andy




--

Balazs Lengyel                       Ericsson Hungary Ltd.

Senior Specialist

Mobile: +36-70-330-7909              email: Balazs.Lengyel@ericsson.com<mailto:Balazs.Lengyel@ericsson.com>

_______________________________________________
netmod mailing list
netmod@ietf.org<mailto:netmod@ietf.org>
https://www.ietf.org/mailman/listinfo/netmod