home *** CD-ROM | disk | FTP | other *** search
Text File | 1999-11-22 | 50.3 KB | 1,484 lines |
- IF-MIB DEFINITIONS ::= BEGIN
-
- IMPORTS
- IANAifType
- FROM IANAifType-MIB
- snmpTraps
- FROM SNMPv2-MIB
- OBJECT-GROUP, MODULE-COMPLIANCE
- FROM SNMPv2-CONF
- TestAndIncr, AutonomousType, RowStatus, TruthValue, PhysAddress, DisplayString,
- TEXTUAL-CONVENTION
- FROM SNMPv2-TC
- NOTIFICATION-TYPE, mib-2, Counter64, TimeTicks, Integer32, Gauge32, Counter32,
- OBJECT-TYPE, MODULE-IDENTITY
- FROM SNMPv2-SMI;
-
- interfaces ::= { mib-2 2 }
-
- ifMIB MODULE-IDENTITY
- LAST-UPDATED "9311082155Z"
- ORGANIZATION "IETF Interfaces MIB Working Group"
- CONTACT-INFO
- "Keith McCloghrie
-
- Postal: Hughes LAN Systems
- 1225 Charleston Road, Mountain View, CA 94043
-
- Tel: +1 415 966 7934
- E-Mail: kzm@hls.com
-
- Frank Kastenholz
-
- Postal: FTP Software
- 2 High Street, North Andover, MA 01845
-
- Tel: +1 508 685 4000
- E-Mail: kasten@ftp.com"
- DESCRIPTION
- "The MIB module to describe generic objects for
- network interface sub-layers. This MIB is an updated
- version of MIB-II's ifTable, and incorporates the
- extensions defined in RFC 1229."
- ::= { mib-2 31 }
-
- ifMIBObjects ::= { ifMIB 1 }
-
- OwnerString ::= TEXTUAL-CONVENTION
- DISPLAY-HINT "255a"
- STATUS current
- DESCRIPTION
- "This data type is used to model an administratively
- assigned name of the owner of a resource. This
- information is taken from the NVT ASCII character set.
- It is suggested that this name contain one or more of
- the following: ASCII form of the manager station's
- transport address, management station name (e.g.,
- domain name), network management personnel's name,
- location, or phone number. In some cases the agent
- itself will be the owner of an entry. In these cases,
- this string shall be set to a string starting with
- 'agent'."
- SYNTAX OCTET STRING
-
- InterfaceIndex ::= TEXTUAL-CONVENTION
- DISPLAY-HINT "d"
- STATUS current
- DESCRIPTION
- "A unique value, greater than zero, for each interface
- or interface sub-layer in the managed system. It is
- recommended that values are assigned contiguously
- starting from 1. The value for each interface sub-
- layer must remain constant at least from one re-
- initialization of the entity's network management
- system to the next re-initialization."
- SYNTAX Integer32
-
- ifNumber OBJECT-TYPE
- SYNTAX Integer32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of network interfaces (regardless of their
- current state) present on this system."
- ::= { interfaces 1 }
-
- ifTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "A list of interface entries. The number of entries
- is given by the value of ifNumber."
- ::= { interfaces 2 }
-
- ifEntry OBJECT-TYPE
- SYNTAX IfEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "An entry containing management information applicable
- to a particular interface."
- INDEX { ifIndex }
- ::= { ifTable 1 }
-
- IfEntry ::=
- SEQUENCE {
- ifIndex
- InterfaceIndex,
-
- ifDescr
- DisplayString,
-
- ifType
- IANAifType,
-
- ifMtu
- Integer32,
-
- ifSpeed
- Gauge32,
-
- ifPhysAddress
- PhysAddress,
-
- ifAdminStatus
- INTEGER,
-
- ifOperStatus
- INTEGER,
-
- ifLastChange
- TimeTicks,
-
- ifInOctets
- Counter32,
-
- ifInUcastPkts
- Counter32,
-
- ifInNUcastPkts
- Counter32,
-
- ifInDiscards
- Counter32,
-
- ifInErrors
- Counter32,
-
- ifInUnknownProtos
- Counter32,
-
- ifOutOctets
- Counter32,
-
- ifOutUcastPkts
- Counter32,
-
- ifOutNUcastPkts
- Counter32,
-
- ifOutDiscards
- Counter32,
-
- ifOutErrors
- Counter32,
-
- ifOutQLen
- Gauge32,
-
- ifSpecific
- OBJECT IDENTIFIER
- }
-
- ifIndex OBJECT-TYPE
- SYNTAX InterfaceIndex
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "A unique value, greater than zero, for each
- interface. It is recommended that values are assigned
- contiguously starting from 1. The value for each
- interface sub-layer must remain constant at least from
- one re-initialization of the entity's network
- management system to the next re-initialization."
- ::= { ifEntry 1 }
-
- ifDescr OBJECT-TYPE
- SYNTAX DisplayString
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "A textual string containing information about the
- interface. This string should include the name of the
- manufacturer, the product name and the version of the
- interface hardware/software."
- ::= { ifEntry 2 }
-
- ifType OBJECT-TYPE
- SYNTAX IANAifType
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The type of interface. Additional values for ifType
- are assigned by the Internet Assigned Numbers
- Authority (IANA), through updating the syntax of the
- IANAifType textual convention."
- ::= { ifEntry 3 }
-
- ifMtu OBJECT-TYPE
- SYNTAX Integer32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The size of the largest packet which can be
- sent/received on the interface, specified in octets.
- For interfaces that are used for transmitting network
- datagrams, this is the size of the largest network
- datagram that can be sent on the interface."
- ::= { ifEntry 4 }
-
- ifSpeed OBJECT-TYPE
- SYNTAX Gauge32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "An estimate of the interface's current bandwidth in
- bits per second. For interfaces which do not vary in
- bandwidth or for those where no accurate estimation
- can be made, this object should contain the nominal
- bandwidth. If the bandwidth of the interface is
- greater than the maximum value reportable by this
- object then this object should report its maximum
- value (4,294,967,295) and ifHighSpeed must be used to
- report the interace's speed. For a sub-layer which
- has no concept of bandwidth, this object should be
- zero."
- ::= { ifEntry 5 }
-
- ifPhysAddress OBJECT-TYPE
- SYNTAX PhysAddress
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The interface's address at its protocol sub-layer.
- The interface's media-specific MIB must define the bit
- and byte ordering and format of the value contained by
- this object. For interfaces which do not have such an
- address (e.g., a serial line), this object should
- contain an octet string of zero length."
- ::= { ifEntry 6 }
-
- ifAdminStatus OBJECT-TYPE
- SYNTAX INTEGER {
- up(1),
- down(2),
- testing(3)
- }
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "The desired state of the interface. The testing(3)
- state indicates that no operational packets can be
- passed. When a managed system initializes, all
- interfaces start with ifAdminStatus in the down(2)
- state. As a result of either explicit management
- action or per configuration information retained by
- the managed system, ifAdminStatus is then changed to
- either the up(1) or testing(3) states (or remains in
- the down(2) state)."
- ::= { ifEntry 7 }
-
- ifOperStatus OBJECT-TYPE
- SYNTAX INTEGER {
- up(1),
- down(2),
- testing(3),
- unknown(4),
- dormant(5)
- }
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The current operational state of the interface. The
- testing(3) state indicates that no operational packets
- can be passed. If ifAdminStatus is down(2) then
- ifOperStatus should be down(2). If ifAdminStatus is
- changed to up(1) then ifOperStatus should change to
- up(1) if the interface is ready to transmit and
- receive network traffic; it should change to
- dormant(5) if the interface is waiting for external
- actions (such as a serial line waiting for an
- incomming connection); it should remain in the down(2)
- state if and only if there is a fault that prevents if
- from going to the up(1) state."
- ::= { ifEntry 8 }
-
- ifLastChange OBJECT-TYPE
- SYNTAX TimeTicks
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The value of sysUpTime at the time the interface
- entered its current operational state. If the current
- state was entered prior to the last re-initialization
- of the local network management subsystem, then this
- object contains a zero value."
- ::= { ifEntry 9 }
-
- ifInOctets OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets received on the interface,
- including framing characters."
- ::= { ifEntry 10 }
-
- ifInUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to
- a higher (sub-)layer, which were not addressed to a
- multicast or broadcast address at this sub-layer."
- ::= { ifEntry 11 }
-
- ifInNUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to
- a higher (sub-)layer, which were addressed to a
- multicast or broadcast address at this sub-layer.
- This object is deprecated in favour of
- ifInMulticastPkts and ifInBroadcastPkts."
- ::= { ifEntry 12 }
-
- ifInDiscards OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of inbound packets which were chosen to be
- discarded even though no errors had been detected to
- prevent their being deliverable to a higher-layer
- protocol. One possible reason for discarding such a
- packet could be to free up buffer space."
- ::= { ifEntry 13 }
-
- ifInErrors OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "For packet-oriented interfaces, the number of inbound
- packets that contained errors preventing them from
- being deliverable to a higher-layer protocol. For
- character-oriented or fixed-length interfaces, the
- number of inbound transmission units that contained
- errors preventing them from being deliverable to a
- higher-layer protocol."
- ::= { ifEntry 14 }
-
- ifInUnknownProtos OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "For packet-oriented interfaces, the number of packets
- received via the interface which were discarded
- because of an unknown or unsupported protocol. For
- character-oriented or fixed-length interfaces which
- support protocol multiplexing the number of
- transmission units received via the interface which
- were discarded because of an unknown or unsupported
- protocol. For any interface which does not support
- protocol multiplexing, this counter will always be 0."
- ::= { ifEntry 15 }
-
- ifOutOctets OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets transmitted out of the
- interface, including framing characters."
- ::= { ifEntry 16 }
-
- ifOutUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level
- protocols requested be transmitted, and which were not
- addressed to a multicast or broadcast address at this
- sub-layer, including those that were discarded or not
- sent."
- ::= { ifEntry 17 }
-
- ifOutNUcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "The total number of packets that higher-level
- protocols requested be transmitted, and which were
- addressed to a multicast or broadcast address at this
- sub-layer, including those that were discarded or not
- sent.
-
- This object is deprecated in favour of
- ifOutMulticastPkts and ifOutBroadcastPkts."
- ::= { ifEntry 18 }
-
- ifOutDiscards OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of outbound packets which were chosen to
- be discarded even though no errors had been detected
- to prevent their being transmitted. One possible
- reason for discarding such a packet could be to free
- up buffer space."
- ::= { ifEntry 19 }
-
- ifOutErrors OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "For packet-oriented interfaces, the number of
- outbound packets that could not be transmitted because
- of errors. For character-oriented or fixed-length
- interfaces, the number of outbound transmission units
- that could not be transmitted because of errors."
- ::= { ifEntry 20 }
-
- ifOutQLen OBJECT-TYPE
- SYNTAX Gauge32
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "The length of the output packet queue (in packets)."
- ::= { ifEntry 21 }
-
- ifSpecific OBJECT-TYPE
- SYNTAX OBJECT IDENTIFIER
- MAX-ACCESS read-only
- STATUS deprecated
- DESCRIPTION
- "A reference to MIB definitions specific to the
- particular media being used to realize the interface.
- It is recommended that this value point to an instance
- of a MIB object in the media-specific MIB, i.e., that
- this object have the semantics associated with the
- InstancePointer textual convention defined in RFC
- 1443. In fact, it is recommended that the media-
- specific MIB specify what value ifSpecific should/can
- take for values of ifType. If no MIB definitions
- specific to the particular media are available, the
- value should be set to the OBJECT IDENTIFIER { 0 0 }."
- ::= { ifEntry 22 }
-
- ifXTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfXEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "A list of interface entries. The number of entries
- is given by the value of ifNumber. This table
- contains additional objects for the interface table."
- ::= { ifMIBObjects 1 }
-
- ifXEntry OBJECT-TYPE
- SYNTAX IfXEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "An entry containing additional management information
- applicable to a particular interface."
- AUGMENTS { ifEntry }
- ::= { ifXTable 1 }
-
- IfXEntry ::=
- SEQUENCE {
- ifName
- DisplayString,
-
- ifInMulticastPkts
- Counter32,
-
- ifInBroadcastPkts
- Counter32,
-
- ifOutMulticastPkts
- Counter32,
-
- ifOutBroadcastPkts
- Counter32,
-
- ifHCInOctets
- Counter64,
-
- ifHCInUcastPkts
- Counter64,
-
- ifHCInMulticastPkts
- Counter64,
-
- ifHCInBroadcastPkts
- Counter64,
-
- ifHCOutOctets
- Counter64,
-
- ifHCOutUcastPkts
- Counter64,
-
- ifHCOutMulticastPkts
- Counter64,
-
- ifHCOutBroadcastPkts
- Counter64,
-
- ifLinkUpDownTrapEnable
- INTEGER,
-
- ifHighSpeed
- Gauge32,
-
- ifPromiscuousMode
- TruthValue,
-
- ifConnectorPresent
- TruthValue
- }
-
- ifName OBJECT-TYPE
- SYNTAX DisplayString
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The textual name of the interface. The value of this
- object should be the name of the interface as assigned
- by the local device and should be suitable for use in
- commands entered at the device's `console'. This
- might be a text name, such as `le0' or a simple port
- number, such as `1', depending on the interface naming
- syntax of the device. If several entries in the
- ifTable together represent a single interface as named
- by the device, then each will have the same value of
- ifName. If there is no local name, or this object is
- otherwise not applicable, then this object contains a
- 0-length string."
- ::= { ifXEntry 1 }
-
- ifInMulticastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to
- a higher (sub-)layer, which were addressed to a
- multicast address at this sub-layer. For a MAC layer
- protocol, this includes both Group and Functional
- addresses."
- ::= { ifXEntry 2 }
-
- ifInBroadcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to
- a higher (sub-)layer, which were addressed to a
- broadcast address at this sub-layer."
- ::= { ifXEntry 3 }
-
- ifOutMulticastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level
- protocols requested be transmitted, and which were
- addressed to a multicast address at this sub-layer,
- including those that were discarded or not sent. For
- a MAC layer protocol, this includes both Group and
- Functional addresses."
- ::= { ifXEntry 4 }
-
- ifOutBroadcastPkts OBJECT-TYPE
- SYNTAX Counter32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level
- protocols requested be transmitted, and which were
- addressed to a broadcast address at this sub-layer,
- including those that were discarded or not sent."
- ::= { ifXEntry 5 }
-
- ifHCInOctets OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets received on the interface,
- including framing characters. This object is a 64-bit
- version of ifInOctets."
- ::= { ifXEntry 6 }
-
- ifHCInUcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to
- a higher (sub-)layer, which were not addressed to a
- multicast or broadcast address at this sub-layer.
- This object is a 64-bit version of ifInUcastPkts."
- ::= { ifXEntry 7 }
-
- ifHCInMulticastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to
- a higher (sub-)layer, which were addressed to a
- multicast address at this sub-layer. For a MAC layer
- protocol, this includes both Group and Functional
- addresses. This object is a 64-bit version of
- ifInMulticastPkts."
- ::= { ifXEntry 8 }
-
- ifHCInBroadcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The number of packets, delivered by this sub-layer to
- a higher (sub-)layer, which were addressed to a
- broadcast address at this sub-layer. This object is a
- 64-bit version of ifInBroadcastPkts."
- ::= { ifXEntry 9 }
-
- ifHCOutOctets OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of octets transmitted out of the
- interface, including framing characters. This object
- is a 64-bit version of ifOutOctets."
- ::= { ifXEntry 10 }
-
- ifHCOutUcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level
- protocols requested be transmitted, and which were not
- addressed to a multicast or broadcast address at this
- sub-layer, including those that were discarded or not
- sent. This object is a 64-bit version of
- ifOutUcastPkts."
- ::= { ifXEntry 11 }
-
- ifHCOutMulticastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level
- protocols requested be transmitted, and which were
- addressed to a multicast address at this sub-layer,
- including those that were discarded or not sent. For
- a MAC layer protocol, this includes both Group and
- Functional addresses. This object is a 64-bit version
- of ifOutMulticastPkts."
- ::= { ifXEntry 12 }
-
- ifHCOutBroadcastPkts OBJECT-TYPE
- SYNTAX Counter64
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "The total number of packets that higher-level
- protocols requested be transmitted, and which were
- addressed to a broadcast address at this sub-layer,
- including those that were discarded or not sent. This
- object is a 64-bit version of ifOutBroadcastPkts."
- ::= { ifXEntry 13 }
-
- ifLinkUpDownTrapEnable OBJECT-TYPE
- SYNTAX INTEGER {
- enabled(1),
- disabled(2)
- }
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "Indicates whether linkUp/linkDown traps should be
- generated for this interface.
-
- By default, this object should have the value
- enabled(1) for interfaces which do not operate on
- 'top' of any other interface (as defined in the
- ifStackTable), and disabled(2) otherwise."
- ::= { ifXEntry 14 }
-
- ifHighSpeed OBJECT-TYPE
- SYNTAX Gauge32
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "An estimate of the interface's current bandwidth in
- units of 1,000,000 bits per second. If this object
- reports a value of `n' then the speed of the interface
- is somewhere in the range of `n-500,000' to
- `n+499,999'. For interfaces which do not vary in
- bandwidth or for those where no accurate estimation
- can be made, this object should contain the nominal
- bandwidth. For a sub-layer which has no concept of
- bandwidth, this object should be zero."
- ::= { ifXEntry 15 }
-
- ifPromiscuousMode OBJECT-TYPE
- SYNTAX TruthValue
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "This object has a value of false(2) if this interface
- only accepts packets/frames that are addressed to this
- station. This object has a value of true(1) when the
- station accepts all packets/frames transmitted on the
- media. The value true(1) is only legal on certain
- types of media. If legal, setting this object to a
- value of true(1) may require the interface to be reset
- before becoming effective.
-
- The value of ifPromiscuousMode does not affect the
- reception of broadcast and multicast packets/frames by
- the interface."
- ::= { ifXEntry 16 }
-
- ifConnectorPresent OBJECT-TYPE
- SYNTAX TruthValue
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "This object has the value 'true(1)' if the interface
- sublayer has a physical connector and the value
- 'false(2)' otherwise."
- ::= { ifXEntry 17 }
-
- ifStackTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfStackEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "The table containing information on the relationships
- between the multiple sub-layers of network interfaces.
- In particular, it contains information on which sub-
- layers run 'on top of' which other sub-layers. Each
- sub-layer corresponds to a conceptual row in the
- ifTable."
- ::= { ifMIBObjects 2 }
-
- ifStackEntry OBJECT-TYPE
- SYNTAX IfStackEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "Information on a particular relationship between two
- sub-layers, specifying that one sub-layer runs on
- 'top' of the other sub-layer. Each sub-layer
- corresponds to a conceptual row in the ifTable."
- INDEX { ifStackHigherLayer, ifStackLowerLayer }
- ::= { ifStackTable 1 }
-
- IfStackEntry ::=
- SEQUENCE {
- ifStackHigherLayer
- Integer32,
-
- ifStackLowerLayer
- Integer32,
-
- ifStackStatus
- RowStatus
- }
-
- ifStackHigherLayer OBJECT-TYPE
- SYNTAX Integer32
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "The value of ifIndex corresponding to the higher
- sub-layer of the relationship, i.e., the sub-layer
- which runs on 'top' of the sub-layer identified by the
- corresponding instance of ifStackLowerLayer. If there
- is no higher sub-layer (below the internetwork layer),
- then this object has the value 0."
- ::= { ifStackEntry 1 }
-
- ifStackLowerLayer OBJECT-TYPE
- SYNTAX Integer32
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "The value of ifIndex corresponding to the lower sub-
- layer of the relationship, i.e., the sub-layer which
- runs 'below' the sub-layer identified by the
- corresponding instance of ifStackHigherLayer. If
- there is no lower sub-layer, then this object has the
- value 0."
- ::= { ifStackEntry 2 }
-
- ifStackStatus OBJECT-TYPE
- SYNTAX RowStatus
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "The status of the relationship between two sub-
- layers.
-
- Changing the value of this object from 'active' to
- 'notInService' or 'destroy' will likely have
- consequences up and down the interface stack. Thus,
- write access to this object is likely to be
- inappropriate for some types of interfaces, and many
- implementations will choose not to support write-
- access for any type of interface."
- ::= { ifStackEntry 3 }
-
- ifTestTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfTestEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "This table contains one entry per interface. It
- defines objects which allow a network manager to
- instruct an agent to test an interface for various
- faults. Tests for an interface are defined in the
- media-specific MIB for that interface. After invoking
- a test, the object ifTestResult can be read to
- determine the outcome. If an agent can not perform
- the test, ifTestResult is set to so indicate. The
- object ifTestCode can be used to provide further
- test-specific or interface-specific (or even
- enterprise-specific) information concerning the
- outcome of the test. Only one test can be in progress
- on each interface at any one time. If one test is in
- progress when another test is invoked, the second test
- is rejected. Some agents may reject a test when a
- prior test is active on another interface.
- Before starting a test, a manager-station must first
- obtain 'ownership' of the entry in the ifTestTable for
- the interface to be tested. This is accomplished with
- the ifTestId and ifTestStatus objects as follows:
-
- try_again:
- get (ifTestId, ifTestStatus)
- while (ifTestStatus != notInUse)
- /*
- * Loop while a test is running or some other
- * manager is configuring a test.
- */
- short delay
- get (ifTestId, ifTestStatus)
- }
-
- /*
- * Is not being used right now -- let's compete
- * to see who gets it.
- */
- lock_value = ifTestId
-
- if ( set(ifTestId = lock_value, ifTestStatus = inUse,
- ifTestOwner = 'my-IP-address') == FAILURE)
- /*
- * Another manager got the ifTestEntry -- go
- * try again
- */
- goto try_again;
-
- /*
- * I have the lock
- */
- set up any test parameters.
-
- /*
- * This starts the test
- */
- set(ifTestType = test_to_run);
-
- wait for test completion by polling ifTestResult
-
- when test completes, agent sets ifTestResult
- agent also sets ifTestStatus = 'notInUse'
-
- retrieve any additional test results, and ifTestId
-
- if (ifTestId == lock_value+1) results are valid
- A manager station first retrieves the value of the
- appropriate ifTestId and ifTestStatus objects,
- periodically repeating the retrieval if necessary,
- until the value of ifTestStatus is 'notInUse'. The
- manager station then tries to set the same ifTestId
- object to the value it just retrieved, the same
- ifTestStatus object to 'inUse', and the corresponding
- ifTestOwner object to a value indicating itself. If
- the set operation succeeds then the manager has
- obtained ownership of the ifTestEntry, and the value of
- the ifTestId object is incremented by the agent (per
- the semantics of TestAndIncr). Failure of the set
- operation indicates that some other manager has
- obtained ownership of the ifTestEntry.
-
- Once ownership is obtained, any test parameters can be
- setup, and then the test is initiated by setting
- ifTestType. On completion of the test, the agent sets
- ifTestStatus to 'notInUse'. Once this occurs, the
- manager can retrieve the results. In the (rare) event
- that the invocation of tests by two network managers
- were to overlap, then there would be a possibility that
- the first test's results might be overwritten by the
- second test's results prior to the first results being
- read. This unlikely circumstance can be detected by a
- network manager retrieving ifTestId at the same time as
- retrieving the test results, and ensuring that the
- results are for the desired request.
-
- If ifTestType is not set within an abnormally long
- period of time after ownership is obtained, the agent
- should time-out the manager, and reset the value of the
- ifTestStatus object back to 'notInUse'. It is
- suggested that this time-out period be 5 minutes.
-
- In general, a management station must not retransmit a
- request to invoke a test for which it does not receive
- a response; instead, it properly inspects an agent's
- MIB to determine if the invocation was successful.
- Only if the invocation was unsuccessful, is the
- invocation request retransmitted.
-
- Some tests may require the interface to be taken off-
- line in order to execute them, or may even require the
- agent to reboot after completion of the test. In these
- circumstances, communication with the management
- station invoking the test may be lost until after
- completion of the test. An agent is not required to
- support such tests. However, if such tests are
- supported, then the agent should make every effort to
- transmit a response to the request which invoked the
- test prior to losing communication. When the agent is
- restored to normal service, the results of the test are
- properly made available in the appropriate objects.
- Note that this requires that the ifIndex value assigned
- to an interface must be unchanged even if the test
- causes a reboot. An agent must reject any test for
- which it cannot, perhaps due to resource constraints,
- make available at least the minimum amount of
- information after that test completes."
- ::= { ifMIBObjects 3 }
-
- ifTestEntry OBJECT-TYPE
- SYNTAX IfTestEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "An entry containing objects for invoking tests on an
- interface."
- AUGMENTS { ifEntry }
- ::= { ifTestTable 1 }
-
- IfTestEntry ::=
- SEQUENCE {
- ifTestId
- TestAndIncr,
-
- ifTestStatus
- INTEGER,
-
- ifTestType
- AutonomousType,
-
- ifTestResult
- INTEGER,
-
- ifTestCode
- OBJECT IDENTIFIER,
-
- ifTestOwner
- OwnerString
- }
-
- ifTestId OBJECT-TYPE
- SYNTAX TestAndIncr
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "This object identifies the current invocation of the
- interface's test."
- ::= { ifTestEntry 1 }
-
- ifTestStatus OBJECT-TYPE
- SYNTAX INTEGER {
- notInUse(1),
- inUse(2)
- }
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "This object indicates whether or not some manager
- currently has the necessary 'ownership' required to
- invoke a test on this interface. A write to this
- object is only successful when it changes its value
- from 'notInUse(1)' to 'inUse(2)'. After completion of
- a test, the agent resets the value back to
- 'notInUse(1)'."
- ::= { ifTestEntry 2 }
-
- ifTestType OBJECT-TYPE
- SYNTAX AutonomousType
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "A control variable used to start and stop operator-
- initiated interface tests. Most OBJECT IDENTIFIER
- values assigned to tests are defined elsewhere, in
- association with specific types of interface.
- However, this document assigns a value for a full-
- duplex loopback test, and defines the special meanings
- of the subject identifier:
-
- noTest OBJECT IDENTIFIER ::= { 0 0 }
-
- When the value noTest is written to this object, no
- action is taken unless a test is in progress, in which
- case the test is aborted. Writing any other value to
- this object is only valid when no test is currently in
- progress, in which case the indicated test is
- initiated.
-
- When read, this object always returns the most recent
- value that ifTestType was set to. If it has not been
- set since the last initialization of the network
- management subsystem on the agent, a value of noTest
- is returned."
- ::= { ifTestEntry 3 }
-
- ifTestResult OBJECT-TYPE
- SYNTAX INTEGER {
- none(1),
- success(2),
- inProgress(3),
- notSupported(4),
- unAbleToRun(5),
- aborted(6),
- failed(7)
- }
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "This object contains the result of the most recently
- requested test, or the value none(1) if no tests have
- been requested since the last reset. Note that this
- facility provides no provision for saving the results
- of one test when starting another, as could be
- required if used by multiple managers concurrently."
- ::= { ifTestEntry 4 }
-
- ifTestCode OBJECT-TYPE
- SYNTAX OBJECT IDENTIFIER
- MAX-ACCESS read-only
- STATUS current
- DESCRIPTION
- "This object contains a code which contains more
- specific information on the test result, for example
- an error-code after a failed test. Error codes and
- other values this object may take are specific to the
- type of interface and/or test. The value may have the
- semantics of either the AutonomousType or
- InstancePointer textual conventions as defined in RFC
- 1443. The identifier:
-
- testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }
-
- is defined for use if no additional result code is
- available."
- ::= { ifTestEntry 5 }
-
- ifTestOwner OBJECT-TYPE
- SYNTAX OwnerString
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "The entity which currently has the 'ownership'
- required to invoke a test on this interface."
- ::= { ifTestEntry 6 }
-
- ifRcvAddressTable OBJECT-TYPE
- SYNTAX SEQUENCE OF IfRcvAddressEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "This table contains an entry for each address
- (broadcast, multicast, or uni-cast) for which the
- system will receive packets/frames on a particular
- interface, except as follows:
-
- - for an interface operating in promiscuous mode,
- entries are only required for those addresses for
- which the system would receive frames were it not
- operating in promiscuous mode.
-
- - for 802.5 functional addresses, only one entry is
- required, for the address which has the functional
- address bit ANDed with the bit mask of all functional
- addresses for which the interface will accept frames."
- ::= { ifMIBObjects 4 }
-
- ifRcvAddressEntry OBJECT-TYPE
- SYNTAX IfRcvAddressEntry
- MAX-ACCESS not-accessible
- STATUS current
- DESCRIPTION
- "A list of objects identifying an address for which
- the system will accept packets/frames on the
- particular interface identified by the index value
- ifIndex."
- INDEX { ifIndex, ifRcvAddressAddress }
- ::= { ifRcvAddressTable 1 }
-
- IfRcvAddressEntry ::=
- SEQUENCE {
- ifRcvAddressAddress
- PhysAddress,
-
- ifRcvAddressStatus
- RowStatus,
-
- ifRcvAddressType
- INTEGER
- }
-
- ifRcvAddressAddress OBJECT-TYPE
- SYNTAX PhysAddress
- MAX-ACCESS read-create
- STATUS current
- DESCRIPTION
- "An address for which the system will accept
- packets/frames on this entry's interface."
- ::= { ifRcvAddressEntry 1 }
-
- ifRcvAddressStatus OBJECT-TYPE
- SYNTAX RowStatus
- MAX-ACCESS read-write
- STATUS current
- DESCRIPTION
- "This object is used to create and delete rows in the
- ifRcvAddressTable."
- ::= { ifRcvAddressEntry 2 }
-
- ifRcvAddressType OBJECT-TYPE
- SYNTAX INTEGER {
- other(1),
- volatile(2),
- nonVolatile(3)
- }
- MAX-ACCESS read-create
- STATUS current
- DESCRIPTION
- "This object has the value nonVolatile(3) for those
- entries in the table which are valid and will not be
- deleted by the next restart of the managed system.
- Entries having the value volatile(2) are valid and
- exist, but have not been saved, so that will not exist
- after the next restart of the managed system. Entries
- having the value other(1) are valid and exist but are
- not classified as to whether they will continue to
- exist after the next restart."
- DEFVAL { volatile }
- ::= { ifRcvAddressEntry 3 }
-
- linkDown NOTIFICATION-TYPE
- STATUS current
- OBJECTS {
- ifIndex,
- ifAdminStatus,
- ifOperStatus
- }
- DESCRIPTION
- "A linkDown trap signifies that the SNMPv2 entity,
- acting in an agent role, has detected that the
- ifOperStatus object for one of its communication links
- is about to transition into the down state."
- ::= { snmpTraps 3 }
-
- linkUp NOTIFICATION-TYPE
- STATUS current
- OBJECTS {
- ifIndex,
- ifAdminStatus,
- ifOperStatus
- }
- DESCRIPTION
- "A linkUp trap signifies that the SNMPv2 entity,
- acting in an agent role, has detected that the
- ifOperStatus object for one of its communication links
- has transitioned out of the down state."
- ::= { snmpTraps 4 }
-
- ifConformance ::= { ifMIB 2 }
-
- ifGroups ::= { ifConformance 1 }
-
- ifCompliances ::= { ifConformance 2 }
-
- ifCompliance MODULE-COMPLIANCE
- STATUS current
- DESCRIPTION
- "The compliance statement for SNMPv2 entities which
- have network interfaces."
-
- MODULE -- this module
- MANDATORY-GROUPS { ifGeneralGroup, ifStackGroup }
- GROUP ifFixedLengthGroup
- DESCRIPTION
- "This group is mandatory for all network interfaces
- which are character-oriented or transmit data in
- fixed-length transmission units."
-
- GROUP ifHCFixedLengthGroup
- DESCRIPTION
- "This group is mandatory only for those network
- interfaces which are character-oriented or transmit
- data in fixed-length transmission units, and for which
- the value of the corresponding instance of ifSpeed is
- greater than 20,000,000 bits/second."
-
- GROUP ifPacketGroup
- DESCRIPTION
- "This group is mandatory for all network interfaces
- which are packet-oriented."
-
- GROUP ifHCPacketGroup
- DESCRIPTION
- "This group is mandatory only for those network
- interfaces which are packet-oriented and for which the
- value of the corresponding instance of ifSpeed is
- greater than 650,000,000 bits/second."
-
- GROUP ifTestGroup
- DESCRIPTION
- "This group is optional. Media-specific MIBs which
- require interface tests are strongly encouraged to use
- this group for invoking tests and reporting results.
- A medium specific MIB which has mandatory tests may
- make implementation of this group mandatory."
-
- GROUP ifRcvAddressGroup
- DESCRIPTION
- "The applicability of this group MUST be defined by
- the media-specific MIBs. Media-specific MIBs must
- define the exact meaning, use, and semantics of the
- addresses in this group."
-
- OBJECT ifLinkUpDownTrapEnable
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
-
- OBJECT ifPromiscuousMode
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required."
-
- OBJECT ifStackStatus
- SYNTAX INTEGER {
- active(1)
- }
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required, and only one of the six
- enumerated values for the RowStatus textual convention
- need be supported, specifically: active(1)."
-
- OBJECT ifAdminStatus
- SYNTAX INTEGER {
- up(1),
- down(2)
- }
- MIN-ACCESS read-only
- DESCRIPTION
- "Write access is not required, nor is support for the
- value testing(3)."
- ::= { ifCompliances 1 }
-
- ifGeneralGroup OBJECT-GROUP
- OBJECTS {
- ifDescr,
- ifType,
- ifSpeed,
- ifPhysAddress,
- ifAdminStatus,
- ifOperStatus,
- ifLastChange,
- ifLinkUpDownTrapEnable,
- ifConnectorPresent,
- ifHighSpeed,
- ifName
- }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information
- applicable to all network interfaces."
- ::= { ifGroups 1 }
-
- ifFixedLengthGroup OBJECT-GROUP
- OBJECTS {
- ifInOctets,
- ifOutOctets,
- ifInUnknownProtos,
- ifInErrors,
- ifOutErrors
- }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information
- specific to non-high speed, character-oriented or
- fixed-length-transmission network interfaces. (Non-
- high speed interfaces transmit and receive at speeds
- less than or equal to 20,000,000 bits/second.)"
- ::= { ifGroups 2 }
-
- ifHCFixedLengthGroup OBJECT-GROUP
- OBJECTS {
- ifHCInOctets,
- ifHCOutOctets,
- ifInOctets,
- ifOutOctets,
- ifInUnknownProtos,
- ifInErrors,
- ifOutErrors
- }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information
- specific to high speed (greater than 20,000,000
- bits/second) character-oriented or fixed-length-
- transmission network interfaces."
- ::= { ifGroups 3 }
-
- ifPacketGroup OBJECT-GROUP
- OBJECTS {
- ifInOctets,
- ifOutOctets,
- ifInUnknownProtos,
- ifInErrors,
- ifOutErrors,
- ifMtu,
- ifInUcastPkts,
- ifInMulticastPkts,
- ifInBroadcastPkts,
- ifInDiscards,
- ifOutUcastPkts,
- ifOutMulticastPkts,
- ifOutBroadcastPkts,
- ifOutDiscards,
- ifPromiscuousMode
- }
- STATUS current
- DESCRIPTION
-
- "A collection of objects providing information
- specific to non-high speed, packet-oriented network
- interfaces. (Non-high speed interfaces transmit and
- receive at speeds less than or equal to 20,000,000
- bits/second.)"
- ::= { ifGroups 4 }
-
- ifHCPacketGroup OBJECT-GROUP
- OBJECTS {
- ifHCInOctets,
- ifHCOutOctets,
- ifInOctets,
- ifOutOctets,
- ifInUnknownProtos,
- ifInErrors,
- ifOutErrors,
- ifMtu,
- ifInUcastPkts,
- ifInMulticastPkts,
- ifInBroadcastPkts,
- ifInDiscards,
- ifOutUcastPkts,
- ifOutMulticastPkts,
- ifOutBroadcastPkts,
- ifOutDiscards,
- ifPromiscuousMode
- }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information
- specific to high speed (greater than 20,000,000
- bits/second but less than or equal to 650,000,000
- bits/second) packet-oriented network interfaces."
- ::= { ifGroups 5 }
-
- ifVHCPacketGroup OBJECT-GROUP
- OBJECTS {
- ifHCInUcastPkts,
- ifHCInMulticastPkts,
- ifHCInBroadcastPkts,
- ifHCOutUcastPkts,
- ifHCOutMulticastPkts,
- ifHCOutBroadcastPkts,
- ifHCInOctets,
- ifHCOutOctets,
- ifInOctets,
- ifOutOctets,
- ifInUnknownProtos,
- ifInErrors,
- ifOutErrors,
- ifMtu,
- ifInUcastPkts,
- ifInMulticastPkts,
- ifInBroadcastPkts,
- ifInDiscards,
- ifOutUcastPkts,
- ifOutMulticastPkts,
- ifOutBroadcastPkts,
- ifOutDiscards,
- ifPromiscuousMode
- }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information
- specific to higher speed (greater than 650,000,000
- bits/second) packet-oriented network interfaces."
- ::= { ifGroups 6 }
-
- ifRcvAddressGroup OBJECT-GROUP
- OBJECTS { ifRcvAddressStatus, ifRcvAddressType }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information on the
- multiple addresses which an interface receives."
- ::= { ifGroups 7 }
-
- ifTestGroup OBJECT-GROUP
- OBJECTS {
- ifTestId,
- ifTestStatus,
- ifTestType,
- ifTestResult,
- ifTestCode,
- ifTestOwner
- }
- STATUS current
- DESCRIPTION
- "A collection of objects providing the ability to
- invoke tests on an interface."
- ::= { ifGroups 8 }
-
- ifStackGroup OBJECT-GROUP
- OBJECTS { ifStackStatus }
- STATUS current
- DESCRIPTION
- "A collection of objects providing information on the
- layering of MIB-II interfaces."
- ::= { ifGroups 9 }
-
- END
-