blob: d927fddd65da313e88be24775ba6d15a083abf1b [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 }
hirokid8fd7862018-10-09 15:24:24 +090016 import tapi-dsr {
17 prefix tapi-dsr;
18 }
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -080019 organization "ONF OTCC (Open Transport Configuration & Control) Project";
hirokid8fd7862018-10-09 15:24:24 +090020 contact "
21 Project Web: <https://wiki.opennetworking.org/display/OTCC/TAPI>
22 Project List: <mailto:transport-api@opennetworking.org>
23 Editor: Karthik Sethuraman
24 <mailto:karthik.sethuraman@necam.com>";
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -080025 description "
26 This module contains TAPI Odu Model definitions.
27 Source: TapiOdu.uml
28 Copyright (c) 2018 Open Networking Foundation (ONF). All rights reserved.
29 License: This module is distributed under the Apache License 2.0";
hirokid8fd7862018-10-09 15:24:24 +090030 revision 2018-10-16 {
31 description "ONF Transport API version 2.1.0.
32 - The TAPI YANG models included in this TAPI release (v2.1.0) are a *normative* part of the TAPI SDK.
33 - The YANG specifications have been generated from the corresponding UML model using the [ONF EAGLE UML2YANG mapping tool]
34 <https://github.com/OpenNetworkingFoundation/EagleUmlYang>
35 and further edited manually to comply with the [ONF IISOMI UML2YANG mapping guidelines]
36 <https://wiki.opennetworking.org/display/OIMT/UML+-+YANG+Guidelines>
37 - Status of YANG model artifacts can be determined by referring to the corresponding UML artifacts.
38 As described in the UML models, some artifacts are considered *experimental*, and thus the corresponding YANG artifacts.
39 - The ONF TAPI release process does not guarantee backward compatibility of YANG models across major versions of TAPI releases.
40 The YANG model backward compatibility criteria are outlined in section 11 of <https://tools.ietf.org/html/rfc7950>.
41 YANG models included in this release are not backward compatible with previous TAPI releases.
42 - Changes included in this TAPI release (v2.1.0) are listed in
43 <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.1.0.md>";
Ai Hamano06163902018-12-06 09:18:20 +090044 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 7950, RFC 6087 and ONF TAPI UML model
hirokid8fd7862018-10-09 15:24:24 +090045 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.1.0/UML>";
46 }
Yuta HIGUCHI7f165b12018-03-25 19:05:29 -070047 revision 2018-03-07 {
Ai Hamano06163902018-12-06 09:18:20 +090048 description "ONF Transport API version 2.0.2
49 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
Yuta HIGUCHIe1ca23f2018-04-06 10:05:45 -070050 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.2.md>";
Ai Hamano06163902018-12-06 09:18:20 +090051 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
Yuta HIGUCHIe1ca23f2018-04-06 10:05:45 -070052 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.2/UML>";
53 }
54 revision 2018-02-16 {
Ai Hamano06163902018-12-06 09:18:20 +090055 description "ONF Transport API version 2.0.1
56 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
Yuta HIGUCHIe1ca23f2018-04-06 10:05:45 -070057 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.1.md>";
Ai Hamano06163902018-12-06 09:18:20 +090058 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
Yuta HIGUCHIe1ca23f2018-04-06 10:05:45 -070059 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.1/UML>";
60 }
61 revision 2018-01-02 {
Ai Hamano06163902018-12-06 09:18:20 +090062 description "ONF Transport API version 2.0.0
63 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
Yuta HIGUCHIe1ca23f2018-04-06 10:05:45 -070064 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.0.md>";
Ai Hamano06163902018-12-06 09:18:20 +090065 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
Yuta HIGUCHIe1ca23f2018-04-06 10:05:45 -070066 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.0/UML>";
Toru Furusawa28988892017-10-30 17:28:40 -070067 }
hirokid8fd7862018-10-09 15:24:24 +090068 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point" {
69 container odu-node-edge-point-spec {
70 uses odu-node-edge-point-spec;
71 description "Augments the base LayerProtocol information in NodeEdgePoint with ODU-specific information";
72 }
Toru Furusawa28988892017-10-30 17:28:40 -070073 description "Augments the base LayerProtocol information in NodeEdgePoint with ODU-specific information";
74 }
hirokid8fd7862018-10-09 15:24:24 +090075 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" {
76 container odu-connection-end-point-spec {
77 uses odu-connection-end-point-spec;
78 description "none";
79 }
Toru Furusawa28988892017-10-30 17:28:40 -070080 description "none";
81 }
hirokid8fd7862018-10-09 15:24:24 +090082 augment "/tapi-common:context/tapi-oam:oam-context/tapi-oam:meg/tapi-oam:mep" {
83 container odu-connection-end-point-spec {
84 uses odu-connection-end-point-spec;
85 description "none";
86 }
Toru Furusawa28988892017-10-30 17:28:40 -070087 description "none";
88 }
hirokid8fd7862018-10-09 15:24:24 +090089 augment "/tapi-common:context/tapi-oam:oam-context/tapi-oam:meg/tapi-oam:mip" {
90 container odu-mip-spec {
91 uses odu-mip-spec;
92 description "none";
93 }
Toru Furusawa28988892017-10-30 17:28:40 -070094 description "none";
95 }
Ai Hamano06163902018-12-06 09:18:20 +090096
97 /**************************
Toru Furusawa28988892017-10-30 17:28:40 -070098 * package object-classes
Ai Hamano06163902018-12-06 09:18:20 +090099 **************************/
100 grouping odu-termination-and-client-adaptation-pac {
101 leaf opu-tributary-slot-size {
102 type odu-slot-size;
103 config false;
104 description "This attribute is applicable for ODU2 and ODU3 CTP only. It indicates the slot size of the ODU CTP.";
Toru Furusawa28988892017-10-30 17:28:40 -0700105 }
Ai Hamano06163902018-12-06 09:18:20 +0900106 leaf auto-payload-type {
107 type boolean;
108 config false;
109 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. ";
110 }
111 leaf configured-client-type {
112 type tapi-dsr:digital-signal-type;
113 config false;
114 description "This attribute configures the type of the client CTP of the server ODU TTP.";
115 }
116 leaf configured-mapping-type {
117 type mapping-type;
118 config false;
119 description "This attributes indicates the configured mapping type.";
120 }
121 container accepted-payload-type {
122 config false;
123 uses odu-payload-type;
124 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.
125 This attribute is a 2-digit Hex code that indicates the new accepted payload type.
126 Valid values are defined in Table 15-8 of ITU-T Recommendation G.709 with one additional value UN_INTERPRETABLE.";
127 }
128 description "This Pac contains the attributes associated with the client adaptation function of the server layer TTP
129 It is present only if the CEP contains a TTP";
130 }
131 grouping odu-connection-end-point-spec {
132 container odu-common {
133 uses odu-common-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700134 description "none";
135 }
Ai Hamano06163902018-12-06 09:18:20 +0900136 container odu-term-and-adapter {
137 config false;
138 uses odu-termination-and-client-adaptation-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700139 description "none";
140 }
Ai Hamano06163902018-12-06 09:18:20 +0900141 container odu-ctp {
142 config false;
143 uses odu-ctp-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700144 description "none";
145 }
Ai Hamano06163902018-12-06 09:18:20 +0900146 container odu-protection {
147 config false;
148 uses odu-protection-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700149 description "none";
150 }
Ai Hamano06163902018-12-06 09:18:20 +0900151 description "none";
152 }
153 grouping odu-pool-pac {
154 leaf client-capacity {
155 type uint64;
Toru Furusawa28988892017-10-30 17:28:40 -0700156 description "none";
157 }
Ai Hamano06163902018-12-06 09:18:20 +0900158 leaf max-client-instances {
159 type uint64;
160 config false;
Toru Furusawa28988892017-10-30 17:28:40 -0700161 description "none";
162 }
Ai Hamano06163902018-12-06 09:18:20 +0900163 leaf max-client-size {
164 type uint64;
165 config false;
Toru Furusawa28988892017-10-30 17:28:40 -0700166 description "none";
167 }
Ai Hamano06163902018-12-06 09:18:20 +0900168 description "none";
169 }
170 grouping odu-node-edge-point-spec {
171 container odu-pool {
172 config false;
173 uses odu-pool-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700174 description "none";
175 }
Ai Hamano06163902018-12-06 09:18:20 +0900176 description "none";
177 }
178 grouping odu-ctp-pac {
179 leaf-list tributary-slot-list {
180 type uint64;
181 config false;
182 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).
183 This attribute applies when the LO ODU_ ConnectionTerminationPoint connects with an HO ODU_TrailTerminationPoint object.
184 It will not apply if this ODU_ ConnectionTerminationPoint object directly connects to an OTU_TrailTerminationPoint object (i.e. OTU has no trib slots).
185 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).
186 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).";
187 }
188 leaf tributary-port-number {
189 type uint64;
190 config false;
191 description "This attribute identifies the tributary port number that is associated with the ODU CTP.
192 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.
193 In case of ODUk mapping into OTUk, there is no TPN field, so the tributaryPortNumber shall be zero.
194 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.
195 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.
196 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.
197 ";
198 }
199 leaf accepted-msi {
200 type string;
201 config false;
202 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. ";
203 }
204 description "This Pac contains the attributes associated with the CTP
205 It is present only if the CEP contains a CTP";
206 }
207 grouping odu-mep-spec {
208 container odu-mep {
209 uses odu-mep-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700210 description "none";
211 }
Ai Hamano06163902018-12-06 09:18:20 +0900212 container odu-ncm {
213 config false;
214 uses odu-ncm-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700215 description "none";
216 }
Ai Hamano06163902018-12-06 09:18:20 +0900217 container odu-tcm {
218 config false;
219 uses odu-tcm-mep-pac;
220 description "none";
221 }
222 container odu-defect {
223 uses odu-defect-pac;
224 description "none";
225 }
226 container odu-pm {
227 uses odu-pm-pac;
228 description "none";
229 }
230 description "none";
231 }
232 grouping odu-protection-pac {
233 leaf aps-enable {
234 type boolean;
235 default "true";
236 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.";
237 }
238 leaf aps-level {
239 type uint64;
240 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.";
241 }
242 description "none";
243 }
244 grouping odu-ncm-pac {
245 leaf-list tcm-fields-in-use {
246 type uint64;
247 config false;
248 description "This attribute indicates the used TCM fields of the ODU OH.";
249 }
250 description "none";
251 }
252 grouping odu-tcm-mep-pac {
253 leaf tcm-extension {
254 type tcm-extension;
255 description "none";
256 }
257 leaf tcm-mode {
258 type tcm-mode;
259 description "This attribute specifies the TCM mode at the entity. Valid values are: Operational, Monitor, and Transparent.";
260 }
261 leaf codirectional {
262 type boolean;
263 config false;
264 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.";
265 }
266 leaf ac-status-source {
267 type tcm-status;
268 config false;
269 description "This attribute indicates the status of the accepted TCM. ";
270 }
271 leaf ac-status-sink {
272 type tcm-status;
273 config false;
274 description "This attribute indicates the status of the accepted TCM. ";
275 }
276 leaf admin-state-source {
277 type tapi-common:administrative-state;
278 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.";
279 }
280 leaf admin-state-sink {
281 type tapi-common:administrative-state;
282 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.";
283 }
284 uses odu-tcm-mip-pac;
285 description "none";
286 }
287 grouping odu-mip-spec {
288 container odu-mip {
289 config false;
Toru Furusawa28988892017-10-30 17:28:40 -0700290 uses odu-mip-pac;
291 description "none";
292 }
Ai Hamano06163902018-12-06 09:18:20 +0900293 container odu-ncm {
294 config false;
295 uses odu-ncm-pac;
Toru Furusawa28988892017-10-30 17:28:40 -0700296 description "none";
297 }
Ai Hamano06163902018-12-06 09:18:20 +0900298 container odu-tcm {
299 config false;
300 uses odu-tcm-mip-pac;
301 description "none";
Toru Furusawa28988892017-10-30 17:28:40 -0700302 }
Ai Hamano06163902018-12-06 09:18:20 +0900303 container odu-pm {
304 uses odu-pm-pac;
305 description "none";
Toru Furusawa28988892017-10-30 17:28:40 -0700306 }
Ai Hamano06163902018-12-06 09:18:20 +0900307 container odu-defect {
308 uses odu-defect-pac;
309 description "none";
310 }
311 description "none";
312 }
313 grouping odu-mip-pac {
314 leaf acti {
315 type string;
316 config false;
317 description "The Trail Trace Identifier (TTI) information recovered (Accepted) from the TTI overhead position at the sink of a trail.";
318 }
319 leaf ex-dapi {
320 type string;
321 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.";
322 }
323 leaf ex-sapi {
324 type string;
325 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.
326 ";
327 }
328 leaf tim-act-disabled {
329 type boolean;
330 default "true";
331 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.";
332 }
333 leaf tim-det-mode {
334 type tim-det-mo;
335 description "This attribute indicates the mode of the Trace Identifier Mismatch (TIM) Detection function allowed values: OFF, SAPIonly, DAPIonly, SAPIandDAPI";
336 }
337 leaf deg-m {
338 type uint64;
339 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.";
340 }
341 container deg-thr {
342 uses deg-thr;
343 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.";
344 }
345 description "none";
346 }
347 grouping odu-tcm-mip-pac {
348 leaf tcm-field {
349 type uint64;
350 config false;
351 description "This attribute indicates the tandem connection monitoring field of the ODU OH.";
352 }
353 description "none";
354 }
355 grouping odu-mep-pac {
356 leaf dm-source {
357 type boolean;
358 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.";
359 }
360 leaf dm-value {
361 type boolean;
362 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.";
363 }
364 leaf txti {
365 type string;
366 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.
367 ";
368 }
369 uses odu-mip-pac;
370 description "none";
371 }
372 grouping odu-common-pac {
373 leaf odu-type {
374 type odu-type;
375 config false;
376 description "This attribute specifies the type of the ODU termination point.";
377 }
378 leaf odu-rate {
379 type uint64;
380 config false;
381 description "This attribute indicates the rate of the ODU terminatino point.
382 This attribute is Set at create; i.e., once created it cannot be changed directly.
383 In case of resizable ODU flex, its value can be changed via HAO (not directly on the attribute).
384 ";
385 }
386 leaf odu-rate-tolerance {
387 type uint64;
388 config false;
389 description "This attribute indicates the rate tolerance of the ODU termination point.
390 Valid values are real value in the unit of ppm.
391 Standardized values are defined in Table 7-2/G.709.";
392 }
393 description "none";
394 }
395 grouping odu-pm-pac {
396 leaf n-bbe {
397 type uint64;
398 description "Near-end Background Block Error";
399 }
400 leaf f-bbe {
401 type uint64;
402 config false;
403 description "Far-end Background Block Error";
404 }
405 leaf n-ses {
406 type uint64;
407 description "Near-end Severely Errored Second";
408 }
409 leaf f-ses {
410 type uint64;
411 description "Far-end Severely Errored Second";
412 }
413 container uas {
414 uses uas-choice;
415 description "UnAvailable Second";
416 }
417 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.
418 PM data attributes: fBbe, fSes, nBbe, nSes. uas";
419 }
420 grouping odu-defect-pac {
421 leaf bdi {
422 type boolean;
423 config false;
424 description "Backward Defect Indication";
425 }
426 leaf deg {
427 type boolean;
428 config false;
429 description "Signal Degraded";
430 }
431 leaf lck {
432 type boolean;
433 config false;
434 description "Locked";
435 }
436 leaf oci {
437 type boolean;
438 config false;
439 description "Open Connection Indicator";
440 }
441 leaf ssf {
442 type boolean;
443 config false;
444 description "Server Signal Failure";
445 }
446 leaf tim {
447 type boolean;
448 config false;
449 description "Trail Trace Identifier Mismatch";
450 }
451 description "The valid list of defects raised on the entity. If the value of any attribute is true, then the corresponding defect is raised.";
452 }
Toru Furusawa28988892017-10-30 17:28:40 -0700453
Ai Hamano06163902018-12-06 09:18:20 +0900454 /**************************
Toru Furusawa28988892017-10-30 17:28:40 -0700455 * package type-definitions
Ai Hamano06163902018-12-06 09:18:20 +0900456 **************************/
457 identity ODU_TYPE {
458 base tapi-common:LAYER_PROTOCOL_QUALIFIER;
459 description "none";
460 }
461 identity ODU_TYPE_ODU0 {
462 base ODU_TYPE;
463 description "none";
464 }
465 identity ODU_TYPE_ODU1 {
466 base ODU_TYPE;
467 description "none";
468 }
469 identity ODU_TYPE_ODU2 {
470 base ODU_TYPE;
471 description "none";
472 }
473 identity ODU_TYPE_ODU2E {
474 base ODU_TYPE;
475 description "none";
476 }
477 identity ODU_TYPE_ODU3 {
478 base ODU_TYPE;
479 description "none";
480 }
481 identity ODU_TYPE_ODU4 {
482 base ODU_TYPE;
483 description "none";
484 }
485 identity ODU_TYPE_ODU_FLEX {
486 base ODU_TYPE;
487 description "none";
488 }
489 identity ODU_TYPE_ODU_CN {
490 base ODU_TYPE;
491 description "none";
492 }
493 typedef odu-type {
494 type identityref {
hirokid8fd7862018-10-09 15:24:24 +0900495 base ODU_TYPE;
hirokid8fd7862018-10-09 15:24:24 +0900496 }
Ai Hamano06163902018-12-06 09:18:20 +0900497 description "none";
498 }
499 typedef mapping-type {
500 type enumeration {
501 enum AMP {
Toru Furusawa28988892017-10-30 17:28:40 -0700502 description "none";
503 }
Ai Hamano06163902018-12-06 09:18:20 +0900504 enum BMP {
Toru Furusawa28988892017-10-30 17:28:40 -0700505 description "none";
506 }
Ai Hamano06163902018-12-06 09:18:20 +0900507 enum GFP-F {
508 description "none";
509 }
510 enum GMP {
511 description "none";
512 }
513 enum TTP_GFP_BMP {
514 description "none";
515 }
516 enum NULL {
517 description "none";
518 }
519 }
520 description "none";
521 }
522 typedef tim-det-mo {
523 type enumeration {
524 enum DAPI {
525 description "none";
526 }
527 enum SAPI {
528 description "none";
529 }
530 enum BOTH {
531 description "none";
532 }
533 enum OFF {
534 description "none";
535 }
536 }
537 description "List of modes for trace identifier mismatch detection.";
538 }
539 typedef odu-slot-size {
540 type enumeration {
541 enum 1G25 {
542 description "none";
543 }
544 enum 2G5 {
545 description "none";
546 }
547 }
548 description "none";
549 }
550 grouping odu-payload-type {
551 leaf named-payload-type {
552 type odu-named-payload-type;
Toru Furusawa28988892017-10-30 17:28:40 -0700553 description "none";
554 }
Ai Hamano06163902018-12-06 09:18:20 +0900555 leaf hex-payload-type {
556 type uint64;
Toru Furusawa28988892017-10-30 17:28:40 -0700557 description "none";
558 }
Ai Hamano06163902018-12-06 09:18:20 +0900559 description "none";
560 }
561 typedef odu-named-payload-type {
562 type enumeration {
563 enum UNKNOWN {
Toru Furusawa28988892017-10-30 17:28:40 -0700564 description "none";
565 }
Ai Hamano06163902018-12-06 09:18:20 +0900566 enum UNINTERPRETABLE {
567 description "none";
Toru Furusawa28988892017-10-30 17:28:40 -0700568 }
Toru Furusawa28988892017-10-30 17:28:40 -0700569 }
Ai Hamano06163902018-12-06 09:18:20 +0900570 description "none";
571 }
572 grouping deg-thr {
573 leaf deg-thr-value {
574 type uint64;
575 description "Percentage of detected errored blocks";
Toru Furusawa28988892017-10-30 17:28:40 -0700576 }
Ai Hamano06163902018-12-06 09:18:20 +0900577 leaf deg-thr-type {
578 type deg-thr-type;
579 description "Number of errored blocks";
Toru Furusawa28988892017-10-30 17:28:40 -0700580 }
Ai Hamano06163902018-12-06 09:18:20 +0900581 leaf percentage-granularity {
582 type percentage-granularity;
Toru Furusawa28988892017-10-30 17:28:40 -0700583 description "none";
584 }
Ai Hamano06163902018-12-06 09:18:20 +0900585 description "Degraded Threshold, specify either the percentage or the number of Errored Blocks in the defined interval.
586 degThrValue when type is PERCENTAGE:
587 percentageGranularity is used to indicate the number of decimal points
588 So if percentageGranularity is ones, a value of 1 in degThrValue would indicate 1%, a value of 10 = 10%, a value of 100 = 100%
589 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%
590 degThrValue when type is NUMBER_ERROR_BLOCKS:
591 Number of Errored Blocks is captured in an integer value.";
592 }
593 typedef deg-thr-type {
594 type enumeration {
595 enum PERCENTAGE {
596 description "Choice of % or Number of errored blocks";
Toru Furusawa28988892017-10-30 17:28:40 -0700597 }
Ai Hamano06163902018-12-06 09:18:20 +0900598 enum NUMBER_ERRORED_BLOCKS {
599 description "Number of % or blocks";
600 }
601 }
602 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.";
603 }
604 typedef tcm-status {
605 type enumeration {
606 enum NO_SOURCE_TC {
607 description "TCM byte 3 (bits 6 7 8) -- 0 0 0, No source Tandem Connection";
608 }
609 enum IN_USE_WITHOUT_IAE {
610 description "TCM byte 3 (bits 6 7 8) -- 0 0 1, In use without IAE (Incoming Alignment Error)";
611 }
612 enum IN_USE_WITH_IAE {
613 description "TCM byte 3 (bits 6 7 8) -- 0 1 0, In use with IAE (Incoming Alignment Error)";
614 }
615 enum RESERVED_1 {
616 description "TCM byte 3 (bits 6 7 8) -- 0 1 1, Reserved for future international standardization";
617 }
618 enum RESERVED_2 {
619 description "TCM byte 3 (bits 6 7 8) -- 1 0 0, Reserved for future international standardization";
620 }
621 enum LCK {
622 description "TCM byte 3 (bits 6 7 8) -- 1 0 1, Maintenance signal: ODU-LCK";
623 }
624 enum OCI {
625 description "TCM byte 3 (bits 6 7 8) -- 1 1 0, Maintenance signal: ODU-OCI";
626 }
627 enum AIS {
628 description "TCM byte 3 (bits 6 7 8) -- 1 1 1, Maintenance signal: ODU-AIS";
629 }
630 }
631 description "See Table 15-5/G.709/Y.1331 ";
632 }
633 typedef tcm-mode {
634 type enumeration {
635 enum OPERATIONAL {
636 description "none";
637 }
638 enum TRANSPARENT {
639 description "none";
640 }
641 enum MONITOR {
642 description "none";
643 }
644 }
645 description "List of value modes for the sink side of the tandem connection monitoring function.";
646 }
647 typedef tcm-monitoring {
648 type enumeration {
649 enum INTRUSIVE {
650 description "none";
651 }
652 enum NON-INTRUSIVE {
653 description "none";
654 }
655 }
656 description "Monitoring types for the tandem connection monitoring function.";
657 }
658 typedef tcm-extension {
659 type enumeration {
660 enum NORMAL {
661 description "none";
662 }
663 enum PASS-THROUGH {
664 description "none";
665 }
666 enum ERASE {
667 description "none";
668 }
669 }
670 description "none";
671 }
672 typedef percentage-granularity {
673 type enumeration {
674 enum ONES {
675 description "none";
676 }
677 enum ONE_TENTHS {
678 description "value * (1/10)";
679 }
680 enum ONE_HUNDREDTHS {
681 description "value * (1/100)";
682 }
683 enum ONE_THOUSANDTHS {
684 description "value * (1/1000)";
685 }
686 }
687 description "none";
688 }
689 grouping uas-choice {
690 leaf bidirectional {
691 type boolean;
692 default "true";
Toru Furusawa28988892017-10-30 17:28:40 -0700693 description "none";
694 }
Ai Hamano06163902018-12-06 09:18:20 +0900695 leaf uas {
696 type uint64;
697 description "none";
Toru Furusawa28988892017-10-30 17:28:40 -0700698 }
Ai Hamano06163902018-12-06 09:18:20 +0900699 leaf nuas {
700 type uint64;
701 description "none";
702 }
703 leaf fuas {
704 type uint64;
705 description "none";
706 }
707 description "If bidirectional is TRUE then use the uas attribute, if bidirectional is FALSE use the nuas, and fuas attributes";
708 }
Toru Furusawa28988892017-10-30 17:28:40 -0700709}