blob: 41c8b0d87cf5f821f34d8603e52d86b06f55c680 [file] [log] [blame]
Toru Furusawa28988892017-10-30 17:28:40 -07001module tapi-odu {
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -08002 namespace "urn:onf:otcc:yang:tapi-odu";
Toru Furusawa28988892017-10-30 17:28:40 -07003 prefix tapi-odu;
4 import tapi-common {
5 prefix tapi-common;
6 }
7 import tapi-connectivity {
8 prefix tapi-connectivity;
9 }
10 import tapi-topology {
11 prefix tapi-topology;
12 }
13 import tapi-oam {
14 prefix tapi-oam;
15 }
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -080016 organization "ONF OTCC (Open Transport Configuration & Control) Project";
17 contact "
18 Project Web: <https://wiki.opennetworking.org/display/OTCC/TAPI>
19 Project List: <mailto:transport-api@opennetworking.org>
20 Editor: Karthik Sethuraman
21 <mailto:karthik.sethuraman@necam.com>";
22 description "
23 This module contains TAPI Odu Model definitions.
24 Source: TapiOdu.uml
25 Copyright (c) 2018 Open Networking Foundation (ONF). All rights reserved.
26 License: This module is distributed under the Apache License 2.0";
Yuta HIGUCHI7f165b12018-03-25 19:05:29 -070027 revision 2018-03-07 {
28 description "ONF Transport API version 2.0.2
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -080029 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool version .
30 <https://wiki.opennetworking.org/display/OIMT/IISOMI>
Yuta HIGUCHI7f165b12018-03-25 19:05:29 -070031 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/change-log.md>";
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -080032 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
Yuta HIGUCHI7f165b12018-03-25 19:05:29 -070033 <https://github.com/OpenNetworkingFoundation/TAPI/tree/develop/UML>";
Toru Furusawa28988892017-10-30 17:28:40 -070034 }
35 augment "/tapi-common:context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point" {
36 uses odu-node-edge-point-spec;
37 description "Augments the base LayerProtocol information in NodeEdgePoint with ODU-specific information";
38 }
39 augment "/tapi-common:context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:connection-end-point" {
40 uses odu-connection-end-point-spec;
41 description "none";
42 }
43 augment "/tapi-common:context/tapi-oam:meg/tapi-oam:mep" {
44 uses odu-connection-end-point-spec;
45 description "none";
46 }
47 augment "/tapi-common:context/tapi-oam:meg/tapi-oam:mip" {
48 uses odu-mip-spec;
49 description "none";
50 }
51 /***********************
52 * package object-classes
53 **********************/
54 grouping odu-termination-and-client-adaptation-pac {
55 leaf opu-tributary-slot-size {
56 type odu-slot-size;
57 config false;
58 description "This attribute is applicable for ODU2 and ODU3 CTP only. It indicates the slot size of the ODU CTP.";
59 }
60 leaf auto-payload-type {
61 type boolean;
62 config false;
63 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. ";
64 }
65 leaf configured-client-type {
66 type string;
67 config false;
68 description "This attribute configures the type of the client CTP of the server ODU TTP.";
69 }
70 leaf configured-mapping-type {
71 type mapping-type;
72 config false;
73 description "This attributes indicates the configured mapping type.";
74 }
75 container accepted-payload-type {
76 config false;
77 uses odu-payload-type;
78 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.
79 This attribute is a 2-digit Hex code that indicates the new accepted payload type.
80 Valid values are defined in Table 15-8 of ITU-T Recommendation G.709 with one additional value UN_INTERPRETABLE.";
81 }
82 description "This Pac contains the attributes associated with the client adaptation function of the server layer TTP
83 It is present only if the CEP contains a TTP";
84 }
85 grouping odu-connection-end-point-spec {
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -080086 container odu-common {
87 uses odu-common-pac;
88 description "none";
89 }
90 container odu-term-and-adapter {
91 config false;
92 uses odu-termination-and-client-adaptation-pac;
93 description "none";
94 }
95 container odu-ctp {
96 config false;
97 uses odu-ctp-pac;
98 description "none";
99 }
100 container odu-protection {
101 config false;
102 uses odu-protection-pac;
103 description "none";
104 }
Toru Furusawa28988892017-10-30 17:28:40 -0700105 description "none";
106 }
107 grouping odu-pool-pac {
108 leaf client-capacity {
109 type uint64;
110 description "none";
111 }
112 leaf max-client-instances {
113 type uint64;
114 config false;
115 description "none";
116 }
117 leaf max-client-size {
118 type uint64;
119 config false;
120 description "none";
121 }
122 description "none";
123 }
124 grouping odu-node-edge-point-spec {
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -0800125 container odu-pool {
126 config false;
127 uses odu-pool-pac;
128 description "none";
129 }
Toru Furusawa28988892017-10-30 17:28:40 -0700130 description "none";
131 }
132 grouping odu-ctp-pac {
133 leaf-list tributary-slot-list {
134 type uint64;
135 config false;
136 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).
137 This attribute applies when the LO ODU_ ConnectionTerminationPoint connects with an HO ODU_TrailTerminationPoint object.
138 It will not apply if this ODU_ ConnectionTerminationPoint object directly connects to an OTU_TrailTerminationPoint object (i.e. OTU has no trib slots).
139 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).
140 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).";
141 }
142 leaf tributary-port-number {
143 type uint64;
144 config false;
145 description "This attribute identifies the tributary port number that is associated with the ODU CTP.
146 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.
147 In case of ODUk mapping into OTUk, there is no TPN field, so the tributaryPortNumber shall be zero.
148 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.
149 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.
150 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.
151 ";
152 }
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -0800153 leaf accepted-msi {
Toru Furusawa28988892017-10-30 17:28:40 -0700154 type string;
155 config false;
156 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. ";
157 }
158 description "This Pac contains the attributes associated with the CTP
159 It is present only if the CEP contains a CTP";
160 }
161 grouping odu-mep-spec {
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -0800162 container odu-mep {
163 uses odu-mep-pac;
164 description "none";
165 }
166 container odu-ncm {
167 config false;
168 uses odu-ncm-pac;
169 description "none";
170 }
171 container odu-tcm {
172 config false;
173 uses odu-tcm-mep-pac;
174 description "none";
175 }
176 container odu-defect {
177 uses odu-defect-pac;
178 description "none";
179 }
180 container odu-pm {
181 uses odu-pm-pac;
182 description "none";
183 }
Toru Furusawa28988892017-10-30 17:28:40 -0700184 description "none";
185 }
186 grouping odu-protection-pac {
187 leaf aps-enable {
188 type boolean;
189 default "true";
190 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.";
191 }
192 leaf aps-level {
193 type uint64;
194 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.";
195 }
196 description "none";
197 }
198 grouping odu-ncm-pac {
199 leaf-list tcm-fields-in-use {
200 type uint64;
201 config false;
202 description "This attribute indicates the used TCM fields of the ODU OH.";
203 }
204 description "none";
205 }
206 grouping odu-tcm-mep-pac {
207 leaf tcm-extension {
208 type tcm-extension;
209 description "none";
210 }
211 leaf tcm-mode {
212 type tcm-mode;
213 description "This attribute specifies the TCM mode at the entity. Valid values are: Operational, Monitor, and Transparent.";
214 }
215 leaf codirectional {
216 type boolean;
217 config false;
218 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.";
219 }
220 leaf ac-status-source {
221 type tcm-status;
222 config false;
223 description "This attribute indicates the status of the accepted TCM. ";
224 }
225 leaf ac-status-sink {
226 type tcm-status;
227 config false;
228 description "This attribute indicates the status of the accepted TCM. ";
229 }
230 leaf admin-state-source {
231 type tapi-common:administrative-state;
232 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.";
233 }
234 leaf admin-state-sink {
235 type tapi-common:administrative-state;
236 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.";
237 }
238 uses odu-tcm-mip-pac;
239 description "none";
240 }
241 grouping odu-mip-spec {
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -0800242 container odu-mip {
243 config false;
244 uses odu-mip-pac;
245 description "none";
246 }
247 container odu-ncm {
248 config false;
249 uses odu-ncm-pac;
250 description "none";
251 }
252 container odu-tcm {
253 config false;
254 uses odu-tcm-mip-pac;
255 description "none";
256 }
257 container odu-pm {
258 uses odu-pm-pac;
259 description "none";
260 }
261 container odu-defect {
262 uses odu-defect-pac;
263 description "none";
264 }
Toru Furusawa28988892017-10-30 17:28:40 -0700265 description "none";
266 }
267 grouping odu-mip-pac {
268 leaf acti {
269 type string;
270 config false;
271 description "The Trail Trace Identifier (TTI) information recovered (Accepted) from the TTI overhead position at the sink of a trail.";
272 }
273 leaf ex-dapi {
274 type string;
275 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.";
276 }
277 leaf ex-sapi {
278 type string;
279 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.
280 ";
281 }
282 leaf tim-act-disabled {
283 type boolean;
284 default "true";
285 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.";
286 }
287 leaf tim-det-mode {
288 type tim-det-mo;
289 description "This attribute indicates the mode of the Trace Identifier Mismatch (TIM) Detection function allowed values: OFF, SAPIonly, DAPIonly, SAPIandDAPI";
290 }
291 leaf deg-m {
292 type uint64;
293 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.";
294 }
295 container deg-thr {
296 uses deg-thr;
297 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.";
298 }
299 description "none";
300 }
301 grouping odu-tcm-mip-pac {
302 leaf tcm-field {
303 type uint64;
304 config false;
305 description "This attribute indicates the tandem connection monitoring field of the ODU OH.";
306 }
307 description "none";
308 }
309 grouping odu-mep-pac {
310 leaf dm-source {
311 type boolean;
312 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.";
313 }
314 leaf dm-value {
315 type boolean;
316 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.";
317 }
318 leaf txti {
319 type string;
320 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.
321 ";
322 }
323 uses odu-mip-pac;
324 description "none";
325 }
326 grouping odu-common-pac {
327 leaf odu-type {
328 type odu-type;
329 config false;
330 description "This attribute specifies the type of the ODU termination point.";
331 }
332 leaf odu-rate {
333 type uint64;
334 config false;
335 description "This attribute indicates the rate of the ODU terminatino point.
336 This attribute is Set at create; i.e., once created it cannot be changed directly.
337 In case of resizable ODU flex, its value can be changed via HAO (not directly on the attribute).
338 ";
339 }
340 leaf odu-rate-tolerance {
341 type uint64;
342 config false;
343 description "This attribute indicates the rate tolerance of the ODU termination point.
344 Valid values are real value in the unit of ppm.
345 Standardized values are defined in Table 7-2/G.709.";
346 }
347 description "none";
348 }
349 grouping odu-pm-pac {
350 leaf n-bbe {
351 type uint64;
352 description "Near-end Background Block Error";
353 }
354 leaf f-bbe {
355 type uint64;
356 config false;
357 description "Far-end Background Block Error";
358 }
359 leaf n-ses {
360 type uint64;
361 description "Near-end Severely Errored Second";
362 }
363 leaf f-ses {
364 type uint64;
365 description "Far-end Severely Errored Second";
366 }
367 container uas {
368 uses uas-choice;
369 description "UnAvailable Second";
370 }
371 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.
372 PM data attributes: fBbe, fSes, nBbe, nSes. uas";
373 }
374 grouping odu-defect-pac {
375 leaf bdi {
376 type boolean;
377 config false;
378 description "Backward Defect Indication";
379 }
380 leaf deg {
381 type boolean;
382 config false;
383 description "Signal Degraded";
384 }
385 leaf lck {
386 type boolean;
387 config false;
388 description "Locked";
389 }
390 leaf oci {
391 type boolean;
392 config false;
393 description "Open Connection Indicator";
394 }
395 leaf ssf {
396 type boolean;
397 config false;
398 description "Server Signal Failure";
399 }
400 leaf tim {
401 type boolean;
402 config false;
403 description "Trail Trace Identifier Mismatch";
404 }
405 description "The valid list of defects raised on the entity. If the value of any attribute is true, then the corresponding defect is raised.";
406 }
Toru Furusawa28988892017-10-30 17:28:40 -0700407
408 /***********************
409 * package type-definitions
410 **********************/
Toru Furusawa28988892017-10-30 17:28:40 -0700411 typedef odu-type {
412 type enumeration {
wu6a418d22018-02-02 01:49:21 -0500413 enum ODU0 {
Toru Furusawa28988892017-10-30 17:28:40 -0700414 description "none";
415 }
wu6a418d22018-02-02 01:49:21 -0500416 enum ODU1 {
Toru Furusawa28988892017-10-30 17:28:40 -0700417 description "none";
418 }
wu6a418d22018-02-02 01:49:21 -0500419 enum ODU2 {
Toru Furusawa28988892017-10-30 17:28:40 -0700420 description "none";
421 }
wu6a418d22018-02-02 01:49:21 -0500422 enum ODU2E {
Toru Furusawa28988892017-10-30 17:28:40 -0700423 description "none";
424 }
wu6a418d22018-02-02 01:49:21 -0500425 enum ODU3 {
Toru Furusawa28988892017-10-30 17:28:40 -0700426 description "none";
427 }
wu6a418d22018-02-02 01:49:21 -0500428 enum ODU4 {
Toru Furusawa28988892017-10-30 17:28:40 -0700429 description "none";
430 }
wu6a418d22018-02-02 01:49:21 -0500431 enum ODU_FLEX {
Toru Furusawa28988892017-10-30 17:28:40 -0700432 description "none";
433 }
wu6a418d22018-02-02 01:49:21 -0500434 enum ODU_CN {
Toru Furusawa28988892017-10-30 17:28:40 -0700435 description "none";
436 }
437 }
438 description "none";
439 }
440 typedef mapping-type {
441 type enumeration {
wu6a418d22018-02-02 01:49:21 -0500442 enum AMP {
Toru Furusawa28988892017-10-30 17:28:40 -0700443 description "none";
444 }
wu6a418d22018-02-02 01:49:21 -0500445 enum BMP {
Toru Furusawa28988892017-10-30 17:28:40 -0700446 description "none";
447 }
wu6a418d22018-02-02 01:49:21 -0500448 enum GFP-F {
Toru Furusawa28988892017-10-30 17:28:40 -0700449 description "none";
450 }
wu6a418d22018-02-02 01:49:21 -0500451 enum GMP {
Toru Furusawa28988892017-10-30 17:28:40 -0700452 description "none";
453 }
wu6a418d22018-02-02 01:49:21 -0500454 enum TTP_GFP_BMP {
Toru Furusawa28988892017-10-30 17:28:40 -0700455 description "none";
456 }
wu6a418d22018-02-02 01:49:21 -0500457 enum NULL {
Toru Furusawa28988892017-10-30 17:28:40 -0700458 description "none";
459 }
460 }
461 description "none";
462 }
463 typedef tim-det-mo {
464 type enumeration {
wu6a418d22018-02-02 01:49:21 -0500465 enum DAPI {
Toru Furusawa28988892017-10-30 17:28:40 -0700466 description "none";
467 }
wu6a418d22018-02-02 01:49:21 -0500468 enum SAPI {
Toru Furusawa28988892017-10-30 17:28:40 -0700469 description "none";
470 }
wu6a418d22018-02-02 01:49:21 -0500471 enum BOTH {
Toru Furusawa28988892017-10-30 17:28:40 -0700472 description "none";
473 }
wu6a418d22018-02-02 01:49:21 -0500474 enum OFF {
Toru Furusawa28988892017-10-30 17:28:40 -0700475 description "none";
476 }
477 }
478 description "List of modes for trace identifier mismatch detection.";
479 }
480 typedef odu-slot-size {
481 type enumeration {
wu6a418d22018-02-02 01:49:21 -0500482 enum 1G25 {
Toru Furusawa28988892017-10-30 17:28:40 -0700483 description "none";
484 }
wu6a418d22018-02-02 01:49:21 -0500485 enum 2G5 {
Toru Furusawa28988892017-10-30 17:28:40 -0700486 description "none";
487 }
488 }
489 description "none";
490 }
491 grouping odu-payload-type {
492 leaf named-payload-type {
493 type odu-named-payload-type;
494 description "none";
495 }
496 leaf hex-payload-type {
497 type uint64;
498 description "none";
499 }
500 description "none";
501 }
502 typedef odu-named-payload-type {
503 type enumeration {
wu6a418d22018-02-02 01:49:21 -0500504 enum UNKNOWN {
Toru Furusawa28988892017-10-30 17:28:40 -0700505 description "none";
506 }
wu6a418d22018-02-02 01:49:21 -0500507 enum UNINTERPRETABLE {
Toru Furusawa28988892017-10-30 17:28:40 -0700508 description "none";
509 }
510 }
511 description "none";
512 }
513 grouping deg-thr {
514 leaf deg-thr-value {
515 type uint64;
516 description "Percentage of detected errored blocks";
517 }
518 leaf deg-thr-type {
519 type deg-thr-type;
520 description "Number of errored blocks";
521 }
522 leaf percentage-granularity {
523 type percentage-granularity;
524 description "none";
525 }
526 description "Degraded Threshold, specify either the percentage or the number of Errored Blocks in the defined interval.
527 degThrValue when type is PERCENTAGE:
528 percentageGranularity is used to indicate the number of decimal points
529 So if percentageGranularity is ones, a value of 1 in degThrValue would indicate 1%, a value of 10 = 10%, a value of 100 = 100%
530 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%
531 degThrValue when type is NUMBER_ERROR_BLOCKS:
532 Number of Errored Blocks is captured in an integer value.";
533 }
534 typedef deg-thr-type {
wu6a418d22018-02-02 01:49:21 -0500535 type enumeration {
536 enum PERCENTAGE {
537 description "Choice of % or Number of errored blocks";
538 }
539 enum NUMBER_ERRORED_BLOCKS {
540 description "Number of % or blocks";
541 }
Toru Furusawa28988892017-10-30 17:28:40 -0700542 }
543 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.";
544 }
545 typedef tcm-status {
wu6a418d22018-02-02 01:49:21 -0500546 type enumeration {
547 enum NO_SOURCE_TC {
548 description "TCM byte 3 (bits 6 7 8) -- 0 0 0, No source Tandem Connection";
549 }
550 enum IN_USE_WITHOUT_IAE {
551 description "TCM byte 3 (bits 6 7 8) -- 0 0 1, In use without IAE (Incoming Alignment Error)";
552 }
553 enum IN_USE_WITH_IAE {
554 description "TCM byte 3 (bits 6 7 8) -- 0 1 0, In use with IAE (Incoming Alignment Error)";
555 }
556 enum RESERVED_1 {
557 description "TCM byte 3 (bits 6 7 8) -- 0 1 1, Reserved for future international standardization";
558 }
559 enum RESERVED_2 {
560 description "TCM byte 3 (bits 6 7 8) -- 1 0 0, Reserved for future international standardization";
561 }
562 enum LCK {
563 description "TCM byte 3 (bits 6 7 8) -- 1 0 1, Maintenance signal: ODU-LCK";
564 }
565 enum OCI {
566 description "TCM byte 3 (bits 6 7 8) -- 1 1 0, Maintenance signal: ODU-OCI";
567 }
568 enum AIS {
569 description "TCM byte 3 (bits 6 7 8) -- 1 1 1, Maintenance signal: ODU-AIS";
570 }
Toru Furusawa28988892017-10-30 17:28:40 -0700571 }
572 description "See Table 15-5/G.709/Y.1331 ";
573 }
574 typedef tcm-mode {
wu6a418d22018-02-02 01:49:21 -0500575 type enumeration {
576 enum OPERATIONAL {
577 description "none";
578 }
579 enum TRANSPARENT {
580 description "none";
581 }
582 enum MONITOR {
583 description "none";
584 }
Toru Furusawa28988892017-10-30 17:28:40 -0700585 }
586 description "List of value modes for the sink side of the tandem connection monitoring function.";
587 }
588 typedef tcm-monitoring {
wu6a418d22018-02-02 01:49:21 -0500589 type enumeration {
590 enum INTRUSIVE {
591 description "none";
592 }
593 enum NON-INTRUSIVE {
594 description "none";
595 }
Toru Furusawa28988892017-10-30 17:28:40 -0700596 }
597 description "Monitoring types for the tandem connection monitoring function.";
598 }
599 typedef tcm-extension {
wu6a418d22018-02-02 01:49:21 -0500600 type enumeration {
601 enum NORMAL {
602 description "none";
603 }
604 enum PASS-THROUGH {
605 description "none";
606 }
607 enum ERASE {
608 description "none";
609 }
Toru Furusawa28988892017-10-30 17:28:40 -0700610 }
611 description "none";
612 }
613 typedef percentage-granularity {
wu6a418d22018-02-02 01:49:21 -0500614 type enumeration {
615 enum ONES {
616 description "none";
617 }
618 enum ONE_TENTHS {
619 description "value * (1/10)";
620 }
621 enum ONE_HUNDREDTHS {
622 description "value * (1/100)";
623 }
624 enum ONE_THOUSANDTHS {
625 description "value * (1/1000)";
626 }
Toru Furusawa28988892017-10-30 17:28:40 -0700627 }
628 description "none";
629 }
630 grouping uas-choice {
631 leaf bidirectional {
632 type boolean;
633 default "true";
634 description "none";
635 }
636 leaf uas {
637 type uint64;
638 description "none";
639 }
640 leaf nuas {
641 type uint64;
642 description "none";
643 }
644 leaf fuas {
645 type uint64;
646 description "none";
647 }
648 description "If bidirectional is TRUE then use the uas attribute, if bidirectional is FALSE use the nuas, and fuas attributes";
649 }
650
651}