blob: 1b15e6887a7b2f648898a96094fa65d8a6d241bb [file] [log] [blame]
hiroki4ecc8712018-05-08 13:23:37 -07001module openconfig-transport-types {
2
3 yang-version "1";
4
5 // namespace
6 namespace "http://openconfig.net/yang/transport-types";
7
8 prefix "oc-opt-types";
9
10 import openconfig-platform-types {
11 prefix oc-platform-types;
12 revision-date "2016-06-06";
13 }
14 import openconfig-extensions {
15 prefix oc-ext;
16 revision-date "2015-10-09";
17 }
18
19 // meta
20 organization "OpenConfig working group";
21
22 contact
23 "OpenConfig working group
24 www.openconfig.net";
25
26 description
27 "This module contains general type definitions and identities
28 for optical transport models.";
29
30 oc-ext:openconfig-version "0.4.0";
31
32 revision "2016-12-22" {
33 description
34 "Fixes and additions for terminal optics model";
35 reference "0.4.0";
36 }
37
38 // typedef statements
39
40 typedef frequency-type {
41 type uint64;
42 units "MHz";
43 description
44 "Type for optical spectrum frequency values";
45 }
46
47 typedef admin-state-type {
48 type enumeration {
49 enum ENABLED {
50 description
51 "Sets the channel admin state to enabled";
52 }
53 enum DISABLED {
54 description
55 "Sets the channel admin state to disabled";
56 }
57 enum MAINT {
58 description
59 "Sets the channel to maintenance / diagnostic mode";
60 }
61 }
62 description "Administrative state modes for
63 logical channels in the transponder model.";
64 }
65
66 typedef loopback-mode-type {
67 type enumeration {
68 enum NONE {
69 description
70 "No loopback is applied";
71 }
72 enum FACILITY {
73 description
74 "A loopback which directs traffic normally transmitted
75 on the port back to the device as if received on the same
76 port from an external source.";
77 }
78 enum TERMINAL {
79 description
80 "A loopback which directs traffic received from an external
81 source on the port back out the transmit side of the same
82 port.";
83 }
84 }
85 default NONE;
86 description
87 "Loopback modes for transponder logical channels";
88 }
89
90 // grouping statements
91
92 grouping avg-min-max-instant-stats-precision2-ps-nm {
93 description
94 "Common grouping for recording picosecond per nanometer
95 values with 2 decimal precision. Values include the
96 instantaneous, average, minimum, and maximum statistics";
97
98 leaf instant {
99 type decimal64 {
100 fraction-digits 2;
101 }
102 units ps-nm;
103 description
104 "The instantaneous value of the statistic.";
105 }
106
107 leaf avg {
108 type decimal64 {
109 fraction-digits 2;
110 }
111 units ps-nm;
112 description
113 "The arithmetic mean value of the statistic over the
114 sampling period.";
115 }
116
117 leaf min {
118 type decimal64 {
119 fraction-digits 2;
120 }
121 units ps-nm;
122 description
123 "The minimum value of the statistic over the sampling
124 period";
125 }
126
127 leaf max {
128 type decimal64 {
129 fraction-digits 2;
130 }
131 units ps-nm;
132 description
133 "The maximum value of the statistic over the sampling
134 period";
135 }
136 }
137
138 grouping avg-min-max-instant-stats-precision2-ps {
139 description
140 "Common grouping for recording picosecond values with
141 2 decimal precision. Values include the instantaneous,
142 average, minimum, and maximum statistics";
143
144 leaf instant {
145 type decimal64 {
146 fraction-digits 2;
147 }
148 units ps;
149 description
150 "The instantaneous value of the statistic.";
151 }
152
153 leaf avg {
154 type decimal64 {
155 fraction-digits 2;
156 }
157 units ps;
158 description
159 "The arithmetic mean value of the statistic over the
160 sampling period.";
161 }
162
163 leaf min {
164 type decimal64 {
165 fraction-digits 2;
166 }
167 units ps;
168 description
169 "The minimum value of the statistic over the sampling
170 period";
171 }
172
173 leaf max {
174 type decimal64 {
175 fraction-digits 2;
176 }
177 units ps;
178 description
179 "The maximum value of the statistic over the sampling
180 period";
181 }
182 }
183
184 grouping avg-min-max-instant-stats-precision2-ps2 {
185 description
186 "Common grouping for recording picosecond^2 values with
187 2 decimal precision. Values include the instantaneous,
188 average, minimum, and maximum statistics";
189
190 leaf instant {
191 type decimal64 {
192 fraction-digits 2;
193 }
194 units ps^2;
195 description
196 "The instantaneous value of the statistic.";
197 }
198
199 leaf avg {
200 type decimal64 {
201 fraction-digits 2;
202 }
203 units ps^2;
204 description
205 "The arithmetic mean value of the statistic over the
206 sampling period.";
207 }
208
209 leaf min {
210 type decimal64 {
211 fraction-digits 2;
212 }
213 units ps^2;
214 description
215 "The minimum value of the statistic over the sampling
216 period";
217 }
218
219 leaf max {
220 type decimal64 {
221 fraction-digits 2;
222 }
223 units ps^2;
224 description
225 "The maximum value of the statistic over the sampling
226 period";
227 }
228 }
229
230 grouping avg-min-max-instant-stats-precision18-ber {
231 description
232 "Common grouping for recording bit error rate (BER) values
233 with 18 decimal precision. Note that decimal64 supports
234 values as small as i x 10^-18 where i is an integer. Values
235 smaller than this should be reported as 0 to inidicate error
236 free or near error free performance. Values include the
237 instantaneous, average, minimum, and maximum statistics";
238
239 leaf instant {
240 type decimal64 {
241 fraction-digits 18;
242 }
243 units bit-errors-per-second;
244 description
245 "The instantaneous value of the statistic.";
246 }
247
248 leaf avg {
249 type decimal64 {
250 fraction-digits 18;
251 }
252 units bit-errors-per-second;
253 description
254 "The arithmetic mean value of the statistic over the
255 sampling period.";
256 }
257
258 leaf min {
259 type decimal64 {
260 fraction-digits 18;
261 }
262 units bit-errors-per-second;
263 description
264 "The minimum value of the statistic over the sampling
265 period";
266 }
267
268 leaf max {
269 type decimal64 {
270 fraction-digits 18;
271 }
272 units bit-errors-per-second;
273 description
274 "The maximum value of the statistic over the sampling
275 period";
276 }
277 }
278
279 // identity statements
280
281 identity TRIBUTARY_PROTOCOL_TYPE {
282 description
283 "Base identity for protocol framing used by tributary
284 signals.";
285 }
286
287 identity PROT_1GE {
288 base TRIBUTARY_PROTOCOL_TYPE;
289 description "1G Ethernet protocol";
290 }
291
292 identity PROT_OC48 {
293 base TRIBUTARY_PROTOCOL_TYPE;
294 description "OC48 protocol";
295 }
296
297 identity PROT_STM16 {
298 base TRIBUTARY_PROTOCOL_TYPE;
299 description "STM 16 protocol";
300 }
301
302 identity PROT_10GE_LAN {
303 base TRIBUTARY_PROTOCOL_TYPE;
304 description "10G Ethernet LAN protocol";
305 }
306
307 identity PROT_10GE_WAN {
308 base TRIBUTARY_PROTOCOL_TYPE;
309 description "10G Ethernet WAN protocol";
310 }
311
312 identity PROT_OC192 {
313 base TRIBUTARY_PROTOCOL_TYPE;
314 description "OC 192 (9.6GB) port protocol";
315 }
316
317 identity PROT_STM64 {
318 base TRIBUTARY_PROTOCOL_TYPE;
319 description "STM 64 protocol";
320 }
321
322 identity PROT_OTU2 {
323 base TRIBUTARY_PROTOCOL_TYPE;
324 description "OTU 2 protocol";
325 }
326
327 identity PROT_OTU2E {
328 base TRIBUTARY_PROTOCOL_TYPE;
329 description "OTU 2e protocol";
330 }
331
332 identity PROT_OTU1E {
333 base TRIBUTARY_PROTOCOL_TYPE;
334 description "OTU 1e protocol";
335 }
336
337 identity PROT_ODU2 {
338 base TRIBUTARY_PROTOCOL_TYPE;
339 description "ODU 2 protocol";
340 }
341
342 identity PROT_ODU2E {
343 base TRIBUTARY_PROTOCOL_TYPE;
344 description "ODU 2e protocol";
345 }
346
347 identity PROT_40GE {
348 base TRIBUTARY_PROTOCOL_TYPE;
349 description "40G Ethernet port protocol";
350 }
351
352 identity PROT_OC768 {
353 base TRIBUTARY_PROTOCOL_TYPE;
354 description "OC 768 protocol";
355 }
356
357 identity PROT_STM256 {
358 base TRIBUTARY_PROTOCOL_TYPE;
359 description "STM 256 protocol";
360 }
361
362 identity PROT_OTU3 {
363 base TRIBUTARY_PROTOCOL_TYPE;
364 description "OTU 3 protocol";
365 }
366
367 identity PROT_ODU3 {
368 base TRIBUTARY_PROTOCOL_TYPE;
369 description "ODU 3 protocol";
370 }
371
372 identity PROT_100GE {
373 base TRIBUTARY_PROTOCOL_TYPE;
374 description "100G Ethernet protocol";
375 }
376
377 identity PROT_100G_MLG {
378 base TRIBUTARY_PROTOCOL_TYPE;
379 description "100G MLG protocol";
380 }
381
382 identity PROT_OTU4 {
383 base TRIBUTARY_PROTOCOL_TYPE;
384 description "OTU4 signal protocol (112G) for transporting
385 100GE signal";
386 }
387
388 identity PROT_OTUCN {
389 base TRIBUTARY_PROTOCOL_TYPE;
390 description "OTU Cn protocol";
391 }
392
393 identity PROT_ODU4 {
394 base TRIBUTARY_PROTOCOL_TYPE;
395 description "ODU 4 protocol";
396 }
397
398 identity TRANSCEIVER_FORM_FACTOR_TYPE {
399 description
400 "Base identity for identifying the type of pluggable optic
401 transceiver (i.e,. form factor) used in a port.";
402 }
403
404 identity CFP {
405 base TRANSCEIVER_FORM_FACTOR_TYPE;
406 description
407 "C form-factor pluggable, that can support up to a
408 100 Gb/s signal with 10x10G or 4x25G physical channels";
409 }
410
411 identity CFP2 {
412 base TRANSCEIVER_FORM_FACTOR_TYPE;
413 description
414 "1/2 C form-factor pluggable, that can support up to a
415 200 Gb/s signal with 10x10G, 4x25G, or 8x25G physical
416 channels";
417 }
418
419 identity CFP2_ACO {
420 base TRANSCEIVER_FORM_FACTOR_TYPE;
421 description
422 "CFP2 analog coherent optics transceiver, supporting
423 100 Gb, 200Gb, and 250 Gb/s signal.";
424 }
425
426 identity CFP4 {
427 base TRANSCEIVER_FORM_FACTOR_TYPE;
428 description
429 "1/4 C form-factor pluggable, that can support up to a
430 100 Gb/s signal with 10x10G or 4x25G physical channels";
431 }
432
433 identity QSFP {
434 base TRANSCEIVER_FORM_FACTOR_TYPE;
435 description
436 "OriginalQuad Small Form-factor Pluggable transceiver that can
437 support 4x1G physical channels. Not commonly used.";
438 }
439
440 identity QSFP_PLUS {
441 base TRANSCEIVER_FORM_FACTOR_TYPE;
442 description
443 "Quad Small Form-factor Pluggable transceiver that can support
444 up to 4x10G physical channels.";
445 }
446
447 identity QSFP28 {
448 base TRANSCEIVER_FORM_FACTOR_TYPE;
449 description
450 "QSFP pluggable optic with support for up to 4x28G physical
451 channels";
452 }
453
454 identity CPAK {
455 base TRANSCEIVER_FORM_FACTOR_TYPE;
456 description
457 "Cisco CPAK transceiver supporting 100 Gb/s.";
458 }
459
460 identity SFP {
461 base TRANSCEIVER_FORM_FACTOR_TYPE;
462 description
463 "Small form-factor pluggable transceiver supporting up to
464 10 Gb/s signal";
465 }
466
467 identity SFP_PLUS {
468 base TRANSCEIVER_FORM_FACTOR_TYPE;
469 description
470 "Enhanced small form-factor pluggable transceiver supporting
471 up to 16 Gb/s signals, including 10 GbE and OTU2";
472 }
473
474 identity XFP {
475 base TRANSCEIVER_FORM_FACTOR_TYPE;
476 description
477 "10 Gigabit small form factor pluggable transceiver supporting
478 10 GbE and OTU2";
479 }
480
481 identity X2 {
482 base TRANSCEIVER_FORM_FACTOR_TYPE;
483 description
484 "10 Gigabit small form factor pluggable transceiver supporting
485 10 GbE using a XAUI inerface and 4 data channels.";
486 }
487
488 identity NON_PLUGGABLE {
489 base TRANSCEIVER_FORM_FACTOR_TYPE;
490 description
491 "Represents a port that does not require a pluggable optic,
492 e.g., with on-board optics like COBO";
493 }
494
495 identity OTHER {
496 base TRANSCEIVER_FORM_FACTOR_TYPE;
497 description
498 "Represents a transceiver form factor not otherwise listed";
499 }
500
501 identity FIBER_CONNECTOR_TYPE {
502 description
503 "Type of optical fiber connector";
504 }
505
506 identity SC_CONNECTOR {
507 base FIBER_CONNECTOR_TYPE;
508 description
509 "SC type fiber connector";
510 }
511
512 identity LC_CONNECTOR {
513 base FIBER_CONNECTOR_TYPE;
514 description
515 "LC type fiber connector";
516 }
517
518 identity MPO_CONNECTOR {
519 base FIBER_CONNECTOR_TYPE;
520 description
521 "MPO (multi-fiber push-on/pull-off) type fiber connector
522 1x12 fibers";
523 }
524
525 identity ETHERNET_PMD_TYPE {
526 description
527 "Ethernet compliance codes (PMD) supported by transceivers";
528 }
529
530 identity ETH_10GBASE_LRM {
531 base ETHERNET_PMD_TYPE;
532 description "Ethernet compliance code: 10GBASE_LRM";
533 }
534
535 identity ETH_10GBASE_LR {
536 base ETHERNET_PMD_TYPE;
537 description "Ethernet compliance code: 10GBASE_LR";
538 }
539
540 identity ETH_10GBASE_ZR {
541 base ETHERNET_PMD_TYPE;
542 description "Ethernet compliance code: 10GBASE_ZR";
543 }
544
545 identity ETH_10GBASE_ER {
546 base ETHERNET_PMD_TYPE;
547 description "Ethernet compliance code: 10GBASE_ER";
548 }
549
550 identity ETH_10GBASE_SR {
551 base ETHERNET_PMD_TYPE;
552 description "Ethernet compliance code: 10GBASE_SR";
553 }
554
555 identity ETH_40GBASE_CR4 {
556 base ETHERNET_PMD_TYPE;
557 description "Ethernet compliance code: 40GBASE_CR4";
558 }
559
560 identity ETH_40GBASE_SR4 {
561 base ETHERNET_PMD_TYPE;
562 description "Ethernet compliance code: 40GBASE_SR4";
563 }
564
565 identity ETH_40GBASE_LR4 {
566 base ETHERNET_PMD_TYPE;
567 description "Ethernet compliance code: 40GBASE_LR4";
568 }
569
570 identity ETH_40GBASE_ER4 {
571 base ETHERNET_PMD_TYPE;
572 description "Ethernet compliance code: 40GBASE_ER4";
573 }
574
575 identity ETH_40GBASE_PSM4 {
576 base ETHERNET_PMD_TYPE;
577 description "Ethernet compliance code: 40GBASE_PSM4";
578 }
579
580 identity ETH_4X10GBASE_LR {
581 base ETHERNET_PMD_TYPE;
582 description "Ethernet compliance code: 4x10GBASE_LR";
583 }
584
585 identity ETH_4X10GBASE_SR {
586 base ETHERNET_PMD_TYPE;
587 description "Ethernet compliance code: 4x10GBASE_SR";
588 }
589
590 identity ETH_100G_AOC {
591 base ETHERNET_PMD_TYPE;
592 description "Ethernet compliance code: 100G_AOC";
593 }
594
595 identity ETH_100G_ACC {
596 base ETHERNET_PMD_TYPE;
597 description "Ethernet compliance code: 100G_ACC";
598 }
599
600 identity ETH_100GBASE_SR10 {
601 base ETHERNET_PMD_TYPE;
602 description "Ethernet compliance code: 100GBASE_SR10";
603 }
604
605 identity ETH_100GBASE_SR4 {
606 base ETHERNET_PMD_TYPE;
607 description "Ethernet compliance code: 100GBASE_SR4";
608 }
609
610 identity ETH_100GBASE_LR4 {
611 base ETHERNET_PMD_TYPE;
612 description "Ethernet compliance code: 100GBASE_LR4";
613 }
614
615 identity ETH_100GBASE_ER4 {
616 base ETHERNET_PMD_TYPE;
617 description "Ethernet compliance code: 100GBASE_ER4";
618 }
619
620 identity ETH_100GBASE_CWDM4 {
621 base ETHERNET_PMD_TYPE;
622 description "Ethernet compliance code: 100GBASE_CWDM4";
623 }
624
625 identity ETH_100GBASE_CLR4 {
626 base ETHERNET_PMD_TYPE;
627 description "Ethernet compliance code: 100GBASE_CLR4";
628 }
629
630 identity ETH_100GBASE_PSM4 {
631 base ETHERNET_PMD_TYPE;
632 description "Ethernet compliance code: 100GBASE_PSM4";
633 }
634
635 identity ETH_100GBASE_CR4 {
636 base ETHERNET_PMD_TYPE;
637 description "Ethernet compliance code: 100GBASE_CR4";
638 }
639
640 identity ETH_UNDEFINED {
641 base ETHERNET_PMD_TYPE;
642 description "Ethernet compliance code: undefined";
643 }
644
645 identity SONET_APPLICATION_CODE {
646 description
647 "Supported SONET/SDH application codes";
648 }
649
650 identity VSR2000_3R2 {
651 base SONET_APPLICATION_CODE;
652 description
653 "SONET/SDH application code: VSR2000_3R2";
654 }
655
656 identity VSR2000_3R3 {
657 base SONET_APPLICATION_CODE;
658 description
659 "SONET/SDH application code: VSR2000_3R3";
660 }
661
662 identity VSR2000_3R5 {
663 base SONET_APPLICATION_CODE;
664 description
665 "SONET/SDH application code: VSR2000_3R5";
666 }
667
668 identity SONET_UNDEFINED {
669 base SONET_APPLICATION_CODE;
670 description
671 "SONET/SDH application code: undefined";
672 }
673
674 identity OTN_APPLICATION_CODE {
675 description
676 "Supported OTN application codes";
677 }
678
679 identity P1L1_2D1 {
680 base OTN_APPLICATION_CODE;
681 description
682 "OTN application code: P1L1_2D1";
683 }
684
685 identity P1S1_2D2 {
686 base OTN_APPLICATION_CODE;
687 description
688 "OTN application code: P1S1_2D2";
689 }
690
691 identity P1L1_2D2 {
692 base OTN_APPLICATION_CODE;
693 description
694 "OTN application code: P1L1_2D2";
695 }
696
697 identity OTN_UNDEFINED {
698 base OTN_APPLICATION_CODE;
699 description
700 "OTN application code: undefined";
701 }
702
703 identity TRIBUTARY_RATE_CLASS_TYPE {
704 description
705 "Rate of tributary signal _- identities will typically reflect
706 rounded bit rate.";
707 }
708
709 identity TRIB_RATE_1G {
710 base TRIBUTARY_RATE_CLASS_TYPE;
711 description
712 "1G tributary signal rate";
713 }
714
715 identity TRIB_RATE_2.5G {
716 base TRIBUTARY_RATE_CLASS_TYPE;
717 description
718 "2.5G tributary signal rate";
719 }
720
721 identity TRIB_RATE_10G {
722 base TRIBUTARY_RATE_CLASS_TYPE;
723 description
724 "10G tributary signal rate";
725 }
726
727 identity TRIB_RATE_40G {
728 base TRIBUTARY_RATE_CLASS_TYPE;
729 description
730 "40G tributary signal rate";
731 }
732
733 identity TRIB_RATE_100G {
734 base TRIBUTARY_RATE_CLASS_TYPE;
735 description
736 "100G tributary signal rate";
737 }
738
739 identity LOGICAL_ELEMENT_PROTOCOL_TYPE {
740 description
741 "Type of protocol framing used on the logical channel or
742 tributary";
743 }
744
745 identity PROT_ETHERNET {
746 base LOGICAL_ELEMENT_PROTOCOL_TYPE;
747 description
748 "Ethernet protocol framing";
749 }
750
751 identity PROT_OTN {
752 base LOGICAL_ELEMENT_PROTOCOL_TYPE;
753 description
754 "OTN protocol framing";
755 }
756
757 identity OPTICAL_CHANNEL {
758 base oc-platform-types:OPENCONFIG_HARDWARE_COMPONENT;
759 description
760 "Optical channels act as carriers for transport traffic
761 directed over a line system. They are represented as
762 physical components in the physical inventory model.";
763 }
764
765}