1
IF-MIB DEFINITIONS ::= BEGIN
4
MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Counter64,
5
Integer32, TimeTicks, mib-2,
6
NOTIFICATION-TYPE FROM SNMPv2-SMI
7
TEXTUAL-CONVENTION, DisplayString,
8
PhysAddress, TruthValue, RowStatus,
9
TimeStamp, AutonomousType, TestAndIncr FROM SNMPv2-TC
10
MODULE-COMPLIANCE, OBJECT-GROUP,
11
NOTIFICATION-GROUP FROM SNMPv2-CONF
12
snmpTraps FROM SNMPv2-MIB
13
IANAifType FROM IANAifType-MIB;
16
LAST-UPDATED "200006140000Z"
17
ORGANIZATION "IETF Interfaces MIB Working Group"
22
San Jose, CA 95134-1706
28
"The MIB module to describe generic objects for network
29
interface sub-layers. This MIB is an updated version of
30
MIB-II's ifTable, and incorporates the extensions defined in
33
REVISION "200006140000Z"
35
"Clarifications agreed upon by the Interfaces MIB WG, and
36
published as RFC 2863."
37
REVISION "199602282155Z"
39
"Revisions made by the Interfaces MIB WG, and published in
41
REVISION "199311082155Z"
43
"Initial revision, published as part of RFC 1573."
46
ifMIBObjects OBJECT IDENTIFIER ::= { ifMIB 1 }
48
interfaces OBJECT IDENTIFIER ::= { mib-2 2 }
54
OwnerString ::= TEXTUAL-CONVENTION
58
"This data type is used to model an administratively
59
assigned name of the owner of a resource. This information
60
is taken from the NVT ASCII character set. It is suggested
61
that this name contain one or more of the following: ASCII
62
form of the manager station's transport address, management
63
station name (e.g., domain name), network management
64
personnel's name, location, or phone number. In some cases
65
the agent itself will be the owner of an entry. In these
66
cases, this string shall be set to a string starting with
68
SYNTAX OCTET STRING (SIZE(0..255))
71
InterfaceIndex ::= TEXTUAL-CONVENTION
75
"A unique value, greater than zero, for each interface or
76
interface sub-layer in the managed system. It is
77
recommended that values are assigned contiguously starting
78
from 1. The value for each interface sub-layer must remain
79
constant at least from one re-initialization of the entity's
80
network management system to the next re-initialization."
81
SYNTAX Integer32 (1..2147483647)
83
InterfaceIndexOrZero ::= TEXTUAL-CONVENTION
87
"This textual convention is an extension of the
88
InterfaceIndex convention. The latter defines a greater
89
than zero value used to identify an interface or interface
90
sub-layer in the managed system. This extension permits the
91
additional value of zero. the value zero is object-specific
92
and must therefore be defined as part of the description of
93
any object which uses this syntax. Examples of the usage of
94
zero might include situations where interface was unknown,
95
or when none or all interfaces need to be referenced."
96
SYNTAX Integer32 (0..2147483647)
103
"The number of network interfaces (regardless of their
104
current state) present on this system."
107
ifTableLastChange OBJECT-TYPE
112
"The value of sysUpTime at the time of the last creation or
113
deletion of an entry in the ifTable. If the number of
114
entries has been unchanged since the last re-initialization
115
of the local network management subsystem, then this object
116
contains a zero value."
117
::= { ifMIBObjects 5 }
123
SYNTAX SEQUENCE OF IfEntry
124
MAX-ACCESS not-accessible
127
"A list of interface entries. The number of entries is
128
given by the value of ifNumber."
133
MAX-ACCESS not-accessible
136
"An entry containing management information applicable to a
137
particular interface."
143
ifIndex InterfaceIndex,
144
ifDescr DisplayString,
148
ifPhysAddress PhysAddress,
149
ifAdminStatus INTEGER,
150
ifOperStatus INTEGER,
151
ifLastChange TimeTicks,
152
ifInOctets Counter32,
153
ifInUcastPkts Counter32,
154
ifInNUcastPkts Counter32, -- deprecated
155
ifInDiscards Counter32,
156
ifInErrors Counter32,
157
ifInUnknownProtos Counter32,
158
ifOutOctets Counter32,
159
ifOutUcastPkts Counter32,
160
ifOutNUcastPkts Counter32, -- deprecated
161
ifOutDiscards Counter32,
162
ifOutErrors Counter32,
163
ifOutQLen Gauge32, -- deprecated
164
ifSpecific OBJECT IDENTIFIER -- deprecated
168
SYNTAX InterfaceIndex
172
"A unique value, greater than zero, for each interface. It
173
is recommended that values are assigned contiguously
174
starting from 1. The value for each interface sub-layer
175
must remain constant at least from one re-initialization of
176
the entity's network management system to the next re-
181
SYNTAX DisplayString (SIZE (0..255))
185
"A textual string containing information about the
186
interface. This string should include the name of the
187
manufacturer, the product name and the version of the
188
interface hardware/software."
196
"The type of interface. Additional values for ifType are
197
assigned by the Internet Assigned Numbers Authority (IANA),
198
through updating the syntax of the IANAifType textual
207
"The size of the largest packet which can be sent/received
208
on the interface, specified in octets. For interfaces that
209
are used for transmitting network datagrams, this is the
210
size of the largest network datagram that can be sent on the
219
"An estimate of the interface's current bandwidth in bits
220
per second. For interfaces which do not vary in bandwidth
221
or for those where no accurate estimation can be made, this
222
object should contain the nominal bandwidth. If the
223
bandwidth of the interface is greater than the maximum value
224
reportable by this object then this object should report its
225
maximum value (4,294,967,295) and ifHighSpeed must be used
226
to report the interace's speed. For a sub-layer which has
227
no concept of bandwidth, this object should be zero."
230
ifPhysAddress OBJECT-TYPE
235
"The interface's address at its protocol sub-layer. For
236
example, for an 802.x interface, this object normally
237
contains a MAC address. The interface's media-specific MIB
238
must define the bit and byte ordering and the format of the
239
value of this object. For interfaces which do not have such
240
an address (e.g., a serial line), this object should contain
241
an octet string of zero length."
244
ifAdminStatus OBJECT-TYPE
246
up(1), -- ready to pass packets
248
testing(3) -- in some test mode
250
MAX-ACCESS read-write
253
"The desired state of the interface. The testing(3) state
254
indicates that no operational packets can be passed. When a
255
managed system initializes, all interfaces start with
256
ifAdminStatus in the down(2) state. As a result of either
257
explicit management action or per configuration information
258
retained by the managed system, ifAdminStatus is then
259
changed to either the up(1) or testing(3) states (or remains
260
in the down(2) state)."
263
ifOperStatus OBJECT-TYPE
265
up(1), -- ready to pass packets
267
testing(3), -- in some test mode
268
unknown(4), -- status can not be determined
271
notPresent(6), -- some component is missing
272
lowerLayerDown(7) -- down due to state of
273
-- lower-layer interface(s)
278
"The current operational state of the interface. The
279
testing(3) state indicates that no operational packets can
280
be passed. If ifAdminStatus is down(2) then ifOperStatus
281
should be down(2). If ifAdminStatus is changed to up(1)
282
then ifOperStatus should change to up(1) if the interface is
283
ready to transmit and receive network traffic; it should
284
change to dormant(5) if the interface is waiting for
285
external actions (such as a serial line waiting for an
286
incoming connection); it should remain in the down(2) state
287
if and only if there is a fault that prevents it from going
288
to the up(1) state; it should remain in the notPresent(6)
289
state if the interface has missing (typically, hardware)
293
ifLastChange OBJECT-TYPE
298
"The value of sysUpTime at the time the interface entered
299
its current operational state. If the current state was
300
entered prior to the last re-initialization of the local
301
network management subsystem, then this object contains a
305
ifInOctets OBJECT-TYPE
310
"The total number of octets received on the interface,
311
including framing characters.
313
Discontinuities in the value of this counter can occur at
314
re-initialization of the management system, and at other
315
times as indicated by the value of
316
ifCounterDiscontinuityTime."
319
ifInUcastPkts OBJECT-TYPE
324
"The number of packets, delivered by this sub-layer to a
325
higher (sub-)layer, which were not addressed to a multicast
326
or broadcast address at this sub-layer.
328
Discontinuities in the value of this counter can occur at
329
re-initialization of the management system, and at other
330
times as indicated by the value of
331
ifCounterDiscontinuityTime."
334
ifInNUcastPkts OBJECT-TYPE
339
"The number of packets, delivered by this sub-layer to a
340
higher (sub-)layer, which were addressed to a multicast or
341
broadcast address at this sub-layer.
343
Discontinuities in the value of this counter can occur at
344
re-initialization of the management system, and at other
345
times as indicated by the value of
346
ifCounterDiscontinuityTime.
348
This object is deprecated in favour of ifInMulticastPkts and
352
ifInDiscards OBJECT-TYPE
357
"The number of inbound packets which were chosen to be
358
discarded even though no errors had been detected to prevent
360
their being deliverable to a higher-layer protocol. One
361
possible reason for discarding such a packet could be to
362
free up buffer space.
364
Discontinuities in the value of this counter can occur at
365
re-initialization of the management system, and at other
366
times as indicated by the value of
367
ifCounterDiscontinuityTime."
370
ifInErrors OBJECT-TYPE
375
"For packet-oriented interfaces, the number of inbound
376
packets that contained errors preventing them from being
377
deliverable to a higher-layer protocol. For character-
378
oriented or fixed-length interfaces, the number of inbound
379
transmission units that contained errors preventing them
380
from being deliverable to a higher-layer protocol.
382
Discontinuities in the value of this counter can occur at
383
re-initialization of the management system, and at other
384
times as indicated by the value of
385
ifCounterDiscontinuityTime."
388
ifInUnknownProtos OBJECT-TYPE
393
"For packet-oriented interfaces, the number of packets
394
received via the interface which were discarded because of
395
an unknown or unsupported protocol. For character-oriented
396
or fixed-length interfaces that support protocol
397
multiplexing the number of transmission units received via
398
the interface which were discarded because of an unknown or
399
unsupported protocol. For any interface that does not
400
support protocol multiplexing, this counter will always be
403
Discontinuities in the value of this counter can occur at
404
re-initialization of the management system, and at other
405
times as indicated by the value of
406
ifCounterDiscontinuityTime."
409
ifOutOctets OBJECT-TYPE
414
"The total number of octets transmitted out of the
415
interface, including framing characters.
417
Discontinuities in the value of this counter can occur at
418
re-initialization of the management system, and at other
419
times as indicated by the value of
420
ifCounterDiscontinuityTime."
423
ifOutUcastPkts OBJECT-TYPE
428
"The total number of packets that higher-level protocols
429
requested be transmitted, and which were not addressed to a
430
multicast or broadcast address at this sub-layer, including
431
those that were discarded or not sent.
433
Discontinuities in the value of this counter can occur at
434
re-initialization of the management system, and at other
435
times as indicated by the value of
436
ifCounterDiscontinuityTime."
439
ifOutNUcastPkts OBJECT-TYPE
444
"The total number of packets that higher-level protocols
445
requested be transmitted, and which were addressed to a
446
multicast or broadcast address at this sub-layer, including
447
those that were discarded or not sent.
449
Discontinuities in the value of this counter can occur at
450
re-initialization of the management system, and at other
451
times as indicated by the value of
452
ifCounterDiscontinuityTime.
454
This object is deprecated in favour of ifOutMulticastPkts
455
and ifOutBroadcastPkts."
458
ifOutDiscards OBJECT-TYPE
463
"The number of outbound packets which were chosen to be
464
discarded even though no errors had been detected to prevent
465
their being transmitted. One possible reason for discarding
466
such a packet could be to free up buffer space.
468
Discontinuities in the value of this counter can occur at
469
re-initialization of the management system, and at other
470
times as indicated by the value of
471
ifCounterDiscontinuityTime."
474
ifOutErrors OBJECT-TYPE
479
"For packet-oriented interfaces, the number of outbound
480
packets that could not be transmitted because of errors.
481
For character-oriented or fixed-length interfaces, the
482
number of outbound transmission units that could not be
483
transmitted because of errors.
485
Discontinuities in the value of this counter can occur at
486
re-initialization of the management system, and at other
487
times as indicated by the value of
488
ifCounterDiscontinuityTime."
491
ifOutQLen OBJECT-TYPE
496
"The length of the output packet queue (in packets)."
499
ifSpecific OBJECT-TYPE
500
SYNTAX OBJECT IDENTIFIER
504
"A reference to MIB definitions specific to the particular
505
media being used to realize the interface. It is
507
recommended that this value point to an instance of a MIB
508
object in the media-specific MIB, i.e., that this object
509
have the semantics associated with the InstancePointer
510
textual convention defined in RFC 2579. In fact, it is
511
recommended that the media-specific MIB specify what value
512
ifSpecific should/can take for values of ifType. If no MIB
513
definitions specific to the particular media are available,
514
the value should be set to the OBJECT IDENTIFIER { 0 0 }."
522
SYNTAX SEQUENCE OF IfXEntry
523
MAX-ACCESS not-accessible
526
"A list of interface entries. The number of entries is
527
given by the value of ifNumber. This table contains
528
additional objects for the interface table."
529
::= { ifMIBObjects 1 }
533
MAX-ACCESS not-accessible
536
"An entry containing additional management information
537
applicable to a particular interface."
543
ifName DisplayString,
544
ifInMulticastPkts Counter32,
545
ifInBroadcastPkts Counter32,
546
ifOutMulticastPkts Counter32,
547
ifOutBroadcastPkts Counter32,
548
ifHCInOctets Counter64,
549
ifHCInUcastPkts Counter64,
550
ifHCInMulticastPkts Counter64,
551
ifHCInBroadcastPkts Counter64,
552
ifHCOutOctets Counter64,
553
ifHCOutUcastPkts Counter64,
554
ifHCOutMulticastPkts Counter64,
555
ifHCOutBroadcastPkts Counter64,
556
ifLinkUpDownTrapEnable INTEGER,
558
ifPromiscuousMode TruthValue,
559
ifConnectorPresent TruthValue,
560
ifAlias DisplayString,
561
ifCounterDiscontinuityTime TimeStamp
569
"The textual name of the interface. The value of this
570
object should be the name of the interface as assigned by
571
the local device and should be suitable for use in commands
572
entered at the device's `console'. This might be a text
573
name, such as `le0' or a simple port number, such as `1',
574
depending on the interface naming syntax of the device. If
575
several entries in the ifTable together represent a single
576
interface as named by the device, then each will have the
577
same value of ifName. Note that for an agent which responds
578
to SNMP queries concerning an interface on some other
579
(proxied) device, then the value of ifName for such an
580
interface is the proxied device's local name for it.
582
If there is no local name, or this object is otherwise not
583
applicable, then this object contains a zero-length string."
586
ifInMulticastPkts OBJECT-TYPE
591
"The number of packets, delivered by this sub-layer to a
592
higher (sub-)layer, which were addressed to a multicast
593
address at this sub-layer. For a MAC layer protocol, this
594
includes both Group and Functional addresses.
596
Discontinuities in the value of this counter can occur at
597
re-initialization of the management system, and at other
599
times as indicated by the value of
600
ifCounterDiscontinuityTime."
603
ifInBroadcastPkts OBJECT-TYPE
608
"The number of packets, delivered by this sub-layer to a
609
higher (sub-)layer, which were addressed to a broadcast
610
address at this sub-layer.
612
Discontinuities in the value of this counter can occur at
613
re-initialization of the management system, and at other
614
times as indicated by the value of
615
ifCounterDiscontinuityTime."
618
ifOutMulticastPkts OBJECT-TYPE
623
"The total number of packets that higher-level protocols
624
requested be transmitted, and which were addressed to a
625
multicast address at this sub-layer, including those that
626
were discarded or not sent. For a MAC layer protocol, this
627
includes both Group and Functional addresses.
629
Discontinuities in the value of this counter can occur at
630
re-initialization of the management system, and at other
631
times as indicated by the value of
632
ifCounterDiscontinuityTime."
635
ifOutBroadcastPkts OBJECT-TYPE
640
"The total number of packets that higher-level protocols
641
requested be transmitted, and which were addressed to a
642
broadcast address at this sub-layer, including those that
643
were discarded or not sent.
645
Discontinuities in the value of this counter can occur at
646
re-initialization of the management system, and at other
648
times as indicated by the value of
649
ifCounterDiscontinuityTime."
655
ifHCInOctets OBJECT-TYPE
660
"The total number of octets received on the interface,
661
including framing characters. This object is a 64-bit
662
version of ifInOctets.
664
Discontinuities in the value of this counter can occur at
665
re-initialization of the management system, and at other
666
times as indicated by the value of
667
ifCounterDiscontinuityTime."
670
ifHCInUcastPkts OBJECT-TYPE
675
"The number of packets, delivered by this sub-layer to a
676
higher (sub-)layer, which were not addressed to a multicast
677
or broadcast address at this sub-layer. This object is a
678
64-bit version of ifInUcastPkts.
680
Discontinuities in the value of this counter can occur at
681
re-initialization of the management system, and at other
682
times as indicated by the value of
683
ifCounterDiscontinuityTime."
686
ifHCInMulticastPkts OBJECT-TYPE
691
"The number of packets, delivered by this sub-layer to a
692
higher (sub-)layer, which were addressed to a multicast
693
address at this sub-layer. For a MAC layer protocol, this
694
includes both Group and Functional addresses. This object
695
is a 64-bit version of ifInMulticastPkts.
697
Discontinuities in the value of this counter can occur at
698
re-initialization of the management system, and at other
699
times as indicated by the value of
700
ifCounterDiscontinuityTime."
703
ifHCInBroadcastPkts OBJECT-TYPE
708
"The number of packets, delivered by this sub-layer to a
709
higher (sub-)layer, which were addressed to a broadcast
710
address at this sub-layer. This object is a 64-bit version
711
of ifInBroadcastPkts.
713
Discontinuities in the value of this counter can occur at
714
re-initialization of the management system, and at other
715
times as indicated by the value of
716
ifCounterDiscontinuityTime."
719
ifHCOutOctets OBJECT-TYPE
724
"The total number of octets transmitted out of the
725
interface, including framing characters. This object is a
726
64-bit version of ifOutOctets.
728
Discontinuities in the value of this counter can occur at
729
re-initialization of the management system, and at other
730
times as indicated by the value of
731
ifCounterDiscontinuityTime."
734
ifHCOutUcastPkts OBJECT-TYPE
739
"The total number of packets that higher-level protocols
740
requested be transmitted, and which were not addressed to a
741
multicast or broadcast address at this sub-layer, including
742
those that were discarded or not sent. This object is a
743
64-bit version of ifOutUcastPkts.
745
Discontinuities in the value of this counter can occur at
746
re-initialization of the management system, and at other
747
times as indicated by the value of
748
ifCounterDiscontinuityTime."
751
ifHCOutMulticastPkts OBJECT-TYPE
756
"The total number of packets that higher-level protocols
757
requested be transmitted, and which were addressed to a
758
multicast address at this sub-layer, including those that
759
were discarded or not sent. For a MAC layer protocol, this
760
includes both Group and Functional addresses. This object
761
is a 64-bit version of ifOutMulticastPkts.
763
Discontinuities in the value of this counter can occur at
764
re-initialization of the management system, and at other
765
times as indicated by the value of
766
ifCounterDiscontinuityTime."
769
ifHCOutBroadcastPkts OBJECT-TYPE
774
"The total number of packets that higher-level protocols
775
requested be transmitted, and which were addressed to a
776
broadcast address at this sub-layer, including those that
777
were discarded or not sent. This object is a 64-bit version
778
of ifOutBroadcastPkts.
780
Discontinuities in the value of this counter can occur at
781
re-initialization of the management system, and at other
782
times as indicated by the value of
783
ifCounterDiscontinuityTime."
786
ifLinkUpDownTrapEnable OBJECT-TYPE
787
SYNTAX INTEGER { enabled(1), disabled(2) }
788
MAX-ACCESS read-write
791
"Indicates whether linkUp/linkDown traps should be generated
794
By default, this object should have the value enabled(1) for
795
interfaces which do not operate on 'top' of any other
796
interface (as defined in the ifStackTable), and disabled(2)
800
ifHighSpeed OBJECT-TYPE
805
"An estimate of the interface's current bandwidth in units
806
of 1,000,000 bits per second. If this object reports a
807
value of `n' then the speed of the interface is somewhere in
808
the range of `n-500,000' to `n+499,999'. For interfaces
809
which do not vary in bandwidth or for those where no
810
accurate estimation can be made, this object should contain
811
the nominal bandwidth. For a sub-layer which has no concept
812
of bandwidth, this object should be zero."
815
ifPromiscuousMode OBJECT-TYPE
817
MAX-ACCESS read-write
820
"This object has a value of false(2) if this interface only
821
accepts packets/frames that are addressed to this station.
822
This object has a value of true(1) when the station accepts
823
all packets/frames transmitted on the media. The value
824
true(1) is only legal on certain types of media. If legal,
825
setting this object to a value of true(1) may require the
826
interface to be reset before becoming effective.
828
The value of ifPromiscuousMode does not affect the reception
829
of broadcast and multicast packets/frames by the interface."
832
ifConnectorPresent OBJECT-TYPE
837
"This object has the value 'true(1)' if the interface
838
sublayer has a physical connector and the value 'false(2)'
843
SYNTAX DisplayString (SIZE(0..64))
844
MAX-ACCESS read-write
847
"This object is an 'alias' name for the interface as
848
specified by a network manager, and provides a non-volatile
849
'handle' for the interface.
851
On the first instantiation of an interface, the value of
852
ifAlias associated with that interface is the zero-length
853
string. As and when a value is written into an instance of
854
ifAlias through a network management set operation, then the
855
agent must retain the supplied value in the ifAlias instance
856
associated with the same interface for as long as that
857
interface remains instantiated, including across all re-
858
initializations/reboots of the network management system,
859
including those which result in a change of the interface's
862
An example of the value which a network manager might store
863
in this object for a WAN interface is the (Telco's) circuit
864
number/identifier of the interface.
866
Some agents may support write-access only for interfaces
867
having particular values of ifType. An agent which supports
868
write access to this object is required to keep the value in
869
non-volatile storage, but it may limit the length of new
870
values depending on how much storage is already occupied by
871
the current values for other interfaces."
874
ifCounterDiscontinuityTime OBJECT-TYPE
879
"The value of sysUpTime on the most recent occasion at which
880
any one or more of this interface's counters suffered a
881
discontinuity. The relevant counters are the specific
882
instances associated with this interface of any Counter32 or
884
Counter64 object contained in the ifTable or ifXTable. If
885
no such discontinuities have occurred since the last re-
886
initialization of the local management subsystem, then this
887
object contains a zero value."
893
ifStackTable OBJECT-TYPE
894
SYNTAX SEQUENCE OF IfStackEntry
895
MAX-ACCESS not-accessible
898
"The table containing information on the relationships
899
between the multiple sub-layers of network interfaces. In
900
particular, it contains information on which sub-layers run
901
'on top of' which other sub-layers, where each sub-layer
902
corresponds to a conceptual row in the ifTable. For
903
example, when the sub-layer with ifIndex value x runs over
904
the sub-layer with ifIndex value y, then this table
907
ifStackStatus.x.y=active
909
For each ifIndex value, I, which identifies an active
910
interface, there are always at least two instantiated rows
911
in this table associated with I. For one of these rows, I
912
is the value of ifStackHigherLayer; for the other, I is the
913
value of ifStackLowerLayer. (If I is not involved in
914
multiplexing, then these are the only two rows associated
917
For example, two rows exist even for an interface which has
918
no others stacked on top or below it:
920
ifStackStatus.0.x=active
921
ifStackStatus.x.0=active "
922
::= { ifMIBObjects 2 }
924
ifStackEntry OBJECT-TYPE
926
MAX-ACCESS not-accessible
929
"Information on a particular relationship between two sub-
930
layers, specifying that one sub-layer runs on 'top' of the
931
other sub-layer. Each sub-layer corresponds to a conceptual
933
INDEX { ifStackHigherLayer, ifStackLowerLayer }
934
::= { ifStackTable 1 }
938
ifStackHigherLayer InterfaceIndexOrZero,
939
ifStackLowerLayer InterfaceIndexOrZero,
940
ifStackStatus RowStatus
943
ifStackHigherLayer OBJECT-TYPE
944
SYNTAX InterfaceIndexOrZero
945
MAX-ACCESS not-accessible
948
"The value of ifIndex corresponding to the higher sub-layer
949
of the relationship, i.e., the sub-layer which runs on 'top'
950
of the sub-layer identified by the corresponding instance of
951
ifStackLowerLayer. If there is no higher sub-layer (below
952
the internetwork layer), then this object has the value 0."
953
::= { ifStackEntry 1 }
955
ifStackLowerLayer OBJECT-TYPE
956
SYNTAX InterfaceIndexOrZero
957
MAX-ACCESS not-accessible
960
"The value of ifIndex corresponding to the lower sub-layer
961
of the relationship, i.e., the sub-layer which runs 'below'
962
the sub-layer identified by the corresponding instance of
963
ifStackHigherLayer. If there is no lower sub-layer, then
964
this object has the value 0."
965
::= { ifStackEntry 2 }
967
ifStackStatus OBJECT-TYPE
969
MAX-ACCESS read-create
972
"The status of the relationship between two sub-layers.
974
Changing the value of this object from 'active' to
975
'notInService' or 'destroy' will likely have consequences up
976
and down the interface stack. Thus, write access to this
977
object is likely to be inappropriate for some types of
978
interfaces, and many implementations will choose not to
979
support write-access for any type of interface."
980
::= { ifStackEntry 3 }
982
ifStackLastChange OBJECT-TYPE
987
"The value of sysUpTime at the time of the last change of
988
the (whole) interface stack. A change of the interface
989
stack is defined to be any creation, deletion, or change in
990
value of any instance of ifStackStatus. If the interface
991
stack has been unchanged since the last re-initialization of
992
the local network management subsystem, then this object
993
contains a zero value."
994
::= { ifMIBObjects 6 }
999
ifRcvAddressTable OBJECT-TYPE
1000
SYNTAX SEQUENCE OF IfRcvAddressEntry
1001
MAX-ACCESS not-accessible
1004
"This table contains an entry for each address (broadcast,
1005
multicast, or uni-cast) for which the system will receive
1006
packets/frames on a particular interface, except as follows:
1008
- for an interface operating in promiscuous mode, entries
1009
are only required for those addresses for which the system
1010
would receive frames were it not operating in promiscuous
1013
- for 802.5 functional addresses, only one entry is
1014
required, for the address which has the functional address
1015
bit ANDed with the bit mask of all functional addresses for
1016
which the interface will accept frames.
1018
A system is normally able to use any unicast address which
1019
corresponds to an entry in this table as a source address."
1020
::= { ifMIBObjects 4 }
1022
ifRcvAddressEntry OBJECT-TYPE
1023
SYNTAX IfRcvAddressEntry
1024
MAX-ACCESS not-accessible
1027
"A list of objects identifying an address for which the
1028
system will accept packets/frames on the particular
1029
interface identified by the index value ifIndex."
1030
INDEX { ifIndex, ifRcvAddressAddress }
1031
::= { ifRcvAddressTable 1 }
1033
IfRcvAddressEntry ::=
1035
ifRcvAddressAddress PhysAddress,
1036
ifRcvAddressStatus RowStatus,
1037
ifRcvAddressType INTEGER
1040
ifRcvAddressAddress OBJECT-TYPE
1042
MAX-ACCESS not-accessible
1045
"An address for which the system will accept packets/frames
1046
on this entry's interface."
1047
::= { ifRcvAddressEntry 1 }
1049
ifRcvAddressStatus OBJECT-TYPE
1051
MAX-ACCESS read-create
1054
"This object is used to create and delete rows in the
1056
::= { ifRcvAddressEntry 2 }
1058
ifRcvAddressType OBJECT-TYPE
1065
MAX-ACCESS read-create
1068
"This object has the value nonVolatile(3) for those entries
1069
in the table which are valid and will not be deleted by the
1070
next restart of the managed system. Entries having the
1071
value volatile(2) are valid and exist, but have not been
1072
saved, so that will not exist after the next restart of the
1073
managed system. Entries having the value other(1) are valid
1074
and exist but are not classified as to whether they will
1075
continue to exist after the next restart."
1077
::= { ifRcvAddressEntry 3 }
1080
linkDown NOTIFICATION-TYPE
1081
OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
1084
"A linkDown trap signifies that the SNMP entity, acting in
1085
an agent role, has detected that the ifOperStatus object for
1086
one of its communication links is about to enter the down
1087
state from some other state (but not from the notPresent
1088
state). This other state is indicated by the included value
1092
linkUp NOTIFICATION-TYPE
1093
OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
1096
"A linkUp trap signifies that the SNMP entity, acting in an
1097
agent role, has detected that the ifOperStatus object for
1098
one of its communication links left the down state and
1099
transitioned into some other state (but not into the
1100
notPresent state). This other state is indicated by the
1101
included value of ifOperStatus."
1105
ifConformance OBJECT IDENTIFIER ::= { ifMIB 2 }
1107
ifGroups OBJECT IDENTIFIER ::= { ifConformance 1 }
1108
ifCompliances OBJECT IDENTIFIER ::= { ifConformance 2 }
1111
ifCompliance3 MODULE-COMPLIANCE
1114
"The compliance statement for SNMP entities which have
1115
network interfaces."
1117
MODULE -- this module
1118
MANDATORY-GROUPS { ifGeneralInformationGroup,
1119
linkUpDownNotificationsGroup }
1122
GROUP ifFixedLengthGroup
1124
"This group is mandatory for those network interfaces which
1125
are character-oriented or transmit data in fixed-length
1126
transmission units, and for which the value of the
1127
corresponding instance of ifSpeed is less than or equal to
1128
20,000,000 bits/second."
1130
GROUP ifHCFixedLengthGroup
1132
"This group is mandatory for those network interfaces which
1133
are character-oriented or transmit data in fixed-length
1134
transmission units, and for which the value of the
1135
corresponding instance of ifSpeed is greater than 20,000,000
1140
"This group is mandatory for those network interfaces which
1141
are packet-oriented, and for which the value of the
1142
corresponding instance of ifSpeed is less than or equal to
1143
20,000,000 bits/second."
1145
GROUP ifHCPacketGroup
1147
"This group is mandatory only for those network interfaces
1148
which are packet-oriented and for which the value of the
1149
corresponding instance of ifSpeed is greater than 20,000,000
1150
bits/second but less than or equal to 650,000,000
1153
GROUP ifVHCPacketGroup
1155
"This group is mandatory only for those network interfaces
1156
which are packet-oriented and for which the value of the
1157
corresponding instance of ifSpeed is greater than
1158
650,000,000 bits/second."
1160
GROUP ifCounterDiscontinuityGroup
1162
"This group is mandatory for those network interfaces that
1163
are required to maintain counters (i.e., those for which one
1164
of the ifFixedLengthGroup, ifHCFixedLengthGroup,
1165
ifPacketGroup, ifHCPacketGroup, or ifVHCPacketGroup is
1168
GROUP ifRcvAddressGroup
1170
"The applicability of this group MUST be defined by the
1171
media-specific MIBs. Media-specific MIBs must define the
1172
exact meaning, use, and semantics of the addresses in this
1175
OBJECT ifLinkUpDownTrapEnable
1176
MIN-ACCESS read-only
1178
"Write access is not required."
1180
OBJECT ifPromiscuousMode
1181
MIN-ACCESS read-only
1183
"Write access is not required."
1185
OBJECT ifAdminStatus
1186
SYNTAX INTEGER { up(1), down(2) }
1187
MIN-ACCESS read-only
1189
"Write access is not required, nor is support for the value
1193
MIN-ACCESS read-only
1195
"Write access is not required."
1196
::= { ifCompliances 3 }
1199
ifGeneralInformationGroup OBJECT-GROUP
1200
OBJECTS { ifIndex, ifDescr, ifType, ifSpeed, ifPhysAddress,
1201
ifAdminStatus, ifOperStatus, ifLastChange,
1202
ifLinkUpDownTrapEnable, ifConnectorPresent,
1203
ifHighSpeed, ifName, ifNumber, ifAlias,
1207
"A collection of objects providing information applicable to
1208
all network interfaces."
1212
ifFixedLengthGroup OBJECT-GROUP
1213
OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
1214
ifInErrors, ifOutErrors }
1217
"A collection of objects providing information specific to
1218
non-high speed (non-high speed interfaces transmit and
1219
receive at speeds less than or equal to 20,000,000
1220
bits/second) character-oriented or fixed-length-transmission
1221
network interfaces."
1224
ifHCFixedLengthGroup OBJECT-GROUP
1225
OBJECTS { ifHCInOctets, ifHCOutOctets,
1226
ifInOctets, ifOutOctets, ifInUnknownProtos,
1227
ifInErrors, ifOutErrors }
1230
"A collection of objects providing information specific to
1231
high speed (greater than 20,000,000 bits/second) character-
1232
oriented or fixed-length-transmission network interfaces."
1235
ifPacketGroup OBJECT-GROUP
1236
OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
1237
ifInErrors, ifOutErrors,
1238
ifMtu, ifInUcastPkts, ifInMulticastPkts,
1239
ifInBroadcastPkts, ifInDiscards,
1240
ifOutUcastPkts, ifOutMulticastPkts,
1241
ifOutBroadcastPkts, ifOutDiscards,
1245
"A collection of objects providing information specific to
1246
non-high speed (non-high speed interfaces transmit and
1247
receive at speeds less than or equal to 20,000,000
1248
bits/second) packet-oriented network interfaces."
1251
ifHCPacketGroup OBJECT-GROUP
1252
OBJECTS { ifHCInOctets, ifHCOutOctets,
1253
ifInOctets, ifOutOctets, ifInUnknownProtos,
1254
ifInErrors, ifOutErrors,
1255
ifMtu, ifInUcastPkts, ifInMulticastPkts,
1256
ifInBroadcastPkts, ifInDiscards,
1257
ifOutUcastPkts, ifOutMulticastPkts,
1258
ifOutBroadcastPkts, ifOutDiscards,
1262
"A collection of objects providing information specific to
1263
high speed (greater than 20,000,000 bits/second but less
1264
than or equal to 650,000,000 bits/second) packet-oriented
1265
network interfaces."
1268
ifVHCPacketGroup OBJECT-GROUP
1269
OBJECTS { ifHCInUcastPkts, ifHCInMulticastPkts,
1270
ifHCInBroadcastPkts, ifHCOutUcastPkts,
1271
ifHCOutMulticastPkts, ifHCOutBroadcastPkts,
1272
ifHCInOctets, ifHCOutOctets,
1273
ifInOctets, ifOutOctets, ifInUnknownProtos,
1274
ifInErrors, ifOutErrors,
1275
ifMtu, ifInUcastPkts, ifInMulticastPkts,
1276
ifInBroadcastPkts, ifInDiscards,
1277
ifOutUcastPkts, ifOutMulticastPkts,
1278
ifOutBroadcastPkts, ifOutDiscards,
1282
"A collection of objects providing information specific to
1283
higher speed (greater than 650,000,000 bits/second) packet-
1284
oriented network interfaces."
1287
ifRcvAddressGroup OBJECT-GROUP
1288
OBJECTS { ifRcvAddressStatus, ifRcvAddressType }
1291
"A collection of objects providing information on the
1292
multiple addresses which an interface receives."
1295
ifStackGroup2 OBJECT-GROUP
1296
OBJECTS { ifStackStatus, ifStackLastChange }
1299
"A collection of objects providing information on the
1300
layering of MIB-II interfaces."
1303
ifCounterDiscontinuityGroup OBJECT-GROUP
1304
OBJECTS { ifCounterDiscontinuityTime }
1307
"A collection of objects providing information specific to
1308
interface counter discontinuities."
1311
linkUpDownNotificationsGroup NOTIFICATION-GROUP
1312
NOTIFICATIONS { linkUp, linkDown }
1315
"The notifications which indicate specific changes in the
1316
value of ifOperStatus."
1326
ifTestTable OBJECT-TYPE
1327
SYNTAX SEQUENCE OF IfTestEntry
1328
MAX-ACCESS not-accessible
1331
"This table contains one entry per interface. It defines
1332
objects which allow a network manager to instruct an agent
1333
to test an interface for various faults. Tests for an
1334
interface are defined in the media-specific MIB for that
1335
interface. After invoking a test, the object ifTestResult
1336
can be read to determine the outcome. If an agent can not
1337
perform the test, ifTestResult is set to so indicate. The
1338
object ifTestCode can be used to provide further test-
1339
specific or interface-specific (or even enterprise-specific)
1340
information concerning the outcome of the test. Only one
1341
test can be in progress on each interface at any one time.
1342
If one test is in progress when another test is invoked, the
1343
second test is rejected. Some agents may reject a test when
1344
a prior test is active on another interface.
1346
Before starting a test, a manager-station must first obtain
1347
'ownership' of the entry in the ifTestTable for the
1348
interface to be tested. This is accomplished with the
1349
ifTestId and ifTestStatus objects as follows:
1352
get (ifTestId, ifTestStatus)
1353
while (ifTestStatus != notInUse)
1355
* Loop while a test is running or some other
1356
* manager is configuring a test.
1359
get (ifTestId, ifTestStatus)
1363
* Is not being used right now -- let's compete
1364
* to see who gets it.
1366
lock_value = ifTestId
1368
if ( set(ifTestId = lock_value, ifTestStatus = inUse,
1369
ifTestOwner = 'my-IP-address') == FAILURE)
1371
* Another manager got the ifTestEntry -- go
1379
set up any test parameters.
1382
* This starts the test
1384
set(ifTestType = test_to_run);
1386
wait for test completion by polling ifTestResult
1388
when test completes, agent sets ifTestResult
1389
agent also sets ifTestStatus = 'notInUse'
1391
retrieve any additional test results, and ifTestId
1393
if (ifTestId == lock_value+1) results are valid
1395
A manager station first retrieves the value of the
1396
appropriate ifTestId and ifTestStatus objects, periodically
1397
repeating the retrieval if necessary, until the value of
1398
ifTestStatus is 'notInUse'. The manager station then tries
1399
to set the same ifTestId object to the value it just
1400
retrieved, the same ifTestStatus object to 'inUse', and the
1401
corresponding ifTestOwner object to a value indicating
1402
itself. If the set operation succeeds then the manager has
1403
obtained ownership of the ifTestEntry, and the value of the
1404
ifTestId object is incremented by the agent (per the
1405
semantics of TestAndIncr). Failure of the set operation
1406
indicates that some other manager has obtained ownership of
1409
Once ownership is obtained, any test parameters can be
1410
setup, and then the test is initiated by setting ifTestType.
1411
On completion of the test, the agent sets ifTestStatus to
1412
'notInUse'. Once this occurs, the manager can retrieve the
1413
results. In the (rare) event that the invocation of tests
1414
by two network managers were to overlap, then there would be
1415
a possibility that the first test's results might be
1416
overwritten by the second test's results prior to the first
1418
results being read. This unlikely circumstance can be
1419
detected by a network manager retrieving ifTestId at the
1420
same time as retrieving the test results, and ensuring that
1421
the results are for the desired request.
1423
If ifTestType is not set within an abnormally long period of
1424
time after ownership is obtained, the agent should time-out
1425
the manager, and reset the value of the ifTestStatus object
1426
back to 'notInUse'. It is suggested that this time-out
1427
period be 5 minutes.
1429
In general, a management station must not retransmit a
1430
request to invoke a test for which it does not receive a
1431
response; instead, it properly inspects an agent's MIB to
1432
determine if the invocation was successful. Only if the
1433
invocation was unsuccessful, is the invocation request
1436
Some tests may require the interface to be taken off-line in
1437
order to execute them, or may even require the agent to
1438
reboot after completion of the test. In these
1439
circumstances, communication with the management station
1440
invoking the test may be lost until after completion of the
1441
test. An agent is not required to support such tests.
1442
However, if such tests are supported, then the agent should
1443
make every effort to transmit a response to the request
1444
which invoked the test prior to losing communication. When
1445
the agent is restored to normal service, the results of the
1446
test are properly made available in the appropriate objects.
1447
Note that this requires that the ifIndex value assigned to
1448
an interface must be unchanged even if the test causes a
1449
reboot. An agent must reject any test for which it cannot,
1450
perhaps due to resource constraints, make available at least
1451
the minimum amount of information after that test
1453
::= { ifMIBObjects 3 }
1455
ifTestEntry OBJECT-TYPE
1457
MAX-ACCESS not-accessible
1460
"An entry containing objects for invoking tests on an
1462
AUGMENTS { ifEntry }
1463
::= { ifTestTable 1 }
1468
ifTestId TestAndIncr,
1469
ifTestStatus INTEGER,
1470
ifTestType AutonomousType,
1471
ifTestResult INTEGER,
1472
ifTestCode OBJECT IDENTIFIER,
1473
ifTestOwner OwnerString
1476
ifTestId OBJECT-TYPE
1478
MAX-ACCESS read-write
1481
"This object identifies the current invocation of the
1483
::= { ifTestEntry 1 }
1485
ifTestStatus OBJECT-TYPE
1486
SYNTAX INTEGER { notInUse(1), inUse(2) }
1487
MAX-ACCESS read-write
1490
"This object indicates whether or not some manager currently
1491
has the necessary 'ownership' required to invoke a test on
1492
this interface. A write to this object is only successful
1493
when it changes its value from 'notInUse(1)' to 'inUse(2)'.
1494
After completion of a test, the agent resets the value back
1496
::= { ifTestEntry 2 }
1498
ifTestType OBJECT-TYPE
1499
SYNTAX AutonomousType
1500
MAX-ACCESS read-write
1503
"A control variable used to start and stop operator-
1504
initiated interface tests. Most OBJECT IDENTIFIER values
1505
assigned to tests are defined elsewhere, in association with
1506
specific types of interface. However, this document assigns
1507
a value for a full-duplex loopback test, and defines the
1508
special meanings of the subject identifier:
1510
noTest OBJECT IDENTIFIER ::= { 0 0 }
1512
When the value noTest is written to this object, no action
1513
is taken unless a test is in progress, in which case the
1514
test is aborted. Writing any other value to this object is
1516
only valid when no test is currently in progress, in which
1517
case the indicated test is initiated.
1519
When read, this object always returns the most recent value
1520
that ifTestType was set to. If it has not been set since
1521
the last initialization of the network management subsystem
1522
on the agent, a value of noTest is returned."
1523
::= { ifTestEntry 3 }
1525
ifTestResult OBJECT-TYPE
1527
none(1), -- no test yet requested
1531
unAbleToRun(5), -- due to state of system
1535
MAX-ACCESS read-only
1538
"This object contains the result of the most recently
1539
requested test, or the value none(1) if no tests have been
1540
requested since the last reset. Note that this facility
1541
provides no provision for saving the results of one test
1542
when starting another, as could be required if used by
1543
multiple managers concurrently."
1544
::= { ifTestEntry 4 }
1546
ifTestCode OBJECT-TYPE
1547
SYNTAX OBJECT IDENTIFIER
1548
MAX-ACCESS read-only
1551
"This object contains a code which contains more specific
1552
information on the test result, for example an error-code
1553
after a failed test. Error codes and other values this
1554
object may take are specific to the type of interface and/or
1555
test. The value may have the semantics of either the
1556
AutonomousType or InstancePointer textual conventions as
1557
defined in RFC 2579. The identifier:
1559
testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }
1561
is defined for use if no additional result code is
1563
::= { ifTestEntry 5 }
1565
ifTestOwner OBJECT-TYPE
1567
MAX-ACCESS read-write
1570
"The entity which currently has the 'ownership' required to
1571
invoke a test on this interface."
1572
::= { ifTestEntry 6 }
1575
ifGeneralGroup OBJECT-GROUP
1576
OBJECTS { ifDescr, ifType, ifSpeed, ifPhysAddress,
1577
ifAdminStatus, ifOperStatus, ifLastChange,
1578
ifLinkUpDownTrapEnable, ifConnectorPresent,
1579
ifHighSpeed, ifName }
1582
"A collection of objects deprecated in favour of
1583
ifGeneralInformationGroup."
1586
ifTestGroup OBJECT-GROUP
1587
OBJECTS { ifTestId, ifTestStatus, ifTestType,
1588
ifTestResult, ifTestCode, ifTestOwner }
1591
"A collection of objects providing the ability to invoke
1592
tests on an interface."
1595
ifStackGroup OBJECT-GROUP
1596
OBJECTS { ifStackStatus }
1599
"The previous collection of objects providing information on
1600
the layering of MIB-II interfaces."
1603
ifOldObjectsGroup OBJECT-GROUP
1604
OBJECTS { ifInNUcastPkts, ifOutNUcastPkts,
1605
ifOutQLen, ifSpecific }
1608
"The collection of objects deprecated from the original MIB-
1609
II interfaces group."
1613
ifCompliance MODULE-COMPLIANCE
1616
"A compliance statement defined in a previous version of
1617
this MIB module, for SNMP entities which have network
1620
MODULE -- this module
1621
MANDATORY-GROUPS { ifGeneralGroup, ifStackGroup }
1623
GROUP ifFixedLengthGroup
1625
"This group is mandatory for all network interfaces which
1626
are character-oriented or transmit data in fixed-length
1627
transmission units."
1629
GROUP ifHCFixedLengthGroup
1631
"This group is mandatory only for those network interfaces
1632
which are character-oriented or transmit data in fixed-
1633
length transmission units, and for which the value of the
1634
corresponding instance of ifSpeed is greater than 20,000,000
1639
"This group is mandatory for all network interfaces which
1640
are packet-oriented."
1642
GROUP ifHCPacketGroup
1644
"This group is mandatory only for those network interfaces
1645
which are packet-oriented and for which the value of the
1646
corresponding instance of ifSpeed is greater than
1647
650,000,000 bits/second."
1651
"This group is optional. Media-specific MIBs which require
1652
interface tests are strongly encouraged to use this group
1653
for invoking tests and reporting results. A medium specific
1654
MIB which has mandatory tests may make implementation of
1656
this group mandatory."
1658
GROUP ifRcvAddressGroup
1660
"The applicability of this group MUST be defined by the
1661
media-specific MIBs. Media-specific MIBs must define the
1662
exact meaning, use, and semantics of the addresses in this
1665
OBJECT ifLinkUpDownTrapEnable
1666
MIN-ACCESS read-only
1668
"Write access is not required."
1670
OBJECT ifPromiscuousMode
1671
MIN-ACCESS read-only
1673
"Write access is not required."
1675
OBJECT ifStackStatus
1676
SYNTAX INTEGER { active(1) } -- subset of RowStatus
1677
MIN-ACCESS read-only
1679
"Write access is not required, and only one of the six
1680
enumerated values for the RowStatus textual convention need
1681
be supported, specifically: active(1)."
1683
OBJECT ifAdminStatus
1684
SYNTAX INTEGER { up(1), down(2) }
1685
MIN-ACCESS read-only
1687
"Write access is not required, nor is support for the value
1689
::= { ifCompliances 1 }
1691
ifCompliance2 MODULE-COMPLIANCE
1694
"A compliance statement defined in a previous version of
1695
this MIB module, for SNMP entities which have network
1698
MODULE -- this module
1699
MANDATORY-GROUPS { ifGeneralInformationGroup, ifStackGroup2,
1700
ifCounterDiscontinuityGroup }
1702
GROUP ifFixedLengthGroup
1704
"This group is mandatory for all network interfaces which
1705
are character-oriented or transmit data in fixed-length
1706
transmission units."
1708
GROUP ifHCFixedLengthGroup
1710
"This group is mandatory only for those network interfaces
1711
which are character-oriented or transmit data in fixed-
1712
length transmission units, and for which the value of the
1713
corresponding instance of ifSpeed is greater than 20,000,000
1718
"This group is mandatory for all network interfaces which
1719
are packet-oriented."
1721
GROUP ifHCPacketGroup
1723
"This group is mandatory only for those network interfaces
1724
which are packet-oriented and for which the value of the
1725
corresponding instance of ifSpeed is greater than
1726
650,000,000 bits/second."
1728
GROUP ifRcvAddressGroup
1730
"The applicability of this group MUST be defined by the
1731
media-specific MIBs. Media-specific MIBs must define the
1732
exact meaning, use, and semantics of the addresses in this
1735
OBJECT ifLinkUpDownTrapEnable
1736
MIN-ACCESS read-only
1738
"Write access is not required."
1740
OBJECT ifPromiscuousMode
1741
MIN-ACCESS read-only
1743
"Write access is not required."
1745
OBJECT ifStackStatus
1746
SYNTAX INTEGER { active(1) } -- subset of RowStatus
1747
MIN-ACCESS read-only
1749
"Write access is not required, and only one of the six
1750
enumerated values for the RowStatus textual convention need
1751
be supported, specifically: active(1)."
1753
OBJECT ifAdminStatus
1754
SYNTAX INTEGER { up(1), down(2) }
1755
MIN-ACCESS read-only
1757
"Write access is not required, nor is support for the value
1761
MIN-ACCESS read-only
1763
"Write access is not required."
1764
::= { ifCompliances 2 }