blob: 276f24b2c10cb64cc2a6c8ce1ecb2662a1551936 [file] [log] [blame]
Thomas Vachuska6655bee2017-08-24 16:12:59 -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 { prefix oc-platform-types; }
11 import openconfig-extensions { prefix oc-ext; }
12
13 // meta
14 organization "OpenConfig working group";
15
16 contact
17 "OpenConfig working group
18 www.openconfig.net";
19
20 description
21 "This module contains general type definitions and identities
22 for optical transport models.";
23
24 oc-ext:openconfig-version "0.5.0";
25
26 revision "2017-08-16" {
27 description
28 "Added ODU Cn protocol type";
29 reference "0.5.0";
30 }
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_ODUCN {
394 base TRIBUTARY_PROTOCOL_TYPE;
395 description "ODU Cn protocol";
396 }
397
398 identity PROT_ODU4 {
399 base TRIBUTARY_PROTOCOL_TYPE;
400 description "ODU 4 protocol";
401 }
402
403 identity TRANSCEIVER_FORM_FACTOR_TYPE {
404 description
405 "Base identity for identifying the type of pluggable optic
406 transceiver (i.e,. form factor) used in a port.";
407 }
408
409 identity CFP {
410 base TRANSCEIVER_FORM_FACTOR_TYPE;
411 description
412 "C form-factor pluggable, that can support up to a
413 100 Gb/s signal with 10x10G or 4x25G physical channels";
414 }
415
416 identity CFP2 {
417 base TRANSCEIVER_FORM_FACTOR_TYPE;
418 description
419 "1/2 C form-factor pluggable, that can support up to a
420 200 Gb/s signal with 10x10G, 4x25G, or 8x25G physical
421 channels";
422 }
423
424 identity CFP2_ACO {
425 base TRANSCEIVER_FORM_FACTOR_TYPE;
426 description
427 "CFP2 analog coherent optics transceiver, supporting
428 100 Gb, 200Gb, and 250 Gb/s signal.";
429 }
430
431 identity CFP4 {
432 base TRANSCEIVER_FORM_FACTOR_TYPE;
433 description
434 "1/4 C form-factor pluggable, that can support up to a
435 100 Gb/s signal with 10x10G or 4x25G physical channels";
436 }
437
438 identity QSFP {
439 base TRANSCEIVER_FORM_FACTOR_TYPE;
440 description
441 "OriginalQuad Small Form-factor Pluggable transceiver that can
442 support 4x1G physical channels. Not commonly used.";
443 }
444
445 identity QSFP_PLUS {
446 base TRANSCEIVER_FORM_FACTOR_TYPE;
447 description
448 "Quad Small Form-factor Pluggable transceiver that can support
449 up to 4x10G physical channels.";
450 }
451
452 identity QSFP28 {
453 base TRANSCEIVER_FORM_FACTOR_TYPE;
454 description
455 "QSFP pluggable optic with support for up to 4x28G physical
456 channels";
457 }
458
459 identity CPAK {
460 base TRANSCEIVER_FORM_FACTOR_TYPE;
461 description
462 "Cisco CPAK transceiver supporting 100 Gb/s.";
463 }
464
465 identity SFP {
466 base TRANSCEIVER_FORM_FACTOR_TYPE;
467 description
468 "Small form-factor pluggable transceiver supporting up to
469 10 Gb/s signal";
470 }
471
472 identity SFP_PLUS {
473 base TRANSCEIVER_FORM_FACTOR_TYPE;
474 description
475 "Enhanced small form-factor pluggable transceiver supporting
476 up to 16 Gb/s signals, including 10 GbE and OTU2";
477 }
478
479 identity XFP {
480 base TRANSCEIVER_FORM_FACTOR_TYPE;
481 description
482 "10 Gigabit small form factor pluggable transceiver supporting
483 10 GbE and OTU2";
484 }
485
486 identity X2 {
487 base TRANSCEIVER_FORM_FACTOR_TYPE;
488 description
489 "10 Gigabit small form factor pluggable transceiver supporting
490 10 GbE using a XAUI inerface and 4 data channels.";
491 }
492
493 identity NON_PLUGGABLE {
494 base TRANSCEIVER_FORM_FACTOR_TYPE;
495 description
496 "Represents a port that does not require a pluggable optic,
497 e.g., with on-board optics like COBO";
498 }
499
500 identity OTHER {
501 base TRANSCEIVER_FORM_FACTOR_TYPE;
502 description
503 "Represents a transceiver form factor not otherwise listed";
504 }
505
506 identity FIBER_CONNECTOR_TYPE {
507 description
508 "Type of optical fiber connector";
509 }
510
511 identity SC_CONNECTOR {
512 base FIBER_CONNECTOR_TYPE;
513 description
514 "SC type fiber connector";
515 }
516
517 identity LC_CONNECTOR {
518 base FIBER_CONNECTOR_TYPE;
519 description
520 "LC type fiber connector";
521 }
522
523 identity MPO_CONNECTOR {
524 base FIBER_CONNECTOR_TYPE;
525 description
526 "MPO (multi-fiber push-on/pull-off) type fiber connector
527 1x12 fibers";
528 }
529
530 identity ETHERNET_PMD_TYPE {
531 description
532 "Ethernet compliance codes (PMD) supported by transceivers";
533 }
534
535 identity ETH_10GBASE_LRM {
536 base ETHERNET_PMD_TYPE;
537 description "Ethernet compliance code: 10GBASE_LRM";
538 }
539
540 identity ETH_10GBASE_LR {
541 base ETHERNET_PMD_TYPE;
542 description "Ethernet compliance code: 10GBASE_LR";
543 }
544
545 identity ETH_10GBASE_ZR {
546 base ETHERNET_PMD_TYPE;
547 description "Ethernet compliance code: 10GBASE_ZR";
548 }
549
550 identity ETH_10GBASE_ER {
551 base ETHERNET_PMD_TYPE;
552 description "Ethernet compliance code: 10GBASE_ER";
553 }
554
555 identity ETH_10GBASE_SR {
556 base ETHERNET_PMD_TYPE;
557 description "Ethernet compliance code: 10GBASE_SR";
558 }
559
560 identity ETH_40GBASE_CR4 {
561 base ETHERNET_PMD_TYPE;
562 description "Ethernet compliance code: 40GBASE_CR4";
563 }
564
565 identity ETH_40GBASE_SR4 {
566 base ETHERNET_PMD_TYPE;
567 description "Ethernet compliance code: 40GBASE_SR4";
568 }
569
570 identity ETH_40GBASE_LR4 {
571 base ETHERNET_PMD_TYPE;
572 description "Ethernet compliance code: 40GBASE_LR4";
573 }
574
575 identity ETH_40GBASE_ER4 {
576 base ETHERNET_PMD_TYPE;
577 description "Ethernet compliance code: 40GBASE_ER4";
578 }
579
580 identity ETH_40GBASE_PSM4 {
581 base ETHERNET_PMD_TYPE;
582 description "Ethernet compliance code: 40GBASE_PSM4";
583 }
584
585 identity ETH_4X10GBASE_LR {
586 base ETHERNET_PMD_TYPE;
587 description "Ethernet compliance code: 4x10GBASE_LR";
588 }
589
590 identity ETH_4X10GBASE_SR {
591 base ETHERNET_PMD_TYPE;
592 description "Ethernet compliance code: 4x10GBASE_SR";
593 }
594
595 identity ETH_100G_AOC {
596 base ETHERNET_PMD_TYPE;
597 description "Ethernet compliance code: 100G_AOC";
598 }
599
600 identity ETH_100G_ACC {
601 base ETHERNET_PMD_TYPE;
602 description "Ethernet compliance code: 100G_ACC";
603 }
604
605 identity ETH_100GBASE_SR10 {
606 base ETHERNET_PMD_TYPE;
607 description "Ethernet compliance code: 100GBASE_SR10";
608 }
609
610 identity ETH_100GBASE_SR4 {
611 base ETHERNET_PMD_TYPE;
612 description "Ethernet compliance code: 100GBASE_SR4";
613 }
614
615 identity ETH_100GBASE_LR4 {
616 base ETHERNET_PMD_TYPE;
617 description "Ethernet compliance code: 100GBASE_LR4";
618 }
619
620 identity ETH_100GBASE_ER4 {
621 base ETHERNET_PMD_TYPE;
622 description "Ethernet compliance code: 100GBASE_ER4";
623 }
624
625 identity ETH_100GBASE_CWDM4 {
626 base ETHERNET_PMD_TYPE;
627 description "Ethernet compliance code: 100GBASE_CWDM4";
628 }
629
630 identity ETH_100GBASE_CLR4 {
631 base ETHERNET_PMD_TYPE;
632 description "Ethernet compliance code: 100GBASE_CLR4";
633 }
634
635 identity ETH_100GBASE_PSM4 {
636 base ETHERNET_PMD_TYPE;
637 description "Ethernet compliance code: 100GBASE_PSM4";
638 }
639
640 identity ETH_100GBASE_CR4 {
641 base ETHERNET_PMD_TYPE;
642 description "Ethernet compliance code: 100GBASE_CR4";
643 }
644
645 identity ETH_UNDEFINED {
646 base ETHERNET_PMD_TYPE;
647 description "Ethernet compliance code: undefined";
648 }
649
650 identity SONET_APPLICATION_CODE {
651 description
652 "Supported SONET/SDH application codes";
653 }
654
655 identity VSR2000_3R2 {
656 base SONET_APPLICATION_CODE;
657 description
658 "SONET/SDH application code: VSR2000_3R2";
659 }
660
661 identity VSR2000_3R3 {
662 base SONET_APPLICATION_CODE;
663 description
664 "SONET/SDH application code: VSR2000_3R3";
665 }
666
667 identity VSR2000_3R5 {
668 base SONET_APPLICATION_CODE;
669 description
670 "SONET/SDH application code: VSR2000_3R5";
671 }
672
673 identity SONET_UNDEFINED {
674 base SONET_APPLICATION_CODE;
675 description
676 "SONET/SDH application code: undefined";
677 }
678
679 identity OTN_APPLICATION_CODE {
680 description
681 "Supported OTN application codes";
682 }
683
684 identity P1L1_2D1 {
685 base OTN_APPLICATION_CODE;
686 description
687 "OTN application code: P1L1_2D1";
688 }
689
690 identity P1S1_2D2 {
691 base OTN_APPLICATION_CODE;
692 description
693 "OTN application code: P1S1_2D2";
694 }
695
696 identity P1L1_2D2 {
697 base OTN_APPLICATION_CODE;
698 description
699 "OTN application code: P1L1_2D2";
700 }
701
702 identity OTN_UNDEFINED {
703 base OTN_APPLICATION_CODE;
704 description
705 "OTN application code: undefined";
706 }
707
708 identity TRIBUTARY_RATE_CLASS_TYPE {
709 description
710 "Rate of tributary signal _- identities will typically reflect
711 rounded bit rate.";
712 }
713
714 identity TRIB_RATE_1G {
715 base TRIBUTARY_RATE_CLASS_TYPE;
716 description
717 "1G tributary signal rate";
718 }
719
720 identity TRIB_RATE_2.5G {
721 base TRIBUTARY_RATE_CLASS_TYPE;
722 description
723 "2.5G tributary signal rate";
724 }
725
726 identity TRIB_RATE_10G {
727 base TRIBUTARY_RATE_CLASS_TYPE;
728 description
729 "10G tributary signal rate";
730 }
731
732 identity TRIB_RATE_40G {
733 base TRIBUTARY_RATE_CLASS_TYPE;
734 description
735 "40G tributary signal rate";
736 }
737
738 identity TRIB_RATE_100G {
739 base TRIBUTARY_RATE_CLASS_TYPE;
740 description
741 "100G tributary signal rate";
742 }
743
744 identity TRIB_RATE_150G {
745 base TRIBUTARY_RATE_CLASS_TYPE;
746 description
747 "150G tributary signal rate";
748 }
749
750 identity TRIB_RATE_200G {
751 base TRIBUTARY_RATE_CLASS_TYPE;
752 description
753 "200G tributary signal rate";
754 }
755
756 identity TRIB_RATE_250G {
757 base TRIBUTARY_RATE_CLASS_TYPE;
758 description
759 "250G tributary signal rate";
760 }
761
762 identity TRIB_RATE_300G {
763 base TRIBUTARY_RATE_CLASS_TYPE;
764 description
765 "300G tributary signal rate";
766 }
767
768 identity TRIB_RATE_400G {
769 base TRIBUTARY_RATE_CLASS_TYPE;
770 description
771 "400G tributary signal rate";
772 }
773
774 identity LOGICAL_ELEMENT_PROTOCOL_TYPE {
775 description
776 "Type of protocol framing used on the logical channel or
777 tributary";
778 }
779
780 identity PROT_ETHERNET {
781 base LOGICAL_ELEMENT_PROTOCOL_TYPE;
782 description
783 "Ethernet protocol framing";
784 }
785
786 identity PROT_OTN {
787 base LOGICAL_ELEMENT_PROTOCOL_TYPE;
788 description
789 "OTN protocol framing";
790 }
791
792 identity OPTICAL_CHANNEL {
793 base oc-platform-types:OPENCONFIG_HARDWARE_COMPONENT;
794 description
795 "Optical channels act as carriers for transport traffic
796 directed over a line system. They are represented as
797 physical components in the physical inventory model.";
798 }
799
800}