New committer in OAM project - scp/oam/modeling repo
[scp/oam/modeling.git] / data-model / draft / ietf-interfaces@2018-02-20.yang
1 module ietf-interfaces {
2   yang-version 1.1;
3   namespace "urn:ietf:params:xml:ns:yang:ietf-interfaces";
4   prefix if;
5
6   import ietf-yang-types {
7     prefix yang;
8   }
9
10   organization
11     "IETF NETMOD (Network Modeling) Working Group";
12
13   contact
14     "WG Web:   <https://datatracker.ietf.org/wg/netmod/>
15      WG List:  <mailto:netmod@ietf.org>
16
17      Editor:   Martin Bjorklund
18                <mailto:mbj@tail-f.com>";
19
20   description
21     "This module contains a collection of YANG definitions for
22      managing network interfaces.
23
24      Copyright (c) 2018 IETF Trust and the persons identified as
25      authors of the code.  All rights reserved.
26
27      Redistribution and use in source and binary forms, with or
28      without modification, is permitted pursuant to, and subject
29      to the license terms contained in, the Simplified BSD License
30      set forth in Section 4.c of the IETF Trust's Legal Provisions
31      Relating to IETF Documents
32      (https://trustee.ietf.org/license-info).
33
34      This version of this YANG module is part of RFC 8343; see
35      the RFC itself for full legal notices.";
36
37   revision 2018-02-20 {
38     description
39       "Updated to support NMDA.";
40     reference
41       "RFC 8343: A YANG Data Model for Interface Management";
42   }
43
44   revision 2014-05-08 {
45     description
46       "Initial revision.";
47     reference
48       "RFC 7223: A YANG Data Model for Interface Management";
49   }
50
51   /*
52    * Typedefs
53    */
54
55   typedef interface-ref {
56     type leafref {
57       path "/if:interfaces/if:interface/if:name";
58     }
59     description
60       "This type is used by data models that need to reference
61        interfaces.";
62   }
63
64   /*
65    * Identities
66    */
67
68   identity interface-type {
69     description
70       "Base identity from which specific interface types are
71        derived.";
72   }
73
74   /*
75    * Features
76    */
77
78   feature arbitrary-names {
79     description
80       "This feature indicates that the device allows user-controlled
81        interfaces to be named arbitrarily.";
82   }
83   feature pre-provisioning {
84     description
85       "This feature indicates that the device supports
86        pre-provisioning of interface configuration, i.e., it is
87        possible to configure an interface whose physical interface
88        hardware is not present on the device.";
89   }
90   feature if-mib {
91     description
92       "This feature indicates that the device implements
93        the IF-MIB.";
94     reference
95       "RFC 2863: The Interfaces Group MIB";
96   }
97
98   /*
99    * Data nodes
100    */
101
102   container interfaces {
103     description
104       "Interface parameters.";
105
106     list interface {
107       key "name";
108
109       description
110         "The list of interfaces on the device.
111
112          The status of an interface is available in this list in the
113          operational state.  If the configuration of a
114          system-controlled interface cannot be used by the system
115          (e.g., the interface hardware present does not match the
116          interface type), then the configuration is not applied to
117          the system-controlled interface shown in the operational
118          state.  If the configuration of a user-controlled interface
119          cannot be used by the system, the configured interface is
120          not instantiated in the operational state.
121
122          System-controlled interfaces created by the system are
123          always present in this list in the operational state,
124          whether or not they are configured.";
125
126      leaf name {
127         type string;
128         description
129           "The name of the interface.
130
131            A device MAY restrict the allowed values for this leaf,
132            possibly depending on the type of the interface.
133            For system-controlled interfaces, this leaf is the
134            device-specific name of the interface.
135
136            If a client tries to create configuration for a
137            system-controlled interface that is not present in the
138            operational state, the server MAY reject the request if
139            the implementation does not support pre-provisioning of
140            interfaces or if the name refers to an interface that can
141            never exist in the system.  A Network Configuration
142            Protocol (NETCONF) server MUST reply with an rpc-error
143            with the error-tag 'invalid-value' in this case.
144
145            If the device supports pre-provisioning of interface
146            configuration, the 'pre-provisioning' feature is
147            advertised.
148
149            If the device allows arbitrarily named user-controlled
150            interfaces, the 'arbitrary-names' feature is advertised.
151
152            When a configured user-controlled interface is created by
153            the system, it is instantiated with the same name in the
154            operational state.
155
156            A server implementation MAY map this leaf to the ifName
157            MIB object.  Such an implementation needs to use some
158            mechanism to handle the differences in size and characters
159            allowed between this leaf and ifName.  The definition of
160            such a mechanism is outside the scope of this document.";
161         reference
162           "RFC 2863: The Interfaces Group MIB - ifName";
163       }
164
165       leaf description {
166         type string;
167         description
168           "A textual description of the interface.
169
170            A server implementation MAY map this leaf to the ifAlias
171            MIB object.  Such an implementation needs to use some
172            mechanism to handle the differences in size and characters
173            allowed between this leaf and ifAlias.  The definition of
174            such a mechanism is outside the scope of this document.
175
176            Since ifAlias is defined to be stored in non-volatile
177            storage, the MIB implementation MUST map ifAlias to the
178            value of 'description' in the persistently stored
179            configuration.";
180         reference
181           "RFC 2863: The Interfaces Group MIB - ifAlias";
182       }
183
184       leaf type {
185         type identityref {
186           base interface-type;
187         }
188         mandatory true;
189         description
190           "The type of the interface.
191
192            When an interface entry is created, a server MAY
193            initialize the type leaf with a valid value, e.g., if it
194            is possible to derive the type from the name of the
195            interface.
196
197            If a client tries to set the type of an interface to a
198            value that can never be used by the system, e.g., if the
199            type is not supported or if the type does not match the
200            name of the interface, the server MUST reject the request.
201            A NETCONF server MUST reply with an rpc-error with the
202            error-tag 'invalid-value' in this case.";
203         reference
204           "RFC 2863: The Interfaces Group MIB - ifType";
205       }
206
207       leaf enabled {
208         type boolean;
209         default "true";
210         description
211           "This leaf contains the configured, desired state of the
212            interface.
213
214            Systems that implement the IF-MIB use the value of this
215            leaf in the intended configuration to set
216            IF-MIB.ifAdminStatus to 'up' or 'down' after an ifEntry
217            has been initialized, as described in RFC 2863.
218
219            Changes in this leaf in the intended configuration are
220            reflected in ifAdminStatus.";
221         reference
222           "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
223       }
224
225       leaf link-up-down-trap-enable {
226         if-feature if-mib;
227         type enumeration {
228           enum enabled {
229             value 1;
230             description
231               "The device will generate linkUp/linkDown SNMP
232                notifications for this interface.";
233           }
234           enum disabled {
235             value 2;
236             description
237               "The device will not generate linkUp/linkDown SNMP
238                notifications for this interface.";
239           }
240         }
241         description
242           "Controls whether linkUp/linkDown SNMP notifications
243            should be generated for this interface.
244
245            If this node is not configured, the value 'enabled' is
246            operationally used by the server for interfaces that do
247            not operate on top of any other interface (i.e., there are
248            no 'lower-layer-if' entries), and 'disabled' otherwise.";
249         reference
250           "RFC 2863: The Interfaces Group MIB -
251                      ifLinkUpDownTrapEnable";
252       }
253
254       leaf admin-status {
255         if-feature if-mib;
256         type enumeration {
257           enum up {
258             value 1;
259             description
260               "Ready to pass packets.";
261           }
262           enum down {
263             value 2;
264             description
265               "Not ready to pass packets and not in some test mode.";
266           }
267           enum testing {
268             value 3;
269             description
270               "In some test mode.";
271           }
272         }
273         config false;
274         mandatory true;
275         description
276           "The desired state of the interface.
277
278            This leaf has the same read semantics as ifAdminStatus.";
279         reference
280           "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
281       }
282
283       leaf oper-status {
284         type enumeration {
285           enum up {
286             value 1;
287             description
288               "Ready to pass packets.";
289           }
290           enum down {
291             value 2;
292
293             description
294               "The interface does not pass any packets.";
295           }
296           enum testing {
297             value 3;
298             description
299               "In some test mode.  No operational packets can
300                be passed.";
301           }
302           enum unknown {
303             value 4;
304             description
305               "Status cannot be determined for some reason.";
306           }
307           enum dormant {
308             value 5;
309             description
310               "Waiting for some external event.";
311           }
312           enum not-present {
313             value 6;
314             description
315               "Some component (typically hardware) is missing.";
316           }
317           enum lower-layer-down {
318             value 7;
319             description
320               "Down due to state of lower-layer interface(s).";
321           }
322         }
323         config false;
324         mandatory true;
325         description
326           "The current operational state of the interface.
327
328            This leaf has the same semantics as ifOperStatus.";
329         reference
330           "RFC 2863: The Interfaces Group MIB - ifOperStatus";
331       }
332
333       leaf last-change {
334         type yang:date-and-time;
335         config false;
336         description
337           "The time the interface entered its current operational
338            state.  If the current state was entered prior to the
339            last re-initialization of the local network management
340            subsystem, then this node is not present.";
341         reference
342           "RFC 2863: The Interfaces Group MIB - ifLastChange";
343       }
344
345       leaf if-index {
346         if-feature if-mib;
347         type int32 {
348           range "1..2147483647";
349         }
350         config false;
351         mandatory true;
352         description
353           "The ifIndex value for the ifEntry represented by this
354            interface.";
355         reference
356           "RFC 2863: The Interfaces Group MIB - ifIndex";
357       }
358
359       leaf phys-address {
360         type yang:phys-address;
361         config false;
362         description
363           "The interface's address at its protocol sub-layer.  For
364            example, for an 802.x interface, this object normally
365            contains a Media Access Control (MAC) address.  The
366            interface's media-specific modules must define the bit
367            and byte ordering and the format of the value of this
368            object.  For interfaces that do not have such an address
369            (e.g., a serial line), this node is not present.";
370         reference
371           "RFC 2863: The Interfaces Group MIB - ifPhysAddress";
372       }
373
374       leaf-list higher-layer-if {
375         type interface-ref;
376         config false;
377         description
378           "A list of references to interfaces layered on top of this
379            interface.";
380         reference
381           "RFC 2863: The Interfaces Group MIB - ifStackTable";
382       }
383
384       leaf-list lower-layer-if {
385         type interface-ref;
386         config false;
387
388         description
389           "A list of references to interfaces layered underneath this
390            interface.";
391         reference
392           "RFC 2863: The Interfaces Group MIB - ifStackTable";
393       }
394
395       leaf speed {
396         type yang:gauge64;
397         units "bits/second";
398         config false;
399         description
400             "An estimate of the interface's current bandwidth in bits
401              per second.  For interfaces that do not vary in
402              bandwidth or for those where no accurate estimation can
403              be made, this node should contain the nominal bandwidth.
404              For interfaces that have no concept of bandwidth, this
405              node is not present.";
406         reference
407           "RFC 2863: The Interfaces Group MIB -
408                      ifSpeed, ifHighSpeed";
409       }
410
411       container statistics {
412         config false;
413         description
414           "A collection of interface-related statistics objects.";
415
416         leaf discontinuity-time {
417           type yang:date-and-time;
418           mandatory true;
419           description
420             "The time on the most recent occasion at which any one or
421              more of this interface's counters suffered a
422              discontinuity.  If no such discontinuities have occurred
423              since the last re-initialization of the local management
424              subsystem, then this node contains the time the local
425              management subsystem re-initialized itself.";
426         }
427
428         leaf in-octets {
429           type yang:counter64;
430           description
431             "The total number of octets received on the interface,
432              including framing characters.
433
434              Discontinuities in the value of this counter can occur
435              at re-initialization of the management system and at
436              other times as indicated by the value of
437              'discontinuity-time'.";
438           reference
439             "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
440         }
441
442         leaf in-unicast-pkts {
443           type yang:counter64;
444           description
445             "The number of packets, delivered by this sub-layer to a
446              higher (sub-)layer, that were not addressed to a
447              multicast or broadcast address at this sub-layer.
448
449              Discontinuities in the value of this counter can occur
450              at re-initialization of the management system and at
451              other times as indicated by the value of
452              'discontinuity-time'.";
453           reference
454             "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
455         }
456
457         leaf in-broadcast-pkts {
458           type yang:counter64;
459           description
460             "The number of packets, delivered by this sub-layer to a
461              higher (sub-)layer, that were addressed to a broadcast
462              address at this sub-layer.
463
464              Discontinuities in the value of this counter can occur
465              at re-initialization of the management system and at
466              other times as indicated by the value of
467              'discontinuity-time'.";
468           reference
469             "RFC 2863: The Interfaces Group MIB -
470                        ifHCInBroadcastPkts";
471         }
472
473         leaf in-multicast-pkts {
474           type yang:counter64;
475           description
476             "The number of packets, delivered by this sub-layer to a
477              higher (sub-)layer, that were addressed to a multicast
478              address at this sub-layer.  For a MAC-layer protocol,
479              this includes both Group and Functional addresses.
480
481              Discontinuities in the value of this counter can occur
482              at re-initialization of the management system and at
483              other times as indicated by the value of
484              'discontinuity-time'.";
485           reference
486             "RFC 2863: The Interfaces Group MIB -
487                        ifHCInMulticastPkts";
488         }
489
490         leaf in-discards {
491           type yang:counter32;
492           description
493             "The number of inbound packets that were chosen to be
494              discarded even though no errors had been detected to
495              prevent their being deliverable to a higher-layer
496              protocol.  One possible reason for discarding such a
497              packet could be to free up buffer space.
498
499              Discontinuities in the value of this counter can occur
500              at re-initialization of the management system and at
501              other times as indicated by the value of
502              'discontinuity-time'.";
503           reference
504             "RFC 2863: The Interfaces Group MIB - ifInDiscards";
505         }
506
507         leaf in-errors {
508           type yang:counter32;
509           description
510             "For packet-oriented interfaces, the number of inbound
511              packets that contained errors preventing them from being
512              deliverable to a higher-layer protocol.  For character-
513              oriented or fixed-length interfaces, the number of
514              inbound transmission units that contained errors
515              preventing them from being deliverable to a higher-layer
516              protocol.
517
518              Discontinuities in the value of this counter can occur
519              at re-initialization of the management system and at
520              other times as indicated by the value of
521              'discontinuity-time'.";
522           reference
523             "RFC 2863: The Interfaces Group MIB - ifInErrors";
524         }
525
526         leaf in-unknown-protos {
527           type yang:counter32;
528
529           description
530             "For packet-oriented interfaces, the number of packets
531              received via the interface that were discarded because
532              of an unknown or unsupported protocol.  For
533              character-oriented or fixed-length interfaces that
534              support protocol multiplexing, the number of
535              transmission units received via the interface that were
536              discarded because of an unknown or unsupported protocol.
537              For any interface that does not support protocol
538              multiplexing, this counter is not present.
539
540              Discontinuities in the value of this counter can occur
541              at re-initialization of the management system and at
542              other times as indicated by the value of
543              'discontinuity-time'.";
544           reference
545             "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
546         }
547
548         leaf out-octets {
549           type yang:counter64;
550           description
551             "The total number of octets transmitted out of the
552              interface, including framing characters.
553
554              Discontinuities in the value of this counter can occur
555              at re-initialization of the management system and at
556              other times as indicated by the value of
557              'discontinuity-time'.";
558           reference
559             "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
560         }
561
562         leaf out-unicast-pkts {
563           type yang:counter64;
564           description
565             "The total number of packets that higher-level protocols
566              requested be transmitted and that were not addressed
567              to a multicast or broadcast address at this sub-layer,
568              including those that were discarded or not sent.
569
570              Discontinuities in the value of this counter can occur
571              at re-initialization of the management system and at
572              other times as indicated by the value of
573              'discontinuity-time'.";
574           reference
575             "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
576         }
577
578         leaf out-broadcast-pkts {
579           type yang:counter64;
580           description
581             "The total number of packets that higher-level protocols
582              requested be transmitted and that were addressed to a
583              broadcast address at this sub-layer, including those
584              that were discarded or not sent.
585
586              Discontinuities in the value of this counter can occur
587              at re-initialization of the management system and at
588              other times as indicated by the value of
589              'discontinuity-time'.";
590           reference
591             "RFC 2863: The Interfaces Group MIB -
592                        ifHCOutBroadcastPkts";
593         }
594
595         leaf out-multicast-pkts {
596           type yang:counter64;
597           description
598             "The total number of packets that higher-level protocols
599              requested be transmitted and that were addressed to a
600              multicast address at this sub-layer, including those
601              that were discarded or not sent.  For a MAC-layer
602              protocol, this includes both Group and Functional
603              addresses.
604
605              Discontinuities in the value of this counter can occur
606              at re-initialization of the management system and at
607              other times as indicated by the value of
608              'discontinuity-time'.";
609           reference
610             "RFC 2863: The Interfaces Group MIB -
611                        ifHCOutMulticastPkts";
612         }
613
614         leaf out-discards {
615           type yang:counter32;
616           description
617             "The number of outbound packets that were chosen to be
618              discarded even though no errors had been detected to
619              prevent their being transmitted.  One possible reason
620              for discarding such a packet could be to free up buffer
621              space.
622
623              Discontinuities in the value of this counter can occur
624              at re-initialization of the management system and at
625              other times as indicated by the value of
626              'discontinuity-time'.";
627           reference
628             "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
629         }
630
631         leaf out-errors {
632           type yang:counter32;
633           description
634             "For packet-oriented interfaces, the number of outbound
635              packets that could not be transmitted because of errors.
636              For character-oriented or fixed-length interfaces, the
637              number of outbound transmission units that could not be
638              transmitted because of errors.
639
640              Discontinuities in the value of this counter can occur
641              at re-initialization of the management system and at
642              other times as indicated by the value of
643              'discontinuity-time'.";
644           reference
645             "RFC 2863: The Interfaces Group MIB - ifOutErrors";
646         }
647       }
648
649     }
650   }
651
652   /*
653    * Legacy typedefs
654    */
655
656   typedef interface-state-ref {
657     type leafref {
658       path "/if:interfaces-state/if:interface/if:name";
659     }
660     status deprecated;
661     description
662       "This type is used by data models that need to reference
663        the operationally present interfaces.";
664   }
665
666   /*
667    * Legacy operational state data nodes
668    */
669
670   container interfaces-state {
671     config false;
672     status deprecated;
673     description
674       "Data nodes for the operational state of interfaces.";
675
676     list interface {
677       key "name";
678       status deprecated;
679
680       description
681         "The list of interfaces on the device.
682
683          System-controlled interfaces created by the system are
684          always present in this list, whether or not they are
685          configured.";
686
687       leaf name {
688         type string;
689         status deprecated;
690         description
691           "The name of the interface.
692
693            A server implementation MAY map this leaf to the ifName
694            MIB object.  Such an implementation needs to use some
695            mechanism to handle the differences in size and characters
696            allowed between this leaf and ifName.  The definition of
697            such a mechanism is outside the scope of this document.";
698         reference
699           "RFC 2863: The Interfaces Group MIB - ifName";
700       }
701
702       leaf type {
703         type identityref {
704           base interface-type;
705         }
706         mandatory true;
707         status deprecated;
708         description
709           "The type of the interface.";
710         reference
711           "RFC 2863: The Interfaces Group MIB - ifType";
712       }
713
714       leaf admin-status {
715         if-feature if-mib;
716         type enumeration {
717           enum up {
718             value 1;
719             description
720               "Ready to pass packets.";
721           }
722           enum down {
723             value 2;
724             description
725               "Not ready to pass packets and not in some test mode.";
726           }
727           enum testing {
728             value 3;
729             description
730               "In some test mode.";
731           }
732         }
733         mandatory true;
734         status deprecated;
735         description
736           "The desired state of the interface.
737
738            This leaf has the same read semantics as ifAdminStatus.";
739         reference
740           "RFC 2863: The Interfaces Group MIB - ifAdminStatus";
741       }
742
743       leaf oper-status {
744         type enumeration {
745           enum up {
746             value 1;
747             description
748               "Ready to pass packets.";
749           }
750           enum down {
751             value 2;
752             description
753               "The interface does not pass any packets.";
754           }
755           enum testing {
756             value 3;
757             description
758               "In some test mode.  No operational packets can
759                be passed.";
760           }
761           enum unknown {
762             value 4;
763             description
764               "Status cannot be determined for some reason.";
765           }
766           enum dormant {
767             value 5;
768             description
769               "Waiting for some external event.";
770           }
771           enum not-present {
772             value 6;
773             description
774               "Some component (typically hardware) is missing.";
775           }
776           enum lower-layer-down {
777             value 7;
778             description
779               "Down due to state of lower-layer interface(s).";
780           }
781         }
782         mandatory true;
783         status deprecated;
784         description
785           "The current operational state of the interface.
786
787            This leaf has the same semantics as ifOperStatus.";
788         reference
789           "RFC 2863: The Interfaces Group MIB - ifOperStatus";
790       }
791
792       leaf last-change {
793         type yang:date-and-time;
794         status deprecated;
795         description
796           "The time the interface entered its current operational
797            state.  If the current state was entered prior to the
798            last re-initialization of the local network management
799            subsystem, then this node is not present.";
800         reference
801           "RFC 2863: The Interfaces Group MIB - ifLastChange";
802       }
803
804       leaf if-index {
805         if-feature if-mib;
806         type int32 {
807           range "1..2147483647";
808         }
809         mandatory true;
810         status deprecated;
811         description
812           "The ifIndex value for the ifEntry represented by this
813            interface.";
814
815         reference
816           "RFC 2863: The Interfaces Group MIB - ifIndex";
817       }
818
819       leaf phys-address {
820         type yang:phys-address;
821         status deprecated;
822         description
823           "The interface's address at its protocol sub-layer.  For
824            example, for an 802.x interface, this object normally
825            contains a Media Access Control (MAC) address.  The
826            interface's media-specific modules must define the bit
827            and byte ordering and the format of the value of this
828            object.  For interfaces that do not have such an address
829            (e.g., a serial line), this node is not present.";
830         reference
831           "RFC 2863: The Interfaces Group MIB - ifPhysAddress";
832       }
833
834       leaf-list higher-layer-if {
835         type interface-state-ref;
836         status deprecated;
837         description
838           "A list of references to interfaces layered on top of this
839            interface.";
840         reference
841           "RFC 2863: The Interfaces Group MIB - ifStackTable";
842       }
843
844       leaf-list lower-layer-if {
845         type interface-state-ref;
846         status deprecated;
847         description
848           "A list of references to interfaces layered underneath this
849            interface.";
850         reference
851           "RFC 2863: The Interfaces Group MIB - ifStackTable";
852       }
853
854       leaf speed {
855         type yang:gauge64;
856         units "bits/second";
857         status deprecated;
858         description
859             "An estimate of the interface's current bandwidth in bits
860              per second.  For interfaces that do not vary in
861              bandwidth or for those where no accurate estimation can
862
863              be made, this node should contain the nominal bandwidth.
864              For interfaces that have no concept of bandwidth, this
865              node is not present.";
866         reference
867           "RFC 2863: The Interfaces Group MIB -
868                      ifSpeed, ifHighSpeed";
869       }
870
871       container statistics {
872         status deprecated;
873         description
874           "A collection of interface-related statistics objects.";
875
876         leaf discontinuity-time {
877           type yang:date-and-time;
878           mandatory true;
879           status deprecated;
880           description
881             "The time on the most recent occasion at which any one or
882              more of this interface's counters suffered a
883              discontinuity.  If no such discontinuities have occurred
884              since the last re-initialization of the local management
885              subsystem, then this node contains the time the local
886              management subsystem re-initialized itself.";
887         }
888
889         leaf in-octets {
890           type yang:counter64;
891           status deprecated;
892           description
893             "The total number of octets received on the interface,
894              including framing characters.
895
896              Discontinuities in the value of this counter can occur
897              at re-initialization of the management system and at
898              other times as indicated by the value of
899              'discontinuity-time'.";
900           reference
901             "RFC 2863: The Interfaces Group MIB - ifHCInOctets";
902         }
903
904         leaf in-unicast-pkts {
905           type yang:counter64;
906           status deprecated;
907           description
908             "The number of packets, delivered by this sub-layer to a
909              higher (sub-)layer, that were not addressed to a
910              multicast or broadcast address at this sub-layer.
911              Discontinuities in the value of this counter can occur
912              at re-initialization of the management system and at
913              other times as indicated by the value of
914              'discontinuity-time'.";
915           reference
916             "RFC 2863: The Interfaces Group MIB - ifHCInUcastPkts";
917         }
918
919         leaf in-broadcast-pkts {
920           type yang:counter64;
921           status deprecated;
922           description
923             "The number of packets, delivered by this sub-layer to a
924              higher (sub-)layer, that were addressed to a broadcast
925              address at this sub-layer.
926
927              Discontinuities in the value of this counter can occur
928              at re-initialization of the management system and at
929              other times as indicated by the value of
930              'discontinuity-time'.";
931           reference
932             "RFC 2863: The Interfaces Group MIB -
933                        ifHCInBroadcastPkts";
934         }
935
936         leaf in-multicast-pkts {
937           type yang:counter64;
938           status deprecated;
939           description
940             "The number of packets, delivered by this sub-layer to a
941              higher (sub-)layer, that were addressed to a multicast
942              address at this sub-layer.  For a MAC-layer protocol,
943              this includes both Group and Functional addresses.
944
945              Discontinuities in the value of this counter can occur
946              at re-initialization of the management system and at
947              other times as indicated by the value of
948              'discontinuity-time'.";
949           reference
950             "RFC 2863: The Interfaces Group MIB -
951                        ifHCInMulticastPkts";
952         }
953
954         leaf in-discards {
955           type yang:counter32;
956           status deprecated;
957
958           description
959             "The number of inbound packets that were chosen to be
960              discarded even though no errors had been detected to
961              prevent their being deliverable to a higher-layer
962              protocol.  One possible reason for discarding such a
963              packet could be to free up buffer space.
964
965              Discontinuities in the value of this counter can occur
966              at re-initialization of the management system and at
967              other times as indicated by the value of
968              'discontinuity-time'.";
969           reference
970             "RFC 2863: The Interfaces Group MIB - ifInDiscards";
971         }
972
973         leaf in-errors {
974           type yang:counter32;
975           status deprecated;
976           description
977             "For packet-oriented interfaces, the number of inbound
978              packets that contained errors preventing them from being
979              deliverable to a higher-layer protocol.  For character-
980              oriented or fixed-length interfaces, the number of
981              inbound transmission units that contained errors
982              preventing them from being deliverable to a higher-layer
983              protocol.
984
985              Discontinuities in the value of this counter can occur
986              at re-initialization of the management system and at
987              other times as indicated by the value of
988              'discontinuity-time'.";
989           reference
990             "RFC 2863: The Interfaces Group MIB - ifInErrors";
991         }
992
993         leaf in-unknown-protos {
994           type yang:counter32;
995           status deprecated;
996           description
997             "For packet-oriented interfaces, the number of packets
998              received via the interface that were discarded because
999              of an unknown or unsupported protocol.  For
1000              character-oriented or fixed-length interfaces that
1001              support protocol multiplexing, the number of
1002              transmission units received via the interface that were
1003              discarded because of an unknown or unsupported protocol.
1004              For any interface that does not support protocol
1005              multiplexing, this counter is not present.
1006              Discontinuities in the value of this counter can occur
1007              at re-initialization of the management system and at
1008              other times as indicated by the value of
1009              'discontinuity-time'.";
1010           reference
1011             "RFC 2863: The Interfaces Group MIB - ifInUnknownProtos";
1012         }
1013
1014         leaf out-octets {
1015           type yang:counter64;
1016           status deprecated;
1017           description
1018             "The total number of octets transmitted out of the
1019              interface, including framing characters.
1020
1021              Discontinuities in the value of this counter can occur
1022              at re-initialization of the management system and at
1023              other times as indicated by the value of
1024              'discontinuity-time'.";
1025           reference
1026             "RFC 2863: The Interfaces Group MIB - ifHCOutOctets";
1027         }
1028
1029         leaf out-unicast-pkts {
1030           type yang:counter64;
1031           status deprecated;
1032           description
1033             "The total number of packets that higher-level protocols
1034              requested be transmitted and that were not addressed
1035              to a multicast or broadcast address at this sub-layer,
1036              including those that were discarded or not sent.
1037
1038              Discontinuities in the value of this counter can occur
1039              at re-initialization of the management system and at
1040              other times as indicated by the value of
1041              'discontinuity-time'.";
1042           reference
1043             "RFC 2863: The Interfaces Group MIB - ifHCOutUcastPkts";
1044         }
1045
1046         leaf out-broadcast-pkts {
1047           type yang:counter64;
1048           status deprecated;
1049
1050           description
1051             "The total number of packets that higher-level protocols
1052              requested be transmitted and that were addressed to a
1053              broadcast address at this sub-layer, including those
1054              that were discarded or not sent.
1055
1056              Discontinuities in the value of this counter can occur
1057              at re-initialization of the management system and at
1058              other times as indicated by the value of
1059              'discontinuity-time'.";
1060           reference
1061             "RFC 2863: The Interfaces Group MIB -
1062                        ifHCOutBroadcastPkts";
1063         }
1064
1065         leaf out-multicast-pkts {
1066           type yang:counter64;
1067           status deprecated;
1068           description
1069             "The total number of packets that higher-level protocols
1070              requested be transmitted and that were addressed to a
1071              multicast address at this sub-layer, including those
1072              that were discarded or not sent.  For a MAC-layer
1073              protocol, this includes both Group and Functional
1074              addresses.
1075
1076              Discontinuities in the value of this counter can occur
1077              at re-initialization of the management system and at
1078              other times as indicated by the value of
1079              'discontinuity-time'.";
1080           reference
1081             "RFC 2863: The Interfaces Group MIB -
1082                        ifHCOutMulticastPkts";
1083         }
1084
1085         leaf out-discards {
1086           type yang:counter32;
1087           status deprecated;
1088           description
1089             "The number of outbound packets that were chosen to be
1090              discarded even though no errors had been detected to
1091              prevent their being transmitted.  One possible reason
1092              for discarding such a packet could be to free up buffer
1093              space.
1094
1095              Discontinuities in the value of this counter can occur
1096              at re-initialization of the management system and at
1097              other times as indicated by the value of
1098              'discontinuity-time'.";
1099           reference
1100             "RFC 2863: The Interfaces Group MIB - ifOutDiscards";
1101         }
1102
1103         leaf out-errors {
1104           type yang:counter32;
1105           status deprecated;
1106           description
1107             "For packet-oriented interfaces, the number of outbound
1108              packets that could not be transmitted because of errors.
1109              For character-oriented or fixed-length interfaces, the
1110              number of outbound transmission units that could not be
1111              transmitted because of errors.
1112
1113              Discontinuities in the value of this counter can occur
1114              at re-initialization of the management system and at
1115              other times as indicated by the value of
1116              'discontinuity-time'.";
1117           reference
1118             "RFC 2863: The Interfaces Group MIB - ifOutErrors";
1119         }
1120       }
1121     }
1122   }
1123 }