45fbf20299ae695f6a2e3e031fd9b1578082a542
[ccsdk/apps.git] / sdnr / wireless-transport / code-Carbon-SR1 / apps / devicemodel / src / main / yang / MicrowaveModel-ObjectClasses-AirInterface@2016-09-01.yang
1 module MicrowaveModel-ObjectClasses-AirInterface {
2     namespace "uri:onf:MicrowaveModel-ObjectClasses-AirInterface";
3     prefix MicrowaveModel-ObjectClasses-AirInterface;
4
5     import CoreModel-CoreNetworkModule-ObjectClasses {
6         prefix CoreModel-CoreNetworkModule-ObjectClasses;
7     }
8     import MicrowaveModel-TypeDefinitions {
9         prefix MicrowaveModel-TypeDefinitions;
10     }
11     import CoreModel-CoreFoundationModule-TypeDefinitions {
12         prefix CoreModel-CoreFoundationModule-TypeDefinitions;
13     }
14     import CoreModel-CoreFoundationModule-SuperClassesAndCommonPackages {
15         prefix CoreModel-CoreFoundationModule-SuperClassesAndCommonPackages;
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-01 {
34         description 
35             "Initial revision."; 
36         reference 
37             "ONF TR xyz: A YANG Data Model for Microwave Transport Networks."; 
38     }
39
40     list MW_AirInterface_Pac {
41         description "LTP(MWPS-TTP)";
42         key 'layerProtocol';
43         config true;
44         leaf layerProtocol {
45             type leafref {
46                 path '/CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/CoreModel-CoreNetworkModule-ObjectClasses:_ltpRefList/CoreModel-CoreNetworkModule-ObjectClasses:_lpList/CoreModel-CoreNetworkModule-ObjectClasses:uuid';
47             }
48             description "";
49         }
50         container airInterfaceCapability {
51             config false;
52             uses AirInterfaceCapability;
53         }
54         container airInterfaceConfiguration {
55             config true;
56             uses AirInterfaceConfiguration;
57         }
58         container airInterfaceStatus {
59             config false;
60             uses AirInterfaceStatus;
61         }
62         container airInterfaceCurrentProblems {
63             config false;
64             uses AirInterfaceCurrentProblems;
65         }
66         container airInterfaceCurrentPerformance {
67             config false;
68             uses AirInterfaceCurrentPerformance;
69         }
70         container airInterfaceHistoricalPerformances {
71             config false;
72             uses AirInterfaceHistoricalPerformances;
73         }
74     }
75     grouping AirInterfaceCapability {
76         description "Describes the 'analog' capabilities of modem and transmitter of the microwave device. Value ranges of attributes are not independently (e.g. min. and max. transmit power depends on modulation). Legal combinations of values are expressed in transmissionModeTypes.";
77         leaf typeOfEquipment {
78             type string;
79             config false;
80             description "This parameter indicates the equipment type. Instead of uploading the complete set of capabilities, capabilities of the same equipment type could be reused. Should be unique for a combination of modem, radio and their respective firmware.";
81             default "Type of equipment not yet defined.";
82         }
83         leaf txFrequencyMin {
84             type int32;
85             config false;
86             description "Value of the minimum transmit frequency tunable at the air interface.";
87             units "kHz";
88             default -1;
89         }
90         leaf txFrequencyMax {
91             type int32;
92             config false;
93             description "Value of the maximum transmit frequency tunable at the air interface.";
94             units "kHz";
95             default -1;
96         }
97         leaf rxFrequencyMin {
98             type int32;
99             config false;
100             description "Value of the minimum receive frequency tunable at the air interface.";
101             units "kHz";
102             default -1;
103         }
104         leaf rxFrequencyMax {
105             type int32;
106             config false;
107             description "Value of the maximum receive frequency tunable at the air interface.";
108             units "kHz";
109             default -1;
110         }
111         leaf adaptiveModulationIsAvail {
112             type boolean;
113             config false;
114             description "In case the device is capable of adaptive modulation, this field shall contain a 'true'.";
115             default false;
116         }
117         leaf mimoIsAvail {
118             type boolean;
119             config false;
120             description "In case the device is capable of MIMO, this field shall contain a 'true'.";
121             default false;
122         }
123         leaf mimoChannels {
124             type int8;
125             config false;
126             description "Maximum number (n) of spatial multiplexing streams that can be conveyed by an n x n MIMO configuration.";
127             units "channels";
128             default 1;
129         }
130         leaf alicIsAvail {
131             type boolean;
132             config false;
133             description "In case the microwave radio is capable of Adjacent Link Interference Cancelation (canceling of interference cause by transmitters located at the same site), this field shall contain a 'true'.";
134             default false;
135         }
136         leaf atpcIsAvail {
137             type boolean;
138             config false;
139             description "In case the microwave radio is capable of ATPC, this field shall contain a 'true'.";
140             default false;
141         }
142         leaf atpcRange {
143             type int8;
144             config false;
145             description "Extent of the ATPC range.";
146             units "dB";
147             default 0;
148         }
149         leaf encryptionIsAvail {
150             type boolean;
151             config false;
152             description "Shall be marked 'true', if payload encryption is available.";
153             default false;
154         }
155         leaf loopBackIsAvail {
156             type boolean;
157             config false;
158             description "In case the radio is capable of looping back header information of the air interface, this field shall contain a 'true'.";
159             default false;
160         }
161         leaf maintenanceTimerRange {
162             type string;
163             config false;
164             description "Available time periods for maintenance configurations (e.g. the loop back of microwave header information) to be described. Concrete values shall be separated by commas (e.g. '10, 60, 360'). Ranges shall be expressed as two values separated by a minus (e.g. '10-360').";
165             units "s";
166             default "Range of the maintenance timer not yet defined.";
167         }
168         leaf supportedAlarms {
169             type string;
170             config false;
171             description "Available alarms to be listed. Mandatory:'signalIsLost','rslIsExceeded','temperatureIsExceeded','modemIsFaulty','radioIsFaulty' and 'modulationIsDownShifted'. Further alarms might be added by the device. Names are to be separated by commas.";
172             default "Supported alarms not yet defined.";
173         }
174         list supportedChannelPlanList {
175             description "List of channel spacing that are supported by the device.";
176             key 'supportedChannelPlan';
177             ordered-by system;
178             uses MicrowaveModel-TypeDefinitions:channelPlanType;
179             min-elements 1;
180         }
181     }
182     grouping AirInterfaceConfiguration {
183         description "Configuration of the radio link.";
184         leaf airInterfaceName {
185             type string;
186             description "Operator specific microwave link ID (often used for coding area, type of element and sequential number).";
187             default "Air interface ID not yet defined.";
188         }
189         leaf radioSignalID {
190             type string;
191             description "The radioSignalId is transmitted on the air interface so the remote site of the link synchronizes on the correct transmitter. The local radio MUST NOT synchronize on a radio signal with a different radioSignalId. The link ID is neither an ID necessary to span the model nor an ID referencing external data. It is just some sort of name of the link transmitted so the correct remote site can be identified in an interference situation.
192                 The value zero might be used to make the microwave to disable the link ID check.";
193             default "Radio signal ID not yet defined.";
194         }
195         leaf txFrequency {
196             type int32;
197             description "Center frequency of the transmit channel. The values to be configured have to exactly match the values listed in the international agreement referenced in channelPlanID. In case of automated selection of the transmit frequency this field shall describe the lowest center frequency selectable.";
198             units "kHz";
199             default -1;
200         }
201         leaf rxFrequency {
202             type int32;
203             description "Center frequency of the receive channel.";
204             units "kHz";
205             default -1;
206         }
207         leaf txChannelBandwidth {
208             type int32;
209             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;";
210             units "kHz";
211             default -1;
212         }
213         leaf rxChannelBandwidth {
214             type int32;
215             description "Bandwidth of the receive 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;";
216             units "kHz";
217             default -1;
218         }
219         leaf polarization {
220             type MicrowaveModel-TypeDefinitions:polarizationType;
221             description "Allows documenting the polarization of the air interface.";
222             default "not-specified";
223         }
224         leaf powerIsOn {
225             type boolean;
226             description "Power ON. Activation of the entire radio in a split mount configuration shall be expressed as a 'true'.";
227             default true;
228         }
229         leaf transmitterIsOn {
230             type boolean;
231             description "Activation of the transmitter inside the radio shall be expressed as a 'true'.";
232             default false;
233         }
234         leaf receiverIsOn {
235             type boolean;
236             description "Activation of the receiver inside the radio shall be expressed as a 'true'. Attribute shall also be used for RX main and RX diversity squelches in case of diversity configurations.
237                 Maintenance Feature";
238             default true;
239         }
240         leaf txPower {
241             type int8;
242             description "Transmit power to be configured on the microwave link. Signed Byte is required. The actually operated transmit power might be lower depending on adaptive modulation and ATPC.";
243             units "dBm";
244             default 99;
245         }
246         leaf adaptiveModulationIsOn {
247             type boolean;
248             description "Adaptive Modulation. Activation of adaptive modulation shall be expressed as a 'true'.";
249             default false;
250         }
251         leaf modulationMin {
252             type int16;
253             description "Minimum modulation to be configured (in case adaptive modulation is not used, this value represents also the fixed modulation). The modulation scheme shall be described by the number of symbols (e.g. BPSK->'2' or 256QAM->'256'). Allowed values are defined in TypeDefinitions::transmissionModeType::modulationScheme.";
254             units "symbols";
255             default -1;
256         }
257         leaf modulationMax {
258             type int16;
259             description "Maximum modulation to be configured. The value of this field is only relevant, if Adaptive Modulation has been activated. The modulation scheme shall be described by the number of symbols (e.g. BPSK->'2' or 256QAM->'256'). Allowed values are defined in TypeDefinitions::transmissionModeType::modulationScheme.";
260             units "symbols";
261             default -1;
262         }
263         leaf xpicIsOn {
264             type boolean;
265             description "Activation of Cross Polarization Interference Cancelation shall be expressed as a 'true'. In case XPIC is not available for the current combination of channel bandwidth and modulation or the hardware in general, this parameter shall always be set to 'false'.";
266             default false;
267         }
268         leaf mimoIsOn {
269             type boolean;
270             description "Activation of Multiple Input Multiple Output (MIMO) shall be expressed as a 'true'.";
271             default false;
272         }
273         leaf alicIsOn {
274             type boolean;
275             description "Activation of Adjacent Link Interference Cancelation (ALIC) shall be expressed as a 'true'.";
276             default false;
277         }
278         leaf atpcIsOn {
279             type boolean;
280             description "ATPC. Activation of Automated Transmit Power Control shall be expressed as a 'true'.";
281             default false;
282         }
283         leaf atpcThreshUpper {
284             type int16;
285             description "If the receive level is higher than the upper threshold value, the transmitter is notified to decrease transmit power.";
286             units "dBm";
287             default 99;
288         }
289         leaf atpcThreshLower {
290             type int16;
291             description "If the receive level is lower than the lower threshold value, the transmitter is notified to increase transmit power.";
292             units "dBm";
293             default 99;
294         }
295         leaf autoFreqSelectIsOn {
296             type boolean;
297             description "Activation of automatically selecting the transmit frequency in unlicensed bands shall be expressed as a 'true'.";
298             default false;
299         }
300         leaf autoFreqSelectRange {
301             type int8;
302             description "Number of transmit channels (starting at the center frequency defined in txFrequency and with channel bandwidth according to txChannelBandwidth) that define the range within the transmit frequency can automatically been chosen. ";
303             units "channels";
304             default -1;
305         }
306         leaf modulationIsOn {
307             type boolean;
308             description "De-activation of the modulation of the carrier signal for fault management shall be expressed as a 'false'.
309                 Maintenance Feature";
310             default true;
311         }
312         leaf encryptionIsOn {
313             type boolean;
314             description "Activates encryption of the payload.";
315             default false;
316         }
317         leaf cryptographicKey {
318             type string;
319             description "Key for transforming plaintext into ciphertext data.";
320             default "Cryptographic key not yet defined.";
321         }
322         leaf loopBackIsOn {
323             type boolean;
324             description "If this attribute is set to 'true', the received IF signal is transmitted back to the remote end.
325                 Maintenance Feature";
326             default false;
327         }
328         leaf maintenanceTimer {
329             type int32;
330             description "Time of existence of any maintenance configuration (e.g. the loop back of microwave header information). Valid values are defined in AirInterface::AirInterfaceCapability::maintenanceTimerRange.";
331             units "s";
332             default -1;
333         }
334         list problemKindSeverityList {
335             description "Severity of the problem to be configured.";
336             key 'problemKindName';
337             config true;
338             ordered-by system;
339             uses MicrowaveModel-TypeDefinitions:airInterfaceProblemSeverityType;
340             min-elements 6;
341         }
342     }
343     grouping AirInterfaceStatus {
344         description "Measurements of current values on the air interface and operational status of the device.";
345         leaf txFrequencyCur {
346             type int32;
347             config false;
348             description "Center frequency of the currently operated transmit channel.";
349             units "kHz";
350             default -1;
351         }
352         leaf rxFrequencyCur {
353             type int32;
354             config false;
355             description "Center frequency of the currently operated receive channel.";
356             units "kHz";
357             default -1;
358         }
359         leaf txLevelCur {
360             type int8;
361             config false;
362             description "Current transmit level.";
363             units "dBm";
364             default 99;
365         }
366         leaf rxLevelCur {
367             type int8;
368             config false;
369             description "Current receive level.";
370             units "dBm";
371             default 99;
372         }
373         leaf modulationCur {
374             type int16;
375             config false;
376             description "Currently operated modulation on transmit path. The modulation scheme shall be described by the number of symbols (e.g. BPSK->'2' or 256QAM->'256'). Allowed values are defined in TypeDefinitions::transmissionModeType::modulationScheme.";
377             units "symbols";
378             default -1;
379         }
380         leaf informationRateCur {
381             type int8;
382             config false;
383             description "Information rate of the currently operated coding scheme.";
384             units "%";
385             default -1;
386         }
387         leaf snirCur {
388             type int8;
389             config false;
390             description "Currently measured signal to (noise+interference) ratio.";
391             units "dB";
392             default -99;
393         }
394         leaf xpdCur {
395             type int8;
396             config false;
397             description "Currently measured cross polarization discrimination.";
398             units "dB";
399             default -99;
400         }
401         leaf rfTempCur {
402             type int8;
403             config false;
404             description "Current temperature (in degree Celsius) of the radio module inside the outdoor unit.";
405             units "Celsius";
406             default -99;
407         }
408         leaf lastStatusChange {
409             type CoreModel-CoreFoundationModule-TypeDefinitions:DateAndTime;
410             config false;
411             description "Time the Air Interface entered its current operational status. 
412                 _format:yyyyMMddhhmmss.s[Z|{+|-}HHMm]; yyyy='0000'..'9999' year; MM='01'..'12' month; dd='01'..'31' day; hh='00'..'23' hour; mm='00'..'59' minute; ss='00'..'59' second; s='.0'..'.9'tenth of second (set to '.0' if EMS or NE cannot support this granularity); Z='Z' indicates UTC (rather than local time); {+|-}='+' or '-' delta from UTC; HH='00'..'23' time zone difference in hours; Mm='00'..'59' time zone difference in minutes.";
413             default "20101120140000.0Z+1";
414         }
415         leaf radioPowerIsUp {
416             type boolean;
417             config false;
418             description "If the radio unit has power and is switched on, this shall be expressed as a 'true'.";
419             default false;
420         }
421         leaf linkIsUp {
422             type boolean;
423             config false;
424             description "If connection is established to the remote site with the same linkID, this shall be expressed as a 'true'.";
425             default false;
426         }
427         leaf xpicIsUp {
428             type boolean;
429             config false;
430             description "If XPIC is currently actually working (not just configured), this shall be expressed as a 'true'.";
431             default false;
432         }
433         leaf mimoIsUp {
434             type boolean;
435             config false;
436             description "If MIMO is currently actually working (not just configured), this shall be expressed as a 'true'.";
437             default false;
438         }
439         leaf alicIsUp {
440             type boolean;
441             config false;
442             description "If Adjacent Link Interference Cancelation (ALIC) is currently actually working (not just configured), this shall be expressed as a 'true'.";
443             default false;
444         }
445         leaf atpcIsUp {
446             type boolean;
447             config false;
448             description "If ATPC is currently actually working (not just configured), this shall be expressed as a 'true'.";
449             default false;
450         }
451         leaf autoFreqSelectIsUp {
452             type boolean;
453             config false;
454             description "If automated frequency selection is currently actually working (not just configured), this shall be expressed as a 'true'.";
455             default false;
456         }
457         leaf loopBackIsUp {
458             type boolean;
459             config false;
460             description "If loop back of the air interface header is currently active (not just configured), this shall be expressed as a 'true'.";
461             default false;
462         }
463         leaf localEndPointId {
464             type string;
465             config false;
466             description "The value of the localEndPointId is a vendor specific identifier of the air interface, used by the node to discover a microwave radio link.";
467             default "not-supported";
468         }
469         leaf remoteEndPointId {
470             type string;
471             config false;
472             description "The value of the remoteEndPointId is a vendor specific identifier or the airinterface at the remote side, used to by the node to discover a microwave radio link.";
473             default "not-supported";
474         }
475     }
476     grouping AirInterfaceCurrentProblems {
477         list currentProblemList {
478             key 'sequenceNumber';
479             ordered-by system;
480             uses MicrowaveModel-TypeDefinitions:airInterfaceCurrentProblemType;
481         }
482     }
483     grouping AirInterfaceCurrentPerformance {
484         description "Aggregated performance information of the air interface at a particular moment.";
485         list currentPerformanceDataList {
486             description "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";
487             key 'scannerId';
488             ordered-by system;
489             uses MicrowaveModel-TypeDefinitions:airInterfaceCurrentPerformanceType;
490             max-elements 2;
491             min-elements 1;
492         }
493     }
494     grouping AirInterfaceHistoricalPerformances {
495         description "Aggregated performance information of the air interface for a pre-defined measurement interval.";
496         list historicalPerformanceDataList {
497             key 'historyDataId';
498             ordered-by system;
499             uses MicrowaveModel-TypeDefinitions:airInterfaceHistoricalPerformanceType;
500         }
501     }
502     list CoChannelGroup {
503         description "Required for configuring XPIC, MIMO and ALIC.";
504         key 'coChannelGroupId';
505         config true;
506         leaf coChannelGroupId {
507             type CoreModel-CoreFoundationModule-SuperClassesAndCommonPackages:UniversalId;
508         }
509         leaf-list airInterfaceList {
510             description "List of air interfaces, which are part of the co-channel (XPIC, MIMO, ALIC) group.";
511             ordered-by system;
512             type leafref {
513                 path '/CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/CoreModel-CoreNetworkModule-ObjectClasses:_ltpRefList/CoreModel-CoreNetworkModule-ObjectClasses:uuid';
514             }
515         }
516         leaf sortOfCoChannelGroup {
517             type string;
518             description "Type of group of air interfaces with the same transmit and receive frequency. The values shall be chosen from the following _list:'XPIC', 'MIMO', 'ALIC';";
519         }
520     }
521 }