1--
2-- This SMIv2 module has been generated by smidump 0.4.5. Do not edit.
3--
4
5IF-MIB DEFINITIONS ::= BEGIN
6
7IMPORTS
8    IANAifType
9        FROM IANAifType-MIB
10    MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP
11        FROM SNMPv2-CONF
12    snmpTraps
13        FROM SNMPv2-MIB
14    Counter32, Counter64, Gauge32, Integer32, MODULE-IDENTITY,
15    NOTIFICATION-TYPE, OBJECT-TYPE, TimeTicks, mib-2
16        FROM SNMPv2-SMI
17    AutonomousType, DisplayString, PhysAddress, RowStatus,
18    TEXTUAL-CONVENTION, TestAndIncr, TimeStamp, TruthValue
19        FROM SNMPv2-TC;
20
21ifMIB MODULE-IDENTITY
22    LAST-UPDATED "200006140000Z"
23    ORGANIZATION
24        "IETF Interfaces MIB Working Group"
25    CONTACT-INFO
26        "   Keith McCloghrie
27         Cisco Systems, Inc.
28         170 West Tasman Drive
29         San Jose, CA  95134-1706
30         US
31
32         408-526-5260
33         kzm@cisco.com"
34    DESCRIPTION
35        "The MIB module to describe generic objects for network
36         interface sub-layers.  This MIB is an updated version of
37         MIB-II's ifTable, and incorporates the extensions defined in
38         RFC 1229."
39    REVISION    "200006140000Z"
40    DESCRIPTION
41        "Clarifications agreed upon by the Interfaces MIB WG, and
42         published as RFC 2863."
43    REVISION    "199602282155Z"
44    DESCRIPTION
45        "Revisions made by the Interfaces MIB WG, and published in
46         RFC 2233."
47    REVISION    "199311082155Z"
48    DESCRIPTION
49        "Initial revision, published as part of RFC 1573."
50    ::= { mib-2 31 }
51
52
53OwnerString ::= TEXTUAL-CONVENTION
54    DISPLAY-HINT "255a"
55    STATUS      deprecated
56    DESCRIPTION
57        "This data type is used to model an administratively
58         assigned name of the owner of a resource.  This information
59         is taken from the NVT ASCII character set.  It is suggested
60         that this name contain one or more of the following: ASCII
61         form of the manager station's transport address, management
62         station name (e.g., domain name), network management
63         personnel's name, location, or phone number.  In some cases
64         the agent itself will be the owner of an entry.  In these
65         cases, this string shall be set to a string starting with
66         'agent'."
67    SYNTAX      OCTET STRING (SIZE(0..255))
68
69InterfaceIndex ::= TEXTUAL-CONVENTION
70    DISPLAY-HINT "d"
71    STATUS      current
72    DESCRIPTION
73        "A unique value, greater than zero, for each interface or
74         interface sub-layer in the managed system.  It is
75         recommended that values are assigned contiguously starting
76         from 1.  The value for each interface sub-layer must remain
77         constant at least from one re-initialization of the entity's
78         network management system to the next re-initialization."
79    SYNTAX      Integer32 (1..2147483647)
80
81InterfaceIndexOrZero ::= TEXTUAL-CONVENTION
82    DISPLAY-HINT "d"
83    STATUS      current
84    DESCRIPTION
85        "This textual convention is an extension of the
86         InterfaceIndex convention.  The latter defines a greater
87         than zero value used to identify an interface or interface
88         sub-layer in the managed system.  This extension permits the
89         additional value of zero.  the value zero is object-specific
90         and must therefore be defined as part of the description of
91         any object which uses this syntax.  Examples of the usage of
92         zero might include situations where interface was unknown,
93         or when none or all interfaces need to be referenced."
94    SYNTAX      Integer32 (0..2147483647)
95
96interfaces OBJECT IDENTIFIER
97    ::= { mib-2 2 }
98
99ifNumber OBJECT-TYPE
100    SYNTAX      Integer32
101    MAX-ACCESS  read-only
102    STATUS      current
103    DESCRIPTION
104        "The number of network interfaces (regardless of their
105         current state) present on this system."
106    ::= { interfaces 1 }
107
108ifTable OBJECT-TYPE
109    SYNTAX      SEQUENCE OF IfEntry
110    MAX-ACCESS  not-accessible
111    STATUS      current
112    DESCRIPTION
113        "A list of interface entries.  The number of entries is
114         given by the value of ifNumber."
115    ::= { interfaces 2 }
116
117ifEntry OBJECT-TYPE
118    SYNTAX      IfEntry
119    MAX-ACCESS  not-accessible
120    STATUS      current
121    DESCRIPTION
122        "An entry containing management information applicable to a
123         particular interface."
124    INDEX       { ifIndex }
125    ::= { ifTable 1 }
126
127IfEntry ::= SEQUENCE {
128    ifIndex             InterfaceIndex,
129    ifDescr             DisplayString,
130    ifType              IANAifType,
131    ifMtu               Integer32,
132    ifSpeed             Gauge32,
133    ifPhysAddress       PhysAddress,
134    ifAdminStatus       INTEGER,
135    ifOperStatus        INTEGER,
136    ifLastChange        TimeTicks,
137    ifInOctets          Counter32,
138    ifInUcastPkts       Counter32,
139    ifInNUcastPkts      Counter32,
140    ifInDiscards        Counter32,
141    ifInErrors          Counter32,
142    ifInUnknownProtos   Counter32,
143    ifOutOctets         Counter32,
144    ifOutUcastPkts      Counter32,
145    ifOutNUcastPkts     Counter32,
146    ifOutDiscards       Counter32,
147    ifOutErrors         Counter32,
148    ifOutQLen           Gauge32,
149    ifSpecific          OBJECT IDENTIFIER
150}
151
152ifIndex OBJECT-TYPE
153    SYNTAX      InterfaceIndex
154    MAX-ACCESS  read-only
155    STATUS      current
156    DESCRIPTION
157        "A unique value, greater than zero, for each interface.  It
158         is recommended that values are assigned contiguously
159         starting from 1.  The value for each interface sub-layer
160         must remain constant at least from one re-initialization of
161         the entity's network management system to the next re-
162         initialization."
163    ::= { ifEntry 1 }
164
165ifDescr OBJECT-TYPE
166    SYNTAX      DisplayString (SIZE(0..255))
167    MAX-ACCESS  read-only
168    STATUS      current
169    DESCRIPTION
170        "A textual string containing information about the
171         interface.  This string should include the name of the
172         manufacturer, the product name and the version of the
173         interface hardware/software."
174    ::= { ifEntry 2 }
175
176ifType OBJECT-TYPE
177    SYNTAX      IANAifType
178    MAX-ACCESS  read-only
179    STATUS      current
180    DESCRIPTION
181        "The type of interface.  Additional values for ifType are
182         assigned by the Internet Assigned Numbers Authority (IANA),
183         through updating the syntax of the IANAifType textual
184         convention."
185    ::= { ifEntry 3 }
186
187ifMtu OBJECT-TYPE
188    SYNTAX      Integer32
189    MAX-ACCESS  read-only
190    STATUS      current
191    DESCRIPTION
192        "The size of the largest packet which can be sent/received
193         on the interface, specified in octets.  For interfaces that
194         are used for transmitting network datagrams, this is the
195         size of the largest network datagram that can be sent on the
196         interface."
197    ::= { ifEntry 4 }
198
199ifSpeed OBJECT-TYPE
200    SYNTAX      Gauge32
201    MAX-ACCESS  read-only
202    STATUS      current
203    DESCRIPTION
204        "An estimate of the interface's current bandwidth in bits
205         per second.  For interfaces which do not vary in bandwidth
206         or for those where no accurate estimation can be made, this
207         object should contain the nominal bandwidth.  If the
208         bandwidth of the interface is greater than the maximum value
209         reportable by this object then this object should report its
210         maximum value (4,294,967,295) and ifHighSpeed must be used
211         to report the interace's speed.  For a sub-layer which has
212         no concept of bandwidth, this object should be zero."
213    ::= { ifEntry 5 }
214
215ifPhysAddress OBJECT-TYPE
216    SYNTAX      PhysAddress
217    MAX-ACCESS  read-only
218    STATUS      current
219    DESCRIPTION
220        "The interface's address at its protocol sub-layer.  For
221         example, for an 802.x interface, this object normally
222         contains a MAC address.  The interface's media-specific MIB
223         must define the bit and byte ordering and the format of the
224         value of this object.  For interfaces which do not have such
225         an address (e.g., a serial line), this object should contain
226         an octet string of zero length."
227    ::= { ifEntry 6 }
228
229ifAdminStatus OBJECT-TYPE
230    SYNTAX      INTEGER { up(1), down(2), testing(3) }
231    MAX-ACCESS  read-write
232    STATUS      current
233    DESCRIPTION
234        "The desired state of the interface.  The testing(3) state
235         indicates that no operational packets can be passed.  When a
236         managed system initializes, all interfaces start with
237         ifAdminStatus in the down(2) state.  As a result of either
238         explicit management action or per configuration information
239         retained by the managed system, ifAdminStatus is then
240         changed to either the up(1) or testing(3) states (or remains
241         in the down(2) state)."
242    ::= { ifEntry 7 }
243
244ifOperStatus OBJECT-TYPE
245    SYNTAX      INTEGER { up(1), down(2), testing(3), unknown(4),
246                    dormant(5), notPresent(6), lowerLayerDown(7) }
247    MAX-ACCESS  read-only
248    STATUS      current
249    DESCRIPTION
250        "The current operational state of the interface.  The
251         testing(3) state indicates that no operational packets can
252         be passed.  If ifAdminStatus is down(2) then ifOperStatus
253         should be down(2).  If ifAdminStatus is changed to up(1)
254         then ifOperStatus should change to up(1) if the interface is
255         ready to transmit and receive network traffic; it should
256         change to dormant(5) if the interface is waiting for
257         external actions (such as a serial line waiting for an
258         incoming connection); it should remain in the down(2) state
259         if and only if there is a fault that prevents it from going
260         to the up(1) state; it should remain in the notPresent(6)
261         state if the interface has missing (typically, hardware)
262         components."
263    ::= { ifEntry 8 }
264
265ifLastChange OBJECT-TYPE
266    SYNTAX      TimeTicks
267    MAX-ACCESS  read-only
268    STATUS      current
269    DESCRIPTION
270        "The value of sysUpTime at the time the interface entered
271         its current operational state.  If the current state was
272         entered prior to the last re-initialization of the local
273         network management subsystem, then this object contains a
274         zero value."
275    ::= { ifEntry 9 }
276
277ifInOctets OBJECT-TYPE
278    SYNTAX      Counter32
279    MAX-ACCESS  read-only
280    STATUS      current
281    DESCRIPTION
282        "The total number of octets received on the interface,
283
284
285         including framing characters.
286
287         Discontinuities in the value of this counter can occur at
288         re-initialization of the management system, and at other
289         times as indicated by the value of
290         ifCounterDiscontinuityTime."
291    ::= { ifEntry 10 }
292
293ifInUcastPkts OBJECT-TYPE
294    SYNTAX      Counter32
295    MAX-ACCESS  read-only
296    STATUS      current
297    DESCRIPTION
298        "The number of packets, delivered by this sub-layer to a
299         higher (sub-)layer, which were not addressed to a multicast
300         or broadcast address at this sub-layer.
301
302         Discontinuities in the value of this counter can occur at
303         re-initialization of the management system, and at other
304         times as indicated by the value of
305         ifCounterDiscontinuityTime."
306    ::= { ifEntry 11 }
307
308ifInNUcastPkts OBJECT-TYPE
309    SYNTAX      Counter32
310    MAX-ACCESS  read-only
311    STATUS      deprecated
312    DESCRIPTION
313        "The number of packets, delivered by this sub-layer to a
314         higher (sub-)layer, which were addressed to a multicast or
315         broadcast address at this sub-layer.
316
317         Discontinuities in the value of this counter can occur at
318         re-initialization of the management system, and at other
319         times as indicated by the value of
320         ifCounterDiscontinuityTime.
321
322         This object is deprecated in favour of ifInMulticastPkts and
323         ifInBroadcastPkts."
324    ::= { ifEntry 12 }
325
326ifInDiscards OBJECT-TYPE
327    SYNTAX      Counter32
328    MAX-ACCESS  read-only
329    STATUS      current
330    DESCRIPTION
331        "The number of inbound packets which were chosen to be
332         discarded even though no errors had been detected to prevent
333
334
335         their being deliverable to a higher-layer protocol.  One
336         possible reason for discarding such a packet could be to
337         free up buffer space.
338
339         Discontinuities in the value of this counter can occur at
340         re-initialization of the management system, and at other
341         times as indicated by the value of
342         ifCounterDiscontinuityTime."
343    ::= { ifEntry 13 }
344
345ifInErrors OBJECT-TYPE
346    SYNTAX      Counter32
347    MAX-ACCESS  read-only
348    STATUS      current
349    DESCRIPTION
350        "For packet-oriented interfaces, the number of inbound
351         packets that contained errors preventing them from being
352         deliverable to a higher-layer protocol.  For character-
353         oriented or fixed-length interfaces, the number of inbound
354         transmission units that contained errors preventing them
355         from being deliverable to a higher-layer protocol.
356
357         Discontinuities in the value of this counter can occur at
358         re-initialization of the management system, and at other
359         times as indicated by the value of
360         ifCounterDiscontinuityTime."
361    ::= { ifEntry 14 }
362
363ifInUnknownProtos OBJECT-TYPE
364    SYNTAX      Counter32
365    MAX-ACCESS  read-only
366    STATUS      current
367    DESCRIPTION
368        "For packet-oriented interfaces, the number of packets
369         received via the interface which were discarded because of
370         an unknown or unsupported protocol.  For character-oriented
371         or fixed-length interfaces that support protocol
372         multiplexing the number of transmission units received via
373         the interface which were discarded because of an unknown or
374         unsupported protocol.  For any interface that does not
375         support protocol multiplexing, this counter will always be
376         0.
377
378         Discontinuities in the value of this counter can occur at
379         re-initialization of the management system, and at other
380         times as indicated by the value of
381         ifCounterDiscontinuityTime."
382    ::= { ifEntry 15 }
383
384ifOutOctets OBJECT-TYPE
385    SYNTAX      Counter32
386    MAX-ACCESS  read-only
387    STATUS      current
388    DESCRIPTION
389        "The total number of octets transmitted out of the
390         interface, including framing characters.
391
392         Discontinuities in the value of this counter can occur at
393         re-initialization of the management system, and at other
394         times as indicated by the value of
395         ifCounterDiscontinuityTime."
396    ::= { ifEntry 16 }
397
398ifOutUcastPkts OBJECT-TYPE
399    SYNTAX      Counter32
400    MAX-ACCESS  read-only
401    STATUS      current
402    DESCRIPTION
403        "The total number of packets that higher-level protocols
404         requested be transmitted, and which were not addressed to a
405         multicast or broadcast address at this sub-layer, including
406         those that were discarded or not sent.
407
408         Discontinuities in the value of this counter can occur at
409         re-initialization of the management system, and at other
410         times as indicated by the value of
411         ifCounterDiscontinuityTime."
412    ::= { ifEntry 17 }
413
414ifOutNUcastPkts OBJECT-TYPE
415    SYNTAX      Counter32
416    MAX-ACCESS  read-only
417    STATUS      deprecated
418    DESCRIPTION
419        "The total number of packets that higher-level protocols
420         requested be transmitted, and which were addressed to a
421         multicast or broadcast address at this sub-layer, including
422         those that were discarded or not sent.
423
424         Discontinuities in the value of this counter can occur at
425         re-initialization of the management system, and at other
426         times as indicated by the value of
427         ifCounterDiscontinuityTime.
428
429         This object is deprecated in favour of ifOutMulticastPkts
430         and ifOutBroadcastPkts."
431    ::= { ifEntry 18 }
432
433ifOutDiscards OBJECT-TYPE
434    SYNTAX      Counter32
435    MAX-ACCESS  read-only
436    STATUS      current
437    DESCRIPTION
438        "The number of outbound packets which were chosen to be
439         discarded even though no errors had been detected to prevent
440         their being transmitted.  One possible reason for discarding
441         such a packet could be to free up buffer space.
442
443         Discontinuities in the value of this counter can occur at
444         re-initialization of the management system, and at other
445         times as indicated by the value of
446         ifCounterDiscontinuityTime."
447    ::= { ifEntry 19 }
448
449ifOutErrors OBJECT-TYPE
450    SYNTAX      Counter32
451    MAX-ACCESS  read-only
452    STATUS      current
453    DESCRIPTION
454        "For packet-oriented interfaces, the number of outbound
455         packets that could not be transmitted because of errors.
456         For character-oriented or fixed-length interfaces, the
457         number of outbound transmission units that could not be
458         transmitted because of errors.
459
460         Discontinuities in the value of this counter can occur at
461         re-initialization of the management system, and at other
462         times as indicated by the value of
463         ifCounterDiscontinuityTime."
464    ::= { ifEntry 20 }
465
466ifOutQLen OBJECT-TYPE
467    SYNTAX      Gauge32
468    MAX-ACCESS  read-only
469    STATUS      deprecated
470    DESCRIPTION
471        "The length of the output packet queue (in packets)."
472    ::= { ifEntry 21 }
473
474ifSpecific OBJECT-TYPE
475    SYNTAX      OBJECT IDENTIFIER
476    MAX-ACCESS  read-only
477    STATUS      deprecated
478    DESCRIPTION
479        "A reference to MIB definitions specific to the particular
480         media being used to realize the interface.  It is
481
482
483         recommended that this value point to an instance of a MIB
484         object in the media-specific MIB, i.e., that this object
485         have the semantics associated with the InstancePointer
486         textual convention defined in RFC 2579.  In fact, it is
487         recommended that the media-specific MIB specify what value
488         ifSpecific should/can take for values of ifType.  If no MIB
489         definitions specific to the particular media are available,
490         the value should be set to the OBJECT IDENTIFIER { 0 0 }."
491    ::= { ifEntry 22 }
492
493ifMIBObjects OBJECT IDENTIFIER
494    ::= { ifMIB 1 }
495
496ifXTable OBJECT-TYPE
497    SYNTAX      SEQUENCE OF IfXEntry
498    MAX-ACCESS  not-accessible
499    STATUS      current
500    DESCRIPTION
501        "A list of interface entries.  The number of entries is
502         given by the value of ifNumber.  This table contains
503         additional objects for the interface table."
504    ::= { ifMIBObjects 1 }
505
506ifXEntry OBJECT-TYPE
507    SYNTAX      IfXEntry
508    MAX-ACCESS  not-accessible
509    STATUS      current
510    DESCRIPTION
511        "An entry containing additional management information
512         applicable to a particular interface."
513    AUGMENTS    { ifEntry }
514    ::= { ifXTable 1 }
515
516IfXEntry ::= SEQUENCE {
517    ifName                      DisplayString,
518    ifInMulticastPkts           Counter32,
519    ifInBroadcastPkts           Counter32,
520    ifOutMulticastPkts          Counter32,
521    ifOutBroadcastPkts          Counter32,
522    ifHCInOctets                Counter64,
523    ifHCInUcastPkts             Counter64,
524    ifHCInMulticastPkts         Counter64,
525    ifHCInBroadcastPkts         Counter64,
526    ifHCOutOctets               Counter64,
527    ifHCOutUcastPkts            Counter64,
528    ifHCOutMulticastPkts        Counter64,
529    ifHCOutBroadcastPkts        Counter64,
530    ifLinkUpDownTrapEnable      INTEGER,
531    ifHighSpeed                 Gauge32,
532    ifPromiscuousMode           TruthValue,
533    ifConnectorPresent          TruthValue,
534    ifAlias                     DisplayString,
535    ifCounterDiscontinuityTime  TimeStamp
536}
537
538ifName OBJECT-TYPE
539    SYNTAX      DisplayString
540    MAX-ACCESS  read-only
541    STATUS      current
542    DESCRIPTION
543        "The textual name of the interface.  The value of this
544         object should be the name of the interface as assigned by
545         the local device and should be suitable for use in commands
546         entered at the device's `console'.  This might be a text
547         name, such as `le0' or a simple port number, such as `1',
548         depending on the interface naming syntax of the device.  If
549         several entries in the ifTable together represent a single
550         interface as named by the device, then each will have the
551         same value of ifName.  Note that for an agent which responds
552         to SNMP queries concerning an interface on some other
553         (proxied) device, then the value of ifName for such an
554         interface is the proxied device's local name for it.
555
556         If there is no local name, or this object is otherwise not
557         applicable, then this object contains a zero-length string."
558    ::= { ifXEntry 1 }
559
560ifInMulticastPkts OBJECT-TYPE
561    SYNTAX      Counter32
562    MAX-ACCESS  read-only
563    STATUS      current
564    DESCRIPTION
565        "The number of packets, delivered by this sub-layer to a
566         higher (sub-)layer, which were addressed to a multicast
567         address at this sub-layer.  For a MAC layer protocol, this
568         includes both Group and Functional addresses.
569
570         Discontinuities in the value of this counter can occur at
571         re-initialization of the management system, and at other
572
573
574         times as indicated by the value of
575         ifCounterDiscontinuityTime."
576    ::= { ifXEntry 2 }
577
578ifInBroadcastPkts OBJECT-TYPE
579    SYNTAX      Counter32
580    MAX-ACCESS  read-only
581    STATUS      current
582    DESCRIPTION
583        "The number of packets, delivered by this sub-layer to a
584         higher (sub-)layer, which were addressed to a broadcast
585         address at this sub-layer.
586
587         Discontinuities in the value of this counter can occur at
588         re-initialization of the management system, and at other
589         times as indicated by the value of
590         ifCounterDiscontinuityTime."
591    ::= { ifXEntry 3 }
592
593ifOutMulticastPkts OBJECT-TYPE
594    SYNTAX      Counter32
595    MAX-ACCESS  read-only
596    STATUS      current
597    DESCRIPTION
598        "The total number of packets that higher-level protocols
599         requested be transmitted, and which were addressed to a
600         multicast address at this sub-layer, including those that
601         were discarded or not sent.  For a MAC layer protocol, this
602         includes both Group and Functional addresses.
603
604         Discontinuities in the value of this counter can occur at
605         re-initialization of the management system, and at other
606         times as indicated by the value of
607         ifCounterDiscontinuityTime."
608    ::= { ifXEntry 4 }
609
610ifOutBroadcastPkts OBJECT-TYPE
611    SYNTAX      Counter32
612    MAX-ACCESS  read-only
613    STATUS      current
614    DESCRIPTION
615        "The total number of packets that higher-level protocols
616         requested be transmitted, and which were addressed to a
617         broadcast address at this sub-layer, including those that
618         were discarded or not sent.
619
620         Discontinuities in the value of this counter can occur at
621         re-initialization of the management system, and at other
622
623
624         times as indicated by the value of
625         ifCounterDiscontinuityTime."
626    ::= { ifXEntry 5 }
627
628ifHCInOctets OBJECT-TYPE
629    SYNTAX      Counter64
630    MAX-ACCESS  read-only
631    STATUS      current
632    DESCRIPTION
633        "The total number of octets received on the interface,
634         including framing characters.  This object is a 64-bit
635         version of ifInOctets.
636
637         Discontinuities in the value of this counter can occur at
638         re-initialization of the management system, and at other
639         times as indicated by the value of
640         ifCounterDiscontinuityTime."
641    ::= { ifXEntry 6 }
642
643ifHCInUcastPkts OBJECT-TYPE
644    SYNTAX      Counter64
645    MAX-ACCESS  read-only
646    STATUS      current
647    DESCRIPTION
648        "The number of packets, delivered by this sub-layer to a
649         higher (sub-)layer, which were not addressed to a multicast
650         or broadcast address at this sub-layer.  This object is a
651         64-bit version of ifInUcastPkts.
652
653         Discontinuities in the value of this counter can occur at
654         re-initialization of the management system, and at other
655         times as indicated by the value of
656         ifCounterDiscontinuityTime."
657    ::= { ifXEntry 7 }
658
659ifHCInMulticastPkts OBJECT-TYPE
660    SYNTAX      Counter64
661    MAX-ACCESS  read-only
662    STATUS      current
663    DESCRIPTION
664        "The number of packets, delivered by this sub-layer to a
665         higher (sub-)layer, which were addressed to a multicast
666         address at this sub-layer.  For a MAC layer protocol, this
667         includes both Group and Functional addresses.  This object
668         is a 64-bit version of ifInMulticastPkts.
669
670         Discontinuities in the value of this counter can occur at
671         re-initialization of the management system, and at other
672         times as indicated by the value of
673         ifCounterDiscontinuityTime."
674    ::= { ifXEntry 8 }
675
676ifHCInBroadcastPkts OBJECT-TYPE
677    SYNTAX      Counter64
678    MAX-ACCESS  read-only
679    STATUS      current
680    DESCRIPTION
681        "The number of packets, delivered by this sub-layer to a
682         higher (sub-)layer, which were addressed to a broadcast
683         address at this sub-layer.  This object is a 64-bit version
684         of ifInBroadcastPkts.
685
686         Discontinuities in the value of this counter can occur at
687         re-initialization of the management system, and at other
688         times as indicated by the value of
689         ifCounterDiscontinuityTime."
690    ::= { ifXEntry 9 }
691
692ifHCOutOctets OBJECT-TYPE
693    SYNTAX      Counter64
694    MAX-ACCESS  read-only
695    STATUS      current
696    DESCRIPTION
697        "The total number of octets transmitted out of the
698         interface, including framing characters.  This object is a
699         64-bit version of ifOutOctets.
700
701         Discontinuities in the value of this counter can occur at
702         re-initialization of the management system, and at other
703         times as indicated by the value of
704         ifCounterDiscontinuityTime."
705    ::= { ifXEntry 10 }
706
707ifHCOutUcastPkts OBJECT-TYPE
708    SYNTAX      Counter64
709    MAX-ACCESS  read-only
710    STATUS      current
711    DESCRIPTION
712        "The total number of packets that higher-level protocols
713         requested be transmitted, and which were not addressed to a
714         multicast or broadcast address at this sub-layer, including
715         those that were discarded or not sent.  This object is a
716         64-bit version of ifOutUcastPkts.
717
718         Discontinuities in the value of this counter can occur at
719         re-initialization of the management system, and at other
720         times as indicated by the value of
721         ifCounterDiscontinuityTime."
722    ::= { ifXEntry 11 }
723
724ifHCOutMulticastPkts OBJECT-TYPE
725    SYNTAX      Counter64
726    MAX-ACCESS  read-only
727    STATUS      current
728    DESCRIPTION
729        "The total number of packets that higher-level protocols
730         requested be transmitted, and which were addressed to a
731         multicast address at this sub-layer, including those that
732         were discarded or not sent.  For a MAC layer protocol, this
733         includes both Group and Functional addresses.  This object
734         is a 64-bit version of ifOutMulticastPkts.
735
736         Discontinuities in the value of this counter can occur at
737         re-initialization of the management system, and at other
738         times as indicated by the value of
739         ifCounterDiscontinuityTime."
740    ::= { ifXEntry 12 }
741
742ifHCOutBroadcastPkts OBJECT-TYPE
743    SYNTAX      Counter64
744    MAX-ACCESS  read-only
745    STATUS      current
746    DESCRIPTION
747        "The total number of packets that higher-level protocols
748         requested be transmitted, and which were addressed to a
749         broadcast address at this sub-layer, including those that
750         were discarded or not sent.  This object is a 64-bit version
751         of ifOutBroadcastPkts.
752
753         Discontinuities in the value of this counter can occur at
754         re-initialization of the management system, and at other
755         times as indicated by the value of
756         ifCounterDiscontinuityTime."
757    ::= { ifXEntry 13 }
758
759ifLinkUpDownTrapEnable OBJECT-TYPE
760    SYNTAX      INTEGER { enabled(1), disabled(2) }
761    MAX-ACCESS  read-write
762    STATUS      current
763    DESCRIPTION
764        "Indicates whether linkUp/linkDown traps should be generated
765         for this interface.
766
767         By default, this object should have the value enabled(1) for
768         interfaces which do not operate on 'top' of any other
769         interface (as defined in the ifStackTable), and disabled(2)
770         otherwise."
771    ::= { ifXEntry 14 }
772
773ifHighSpeed OBJECT-TYPE
774    SYNTAX      Gauge32
775    MAX-ACCESS  read-only
776    STATUS      current
777    DESCRIPTION
778        "An estimate of the interface's current bandwidth in units
779         of 1,000,000 bits per second.  If this object reports a
780         value of `n' then the speed of the interface is somewhere in
781         the range of `n-500,000' to `n+499,999'.  For interfaces
782         which do not vary in bandwidth or for those where no
783         accurate estimation can be made, this object should contain
784         the nominal bandwidth.  For a sub-layer which has no concept
785         of bandwidth, this object should be zero."
786    ::= { ifXEntry 15 }
787
788ifPromiscuousMode OBJECT-TYPE
789    SYNTAX      TruthValue
790    MAX-ACCESS  read-write
791    STATUS      current
792    DESCRIPTION
793        "This object has a value of false(2) if this interface only
794         accepts packets/frames that are addressed to this station.
795         This object has a value of true(1) when the station accepts
796         all packets/frames transmitted on the media.  The value
797         true(1) is only legal on certain types of media.  If legal,
798         setting this object to a value of true(1) may require the
799         interface to be reset before becoming effective.
800
801         The value of ifPromiscuousMode does not affect the reception
802         of broadcast and multicast packets/frames by the interface."
803    ::= { ifXEntry 16 }
804
805ifConnectorPresent OBJECT-TYPE
806    SYNTAX      TruthValue
807    MAX-ACCESS  read-only
808    STATUS      current
809    DESCRIPTION
810        "This object has the value 'true(1)' if the interface
811         sublayer has a physical connector and the value 'false(2)'
812         otherwise."
813    ::= { ifXEntry 17 }
814
815ifAlias OBJECT-TYPE
816    SYNTAX      DisplayString (SIZE(0..64))
817    MAX-ACCESS  read-write
818    STATUS      current
819    DESCRIPTION
820        "This object is an 'alias' name for the interface as
821         specified by a network manager, and provides a non-volatile
822         'handle' for the interface.
823
824         On the first instantiation of an interface, the value of
825         ifAlias associated with that interface is the zero-length
826         string.  As and when a value is written into an instance of
827         ifAlias through a network management set operation, then the
828         agent must retain the supplied value in the ifAlias instance
829         associated with the same interface for as long as that
830         interface remains instantiated, including across all re-
831         initializations/reboots of the network management system,
832         including those which result in a change of the interface's
833         ifIndex value.
834
835         An example of the value which a network manager might store
836         in this object for a WAN interface is the (Telco's) circuit
837         number/identifier of the interface.
838
839         Some agents may support write-access only for interfaces
840         having particular values of ifType.  An agent which supports
841         write access to this object is required to keep the value in
842         non-volatile storage, but it may limit the length of new
843         values depending on how much storage is already occupied by
844         the current values for other interfaces."
845    ::= { ifXEntry 18 }
846
847ifCounterDiscontinuityTime OBJECT-TYPE
848    SYNTAX      TimeStamp
849    MAX-ACCESS  read-only
850    STATUS      current
851    DESCRIPTION
852        "The value of sysUpTime on the most recent occasion at which
853         any one or more of this interface's counters suffered a
854         discontinuity.  The relevant counters are the specific
855         instances associated with this interface of any Counter32 or
856
857
858         Counter64 object contained in the ifTable or ifXTable.  If
859         no such discontinuities have occurred since the last re-
860         initialization of the local management subsystem, then this
861         object contains a zero value."
862    ::= { ifXEntry 19 }
863
864ifStackTable OBJECT-TYPE
865    SYNTAX      SEQUENCE OF IfStackEntry
866    MAX-ACCESS  not-accessible
867    STATUS      current
868    DESCRIPTION
869        "The table containing information on the relationships
870         between the multiple sub-layers of network interfaces.  In
871         particular, it contains information on which sub-layers run
872         'on top of' which other sub-layers, where each sub-layer
873         corresponds to a conceptual row in the ifTable.  For
874         example, when the sub-layer with ifIndex value x runs over
875         the sub-layer with ifIndex value y, then this table
876         contains:
877
878           ifStackStatus.x.y=active
879
880         For each ifIndex value, I, which identifies an active
881         interface, there are always at least two instantiated rows
882         in this table associated with I.  For one of these rows, I
883         is the value of ifStackHigherLayer; for the other, I is the
884         value of ifStackLowerLayer.  (If I is not involved in
885         multiplexing, then these are the only two rows associated
886         with I.)
887
888         For example, two rows exist even for an interface which has
889         no others stacked on top or below it:
890
891           ifStackStatus.0.x=active
892           ifStackStatus.x.0=active "
893    ::= { ifMIBObjects 2 }
894
895ifStackEntry OBJECT-TYPE
896    SYNTAX      IfStackEntry
897    MAX-ACCESS  not-accessible
898    STATUS      current
899    DESCRIPTION
900        "Information on a particular relationship between two sub-
901         layers, specifying that one sub-layer runs on 'top' of the
902         other sub-layer.  Each sub-layer corresponds to a conceptual
903         row in the ifTable."
904    INDEX       { ifStackHigherLayer, ifStackLowerLayer }
905    ::= { ifStackTable 1 }
906
907IfStackEntry ::= SEQUENCE {
908    ifStackHigherLayer  InterfaceIndexOrZero,
909    ifStackLowerLayer   InterfaceIndexOrZero,
910    ifStackStatus       RowStatus
911}
912
913ifStackHigherLayer OBJECT-TYPE
914    SYNTAX      InterfaceIndexOrZero
915    MAX-ACCESS  not-accessible
916    STATUS      current
917    DESCRIPTION
918        "The value of ifIndex corresponding to the higher sub-layer
919         of the relationship, i.e., the sub-layer which runs on 'top'
920         of the sub-layer identified by the corresponding instance of
921         ifStackLowerLayer.  If there is no higher sub-layer (below
922         the internetwork layer), then this object has the value 0."
923    ::= { ifStackEntry 1 }
924
925ifStackLowerLayer OBJECT-TYPE
926    SYNTAX      InterfaceIndexOrZero
927    MAX-ACCESS  not-accessible
928    STATUS      current
929    DESCRIPTION
930        "The value of ifIndex corresponding to the lower sub-layer
931         of the relationship, i.e., the sub-layer which runs 'below'
932         the sub-layer identified by the corresponding instance of
933         ifStackHigherLayer.  If there is no lower sub-layer, then
934         this object has the value 0."
935    ::= { ifStackEntry 2 }
936
937ifStackStatus OBJECT-TYPE
938    SYNTAX      RowStatus
939    MAX-ACCESS  read-create
940    STATUS      current
941    DESCRIPTION
942        "The status of the relationship between two sub-layers.
943
944         Changing the value of this object from 'active' to
945         'notInService' or 'destroy' will likely have consequences up
946         and down the interface stack.  Thus, write access to this
947         object is likely to be inappropriate for some types of
948         interfaces, and many implementations will choose not to
949         support write-access for any type of interface."
950    ::= { ifStackEntry 3 }
951
952ifTestTable OBJECT-TYPE
953    SYNTAX      SEQUENCE OF IfTestEntry
954    MAX-ACCESS  not-accessible
955    STATUS      deprecated
956    DESCRIPTION
957        "This table contains one entry per interface.  It defines
958         objects which allow a network manager to instruct an agent
959         to test an interface for various faults.  Tests for an
960         interface are defined in the media-specific MIB for that
961         interface.  After invoking a test, the object ifTestResult
962         can be read to determine the outcome.  If an agent can not
963         perform the test, ifTestResult is set to so indicate.  The
964         object ifTestCode can be used to provide further test-
965         specific or interface-specific (or even enterprise-specific)
966         information concerning the outcome of the test.  Only one
967         test can be in progress on each interface at any one time.
968         If one test is in progress when another test is invoked, the
969         second test is rejected.  Some agents may reject a test when
970         a prior test is active on another interface.
971
972         Before starting a test, a manager-station must first obtain
973         'ownership' of the entry in the ifTestTable for the
974         interface to be tested.  This is accomplished with the
975         ifTestId and ifTestStatus objects as follows:
976
977         try_again:
978           get (ifTestId, ifTestStatus)
979           while (ifTestStatus != notInUse)
980               /*
981                * Loop while a test is running or some other
982                * manager is configuring a test.
983                */
984               short delay
985               get (ifTestId, ifTestStatus)
986           }
987
988           /*
989            * Is not being used right now -- let's compete
990            * to see who gets it.
991            */
992           lock_value = ifTestId
993
994           if ( set(ifTestId = lock_value, ifTestStatus = inUse,
995
996
997                    ifTestOwner = 'my-IP-address') == FAILURE)
998               /*
999                * Another manager got the ifTestEntry -- go
1000                * try again
1001                */
1002               goto try_again;
1003
1004           /*
1005            * I have the lock
1006            */
1007           set up any test parameters.
1008
1009           /*
1010            * This starts the test
1011            */
1012           set(ifTestType = test_to_run);
1013
1014           wait for test completion by polling ifTestResult
1015
1016           when test completes, agent sets ifTestResult
1017                agent also sets ifTestStatus = 'notInUse'
1018
1019           retrieve any additional test results, and ifTestId
1020
1021           if (ifTestId == lock_value+1) results are valid
1022
1023         A manager station first retrieves the value of the
1024         appropriate ifTestId and ifTestStatus objects, periodically
1025         repeating the retrieval if necessary, until the value of
1026         ifTestStatus is 'notInUse'.  The manager station then tries
1027         to set the same ifTestId object to the value it just
1028         retrieved, the same ifTestStatus object to 'inUse', and the
1029         corresponding ifTestOwner object to a value indicating
1030         itself.  If the set operation succeeds then the manager has
1031         obtained ownership of the ifTestEntry, and the value of the
1032         ifTestId object is incremented by the agent (per the
1033         semantics of TestAndIncr).  Failure of the set operation
1034         indicates that some other manager has obtained ownership of
1035         the ifTestEntry.
1036
1037         Once ownership is obtained, any test parameters can be
1038         setup, and then the test is initiated by setting ifTestType.
1039         On completion of the test, the agent sets ifTestStatus to
1040         'notInUse'.  Once this occurs, the manager can retrieve the
1041         results.  In the (rare) event that the invocation of tests
1042         by two network managers were to overlap, then there would be
1043         a possibility that the first test's results might be
1044         overwritten by the second test's results prior to the first
1045
1046
1047         results being read.  This unlikely circumstance can be
1048         detected by a network manager retrieving ifTestId at the
1049         same time as retrieving the test results, and ensuring that
1050         the results are for the desired request.
1051
1052         If ifTestType is not set within an abnormally long period of
1053         time after ownership is obtained, the agent should time-out
1054         the manager, and reset the value of the ifTestStatus object
1055         back to 'notInUse'.  It is suggested that this time-out
1056         period be 5 minutes.
1057
1058         In general, a management station must not retransmit a
1059         request to invoke a test for which it does not receive a
1060         response; instead, it properly inspects an agent's MIB to
1061         determine if the invocation was successful.  Only if the
1062         invocation was unsuccessful, is the invocation request
1063         retransmitted.
1064
1065         Some tests may require the interface to be taken off-line in
1066         order to execute them, or may even require the agent to
1067         reboot after completion of the test.  In these
1068         circumstances, communication with the management station
1069         invoking the test may be lost until after completion of the
1070         test.  An agent is not required to support such tests.
1071         However, if such tests are supported, then the agent should
1072         make every effort to transmit a response to the request
1073         which invoked the test prior to losing communication.  When
1074         the agent is restored to normal service, the results of the
1075         test are properly made available in the appropriate objects.
1076         Note that this requires that the ifIndex value assigned to
1077         an interface must be unchanged even if the test causes a
1078         reboot.  An agent must reject any test for which it cannot,
1079         perhaps due to resource constraints, make available at least
1080         the minimum amount of information after that test
1081         completes."
1082    ::= { ifMIBObjects 3 }
1083
1084ifTestEntry OBJECT-TYPE
1085    SYNTAX      IfTestEntry
1086    MAX-ACCESS  not-accessible
1087    STATUS      deprecated
1088    DESCRIPTION
1089        "An entry containing objects for invoking tests on an
1090         interface."
1091    AUGMENTS    { ifEntry }
1092    ::= { ifTestTable 1 }
1093
1094IfTestEntry ::= SEQUENCE {
1095    ifTestId        TestAndIncr,
1096    ifTestStatus    INTEGER,
1097    ifTestType      AutonomousType,
1098    ifTestResult    INTEGER,
1099    ifTestCode      OBJECT IDENTIFIER,
1100    ifTestOwner     OwnerString
1101}
1102
1103ifTestId OBJECT-TYPE
1104    SYNTAX      TestAndIncr
1105    MAX-ACCESS  read-write
1106    STATUS      deprecated
1107    DESCRIPTION
1108        "This object identifies the current invocation of the
1109         interface's test."
1110    ::= { ifTestEntry 1 }
1111
1112ifTestStatus OBJECT-TYPE
1113    SYNTAX      INTEGER { notInUse(1), inUse(2) }
1114    MAX-ACCESS  read-write
1115    STATUS      deprecated
1116    DESCRIPTION
1117        "This object indicates whether or not some manager currently
1118         has the necessary 'ownership' required to invoke a test on
1119         this interface.  A write to this object is only successful
1120         when it changes its value from 'notInUse(1)' to 'inUse(2)'.
1121         After completion of a test, the agent resets the value back
1122         to 'notInUse(1)'."
1123    ::= { ifTestEntry 2 }
1124
1125ifTestType OBJECT-TYPE
1126    SYNTAX      AutonomousType
1127    MAX-ACCESS  read-write
1128    STATUS      deprecated
1129    DESCRIPTION
1130        "A control variable used to start and stop operator-
1131         initiated interface tests.  Most OBJECT IDENTIFIER values
1132         assigned to tests are defined elsewhere, in association with
1133         specific types of interface.  However, this document assigns
1134         a value for a full-duplex loopback test, and defines the
1135         special meanings of the subject identifier:
1136
1137             noTest  OBJECT IDENTIFIER ::= { 0 0 }
1138
1139         When the value noTest is written to this object, no action
1140         is taken unless a test is in progress, in which case the
1141         test is aborted.  Writing any other value to this object is
1142
1143
1144         only valid when no test is currently in progress, in which
1145         case the indicated test is initiated.
1146
1147         When read, this object always returns the most recent value
1148         that ifTestType was set to.  If it has not been set since
1149         the last initialization of the network management subsystem
1150         on the agent, a value of noTest is returned."
1151    ::= { ifTestEntry 3 }
1152
1153ifTestResult OBJECT-TYPE
1154    SYNTAX      INTEGER { none(1), success(2), inProgress(3),
1155                    notSupported(4), unAbleToRun(5), aborted(6),
1156                    failed(7) }
1157    MAX-ACCESS  read-only
1158    STATUS      deprecated
1159    DESCRIPTION
1160        "This object contains the result of the most recently
1161         requested test, or the value none(1) if no tests have been
1162         requested since the last reset.  Note that this facility
1163         provides no provision for saving the results of one test
1164         when starting another, as could be required if used by
1165         multiple managers concurrently."
1166    ::= { ifTestEntry 4 }
1167
1168ifTestCode OBJECT-TYPE
1169    SYNTAX      OBJECT IDENTIFIER
1170    MAX-ACCESS  read-only
1171    STATUS      deprecated
1172    DESCRIPTION
1173        "This object contains a code which contains more specific
1174         information on the test result, for example an error-code
1175         after a failed test.  Error codes and other values this
1176         object may take are specific to the type of interface and/or
1177         test.  The value may have the semantics of either the
1178         AutonomousType or InstancePointer textual conventions as
1179         defined in RFC 2579.  The identifier:
1180
1181             testCodeUnknown  OBJECT IDENTIFIER ::= { 0 0 }
1182
1183         is defined for use if no additional result code is
1184         available."
1185    ::= { ifTestEntry 5 }
1186
1187ifTestOwner OBJECT-TYPE
1188    SYNTAX      OwnerString
1189    MAX-ACCESS  read-write
1190    STATUS      deprecated
1191    DESCRIPTION
1192        "The entity which currently has the 'ownership' required to
1193         invoke a test on this interface."
1194    ::= { ifTestEntry 6 }
1195
1196ifRcvAddressTable OBJECT-TYPE
1197    SYNTAX      SEQUENCE OF IfRcvAddressEntry
1198    MAX-ACCESS  not-accessible
1199    STATUS      current
1200    DESCRIPTION
1201        "This table contains an entry for each address (broadcast,
1202         multicast, or uni-cast) for which the system will receive
1203         packets/frames on a particular interface, except as follows:
1204
1205         - for an interface operating in promiscuous mode, entries
1206         are only required for those addresses for which the system
1207         would receive frames were it not operating in promiscuous
1208         mode.
1209
1210
1211         - for 802.5 functional addresses, only one entry is
1212         required, for the address which has the functional address
1213         bit ANDed with the bit mask of all functional addresses for
1214         which the interface will accept frames.
1215
1216         A system is normally able to use any unicast address which
1217         corresponds to an entry in this table as a source address."
1218    ::= { ifMIBObjects 4 }
1219
1220ifRcvAddressEntry OBJECT-TYPE
1221    SYNTAX      IfRcvAddressEntry
1222    MAX-ACCESS  not-accessible
1223    STATUS      current
1224    DESCRIPTION
1225        "A list of objects identifying an address for which the
1226         system will accept packets/frames on the particular
1227         interface identified by the index value ifIndex."
1228    INDEX       { ifIndex, ifRcvAddressAddress }
1229    ::= { ifRcvAddressTable 1 }
1230
1231IfRcvAddressEntry ::= SEQUENCE {
1232    ifRcvAddressAddress     PhysAddress,
1233    ifRcvAddressStatus      RowStatus,
1234    ifRcvAddressType        INTEGER
1235}
1236
1237ifRcvAddressAddress OBJECT-TYPE
1238    SYNTAX      PhysAddress
1239    MAX-ACCESS  not-accessible
1240    STATUS      current
1241    DESCRIPTION
1242        "An address for which the system will accept packets/frames
1243         on this entry's interface."
1244    ::= { ifRcvAddressEntry 1 }
1245
1246ifRcvAddressStatus OBJECT-TYPE
1247    SYNTAX      RowStatus
1248    MAX-ACCESS  read-create
1249    STATUS      current
1250    DESCRIPTION
1251        "This object is used to create and delete rows in the
1252         ifRcvAddressTable."
1253    ::= { ifRcvAddressEntry 2 }
1254
1255ifRcvAddressType OBJECT-TYPE
1256    SYNTAX      INTEGER { other(1), volatile(2), nonVolatile(3) }
1257    MAX-ACCESS  read-create
1258    STATUS      current
1259    DESCRIPTION
1260        "This object has the value nonVolatile(3) for those entries
1261         in the table which are valid and will not be deleted by the
1262         next restart of the managed system.  Entries having the
1263         value volatile(2) are valid and exist, but have not been
1264         saved, so that will not exist after the next restart of the
1265         managed system.  Entries having the value other(1) are valid
1266         and exist but are not classified as to whether they will
1267         continue to exist after the next restart."
1268    DEFVAL      { volatile }
1269    ::= { ifRcvAddressEntry 3 }
1270
1271ifTableLastChange OBJECT-TYPE
1272    SYNTAX      TimeTicks
1273    MAX-ACCESS  read-only
1274    STATUS      current
1275    DESCRIPTION
1276        "The value of sysUpTime at the time of the last creation or
1277         deletion of an entry in the ifTable.  If the number of
1278         entries has been unchanged since the last re-initialization
1279         of the local network management subsystem, then this object
1280         contains a zero value."
1281    ::= { ifMIBObjects 5 }
1282
1283ifStackLastChange OBJECT-TYPE
1284    SYNTAX      TimeTicks
1285    MAX-ACCESS  read-only
1286    STATUS      current
1287    DESCRIPTION
1288        "The value of sysUpTime at the time of the last change of
1289         the (whole) interface stack.  A change of the interface
1290         stack is defined to be any creation, deletion, or change in
1291         value of any instance of ifStackStatus.  If the interface
1292         stack has been unchanged since the last re-initialization of
1293         the local network management subsystem, then this object
1294         contains a zero value."
1295    ::= { ifMIBObjects 6 }
1296
1297ifConformance OBJECT IDENTIFIER
1298    ::= { ifMIB 2 }
1299
1300ifGroups OBJECT IDENTIFIER
1301    ::= { ifConformance 1 }
1302
1303ifCompliances OBJECT IDENTIFIER
1304    ::= { ifConformance 2 }
1305
1306linkDown NOTIFICATION-TYPE
1307    OBJECTS     { ifIndex, ifAdminStatus, ifOperStatus }
1308    STATUS      current
1309    DESCRIPTION
1310        "A linkDown trap signifies that the SNMP entity, acting in
1311         an agent role, has detected that the ifOperStatus object for
1312         one of its communication links is about to enter the down
1313         state from some other state (but not from the notPresent
1314         state).  This other state is indicated by the included value
1315         of ifOperStatus."
1316    ::= { snmpTraps 3 }
1317
1318linkUp NOTIFICATION-TYPE
1319    OBJECTS     { ifIndex, ifAdminStatus, ifOperStatus }
1320    STATUS      current
1321    DESCRIPTION
1322        "A linkUp trap signifies that the SNMP entity, acting in an
1323         agent role, has detected that the ifOperStatus object for
1324         one of its communication links left the down state and
1325         transitioned into some other state (but not into the
1326         notPresent state).  This other state is indicated by the
1327         included value of ifOperStatus."
1328    ::= { snmpTraps 4 }
1329
1330ifGeneralGroup OBJECT-GROUP
1331    OBJECTS     { ifDescr, ifType, ifSpeed, ifPhysAddress, ifAdminStatus,
1332                  ifOperStatus, ifLastChange, ifLinkUpDownTrapEnable,
1333                  ifConnectorPresent, ifHighSpeed, ifName }
1334    STATUS      deprecated
1335    DESCRIPTION
1336        "A collection of objects deprecated in favour of
1337         ifGeneralInformationGroup."
1338    ::= { ifGroups 1 }
1339
1340ifFixedLengthGroup OBJECT-GROUP
1341    OBJECTS     { ifInOctets, ifOutOctets, ifInUnknownProtos, ifInErrors,
1342                  ifOutErrors }
1343    STATUS      current
1344    DESCRIPTION
1345        "A collection of objects providing information specific to
1346         non-high speed (non-high speed interfaces transmit and
1347         receive at speeds less than or equal to 20,000,000
1348         bits/second) character-oriented or fixed-length-transmission
1349         network interfaces."
1350    ::= { ifGroups 2 }
1351
1352ifHCFixedLengthGroup OBJECT-GROUP
1353    OBJECTS     { ifHCInOctets, ifHCOutOctets, ifInOctets, ifOutOctets,
1354                  ifInUnknownProtos, ifInErrors, ifOutErrors }
1355    STATUS      current
1356    DESCRIPTION
1357        "A collection of objects providing information specific to
1358         high speed (greater than 20,000,000 bits/second) character-
1359         oriented or fixed-length-transmission network interfaces."
1360    ::= { ifGroups 3 }
1361
1362ifPacketGroup OBJECT-GROUP
1363    OBJECTS     { ifInOctets, ifOutOctets, ifInUnknownProtos, ifInErrors,
1364                  ifOutErrors, ifMtu, ifInUcastPkts, ifInMulticastPkts,
1365                  ifInBroadcastPkts, ifInDiscards, ifOutUcastPkts,
1366                  ifOutMulticastPkts, ifOutBroadcastPkts, ifOutDiscards,
1367                  ifPromiscuousMode }
1368    STATUS      current
1369    DESCRIPTION
1370        "A collection of objects providing information specific to
1371         non-high speed (non-high speed interfaces transmit and
1372         receive at speeds less than or equal to 20,000,000
1373         bits/second) packet-oriented network interfaces."
1374    ::= { ifGroups 4 }
1375
1376ifHCPacketGroup OBJECT-GROUP
1377    OBJECTS     { ifHCInOctets, ifHCOutOctets, ifInOctets, ifOutOctets,
1378                  ifInUnknownProtos, ifInErrors, ifOutErrors, ifMtu,
1379                  ifInUcastPkts, ifInMulticastPkts, ifInBroadcastPkts,
1380                  ifInDiscards, ifOutUcastPkts, ifOutMulticastPkts,
1381                  ifOutBroadcastPkts, ifOutDiscards, ifPromiscuousMode }
1382    STATUS      current
1383    DESCRIPTION
1384        "A collection of objects providing information specific to
1385         high speed (greater than 20,000,000 bits/second but less
1386         than or equal to 650,000,000 bits/second) packet-oriented
1387         network interfaces."
1388    ::= { ifGroups 5 }
1389
1390ifVHCPacketGroup OBJECT-GROUP
1391    OBJECTS     { ifHCInUcastPkts, ifHCInMulticastPkts,
1392                  ifHCInBroadcastPkts, ifHCOutUcastPkts,
1393                  ifHCOutMulticastPkts, ifHCOutBroadcastPkts,
1394                  ifHCInOctets, ifHCOutOctets, ifInOctets, ifOutOctets,
1395                  ifInUnknownProtos, ifInErrors, ifOutErrors, ifMtu,
1396                  ifInUcastPkts, ifInMulticastPkts, ifInBroadcastPkts,
1397                  ifInDiscards, ifOutUcastPkts, ifOutMulticastPkts,
1398                  ifOutBroadcastPkts, ifOutDiscards, ifPromiscuousMode }
1399    STATUS      current
1400    DESCRIPTION
1401        "A collection of objects providing information specific to
1402         higher speed (greater than 650,000,000 bits/second) packet-
1403         oriented network interfaces."
1404    ::= { ifGroups 6 }
1405
1406ifRcvAddressGroup OBJECT-GROUP
1407    OBJECTS     { ifRcvAddressStatus, ifRcvAddressType }
1408    STATUS      current
1409    DESCRIPTION
1410        "A collection of objects providing information on the
1411         multiple addresses which an interface receives."
1412    ::= { ifGroups 7 }
1413
1414ifTestGroup OBJECT-GROUP
1415    OBJECTS     { ifTestId, ifTestStatus, ifTestType, ifTestResult,
1416                  ifTestCode, ifTestOwner }
1417    STATUS      deprecated
1418    DESCRIPTION
1419        "A collection of objects providing the ability to invoke
1420         tests on an interface."
1421    ::= { ifGroups 8 }
1422
1423ifStackGroup OBJECT-GROUP
1424    OBJECTS     { ifStackStatus }
1425    STATUS      deprecated
1426    DESCRIPTION
1427        "The previous collection of objects providing information on
1428         the layering of MIB-II interfaces."
1429    ::= { ifGroups 9 }
1430
1431ifGeneralInformationGroup OBJECT-GROUP
1432    OBJECTS     { ifIndex, ifDescr, ifType, ifSpeed, ifPhysAddress,
1433                  ifAdminStatus, ifOperStatus, ifLastChange,
1434                  ifLinkUpDownTrapEnable, ifConnectorPresent,
1435                  ifHighSpeed, ifName, ifNumber, ifAlias,
1436                  ifTableLastChange }
1437    STATUS      current
1438    DESCRIPTION
1439        "A collection of objects providing information applicable to
1440         all network interfaces."
1441    ::= { ifGroups 10 }
1442
1443ifStackGroup2 OBJECT-GROUP
1444    OBJECTS     { ifStackStatus, ifStackLastChange }
1445    STATUS      current
1446    DESCRIPTION
1447        "A collection of objects providing information on the
1448         layering of MIB-II interfaces."
1449    ::= { ifGroups 11 }
1450
1451ifOldObjectsGroup OBJECT-GROUP
1452    OBJECTS     { ifInNUcastPkts, ifOutNUcastPkts, ifOutQLen, ifSpecific }
1453    STATUS      deprecated
1454    DESCRIPTION
1455        "The collection of objects deprecated from the original MIB-
1456         II interfaces group."
1457    ::= { ifGroups 12 }
1458
1459ifCounterDiscontinuityGroup OBJECT-GROUP
1460    OBJECTS     { ifCounterDiscontinuityTime }
1461    STATUS      current
1462    DESCRIPTION
1463        "A collection of objects providing information specific to
1464         interface counter discontinuities."
1465    ::= { ifGroups 13 }
1466
1467linkUpDownNotificationsGroup NOTIFICATION-GROUP
1468    NOTIFICATIONS { linkUp, linkDown }
1469    STATUS      current
1470    DESCRIPTION
1471        "The notifications which indicate specific changes in the
1472         value of ifOperStatus."
1473    ::= { ifGroups 14 }
1474
1475ifCompliance MODULE-COMPLIANCE
1476    STATUS      deprecated
1477    DESCRIPTION
1478        "A compliance statement defined in a previous version of
1479         this MIB module, for SNMP entities which have network
1480         interfaces."
1481
1482    MODULE      -- this module
1483
1484        MANDATORY-GROUPS        { ifGeneralGroup, ifStackGroup }
1485
1486        GROUP   ifFixedLengthGroup
1487        DESCRIPTION
1488              "This group is mandatory for all network interfaces which
1489               are character-oriented or transmit data in fixed-length
1490               transmission units."
1491
1492        GROUP   ifHCFixedLengthGroup
1493        DESCRIPTION
1494              "This group is mandatory only for those network interfaces
1495               which are character-oriented or transmit data in fixed-
1496               length transmission units, and for which the value of the
1497               corresponding instance of ifSpeed is greater than 20,000,000
1498               bits/second."
1499
1500        GROUP   ifPacketGroup
1501        DESCRIPTION
1502              "This group is mandatory for all network interfaces which
1503               are packet-oriented."
1504
1505        GROUP   ifHCPacketGroup
1506        DESCRIPTION
1507              "This group is mandatory only for those network interfaces
1508               which are packet-oriented and for which the value of the
1509               corresponding instance of ifSpeed is greater than
1510               650,000,000 bits/second."
1511
1512        GROUP   ifTestGroup
1513        DESCRIPTION
1514              "This group is optional.  Media-specific MIBs which require
1515               interface tests are strongly encouraged to use this group
1516               for invoking tests and reporting results.  A medium specific
1517               MIB which has mandatory tests may make implementation of
1518
1519
1520               this group mandatory."
1521
1522        GROUP   ifRcvAddressGroup
1523        DESCRIPTION
1524              "The applicability of this group MUST be defined by the
1525               media-specific MIBs.  Media-specific MIBs must define the
1526               exact meaning, use, and semantics of the addresses in this
1527               group."
1528
1529        OBJECT  ifLinkUpDownTrapEnable
1530        MIN-ACCESS  read-only
1531        DESCRIPTION
1532              "Write access is not required."
1533
1534        OBJECT  ifPromiscuousMode
1535        MIN-ACCESS  read-only
1536        DESCRIPTION
1537              "Write access is not required."
1538
1539        OBJECT  ifStackStatus
1540        SYNTAX  RowStatus { active(1) }
1541        MIN-ACCESS  read-only
1542        DESCRIPTION
1543              "Write access is not required, and only one of the six
1544               enumerated values for the RowStatus textual convention need
1545               be supported, specifically: active(1)."
1546
1547        OBJECT  ifAdminStatus
1548        SYNTAX  INTEGER { up(1), down(2) }
1549        MIN-ACCESS  read-only
1550        DESCRIPTION
1551              "Write access is not required, nor is support for the value
1552               testing(3)."
1553
1554    ::= { ifCompliances 1 }
1555
1556ifCompliance2 MODULE-COMPLIANCE
1557    STATUS      deprecated
1558    DESCRIPTION
1559        "A compliance statement defined in a previous version of
1560         this MIB module, for SNMP entities which have network
1561         interfaces."
1562
1563    MODULE      -- this module
1564
1565        MANDATORY-GROUPS        { ifGeneralInformationGroup,
1566                  ifStackGroup2, ifCounterDiscontinuityGroup }
1567
1568        GROUP   ifFixedLengthGroup
1569        DESCRIPTION
1570              "This group is mandatory for all network interfaces which
1571               are character-oriented or transmit data in fixed-length
1572               transmission units."
1573
1574        GROUP   ifHCFixedLengthGroup
1575        DESCRIPTION
1576              "This group is mandatory only for those network interfaces
1577               which are character-oriented or transmit data in fixed-
1578               length transmission units, and for which the value of the
1579               corresponding instance of ifSpeed is greater than 20,000,000
1580               bits/second."
1581
1582        GROUP   ifPacketGroup
1583        DESCRIPTION
1584              "This group is mandatory for all network interfaces which
1585               are packet-oriented."
1586
1587        GROUP   ifHCPacketGroup
1588        DESCRIPTION
1589              "This group is mandatory only for those network interfaces
1590               which are packet-oriented and for which the value of the
1591               corresponding instance of ifSpeed is greater than
1592               650,000,000 bits/second."
1593
1594        GROUP   ifRcvAddressGroup
1595        DESCRIPTION
1596              "The applicability of this group MUST be defined by the
1597               media-specific MIBs.  Media-specific MIBs must define the
1598               exact meaning, use, and semantics of the addresses in this
1599               group."
1600
1601        OBJECT  ifLinkUpDownTrapEnable
1602        MIN-ACCESS  read-only
1603        DESCRIPTION
1604              "Write access is not required."
1605
1606        OBJECT  ifPromiscuousMode
1607        MIN-ACCESS  read-only
1608        DESCRIPTION
1609              "Write access is not required."
1610
1611        OBJECT  ifStackStatus
1612        SYNTAX  RowStatus { active(1) }
1613        MIN-ACCESS  read-only
1614        DESCRIPTION
1615              "Write access is not required, and only one of the six
1616               enumerated values for the RowStatus textual convention need
1617               be supported, specifically: active(1)."
1618
1619        OBJECT  ifAdminStatus
1620        SYNTAX  INTEGER { up(1), down(2) }
1621        MIN-ACCESS  read-only
1622        DESCRIPTION
1623              "Write access is not required, nor is support for the value
1624               testing(3)."
1625
1626        OBJECT  ifAlias
1627        MIN-ACCESS  read-only
1628        DESCRIPTION
1629              "Write access is not required."
1630
1631    ::= { ifCompliances 2 }
1632
1633ifCompliance3 MODULE-COMPLIANCE
1634    STATUS      current
1635    DESCRIPTION
1636        "The compliance statement for SNMP entities which have
1637         network interfaces."
1638
1639    MODULE      -- this module
1640
1641        MANDATORY-GROUPS        { ifGeneralInformationGroup,
1642                  linkUpDownNotificationsGroup }
1643
1644        GROUP   ifFixedLengthGroup
1645        DESCRIPTION
1646              "This group is mandatory for those network interfaces which
1647               are character-oriented or transmit data in fixed-length
1648               transmission units, and for which the value of the
1649               corresponding instance of ifSpeed is less than or equal to
1650               20,000,000 bits/second."
1651
1652        GROUP   ifHCFixedLengthGroup
1653        DESCRIPTION
1654              "This group is mandatory for those network interfaces which
1655               are character-oriented or transmit data in fixed-length
1656               transmission units, and for which the value of the
1657               corresponding instance of ifSpeed is greater than 20,000,000
1658               bits/second."
1659
1660        GROUP   ifPacketGroup
1661        DESCRIPTION
1662              "This group is mandatory for those network interfaces which
1663               are packet-oriented, and for which the value of the
1664               corresponding instance of ifSpeed is less than or equal to
1665               20,000,000 bits/second."
1666
1667        GROUP   ifHCPacketGroup
1668        DESCRIPTION
1669              "This group is mandatory only for those network interfaces
1670               which are packet-oriented and for which the value of the
1671               corresponding instance of ifSpeed is greater than 20,000,000
1672               bits/second but less than or equal to 650,000,000
1673               bits/second."
1674
1675        GROUP   ifVHCPacketGroup
1676        DESCRIPTION
1677              "This group is mandatory only for those network interfaces
1678               which are packet-oriented and for which the value of the
1679               corresponding instance of ifSpeed is greater than
1680               650,000,000 bits/second."
1681
1682        GROUP   ifCounterDiscontinuityGroup
1683        DESCRIPTION
1684              "This group is mandatory for those network interfaces that
1685               are required to maintain counters (i.e., those for which one
1686               of the ifFixedLengthGroup, ifHCFixedLengthGroup,
1687               ifPacketGroup, ifHCPacketGroup, or ifVHCPacketGroup is
1688               mandatory)."
1689
1690        GROUP   ifRcvAddressGroup
1691        DESCRIPTION
1692              "The applicability of this group MUST be defined by the
1693               media-specific MIBs.  Media-specific MIBs must define the
1694               exact meaning, use, and semantics of the addresses in this
1695               group."
1696
1697        OBJECT  ifLinkUpDownTrapEnable
1698        MIN-ACCESS  read-only
1699        DESCRIPTION
1700              "Write access is not required."
1701
1702        OBJECT  ifPromiscuousMode
1703        MIN-ACCESS  read-only
1704        DESCRIPTION
1705              "Write access is not required."
1706
1707        OBJECT  ifAdminStatus
1708        SYNTAX  INTEGER { up(1), down(2) }
1709        MIN-ACCESS  read-only
1710        DESCRIPTION
1711              "Write access is not required, nor is support for the value
1712               testing(3)."
1713
1714        OBJECT  ifAlias
1715        MIN-ACCESS  read-only
1716        DESCRIPTION
1717              "Write access is not required."
1718
1719    ::= { ifCompliances 3 }
1720
1721END -- end of module IF-MIB.
1722