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