Merge "Migrate newer YANG Tools docs to rst"
[docs.git] / docs / developer-guide / uni-manager-plug-in-developer-guide.rst
1 User Network Interface Manager Plug-in (Unimgr) Developer Guide
2 ===============================================================
3
4 User Network Interface Manager Plug-in (Unimgr) is an experimental/proof of
5 concept (PoC) project formed to initiate the development of data models and
6 APIs facilitating the use by software applications and/or service orchestrators
7 of OpenDaylight to configure and provision connectivity services, in particular
8 Carrier Ethernet services as defined by Metro Ethernet Forum (MEF), in physical
9 or virtual network elements.
10
11 Functionality
12 -------------
13
14 Unimgr provides support for both service orchestration, via the Legato API, and
15 network resource provisioning, via the Presto API.  These APIs, and the
16 interfaces they provide, are defined by YANG models developed within MEF in
17 collaboration with ONF and IETF. An application/user can interact with Unimgr
18 at ether layer.  For the Boron release, the YANG models are as follows:
19
20 Legato YANG models
21 ------------------
22
23 https://git.opendaylight.org/gerrit/gitweb?p=unimgr.git;a=tree;f=legato-api/src/main/yang;hb=refs/heads/stable/boron
24
25 Presto YANG models
26 ------------------
27
28 https://git.opendaylight.org/gerrit/gitweb?p=unimgr.git;a=tree;f=presto-api/src/main/yang;hb=refs/heads/stable/boron
29
30 Legato API Tree
31 ---------------
32
33 module: mef-services
34 ::
35   +--rw mef-services
36      +--rw mef-service* [svc-id]
37         +--rw evc
38         |  +--rw unis
39         |  |  +--rw uni* [uni-id]
40         |  |     +--rw evc-uni-ce-vlans
41         |  |     |  +--rw evc-uni-ce-vlan* [vid]
42         |  |     |     +--rw vid    -> /mef-interfaces:mef-interfaces/unis/uni[mef-interfaces:uni-id = current()/../../../uni-id]/ce-vlans/ce-vlan/vid
43         |  |     +--rw ingress-bwp-flows-per-cos!
44         |  |     |  +--rw coupling-enabled?   boolean
45         |  |     |  +--rw bwp-flow-per-cos* [cos-name]
46         |  |     |     +--rw cos-name      -> /mef-global:mef-global/profiles/cos-names/cos-name/name
47         |  |     |     +--rw bw-profile    -> /mef-interfaces:mef-interfaces/unis/uni[mef-interfaces:uni-id = current()/../../../uni-id]/ingress-envelopes/envelope/env-id
48         |  |     +--rw egress-bwp-flows-per-eec!
49         |  |     |  +--rw coupling-enabled?   boolean
50         |  |     |  +--rw bwp-flow-per-eec* [eec-name]
51         |  |     |     +--rw eec-name      -> /mef-global:mef-global/profiles/eec-names/eec-name/name
52         |  |     |     +--rw bw-profile    -> /mef-interfaces:mef-interfaces/unis/uni[mef-interfaces:uni-id = current()/../../../uni-id]/egress-envelopes/envelope/env-id
53         |  |     +--rw status
54         |  |     |  +--ro oper-state-enabled?   boolean
55         |  |     |  +--ro available-status?     mef-types:svc-endpoint-availability-type
56         |  |     +--rw uni-id                         -> /mef-interfaces:mef-interfaces/unis/uni/uni-id
57         |  |     +--rw role                           mef-types:evc-uni-role-type
58         |  |     +--rw admin-state-enabled?           boolean
59         |  |     +--rw color-id?                      mef-types:cos-color-identifier-type
60         |  |     +--rw data-svc-frm-cos?              -> /mef-global:mef-global/profiles/cos/cos-profile/id
61         |  |     +--rw l2cp-svc-frm-cos?              -> /mef-global:mef-global/profiles/l2cp-cos/l2cp-profile/id
62         |  |     +--rw soam-svc-frm-cos?              -> /mef-global:mef-global/profiles/cos/cos-profile/id
63         |  |     +--rw data-svc-frm-eec?              -> /mef-global:mef-global/profiles/eec/eec-profile/id
64         |  |     +--rw l2cp-svc-frm-eec?              -> /mef-global:mef-global/profiles/l2cp-eec/l2cp-profile/id
65         |  |     +--rw soam-svc-frm-eec?              -> /mef-global:mef-global/profiles/eec/eec-profile/id
66         |  |     +--rw ingress-bw-profile-per-evc?    -> /mef-interfaces:mef-interfaces/unis/uni[mef-interfaces:uni-id = current()/../uni-id]/ingress-envelopes/envelope/env-id
67         |  |     +--rw egress-bw-profile-per-evc?     -> /mef-interfaces:mef-interfaces/unis/uni[mef-interfaces:uni-id = current()/../uni-id]/egress-envelopes/envelope/env-id
68         |  |     +--rw src-mac-addr-limit-enabled?    boolean
69         |  |     +--rw src-mac-addr-limit?            uint32
70         |  |     +--rw src-mac-addr-limit-interval?   yang:timeticks
71         |  |     +--rw test-meg-enabled?              boolean
72         |  |     +--rw test-meg?                      mef-types:identifier45
73         |  |     +--rw subscriber-meg-mip-enabled?    boolean
74         |  |     +--rw subscriber-meg-mip?            mef-types:identifier45
75         |  +--rw status
76         |  |  +--ro oper-state-enabled?   boolean
77         |  |  +--ro available-status?     mef-types:virt-cx-availability-type
78         |  +--rw sls-inclusions-by-cos
79         |  |  +--rw sls-inclusion-by-cos* [cos-name]
80         |  |     +--rw cos-name    -> /mef-global:mef-global/profiles/cos-names/cos-name/name
81         |  +--rw sls-uni-inclusions!
82         |  |  +--rw sls-uni-inclusion-set* [pm-type pm-id uni-id1 uni-id2]
83         |  |     +--rw pm-type    -> /mef-global:mef-global/slss/sls[mef-global:sls-id = current()/../../../evc-performance-sls]/perf-objs/perf-obj/pm-type
84         |  |     +--rw pm-id      -> /mef-global:mef-global/slss/sls[mef-global:sls-id = current()/../../../evc-performance-sls]/perf-objs/perf-obj[mef-global:pm-type = current()/../pm-type]/pm-id
85         |  |     +--rw uni-id1    -> ../../../unis/uni/uni-id
86         |  |     +--rw uni-id2    -> ../../../unis/uni/uni-id
87         |  +--rw sls-uni-exclusions!
88         |  |  +--rw sls-uni-exclusion-set* [pm-type pm-id uni-id1 uni-id2]
89         |  |     +--rw pm-type    -> /mef-global:mef-global/slss/sls[mef-global:sls-id = current()/../../../evc-performance-sls]/perf-objs/perf-obj/pm-type
90         |  |     +--rw pm-id      -> /mef-global:mef-global/slss/sls[mef-global:sls-id = current()/../../../evc-performance-sls]/perf-objs/perf-obj[mef-global:pm-type = current()/../pm-type]/pm-id
91         |  |     +--rw uni-id1    -> ../../../unis/uni/uni-id
92         |  |     +--rw uni-id2    -> ../../../unis/uni/uni-id
93         |  +--rw evc-id                        mef-types:evc-id-type
94         |  +--ro evc-status?                   mef-types:evc-status-type
95         |  +--rw evc-type                      mef-types:evc-type
96         |  +--rw admin-state-enabled?          boolean
97         |  +--rw elastic-enabled?              boolean
98         |  +--rw elastic-service?              mef-types:identifier45
99         |  +--rw max-uni-count?                uint32
100         |  +--rw preserve-ce-vlan-id?          boolean
101         |  +--rw cos-preserve-ce-vlan-id?      boolean
102         |  +--rw evc-performance-sls?          -> /mef-global:mef-global/slss/sls/sls-id
103         |  +--rw unicast-svc-frm-delivery?     mef-types:data-svc-frame-delivery-type
104         |  +--rw multicast-svc-frm-delivery?   mef-types:data-svc-frame-delivery-type
105         |  +--rw broadcast-svc-frm-delivery?   mef-types:data-svc-frame-delivery-type
106         |  +--rw evc-meg-id?                   mef-types:identifier45
107         |  +--rw max-svc-frame-size?           mef-types:max-svc-frame-size-type
108         +--rw svc-id        mef-types:retail-svc-id-type
109         +--rw sp-id?        -> /mef-global:mef-global/svc-providers/svc-provider/sp-id
110         +--rw svc-type?     mef-types:mef-service-type
111         +--rw user-label?   mef-types:identifier45
112         +--rw svc-entity?   mef-types:service-entity-type
113
114 module: mef-global
115 ::
116   +--rw mef-global
117      +--rw svc-providers!
118      |  +--rw svc-provider* [sp-id]
119      |     +--rw sp-id    mef-types:svc-provider-type
120      +--rw cens!
121      |  +--rw cen* [cen-id]
122      |     +--rw cen-id    mef-types:cen-type
123      |     +--rw sp-id?    -> /mef-global/svc-providers/svc-provider/sp-id
124      +--rw slss!
125      |  +--rw sls* [sls-id]
126      |     +--rw perf-objs
127      |     |  +--rw pm-time-interval                    uint64
128      |     |  +--rw pm-time-interval-increment          uint64
129      |     |  +--rw unavail-flr-threshold-pp            mef-types:simple-percent
130      |     |  +--rw consecutive-small-time-intervals    uint64
131      |     |  +--rw perf-obj* [pm-type pm-id]
132      |     |     +--rw pm-type                                  mef-types:performance-metric-type
133      |     |     +--rw pm-id                                    mef-types:identifier45
134      |     |     +--rw cos-name                                 -> /mef-global/profiles/cos-names/cos-name/name
135      |     |     +--rw fd-pp                                    mef-types:simple-percent
136      |     |     +--rw fd-range-pp                              mef-types:simple-percent
137      |     |     +--rw fd-perf-obj                              uint64
138      |     |     +--rw fd-range-perf-obj                        uint64
139      |     |     +--rw fd-mean-perf-obj                         uint64
140      |     |     +--rw ifdv-pp                                  mef-types:simple-percent
141      |     |     +--rw ifdv-pair-interval                       mef-types:simple-percent
142      |     |     +--rw ifdv-perf-obj                            uint64
143      |     |     +--rw flr-perf-obj                             uint64
144      |     |     +--rw avail-pp                                 mef-types:simple-percent
145      |     |     +--rw hli-perf-obj                             uint64
146      |     |     +--rw chli-consecutive-small-time-intervals    uint64
147      |     |     +--rw chli-perf-obj                            uint64
148      |     |     +--rw min-uni-pairs-avail                      uint64
149      |     |     +--rw gp-avail-pp                              mef-types:simple-percent
150      |     +--rw sls-id       mef-types:cen-type
151      |     +--rw sp-id?       -> /mef-global/svc-providers/svc-provider/sp-id
152      +--rw subscribers!
153      |  +--rw subscriber* [sub-id]
154      |     +--rw sub-id    mef-types:subscriber-type
155      |     +--rw sp-id?    -> /mef-global/svc-providers/svc-provider/sp-id
156      |     +--rw cen-id?   -> /mef-global/cens/cen/cen-id
157      +--rw profiles!
158         +--rw cos-names
159         |  +--rw cos-name* [name]
160         |     +--rw name    mef-types:identifier45
161         +--rw eec-names
162         |  +--rw eec-name* [name]
163         |     +--rw name    mef-types:identifier45
164         +--rw ingress-bwp-flows
165         |  +--rw bwp-flow* [bw-profile]
166         |     +--rw bw-profile          mef-types:identifier45
167         |     +--rw user-label?         mef-types:identifier45
168         |     +--rw cir?                mef-types:bwp-cir-type
169         |     +--rw cir-max?            mef-types:bwp-cir-type
170         |     +--rw cbs?                mef-types:bwp-cbs-type
171         |     +--rw eir?                mef-types:bwp-eir-type
172         |     +--rw eir-max?            mef-types:bwp-eir-type
173         |     +--rw ebs?                mef-types:bwp-ebs-type
174         |     +--rw coupling-enabled?   boolean
175         |     +--rw color-mode?         mef-types:bwp-color-mode-type
176         |     +--rw coupling-flag?      mef-types:bwp-coupling-flag-type
177         +--rw egress-bwp-flows
178         |  +--rw bwp-flow* [bw-profile]
179         |     +--rw bw-profile          mef-types:identifier45
180         |     +--rw user-label?         mef-types:identifier45
181         |     +--rw cir?                mef-types:bwp-cir-type
182         |     +--rw cir-max?            mef-types:bwp-cir-type
183         |     +--rw cbs?                mef-types:bwp-cbs-type
184         |     +--rw eir?                mef-types:bwp-eir-type
185         |     +--rw eir-max?            mef-types:bwp-eir-type
186         |     +--rw ebs?                mef-types:bwp-ebs-type
187         |     +--rw coupling-enabled?   boolean
188         |     +--rw color-mode?         mef-types:bwp-color-mode-type
189         |     +--rw coupling-flag?      mef-types:bwp-coupling-flag-type
190         +--rw l2cp-cos
191         |  +--rw l2cp-profile* [id]
192         |     +--rw l2cps
193         |     |  +--rw l2cp* [dest-mac-addr peering-proto-name]
194         |     |     +--rw dest-mac-addr         yang:mac-address
195         |     |     +--rw peering-proto-name    mef-types:identifier45
196         |     |     +--rw protocol?             mef-types:l2cp-peering-protocol-type
197         |     |     +--rw protocol-id?          yang:hex-string
198         |     |     +--rw cos-name?             -> /mef-global/profiles/cos-names/cos-name/name
199         |     |     +--rw handling?             mef-types:l2cp-handling-type
200         |     |     +--rw subtype*              yang:hex-string
201         |     +--rw id            mef-types:identifier45
202         |     +--rw user-label?   mef-types:identifier45
203         +--rw l2cp-eec
204         |  +--rw l2cp-profile* [id]
205         |     +--rw l2cps
206         |     |  +--rw l2cp* [dest-mac-addr peering-proto-name]
207         |     |     +--rw dest-mac-addr         yang:mac-address
208         |     |     +--rw peering-proto-name    mef-types:identifier45
209         |     |     +--rw protocol?             mef-types:l2cp-peering-protocol-type
210         |     |     +--rw protocol-id?          yang:hex-string
211         |     |     +--rw eec-name?             -> /mef-global/profiles/eec-names/eec-name/name
212         |     |     +--rw handling?             mef-types:l2cp-handling-type
213         |     |     +--rw subtype*              yang:hex-string
214         |     +--rw id            mef-types:identifier45
215         |     +--rw user-label?   mef-types:identifier45
216         +--rw l2cp-peering
217         |  +--rw l2cp-profile* [id]
218         |     +--rw l2cps
219         |     |  +--rw l2cp* [dest-mac-addr peering-proto-name]
220         |     |     +--rw dest-mac-addr         yang:mac-address
221         |     |     +--rw peering-proto-name    mef-types:identifier45
222         |     |     +--rw protocol?             mef-types:l2cp-peering-protocol-type
223         |     |     +--rw protocol-id?          yang:hex-string
224         |     |     +--rw subtype*              yang:hex-string
225         |     +--rw id            mef-types:identifier45
226         |     +--rw user-label?   mef-types:identifier45
227         +--rw elmi
228         |  +--rw elmi-profile* [id]
229         |     +--rw id                            mef-types:identifier45
230         |     +--rw user-label?                   mef-types:identifier45
231         |     +--rw polling-counter?              mef-types:elmi-polling-counter-type
232         |     +--rw status-error-threshold?       mef-types:elmi-status-error-threshold-type
233         |     +--rw polling-timer?                mef-types:elmi-polling-timer-type
234         |     +--rw polling-verification-timer?   mef-types:elmi-polling-verification-timer-type
235         +--rw eec
236         |  +--rw eec-profile* [id]
237         |     +--rw id          mef-types:identifier45
238         |     +--rw (eec-id)?
239         |        +--:(pcp)
240         |        |  +--rw eec-pcp!
241         |        |     +--rw default-pcp-eec-name?   -> /mef-global/profiles/eec-names/eec-name/name
242         |        |     +--rw default-pcp-color?      mef-types:cos-color-type
243         |        |     +--rw pcp* [pcp-value]
244         |        |        +--rw pcp-value        mef-types:ieee8021p-priority-type
245         |        |        +--rw discard-value?   boolean
246         |        |        +--rw eec-name?        -> /mef-global/profiles/eec-names/eec-name/name
247         |        |        +--rw color?           mef-types:cos-color-type
248         |        +--:(dscp)
249         |           +--rw eec-dscp!
250         |              +--rw default-ipv4-eec-name?   -> /mef-global/profiles/eec-names/eec-name/name
251         |              +--rw default-ipv4-color?      mef-types:cos-color-type
252         |              +--rw default-ipv6-eec-name?   -> /mef-global/profiles/eec-names/eec-name/name
253         |              +--rw default-ipv6-color?      mef-types:cos-color-type
254         |              +--rw ipv4-dscp* [dscp-value]
255         |              |  +--rw dscp-value       inet:dscp
256         |              |  +--rw discard-value?   boolean
257         |              |  +--rw eec-name?        -> /mef-global/profiles/eec-names/eec-name/name
258         |              |  +--rw color?           mef-types:cos-color-type
259         |              +--rw ipv6-dscp* [dscp-value]
260         |                 +--rw dscp-value       inet:dscp
261         |                 +--rw discard-value?   boolean
262         |                 +--rw eec-name?        -> /mef-global/profiles/eec-names/eec-name/name
263         |                 +--rw color?           mef-types:cos-color-type
264         +--rw cos
265            +--rw cos-profile* [id]
266               +--rw id          mef-types:identifier45
267               +--rw (cos-id)?
268                  +--:(evc)
269                  |  +--rw cos-evc!
270                  |     +--rw default-evc-cos-name?   -> /mef-global/profiles/cos-names/cos-name/name
271                  |     +--rw default-evc-color?      mef-types:cos-color-type
272                  +--:(pcp)
273                  |  +--rw cos-pcp!
274                  |     +--rw default-pcp-cos-name?   -> /mef-global/profiles/cos-names/cos-name/name
275                  |     +--rw default-pcp-color?      mef-types:cos-color-type
276                  |     +--rw pcp* [pcp-value]
277                  |        +--rw pcp-value        mef-types:ieee8021p-priority-type
278                  |        +--rw discard-value?   boolean
279                  |        +--rw cos-name?        -> /mef-global/profiles/cos-names/cos-name/name
280                  |        +--rw color?           mef-types:cos-color-type
281                  +--:(dscp)
282                     +--rw cos-dscp!
283                        +--rw default-ipv4-cos-name?   -> /mef-global/profiles/cos-names/cos-name/name
284                        +--rw default-ipv4-color?      mef-types:cos-color-type
285                        +--rw default-ipv6-cos-name?   -> /mef-global/profiles/cos-names/cos-name/name
286                        +--rw default-ipv6-color?      mef-types:cos-color-type
287                        +--rw ipv4-dscp* [dscp-value]
288                        |  +--rw dscp-value       inet:dscp
289                        |  +--rw discard-value?   boolean
290                        |  +--rw cos-name?        -> /mef-global/profiles/cos-names/cos-name/name
291                        |  +--rw color?           mef-types:cos-color-type
292                        +--rw ipv6-dscp* [dscp-value]
293                           +--rw dscp-value       inet:dscp
294                           +--rw discard-value?   boolean
295                           +--rw cos-name?        -> /mef-global/profiles/cos-names/cos-name/name
296                           +--rw color?           mef-types:cos-color-type
297
298 Presto API Tree
299 ---------------
300
301 module: onf-core-network-module
302 ::
303   +--rw forwarding-constructs
304      +--rw forwarding-construct* [uuid]
305         +--rw uuid                   string
306         +--rw layerProtocolName?     onf-cnt:LayerProtocolName
307         +--rw lowerLevelFc*          -> /forwarding-constructs/forwarding-construct/uuid
308         +--rw fcRoute* [uuid]
309         |  +--rw uuid    string
310         |  +--rw fc*     -> /forwarding-constructs/forwarding-construct/uuid
311         +--rw fcPort* [topology node tp]
312         |  +--rw topology           nt:topology-ref
313         |  +--rw node               nt:node-ref
314         |  +--rw tp                 nt:tp-ref
315         |  +--rw role?              onf-cnt:PortRole
316         |  +--rw fcPortDirection?   onf-cnt:PortDirection
317         +--rw fcSpec
318         |  +--rw uuid?                      string
319         |  +--rw fcPortSpec* [uuid]
320         |  |  +--rw uuid                string
321         |  |  +--rw ingressFcPortSet* [topology node tp]
322         |  |  |  +--rw topology    nt:topology-ref
323         |  |  |  +--rw node        nt:node-ref
324         |  |  |  +--rw tp          nt:tp-ref
325         |  |  +--rw egressFcPortSet* [topology node tp]
326         |  |  |  +--rw topology    nt:topology-ref
327         |  |  |  +--rw node        nt:node-ref
328         |  |  |  +--rw tp          nt:tp-ref
329         |  |  +--rw role?               string
330         |  +--rw nrp:nrp-ce-fcspec-attrs
331         |     +--rw nrp:connectionType?           nrp-types:NRP_ConnectionType
332         |     +--rw nrp:unicastFrameDelivery?     nrp-types:NRP_ServiceFrameDelivery
333         |     +--rw nrp:multicastFrameDelivery?   nrp-types:NRP_ServiceFrameDelivery
334         |     +--rw nrp:broadcastFrameDelivery?   nrp-types:NRP_ServiceFrameDelivery
335         |     +--rw nrp:vcMaxServiceFrame?        nrp-types:NRP_PositiveInteger
336         |     +--rw nrp:vcId?                     nrp-types:NRP_PositiveInteger
337         +--rw forwardingDirection?   onf-cnt:ForwardingDirection
338
339 augment /nt:network-topology/nt:topology/nt:node/nt:termination-point:
340 ::
341   +--rw ltp-attrs
342      +--rw lpList* [uuid]
343      |  +--rw uuid                        string
344      |  +--rw layerProtocolName?          onf-cnt:LayerProtocolName
345      |  +--rw lpSpec
346      |  |  +--rw adapterSpec
347      |  |  |  +--rw nrp:nrp-conn-adapt-spec-attrs
348      |  |  |  |  +--rw nrp:sourceMacAddressLimit
349      |  |  |  |  |  +--rw nrp:enabled?        boolean
350      |  |  |  |  |  +--rw nrp:limit?          NRP_NaturalNumber
351      |  |  |  |  |  +--rw nrp:timeInterval?   NRP_NaturalNumber
352      |  |  |  |  +--rw nrp:CeExternalInterface
353      |  |  |  |  |  +--rw nrp:physicalLayer?             nrp-types:NRP_PhysicalLayer
354      |  |  |  |  |  +--rw nrp:syncMode* [linkId]
355      |  |  |  |  |  |  +--rw nrp:linkId             string
356      |  |  |  |  |  |  +--rw nrp:syncModeEnabled?   boolean
357      |  |  |  |  |  +--rw nrp:numberOfLinks?             nrp-types:NRP_NaturalNumber
358      |  |  |  |  |  +--rw nrp:resiliency?                nrp-types:NRP_InterfaceResiliency
359      |  |  |  |  |  +--rw nrp:portConvsIdToAggLinkMap
360      |  |  |  |  |  |  +--rw nrp:conversationId?   NRP_NaturalNumber
361      |  |  |  |  |  |  +--rw nrp:linkId?           NRP_NaturalNumber
362      |  |  |  |  |  +--rw nrp:maxFrameSize?              nrp-types:NRP_NaturalNumber
363      |  |  |  |  |  +--rw nrp:linkOamEnabled?            boolean
364      |  |  |  |  |  +--rw nrp:tokenShareEnabled?         boolean
365      |  |  |  |  |  +--rw nrp:serviceProviderUniId?      string
366      |  |  |  |  +--rw nrp:coloridentifier
367      |  |  |  |  |  +--rw (identifier)?
368      |  |  |  |  |     +--:(sap-color-id)
369      |  |  |  |  |     |  +--rw nrp:serviceAccessPointColorId
370      |  |  |  |  |     |     +--rw nrp:color?   nrp-types:NRP_FrameColor
371      |  |  |  |  |     +--:(pcp-color-id)
372      |  |  |  |  |     |  +--rw nrp:pcpColorId
373      |  |  |  |  |     |     +--rw nrp:vlanTag?    nrp-types:NRP_VlanTag
374      |  |  |  |  |     |     +--rw nrp:pcpValue*   nrp-types:NRP_NaturalNumber
375      |  |  |  |  |     |     +--rw nrp:color?      nrp-types:NRP_FrameColor
376      |  |  |  |  |     +--:(dei-color-id)
377      |  |  |  |  |     |  +--rw nrp:deiColorId
378      |  |  |  |  |     |     +--rw nrp:vlanTag?    nrp-types:NRP_VlanTag
379      |  |  |  |  |     |     +--rw nrp:deiValue*   nrp-types:NRP_NaturalNumber
380      |  |  |  |  |     |     +--rw nrp:color?      nrp-types:NRP_FrameColor
381      |  |  |  |  |     +--:(desp-color-id)
382      |  |  |  |  |        +--rw nrp:despColorId
383      |  |  |  |  |           +--rw nrp:ipVersion?   nrp-types:NRP_IpVersion
384      |  |  |  |  |           +--rw nrp:dscpValue*   nrp-types:NRP_NaturalNumber
385      |  |  |  |  |           +--rw nrp:color?       nrp-types:NRP_FrameColor
386      |  |  |  |  +--rw nrp:ingressBwpFlow
387      |  |  |  |  |  +--rw nrp:bwpFlowIndex?         nrp-types:NRP_PositiveInteger
388      |  |  |  |  |  +--rw nrp:cir?                  nrp-types:NRP_NaturalNumber
389      |  |  |  |  |  +--rw nrp:cirMax?               nrp-types:NRP_NaturalNumber
390      |  |  |  |  |  +--rw nrp:cbs?                  nrp-types:NRP_NaturalNumber
391      |  |  |  |  |  +--rw nrp:eir?                  nrp-types:NRP_NaturalNumber
392      |  |  |  |  |  +--rw nrp:eirMax?               nrp-types:NRP_NaturalNumber
393      |  |  |  |  |  +--rw nrp:ebs?                  nrp-types:NRP_NaturalNumber
394      |  |  |  |  |  +--rw nrp:couplingFlag?         nrp-types:NRP_NaturalNumber
395      |  |  |  |  |  +--rw nrp:colorMode?            nrp-types:NRP_ColorMode
396      |  |  |  |  |  +--rw nrp:rank?                 nrp-types:NRP_PositiveInteger
397      |  |  |  |  |  +--rw nrp:tokenRequestOffset?   nrp-types:NRP_NaturalNumber
398      |  |  |  |  +--rw nrp:egressBwpFlow
399      |  |  |  |  |  +--rw nrp:bwpFlowIndex?         nrp-types:NRP_PositiveInteger
400      |  |  |  |  |  +--rw nrp:cir?                  nrp-types:NRP_NaturalNumber
401      |  |  |  |  |  +--rw nrp:cirMax?               nrp-types:NRP_NaturalNumber
402      |  |  |  |  |  +--rw nrp:cbs?                  nrp-types:NRP_NaturalNumber
403      |  |  |  |  |  +--rw nrp:eir?                  nrp-types:NRP_NaturalNumber
404      |  |  |  |  |  +--rw nrp:eirMax?               nrp-types:NRP_NaturalNumber
405      |  |  |  |  |  +--rw nrp:ebs?                  nrp-types:NRP_NaturalNumber
406      |  |  |  |  |  +--rw nrp:couplingFlag?         nrp-types:NRP_NaturalNumber
407      |  |  |  |  |  +--rw nrp:colorMode?            nrp-types:NRP_ColorMode
408      |  |  |  |  |  +--rw nrp:rank?                 nrp-types:NRP_PositiveInteger
409      |  |  |  |  |  +--rw nrp:tokenRequestOffset?   nrp-types:NRP_NaturalNumber
410      |  |  |  |  +--rw nrp:l2cpAddressSet?          nrp-types:NRP_L2cpAddressSet
411      |  |  |  |  +--rw nrp:l2cpPeering* [linkId]
412      |  |  |  |     +--rw nrp:destinationMacAddress?   string
413      |  |  |  |     +--rw nrp:protocolType?            NRP_ProtocolFrameType
414      |  |  |  |     +--rw nrp:linkId                   string
415      |  |  |  |     +--rw nrp:protocolId?              string
416      |  |  |  +--rw nrp:nrp-ivc-endpoint-conn-adapt-spec-attrs
417      |  |  |  |  +--rw nrp:ivcEndPointId?             string
418      |  |  |  |  +--rw nrp:testMegEnabled?            boolean
419      |  |  |  |  +--rw nrp:ivcEndPointRole?           nrp-types:NRP_EndPointRole
420      |  |  |  |  +--rw nrp:ivcEndPointMap* [vlanId]
421      |  |  |  |  |  +--rw nrp:vlanId        nrp-types:NRP_PositiveInteger
422      |  |  |  |  |  +--rw (endpoint-map-form)?
423      |  |  |  |  |     +--:(map-form-e)
424      |  |  |  |  |     |  +--rw nrp:enni-svid* [vid]
425      |  |  |  |  |     |     +--rw nrp:vid    nrp-types:NRP_PositiveInteger
426      |  |  |  |  |     +--:(map-form-t)
427      |  |  |  |  |     |  +--rw nrp:root-svid?    nrp-types:NRP_PositiveInteger
428      |  |  |  |  |     |  +--rw nrp:leaf-svid?    nrp-types:NRP_PositiveInteger
429      |  |  |  |  |     +--:(map-form-v)
430      |  |  |  |  |     |  +--rw nrp:vuni-vid?     nrp-types:NRP_PositiveInteger
431      |  |  |  |  |     |  +--rw nrp:enni-cevid* [vid]
432      |  |  |  |  |     |     +--rw nrp:vid    nrp-types:NRP_PositiveInteger
433      |  |  |  |  |     +--:(map-form-u)
434      |  |  |  |  |        +--rw nrp:cvid* [vid]
435      |  |  |  |  |           +--rw nrp:vid    nrp-types:NRP_PositiveInteger
436      |  |  |  |  +--rw nrp:subscriberMegMipEnabled?   boolean
437      |  |  |  +--rw nrp:nrp-evc-endpoint-conn-adapt-spec-attrs
438      |  |  |     +--rw nrp:sourceMacAddressLimit
439      |  |  |     |  +--rw nrp:enabled?        boolean
440      |  |  |     |  +--rw nrp:limit?          NRP_NaturalNumber
441      |  |  |     |  +--rw nrp:timeInterval?   NRP_NaturalNumber
442      |  |  |     +--rw nrp:CeExternalInterface
443      |  |  |     |  +--rw nrp:physicalLayer?             nrp-types:NRP_PhysicalLayer
444      |  |  |     |  +--rw nrp:syncMode* [linkId]
445      |  |  |     |  |  +--rw nrp:linkId             string
446      |  |  |     |  |  +--rw nrp:syncModeEnabled?   boolean
447      |  |  |     |  +--rw nrp:numberOfLinks?             nrp-types:NRP_NaturalNumber
448      |  |  |     |  +--rw nrp:resiliency?                nrp-types:NRP_InterfaceResiliency
449      |  |  |     |  +--rw nrp:portConvsIdToAggLinkMap
450      |  |  |     |  |  +--rw nrp:conversationId?   NRP_NaturalNumber
451      |  |  |     |  |  +--rw nrp:linkId?           NRP_NaturalNumber
452      |  |  |     |  +--rw nrp:maxFrameSize?              nrp-types:NRP_NaturalNumber
453      |  |  |     |  +--rw nrp:linkOamEnabled?            boolean
454      |  |  |     |  +--rw nrp:tokenShareEnabled?         boolean
455      |  |  |     |  +--rw nrp:serviceProviderUniId?      string
456      |  |  |     +--rw nrp:coloridentifier
457      |  |  |     |  +--rw (identifier)?
458      |  |  |     |     +--:(sap-color-id)
459      |  |  |     |     |  +--rw nrp:serviceAccessPointColorId
460      |  |  |     |     |     +--rw nrp:color?   nrp-types:NRP_FrameColor
461      |  |  |     |     +--:(pcp-color-id)
462      |  |  |     |     |  +--rw nrp:pcpColorId
463      |  |  |     |     |     +--rw nrp:vlanTag?    nrp-types:NRP_VlanTag
464      |  |  |     |     |     +--rw nrp:pcpValue*   nrp-types:NRP_NaturalNumber
465      |  |  |     |     |     +--rw nrp:color?      nrp-types:NRP_FrameColor
466      |  |  |     |     +--:(dei-color-id)
467      |  |  |     |     |  +--rw nrp:deiColorId
468      |  |  |     |     |     +--rw nrp:vlanTag?    nrp-types:NRP_VlanTag
469      |  |  |     |     |     +--rw nrp:deiValue*   nrp-types:NRP_NaturalNumber
470      |  |  |     |     |     +--rw nrp:color?      nrp-types:NRP_FrameColor
471      |  |  |     |     +--:(desp-color-id)
472      |  |  |     |        +--rw nrp:despColorId
473      |  |  |     |           +--rw nrp:ipVersion?   nrp-types:NRP_IpVersion
474      |  |  |     |           +--rw nrp:dscpValue*   nrp-types:NRP_NaturalNumber
475      |  |  |     |           +--rw nrp:color?       nrp-types:NRP_FrameColor
476      |  |  |     +--rw nrp:ingressBwpFlow
477      |  |  |     |  +--rw nrp:bwpFlowIndex?         nrp-types:NRP_PositiveInteger
478      |  |  |     |  +--rw nrp:cir?                  nrp-types:NRP_NaturalNumber
479      |  |  |     |  +--rw nrp:cirMax?               nrp-types:NRP_NaturalNumber
480      |  |  |     |  +--rw nrp:cbs?                  nrp-types:NRP_NaturalNumber
481      |  |  |     |  +--rw nrp:eir?                  nrp-types:NRP_NaturalNumber
482      |  |  |     |  +--rw nrp:eirMax?               nrp-types:NRP_NaturalNumber
483      |  |  |     |  +--rw nrp:ebs?                  nrp-types:NRP_NaturalNumber
484      |  |  |     |  +--rw nrp:couplingFlag?         nrp-types:NRP_NaturalNumber
485      |  |  |     |  +--rw nrp:colorMode?            nrp-types:NRP_ColorMode
486      |  |  |     |  +--rw nrp:rank?                 nrp-types:NRP_PositiveInteger
487      |  |  |     |  +--rw nrp:tokenRequestOffset?   nrp-types:NRP_NaturalNumber
488      |  |  |     +--rw nrp:egressBwpFlow
489      |  |  |     |  +--rw nrp:bwpFlowIndex?         nrp-types:NRP_PositiveInteger
490      |  |  |     |  +--rw nrp:cir?                  nrp-types:NRP_NaturalNumber
491      |  |  |     |  +--rw nrp:cirMax?               nrp-types:NRP_NaturalNumber
492      |  |  |     |  +--rw nrp:cbs?                  nrp-types:NRP_NaturalNumber
493      |  |  |     |  +--rw nrp:eir?                  nrp-types:NRP_NaturalNumber
494      |  |  |     |  +--rw nrp:eirMax?               nrp-types:NRP_NaturalNumber
495      |  |  |     |  +--rw nrp:ebs?                  nrp-types:NRP_NaturalNumber
496      |  |  |     |  +--rw nrp:couplingFlag?         nrp-types:NRP_NaturalNumber
497      |  |  |     |  +--rw nrp:colorMode?            nrp-types:NRP_ColorMode
498      |  |  |     |  +--rw nrp:rank?                 nrp-types:NRP_PositiveInteger
499      |  |  |     |  +--rw nrp:tokenRequestOffset?   nrp-types:NRP_NaturalNumber
500      |  |  |     +--rw nrp:l2cpAddressSet?            nrp-types:NRP_L2cpAddressSet
501      |  |  |     +--rw nrp:l2cpPeering* [linkId]
502      |  |  |     |  +--rw nrp:destinationMacAddress?   string
503      |  |  |     |  +--rw nrp:protocolType?            NRP_ProtocolFrameType
504      |  |  |     |  +--rw nrp:linkId                   string
505      |  |  |     |  +--rw nrp:protocolId?              string
506      |  |  |     +--rw nrp:evcEndPointId?             nrp-types:NRP_PositiveInteger
507      |  |  |     +--rw nrp:testMegEnabled?            boolean
508      |  |  |     +--rw nrp:evcEndPointRole?           nrp-types:NRP_EvcEndPointRole
509      |  |  |     +--rw nrp:evcEndPointMap* [vid]
510      |  |  |     |  +--rw nrp:vid    nrp-types:NRP_PositiveInteger
511      |  |  |     +--rw nrp:subscriberMegMipEbabled?   boolean
512      |  |  +--rw terminationSpec
513      |  |  |  +--rw nrp:nrp-termination-spec-attrs
514      |  |  |  |  +--rw nrp:physicalLayer?             nrp-types:NRP_PhysicalLayer
515      |  |  |  |  +--rw nrp:syncMode* [linkId]
516      |  |  |  |  |  +--rw nrp:linkId             string
517      |  |  |  |  |  +--rw nrp:syncModeEnabled?   boolean
518      |  |  |  |  +--rw nrp:numberOfLinks?             nrp-types:NRP_NaturalNumber
519      |  |  |  |  +--rw nrp:resiliency?                nrp-types:NRP_InterfaceResiliency
520      |  |  |  |  +--rw nrp:portConvsIdToAggLinkMap
521      |  |  |  |  |  +--rw nrp:conversationId?   NRP_NaturalNumber
522      |  |  |  |  |  +--rw nrp:linkId?           NRP_NaturalNumber
523      |  |  |  |  +--rw nrp:maxFrameSize?              nrp-types:NRP_NaturalNumber
524      |  |  |  |  +--rw nrp:linkOamEnabled?            boolean
525      |  |  |  |  +--rw nrp:tokenShareEnabled?         boolean
526      |  |  |  |  +--rw nrp:serviceProviderUniId?      string
527      |  |  |  +--rw nrp:nrp-uni-termination-attrs
528      |  |  |     +--rw nrp:defaultCeVlanId?             nrp-types:NRP_PositiveInteger
529      |  |  |     +--rw nrp:uniMegEnabled?               boolean
530      |  |  |     +--rw nrp:elmiEnabled?                 boolean
531      |  |  |     +--rw nrp:serviceprovideruniprofile?   string
532      |  |  |     +--rw nrp:operatoruniprofile?          string
533      |  |  |     +--rw nrp:ingressBwpUni
534      |  |  |     |  +--rw nrp:bwpFlowIndex?         nrp-types:NRP_PositiveInteger
535      |  |  |     |  +--rw nrp:cir?                  nrp-types:NRP_NaturalNumber
536      |  |  |     |  +--rw nrp:cirMax?               nrp-types:NRP_NaturalNumber
537      |  |  |     |  +--rw nrp:cbs?                  nrp-types:NRP_NaturalNumber
538      |  |  |     |  +--rw nrp:eir?                  nrp-types:NRP_NaturalNumber
539      |  |  |     |  +--rw nrp:eirMax?               nrp-types:NRP_NaturalNumber
540      |  |  |     |  +--rw nrp:ebs?                  nrp-types:NRP_NaturalNumber
541      |  |  |     |  +--rw nrp:couplingFlag?         nrp-types:NRP_NaturalNumber
542      |  |  |     |  +--rw nrp:colorMode?            nrp-types:NRP_ColorMode
543      |  |  |     |  +--rw nrp:rank?                 nrp-types:NRP_PositiveInteger
544      |  |  |     |  +--rw nrp:tokenRequestOffset?   nrp-types:NRP_NaturalNumber
545      |  |  |     +--rw nrp:egressBwpUni
546      |  |  |        +--rw nrp:bwpFlowIndex?         nrp-types:NRP_PositiveInteger
547      |  |  |        +--rw nrp:cir?                  nrp-types:NRP_NaturalNumber
548      |  |  |        +--rw nrp:cirMax?               nrp-types:NRP_NaturalNumber
549      |  |  |        +--rw nrp:cbs?                  nrp-types:NRP_NaturalNumber
550      |  |  |        +--rw nrp:eir?                  nrp-types:NRP_NaturalNumber
551      |  |  |        +--rw nrp:eirMax?               nrp-types:NRP_NaturalNumber
552      |  |  |        +--rw nrp:ebs?                  nrp-types:NRP_NaturalNumber
553      |  |  |        +--rw nrp:couplingFlag?         nrp-types:NRP_NaturalNumber
554      |  |  |        +--rw nrp:colorMode?            nrp-types:NRP_ColorMode
555      |  |  |        +--rw nrp:rank?                 nrp-types:NRP_PositiveInteger
556      |  |  |        +--rw nrp:tokenRequestOffset?   nrp-types:NRP_NaturalNumber
557      |  |  +--rw adapterPropertySpecList* [uuid]
558      |  |  |  +--rw uuid    string
559      |  |  +--rw providerViewSpec
560      |  |  +--rw serverSpecList* [uuid]
561      |  |     +--rw uuid    string
562      |  +--rw configuredClientCapacity?   string
563      |  +--rw lpDirection?                onf-cnt:TerminationDirection
564      |  +--rw terminationState?           string
565      +--rw ltpSpec
566      +--rw ltpDirection?   onf-cnt:TerminationDirection