migrate sdnr features to phosphorus
[ccsdk/features.git] / sdnr / wt / devicemanager-onap / onf14 / provider / src / test / resources / mac-interface-1-0.yang
1 module mac-interface-1-0 {\r
2   yang-version 1.1;\r
3   namespace "urn:onf:yang:mac-interface-1-0";\r
4   prefix mac-interface;\r
5 \r
6   import ietf-yang-types {\r
7     prefix yang;\r
8   }\r
9   import core-model-1-4 {\r
10     prefix core-model;\r
11   }\r
12 \r
13   organization\r
14     "openBackhaul.com proposal to Open Networking Foundation (ONF)";\r
15   contact\r
16     "WG Web : https://github.com/openBackhaul/Overview\r
17      WG List: MacInterface@openBackhaul.com\r
18      Editor : Thorsten Heinze\r
19      Email  : Thorsten.Heinze@openBackhaul.com";\r
20   description\r
21     "Technology specific interface definition for Ethernet MAC interfaces according to IEEE 802.1\r
22 \r
23      Copyright 2019 openBackhaul.com\r
24 \r
25      Licensed under the Apache License, Version 2.0 (the 'License');\r
26      you may not use this file except in compliance with the License.\r
27      You may obtain a copy of the License at\r
28      http://www.apache.org/licenses/LICENSE-2.0\r
29      Unless required by applicable law or agreed to in writing, software\r
30      distributed under the License is distributed on an 'AS IS' BASIS,\r
31      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
32      See the License for the specific language governing permissions and\r
33      limitations under the License.";\r
34 \r
35   revision 2020-01-23 {\r
36     description\r
37       "Model for the Transport SDN Pilot at Telefonica Germany.\r
38        Please view https://github.com/openBackhaul/macInterface/issues for changes.";\r
39     reference\r
40       "https://github.com/openBackhaul/macInterface/tree/tsp: Model definition\r
41        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
42   }\r
43   revision 2019-07-11 {\r
44     description\r
45       "Model for the Transport SDN Pilot at Telefonica Germany.\r
46        Please view https://github.com/openBackhaul/macInterface/issues for changes.";\r
47     reference\r
48       "https://github.com/openBackhaul/macInterface/tree/tsp: Model definition\r
49        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
50   }\r
51 \r
52   identity LAYER_PROTOCOL_NAME_TYPE_MAC_LAYER {\r
53     base core-model:LAYER_PROTOCOL_NAME_TYPE;\r
54     description\r
55       "none";\r
56   }\r
57 \r
58   augment "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol" {\r
59     when "derived-from-or-self(./core-model:layer-protocol-name, 'mac-interface:LAYER_PROTOCOL_NAME_TYPE_MAC_LAYER')";\r
60     uses mac-interface-lp-spec;\r
61     description\r
62       "none";\r
63   }\r
64 \r
65   /****************************************\r
66    * package notifications\r
67    **************************************/ \r
68 \r
69   notification object-creation-notification {\r
70     uses object-creation-notification;\r
71     description\r
72       "none";\r
73   }\r
74 \r
75   grouping object-creation-notification {\r
76     leaf counter {\r
77       type int64;\r
78       default "-1";\r
79       config false;\r
80       description\r
81         "Counts object creation notifications.";\r
82     }\r
83     leaf timestamp {\r
84       type yang:date-and-time;\r
85       default "2010-11-20T14:00:00+01:00";\r
86       config false;\r
87       description\r
88         "none";\r
89     }\r
90     leaf object-id-ref {\r
91       type leafref {\r
92         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
93         require-instance false;\r
94       }\r
95       config false;\r
96       description\r
97         "none";\r
98     }\r
99     leaf object-type {\r
100       type string;\r
101       default "Type of created object not specified.";\r
102       config false;\r
103       description\r
104         "none";\r
105     }\r
106     description\r
107       "none";\r
108   }\r
109 \r
110   notification object-deletion-notification {\r
111     uses object-deletion-notification;\r
112     description\r
113       "none";\r
114   }\r
115 \r
116   grouping object-deletion-notification {\r
117     leaf counter {\r
118       type int64;\r
119       default "-1";\r
120       config false;\r
121       description\r
122         "Counts object deletion notifications.";\r
123     }\r
124     leaf timestamp {\r
125       type yang:date-and-time;\r
126       default "2010-11-20T14:00:00+01:00";\r
127       config false;\r
128       description\r
129         "none";\r
130     }\r
131     leaf object-id-ref {\r
132       type leafref {\r
133         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
134         require-instance false;\r
135       }\r
136       config false;\r
137       description\r
138         "none";\r
139     }\r
140     description\r
141       "none";\r
142   }\r
143 \r
144   notification attribute-value-changed-notification {\r
145     uses attribute-value-changed-notification;\r
146     description\r
147       "none";\r
148   }\r
149 \r
150   grouping attribute-value-changed-notification {\r
151     leaf counter {\r
152       type int64;\r
153       default "-1";\r
154       config false;\r
155       description\r
156         "Counts attribute value changed notifications.";\r
157     }\r
158     leaf timestamp {\r
159       type yang:date-and-time;\r
160       default "2010-11-20T14:00:00+01:00";\r
161       config false;\r
162       description\r
163         "none";\r
164     }\r
165     leaf object-id-ref {\r
166       type leafref {\r
167         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
168         require-instance false;\r
169       }\r
170       config false;\r
171       description\r
172         "none";\r
173     }\r
174     leaf attribute-name {\r
175       type string;\r
176       default "Attribute name not specified.";\r
177       config false;\r
178       description\r
179         "Name of the attribute that has been changed.";\r
180     }\r
181     leaf new-value {\r
182       type string;\r
183       default "New value not specified.";\r
184       config false;\r
185       description\r
186         "Attribute value converted to a string (xml, json, ...)";\r
187     }\r
188     description\r
189       "none";\r
190   }\r
191 \r
192   notification problem-notification {\r
193     uses problem-notification;\r
194     description\r
195       "none";\r
196   }\r
197 \r
198   grouping problem-notification {\r
199     leaf counter {\r
200       type int64;\r
201       default "-1";\r
202       config false;\r
203       description\r
204         "Counts problem notifications";\r
205     }\r
206     leaf timestamp {\r
207       type yang:date-and-time;\r
208       default "2010-11-20T14:00:00+01:00";\r
209       config false;\r
210       description\r
211         "none";\r
212     }\r
213     leaf object-id-ref {\r
214       type leafref {\r
215         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
216         require-instance false;\r
217       }\r
218       config false;\r
219       description\r
220         "none";\r
221     }\r
222     leaf problem {\r
223       type string;\r
224       default "Problem name not specified.";\r
225       config false;\r
226       description\r
227         "Name of the problem according to supportedAlarmList";\r
228     }\r
229     leaf severity {\r
230       type severity-type;\r
231       default "SEVERITY_TYPE_WARNING";\r
232       config false;\r
233       description\r
234         "Severity of the problem according to problemKindSeverity";\r
235     }\r
236     description\r
237       "none";\r
238   }\r
239 \r
240   /****************************************\r
241    * grouping statements for object classes\r
242    **************************************/ \r
243   /****************************************\r
244    * package super-classes\r
245    **************************************/ \r
246 \r
247   grouping current-problem {\r
248     leaf sequence-number {\r
249       type int16;\r
250       config false;\r
251       description\r
252         "Unique sequence number of the current problem object.";\r
253     }\r
254     leaf timestamp {\r
255       type yang:date-and-time;\r
256       default "2010-11-20T14:00:00+01:00";\r
257       config false;\r
258       description\r
259         "Time when the alarm was raised.";\r
260     }\r
261     leaf problem-severity {\r
262       type severity-type;\r
263       default "SEVERITY_TYPE_NOT_YET_DEFINED";\r
264       config false;\r
265       description\r
266         "Severity of the alarm.";\r
267     }\r
268     description\r
269       "none";\r
270   }\r
271 \r
272   grouping current-performance {\r
273     leaf timestamp {\r
274       type yang:date-and-time;\r
275       default "2010-11-20T14:00:00+01:00";\r
276       config false;\r
277       description\r
278         "The timestamp associated with when the current data was collected.";\r
279     }\r
280     leaf suspect-interval-flag {\r
281       type boolean;\r
282       default "false";\r
283       config false;\r
284       description\r
285         "This attribute is used to indicate that the performance data for the current period may not be reliable. Some reasons for this to occur are:\r
286             â€“ Suspect data were detected by the actual resource doing data collection.\r
287             â€“ Transition of the administrativeState attribute to/from the 'lock' state.\r
288             â€“ Transition of the operationalState to/from the 'disabled' state.\r
289             â€“ Scheduler setting that inhibits the collection function.\r
290             â€“ The performance counters were reset during the interval.\r
291             â€“ The currentData (or subclass) object instance was created during the monitoring period.";\r
292     }\r
293     leaf elapsed-time {\r
294       type int64;\r
295       units "s";\r
296       default "-1";\r
297       config false;\r
298       description\r
299         "Number of seconds that elapsed since the last reset of the counter.";\r
300     }\r
301     leaf scanner-id {\r
302       type string;\r
303       default "Scanner ID not defined.";\r
304       config false;\r
305       description\r
306         "none";\r
307     }\r
308     leaf granularity-period {\r
309       type granularity-period-type;\r
310       config false;\r
311       description\r
312         "Time period between reset of the underlying counter.";\r
313     }\r
314     description\r
315       "none";\r
316   }\r
317 \r
318   grouping historical-performance {\r
319     leaf suspect-interval-flag {\r
320       type boolean;\r
321       default "false";\r
322       config false;\r
323       description\r
324         "This attribute indicates that the data collected during the interval is suspect.";\r
325     }\r
326     leaf history-data-id {\r
327       type string;\r
328       default "History Data ID not defined.";\r
329       config false;\r
330       description\r
331         "none";\r
332     }\r
333     leaf granularity-period {\r
334       type granularity-period-type;\r
335       config false;\r
336       description\r
337         "Time period between reset of the underlying counter.";\r
338     }\r
339     leaf period-end-time {\r
340       type yang:date-and-time;\r
341       config false;\r
342       description\r
343         "Time when the counter values have been recorded and the counter reset.";\r
344     }\r
345     description\r
346       "none";\r
347   }\r
348 \r
349   grouping mac-interface-lp-spec {\r
350     container mac-interface-pac {\r
351       uses mac-interface-pac;\r
352       description\r
353         "none";\r
354     }\r
355     description\r
356       "none";\r
357   }\r
358 \r
359   grouping mac-interface-pac {\r
360     container mac-interface-capability {\r
361       config false;\r
362       uses mac-interface-capability;\r
363       description\r
364         "none";\r
365     }\r
366     container mac-interface-configuration {\r
367       uses mac-interface-configuration;\r
368       description\r
369         "none";\r
370     }\r
371     container mac-interface-status {\r
372       config false;\r
373       uses mac-interface-status;\r
374       description\r
375         "none";\r
376     }\r
377     container mac-interface-current-problems {\r
378       config false;\r
379       uses mac-interface-current-problems;\r
380       description\r
381         "none";\r
382     }\r
383     container mac-interface-current-performance {\r
384       config false;\r
385       uses mac-interface-current-performance;\r
386       description\r
387         "none";\r
388     }\r
389     container mac-interface-historical-peformances {\r
390       config false;\r
391       uses mac-interface-historical-peformances;\r
392       description\r
393         "none";\r
394     }\r
395     description\r
396       "none";\r
397   }\r
398 \r
399   grouping mac-interface-capability {\r
400     leaf hardware-mac-address {\r
401       type string;\r
402       default "00:00:00:00:00:00";\r
403       config false;\r
404       description\r
405         "Hardware MAC address of the interface.";\r
406     }\r
407     leaf mac-address-configuration-is-avail {\r
408       type boolean;\r
409       default "false";\r
410       config false;\r
411       description\r
412         "1 = Device supports overwriting the hardware MAC address.";\r
413     }\r
414     leaf maximum-frame-size-min {\r
415       type int16;\r
416       units "s";\r
417       default "-1";\r
418       config false;\r
419       description\r
420         "Minimum configurable value of the maximum Ethernet frame size in Byte.";\r
421     }\r
422     leaf maximum-frame-size-max {\r
423       type int16;\r
424       units "s";\r
425       default "-1";\r
426       config false;\r
427       description\r
428         "Maximum configurable value of the maximum Ethernet frame size in Byte.";\r
429     }\r
430     leaf-list supported-frame-format-list {\r
431       type frame-format-type;\r
432       config false;\r
433       min-elements 1;\r
434       description\r
435         "List of supported Ethernet frame formats";\r
436     }\r
437     leaf-list supported-flow-control-mode-list {\r
438       type flow-control-mode-type;\r
439       config false;\r
440       min-elements 1;\r
441       max-elements 5;\r
442       description\r
443         "List of potential configurations of the Flow Control.";\r
444     }\r
445     leaf link-loss-forwarding-is-avail {\r
446       type boolean;\r
447       default "false";\r
448       config false;\r
449       description\r
450         "1 = Sending a Link Loss message in case of link failure is supported by the device.";\r
451     }\r
452     leaf broadcast-frame-suppression-is-avail {\r
453       type boolean;\r
454       default "false";\r
455       config false;\r
456       description\r
457         "1 = Interface is supporting limiting the maximum share of broadcast frames.";\r
458     }\r
459     leaf loop-port-shut-down-is-avail {\r
460       type boolean;\r
461       default "false";\r
462       config false;\r
463       description\r
464         "1 = Device is supporting automated shut down of ports, which are affected by an Ethernet loop.";\r
465     }\r
466     leaf loop-detection-is-avail {\r
467       type boolean;\r
468       default "false";\r
469       config false;\r
470       description\r
471         "1 = Device is supporting a feature for detecting Ethernet loops on this interface.";\r
472     }\r
473     leaf admin-shut-down-is-avail {\r
474       type boolean;\r
475       default "false";\r
476       config false;\r
477       description\r
478         "1 = Manual switching on and off of the interface without deleting it (underlying OSI network layers are also not affected) is available.";\r
479     }\r
480     leaf-list supported-loop-back-kind-list {\r
481       type loop-back-type;\r
482       config false;\r
483       min-elements 1;\r
484       max-elements 3;\r
485       description\r
486         "List of supported kinds of looping back.";\r
487     }\r
488     leaf maintenance-timer-range {\r
489       type string;\r
490       default "Range of the maintenance timer not yet defined.";\r
491       config false;\r
492       description\r
493         "Available time periods for maintenance configurations 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').";\r
494     }\r
495     leaf statistics-is-avail {\r
496       type boolean;\r
497       default "false";\r
498       config false;\r
499       description\r
500         "1 = Continuous statistics counters are available.";\r
501     }\r
502     leaf-list supported-alarm-list {\r
503       type string;\r
504       config false;\r
505       min-elements 2;\r
506       description\r
507         "Available alarms to be listed. Mandatory: 'MacInterfaceDown' and 'FrameSizeMissmatch'. Further alarms might be added by the device vendors.";\r
508     }\r
509     leaf performance-monitoring-is-avail {\r
510       type boolean;\r
511       default "false";\r
512       config false;\r
513       description\r
514         "1 = Collection and aggregation of performance values is available.";\r
515     }\r
516     description\r
517       "none";\r
518   }\r
519 \r
520   grouping mac-interface-configuration {\r
521     leaf interface-name {\r
522       type string;\r
523       default "Interface name not yet defined.";\r
524       description\r
525         "Description of the interface, could be a name, could be a number. Free text field to be filled by the operator.";\r
526     }\r
527     leaf interface-is-on {\r
528       type boolean;\r
529       default "false";\r
530       description\r
531         "Only relevant if (adminShutDownIsAvail==1). 1 = Activation of the interface. 0 = De-activation of the interface without deleting it (underlying OSI network layers are not affected).";\r
532     }\r
533     leaf mac-address-configuration-is-on {\r
534       type boolean;\r
535       default "false";\r
536       description\r
537         "Only relevant if (macAddressConfigurationIsAvail==1). 1 = Activates overwriting the hardware MAC address by MacInterfaceConfiguration::configuredMacAddress.";\r
538     }\r
539     leaf configured-mac-address {\r
540       type string;\r
541       default "00:00:00:00:00:00";\r
542       description\r
543         "Only relevant if (macAddressConfigurationIsAvail==1 AND macAddressConfigurationIsOn==1). Overwriting the hardware MAC address with the configured value.";\r
544     }\r
545     leaf maximum-frame-size {\r
546       type int16;\r
547       units "Byte";\r
548       default "-1";\r
549       description\r
550         "This value describes the maximum size of the Ethernet frame (in Byte) before sending.";\r
551     }\r
552     leaf fragmentation-allowed {\r
553       type fragmentation-type;\r
554       default "FRAGMENTATION_TYPE_NOT_YET_DEFINED";\r
555       description\r
556         "none";\r
557     }\r
558     leaf transmitted-frame-format {\r
559       type frame-format-type;\r
560       default "FRAME_FORMAT_TYPE_NOT_YET_DEFINED";\r
561       description\r
562         "Configuration of the format of the transmitted Ethernet frames.";\r
563     }\r
564     leaf flow-control-mode {\r
565       type flow-control-mode-type;\r
566       default "FLOW_CONTROL_MODE_TYPE_NOT_YET_DEFINED";\r
567       description\r
568         "Configures the mode of operation of Flow Control according to IEEE 802.3x on this interface.";\r
569     }\r
570     leaf link-loss-forwarding-is-on {\r
571       type boolean;\r
572       default "false";\r
573       description\r
574         "1 = Sending a Link Loss message in case of link failure is activated.";\r
575     }\r
576     leaf link-loss-forwarding-delay {\r
577       type int8;\r
578       units "100ms";\r
579       default "-1";\r
580       description\r
581         "Delay (in 100ms steps) between a detected link failure and sending of a Link Loss message. In case of 1+1 hot stand by protection of a microwave, make sure configured value is higher than 5 (500ms).";\r
582     }\r
583     leaf broadcast-frame-suppression-is-on {\r
584       type boolean;\r
585       default "false";\r
586       description\r
587         "1 = Limiting the share of broadcast frames is activated.";\r
588     }\r
589     leaf maximum-share-of-broadcast-frames {\r
590       type int8;\r
591       units "%";\r
592       default "-1";\r
593       description\r
594         "Threshold for Broadcast frames becoming discarded in %. Value range from 0 to 100.";\r
595     }\r
596     leaf loop-port-shut-down-is-on {\r
597       type boolean;\r
598       default "false";\r
599       description\r
600         "1 = Feature for automated shut down in case of an Ethernet loop is activated on this interface.";\r
601     }\r
602     leaf loop-detection-is-on {\r
603       type boolean;\r
604       default "false";\r
605       description\r
606         "Maintenance Feature. 1 = Checking for Ethernet loops on this interface is currently switched on.";\r
607     }\r
608     leaf loop-back-kind-on {\r
609       type loop-back-type;\r
610       default "LOOP_BACK_TYPE_NOT_YET_DEFINED";\r
611       description\r
612         "Maintenance Feature. Configuration of a loop back of Ethernet frames on this interface.";\r
613     }\r
614     leaf maintenance-timer {\r
615       type int32;\r
616       units "s";\r
617       default "-1";\r
618       description\r
619         "Time of existence of any maintenance configuration. 0 = maintenance timer is switched off. Valid values are defined in *Capability::maintenanceTimerRange.";\r
620     }\r
621     leaf statistics-is-on {\r
622       type boolean;\r
623       default "false";\r
624       description\r
625         "Only relevant if (statisticsIsAvail==1). 1 = Continuous statistics counters are switched on.";\r
626     }\r
627     list problem-kind-severity-list {\r
628       key "problem-kind-name";\r
629       min-elements 2;\r
630       uses problem-kind-severity-type;\r
631       description\r
632         "Severity of each entry of the SupportedAlarmList to be configured.";\r
633     }\r
634     leaf performance-monitoring-is-on {\r
635       type boolean;\r
636       default "false";\r
637       description\r
638         "Only relevant if (performanceMonitoringIsAvail==1). 1 = Collection and aggregation of performance values is switched on.";\r
639     }\r
640     description\r
641       "none";\r
642   }\r
643 \r
644   grouping mac-interface-status {\r
645     leaf interface-status {\r
646       type interface-status-type;\r
647       default "INTERFACE_STATUS_TYPE_NOT_YET_DEFINED";\r
648       config false;\r
649       description\r
650         "Operational status of the interface.";\r
651     }\r
652     leaf mac-address-cur {\r
653       type string;\r
654       default "00:00:00:00:00:00";\r
655       config false;\r
656       description\r
657         "If (macAddressConfigurationIsAvail==0), maxAddressCur = MacInterfaceCapability::hardwareMacAddress. If (macAddressConfigurationIsAvail==1 AND macAddressConfigurationIsOn==1), maxAddressCur = MacInterfaceConfiguration::configuredMacAddress.";\r
658     }\r
659     leaf received-ethernet-frame-format-cur {\r
660       type frame-format-type;\r
661       default "FRAME_FORMAT_TYPE_NOT_YET_DEFINED";\r
662       config false;\r
663       description\r
664         "Ethernet frame format of the currently received frames.";\r
665     }\r
666     leaf flow-control-mode-cur {\r
667       type flow-control-mode-type;\r
668       default "FLOW_CONTROL_MODE_TYPE_NOT_YET_DEFINED";\r
669       config false;\r
670       description\r
671         "Currently operative mode (none, send, receive, both) of operation of the Flow Control according to IEEE 802.3x on this interface.";\r
672     }\r
673     leaf loop-detection-result {\r
674       type loop-detection-result-type;\r
675       default "LOOP_DETECTION_RESULT_TYPE_NOT_YET_DEFINED";\r
676       config false;\r
677       description\r
678         "Result of the Ethernet loop detection feature.";\r
679     }\r
680     leaf loop-back-kind-up {\r
681       type loop-back-type;\r
682       default "LOOP_BACK_TYPE_NOT_YET_DEFINED";\r
683       config false;\r
684       description\r
685         "The currently active (not just configured) type of loop back.";\r
686     }\r
687     leaf statistics-is-up {\r
688       type boolean;\r
689       default "false";\r
690       config false;\r
691       description\r
692         "1 = Statistics are currently collected and aggregated.";\r
693     }\r
694     leaf performance-monitoring-is-up {\r
695       type boolean;\r
696       default "false";\r
697       config false;\r
698       description\r
699         "1 = Performance values are currently collected and aggregated.";\r
700     }\r
701     leaf timestamp {\r
702       type yang:date-and-time;\r
703       default "2010-11-20T14:00:00+01:00";\r
704       config false;\r
705       description\r
706         "The timestamp associated with when the statistic values were read/retrieved.";\r
707     }\r
708     leaf last-10-sec-frame-input-rate {\r
709       type int32;\r
710       units "frame/s";\r
711       default "-1";\r
712       config false;\r
713       description\r
714         "Frame receive rate at this MAC interface over the last 10 second interval.";\r
715     }\r
716     leaf last-10-sec-frame-output-rate {\r
717       type int32;\r
718       units "frame/s";\r
719       default "-1";\r
720       config false;\r
721       description\r
722         "Frame transmit rate at this MAC interface over the last 10 second interval.";\r
723     }\r
724     leaf total-frames-input {\r
725       type int64;\r
726       units "frame";\r
727       default "-1";\r
728       config false;\r
729       description\r
730         "The total number of Ethernet frames received at this MAC interface, including those received in error";\r
731     }\r
732     leaf total-frames-output {\r
733       type int64;\r
734       units "frame";\r
735       default "-1";\r
736       config false;\r
737       description\r
738         "The total number of Ethernet frames sent from this MAC interface.";\r
739     }\r
740     leaf forwarded-frames-input {\r
741       type int64;\r
742       units "frame";\r
743       default "-1";\r
744       config false;\r
745       description\r
746         "Number of input frames, for which the device was not their final destination and for which the device attempted to find a route to forward them to that final destination.";\r
747     }\r
748     leaf forwarded-frames-output {\r
749       type int64;\r
750       units "frame";\r
751       default "-1";\r
752       config false;\r
753       description\r
754         "Number of frames, for which the device was not their final destination and for which it was successful in finding a path to their final destination. ";\r
755     }\r
756     leaf unicast-frames-input {\r
757       type int64;\r
758       units "frame";\r
759       default "-1";\r
760       config false;\r
761       description\r
762         "Total number of received unicast frames.";\r
763     }\r
764     leaf unicast-frames-output {\r
765       type int64;\r
766       units "frame";\r
767       default "-1";\r
768       config false;\r
769       description\r
770         "Total number of sent unicast frames.";\r
771     }\r
772     leaf multicast-frames-input {\r
773       type int32;\r
774       units "frame";\r
775       default "-1";\r
776       config false;\r
777       description\r
778         "Total number of received multicast frames.";\r
779     }\r
780     leaf multicast-frames-output {\r
781       type int32;\r
782       units "frame";\r
783       default "-1";\r
784       config false;\r
785       description\r
786         "Total number of sent multicast frames.";\r
787     }\r
788     leaf broadcast-frames-input {\r
789       type int32;\r
790       units "frame";\r
791       default "-1";\r
792       config false;\r
793       description\r
794         "Total number of received broadcast frames.";\r
795     }\r
796     leaf broadcast-frames-output {\r
797       type int32;\r
798       units "frame";\r
799       default "-1";\r
800       config false;\r
801       description\r
802         "Total number of sent broadcast frames.";\r
803     }\r
804     leaf fragmented-frames-input {\r
805       type int32;\r
806       units "frame";\r
807       default "-1";\r
808       config false;\r
809       description\r
810         "Total number of received fragmented frames.";\r
811     }\r
812     leaf errored-frames-input {\r
813       type int32;\r
814       units "frame";\r
815       default "-1";\r
816       config false;\r
817       description\r
818         "Total number of received errored frames.";\r
819     }\r
820     leaf errored-frames-output {\r
821       type int32;\r
822       units "frame";\r
823       default "-1";\r
824       config false;\r
825       description\r
826         "Number of Ethernet frames, which were locally generated and discarded due to errors, including no route found to the destination.";\r
827     }\r
828     leaf dropped-frames-input {\r
829       type int32;\r
830       units "frame";\r
831       default "-1";\r
832       config false;\r
833       description\r
834         "Total number of Ethernet frames dropped at the receiver. The number of input Ethernet frames, for which no problems were encountered to prevent their continued processing, but were discarded (e.g., for lack of buffer space).";\r
835     }\r
836     leaf dropped-frames-output {\r
837       type int32;\r
838       units "frame";\r
839       default "-1";\r
840       config false;\r
841       description\r
842         "The number of output Ethernet frames, for which no problem was encountered to prevent their transmission to their destination, but were discarded (e.g., for lack of buffer space).";\r
843     }\r
844     description\r
845       "none";\r
846   }\r
847 \r
848   grouping mac-interface-current-problems {\r
849     list current-problem-list {\r
850       key "sequence-number";\r
851       config false;\r
852       uses mac-interface-current-problem-type;\r
853       description\r
854         "none";\r
855     }\r
856     leaf number-of-current-problems {\r
857       type int8;\r
858       default "-1";\r
859       config false;\r
860       description\r
861         "Number of alarms, which are currently active on this interface.";\r
862     }\r
863     leaf time-of-latest-change {\r
864       type yang:date-and-time;\r
865       default "2010-11-20T14:00:00+01:00";\r
866       config false;\r
867       description\r
868         "Date and time when the list of alarms has been changed for the last time.";\r
869     }\r
870     description\r
871       "none";\r
872   }\r
873 \r
874   grouping mac-interface-current-performance {\r
875     list current-performance-data-list {\r
876       key "granularity-period";\r
877       config false;\r
878       min-elements 1;\r
879       max-elements 2;\r
880       uses mac-interface-current-performance-type;\r
881       description\r
882         "none";\r
883     }\r
884     leaf number-of-current-performance-sets {\r
885       type int8;\r
886       default "-1";\r
887       config false;\r
888       description\r
889         "Number of sets of current performance values, which are provided in the list.";\r
890     }\r
891     description\r
892       "none";\r
893   }\r
894 \r
895   grouping mac-interface-historical-peformances {\r
896     list historical-performace-data-list {\r
897       key "granularity-period period-end-time";\r
898       config false;\r
899       uses mac-interface-historical-performance-type;\r
900       description\r
901         "none";\r
902     }\r
903     leaf number-of-historical-performance-sets {\r
904       type int16;\r
905       default "-1";\r
906       config false;\r
907       description\r
908         "Number of sets of historical performance values, which are provided in the list.";\r
909     }\r
910     leaf time-of-latest-change {\r
911       type yang:date-and-time;\r
912       default "2010-11-20T14:00:00+01:00";\r
913       config false;\r
914       description\r
915         "Date and time when the list of sets of historical performance values has been changed for the last time (e.g. new one added or existing one deleted).";\r
916     }\r
917     description\r
918       "none";\r
919   }\r
920 \r
921   /****************************************\r
922    * typedef statements\r
923    **************************************/ \r
924 \r
925   typedef loop-back-type {\r
926     type identityref {\r
927       base LOOP_BACK_TYPE;\r
928     }\r
929     description\r
930       "none";\r
931   }\r
932 \r
933   typedef fragmentation-type {\r
934     type identityref {\r
935       base FRAGMENTATION_TYPE;\r
936     }\r
937     description\r
938       "none";\r
939   }\r
940 \r
941   typedef frame-format-type {\r
942     type identityref {\r
943       base FRAME_FORMAT_TYPE;\r
944     }\r
945     description\r
946       "none";\r
947   }\r
948 \r
949   typedef flow-control-mode-type {\r
950     type identityref {\r
951       base FLOW_CONTROL_MODE_TYPE;\r
952     }\r
953     description\r
954       "none";\r
955   }\r
956 \r
957   typedef loop-detection-result-type {\r
958     type identityref {\r
959       base LOOP_DETECTION_RESULT_TYPE;\r
960     }\r
961     description\r
962       "none";\r
963   }\r
964 \r
965   /*********************************************\r
966    * grouping statements for complex data types\r
967    *******************************************/ \r
968 \r
969   identity LOOP_BACK_TYPE {\r
970     description\r
971       "none";\r
972   }\r
973 \r
974   identity LOOP_BACK_TYPE_NONE {\r
975     base LOOP_BACK_TYPE;\r
976     description\r
977       "none";\r
978   }\r
979 \r
980   identity LOOP_BACK_TYPE_BACK_TO_LOCAL {\r
981     base LOOP_BACK_TYPE;\r
982     description\r
983       "Returning Ethernet frames of the local site on the Ethernet MAC interface back to the local site.";\r
984   }\r
985 \r
986   identity LOOP_BACK_TYPE_BACK_TO_REMOTE {\r
987     base LOOP_BACK_TYPE;\r
988     description\r
989       "Returning Ethernet frames of the remote site on the Ethernet MAC interface back to the remote site.";\r
990   }\r
991 \r
992   identity LOOP_BACK_TYPE_NOT_YET_DEFINED {\r
993     base LOOP_BACK_TYPE;\r
994     description\r
995       "none";\r
996   }\r
997 \r
998   identity FRAGMENTATION_TYPE {\r
999     description\r
1000       "none";\r
1001   }\r
1002 \r
1003   identity FRAGMENTATION_TYPE_DISABLE {\r
1004     base FRAGMENTATION_TYPE;\r
1005     description\r
1006       "none";\r
1007   }\r
1008 \r
1009   identity FRAGMENTATION_TYPE_ENABLE_256_BYTE {\r
1010     base FRAGMENTATION_TYPE;\r
1011     description\r
1012       "none";\r
1013   }\r
1014 \r
1015   identity FRAGMENTATION_TYPE_ENABLE_512_BYTE {\r
1016     base FRAGMENTATION_TYPE;\r
1017     description\r
1018       "none";\r
1019   }\r
1020 \r
1021   identity FRAGMENTATION_TYPE_NOT_YET_DEFINED {\r
1022     base FRAGMENTATION_TYPE;\r
1023     description\r
1024       "none";\r
1025   }\r
1026 \r
1027   identity FRAME_FORMAT_TYPE {\r
1028     description\r
1029       "none";\r
1030   }\r
1031 \r
1032   identity FRAME_FORMAT_TYPE_ETHERNET_2 {\r
1033     base FRAME_FORMAT_TYPE;\r
1034     description\r
1035       "none";\r
1036   }\r
1037 \r
1038   identity FRAME_FORMAT_TYPE_802.2_SNAP {\r
1039     base FRAME_FORMAT_TYPE;\r
1040     description\r
1041       "none";\r
1042   }\r
1043 \r
1044   identity FRAME_FORMAT_TYPE_802.2_LLC {\r
1045     base FRAME_FORMAT_TYPE;\r
1046     description\r
1047       "none";\r
1048   }\r
1049 \r
1050   identity FRAME_FORMAT_TYPE_802.3 {\r
1051     base FRAME_FORMAT_TYPE;\r
1052     description\r
1053       "none";\r
1054   }\r
1055 \r
1056   identity FRAME_FORMAT_TYPE_NOT_YET_DEFINED {\r
1057     base FRAME_FORMAT_TYPE;\r
1058     description\r
1059       "none";\r
1060   }\r
1061 \r
1062   identity FLOW_CONTROL_MODE_TYPE {\r
1063     description\r
1064       "none";\r
1065   }\r
1066 \r
1067   identity FLOW_CONTROL_MODE_TYPE_NONE {\r
1068     base FLOW_CONTROL_MODE_TYPE;\r
1069     description\r
1070       "Flow Control is switched off.";\r
1071   }\r
1072 \r
1073   identity FLOW_CONTROL_MODE_TYPE_SEND_ONLY {\r
1074     base FLOW_CONTROL_MODE_TYPE;\r
1075     description\r
1076       "Only sending of pause frames according to IEEE 802.3x (Ethernet Flow Control).";\r
1077   }\r
1078 \r
1079   identity FLOW_CONTROL_MODE_TYPE_RECEIVE_ONLY {\r
1080     base FLOW_CONTROL_MODE_TYPE;\r
1081     description\r
1082       "Only listening for incoming pause frames according to IEEE 802.3x (Ethernet Flow Control).";\r
1083   }\r
1084 \r
1085   identity FLOW_CONTROL_MODE_TYPE_SEND_AND_RECEIVE {\r
1086     base FLOW_CONTROL_MODE_TYPE;\r
1087     description\r
1088       "Sending and listening for pause frames according to IEEE 802.3x (Ethernet Flow Control).";\r
1089   }\r
1090 \r
1091   identity FLOW_CONTROL_MODE_TYPE_AUTO_NEGOTIATION {\r
1092     base FLOW_CONTROL_MODE_TYPE;\r
1093     description\r
1094       "none";\r
1095   }\r
1096 \r
1097   identity FLOW_CONTROL_MODE_TYPE_NOT_YET_DEFINED {\r
1098     base FLOW_CONTROL_MODE_TYPE;\r
1099     description\r
1100       "none";\r
1101   }\r
1102 \r
1103   identity LOOP_DETECTION_RESULT_TYPE {\r
1104     description\r
1105       "none";\r
1106   }\r
1107 \r
1108   identity LOOP_DETECTION_RESULT_TYPE_LOOP_DETECTED {\r
1109     base LOOP_DETECTION_RESULT_TYPE;\r
1110     description\r
1111       "none";\r
1112   }\r
1113 \r
1114   identity LOOP_DETECTION_RESULT_TYPE_NO_LOOP_DETECTED {\r
1115     base LOOP_DETECTION_RESULT_TYPE;\r
1116     description\r
1117       "none";\r
1118   }\r
1119 \r
1120   identity LOOP_DETECTION_RESULT_TYPE_DETECTION_SWITCHED_OFF {\r
1121     base LOOP_DETECTION_RESULT_TYPE;\r
1122     description\r
1123       "none";\r
1124   }\r
1125 \r
1126   identity LOOP_DETECTION_RESULT_TYPE_NOT_YET_DEFINED {\r
1127     base LOOP_DETECTION_RESULT_TYPE;\r
1128     description\r
1129       "none";\r
1130   }\r
1131 \r
1132   identity GRANULARITY_PERIOD_TYPE {\r
1133     description\r
1134       "none";\r
1135   }\r
1136 \r
1137   identity GRANULARITY_PERIOD_TYPE_UNKNOWN {\r
1138     base GRANULARITY_PERIOD_TYPE;\r
1139     description\r
1140       "none";\r
1141   }\r
1142 \r
1143   identity GRANULARITY_PERIOD_TYPE_PERIOD-15-MIN {\r
1144     base GRANULARITY_PERIOD_TYPE;\r
1145     description\r
1146       "none";\r
1147   }\r
1148 \r
1149   identity GRANULARITY_PERIOD_TYPE_PERIOD-24-HOURS {\r
1150     base GRANULARITY_PERIOD_TYPE;\r
1151     description\r
1152       "none";\r
1153   }\r
1154 \r
1155   identity GRANULARITY_PERIOD_TYPE_NOT_YET_DEFINED {\r
1156     base GRANULARITY_PERIOD_TYPE;\r
1157     description\r
1158       "none";\r
1159   }\r
1160 \r
1161   identity SEVERITY_TYPE {\r
1162     description\r
1163       "none";\r
1164   }\r
1165 \r
1166   identity SEVERITY_TYPE_NON-ALARMED {\r
1167     base SEVERITY_TYPE;\r
1168     description\r
1169       "none";\r
1170   }\r
1171 \r
1172   identity SEVERITY_TYPE_WARNING {\r
1173     base SEVERITY_TYPE;\r
1174     description\r
1175       "none";\r
1176   }\r
1177 \r
1178   identity SEVERITY_TYPE_MAJOR {\r
1179     base SEVERITY_TYPE;\r
1180     description\r
1181       "none";\r
1182   }\r
1183 \r
1184   identity SEVERITY_TYPE_MINOR {\r
1185     base SEVERITY_TYPE;\r
1186     description\r
1187       "none";\r
1188   }\r
1189 \r
1190   identity SEVERITY_TYPE_CRITICAL {\r
1191     base SEVERITY_TYPE;\r
1192     description\r
1193       "none";\r
1194   }\r
1195 \r
1196   identity SEVERITY_TYPE_NOT_YET_DEFINED {\r
1197     base SEVERITY_TYPE;\r
1198     description\r
1199       "none";\r
1200   }\r
1201 \r
1202   identity INTERFACE_STATUS_TYPE {\r
1203     description\r
1204       "none";\r
1205   }\r
1206 \r
1207   identity INTERFACE_STATUS_TYPE_UP {\r
1208     base INTERFACE_STATUS_TYPE;\r
1209     description\r
1210       "Ready to pass packets.";\r
1211   }\r
1212 \r
1213   identity INTERFACE_STATUS_TYPE_DOWN {\r
1214     base INTERFACE_STATUS_TYPE;\r
1215     description\r
1216       "The interface does not pass any packets.";\r
1217   }\r
1218 \r
1219   identity INTERFACE_STATUS_TYPE_SHUT_DUE_LOOP {\r
1220     base INTERFACE_STATUS_TYPE;\r
1221     description\r
1222       "Only relevant if (loopPortShutDownIsAvail==1) AND (loopPortShutDownIsOn==1). 1 = port has been automatically shut down, because an Ethernet loop has been detected on this interface.";\r
1223   }\r
1224 \r
1225   identity INTERFACE_STATUS_TYPE_TESTING {\r
1226     base INTERFACE_STATUS_TYPE;\r
1227     description\r
1228       "In some test mode.  No operational packets can be passed.";\r
1229   }\r
1230 \r
1231   identity INTERFACE_STATUS_TYPE_UNKNOWN {\r
1232     base INTERFACE_STATUS_TYPE;\r
1233     description\r
1234       "Status cannot be determined for some reason.";\r
1235   }\r
1236 \r
1237   identity INTERFACE_STATUS_TYPE_DORMANT {\r
1238     base INTERFACE_STATUS_TYPE;\r
1239     description\r
1240       "Waiting for some external event.";\r
1241   }\r
1242 \r
1243   identity INTERFACE_STATUS_TYPE_NOT_PRESENT {\r
1244     base INTERFACE_STATUS_TYPE;\r
1245     description\r
1246       "Some component (typically hardware) is missing.";\r
1247   }\r
1248 \r
1249   identity INTERFACE_STATUS_TYPE_LOWER_LAYER_DOWN {\r
1250     base INTERFACE_STATUS_TYPE;\r
1251     description\r
1252       "Down due to state of lower-layer interface(s).";\r
1253   }\r
1254 \r
1255   identity INTERFACE_STATUS_TYPE_ADMIN_DOWN {\r
1256     base INTERFACE_STATUS_TYPE;\r
1257     description\r
1258       "Down due to configuration.";\r
1259   }\r
1260 \r
1261   identity INTERFACE_STATUS_TYPE_NOT_YET_DEFINED {\r
1262     base INTERFACE_STATUS_TYPE;\r
1263     description\r
1264       "none";\r
1265   }\r
1266 \r
1267   /****************************************\r
1268    * package super-types\r
1269    **************************************/ \r
1270 \r
1271   typedef granularity-period-type {\r
1272     type identityref {\r
1273       base GRANULARITY_PERIOD_TYPE;\r
1274     }\r
1275     description\r
1276       "The enumeration with the options for granularity period of the performance data.";\r
1277   }\r
1278 \r
1279   typedef severity-type {\r
1280     type identityref {\r
1281       base SEVERITY_TYPE;\r
1282     }\r
1283     description\r
1284       "none";\r
1285   }\r
1286 \r
1287   typedef interface-status-type {\r
1288     type identityref {\r
1289       base INTERFACE_STATUS_TYPE;\r
1290     }\r
1291     description\r
1292       "Current Interface Status";\r
1293   }\r
1294 \r
1295   grouping problem-kind-severity-type {\r
1296     leaf problem-kind-name {\r
1297       type string;\r
1298       description\r
1299         "Name of the alarm according to SupportedAlarmList";\r
1300     }\r
1301     leaf problem-kind-severity {\r
1302       type severity-type;\r
1303       default "SEVERITY_TYPE_NOT_YET_DEFINED";\r
1304       description\r
1305         "Severity of this type of alarm.";\r
1306     }\r
1307     description\r
1308       "none";\r
1309   }\r
1310 \r
1311   grouping mac-interface-current-problem-type {\r
1312     leaf problem-name {\r
1313       type string;\r
1314       default "NOT_YET_DEFINED";\r
1315       description\r
1316         "Name of the alarm according to SupportedAlarmList";\r
1317     }\r
1318     uses current-problem;\r
1319     description\r
1320       "none";\r
1321   }\r
1322 \r
1323   grouping mac-interface-performance-type {\r
1324     leaf mac-control-frames-ingress {\r
1325       type int32;\r
1326       units "frame";\r
1327       default "-1";\r
1328       config false;\r
1329       description\r
1330         "MAC layer control frames received on the interface.";\r
1331     }\r
1332     leaf mac-pause-frames-ingress {\r
1333       type int32;\r
1334       units "frame";\r
1335       default "-1";\r
1336       config false;\r
1337       description\r
1338         "MAC layer Pause frames received on the interface.";\r
1339     }\r
1340     leaf oversized-frames-ingress {\r
1341       type int32;\r
1342       units "frame";\r
1343       default "-1";\r
1344       config false;\r
1345       description\r
1346         "The total number of frames received that were longer than 1518 octets (excluding framing bits, but including FCS octets) and were otherwise well formed.";\r
1347     }\r
1348     leaf undersized-frames-ingress {\r
1349       type int32;\r
1350       units "frame";\r
1351       default "-1";\r
1352       config false;\r
1353       description\r
1354         "The total number of frames received that were less than 64 octets long (excluding framing bits, but including FCS octets) and were otherwise well formed.";\r
1355     }\r
1356     leaf jabber-frames-ingres {\r
1357       type int32;\r
1358       units "frame";\r
1359       default "-1";\r
1360       config false;\r
1361       description\r
1362         "Number of jabber frames received on the interface.  Jabber frames are typically defined as oversize frames which also have a bad CRC.  Implementations may use slightly different definitions of what constitutes a jabber frame.  Often indicative of a NIC hardware problem.";\r
1363     }\r
1364     leaf fragmented-frames-ingress {\r
1365       type int64;\r
1366       units "frame";\r
1367       default "-1";\r
1368       config false;\r
1369       description\r
1370         "The total number of frames received that were less than 64 octets in length (excluding framing bits but including FCS octets) and had either a bad Frame Check Sequence (FCS) with an integral number of octets (FCS Error) or a bad FCS with a non-integral number of octets (Alignment Error).";\r
1371     }\r
1372     leaf tagged-frames-ingress {\r
1373       type int64;\r
1374       units "frame";\r
1375       default "-1";\r
1376       config false;\r
1377       description\r
1378         "Number of 802.1q tagged frames received on the interface.";\r
1379     }\r
1380     leaf mac-control-frames-egress {\r
1381       type int32;\r
1382       units "frame";\r
1383       default "-1";\r
1384       config false;\r
1385       description\r
1386         "MAC layer control frames sent on the interface.";\r
1387     }\r
1388     leaf mac-pause-frames-egress {\r
1389       type int32;\r
1390       units "frame";\r
1391       default "-1";\r
1392       config false;\r
1393       description\r
1394         "MAC layer Pause frames sent on the interface.";\r
1395     }\r
1396     leaf tagged-frames-egress {\r
1397       type int64;\r
1398       units "frame";\r
1399       default "-1";\r
1400       config false;\r
1401       description\r
1402         "Number of 802.1q tagged frames sent on the interface.";\r
1403     }\r
1404     leaf frames-of-64-byte {\r
1405       type int64;\r
1406       units "frame";\r
1407       default "-1";\r
1408       config false;\r
1409       description\r
1410         "Number of packets (including bad packets) received that were 64 bytes in length (excluding framing bits but including FCS bytes).";\r
1411     }\r
1412     leaf frames-of-65-to-127-byte {\r
1413       type int64;\r
1414       units "frame";\r
1415       default "-1";\r
1416       config false;\r
1417       description\r
1418         "Number of good and bad packets received that were between 65 and 127 bytes in length (excluding framing bits but including FCS bytes).";\r
1419     }\r
1420     leaf frames-of-128-to-255-byte {\r
1421       type int64;\r
1422       units "frame";\r
1423       default "-1";\r
1424       config false;\r
1425       description\r
1426         "Number of good and bad packets received that were between 128 and 255 bytes in length inclusive (excluding framing bits but including FCS bytes).";\r
1427     }\r
1428     leaf frames-of-256-to-511-byte {\r
1429       type int64;\r
1430       units "frame";\r
1431       default "-1";\r
1432       config false;\r
1433       description\r
1434         "Number of good and bad packets received that were between 256 and 511 bytes in length inclusive (excluding framing bits but including FCS bytes).";\r
1435     }\r
1436     leaf frames-of-512-to-1023-byte {\r
1437       type int64;\r
1438       units "frame";\r
1439       default "-1";\r
1440       config false;\r
1441       description\r
1442         "Number of good and bad packets received that were between 512 and 1023 bytes in length inclusive (excluding framing bits but including FCS bytes).";\r
1443     }\r
1444     leaf frames-of-1024-to-1518-byte {\r
1445       type int64;\r
1446       units "frame";\r
1447       default "-1";\r
1448       config false;\r
1449       description\r
1450         "Number of good and bad packets received that were between 1024 and 1518 bytes in length inclusive (excluding framing bits but including FCS bytes).";\r
1451     }\r
1452     description\r
1453       "none";\r
1454   }\r
1455 \r
1456   grouping mac-interface-current-performance-type {\r
1457     container performance-data {\r
1458       config false;\r
1459       uses mac-interface-performance-type;\r
1460       description\r
1461         "none";\r
1462     }\r
1463     uses current-performance;\r
1464     description\r
1465       "none";\r
1466   }\r
1467 \r
1468   grouping mac-interface-historical-performance-type {\r
1469     container performance-data {\r
1470       config false;\r
1471       uses mac-interface-performance-type;\r
1472       description\r
1473         "none";\r
1474     }\r
1475     uses historical-performance;\r
1476     description\r
1477       "none";\r
1478   }\r
1479 }\r