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:[email protected]] 代表 Andy Bierman
发送时间: 2016年5月6日 2:03
收件人: Balazs Lengyel
抄送: [email protected]
主题: Re: [netmod] Schema mount questions
On Thu, May 5, 2016 at 7:44 AM, Balazs Lengyel
<[email protected]<mailto:[email protected]>> 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:
[email protected]<mailto:[email protected]>
_______________________________________________
netmod mailing list
[email protected]<mailto:[email protected]>
https://www.ietf.org/mailman/listinfo/netmod
_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod