IF-MIB.txt
上传用户:wxp200602
上传日期:2007-10-30
资源大小:4028k
文件大小:70k
- IF-MIB DEFINITIONS ::= BEGIN
- IMPORTS
- MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Counter64,
- Integer32, TimeTicks, mib-2,
- NOTIFICATION-TYPE FROM SNMPv2-SMI
- TEXTUAL-CONVENTION, DisplayString,
- PhysAddress, TruthValue, RowStatus,
- TimeStamp, AutonomousType, TestAndIncr FROM SNMPv2-TC
- MODULE-COMPLIANCE, OBJECT-GROUP,
- NOTIFICATION-GROUP FROM SNMPv2-CONF
- snmpTraps FROM SNMPv2-MIB
- IANAifType FROM IANAifType-MIB;
- ifMIB MODULE-IDENTITY
- LAST-UPDATED "200006140000Z"
- ORGANIZATION "IETF Interfaces MIB Working Group"
- CONTACT-INFO
- " Keith McCloghrie
- Cisco Systems, Inc.
- 170 West Tasman Drive
- San Jose, CA 95134-1706
- US
- 408-526-5260
- kzm@cisco.com"
- DESCRIPTION
- "The MIB module to describe generic objects for network
- interface sub-layers. This MIB is an updated version of
- MIB-II's ifTable, and incorporates the extensions defined in
- RFC 1229."
- REVISION "200006140000Z"
- DESCRIPTION
- "Clarifications agreed upon by the Interfaces MIB WG, and
- published as RFC 2863."
- REVISION "199602282155Z"
- DESCRIPTION
- "Revisions made by the Interfaces MIB WG, and published in
- RFC 2233."
- REVISION "199311082155Z"
- DESCRIPTION
- "Initial revision, published as part of RFC 1573."
- ::= { mib-2 31 }
- ifMIBObjects OBJECT IDENTIFIER ::= { ifMIB 1 }
- interfaces OBJECT IDENTIFIER ::= { mib-2 2 }
- --
- -- Textual Conventions
- --
- -- OwnerString has the same semantics as used in RFC 1271
- OwnerString ::= TEXTUAL-CONVENTION
- DISPLAY-HINT "255a"
- STATUS deprecated
- DESCRIPTION
- "This data type is used to model an administratively
- assigned name of the owner of a resource. This information
- is taken from the NVT ASCII character set. It is suggested
- that this name contain one or more of the following: ASCII
- form of the manager station's transport address, management
- station name (e.g., domain name), network management
- personnel's name, location, or phone number. In some cases
- the agent itself will be the owner of an entry. In these
- cases, this string shall be set to a string starting with
- 'agent'."
- SYNTAX OCTET STRING (SIZE(0..255))
- -- InterfaceIndex contains the semantics of ifIndex and should be used
- -- for any objects defined in other MIB modules that need these semantics.
- InterfaceIndex ::= TEXTUAL-CONVENTION
- DISPLAY-HINT "d"
- STATUS current
- DESCRIPTION
- "A unique value, greater than zero, for each interface or
- interface sub-layer in the managed system. It is
- recommended that values are assigned contiguously starting
- from 1. The value for each interface sub-layer must remain
- constant at least from one re-initialization of the entity's
- network management system to the next re-initialization."
- SYNTAX Integer32 (1..2147483647)
- InterfaceIndexOrZero ::= TEXTUAL-CONVENTION
- DISPLAY-HINT "d"
- STATUS current
- DESCRIPTION
- "This textual convention is an extension of the
- InterfaceIndex convention. The latter defines a greater
- than zero value used to identify an interface or interface
- sub-layer in the managed system. This extension permits the
- additional value of zero. the value zero is object-specific
- and must therefore be defined as part of the description of
- any object which uses this syntax. Examples of the usage of
- zero might include situations where interface was unknown,
- or when none or all interfaces need to be referenced."
- SYNTAX Integer32 (0..2147483647)
- ifNumber OBJECT-TYPE
- SYNTAX Integer32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of network interfaces (regardless of their
- current state) present on this system."
- ::= { interfaces 1 }
- ifTableLastChange OBJECT-TYPE
- SYNTAX TimeTicks
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The value of sysUpTime at the time of the last creation or
- deletion of an entry in the ifTable. If the number of
- entries has been unchanged since the last re-initialization
- of the local network management subsystem, then this object
- contains a zero value."
- ::= { ifMIBObjects 5 }
- -- the Interfaces table
- -- The Interfaces table contains information on the entity's
- -- interfaces. Each sub-layer below the internetwork-layer
- -- of a network interface is considered to be an interface.
- ifTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "A list of interface entries. The number of entries is
- given by the value of ifNumber."
- ::= { interfaces 2 }
- ifEntry OBJECT-TYPE
- SYNTAX IfEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "An entry containing management information applicable to a
- particular interface."
- INDEX { ifIndex }
- ::= { ifTable 1 }
- IfEntry ::=
- SEQUENCE {
- ifIndex InterfaceIndex,
- ifDescr DisplayString,
- ifType IANAifType,
- ifMtu Integer32,
- ifSpeed Gauge32,
- ifPhysAddress PhysAddress,
- ifAdminStatus INTEGER,
- ifOperStatus INTEGER,
- ifLastChange TimeTicks,
- ifInOctets Counter32,
- ifInUcastPkts Counter32,
- ifInNUcastPkts Counter32, -- deprecated
- ifInDiscards Counter32,
- ifInErrors Counter32,
- ifInUnknownProtos Counter32,
- ifOutOctets Counter32,
- ifOutUcastPkts Counter32,
- ifOutNUcastPkts Counter32, -- deprecated
- ifOutDiscards Counter32,
- ifOutErrors Counter32,
- ifOutQLen Gauge32, -- deprecated
- ifSpecific OBJECT IDENTIFIER -- deprecated
- }
- ifIndex OBJECT-TYPE
- SYNTAX InterfaceIndex
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "A unique value, greater than zero, for each interface. It
- is recommended that values are assigned contiguously
- starting from 1. The value for each interface sub-layer
- must remain constant at least from one re-initialization of
- the entity's network management system to the next re-
- initialization."
- ::= { ifEntry 1 }
- ifDescr OBJECT-TYPE
- SYNTAX DisplayString (SIZE (0..255))
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "A textual string containing information about the
- interface. This string should include the name of the
- manufacturer, the product name and the version of the
- interface hardware/software."
- ::= { ifEntry 2 }
- ifType OBJECT-TYPE
- SYNTAX IANAifType
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The type of interface. Additional values for ifType are
- assigned by the Internet Assigned Numbers Authority (IANA),
- through updating the syntax of the IANAifType textual
- convention."
- ::= { ifEntry 3 }
- ifMtu OBJECT-TYPE
- SYNTAX Integer32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The size of the largest packet which can be sent/received
- on the interface, specified in octets. For interfaces that
- are used for transmitting network datagrams, this is the
- size of the largest network datagram that can be sent on the
- interface."
- ::= { ifEntry 4 }
- ifSpeed OBJECT-TYPE
- SYNTAX Gauge32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "An estimate of the interface's current bandwidth in bits
- per second. For interfaces which do not vary in bandwidth
- or for those where no accurate estimation can be made, this
- object should contain the nominal bandwidth. If the
- bandwidth of the interface is greater than the maximum value
- reportable by this object then this object should report its
- maximum value (4,294,967,295) and ifHighSpeed must be used
- to report the interace's speed. For a sub-layer which has
- no concept of bandwidth, this object should be zero."
- ::= { ifEntry 5 }
- ifPhysAddress OBJECT-TYPE
- SYNTAX PhysAddress
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The interface's address at its protocol sub-layer. For
- example, for an 802.x interface, this object normally
- contains a MAC address. The interface's media-specific MIB
- must define the bit and byte ordering and the format of the
- value of this object. For interfaces which do not have such
- an address (e.g., a serial line), this object should contain
- an octet string of zero length."
- ::= { ifEntry 6 }
- ifAdminStatus OBJECT-TYPE
- SYNTAX INTEGER {
- up(1), -- ready to pass packets
- down(2),
- testing(3) -- in some test mode
- }
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "The desired state of the interface. The testing(3) state
- indicates that no operational packets can be passed. When a
- managed system initializes, all interfaces start with
- ifAdminStatus in the down(2) state. As a result of either
- explicit management action or per configuration information
- retained by the managed system, ifAdminStatus is then
- changed to either the up(1) or testing(3) states (or remains
- in the down(2) state)."
- ::= { ifEntry 7 }
- ifOperStatus OBJECT-TYPE
- SYNTAX INTEGER {
- up(1), -- ready to pass packets
- down(2),
- testing(3), -- in some test mode
- unknown(4), -- status can not be determined
- -- for some reason.
- dormant(5),
- notPresent(6), -- some component is missing
- lowerLayerDown(7) -- down due to state of
- -- lower-layer interface(s)
- }
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The current operational state of the interface. The
- testing(3) state indicates that no operational packets can
- be passed. If ifAdminStatus is down(2) then ifOperStatus
- should be down(2). If ifAdminStatus is changed to up(1)
- then ifOperStatus should change to up(1) if the interface is
- ready to transmit and receive network traffic; it should
- change to dormant(5) if the interface is waiting for
- external actions (such as a serial line waiting for an
- incoming connection); it should remain in the down(2) state
- if and only if there is a fault that prevents it from going
- to the up(1) state; it should remain in the notPresent(6)
- state if the interface has missing (typically, hardware)
- components."
- ::= { ifEntry 8 }
- ifLastChange OBJECT-TYPE
- SYNTAX TimeTicks
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The value of sysUpTime at the time the interface entered
- its current operational state. If the current state was
- entered prior to the last re-initialization of the local
- network management subsystem, then this object contains a
- zero value."
- ::= { ifEntry 9 }
- ifInOctets OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets received on the interface,
- including framing characters.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 10 }
- ifInUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to a
- higher (sub-)layer, which were not addressed to a multicast
- or broadcast address at this sub-layer.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 11 }
- ifInNUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to a
- higher (sub-)layer, which were addressed to a multicast or
- broadcast address at this sub-layer.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime.
- This object is deprecated in favour of ifInMulticastPkts and
- ifInBroadcastPkts."
- ::= { ifEntry 12 }
- ifInDiscards OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of inbound packets which were chosen to be
- discarded even though no errors had been detected to prevent
- their being deliverable to a higher-layer protocol. One
- possible reason for discarding such a packet could be to
- free up buffer space.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 13 }
- ifInErrors OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "For packet-oriented interfaces, the number of inbound
- packets that contained errors preventing them from being
- deliverable to a higher-layer protocol. For character-
- oriented or fixed-length interfaces, the number of inbound
- transmission units that contained errors preventing them
- from being deliverable to a higher-layer protocol.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 14 }
- ifInUnknownProtos OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "For packet-oriented interfaces, the number of packets
- received via the interface which were discarded because of
- an unknown or unsupported protocol. For character-oriented
- or fixed-length interfaces that support protocol
- multiplexing the number of transmission units received via
- the interface which were discarded because of an unknown or
- unsupported protocol. For any interface that does not
- support protocol multiplexing, this counter will always be
- 0.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 15 }
- ifOutOctets OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets transmitted out of the
- interface, including framing characters.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 16 }
- ifOutUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level protocols
- requested be transmitted, and which were not addressed to a
- multicast or broadcast address at this sub-layer, including
- those that were discarded or not sent.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 17 }
- ifOutNUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "The total number of packets that higher-level protocols
- requested be transmitted, and which were addressed to a
- multicast or broadcast address at this sub-layer, including
- those that were discarded or not sent.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime.
- This object is deprecated in favour of ifOutMulticastPkts
- and ifOutBroadcastPkts."
- ::= { ifEntry 18 }
- ifOutDiscards OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of outbound packets which were chosen to be
- discarded even though no errors had been detected to prevent
- their being transmitted. One possible reason for discarding
- such a packet could be to free up buffer space.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 19 }
- ifOutErrors OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "For packet-oriented interfaces, the number of outbound
- packets that could not be transmitted because of errors.
- For character-oriented or fixed-length interfaces, the
- number of outbound transmission units that could not be
- transmitted because of errors.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifEntry 20 }
- ifOutQLen OBJECT-TYPE
- SYNTAX Gauge32
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "The length of the output packet queue (in packets)."
- ::= { ifEntry 21 }
- ifSpecific OBJECT-TYPE
- SYNTAX OBJECT IDENTIFIER
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "A reference to MIB definitions specific to the particular
- media being used to realize the interface. It is
- recommended that this value point to an instance of a MIB
- object in the media-specific MIB, i.e., that this object
- have the semantics associated with the InstancePointer
- textual convention defined in RFC 2579. In fact, it is
- recommended that the media-specific MIB specify what value
- ifSpecific should/can take for values of ifType. If no MIB
- definitions specific to the particular media are available,
- the value should be set to the OBJECT IDENTIFIER { 0 0 }."
- ::= { ifEntry 22 }
- --
- -- Extension to the interface table
- --
- -- This table replaces the ifExtnsTable table.
- --
- ifXTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfXEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "A list of interface entries. The number of entries is
- given by the value of ifNumber. This table contains
- additional objects for the interface table."
- ::= { ifMIBObjects 1 }
- ifXEntry OBJECT-TYPE
- SYNTAX IfXEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "An entry containing additional management information
- applicable to a particular interface."
- AUGMENTS { ifEntry }
- ::= { ifXTable 1 }
- IfXEntry ::=
- SEQUENCE {
- ifName DisplayString,
- ifInMulticastPkts Counter32,
- ifInBroadcastPkts Counter32,
- ifOutMulticastPkts Counter32,
- ifOutBroadcastPkts Counter32,
- ifHCInOctets Counter64,
- ifHCInUcastPkts Counter64,
- ifHCInMulticastPkts Counter64,
- ifHCInBroadcastPkts Counter64,
- ifHCOutOctets Counter64,
- ifHCOutUcastPkts Counter64,
- ifHCOutMulticastPkts Counter64,
- ifHCOutBroadcastPkts Counter64,
- ifLinkUpDownTrapEnable INTEGER,
- ifHighSpeed Gauge32,
- ifPromiscuousMode TruthValue,
- ifConnectorPresent TruthValue,
- ifAlias DisplayString,
- ifCounterDiscontinuityTime TimeStamp
- }
- ifName OBJECT-TYPE
- SYNTAX DisplayString
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The textual name of the interface. The value of this
- object should be the name of the interface as assigned by
- the local device and should be suitable for use in commands
- entered at the device's `console'. This might be a text
- name, such as `le0' or a simple port number, such as `1',
- depending on the interface naming syntax of the device. If
- several entries in the ifTable together represent a single
- interface as named by the device, then each will have the
- same value of ifName. Note that for an agent which responds
- to SNMP queries concerning an interface on some other
- (proxied) device, then the value of ifName for such an
- interface is the proxied device's local name for it.
- If there is no local name, or this object is otherwise not
- applicable, then this object contains a zero-length string."
- ::= { ifXEntry 1 }
- ifInMulticastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to a
- higher (sub-)layer, which were addressed to a multicast
- address at this sub-layer. For a MAC layer protocol, this
- includes both Group and Functional addresses.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 2 }
- ifInBroadcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to a
- higher (sub-)layer, which were addressed to a broadcast
- address at this sub-layer.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 3 }
- ifOutMulticastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level protocols
- requested be transmitted, and which were addressed to a
- multicast address at this sub-layer, including those that
- were discarded or not sent. For a MAC layer protocol, this
- includes both Group and Functional addresses.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 4 }
- ifOutBroadcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level protocols
- requested be transmitted, and which were addressed to a
- broadcast address at this sub-layer, including those that
- were discarded or not sent.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 5 }
- --
- -- High Capacity Counter objects. These objects are all
- -- 64 bit versions of the "basic" ifTable counters. These
- -- objects all have the same basic semantics as their 32-bit
- -- counterparts, however, their syntax has been extended
- -- to 64 bits.
- --
- ifHCInOctets OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets received on the interface,
- including framing characters. This object is a 64-bit
- version of ifInOctets.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 6 }
- ifHCInUcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to a
- higher (sub-)layer, which were not addressed to a multicast
- or broadcast address at this sub-layer. This object is a
- 64-bit version of ifInUcastPkts.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 7 }
- ifHCInMulticastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to a
- higher (sub-)layer, which were addressed to a multicast
- address at this sub-layer. For a MAC layer protocol, this
- includes both Group and Functional addresses. This object
- is a 64-bit version of ifInMulticastPkts.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 8 }
- ifHCInBroadcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to a
- higher (sub-)layer, which were addressed to a broadcast
- address at this sub-layer. This object is a 64-bit version
- of ifInBroadcastPkts.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 9 }
- ifHCOutOctets OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets transmitted out of the
- interface, including framing characters. This object is a
- 64-bit version of ifOutOctets.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 10 }
- ifHCOutUcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level protocols
- requested be transmitted, and which were not addressed to a
- multicast or broadcast address at this sub-layer, including
- those that were discarded or not sent. This object is a
- 64-bit version of ifOutUcastPkts.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 11 }
- ifHCOutMulticastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level protocols
- requested be transmitted, and which were addressed to a
- multicast address at this sub-layer, including those that
- were discarded or not sent. For a MAC layer protocol, this
- includes both Group and Functional addresses. This object
- is a 64-bit version of ifOutMulticastPkts.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 12 }
- ifHCOutBroadcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level protocols
- requested be transmitted, and which were addressed to a
- broadcast address at this sub-layer, including those that
- were discarded or not sent. This object is a 64-bit version
- of ifOutBroadcastPkts.
- Discontinuities in the value of this counter can occur at
- re-initialization of the management system, and at other
- times as indicated by the value of
- ifCounterDiscontinuityTime."
- ::= { ifXEntry 13 }
- ifLinkUpDownTrapEnable OBJECT-TYPE
- SYNTAX INTEGER { enabled(1), disabled(2) }
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "Indicates whether linkUp/linkDown traps should be generated
- for this interface.
- By default, this object should have the value enabled(1) for
- interfaces which do not operate on 'top' of any other
- interface (as defined in the ifStackTable), and disabled(2)
- otherwise."
- ::= { ifXEntry 14 }
- ifHighSpeed OBJECT-TYPE
- SYNTAX Gauge32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "An estimate of the interface's current bandwidth in units
- of 1,000,000 bits per second. If this object reports a
- value of `n' then the speed of the interface is somewhere in
- the range of `n-500,000' to `n+499,999'. For interfaces
- which do not vary in bandwidth or for those where no
- accurate estimation can be made, this object should contain
- the nominal bandwidth. For a sub-layer which has no concept
- of bandwidth, this object should be zero."
- ::= { ifXEntry 15 }
- ifPromiscuousMode OBJECT-TYPE
- SYNTAX TruthValue
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "This object has a value of false(2) if this interface only
- accepts packets/frames that are addressed to this station.
- This object has a value of true(1) when the station accepts
- all packets/frames transmitted on the media. The value
- true(1) is only legal on certain types of media. If legal,
- setting this object to a value of true(1) may require the
- interface to be reset before becoming effective.
- The value of ifPromiscuousMode does not affect the reception
- of broadcast and multicast packets/frames by the interface."
- ::= { ifXEntry 16 }
- ifConnectorPresent OBJECT-TYPE
- SYNTAX TruthValue
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "This object has the value 'true(1)' if the interface
- sublayer has a physical connector and the value 'false(2)'
- otherwise."
- ::= { ifXEntry 17 }
- ifAlias OBJECT-TYPE
- SYNTAX DisplayString (SIZE(0..64))
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "This object is an 'alias' name for the interface as
- specified by a network manager, and provides a non-volatile
- 'handle' for the interface.
- On the first instantiation of an interface, the value of
- ifAlias associated with that interface is the zero-length
- string. As and when a value is written into an instance of
- ifAlias through a network management set operation, then the
- agent must retain the supplied value in the ifAlias instance
- associated with the same interface for as long as that
- interface remains instantiated, including across all re-
- initializations/reboots of the network management system,
- including those which result in a change of the interface's
- ifIndex value.
- An example of the value which a network manager might store
- in this object for a WAN interface is the (Telco's) circuit
- number/identifier of the interface.
- Some agents may support write-access only for interfaces
- having particular values of ifType. An agent which supports
- write access to this object is required to keep the value in
- non-volatile storage, but it may limit the length of new
- values depending on how much storage is already occupied by
- the current values for other interfaces."
- ::= { ifXEntry 18 }
- ifCounterDiscontinuityTime OBJECT-TYPE
- SYNTAX TimeStamp
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The value of sysUpTime on the most recent occasion at which
- any one or more of this interface's counters suffered a
- discontinuity. The relevant counters are the specific
- instances associated with this interface of any Counter32 or
- Counter64 object contained in the ifTable or ifXTable. If
- no such discontinuities have occurred since the last re-
- initialization of the local management subsystem, then this
- object contains a zero value."
- ::= { ifXEntry 19 }
- -- The Interface Stack Group
- --
- -- Implementation of this group is optional, but strongly recommended
- -- for all systems
- --
- ifStackTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfStackEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "The table containing information on the relationships
- between the multiple sub-layers of network interfaces. In
- particular, it contains information on which sub-layers run
- 'on top of' which other sub-layers, where each sub-layer
- corresponds to a conceptual row in the ifTable. For
- example, when the sub-layer with ifIndex value x runs over
- the sub-layer with ifIndex value y, then this table
- contains:
- ifStackStatus.x.y=active
- For each ifIndex value, I, which identifies an active
- interface, there are always at least two instantiated rows
- in this table associated with I. For one of these rows, I
- is the value of ifStackHigherLayer; for the other, I is the
- value of ifStackLowerLayer. (If I is not involved in
- multiplexing, then these are the only two rows associated
- with I.)
- For example, two rows exist even for an interface which has
- no others stacked on top or below it:
- ifStackStatus.0.x=active
- ifStackStatus.x.0=active "
- ::= { ifMIBObjects 2 }
- ifStackEntry OBJECT-TYPE
- SYNTAX IfStackEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "Information on a particular relationship between two sub-
- layers, specifying that one sub-layer runs on 'top' of the
- other sub-layer. Each sub-layer corresponds to a conceptual
- row in the ifTable."
- INDEX { ifStackHigherLayer, ifStackLowerLayer }
- ::= { ifStackTable 1 }
- IfStackEntry ::=
- SEQUENCE {
- ifStackHigherLayer InterfaceIndexOrZero,
- ifStackLowerLayer InterfaceIndexOrZero,
- ifStackStatus RowStatus
- }
- ifStackHigherLayer OBJECT-TYPE
- SYNTAX InterfaceIndexOrZero
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "The value of ifIndex corresponding to the higher sub-layer
- of the relationship, i.e., the sub-layer which runs on 'top'
- of the sub-layer identified by the corresponding instance of
- ifStackLowerLayer. If there is no higher sub-layer (below
- the internetwork layer), then this object has the value 0."
- ::= { ifStackEntry 1 }
- ifStackLowerLayer OBJECT-TYPE
- SYNTAX InterfaceIndexOrZero
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "The value of ifIndex corresponding to the lower sub-layer
- of the relationship, i.e., the sub-layer which runs 'below'
- the sub-layer identified by the corresponding instance of
- ifStackHigherLayer. If there is no lower sub-layer, then
- this object has the value 0."
- ::= { ifStackEntry 2 }
- ifStackStatus OBJECT-TYPE
- SYNTAX RowStatus
- MAX-ACCESS read-create
- STATUS current
- DESCRIPTION
- "The status of the relationship between two sub-layers.
- Changing the value of this object from 'active' to
- 'notInService' or 'destroy' will likely have consequences up
- and down the interface stack. Thus, write access to this
- object is likely to be inappropriate for some types of
- interfaces, and many implementations will choose not to
- support write-access for any type of interface."
- ::= { ifStackEntry 3 }
- ifStackLastChange OBJECT-TYPE
- SYNTAX TimeTicks
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The value of sysUpTime at the time of the last change of
- the (whole) interface stack. A change of the interface
- stack is defined to be any creation, deletion, or change in
- value of any instance of ifStackStatus. If the interface
- stack has been unchanged since the last re-initialization of
- the local network management subsystem, then this object
- contains a zero value."
- ::= { ifMIBObjects 6 }
- -- Generic Receive Address Table
- --
- -- This group of objects is mandatory for all types of
- -- interfaces which can receive packets/frames addressed to
- -- more than one address.
- --
- -- This table replaces the ifExtnsRcvAddr table. The main
- -- difference is that this table makes use of the RowStatus
- -- textual convention, while ifExtnsRcvAddr did not.
- ifRcvAddressTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfRcvAddressEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "This table contains an entry for each address (broadcast,
- multicast, or uni-cast) for which the system will receive
- packets/frames on a particular interface, except as follows:
- - for an interface operating in promiscuous mode, entries
- are only required for those addresses for which the system
- would receive frames were it not operating in promiscuous
- mode.
- - for 802.5 functional addresses, only one entry is
- required, for the address which has the functional address
- bit ANDed with the bit mask of all functional addresses for
- which the interface will accept frames.
- A system is normally able to use any unicast address which
- corresponds to an entry in this table as a source address."
- ::= { ifMIBObjects 4 }
- ifRcvAddressEntry OBJECT-TYPE
- SYNTAX IfRcvAddressEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "A list of objects identifying an address for which the
- system will accept packets/frames on the particular
- interface identified by the index value ifIndex."
- INDEX { ifIndex, ifRcvAddressAddress }
- ::= { ifRcvAddressTable 1 }
- IfRcvAddressEntry ::=
- SEQUENCE {
- ifRcvAddressAddress PhysAddress,
- ifRcvAddressStatus RowStatus,
- ifRcvAddressType INTEGER
- }
- ifRcvAddressAddress OBJECT-TYPE
- SYNTAX PhysAddress
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "An address for which the system will accept packets/frames
- on this entry's interface."
- ::= { ifRcvAddressEntry 1 }
- ifRcvAddressStatus OBJECT-TYPE
- SYNTAX RowStatus
- MAX-ACCESS read-create
- STATUS current
- DESCRIPTION
- "This object is used to create and delete rows in the
- ifRcvAddressTable."
- ::= { ifRcvAddressEntry 2 }
- ifRcvAddressType OBJECT-TYPE
- SYNTAX INTEGER {
- other(1),
- volatile(2),
- nonVolatile(3)
- }
- MAX-ACCESS read-create
- STATUS current
- DESCRIPTION
- "This object has the value nonVolatile(3) for those entries
- in the table which are valid and will not be deleted by the
- next restart of the managed system. Entries having the
- value volatile(2) are valid and exist, but have not been
- saved, so that will not exist after the next restart of the
- managed system. Entries having the value other(1) are valid
- and exist but are not classified as to whether they will
- continue to exist after the next restart."
- DEFVAL { volatile }
- ::= { ifRcvAddressEntry 3 }
- -- definition of interface-related traps.
- linkDown NOTIFICATION-TYPE
- OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
- STATUS current
- DESCRIPTION
- "A linkDown trap signifies that the SNMP entity, acting in
- an agent role, has detected that the ifOperStatus object for
- one of its communication links is about to enter the down
- state from some other state (but not from the notPresent
- state). This other state is indicated by the included value
- of ifOperStatus."
- ::= { snmpTraps 3 }
- linkUp NOTIFICATION-TYPE
- OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
- STATUS current
- DESCRIPTION
- "A linkUp trap signifies that the SNMP entity, acting in an
- agent role, has detected that the ifOperStatus object for
- one of its communication links left the down state and
- transitioned into some other state (but not into the
- notPresent state). This other state is indicated by the
- included value of ifOperStatus."
- ::= { snmpTraps 4 }
- -- conformance information
- ifConformance OBJECT IDENTIFIER ::= { ifMIB 2 }
- ifGroups OBJECT IDENTIFIER ::= { ifConformance 1 }
- ifCompliances OBJECT IDENTIFIER ::= { ifConformance 2 }
- -- compliance statements
- ifCompliance3 MODULE-COMPLIANCE
- STATUS current
- DESCRIPTION
- "The compliance statement for SNMP entities which have
- network interfaces."
- MODULE -- this module
- MANDATORY-GROUPS { ifGeneralInformationGroup,
- linkUpDownNotificationsGroup }
- -- The groups:
- -- ifFixedLengthGroup
- -- ifHCFixedLengthGroup
- -- ifPacketGroup
- -- ifHCPacketGroup
- -- ifVHCPacketGroup
- -- are mutually exclusive; at most one of these groups is implemented
- -- for a particular interface. When any of these groups is implemented
- -- for a particular interface, then ifCounterDiscontinuityGroup must
- -- also be implemented for that interface.
- GROUP ifFixedLengthGroup
- DESCRIPTION
- "This group is mandatory for those network interfaces which
- are character-oriented or transmit data in fixed-length
- transmission units, and for which the value of the
- corresponding instance of ifSpeed is less than or equal to
- 20,000,000 bits/second."
- GROUP ifHCFixedLengthGroup
- DESCRIPTION
- "This group is mandatory for those network interfaces which
- are character-oriented or transmit data in fixed-length
- transmission units, and for which the value of the
- corresponding instance of ifSpeed is greater than 20,000,000
- bits/second."
- GROUP ifPacketGroup
- DESCRIPTION
- "This group is mandatory for those network interfaces which
- are packet-oriented, and for which the value of the
- corresponding instance of ifSpeed is less than or equal to
- 20,000,000 bits/second."
- GROUP ifHCPacketGroup
- DESCRIPTION
- "This group is mandatory only for those network interfaces
- which are packet-oriented and for which the value of the
- corresponding instance of ifSpeed is greater than 20,000,000
- bits/second but less than or equal to 650,000,000
- bits/second."
- GROUP ifVHCPacketGroup
- DESCRIPTION
- "This group is mandatory only for those network interfaces
- which are packet-oriented and for which the value of the
- corresponding instance of ifSpeed is greater than
- 650,000,000 bits/second."
- GROUP ifCounterDiscontinuityGroup
- DESCRIPTION
- "This group is mandatory for those network interfaces that
- are required to maintain counters (i.e., those for which one
- of the ifFixedLengthGroup, ifHCFixedLengthGroup,
- ifPacketGroup, ifHCPacketGroup, or ifVHCPacketGroup is
- mandatory)."
- GROUP ifRcvAddressGroup
- DESCRIPTION
- "The applicability of this group MUST be defined by the
- media-specific MIBs. Media-specific MIBs must define the
- exact meaning, use, and semantics of the addresses in this
- group."
- OBJECT ifLinkUpDownTrapEnable
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- OBJECT ifPromiscuousMode
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- OBJECT ifAdminStatus
- SYNTAX INTEGER { up(1), down(2) }
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required, nor is support for the value
- testing(3)."
- OBJECT ifAlias
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- ::= { ifCompliances 3 }
- -- units of conformance
- ifGeneralInformationGroup OBJECT-GROUP
- OBJECTS { ifIndex, ifDescr, ifType, ifSpeed, ifPhysAddress,
- ifAdminStatus, ifOperStatus, ifLastChange,
- ifLinkUpDownTrapEnable, ifConnectorPresent,
- ifHighSpeed, ifName, ifNumber, ifAlias,
- ifTableLastChange }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information applicable to
- all network interfaces."
- ::= { ifGroups 10 }
- -- the following five groups are mutually exclusive; at most
- -- one of these groups is implemented for any interface
- ifFixedLengthGroup OBJECT-GROUP
- OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
- ifInErrors, ifOutErrors }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information specific to
- non-high speed (non-high speed interfaces transmit and
- receive at speeds less than or equal to 20,000,000
- bits/second) character-oriented or fixed-length-transmission
- network interfaces."
- ::= { ifGroups 2 }
- ifHCFixedLengthGroup OBJECT-GROUP
- OBJECTS { ifHCInOctets, ifHCOutOctets,
- ifInOctets, ifOutOctets, ifInUnknownProtos,
- ifInErrors, ifOutErrors }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information specific to
- high speed (greater than 20,000,000 bits/second) character-
- oriented or fixed-length-transmission network interfaces."
- ::= { ifGroups 3 }
- ifPacketGroup OBJECT-GROUP
- OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,
- ifInErrors, ifOutErrors,
- ifMtu, ifInUcastPkts, ifInMulticastPkts,
- ifInBroadcastPkts, ifInDiscards,
- ifOutUcastPkts, ifOutMulticastPkts,
- ifOutBroadcastPkts, ifOutDiscards,
- ifPromiscuousMode }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information specific to
- non-high speed (non-high speed interfaces transmit and
- receive at speeds less than or equal to 20,000,000
- bits/second) packet-oriented network interfaces."
- ::= { ifGroups 4 }
- ifHCPacketGroup OBJECT-GROUP
- OBJECTS { ifHCInOctets, ifHCOutOctets,
- ifInOctets, ifOutOctets, ifInUnknownProtos,
- ifInErrors, ifOutErrors,
- ifMtu, ifInUcastPkts, ifInMulticastPkts,
- ifInBroadcastPkts, ifInDiscards,
- ifOutUcastPkts, ifOutMulticastPkts,
- ifOutBroadcastPkts, ifOutDiscards,
- ifPromiscuousMode }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information specific to
- high speed (greater than 20,000,000 bits/second but less
- than or equal to 650,000,000 bits/second) packet-oriented
- network interfaces."
- ::= { ifGroups 5 }
- ifVHCPacketGroup OBJECT-GROUP
- OBJECTS { ifHCInUcastPkts, ifHCInMulticastPkts,
- ifHCInBroadcastPkts, ifHCOutUcastPkts,
- ifHCOutMulticastPkts, ifHCOutBroadcastPkts,
- ifHCInOctets, ifHCOutOctets,
- ifInOctets, ifOutOctets, ifInUnknownProtos,
- ifInErrors, ifOutErrors,
- ifMtu, ifInUcastPkts, ifInMulticastPkts,
- ifInBroadcastPkts, ifInDiscards,
- ifOutUcastPkts, ifOutMulticastPkts,
- ifOutBroadcastPkts, ifOutDiscards,
- ifPromiscuousMode }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information specific to
- higher speed (greater than 650,000,000 bits/second) packet-
- oriented network interfaces."
- ::= { ifGroups 6 }
- ifRcvAddressGroup OBJECT-GROUP
- OBJECTS { ifRcvAddressStatus, ifRcvAddressType }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information on the
- multiple addresses which an interface receives."
- ::= { ifGroups 7 }
- ifStackGroup2 OBJECT-GROUP
- OBJECTS { ifStackStatus, ifStackLastChange }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information on the
- layering of MIB-II interfaces."
- ::= { ifGroups 11 }
- ifCounterDiscontinuityGroup OBJECT-GROUP
- OBJECTS { ifCounterDiscontinuityTime }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information specific to
- interface counter discontinuities."
- ::= { ifGroups 13 }
- linkUpDownNotificationsGroup NOTIFICATION-GROUP
- NOTIFICATIONS { linkUp, linkDown }
- STATUS current
- DESCRIPTION
- "The notifications which indicate specific changes in the
- value of ifOperStatus."
- ::= { ifGroups 14 }
- -- Deprecated Definitions - Objects
- --
- -- The Interface Test Table
- --
- -- This group of objects is optional. However, a media-specific
- -- MIB may make implementation of this group mandatory.
- --
- -- This table replaces the ifExtnsTestTable
- --
- ifTestTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfTestEntry
- MAX-ACCESS not-accessible
- STATUS deprecated
- DESCRIPTION
- "This table contains one entry per interface. It defines
- objects which allow a network manager to instruct an agent
- to test an interface for various faults. Tests for an
- interface are defined in the media-specific MIB for that
- interface. After invoking a test, the object ifTestResult
- can be read to determine the outcome. If an agent can not
- perform the test, ifTestResult is set to so indicate. The
- object ifTestCode can be used to provide further test-
- specific or interface-specific (or even enterprise-specific)
- information concerning the outcome of the test. Only one
- test can be in progress on each interface at any one time.
- If one test is in progress when another test is invoked, the
- second test is rejected. Some agents may reject a test when
- a prior test is active on another interface.
- Before starting a test, a manager-station must first obtain
- 'ownership' of the entry in the ifTestTable for the
- interface to be tested. This is accomplished with the
- ifTestId and ifTestStatus objects as follows:
- try_again:
- get (ifTestId, ifTestStatus)
- while (ifTestStatus != notInUse)
- /*
- * Loop while a test is running or some other
- * manager is configuring a test.
- */
- short delay
- get (ifTestId, ifTestStatus)
- }
- /*
- * Is not being used right now -- let's compete
- * to see who gets it.
- */
- lock_value = ifTestId
- if ( set(ifTestId = lock_value, ifTestStatus = inUse,
- ifTestOwner = 'my-IP-address') == FAILURE)
- /*
- * Another manager got the ifTestEntry -- go
- * try again
- */
- goto try_again;
- /*
- * I have the lock
- */
- set up any test parameters.
- /*
- * This starts the test
- */
- set(ifTestType = test_to_run);
- wait for test completion by polling ifTestResult
- when test completes, agent sets ifTestResult
- agent also sets ifTestStatus = 'notInUse'
- retrieve any additional test results, and ifTestId
- if (ifTestId == lock_value+1) results are valid
- A manager station first retrieves the value of the
- appropriate ifTestId and ifTestStatus objects, periodically
- repeating the retrieval if necessary, until the value of
- ifTestStatus is 'notInUse'. The manager station then tries
- to set the same ifTestId object to the value it just
- retrieved, the same ifTestStatus object to 'inUse', and the
- corresponding ifTestOwner object to a value indicating
- itself. If the set operation succeeds then the manager has
- obtained ownership of the ifTestEntry, and the value of the
- ifTestId object is incremented by the agent (per the
- semantics of TestAndIncr). Failure of the set operation
- indicates that some other manager has obtained ownership of
- the ifTestEntry.
- Once ownership is obtained, any test parameters can be
- setup, and then the test is initiated by setting ifTestType.
- On completion of the test, the agent sets ifTestStatus to
- 'notInUse'. Once this occurs, the manager can retrieve the
- results. In the (rare) event that the invocation of tests
- by two network managers were to overlap, then there would be
- a possibility that the first test's results might be
- overwritten by the second test's results prior to the first
- results being read. This unlikely circumstance can be
- detected by a network manager retrieving ifTestId at the
- same time as retrieving the test results, and ensuring that
- the results are for the desired request.
- If ifTestType is not set within an abnormally long period of
- time after ownership is obtained, the agent should time-out
- the manager, and reset the value of the ifTestStatus object
- back to 'notInUse'. It is suggested that this time-out
- period be 5 minutes.
- In general, a management station must not retransmit a
- request to invoke a test for which it does not receive a
- response; instead, it properly inspects an agent's MIB to
- determine if the invocation was successful. Only if the
- invocation was unsuccessful, is the invocation request
- retransmitted.
- Some tests may require the interface to be taken off-line in
- order to execute them, or may even require the agent to
- reboot after completion of the test. In these
- circumstances, communication with the management station
- invoking the test may be lost until after completion of the
- test. An agent is not required to support such tests.
- However, if such tests are supported, then the agent should
- make every effort to transmit a response to the request
- which invoked the test prior to losing communication. When
- the agent is restored to normal service, the results of the
- test are properly made available in the appropriate objects.
- Note that this requires that the ifIndex value assigned to
- an interface must be unchanged even if the test causes a
- reboot. An agent must reject any test for which it cannot,
- perhaps due to resource constraints, make available at least
- the minimum amount of information after that test
- completes."
- ::= { ifMIBObjects 3 }
- ifTestEntry OBJECT-TYPE
- SYNTAX IfTestEntry
- MAX-ACCESS not-accessible
- STATUS deprecated
- DESCRIPTION
- "An entry containing objects for invoking tests on an
- interface."
- AUGMENTS { ifEntry }
- ::= { ifTestTable 1 }
- IfTestEntry ::=
- SEQUENCE {
- ifTestId TestAndIncr,
- ifTestStatus INTEGER,
- ifTestType AutonomousType,
- ifTestResult INTEGER,
- ifTestCode OBJECT IDENTIFIER,
- ifTestOwner OwnerString
- }
- ifTestId OBJECT-TYPE
- SYNTAX TestAndIncr
- MAX-ACCESS read-write
- STATUS deprecated
- DESCRIPTION
- "This object identifies the current invocation of the
- interface's test."
- ::= { ifTestEntry 1 }
- ifTestStatus OBJECT-TYPE
- SYNTAX INTEGER { notInUse(1), inUse(2) }
- MAX-ACCESS read-write
- STATUS deprecated
- DESCRIPTION
- "This object indicates whether or not some manager currently
- has the necessary 'ownership' required to invoke a test on
- this interface. A write to this object is only successful
- when it changes its value from 'notInUse(1)' to 'inUse(2)'.
- After completion of a test, the agent resets the value back
- to 'notInUse(1)'."
- ::= { ifTestEntry 2 }
- ifTestType OBJECT-TYPE
- SYNTAX AutonomousType
- MAX-ACCESS read-write
- STATUS deprecated
- DESCRIPTION
- "A control variable used to start and stop operator-
- initiated interface tests. Most OBJECT IDENTIFIER values
- assigned to tests are defined elsewhere, in association with
- specific types of interface. However, this document assigns
- a value for a full-duplex loopback test, and defines the
- special meanings of the subject identifier:
- noTest OBJECT IDENTIFIER ::= { 0 0 }
- When the value noTest is written to this object, no action
- is taken unless a test is in progress, in which case the
- test is aborted. Writing any other value to this object is
- only valid when no test is currently in progress, in which
- case the indicated test is initiated.
- When read, this object always returns the most recent value
- that ifTestType was set to. If it has not been set since
- the last initialization of the network management subsystem
- on the agent, a value of noTest is returned."
- ::= { ifTestEntry 3 }
- ifTestResult OBJECT-TYPE
- SYNTAX INTEGER {
- none(1), -- no test yet requested
- success(2),
- inProgress(3),
- notSupported(4),
- unAbleToRun(5), -- due to state of system
- aborted(6),
- failed(7)
- }
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "This object contains the result of the most recently
- requested test, or the value none(1) if no tests have been
- requested since the last reset. Note that this facility
- provides no provision for saving the results of one test
- when starting another, as could be required if used by
- multiple managers concurrently."
- ::= { ifTestEntry 4 }
- ifTestCode OBJECT-TYPE
- SYNTAX OBJECT IDENTIFIER
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "This object contains a code which contains more specific
- information on the test result, for example an error-code
- after a failed test. Error codes and other values this
- object may take are specific to the type of interface and/or
- test. The value may have the semantics of either the
- AutonomousType or InstancePointer textual conventions as
- defined in RFC 2579. The identifier:
- testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }
- is defined for use if no additional result code is
- available."
- ::= { ifTestEntry 5 }
- ifTestOwner OBJECT-TYPE
- SYNTAX OwnerString
- MAX-ACCESS read-write
- STATUS deprecated
- DESCRIPTION
- "The entity which currently has the 'ownership' required to
- invoke a test on this interface."
- ::= { ifTestEntry 6 }
- -- Deprecated Definitions - Groups
- ifGeneralGroup OBJECT-GROUP
- OBJECTS { ifDescr, ifType, ifSpeed, ifPhysAddress,
- ifAdminStatus, ifOperStatus, ifLastChange,
- ifLinkUpDownTrapEnable, ifConnectorPresent,
- ifHighSpeed, ifName }
- STATUS deprecated
- DESCRIPTION
- "A collection of objects deprecated in favour of
- ifGeneralInformationGroup."
- ::= { ifGroups 1 }
- ifTestGroup OBJECT-GROUP
- OBJECTS { ifTestId, ifTestStatus, ifTestType,
- ifTestResult, ifTestCode, ifTestOwner }
- STATUS deprecated
- DESCRIPTION
- "A collection of objects providing the ability to invoke
- tests on an interface."
- ::= { ifGroups 8 }
- ifStackGroup OBJECT-GROUP
- OBJECTS { ifStackStatus }
- STATUS deprecated
- DESCRIPTION
- "The previous collection of objects providing information on
- the layering of MIB-II interfaces."
- ::= { ifGroups 9 }
- ifOldObjectsGroup OBJECT-GROUP
- OBJECTS { ifInNUcastPkts, ifOutNUcastPkts,
- ifOutQLen, ifSpecific }
- STATUS deprecated
- DESCRIPTION
- "The collection of objects deprecated from the original MIB-
- II interfaces group."
- ::= { ifGroups 12 }
- -- Deprecated Definitions - Compliance
- ifCompliance MODULE-COMPLIANCE
- STATUS deprecated
- DESCRIPTION
- "A compliance statement defined in a previous version of
- this MIB module, for SNMP entities which have network
- interfaces."
- MODULE -- this module
- MANDATORY-GROUPS { ifGeneralGroup, ifStackGroup }
- GROUP ifFixedLengthGroup
- DESCRIPTION
- "This group is mandatory for all network interfaces which
- are character-oriented or transmit data in fixed-length
- transmission units."
- GROUP ifHCFixedLengthGroup
- DESCRIPTION
- "This group is mandatory only for those network interfaces
- which are character-oriented or transmit data in fixed-
- length transmission units, and for which the value of the
- corresponding instance of ifSpeed is greater than 20,000,000
- bits/second."
- GROUP ifPacketGroup
- DESCRIPTION
- "This group is mandatory for all network interfaces which
- are packet-oriented."
- GROUP ifHCPacketGroup
- DESCRIPTION
- "This group is mandatory only for those network interfaces
- which are packet-oriented and for which the value of the
- corresponding instance of ifSpeed is greater than
- 650,000,000 bits/second."
- GROUP ifTestGroup
- DESCRIPTION
- "This group is optional. Media-specific MIBs which require
- interface tests are strongly encouraged to use this group
- for invoking tests and reporting results. A medium specific
- MIB which has mandatory tests may make implementation of
- this group mandatory."
- GROUP ifRcvAddressGroup
- DESCRIPTION
- "The applicability of this group MUST be defined by the
- media-specific MIBs. Media-specific MIBs must define the
- exact meaning, use, and semantics of the addresses in this
- group."
- OBJECT ifLinkUpDownTrapEnable
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- OBJECT ifPromiscuousMode
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- OBJECT ifStackStatus
- SYNTAX INTEGER { active(1) } -- subset of RowStatus
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required, and only one of the six
- enumerated values for the RowStatus textual convention need
- be supported, specifically: active(1)."
- OBJECT ifAdminStatus
- SYNTAX INTEGER { up(1), down(2) }
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required, nor is support for the value
- testing(3)."
- ::= { ifCompliances 1 }
- ifCompliance2 MODULE-COMPLIANCE
- STATUS deprecated
- DESCRIPTION
- "A compliance statement defined in a previous version of
- this MIB module, for SNMP entities which have network
- interfaces."
- MODULE -- this module
- MANDATORY-GROUPS { ifGeneralInformationGroup, ifStackGroup2,
- ifCounterDiscontinuityGroup }
- GROUP ifFixedLengthGroup
- DESCRIPTION
- "This group is mandatory for all network interfaces which
- are character-oriented or transmit data in fixed-length
- transmission units."
- GROUP ifHCFixedLengthGroup
- DESCRIPTION
- "This group is mandatory only for those network interfaces
- which are character-oriented or transmit data in fixed-
- length transmission units, and for which the value of the
- corresponding instance of ifSpeed is greater than 20,000,000
- bits/second."
- GROUP ifPacketGroup
- DESCRIPTION
- "This group is mandatory for all network interfaces which
- are packet-oriented."
- GROUP ifHCPacketGroup
- DESCRIPTION
- "This group is mandatory only for those network interfaces
- which are packet-oriented and for which the value of the
- corresponding instance of ifSpeed is greater than
- 650,000,000 bits/second."
- GROUP ifRcvAddressGroup
- DESCRIPTION
- "The applicability of this group MUST be defined by the
- media-specific MIBs. Media-specific MIBs must define the
- exact meaning, use, and semantics of the addresses in this
- group."
- OBJECT ifLinkUpDownTrapEnable
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- OBJECT ifPromiscuousMode
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- OBJECT ifStackStatus
- SYNTAX INTEGER { active(1) } -- subset of RowStatus
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required, and only one of the six
- enumerated values for the RowStatus textual convention need
- be supported, specifically: active(1)."
- OBJECT ifAdminStatus
- SYNTAX INTEGER { up(1), down(2) }
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required, nor is support for the value
- testing(3)."
- OBJECT ifAlias
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
- ::= { ifCompliances 2 }
- END