aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/wt/devicemanager-onap/openroadm71/provider/src/main/yang/org-openroadm-pm-types.yang
blob: 287cd4519a7b24da35068eb72adc784ab31a32ea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
module org-openroadm-pm-types {
  namespace "http://org/openroadm/pm-types";
  prefix org-openroadm-pm-types;

  organization
    "Open ROADM MSA";
  contact
    "OpenROADM.org";
  description
    "YANG definitions of performance management types.

      Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
      All other rights reserved.

      Redistribution and use in source and binary forms, with or without modification,
      are permitted provided that the following conditions are met:

      * Redistributions of source code must retain the above copyright notice, this
        list of conditions and the following disclaimer.
      * Redistributions in binary form must reproduce the above copyright notice,
        this list of conditions and the following disclaimer in the documentation and/or
        other materials provided with the distribution.
      * Neither the Members of the Open ROADM MSA Agreement nor the names of its
        contributors may be used to endorse or promote products derived from this software
        without specific prior written permission.

      THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT ''AS IS''
      AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
      WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
      IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT BE LIABLE FOR ANY DIRECT,
      INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
      NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;  LOSS OF USE, DATA,
      OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
      WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
      ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
      POSSIBILITY OF SUCH DAMAGE";

  revision 2020-03-27 {
    description
      "Version 7.0.0";
  }
  revision 2019-11-29 {
    description
      "Version 6.1.0";
  }
  revision 2019-03-29 {
    description
      "Version 5.0.0";
  }
  revision 2018-11-30 {
    description
      "Version 4.1.0";
  }
  revision 2017-12-15 {
    description
      "Version 2.2";
  }
  revision 2017-09-29 {
    description
      "Version 2.1";
  }
  revision 2017-06-26 {
    description
      "Version 2.0";
  }
  revision 2016-10-14 {
    description
      "Version 1.2";
  }

  typedef pm-granularity {
    type enumeration {
      enum notApplicable {
        value 1;
        description
          "This is for total statistic counters on devices that support
              them.";
      }
      enum 15min {
        value 2;
      }
      enum 24Hour {
        value 3;
      }
    }
    description
      "Granularity of PM bin";
  }

  typedef pm-data-type {
    type union {
      type uint64;
      type int64;
      type decimal64 {
        fraction-digits 2;
      }
      type decimal64 {
        fraction-digits 17;
      }
    }
  }

  typedef validity {
    type enumeration {
      enum complete {
        value 1;
      }
      enum partial {
        value 2;
      }
      enum suspect {
        value 3;
      }
    }
    description
      "Validity of data";
  }

  typedef pm-names-enum {
    type enumeration {
      enum vendorExtension {
        value 1;
        description
          "vendor extension";
      }
      enum bitErrorRate {
        value 2;
        description
          "Bit error rate (BER)";
      }
      enum opticalPowerOutput {
        value 3;
        description
          "Optical Power Output (OPOUT-OTS, OPOUT-OMS, OPT-OCH). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
      }
      enum opticalReturnLoss {
        value 4;
        description
          "Optical Return Loss (ORL-OTS) - at MW port(s) B";
      }
      enum opticalPowerInput {
        value 5;
        description
          "Optical Power Input (OPIN-OTS, OPIN-OMS, OPR-OCH). Total optical power";
      }
      enum codeViolations {
        value 8;
        description
          "Code Violations (CV)";
      }
      enum erroredSeconds {
        value 9;
        description
          "Errored Seconds (ES)";
      }
      enum severelyErroredSeconds {
        value 10;
        description
          "Severely Errored Seconds (SES)";
      }
      enum unavailableSeconds {
        value 11;
        description
          "Unavailable Seconds (UAS)";
      }
      enum inFrames {
        value 12;
        description
          "In frames (INFRAMES-E)";
      }
      enum inFramesErrored {
        value 13;
        description
          "In frames errored (INFRAMESERR-E)";
      }
      enum outFrames {
        value 14;
        description
          "Out frames (OUTFRAMES-E)";
      }
      enum erroredSecondsEthernet {
        value 15;
        description
          "Errored Seconds Ethernet (ES-E)";
      }
      enum severelyErroredSecondsEthernet {
        value 16;
        description
          "Severely Errored Seconds, Ethernet (SES-E)";
      }
      enum unavailableSecondsEthernet {
        value 17;
        description
          "Unavailable Seconds, Ethernet (UAS-E)";
      }
      enum erroredBlockCount {
        value 18;
        description
          "Errored block count";
      }
      enum delay {
        value 19;
        description
          "Number of frames between a DMValue toggle event and the received DMp signal value toggle event";
      }
      enum defectSeconds {
        value 20;
        description
          "Defect Seconds (DS)";
      }
      enum backwardIncomingAlignmentError {
        value 21;
        description
          "Backward Incoming Alignment Error (BIAE)";
      }
      enum incomingAlignmentError {
        value 22;
        description
          "Incoming Alignment Error (IAE)";
      }
      enum opticalPowerOutputMin {
        value 23;
        description
          "Minimum Optical Power Output (OPOUT-OTS). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
      }
      enum opticalPowerOutputMax {
        value 24;
        description
          "Maximum Optical Power Output (OPOUT-OTS). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
      }
      enum opticalPowerOutputAvg {
        value 25;
        description
          "Average Optical Power Output (OPOUT-OTS). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
      }
      enum opticalPowerInputMin {
        value 26;
        description
          "Minimum Optical Power Input (OPIN-OTS). Total optical power";
      }
      enum opticalPowerInputMax {
        value 27;
        description
          "Maximum Optical Power Input (OPIN-OTS). Total optical power";
      }
      enum opticalPowerInputAvg {
        value 28;
        description
          "Average Optical Power Input (OPIN-OTS). Total optical power";
      }
      enum opticalPowerOutputOSC {
        value 29;
        description
          "OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
      }
      enum opticalPowerOutputOSCMin {
        value 30;
        description
          "Minimum OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
      }
      enum opticalPowerOutputOSCMax {
        value 31;
        description
          "Maximum OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
      }
      enum opticalPowerOutputOSCAvg {
        value 32;
        description
          "Average OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
      }
      enum opticalPowerInputOSC {
        value 33;
        description
          "OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
      }
      enum opticalPowerInputOSCMin {
        value 34;
        description
          "Minimum OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
      }
      enum opticalPowerInputOSCMax {
        value 35;
        description
          "Maximum OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
      }
      enum opticalPowerInputOSCAvg {
        value 36;
        description
          "Average OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
      }
      enum preFECCorrectedErrors {
        value 37;
        description
          "pFEC corrected Errors";
      }
      enum totalOpticalPowerInput {
        value 38;
        description
          "Total Optical Power Input.";
      }
      enum totalOpticalPowerInputMin {
        value 39;
        description
          "Minimum Total Optical Power Input.";
      }
      enum totalOpticalPowerInputMax {
        value 40;
        description
          "Maximum Total Optical Power Input.";
      }
      enum totalOpticalPowerInputAvg {
        value 41;
        description
          "Average Total Optical Power Input.";
      }
      enum FECCorrectableBlocks {
        value 42;
        description
          "FEC Correctable Blocks.";
      }
      enum FECUncorrectableBlocks {
        value 43;
        description
          "FEC Uncorrectable Blocks.";
      }
      enum BIPErrorCounter {
        value 56;
        description
          "BIP Error Counter";
      }
      enum protectionSwitchingCount {
        value 57;
        description
          "Protection Switching Count (PSC)";
      }
      enum protectionSwitchingDuration {
        value 58;
        description
          "Protection Switching Duration in seconds (PSD)";
      }
      enum erroredBlockCountTCM1-up {
        value 59;
        description
          "errored Blocks Count on TCM1 up direction.";
      }
      enum erroredBlockCountTCM2-up {
        value 60;
        description
          "errored Blocks Count on TCM2 up direction.";
      }
      enum erroredBlockCountTCM3-up {
        value 61;
        description
          "errored Blocks Count on TCM3 up direction.";
      }
      enum erroredBlockCountTCM4-up {
        value 62;
        description
          "errored Blocks Count on TCM4 up direction.";
      }
      enum erroredBlockCountTCM5-up {
        value 63;
        description
          "errored Blocks Count on TCM5 up direction.";
      }
      enum erroredBlockCountTCM6-up {
        value 64;
        description
          "errored Blocks Count on TCM6 up direction.";
      }
      enum delayTCM1-up {
        value 65;
        description
          "Delay on TCM1 up direction.";
      }
      enum delayTCM2-up {
        value 66;
        description
          "Delay on TCM2 up direction.";
      }
      enum delayTCM3-up {
        value 67;
        description
          "Delay on TCM3 up direction.";
      }
      enum delayTCM4-up {
        value 68;
        description
          "Delay on TCM4 up direction.";
      }
      enum delayTCM5-up {
        value 69;
        description
          "Delay on TCM5 up direction.";
      }
      enum delayTCM6-up {
        value 70;
        description
          "Delay on TCM6 up direction.";
      }
      enum erroredBlockCountTCM1-down {
        value 71;
        description
          "errored Blocks Count on TCM1 down direction.";
      }
      enum erroredBlockCountTCM2-down {
        value 72;
        description
          "errored Blocks Count on TCM2 down direction.";
      }
      enum erroredBlockCountTCM3-down {
        value 73;
        description
          "errored Blocks Count on TCM3 down direction.";
      }
      enum erroredBlockCountTCM4-down {
        value 74;
        description
          "errored Blocks Count on TCM4 down direction.";
      }
      enum erroredBlockCountTCM5-down {
        value 75;
        description
          "errored Blocks Count on TCM5 down direction.";
      }
      enum erroredBlockCountTCM6-down {
        value 76;
        description
          "errored Blocks Count on TCM6 down direction.";
      }
      enum delayTCM1-down {
        value 77;
        description
          "Delay on TCM1 down direction.";
      }
      enum delayTCM2-down {
        value 78;
        description
          "Delay on TCM2 down direction.";
      }
      enum delayTCM3-down {
        value 79;
        description
          "Delay on TCM3 down direction.";
      }
      enum delayTCM4-down {
        value 80;
        description
          "Delay on TCM4 down direction.";
      }
      enum delayTCM5-down {
        value 81;
        description
          "Delay on TCM5 down direction.";
      }
      enum delayTCM6-down {
        value 82;
        description
          "Delay on TCM6 down direction.";
      }
      enum partialRateDiscard {
        value 83;
        description
          "Discarded packet as a result of policing or rate limiting for subrate ethernet.";
      }
      enum erroredSecondsTCM1-up {
        value 84;
        description
          "errored Seconds Count on TCM1 up direction.";
      }
      enum erroredSecondsTCM2-up {
        value 85;
        description
          "errored Seconds Count on TCM2 up direction.";
      }
      enum erroredSecondsTCM3-up {
        value 86;
        description
          "errored Seconds Count on TCM3 up direction.";
      }
      enum erroredSecondsTCM4-up {
        value 87;
        description
          "errored Seconds Count on TCM4 up direction.";
      }
      enum erroredSecondsTCM5-up {
        value 88;
        description
          "errored Seconds Count on TCM5 up direction.";
      }
      enum erroredSecondsTCM6-up {
        value 89;
        description
          "errored Seconds Count on TCM6 up direction.";
      }
      enum severelyErroredSecondsTCM1-up {
        value 90;
        description
          "severely Errored Seconds Count on TCM1 up direction.";
      }
      enum severelyErroredSecondsTCM2-up {
        value 91;
        description
          "severely Errored Seconds Count on TCM2 up direction.";
      }
      enum severelyErroredSecondsTCM3-up {
        value 92;
        description
          "severely Errored Seconds Count on TCM3 up direction.";
      }
      enum severelyErroredSecondsTCM4-up {
        value 93;
        description
          "severely Errored Seconds Count on TCM4 up direction.";
      }
      enum severelyErroredSecondsTCM5-up {
        value 94;
        description
          "severely Errored Seconds Count on TCM5 up direction.";
      }
      enum severelyErroredSecondsTCM6-up {
        value 95;
        description
          "severely Errored Seconds Count on TCM6 up direction.";
      }
      enum unavailableSecondsTCM1-up {
        value 96;
        description
          "unavailable Seconds Count on TCM1 up direction.";
      }
      enum unavailableSecondsTCM2-up {
        value 97;
        description
          "unavailable Seconds Count on TCM2 up direction.";
      }
      enum unavailableSecondsTCM3-up {
        value 98;
        description
          "unavailable Seconds Count on TCM3 up direction.";
      }
      enum unavailableSecondsTCM4-up {
        value 99;
        description
          "unavailable Seconds Count on TCM4 up direction.";
      }
      enum unavailableSecondsTCM5-up {
        value 100;
        description
          "unavailable Seconds Count on TCM5 up direction.";
      }
      enum unavailableSecondsTCM6-up {
        value 101;
        description
          "unavailable Seconds Count on TCM6 up direction.";
      }
      enum erroredSecondsTCM1-down {
        value 102;
        description
          "errored Seconds Count on TCM1 down direction.";
      }
      enum erroredSecondsTCM2-down {
        value 103;
        description
          "errored Seconds Count on TCM2 down direction.";
      }
      enum erroredSecondsTCM3-down {
        value 104;
        description
          "errored Seconds Count on TCM3 down direction.";
      }
      enum erroredSecondsTCM4-down {
        value 105;
        description
          "errored Seconds Count on TCM4 down direction.";
      }
      enum erroredSecondsTCM5-down {
        value 106;
        description
          "errored Seconds Count on TCM5 down direction.";
      }
      enum erroredSecondsTCM6-down {
        value 107;
        description
          "errored Seconds Count on TCM6 down direction.";
      }
      enum severelyErroredSecondsTCM1-down {
        value 108;
        description
          "severely Errored Seconds Count on TCM1 down direction.";
      }
      enum severelyErroredSecondsTCM2-down {
        value 109;
        description
          "severely Errored Seconds Count on TCM2 down direction.";
      }
      enum severelyErroredSecondsTCM3-down {
        value 110;
        description
          "severely Errored Seconds Count on TCM3 down direction.";
      }
      enum severelyErroredSecondsTCM4-down {
        value 111;
        description
          "severely Errored Seconds Count on TCM4 down direction.";
      }
      enum severelyErroredSecondsTCM5-down {
        value 112;
        description
          "severely Errored Seconds Count on TCM5 down direction.";
      }
      enum severelyErroredSecondsTCM6-down {
        value 113;
        description
          "severely Errored Seconds Count on TCM6 down direction.";
      }
      enum unavailableSecondsTCM1-down {
        value 114;
        description
          "unavailable Seconds Count on TCM1 down direction.";
      }
      enum unavailableSecondsTCM2-down {
        value 115;
        description
          "unavailable Seconds Count on TCM2 down direction.";
      }
      enum unavailableSecondsTCM3-down {
        value 116;
        description
          "unavailable Seconds Count on TCM3 down direction.";
      }
      enum unavailableSecondsTCM4-down {
        value 117;
        description
          "unavailable Seconds Count on TCM4 down direction.";
      }
      enum unavailableSecondsTCM5-down {
        value 118;
        description
          "unavailable Seconds Count on TCM5 down direction.";
      }
      enum unavailableSecondsTCM6-down {
        value 119;
        description
          "unavailable Seconds Count on TCM6 down direction.";
      }
      enum fecCorrectedCodewords {
        value 120;
        description
          "FEC Corrected Codewords Counter";
      }
      enum fecUncorrectedCodewords {
        value 121;
        description
          "FEC Uncorrected Codewords Counter";
      }
      enum fecSymbolErrors {
        value 122;
        description
          "FEC Symbol Error Counter";
      }
      enum localFaultSeconds {
        value 123;
        description
          "Local Fault Seconds";
      }
      enum remoteFaultSeconds {
        value 124;
        description
          "Remote Fault Seconds";
      }
    }
  }

  grouping pm-measurement {
    description
      "Set of parameters related to a PM Measurement";
    leaf pmParameterValue {
      type pm-data-type;
      config false;
      mandatory true;
    }
    leaf pmParameterUnit {
      type string;
      mandatory false;
      description
        "Unit PM parameter has been measured - frames, packets, u, etc";
    }
    leaf validity {
      type validity;
      mandatory false;
    }
  }

  grouping pm-names {
    description
      "Name of PM parameter. Consists of a set list of parameters,
       plus an extension field to support addition parameters.";
    leaf type {
      type pm-names-enum;
      mandatory true;
    }
    leaf extension {
      type string;
      description
        "name of parameter, when enum value set to vendorExtension because
         name not found in pm-names-enum";
    }
  }
}