Blame mibs/ietf/IF-MIB

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