Assign image keyname and pubkey at vnf level
[ccsdk/apps.git] / sdnr / wireless-transport / code-Carbon-SR1 / apps / devicemodel / src / main / yang / MicrowaveModel-TypeDefinitions@2016-09-02.yang
1 module MicrowaveModel-TypeDefinitions {
2     namespace "uri:onf:MicrowaveModel-TypeDefinitions";
3     prefix MicrowaveModel-TypeDefinitions;
4
5     import CoreModel-CoreFoundationModule-SuperClassesAndCommonPackages {
6         prefix CoreModel-CoreFoundationModule-SuperClassesAndCommonPackages;
7     }
8     import MicrowaveModel-ObjectClasses-SuperClasses {
9         prefix MicrowaveModel-ObjectClasses-SuperClasses;
10     }
11     import G_874_1_model-Object_Classes {
12         prefix G_874_1_model-Object_Classes;
13     }
14     import CoreModel-CoreFoundationModule-StateModel {
15         prefix CoreModel-CoreFoundationModule-StateModel;
16     }
17
18     organization 
19         'ONF (Open Networking Foundation) Open Transport Working Group - Wireless Transport Project';
20
21     contact 
22         'WG Web:   <https://www.opennetworking.org/technical-communities/areas/specification/1931-optical-transport>
23          WG List:  <mailto:wireless-transport@login.opennetworking.org >
24          WG Chair: Lyndon Ong
25                    <mailto:lyong@ciena.com>
26          WG Chair: Giorgio Cazzaniga
27                    <mailto:giorgio.cazzaniga@sm-optics.com>';
28
29     description 
30         'This module contains a collection of YANG definitions for 
31          managing microwave transport networks.';
32
33     revision 2016-09-02 {
34         description 
35             "Initial revision."; 
36         reference 
37             "ONF TR xyz: A YANG Data Model for Microwave Transport Networks."; 
38     }
39
40     typedef severityType {
41         description "According to ITU-T M.3160";
42         type enumeration {
43             enum non-alarmed;
44             enum warning;
45             enum minor;
46             enum major;
47             enum critical;
48         }
49     }
50     grouping channelPlanType {
51         leaf supportedChannelPlan {
52             type string;
53             config false;
54             description "Unique name (e.g. CEPT/ERC/REC (01) 04 Annex 5) of an international agreement that describe allocations of frequency channels, to which this air interface complies. Corresponding channel plans to be delivered by the hardware vendor and to be stored by the operator in the controller/application attached database.";
55         }
56         leaf duplexDistanceIsVariable {
57             type boolean;
58             config false;
59             description "To be set on  'true', if the distance between transmitted and received frequency is variable.";
60             default false;
61         }
62         leaf duplexDistance {
63             type int32;
64             config false;
65             description "Distance between transmitted and received frequency.";
66             units "kHz";
67             default -1;
68         }
69         leaf autoFreqSelectIsAvail {
70             type boolean;
71             config false;
72             description "In case the microwave radio is capable of automatically selecting the transmit frequency in unlicensed bands, this field shall contain a 'true'.";
73             default false;
74         }
75         list transmissionModeList {
76             key 'transmissionModeId';
77             ordered-by system;
78             uses transmissionModeType;
79             min-elements 1;
80         }
81     }
82     grouping transmissionModeType {
83         leaf transmissionModeId {
84             type CoreModel-CoreFoundationModule-SuperClassesAndCommonPackages:UniversalId;
85             config false;
86             description "Indentifies the transmissionMode for internal reference.";
87         }
88         leaf channelBandwidth {
89             type int32;
90             config false;
91             description "Bandwidth of the transmit channel. The value shall be expressed explicitly (means in kHz) not as a reference to an international agreement. The values shall be chosen from the following _list: 3.500, 7.000, 14.000, 27.500, 28.000, 29.000, 29.650, 30.000, 40.000, 50.000, 55.000, 56.000, 59.300, 60.000, 80.000, 100.000, 112.000, 120.000, 150.000, 200.000, 250.000, 500.000, 750.000, 1.000.000, 1.250.000, 1.500.000, 1.750.000, 2.000.000;";
92             units "kHz";
93             default -1;
94         }
95         leaf modulationScheme {
96             type int16;
97             config false;
98             description "Modulation scheme, which is base to the other characteristics described in the same transmissionModeType data type. The modulation scheme shall be described by the number of symbols (e.g. BPSK->'2' or 256QAM->'256').";
99             units "symbols";
100             default -1;
101         }
102         leaf informationRate {
103             type int8;
104             config false;
105             description "Information rate of the coding scheme in %.";
106             units "%";
107             default -1;
108         }
109         leaf txPowerMin {
110             type int8;
111             config false;
112             description "Value of the minimum transmit power the modem can operate in dBm.";
113             units "dBm";
114             default 99;
115         }
116         leaf txPowerMax {
117             type int8;
118             config false;
119             description "Value of the maximum transmit power the modem can operate in dBm.";
120             units "dBm";
121             default 99;
122         }
123         leaf rxThreshold {
124             type int16;
125             config false;
126             description "Value of the receive level required to decode the received signal with a Bit Error Rate of 1e-6 or less.";
127             units "dBm";
128             default 99;
129         }
130         leaf amUpshiftLevel {
131             type int8;
132             config false;
133             description "Value of the receive level that has to be exceeded to shift into a higher modulation scheme.";
134             units "dBm";
135             default 99;
136         }
137         leaf amDownshiftLevel {
138             type int8;
139             config false;
140             description "Value of the receive level that has to be exceeded for not shifting into a lower modulation scheme.";
141             units "dBm";
142             default 99;
143         }
144         leaf xpicIsAvail {
145             type boolean;
146             config false;
147             description "In case the Air Interface Port is capable of XPIC, this field shall contain a 'true'.";
148             default false;
149         }
150     }
151     typedef polarizationType {
152         type enumeration {
153             enum not-specified;
154             enum horizontal;
155             enum vertical;
156         }
157     }
158     grouping airInterfaceProblemSeverityType {
159         leaf problemKindName {
160             type string;
161             description "Name of the alarm according to AirInterface::AirInterfaceCapability::supportedAlarms";
162         }
163         leaf problemKindSeverity {
164             type severityType;
165             description "Severity of this type of alarm.";
166             default "warning";
167         }
168     }
169     grouping airInterfaceCurrentProblemType {
170         uses MicrowaveModel-ObjectClasses-SuperClasses:MwCurrentProblem;
171         leaf problemName {
172             type string;
173             config false;
174             description "Name of the alarm according to AirInterface::AirInterfaceCapability::supportedAlarms";
175             default "Air interface problems not yet defined.";
176         }
177         leaf problemSeverity {
178             type severityType;
179             config false;
180             description "Severity of the alarm.";
181             default "warning";
182         }
183     }
184     grouping airInterfacePerformanceType {
185         description "Consolidated performance information of the air interface.";
186         leaf es {
187             type int32;
188             config false;
189             description "Number of errored seconds.";
190             units "s";
191             default -1;
192         }
193         leaf ses {
194             type int32;
195             config false;
196             description "Number of severely errored seconds.";
197             units "s";
198             default -1;
199         }
200         leaf cses {
201             type int32;
202             config false;
203             description "Number of consecutive severely errored seconds.";
204             units "s";
205             default -1;
206         }
207         leaf unavailability {
208             type int32;
209             config false;
210             description "Total time of unavailability in seconds.";
211             units "s";
212             default -1;
213         }
214         leaf txLevelMin {
215             type int8;
216             config false;
217             description "Minimum transmit power. Signed integers are required.";
218             units "dBm";
219             default 99;
220         }
221         leaf txLevelMax {
222             type int8;
223             config false;
224             description "Maximum transmit power. Signed integers are required.";
225             units "dBm";
226             default 99;
227         }
228         leaf txLevelAvg {
229             type int8;
230             config false;
231             description "Averaged transmit power. Signed integers are required.";
232             units "dBm";
233             default 99;
234         }
235         leaf rxLevelMin {
236             type int8;
237             config false;
238             description "Minimum receive level. Signed integers are required.";
239             units "dBm";
240             default 99;
241         }
242         leaf rxLevelMax {
243             type int8;
244             config false;
245             description "Maximum receive level. Signed integers are required.";
246             units "dBm";
247             default 99;
248         }
249         leaf rxLevelAvg {
250             type int8;
251             config false;
252             description "Averaged receive level. Signed integers are required.";
253             units "dBm";
254             default 99;
255         }
256         leaf time2Symbols {
257             type int32;
258             config false;
259             units "s";
260             default -1;
261         }
262         leaf time4SymbolsS {
263             type int32;
264             config false;
265             description "Sum of all seconds the transmitter operated in e.g. 4QAM strong.";
266             units "s";
267             default -1;
268         }
269         leaf time4Symbols {
270             type int32;
271             config false;
272             units "s";
273             default -1;
274         }
275         leaf time8Symbols {
276             type int32;
277             config false;
278             units "s";
279             default -1;
280         }
281         leaf time16SymbolsS {
282             type int32;
283             config false;
284             units "s";
285             default -1;
286         }
287         leaf time16Symbols {
288             type int32;
289             config false;
290             units "s";
291             default -1;
292         }
293         leaf time32Symbols {
294             type int32;
295             config false;
296             units "s";
297             default -1;
298         }
299         leaf time64Symbols {
300             type int32;
301             config false;
302             units "s";
303             default -1;
304         }
305         leaf time128Symbols {
306             type int32;
307             config false;
308             units "s";
309             default -1;
310         }
311         leaf time256Symbols {
312             type int32;
313             config false;
314             units "s";
315             default -1;
316         }
317         leaf time512Symbols {
318             type int32;
319             config false;
320             units "s";
321             default -1;
322         }
323         leaf time512SymbolsL {
324             type int32;
325             config false;
326             units "s";
327             default -1;
328         }
329         leaf time1024Symbols {
330             type int32;
331             config false;
332             units "s";
333             default -1;
334         }
335         leaf time1024SymbolsL {
336             type int32;
337             config false;
338             units "s";
339             default -1;
340         }
341         leaf time2048Symbols {
342             type int32;
343             config false;
344             units "s";
345             default -1;
346         }
347         leaf time2048SymbolsL {
348             type int32;
349             config false;
350             units "s";
351             default -1;
352         }
353         leaf time4096Symbols {
354             type int32;
355             config false;
356             units "s";
357             default -1;
358         }
359         leaf time4096SymbolsL {
360             type int32;
361             config false;
362             units "s";
363             default -1;
364         }
365         leaf time8192Symbols {
366             type int32;
367             config false;
368             units "s";
369             default -1;
370         }
371         leaf time8192SymbolsL {
372             type int32;
373             config false;
374             units "s";
375             default -1;
376         }
377         leaf snirMin {
378             type int8;
379             config false;
380             description "Minimum signal to (noise+interference) ratio.";
381             units "dB";
382             default -99;
383         }
384         leaf snirMax {
385             type int8;
386             config false;
387             description "Maximum signal to (noise+interference) ratio.";
388             units "dB";
389             default -99;
390         }
391         leaf snirAvg {
392             type int8;
393             config false;
394             description "Averaged signal to (noise+interference) ratio.";
395             units "dB";
396             default -99;
397         }
398         leaf xpdMin {
399             type int8;
400             config false;
401             description "Minimum cross polarization discrimination.";
402             units "dB";
403             default -99;
404         }
405         leaf xpdMax {
406             type int8;
407             config false;
408             description "Maximum cross polarization discrimination.";
409             units "dB";
410             default -99;
411         }
412         leaf xpdAvg {
413             type int8;
414             config false;
415             description "Averaged cross polarization discrimination.";
416             units "dB";
417             default -99;
418         }
419         leaf rfTempMin {
420             type int8;
421             config false;
422             description "Lowest temperature (in degree Celsius) of the radio module inside the outdoor unit.";
423             units "C";
424             default -99;
425         }
426         leaf rfTempMax {
427             type int8;
428             config false;
429             description "Highest temperature (in degree Celsius) of the radio module inside the outdoor unit.";
430             units "C";
431             default -99;
432         }
433         leaf rfTempAvg {
434             type int8;
435             config false;
436             description "Averaged temperature (in degree Celsius) of the radio module inside the outdoor unit.";
437             units "C";
438             default -99;
439         }
440         leaf defectBlocksSum {
441             type int16;
442             config false;
443             description "Total number of blocks that were defect after receiving and could not be corrected by the FEC.";
444             units "blocks";
445             default -1;
446         }
447         leaf timePeriod {
448             type int32;
449             config false;
450             description "Total length of the measurement period.";
451             units "s";
452             default -1;
453         }
454     }
455     grouping airInterfaceCurrentPerformanceType {
456         description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
457         uses G_874_1_model-Object_Classes:OTN_CurrentData;
458         container performanceData {
459             uses airInterfacePerformanceType;
460         }
461     }
462     grouping airInterfaceHistoricalPerformanceType {
463         description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
464         uses G_874_1_model-Object_Classes:OTN_HistoryData;
465         container performanceData {
466             uses airInterfacePerformanceType;
467         }
468     }
469     typedef protectionType {
470         type enumeration {
471             enum hsb;
472         }
473     }
474     typedef roleType {
475         type enumeration {
476             enum working;
477             enum protection;
478             enum protected;
479         }
480     }
481     grouping diversityType {
482         leaf diversityName {
483             type string;
484             config false;
485             description "Names to be chosen from the following list: 'spaceDiversity', 'frequencyDiversity'";
486         }
487         leaf numberOfAirInterfacesMax {
488             type int8;
489             config false;
490             description "Maximum number of air interfaces that could be part of this kind of diversity.";
491             units "air interfaces";
492             default 1;
493         }
494     }
495     typedef airInterfaceDiversityStatusType {
496         type enumeration {
497             enum groupDown;
498             enum notAllAiActive;
499             enum allAiActive;
500         }
501     }
502     grouping airInterfaceDiversityProblemSeverityType {
503         leaf problemKindName {
504             type string;
505             description "Name of the alarm according to AirInterfaceDiversity::AirInterfaceDiversityCapability::supportedAlarms";
506         }
507         leaf problemKindSeverity {
508             type severityType;
509             description "Severity of this type of alarm.";
510             default "warning";
511         }
512     }
513     grouping airInterfaceDiversityCurrentProblemType {
514         uses MicrowaveModel-ObjectClasses-SuperClasses:MwCurrentProblem;
515         leaf problemName {
516             type string;
517             config false;
518             description "Name of the alarm according to AirInterfaceDiversity::AirInterfaceDiversityCapability::supportedAlarms";
519             default "Air interface diversity problems not yet defined.";
520         }
521         leaf problemSeverity {
522             type severityType;
523             description "Severity of the alarm.";
524             default "warning";
525         }
526     }
527     grouping airInterfaceDiversityPerformanceType {
528         description "Consolidated performance information of the air interface diversity group.";
529         leaf snirMin {
530             type int8;
531             config false;
532             description "Minimum signal to (noise+interference) ratio of the combined signals.";
533             units "dB";
534             default -99;
535         }
536         leaf snirMax {
537             type int8;
538             config false;
539             description "Maximum signal to (noise+interference) ratio of the combined signals.";
540             units "dB";
541             default -99;
542         }
543         leaf snirAvg {
544             type int8;
545             config false;
546             description "Average signal to (noise+interference) ratio of the combined signals.";
547             units "dB";
548             default -99;
549         }
550     }
551     grouping airInterfaceDiversityCurrentPerformanceType {
552         description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
553         uses G_874_1_model-Object_Classes:OTN_CurrentData;
554         container performanceData {
555             uses airInterfaceDiversityPerformanceType;
556         }
557     }
558     grouping airInterfaceDiversityHistoricalPerformanceType {
559         description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
560         uses G_874_1_model-Object_Classes:OTN_HistoryData;
561         container performanceData {
562             uses airInterfaceDiversityPerformanceType;
563         }
564     }
565     grouping tdmStructureType {
566         leaf tdmStructureName {
567             type string;
568             config false;
569             description "Names to be chosen from the following list: 'e1','t1','j1','e3','ds3','stm1','cpri1','cpri2','cpri3','cpri4','cpri5','cpri6' or 'cpri7'";
570         }
571         leaf tdmSegmentSize {
572             type int32;
573             config false;
574             description "Size of the TDM segment in kbit/s. Values to be chosen from the following list: '2048','1544','34000','44736 ','155520','614400','1228800','2457600','3072000','4915200','6144000' or '9830400;";
575             units "kbit/s";
576             default -1;
577         }
578         leaf maxNumberOfSegmentsReservable {
579             type int8;
580             config false;
581             description "Device specific maximum number of segments (not depending on current air interface configuration) that can be reserved for this type of segment on a single air interface.";
582             units "segments";
583             default -1;
584         }
585     }
586     grouping structureProblemSeverityType {
587         leaf problemKindName {
588             type string;
589             description "Name of the alarm according to Structure::StructureCapability::supportedAlarms";
590         }
591         leaf problemKindSeverity {
592             type severityType;
593             description "Severity of this type of alarm.";
594             default "warning";
595         }
596     }
597     grouping structureCurrentProblemType {
598         uses MicrowaveModel-ObjectClasses-SuperClasses:MwCurrentProblem;
599         leaf problemName {
600             type string;
601             config false;
602             description "Name of the alarm according to Structure::StructureCapability::supportedAlarms";
603             default "Structure problems not yet defined.";
604         }
605         leaf problemSeverity {
606             type severityType;
607             description "Severity of the alarm.";
608             default "warning";
609         }
610     }
611     typedef structurePerformanceType {
612         description "Consolidated performance information of the Structure.";
613         type int32;
614     }
615     grouping structureCurrentPerformanceType {
616         description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
617         uses G_874_1_model-Object_Classes:OTN_CurrentData;
618         leaf performanceData {
619             type structurePerformanceType;
620             config false;
621         }
622     }
623     grouping structureHistoricalPerformanceType {
624         description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
625         uses G_874_1_model-Object_Classes:OTN_HistoryData;
626         leaf performanceData {
627             type structurePerformanceType;
628             config false;
629         }
630     }
631     grouping tdmContainerType {
632         leaf tdmContainerName {
633             type string;
634             config false;
635             description "Names to be chosen from the following list: 'e1','t1','j1','e3','t3','stm1','cpri1','cpri2','cpri3','cpri4','cpri5','cpri6' or 'cpri7'";
636         }
637         leaf tdmContainerSize {
638             type int32;
639             config false;
640             description "Capacity required for transporting this type of container (in kbit/s). Values to be chosen from the following list: '2048','1544','34000','44736 ','155520','614400','1228800','2457600','3072000','4915200','6144000' or '9830400;";
641             units "kbit/s";
642             default -1;
643         }
644     }
645     grouping segmentIDType {
646         description "Identifies the segments, which are used to transport the container.
647             Combinations of structureId and segmentId must be unique inside the device to assure that every resource is used just once.";
648         leaf structureIdRef {
649             type CoreModel-CoreFoundationModule-SuperClassesAndCommonPackages:UniversalId;
650         }
651         leaf segmentIdRef {
652             type int16;
653         }
654     }
655     grouping segmentStatusType {
656         leaf segmentStatusTypeId {
657             type int16;
658             config false;
659         }
660         leaf segmentIsReservedForTdm {
661             type boolean;
662             config false;
663             description "The number of segments, which is configured by Structure::StructureConfiguration::tdmReservedNumberOfSegements, has to be reserved for TDM. Starting from the lowest index value, these segments have to be marked with a 'true' in segmentIsReservedForTdm.
664                 ";
665             default false;
666         }
667         leaf operationalStatus {
668             type CoreModel-CoreFoundationModule-StateModel:OperationalState;
669             config false;
670             description "Current operational status of each segment.";
671             default "DISABLED";
672         }
673     }
674     grouping containerProblemSeverityType {
675         leaf problemKindName {
676             type string;
677             description "Name of the alarm according to Container::ContainerCapability::supportedAlarms";
678         }
679         leaf problemKindSeverity {
680             type severityType;
681             description "Severity of this type of alarm.";
682             default "warning";
683         }
684     }
685     grouping containerCurrentProblemType {
686         uses MicrowaveModel-ObjectClasses-SuperClasses:MwCurrentProblem;
687         leaf problemName {
688             type string;
689             config false;
690             description "Name of the alarm according to Container::ContainerCapability::supportedAlarms";
691             default "Container problems not yet defined.";
692         }
693         leaf problemSeverity {
694             type severityType;
695             description "Severity of the alarm.";
696             default "warning";
697         }
698     }
699     grouping containerPerformanceType {
700         description "Consolidated performance information of the Container.";
701         leaf txEthernetBytesMaxS {
702             type int32;
703             config false;
704             description "Counts the number of Bytes of Ethernet traffic (before header compression) transmitted within a second and keeps the highest value within the measurement period. Field to be left blank for all types of TDM containers.
705                 Required data volume = 31bit";
706             units "Bytes/s";
707             default -1;
708         }
709         leaf txEthernetBytesMaxM {
710             type int64;
711             config false;
712             description "Counts the number of Bytes of Ethernet traffic (before header compression) transmitted within a minute and keeps the highest value with in the measurement period. Field to be left blank for all types of TDM containers.
713                 Required data volume = 37bit";
714             units "Bytes/min";
715             default -1;
716         }
717         leaf txEthernetBytesSum {
718             type int64;
719             config false;
720             description "Total number of Bytes of Ethernet traffic (before header compression) transmitted (in direction out of the device) during the measurement period. Field to be left blank for all types of TDM containers.
721                 Required data volume = 47bit";
722             units "Bytes";
723             default -1;
724         }
725         leaf timePeriod {
726             type int32;
727             config false;
728             description "Total length of the measurement period in seconds.
729                 Required data volume = 17bit";
730             units "s";
731             default -1;
732         }
733     }
734     grouping containerCurrentPerformanceType {
735         description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
736         uses G_874_1_model-Object_Classes:OTN_CurrentData;
737         container performanceData {
738             uses containerPerformanceType;
739         }
740     }
741     grouping containerHistoricalPerformanceType {
742         description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
743         uses G_874_1_model-Object_Classes:OTN_HistoryData;
744         container performanceData {
745             uses containerPerformanceType;
746         }
747     }
748 }