2 namespace "urn:onf:otcc:yang:tapi-odu";
\r
7 import tapi-connectivity {
\r
8 prefix tapi-connectivity;
\r
10 import tapi-topology {
\r
11 prefix tapi-topology;
\r
19 organization "ONF OTCC (Open Transport Configuration & Control) Project";
\r
21 Project Web: <https://wiki.opennetworking.org/display/OTCC/TAPI>
\r
22 Project List: <mailto:transport-api@opennetworking.org>
\r
23 Editor: Karthik Sethuraman
\r
24 <mailto:karthik.sethuraman@necam.com>";
\r
26 This module contains TAPI Odu Model definitions.
\r
28 - The TAPI YANG models included in this TAPI release are a *normative* part of the TAPI SDK.
\r
29 - The YANG specifications have been generated from the corresponding UML model using the [ONF EAGLE UML2YANG mapping tool]
\r
30 <https://github.com/OpenNetworkingFoundation/EagleUmlYang>
\r
31 and further edited manually to comply with the [ONF IISOMI UML2YANG mapping guidelines]
\r
32 <https://wiki.opennetworking.org/display/OIMT/UML+-+YANG+Guidelines>
\r
33 - Status of YANG model artifacts can be determined by referring to the corresponding UML artifacts.
\r
34 As described in the UML models, some artifacts are considered *experimental*, and thus the corresponding YANG artifacts.
\r
35 - The ONF TAPI release process does not guarantee backward compatibility of YANG models across major versions of TAPI releases.
\r
36 The YANG model backward compatibility criteria are outlined in section 11 of <https://tools.ietf.org/html/rfc7950>.
\r
37 YANG models included in this release may not be backward compatible with previous TAPI releases.
\r
38 Copyright (c) 2018 Open Networking Foundation (ONF). All rights reserved.
\r
39 License: This module is distributed under the Apache License 2.0";
\r
40 revision 2018-12-10 {
\r
41 description "ONF Transport API version 2.1.1.
\r
42 Changes included in this TAPI release (v2.1.1) are listed in
\r
43 <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.1.1.md>";
\r
44 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 7950, RFC 6087 and ONF TAPI UML model
\r
45 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.1.0/UML>";
\r
47 revision 2018-10-16 {
\r
48 description "ONF Transport API version 2.1.0.
\r
49 Changes included in this TAPI release (v2.1.0) are listed in
\r
50 <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.1.0.md>";
\r
51 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 7950, RFC 6087 and ONF TAPI UML model
\r
52 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.1.0/UML>";
\r
54 revision 2018-03-07 {
\r
55 description "ONF Transport API version 2.0.2
\r
56 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
\r
57 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.2.md>";
\r
58 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
\r
59 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.2/UML>";
\r
61 revision 2018-02-16 {
\r
62 description "ONF Transport API version 2.0.1
\r
63 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
\r
64 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.1.md>";
\r
65 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
\r
66 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.1/UML>";
\r
68 revision 2018-01-02 {
\r
69 description "ONF Transport API version 2.0.0
\r
70 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
\r
71 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.0.md>";
\r
72 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
\r
73 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.0/UML>";
\r
75 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point" {
\r
76 container odu-node-edge-point-spec {
\r
77 uses odu-node-edge-point-spec;
\r
78 description "Augments the base LayerProtocol information in NodeEdgePoint with ODU-specific information";
\r
80 description "Augments the base LayerProtocol information in NodeEdgePoint with ODU-specific information";
\r
82 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:cep-list/tapi-connectivity:connection-end-point" {
\r
83 container odu-connection-end-point-spec {
\r
84 uses odu-connection-end-point-spec;
\r
89 augment "/tapi-common:context/tapi-oam:oam-context/tapi-oam:meg/tapi-oam:mep" {
\r
90 container odu-connection-end-point-spec {
\r
91 uses odu-connection-end-point-spec;
\r
96 augment "/tapi-common:context/tapi-oam:oam-context/tapi-oam:meg/tapi-oam:mip" {
\r
97 container odu-mip-spec {
\r
101 description "none";
\r
104 /**************************
\r
105 * package object-classes
\r
106 **************************/
\r
107 grouping odu-termination-and-client-adaptation-pac {
\r
108 leaf opu-tributary-slot-size {
\r
109 type odu-slot-size;
\r
111 description "This attribute is applicable for ODU2 and ODU3 CTP only. It indicates the slot size of the ODU CTP.";
\r
113 leaf auto-payload-type {
\r
116 description "This attribute is applicable when the ODU CTP object instance represents a lower order ODU CTP Source at the client layer of the ODUP/ODUj-21 adaptation function. The value of true of this attribute configures that the adaptation source function shall fall back to the payload type PT=20 if the conditions specified in 14.3.10.1/G.798 are satisfied. ";
\r
118 leaf configured-client-type {
\r
119 type tapi-dsr:digital-signal-type;
\r
121 description "This attribute configures the type of the client CTP of the server ODU TTP.";
\r
123 leaf configured-mapping-type {
\r
126 description "This attributes indicates the configured mapping type.";
\r
128 container accepted-payload-type {
\r
130 uses odu-payload-type;
\r
131 description "This attribute is applicable when the ODU CTP object instance represents a lower order ODU CTP Sink at the client layer of the ODUP/ODU[i]j or ODUP/ODUj-21 adaptation function.
\r
132 This attribute is a 2-digit Hex code that indicates the new accepted payload type.
\r
133 Valid values are defined in Table 15-8 of ITU-T Recommendation G.709 with one additional value UN_INTERPRETABLE.";
\r
135 description "This Pac contains the attributes associated with the client adaptation function of the server layer TTP
\r
136 It is present only if the CEP contains a TTP";
\r
138 grouping odu-connection-end-point-spec {
\r
139 container odu-common {
\r
140 uses odu-common-pac;
\r
141 description "none";
\r
143 container odu-term-and-adapter {
\r
145 uses odu-termination-and-client-adaptation-pac;
\r
146 description "none";
\r
148 container odu-ctp {
\r
151 description "none";
\r
153 container odu-protection {
\r
155 uses odu-protection-pac;
\r
156 description "none";
\r
158 description "none";
\r
160 grouping odu-pool-pac {
\r
161 leaf client-capacity {
\r
163 description "none";
\r
165 leaf max-client-instances {
\r
168 description "none";
\r
170 leaf max-client-size {
\r
173 description "none";
\r
175 description "none";
\r
177 grouping odu-node-edge-point-spec {
\r
178 container odu-pool {
\r
181 description "none";
\r
183 description "none";
\r
185 grouping odu-ctp-pac {
\r
186 leaf-list tributary-slot-list {
\r
189 description "This attribute contains a set of distinct (i.e. unique) integers (e.g. 2, 3, 5, 9, 15 representing the tributary slots TS2, TS3, TS5, TS9 and TS15) which represents the resources occupied by the Low Order ODU Link Connection (e.g. carrying an ODUflex with a bit rate of 6.25G).
\r
190 This attribute applies when the LO ODU_ ConnectionTerminationPoint connects with an HO ODU_TrailTerminationPoint object.
\r
191 It will not apply if this ODU_ ConnectionTerminationPoint object directly connects to an OTU_TrailTerminationPoint object (i.e. OTU has no trib slots).
\r
192 The upper bound of the integer allowed in this set is a function of the HO-ODU server layer to which the ODU connection has been mapped (adapted).
\r
193 Thus, for example, M=8/32/80 for ODU2/ODU3/ODU4 server layers (respectively). Note that the value of this attribute can be changed only in the case of ODUflex and has to be through specific operations (i.e. not be changing the attribute tributarySlotList directly).";
\r
195 leaf tributary-port-number {
\r
198 description "This attribute identifies the tributary port number that is associated with the ODU CTP.
\r
199 range of type : The value range depends on the size of the Tributary Port Number (TPN) field used which depends on th server-layer ODU or OTU.
\r
200 In case of ODUk mapping into OTUk, there is no TPN field, so the tributaryPortNumber shall be zero.
\r
201 In case of LO ODUj mapping over ODU1, ODU2 or ODU3, the TPN is encoded in a 6-bit field so the value range is 0-63. See clause 14.4.1/G.709-2016.
\r
202 In case of LO ODUj mapping over ODU4, the TPN is encoded in a 7-bit field so the value range is 0-127. See clause 14.4.1.4/G.709-2016.
\r
203 In case of ODUk mapping over ODUCn, the TPN is encoded in a 14-bit field so the value range is 0-16383. See clause 20.4.1.1/G.709-2016.
\r
206 leaf accepted-msi {
\r
209 description "This attribute is applicable when the ODU CTP object instance represents a lower order ODU1 or ODU2 CTP Sink at the client layer of the ODU3P/ODU12 adaptation function or represents a lower order ODUj CTP Sink at the client layer of the ODUP/ODUj-21 adaptation function. This attribute is a 1-byte field that represents the accepted multiplex structure of the adaptation function. ";
\r
211 description "This Pac contains the attributes associated with the CTP
\r
212 It is present only if the CEP contains a CTP";
\r
214 grouping odu-mep-spec {
\r
215 container odu-mep {
\r
217 description "none";
\r
219 container odu-ncm {
\r
222 description "none";
\r
224 container odu-tcm {
\r
226 uses odu-tcm-mep-pac;
\r
227 description "none";
\r
229 container odu-defect {
\r
230 uses odu-defect-pac;
\r
231 description "none";
\r
235 description "none";
\r
237 description "none";
\r
239 grouping odu-protection-pac {
\r
243 description "This attribute is for enabling/disabling the automatic protection switching (APS) capability at the transport adaptation function that is represented by the ODU_ConnectionTerminationPoint object class. It triggers the MI_APS_EN signal to the transport adaptation function.";
\r
247 description "This attribute is for configuring the automatic protection switching (APS) level that should operate at the transport adaptation function that is represented by the ODU_ConnectionTerminationPoint object class. It triggers the MI_APS_LVL signal to the transport adaptation function. The value 0 means path and the values 1 through 6 mean TCM level 1 through 6 respectively.";
\r
249 description "none";
\r
251 grouping odu-ncm-pac {
\r
252 leaf-list tcm-fields-in-use {
\r
255 description "This attribute indicates the used TCM fields of the ODU OH.";
\r
257 description "none";
\r
259 grouping odu-tcm-mep-pac {
\r
260 leaf tcm-extension {
\r
261 type tcm-extension;
\r
262 description "none";
\r
266 description "This attribute specifies the TCM mode at the entity. Valid values are: Operational, Monitor, and Transparent.";
\r
268 leaf codirectional {
\r
271 description "This attribute specifies the directionality of the ODUT MEP with respect to the associated ODU CEP. The value of TRUE means that the sink part of the ODUT MEP terminates the same signal direction as the sink part of the ODU CEP. The Source part behaves similarly. This attribute is meaningful only on objects instantiated under ODU CEP, and at least one among ODU CEP and the subordinate object is bidirectional.";
\r
273 leaf ac-status-source {
\r
276 description "This attribute indicates the status of the accepted TCM. ";
\r
278 leaf ac-status-sink {
\r
281 description "This attribute indicates the status of the accepted TCM. ";
\r
283 leaf admin-state-source {
\r
284 type tapi-common:administrative-state;
\r
285 description "This attribute provides the capability to provision the LOCK signal at the source, which is one of the ODU maintenance signals. When a Tandem Connection endpoint is set to admin state locked, it will insert the ODU-LCK signal in the source direction.";
\r
287 leaf admin-state-sink {
\r
288 type tapi-common:administrative-state;
\r
289 description "This attribute provides the capability to provision the LOCK signal at the sink, which is one of the ODU maintenance signals. When a Tandem Connection endpoint is set to admin state locked, it will insert the ODU-LCK signal in the downstream direction.";
\r
291 uses odu-tcm-mip-pac;
\r
292 description "none";
\r
294 grouping odu-mip-spec {
\r
295 container odu-mip {
\r
298 description "none";
\r
300 container odu-ncm {
\r
303 description "none";
\r
305 container odu-tcm {
\r
307 uses odu-tcm-mip-pac;
\r
308 description "none";
\r
312 description "none";
\r
314 container odu-defect {
\r
315 uses odu-defect-pac;
\r
316 description "none";
\r
318 description "none";
\r
320 grouping odu-mip-pac {
\r
324 description "The Trail Trace Identifier (TTI) information recovered (Accepted) from the TTI overhead position at the sink of a trail.";
\r
328 description "The Expected Destination Access Point Identifier (ExDAPI), provisioned by the managing system, to be compared with the TTI accepted at the overhead position of the sink for the purpose of checking the integrity of connectivity.";
\r
332 description "The Expected Source Access Point Identifier (ExSAPI), provisioned by the managing system, to be compared with the TTI accepted at the overhead position of the sink for the purpose of checking the integrity of connectivity.
\r
335 leaf tim-act-disabled {
\r
338 description "This attribute provides the control capability for the managing system to enable or disable the Consequent Action function when detecting Trace Identifier Mismatch (TIM) at the trail termination sink.";
\r
340 leaf tim-det-mode {
\r
342 description "This attribute indicates the mode of the Trace Identifier Mismatch (TIM) Detection function allowed values: OFF, SAPIonly, DAPIonly, SAPIandDAPI";
\r
346 description "This attribute indicates the threshold level for declaring a Degraded Signal defect (dDEG). A dDEG shall be declared if DegM consecutive bad PM Seconds are detected.";
\r
348 container deg-thr {
\r
350 description "This attribute indicates the threshold level for declaring a performance monitoring (PM) Second to be bad. The value of the threshold can be provisioned in terms of number of errored blocks or in terms of percentage of errored blocks. For percentage-based specification, in order to support provision of less than 1%, the specification consists of two fields. The first field indicates the granularity of percentage. For examples, in 1%, in 0.1%, or in 0.01%, etc. The second field indicates the multiple of the granularity. For number of errored block based, the value is a positive integer.";
\r
352 description "none";
\r
354 grouping odu-tcm-mip-pac {
\r
358 description "This attribute indicates the tandem connection monitoring field of the ODU OH.";
\r
360 description "none";
\r
362 grouping odu-mep-pac {
\r
365 description "This attribute is for configuring the delay measurement process at the trail termination function represented by the subject TTP object class. It models the MI_DM_Source MI signal. If MI_DM_Source is false, then the value of the DMp bit is determined by the RI_DM. If MI_DM_Source is true, then the value of the DMp bit is set to MI_DMValue.";
\r
369 description "This attribute is for setting the DMp and DMti bits of the delay measurement process. The value of 'true' sets the DMp and DMti bits to 0 and the value of 'false' to 1.";
\r
373 description "The Trail Trace Identifier (TTI) information, provisioned by the managing system at the termination source, to be placed in the TTI overhead position of the source of a trail for transmission.
\r
377 description "none";
\r
379 grouping odu-common-pac {
\r
383 description "This attribute specifies the type of the ODU termination point.";
\r
388 description "This attribute indicates the rate of the ODU terminatino point.
\r
389 This attribute is Set at create; i.e., once created it cannot be changed directly.
\r
390 In case of resizable ODU flex, its value can be changed via HAO (not directly on the attribute).
\r
393 leaf odu-rate-tolerance {
\r
396 description "This attribute indicates the rate tolerance of the ODU termination point.
\r
397 Valid values are real value in the unit of ppm.
\r
398 Standardized values are defined in Table 7-2/G.709.";
\r
400 description "none";
\r
402 grouping odu-pm-pac {
\r
405 description "Near-end Background Block Error";
\r
410 description "Far-end Background Block Error";
\r
414 description "Near-end Severely Errored Second";
\r
418 description "Far-end Severely Errored Second";
\r
422 description "UnAvailable Second";
\r
424 description "Instance of this object class contains the ODUP layer-specific Current Data. This object class is a subclass of the OTN_CurrentData object class.
\r
425 PM data attributes: fBbe, fSes, nBbe, nSes. uas";
\r
427 grouping odu-defect-pac {
\r
431 description "Backward Defect Indication";
\r
436 description "Signal Degraded";
\r
441 description "Locked";
\r
446 description "Open Connection Indicator";
\r
451 description "Server Signal Failure";
\r
456 description "Trail Trace Identifier Mismatch";
\r
458 description "The valid list of defects raised on the entity. If the value of any attribute is true, then the corresponding defect is raised.";
\r
461 /**************************
\r
462 * package type-definitions
\r
463 **************************/
\r
464 identity ODU_TYPE {
\r
465 base tapi-common:LAYER_PROTOCOL_QUALIFIER;
\r
466 description "none";
\r
468 identity ODU_TYPE_ODU0 {
\r
470 description "none";
\r
472 identity ODU_TYPE_ODU1 {
\r
474 description "none";
\r
476 identity ODU_TYPE_ODU2 {
\r
478 description "none";
\r
480 identity ODU_TYPE_ODU2E {
\r
482 description "none";
\r
484 identity ODU_TYPE_ODU3 {
\r
486 description "none";
\r
488 identity ODU_TYPE_ODU4 {
\r
490 description "none";
\r
492 identity ODU_TYPE_ODU_FLEX {
\r
494 description "none";
\r
496 identity ODU_TYPE_ODU_CN {
\r
498 description "none";
\r
504 description "none";
\r
506 typedef mapping-type {
\r
509 description "none";
\r
512 description "none";
\r
515 description "none";
\r
518 description "none";
\r
521 description "none";
\r
524 description "none";
\r
527 description "none";
\r
529 typedef tim-det-mo {
\r
532 description "none";
\r
535 description "none";
\r
538 description "none";
\r
541 description "none";
\r
544 description "List of modes for trace identifier mismatch detection.";
\r
546 typedef odu-slot-size {
\r
549 description "none";
\r
552 description "none";
\r
555 description "none";
\r
557 grouping odu-payload-type {
\r
558 leaf named-payload-type {
\r
559 type odu-named-payload-type;
\r
560 description "none";
\r
562 leaf hex-payload-type {
\r
564 description "none";
\r
566 description "none";
\r
568 typedef odu-named-payload-type {
\r
571 description "none";
\r
573 enum UNINTERPRETABLE {
\r
574 description "none";
\r
577 description "none";
\r
580 leaf deg-thr-value {
\r
582 description "Percentage of detected errored blocks";
\r
584 leaf deg-thr-type {
\r
586 description "Number of errored blocks";
\r
588 leaf percentage-granularity {
\r
589 type percentage-granularity;
\r
590 description "none";
\r
592 description "Degraded Threshold, specify either the percentage or the number of Errored Blocks in the defined interval.
\r
593 degThrValue when type is PERCENTAGE:
\r
594 percentageGranularity is used to indicate the number of decimal points
\r
595 So if percentageGranularity is ones, a value of 1 in degThrValue would indicate 1%, a value of 10 = 10%, a value of 100 = 100%
\r
596 So if percentageGranularity is thousandths a value of 1 in degThrValue would indicate 0.001%, a value of 1000 = 1%, a value of 1000000 = 100%
\r
597 degThrValue when type is NUMBER_ERROR_BLOCKS:
\r
598 Number of Errored Blocks is captured in an integer value.";
\r
600 typedef deg-thr-type {
\r
603 description "Choice of % or Number of errored blocks";
\r
605 enum NUMBER_ERRORED_BLOCKS {
\r
606 description "Number of % or blocks";
\r
609 description "The value of the threshold can be provisioned in terms of number of errored blocks or in terms of percentage of errored blocks. For percentage-based specification, in order to support provision of less than 1%, the specification consists of two fields. The first field indicates the granularity of percentage. For examples, in 1%, in 0.1%, or in 0.01%, etc. The second field indicates the multiple of the granularity. For number of errored block based, the value is a positive integer.";
\r
611 typedef tcm-status {
\r
613 enum NO_SOURCE_TC {
\r
614 description "TCM byte 3 (bits 6 7 8) -- 0 0 0, No source Tandem Connection";
\r
616 enum IN_USE_WITHOUT_IAE {
\r
617 description "TCM byte 3 (bits 6 7 8) -- 0 0 1, In use without IAE (Incoming Alignment Error)";
\r
619 enum IN_USE_WITH_IAE {
\r
620 description "TCM byte 3 (bits 6 7 8) -- 0 1 0, In use with IAE (Incoming Alignment Error)";
\r
623 description "TCM byte 3 (bits 6 7 8) -- 0 1 1, Reserved for future international standardization";
\r
626 description "TCM byte 3 (bits 6 7 8) -- 1 0 0, Reserved for future international standardization";
\r
629 description "TCM byte 3 (bits 6 7 8) -- 1 0 1, Maintenance signal: ODU-LCK";
\r
632 description "TCM byte 3 (bits 6 7 8) -- 1 1 0, Maintenance signal: ODU-OCI";
\r
635 description "TCM byte 3 (bits 6 7 8) -- 1 1 1, Maintenance signal: ODU-AIS";
\r
638 description "See Table 15-5/G.709/Y.1331 ";
\r
643 description "none";
\r
646 description "none";
\r
649 description "none";
\r
652 description "List of value modes for the sink side of the tandem connection monitoring function.";
\r
654 typedef tcm-monitoring {
\r
657 description "none";
\r
659 enum NON-INTRUSIVE {
\r
660 description "none";
\r
663 description "Monitoring types for the tandem connection monitoring function.";
\r
665 typedef tcm-extension {
\r
668 description "none";
\r
670 enum PASS-THROUGH {
\r
671 description "none";
\r
674 description "none";
\r
677 description "none";
\r
679 typedef percentage-granularity {
\r
682 description "none";
\r
685 description "value * (1/10)";
\r
687 enum ONE_HUNDREDTHS {
\r
688 description "value * (1/100)";
\r
690 enum ONE_THOUSANDTHS {
\r
691 description "value * (1/1000)";
\r
694 description "none";
\r
696 grouping uas-choice {
\r
697 leaf bidirectional {
\r
700 description "none";
\r
704 description "none";
\r
708 description "none";
\r
712 description "none";
\r
714 description "If bidirectional is TRUE then use the uas attribute, if bidirectional is FALSE use the nuas, and fuas attributes";
\r