Ibm Mainframe Ifmib

  • Upload
    xsimio

  • View
    226

  • Download
    0

Embed Size (px)

Citation preview

  • 8/14/2019 Ibm Mainframe Ifmib

    1/27

    IF-MIB DEFINITIONS ::= BEGIN

    IMPORTSMODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Counter64,Integer32, TimeTicks,NOTIFICATION-TYPE FROM SNMPv2-SMITEXTUAL-CONVENTION, DisplayString,PhysAddress, TruthValue, RowStatus,AutonomousType, TestAndIncr FROM SNMPv2-TCMODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONFsnmpTraps FROM SNMPv2-MIBIANAifType FROM IANAifType-MIBmib-2, interfaces FROM RFC1213-MIB;

    ifMIB MODULE-IDENTITYLAST-UPDATED "9602221355Z"ORGANIZATION "IETF Interfaces MIB Working Group"CONTACT-INFO

    " Keith McCloghrieCisco Systems, Inc.170 West Tasman DriveSan Jose, CA 95134-1706US

    [email protected]"DESCRIPTION

    "The MIB module to describe generic objects fornetwork interface sub-layers. This MIB is an updatedversion of MIB-II's ifTable, and incorporates theextensions defined in RFC 1229."

    REVISION "9602282155Z"DESCRIPTION

    "Revisions made by the Interfaces MIB WG."REVISION "9311082155Z"DESCRIPTION

    "Initial revision, published as part of RFC 1573."

    ::= { mib-2 31 }

    ifMIBObjects OBJECT IDENTIFIER ::= { ifMIB 1 }

    -- OwnerString has the same semantics as used in RFC 1271

    OwnerString ::= TEXTUAL-CONVENTIONDISPLAY-HINT "255a"STATUS currentDESCRIPTION

    "This data type is used to model an administrativelyassigned 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 ofthe following: ASCII form of the manager station'stransport address, management station name (e.g.,domain name), network management personnel's name,location, or phone number. In some cases the agentitself will be the owner of an entry. In these cases,this string shall be set to a string starting with'agent'."

    SYNTAX OCTET STRING (SIZE(0..255))

  • 8/14/2019 Ibm Mainframe Ifmib

    2/27

    -- InterfaceIndex contains the semantics of ifIndex and-- should be used for any objects defined on other mib-- modules that need these semantics.

    InterfaceIndex ::= TEXTUAL-CONVENTIONDISPLAY-HINT "d"STATUS currentDESCRIPTION

    "A unique value, greater than zero, for each interfaceor interface sub-layer in the managed system. It isrecommended that values are assigned contiguouslystarting from 1. The value for each interface sub-layer must remain constant at least from one re-initialization of the entity's network managementsystem to the next re-initialization."

    SYNTAX Integer32 (1..2147483647)

    InterfaceIndexOrZero ::= TEXTUAL-CONVENTIONDISPLAY-HINT "d"STATUS currentDESCRIPTION

    "This textual convention is an extension of the

    InterfaceIndex convention. The latter defines agreater than zero to identify an interface orinterface sub-layer in the managed system. Thisextension permits the additional value of zero. thevalue zero is object-specific and must therefore bedefined as part of the description of any object whichuses this syntax. Examples of the usage of zero mightinclude situations where interface was unknown, orwhen none or all interfaces need to be referenced."

    SYNTAX Integer32 (0..2147483647)

    ifNumber OBJECT-TYPESYNTAX Integer32

    MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The number of network interfaces (regardless of theircurrent state) present on this system."

    ::= { interfaces 1 }

    ifTableLastChange OBJECT-TYPESYNTAX TimeTicksMAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The value of sysUpTime at the time of the last

    creation or deletion of an entry in the ifTable. Ifthe number of entries has been unchanged since thelast re-initialization of the local network managementsubsystem, then this object contains a zero value."

    ::= { ifMIBObjects 5 }

    -- the Interfaces table

    -- The Interfaces table contains information on the entity's

  • 8/14/2019 Ibm Mainframe Ifmib

    3/27

    -- interfaces. Each sub-layer below the internetwork-layer-- of a network interface is considered to be an interface.

    ifTable OBJECT-TYPESYNTAX SEQUENCE OF IfEntryMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "A list of interface entries. The number of entriesis given by the value of ifNumber."

    ::= { interfaces 2 }

    ifEntry OBJECT-TYPESYNTAX IfEntryMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "An entry containing management information applicableto 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, -- deprecatedifInDiscards Counter32,

    ifInErrors Counter32,ifInUnknownProtos Counter32,ifOutOctets Counter32,ifOutUcastPkts Counter32,ifOutNUcastPkts Counter32, -- deprecatedifOutDiscards Counter32,ifOutErrors Counter32,ifOutQLen Gauge32, -- deprecatedifSpecific OBJECT IDENTIFIER -- deprecated

    }

    ifIndex OBJECT-TYPE

    SYNTAX InterfaceIndexMAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "A unique value, greater than zero, for eachinterface. It is recommended that values are assignedcontiguously starting from 1. The value for eachinterface sub-layer must remain constant at least fromone re-initialization of the entity's networkmanagement system to the next re-initialization."

  • 8/14/2019 Ibm Mainframe Ifmib

    4/27

    ::= { ifEntry 1 }

    ifDescr OBJECT-TYPESYNTAX DisplayString (SIZE (0..255))MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "A textual string containing information about theinterface. This string should include the name of themanufacturer, the product name and the version of theinterface hardware/software."

    ::= { ifEntry 2 }

    ifType OBJECT-TYPESYNTAX IANAifTypeMAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The type of interface. Additional values for ifTypeare assigned by the Internet Assigned NumbersAuthority (IANA), through updating the syntax of theIANAifType textual convention."

    ::= { ifEntry 3 }

    ifMtu OBJECT-TYPESYNTAX Integer32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The size of the largest packet which can besent/received on the interface, specified in octets.For interfaces that are used for transmitting networkdatagrams, this is the size of the largest networkdatagram that can be sent on the interface."

    ::= { ifEntry 4 }

    ifSpeed OBJECT-TYPE

    SYNTAX Gauge32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "An estimate of the interface's current bandwidth inbits per second. For interfaces which do not vary inbandwidth or for those where no accurate estimationcan be made, this object should contain the nominalbandwidth. If the bandwidth of the interface isgreater than the maximum value reportable by thisobject then this object should report its maximumvalue (4,294,967,295) and ifHighSpeed must be used toreport the interace's speed. For a sub-layer which

    has no concept of bandwidth, this object should bezero."

    ::= { ifEntry 5 }

    ifPhysAddress OBJECT-TYPESYNTAX PhysAddressMAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The interface's address at its protocol sub-layer.

  • 8/14/2019 Ibm Mainframe Ifmib

    5/27

    For example, for an 802.x interface, this objectnormally contains a MAC address. The interface'smedia-specific MIB must define the bit and byteordering and the format of the value of this object.For interfaces which do not have such an address(e.g., a serial line), this object should contain anoctet string of zero length."

    ::= { ifEntry 6 }

    ifAdminStatus OBJECT-TYPESYNTAX INTEGER {

    up(1), -- ready to pass packetsdown(2),testing(3) -- in some test mode

    }MAX-ACCESS read-writeSTATUS currentDESCRIPTION

    "The desired state of the interface. The testing(3)state indicates that no operational packets can bepassed. When a managed system initializes, allinterfaces start with ifAdminStatus in the down(2)state. As a result of either explicit managementaction or per configuration information retained by

    the managed system, ifAdminStatus is then changed toeither the up(1) or testing(3) states (or remains inthe down(2) state)."

    ::= { ifEntry 7 }

    ifOperStatus OBJECT-TYPESYNTAX INTEGER {

    up(1), -- ready to pass packetsdown(2),testing(3), -- in some test modeunknown(4), -- status can not be determined

    -- for some reason.dormant(5),

    notPresent(6) -- some component is missing}MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The current operational state of the interface. Thetesting(3) state indicates that no operational packetscan be passed. If ifAdminStatus is down(2) thenifOperStatus should be down(2). If ifAdminStatus ischanged to up(1) then ifOperStatus should change toup(1) if the interface is ready to transmit andreceive network traffic; it should change todormant(5) if the interface is waiting for external

    actions (such as a serial line waiting for an incomingconnection); it should remain in the down(2) state ifand only if there is a fault that prevents if fromgoing to the up(1) state; it should remain in thenotPresent(6) state if the interface has missing(typically, hardware) components."

    ::= { ifEntry 8 }

    ifLastChange OBJECT-TYPESYNTAX TimeTicks

  • 8/14/2019 Ibm Mainframe Ifmib

    6/27

    MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The value of sysUpTime at the time the interfaceentered its current operational state. If the currentstate was entered prior to the last re-initializationof the local network management subsystem, then thisobject contains a zero value."

    ::= { ifEntry 9 }

    ifInOctets OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of octets received on the interface,including framing characters."

    ::= { ifEntry 10 }

    ifInUcastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The number of packets, delivered by this sub-layer toa higher (sub-)layer, which were not addressed to amulticast or broadcast address at this sub-layer."

    ::= { ifEntry 11 }

    ifInNUcastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS deprecatedDESCRIPTION

    "The number of packets, delivered by this sub-layer toa higher (sub-)layer, which were addressed to amulticast or broadcast address at this sub-layer.

    This object is deprecated in favour ofifInMulticastPkts and ifInBroadcastPkts."

    ::= { ifEntry 12 }

    ifInDiscards OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The number of inbound packets which were chosen to bediscarded even though no errors had been detected toprevent their being deliverable to a higher-layer

    protocol. One possible reason for discarding such apacket could be to free up buffer space."

    ::= { ifEntry 13 }

    ifInErrors OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "For packet-oriented interfaces, the number of inbound

  • 8/14/2019 Ibm Mainframe Ifmib

    7/27

    packets that contained errors preventing them frombeing deliverable to a higher-layer protocol. Forcharacter-oriented or fixed-length interfaces, thenumber of inbound transmission units that containederrors preventing them from being deliverable to ahigher-layer protocol."

    ::= { ifEntry 14 }

    ifInUnknownProtos OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "For packet-oriented interfaces, the number of packetsreceived via the interface which were discardedbecause of an unknown or unsupported protocol. Forcharacter-oriented or fixed-length interfaces whichsupport protocol multiplexing the number oftransmission units received via the interface whichwere discarded because of an unknown or unsupportedprotocol. For any interface which does not supportprotocol multiplexing, this counter will always be 0."

    ::= { ifEntry 15 }

    ifOutOctets OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of octets transmitted out of theinterface, including framing characters."

    ::= { ifEntry 16 }

    ifOutUcastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS current

    DESCRIPTION"The total number of packets that higher-levelprotocols requested be transmitted, and which were notaddressed to a multicast or broadcast address at thissub-layer, including those that were discarded or notsent."

    ::= { ifEntry 17 }

    ifOutNUcastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS deprecatedDESCRIPTION

    "The total number of packets that higher-levelprotocols requested be transmitted, and which wereaddressed to a multicast or broadcast address at thissub-layer, including those that were discarded or notsent.

    This object is deprecated in favour ofifOutMulticastPkts and ifOutBroadcastPkts."

    ::= { ifEntry 18 }

  • 8/14/2019 Ibm Mainframe Ifmib

    8/27

    ifOutDiscards OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The number of outbound packets which were chosen tobe discarded even though no errors had been detectedto prevent their being transmitted. One possiblereason for discarding such a packet could be to freeup buffer space."

    ::= { ifEntry 19 }

    ifOutErrors OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "For packet-oriented interfaces, the number ofoutbound packets that could not be transmitted becauseof errors. For character-oriented or fixed-lengthinterfaces, the number of outbound transmission unitsthat could not be transmitted because of errors."

    ::= { ifEntry 20 }

    ifOutQLen OBJECT-TYPESYNTAX Gauge32MAX-ACCESS read-onlySTATUS deprecatedDESCRIPTION

    "The length of the output packet queue (in packets)."::= { ifEntry 21 }

    ifSpecific OBJECT-TYPESYNTAX OBJECT IDENTIFIERMAX-ACCESS read-onlySTATUS deprecatedDESCRIPTION

    "A reference to MIB definitions specific to theparticular media being used to realize the interface.It is recommended that this value point to an instanceof a MIB object in the media-specific MIB, i.e., thatthis object have the semantics associated with theInstancePointer textual convention defined in RFC1903. In fact, it is recommended that the media-specific MIB specify what value ifSpecific should/cantake for values of ifType. If no MIB definitionsspecific to the particular media are available, thevalue should be set to the OBJECT IDENTIFIER { 0 0 }."

    ::= { ifEntry 22 }

    ---- Extension to the interface table---- This table replaces the ifExtnsTable table.--

    ifXTable OBJECT-TYPESYNTAX SEQUENCE OF IfXEntry

  • 8/14/2019 Ibm Mainframe Ifmib

    9/27

    MAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "A list of interface entries. The number of entriesis given by the value of ifNumber. This tablecontains additional objects for the interface table."

    ::= { ifMIBObjects 1 }

    ifXEntry OBJECT-TYPESYNTAX IfXEntryMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "An entry containing additional management informationapplicable to a particular interface."

    AUGMENTS { ifEntry }::= { ifXTable 1 }

    IfXEntry ::=SEQUENCE {

    ifName DisplayString,ifInMulticastPkts Counter32,ifInBroadcastPkts Counter32,ifOutMulticastPkts Counter32,

    ifOutBroadcastPkts Counter32,ifHCInOctets Counter64,ifHCInUcastPkts Counter64,ifHCInMulticastPkts Counter64,ifHCInBroadcastPkts Counter64,ifHCOutOctets Counter64,ifHCOutUcastPkts Counter64,ifHCOutMulticastPkts Counter64,ifHCOutBroadcastPkts Counter64,ifLinkUpDownTrapEnable INTEGER,ifHighSpeed Gauge32,ifPromiscuousMode TruthValue,ifConnectorPresent TruthValue,

    ifAlias DisplayString}

    ifName OBJECT-TYPESYNTAX DisplayStringMAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The textual name of the interface. The value of thisobject should be the name of the interface as assignedby the local device and should be suitable for use incommands entered at the device's `console'. This

    might be a text name, such as `le0' or a simple portnumber, such as `1', depending on the interface namingsyntax of the device. If several entries in theifTable together represent a single interface as namedby the device, then each will have the same value ofifName. Note that for an agent which responds to SNMPqueries concerning an interface on some other(proxied) device, then the value of ifName for such aninterface is the proxied device's local name for it.

  • 8/14/2019 Ibm Mainframe Ifmib

    10/27

    If there is no local name, or this object is otherwisenot applicable, then this object contains a zero-length string."

    ::= { ifXEntry 1 }

    ifInMulticastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The number of packets, delivered by this sub-layer toa higher (sub-)layer, which were addressed to amulticast address at this sub-layer. For a MAC layerprotocol, this includes both Group and Functionaladdresses."

    ::= { ifXEntry 2 }

    ifInBroadcastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The number of packets, delivered by this sub-layer toa higher (sub-)layer, which were addressed to a

    broadcast address at this sub-layer."::= { ifXEntry 3 }

    ifOutMulticastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of packets that higher-levelprotocols requested be transmitted, and which wereaddressed to a multicast address at this sub-layer,including those that were discarded or not sent. Fora MAC layer protocol, this includes both Group and

    Functional addresses."::= { ifXEntry 4 }

    ifOutBroadcastPkts OBJECT-TYPESYNTAX Counter32MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of packets that higher-levelprotocols requested be transmitted, and which wereaddressed to a broadcast address at this sub-layer,including those that were discarded or not sent."

    ::= { ifXEntry 5 }

    ---- High Capacity Counter objects. These objects are all-- 64 bit versions of the "basic" ifTable counters. These-- objects all have the same basic semantics as their 32-bit-- counterparts, however, their syntax has been extended-- to 64 bits.--

    ifHCInOctets OBJECT-TYPE

  • 8/14/2019 Ibm Mainframe Ifmib

    11/27

    SYNTAX Counter64MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of octets received on the interface,including framing characters. This object is a 64-bitversion of ifInOctets."

    ::= { ifXEntry 6 }

    ifHCInUcastPkts OBJECT-TYPESYNTAX Counter64MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The number of packets, delivered by this sub-layer toa higher (sub-)layer, which were not addressed to amulticast or broadcast address at this sub-layer.This object is a 64-bit version of ifInUcastPkts."

    ::= { ifXEntry 7 }

    ifHCInMulticastPkts OBJECT-TYPESYNTAX Counter64MAX-ACCESS read-onlySTATUS current

    DESCRIPTION"The number of packets, delivered by this sub-layer toa higher (sub-)layer, which were addressed to amulticast address at this sub-layer. For a MAC layerprotocol, this includes both Group and Functionaladdresses. This object is a 64-bit version ofifInMulticastPkts."

    ::= { ifXEntry 8 }

    ifHCInBroadcastPkts OBJECT-TYPESYNTAX Counter64MAX-ACCESS read-onlySTATUS current

    DESCRIPTION"The number of packets, delivered by this sub-layer toa higher (sub-)layer, which were addressed to abroadcast address at this sub-layer. This object is a64-bit version of ifInBroadcastPkts."

    ::= { ifXEntry 9 }

    ifHCOutOctets OBJECT-TYPESYNTAX Counter64MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of octets transmitted out of the

    interface, including framing characters. This objectis a 64-bit version of ifOutOctets."

    ::= { ifXEntry 10 }

    ifHCOutUcastPkts OBJECT-TYPESYNTAX Counter64MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of packets that higher-level

  • 8/14/2019 Ibm Mainframe Ifmib

    12/27

    protocols requested be transmitted, and which were notaddressed to a multicast or broadcast address at thissub-layer, including those that were discarded or notsent. This object is a 64-bit version ofifOutUcastPkts."

    ::= { ifXEntry 11 }

    ifHCOutMulticastPkts OBJECT-TYPESYNTAX Counter64MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "The total number of packets that higher-levelprotocols requested be transmitted, and which wereaddressed to a multicast address at this sub-layer,including those that were discarded or not sent. Fora MAC layer protocol, this includes both Group andFunctional addresses. This object is a 64-bit versionof ifOutMulticastPkts."

    ::= { ifXEntry 12 }

    ifHCOutBroadcastPkts OBJECT-TYPESYNTAX Counter64MAX-ACCESS read-only

    STATUS currentDESCRIPTION"The total number of packets that higher-levelprotocols requested be transmitted, and which wereaddressed to a broadcast address at this sub-layer,including those that were discarded or not sent. Thisobject is a 64-bit version of ifOutBroadcastPkts."

    ::= { ifXEntry 13 }

    ifLinkUpDownTrapEnable OBJECT-TYPESYNTAX INTEGER { enabled(1), disabled(2) }MAX-ACCESS read-writeSTATUS current

    DESCRIPTION"Indicates whether linkUp/linkDown traps should begenerated for this interface.

    By default, this object should have the valueenabled(1) for interfaces which do not operate on'top' of any other interface (as defined in theifStackTable), and disabled(2) otherwise."

    ::= { ifXEntry 14 }

    ifHighSpeed OBJECT-TYPESYNTAX Gauge32MAX-ACCESS read-only

    STATUS currentDESCRIPTION

    "An estimate of the interface's current bandwidth inunits of 1,000,000 bits per second. If this objectreports a value of `n' then the speed of the interfaceis somewhere in the range of `n-500,000' to`n+499,999'. For interfaces which do not vary inbandwidth or for those where no accurate estimationcan be made, this object should contain the nominalbandwidth. For a sub-layer which has no concept of

  • 8/14/2019 Ibm Mainframe Ifmib

    13/27

    bandwidth, this object should be zero."::= { ifXEntry 15 }

    ifPromiscuousMode OBJECT-TYPESYNTAX TruthValueMAX-ACCESS read-writeSTATUS currentDESCRIPTION

    "This object has a value of false(2) if this interfaceonly accepts packets/frames that are addressed to thisstation. This object has a value of true(1) when thestation accepts all packets/frames transmitted on themedia. The value true(1) is only legal on certaintypes of media. If legal, setting this object to avalue of true(1) may require the interface to be resetbefore becoming effective.

    The value of ifPromiscuousMode does not affect thereception of broadcast and multicast packets/frames bythe interface."

    ::= { ifXEntry 16 }

    ifConnectorPresent OBJECT-TYPESYNTAX TruthValue

    MAX-ACCESS read-onlySTATUS currentDESCRIPTION

    "This object has the value 'true(1)' if the interfacesublayer has a physical connector and the value'false(2)' otherwise."

    ::= { ifXEntry 17 }

    ifAlias OBJECT-TYPESYNTAX DisplayString (SIZE(0..64))MAX-ACCESS read-writeSTATUS currentDESCRIPTION

    "This object is an 'alias' name for the interface asspecified by a network manager, and provides a non-volatile 'handle' for the interface.

    On the first instantiation of an interface, the valueof ifAlias associated with that interface is thezero-length string. As and when a value is writteninto an instance of ifAlias through a networkmanagement set operation, then the agent must retainthe supplied value in the ifAlias instance associatedwith the same interface for as long as that interfaceremains instantiated, including across all re-initializations/reboots of the network management

    system, including those which result in a change of

    the interface's ifIndex value.

    An example of the value which a network manager mightstore in this object for a WAN interface is the(Telco's) circuit number/identifier of the interface.

    Some agents may support write-access only forinterfaces having particular values of ifType. An

  • 8/14/2019 Ibm Mainframe Ifmib

    14/27

    agent which supports write access to this object isrequired to keep the value in non-volatile storage,but it may limit the length of new values depending onhow much storage is already occupied by the currentvalues for other interfaces."

    ::= { ifXEntry 18 }

    -- The Interface Stack Group---- Implementation of this group is mandatory for all systems--

    ifStackTable OBJECT-TYPESYNTAX SEQUENCE OF IfStackEntryMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "The table containing information on the relationshipsbetween the multiple sub-layers of network interfaces.In particular, it contains information on which sub-layers run 'on top of' which other sub-layers, whereeach sub-layer corresponds to a conceptual row in theifTable. For example, when the sub-layer with ifIndexvalue x runs over the sub-layer with ifIndex value y,

    then this table contains:

    ifStackStatus.x.y=active

    For each ifIndex value, I, which identifies an activeinterface, there are always at least two instantiatedrows in this table associated with I. For one ofthese rows, I is the value of ifStackHigherLayer; forthe other, I is the value of ifStackLowerLayer.

    For example, two rows exist even for an interfacewhich has no others stacked on top or below it:

    ifStackStatus.0.x=activeifStackStatus.x.0=active "::= { ifMIBObjects 2 }

    ifStackEntry OBJECT-TYPESYNTAX IfStackEntryMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "Information on a particular relationship between twosub-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

  • 8/14/2019 Ibm Mainframe Ifmib

    15/27

  • 8/14/2019 Ibm Mainframe Ifmib

    16/27

    local network management subsystem, then this objectcontains a zero value."

    ::= { ifMIBObjects 6 }

    -- Generic Receive Address Table---- This group of objects is mandatory for all types of-- interfaces which can receive packets/frames addressed to-- more than one address.---- This table replaces the ifExtnsRcvAddr table. The main-- difference is that this table makes use of the RowStatus-- textual convention, while ifExtnsRcvAddr did not.

    ifRcvAddressTable OBJECT-TYPESYNTAX SEQUENCE OF IfRcvAddressEntryMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "This table contains an entry for each address(broadcast, multicast, or uni-cast) for which thesystem will receive packets/frames on a particularinterface, except as follows:

    - for an interface operating in promiscuous mode,entries are only required for those addresses forwhich the system would receive frames were it notoperating in promiscuous mode.

    - for 802.5 functional addresses, only one entry isrequired, for the address which has the functionaladdress bit ANDed with the bit mask of all functionaladdresses for which the interface will accept frames.

    A system is normally able to use any unicast addresswhich corresponds to an entry in this table as a

    source address."::= { ifMIBObjects 4 }

    ifRcvAddressEntry OBJECT-TYPESYNTAX IfRcvAddressEntryMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "A list of objects identifying an address for whichthe system will accept packets/frames on theparticular interface identified by the index valueifIndex."

    INDEX { ifIndex, ifRcvAddressAddress }

    ::= { ifRcvAddressTable 1 }

    IfRcvAddressEntry ::=SEQUENCE {

    ifRcvAddressAddress PhysAddress,ifRcvAddressStatus RowStatus,ifRcvAddressType INTEGER

    }

    ifRcvAddressAddress OBJECT-TYPE

  • 8/14/2019 Ibm Mainframe Ifmib

    17/27

    SYNTAX PhysAddressMAX-ACCESS not-accessibleSTATUS currentDESCRIPTION

    "An address for which the system will acceptpackets/frames on this entry's interface."

    ::= { ifRcvAddressEntry 1 }

    ifRcvAddressStatus OBJECT-TYPESYNTAX RowStatusMAX-ACCESS read-createSTATUS currentDESCRIPTION

    "This object is used to create and delete rows in theifRcvAddressTable."

    ::= { ifRcvAddressEntry 2 }

    ifRcvAddressType OBJECT-TYPESYNTAX INTEGER {

    other(1),volatile(2),nonVolatile(3)

    }

    MAX-ACCESS read-createSTATUS currentDESCRIPTION

    "This object has the value nonVolatile(3) for thoseentries in the table which are valid and will not bedeleted by the next restart of the managed system.Entries having the value volatile(2) are valid andexist, but have not been saved, so that will not existafter the next restart of the managed system. Entrieshaving the value other(1) are valid and exist but arenot classified as to whether they will continue toexist after the next restart."

    DEFVAL { volatile }::= { ifRcvAddressEntry 3 }

    -- definition of interface-related traps.

    linkDown NOTIFICATION-TYPEOBJECTS { ifIndex, ifAdminStatus, ifOperStatus }STATUS currentDESCRIPTION

    "A linkDown trap signifies that the SNMPv2 entity,acting in an agent role, has detected that theifOperStatus object for one of its communication links

    is about to enter the down state from some other state(but not from the notPresent state). This other stateis indicated by the included value of ifOperStatus."

    ::= { snmpTraps 3 }

    linkUp NOTIFICATION-TYPEOBJECTS { ifIndex, ifAdminStatus, ifOperStatus }STATUS currentDESCRIPTION

    "A linkDown trap signifies that the SNMPv2 entity,

  • 8/14/2019 Ibm Mainframe Ifmib

    18/27

    acting in an agent role, has detected that theifOperStatus object for one of its communication linksleft the down state and transitioned into some otherstate (but not into the notPresent state). This otherstate is indicated by the included value ofifOperStatus."

    ::= { snmpTraps 4 }

    -- conformance information

    ifConformance OBJECT IDENTIFIER ::= { ifMIB 2 }

    ifGroups OBJECT IDENTIFIER ::= { ifConformance 1 }ifCompliances OBJECT IDENTIFIER ::= { ifConformance 2 }

    -- compliance statements

    ifCompliance2 MODULE-COMPLIANCESTATUS currentDESCRIPTION

    "The compliance statement for SNMPv2 entities whichhave network interfaces."

    MODULE -- this moduleMANDATORY-GROUPS { ifGeneralInformationGroup, ifStackGroup2 }

    GROUP ifFixedLengthGroupDESCRIPTION

    "This group is mandatory for all network interfaceswhich are character-oriented or transmit data infixed-length transmission units."

    GROUP ifHCFixedLengthGroupDESCRIPTION

    "This group is mandatory only for those networkinterfaces which are character-oriented or transmit

    data in fixed-length transmission units, and for whichthe value of the corresponding instance of ifSpeed isgreater than 20,000,000 bits/second."

    GROUP ifPacketGroupDESCRIPTION

    "This group is mandatory for all network interfaceswhich are packet-oriented."

    GROUP ifHCPacketGroupDESCRIPTION

    "This group is mandatory only for those networkinterfaces which are packet-oriented and for which the

    value of the corresponding instance of ifSpeed isgreater than 650,000,000 bits/second."

    GROUP ifRcvAddressGroupDESCRIPTION

    "The applicability of this group MUST be defined bythe media-specific MIBs. Media-specific MIBs mustdefine the exact meaning, use, and semantics of theaddresses in this group."

  • 8/14/2019 Ibm Mainframe Ifmib

    19/27

  • 8/14/2019 Ibm Mainframe Ifmib

    20/27

    ifHCFixedLengthGroup OBJECT-GROUP

    OBJECTS { ifHCInOctets, ifHCOutOctets,ifInOctets, ifOutOctets, ifInUnknownProtos,ifInErrors, ifOutErrors }

    STATUS currentDESCRIPTION

    "A collection of objects providing informationspecific to high speed (greater than 20,000,000bits/second) character-oriented or fixed-length-transmission network interfaces."

    ::= { ifGroups 3 }

    ifPacketGroup OBJECT-GROUPOBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos,

    ifInErrors, ifOutErrors,ifMtu, ifInUcastPkts, ifInMulticastPkts,ifInBroadcastPkts, ifInDiscards,ifOutUcastPkts, ifOutMulticastPkts,ifOutBroadcastPkts, ifOutDiscards,ifPromiscuousMode }

    STATUS currentDESCRIPTION

    "A collection of objects providing information

    specific to non-high speed (non-high speed interfacestransmit and receive at speeds less than or equal to20,000,000 bits/second) packet-oriented networkinterfaces."

    ::= { ifGroups 4 }

    ifHCPacketGroup OBJECT-GROUPOBJECTS { ifHCInOctets, ifHCOutOctets,

    ifInOctets, ifOutOctets, ifInUnknownProtos,ifInErrors, ifOutErrors,ifMtu, ifInUcastPkts, ifInMulticastPkts,ifInBroadcastPkts, ifInDiscards,ifOutUcastPkts, ifOutMulticastPkts,

    ifOutBroadcastPkts, ifOutDiscards,ifPromiscuousMode }STATUS currentDESCRIPTION

    "A collection of objects providing informationspecific to high speed (greater than 20,000,000bits/second but less than or equal to 650,000,000bits/second) packet-oriented network interfaces."

    ::= { ifGroups 5 }

    ifVHCPacketGroup OBJECT-GROUPOBJECTS { 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

  • 8/14/2019 Ibm Mainframe Ifmib

    21/27

    DESCRIPTION"A collection of objects providing informationspecific to higher speed (greater than 650,000,000bits/second) packet-oriented network interfaces."

    ::= { ifGroups 6 }

    ifRcvAddressGroup OBJECT-GROUPOBJECTS { ifRcvAddressStatus, ifRcvAddressType }STATUS currentDESCRIPTION

    "A collection of objects providing information on themultiple addresses which an interface receives."

    ::= { ifGroups 7 }

    ifStackGroup2 OBJECT-GROUPOBJECTS { ifStackStatus, ifStackLastChange }STATUS currentDESCRIPTION

    "A collection of objects providing information on thelayering of MIB-II interfaces."

    ::= { ifGroups 11 }

    -- Deprecated Definitions - Objects

    ---- The Interface Test Table---- This group of objects is optional. However, a media-specific-- MIB may make implementation of this group mandatory.---- This table replaces the ifExtnsTestTable--

    ifTestTable OBJECT-TYPESYNTAX SEQUENCE OF IfTestEntryMAX-ACCESS not-accessible

    STATUS deprecatedDESCRIPTION"This table contains one entry per interface. Itdefines objects which allow a network manager toinstruct an agent to test an interface for variousfaults. Tests for an interface are defined in themedia-specific MIB for that interface. After invokinga test, the object ifTestResult can be read todetermine the outcome. If an agent can not performthe test, ifTestResult is set to so indicate. Theobject ifTestCode can be used to provide furthertest-specific or interface-specific (or evenenterprise-specific) information concerning the

    outcome of the test. Only one test can be in progresson each interface at any one time. If one test is inprogress when another test is invoked, the second testis rejected. Some agents may reject a test when aprior test is active on another interface.

    Before starting a test, a manager-station must firstobtain 'ownership' of the entry in the ifTestTable forthe interface to be tested. This is accomplished withthe ifTestId and ifTestStatus objects as follows:

  • 8/14/2019 Ibm Mainframe Ifmib

    22/27

    try_again:

    get (ifTestId, ifTestStatus)while (ifTestStatus != notInUse)

    /** Loop while a test is running or some other* manager is configuring a test.*/

    short delayget (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 ifTestResultagent 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 theappropriate ifTestId and ifTestStatus objects,periodically repeating the retrieval if necessary,until the value of ifTestStatus is 'notInUse'. Themanager station then tries to set the same ifTestId

    object to the value it just retrieved, the sameifTestStatus object to 'inUse', and the corresponding

    ifTestOwner object to a value indicating itself. Ifthe set operation succeeds then the manager hasobtained ownership of the ifTestEntry, and the value ofthe ifTestId object is incremented by the agent (perthe semantics of TestAndIncr). Failure of the setoperation indicates that some other manager hasobtained ownership of the ifTestEntry.

  • 8/14/2019 Ibm Mainframe Ifmib

    23/27

    Once ownership is obtained, any test parameters can besetup, and then the test is initiated by settingifTestType. On completion of the test, the agent setsifTestStatus to 'notInUse'. Once this occurs, themanager can retrieve the results. In the (rare) eventthat the invocation of tests by two network managerswere to overlap, then there would be a possibility thatthe first test's results might be overwritten by thesecond test's results prior to the first results beingread. This unlikely circumstance can be detected by anetwork manager retrieving ifTestId at the same time asretrieving the test results, and ensuring that theresults are for the desired request.

    If ifTestType is not set within an abnormally longperiod of time after ownership is obtained, the agentshould time-out the manager, and reset the value of theifTestStatus object back to 'notInUse'. It issuggested that this time-out period be 5 minutes.

    In general, a management station must not retransmit arequest to invoke a test for which it does not receivea response; instead, it properly inspects an agent's

    MIB to determine if the invocation was successful.Only if the invocation was unsuccessful, is theinvocation request retransmitted.

    Some tests may require the interface to be taken off-line in order to execute them, or may even require theagent to reboot after completion of the test. In thesecircumstances, communication with the managementstation invoking the test may be lost until aftercompletion of the test. An agent is not required tosupport such tests. However, if such tests aresupported, then the agent should make every effort totransmit a response to the request which invoked the

    test prior to losing communication. When the agent isrestored to normal service, the results of the test areproperly made available in the appropriate objects.Note that this requires that the ifIndex value assignedto an interface must be unchanged even if the testcauses a reboot. An agent must reject any test forwhich it cannot, perhaps due to resource constraints,make available at least the minimum amount ofinformation after that test completes."

    ::= { ifMIBObjects 3 }

    ifTestEntry OBJECT-TYPESYNTAX IfTestEntry

    MAX-ACCESS not-accessibleSTATUS deprecatedDESCRIPTION

    "An entry containing objects for invoking tests on aninterface."

    AUGMENTS { ifEntry }::= { ifTestTable 1 }

    IfTestEntry ::=SEQUENCE {

  • 8/14/2019 Ibm Mainframe Ifmib

    24/27

    ifTestId TestAndIncr,ifTestStatus INTEGER,ifTestType AutonomousType,ifTestResult INTEGER,ifTestCode OBJECT IDENTIFIER,ifTestOwner OwnerString

    }

    ifTestId OBJECT-TYPESYNTAX TestAndIncrMAX-ACCESS read-writeSTATUS deprecatedDESCRIPTION

    "This object identifies the current invocation of theinterface's test."

    ::= { ifTestEntry 1 }

    ifTestStatus OBJECT-TYPESYNTAX INTEGER { notInUse(1), inUse(2) }MAX-ACCESS read-writeSTATUS deprecatedDESCRIPTION

    "This object indicates whether or not some managercurrently has the necessary 'ownership' required to

    invoke a test on this interface. A write to thisobject is only successful when it changes its valuefrom 'notInUse(1)' to 'inUse(2)'. After completion ofa test, the agent resets the value back to'notInUse(1)'."

    ::= { ifTestEntry 2 }

    ifTestType OBJECT-TYPESYNTAX AutonomousTypeMAX-ACCESS read-writeSTATUS deprecatedDESCRIPTION

    "A control variable used to start and stop operator-

    initiated interface tests. Most OBJECT IDENTIFIERvalues assigned to tests are defined elsewhere, inassociation with specific types of interface.However, this document assigns a value for a full-duplex loopback test, and defines the special meaningsof the subject identifier:

    noTest OBJECT IDENTIFIER ::= { 0 0 }

    When the value noTest is written to this object, noaction is taken unless a test is in progress, in whichcase the test is aborted. Writing any other value tothis object is only valid when no test is currently in

    progress, in which case the indicated test isinitiated.

    When read, this object always returns the most recentvalue that ifTestType was set to. If it has not beenset since the last initialization of the networkmanagement subsystem on the agent, a value of noTestis returned."

    ::= { ifTestEntry 3 }

  • 8/14/2019 Ibm Mainframe Ifmib

    25/27

    ifTestResult OBJECT-TYPESYNTAX INTEGER {

    none(1), -- no test yet requestedsuccess(2),inProgress(3),notSupported(4),unAbleToRun(5), -- due to state of systemaborted(6),failed(7)

    }MAX-ACCESS read-onlySTATUS deprecatedDESCRIPTION

    "This object contains the result of the most recentlyrequested test, or the value none(1) if no tests havebeen requested since the last reset. Note that thisfacility provides no provision for saving the resultsof one test when starting another, as could berequired if used by multiple managers concurrently."

    ::= { ifTestEntry 4 }

    ifTestCode OBJECT-TYPESYNTAX OBJECT IDENTIFIERMAX-ACCESS read-only

    STATUS deprecatedDESCRIPTION"This object contains a code which contains morespecific information on the test result, for examplean error-code after a failed test. Error codes andother values this object may take are specific to thetype of interface and/or test. The value may have thesemantics of either the AutonomousType orInstancePointer textual conventions as defined in RFC1903. The identifier:

    testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 }

    is defined for use if no additional result code isavailable."::= { ifTestEntry 5 }

    ifTestOwner OBJECT-TYPESYNTAX OwnerStringMAX-ACCESS read-writeSTATUS deprecatedDESCRIPTION

    "The entity which currently has the 'ownership'required to invoke a test on this interface."

    ::= { ifTestEntry 6 }

    -- Deprecated Definitions - Groups

    ifGeneralGroup OBJECT-GROUPOBJECTS { ifDescr, ifType, ifSpeed, ifPhysAddress,

    ifAdminStatus, ifOperStatus, ifLastChange,ifLinkUpDownTrapEnable, ifConnectorPresent,ifHighSpeed, ifName }

    STATUS deprecatedDESCRIPTION

  • 8/14/2019 Ibm Mainframe Ifmib

    26/27

    "A collection of objects deprecated in favour ofifGeneralInformationGroup."

    ::= { ifGroups 1 }

    ifTestGroup OBJECT-GROUPOBJECTS { ifTestId, ifTestStatus, ifTestType,

    ifTestResult, ifTestCode, ifTestOwner }STATUS deprecatedDESCRIPTION

    "A collection of objects providing the ability toinvoke tests on an interface."

    ::= { ifGroups 8 }

    ifStackGroup OBJECT-GROUPOBJECTS { ifStackStatus }STATUS deprecatedDESCRIPTION

    "The previous collection of objects providinginformation on the layering of MIB-II interfaces."

    ::= { ifGroups 9 }

    ifOldObjectsGroup OBJECT-GROUPOBJECTS { ifInNUcastPkts, ifOutNUcastPkts,ifOutQLen, ifSpecific }

    STATUS deprecatedDESCRIPTION

    "The collection of objects deprecated from theoriginal MIB-II interfaces group."

    ::= { ifGroups 12 }

    -- Deprecated Definitions - Compliance

    ifCompliance MODULE-COMPLIANCE

    STATUS deprecatedDESCRIPTION"The previous compliance statement for SNMPv2 entitieswhich have network interfaces."

    MODULE -- this moduleMANDATORY-GROUPS { ifGeneralGroup, ifStackGroup }

    GROUP ifFixedLengthGroupDESCRIPTION

    "This group is mandatory for all network interfaceswhich are character-oriented or transmit data infixed-length transmission units."

    GROUP ifHCFixedLengthGroupDESCRIPTION

    "This group is mandatory only for those networkinterfaces which are character-oriented or transmitdata in fixed-length transmission units, and for whichthe value of the corresponding instance of ifSpeed isgreater than 20,000,000 bits/second."

    GROUP ifPacketGroup

  • 8/14/2019 Ibm Mainframe Ifmib

    27/27

    DESCRIPTION"This group is mandatory for all network interfaceswhich are packet-oriented."

    GROUP ifHCPacketGroupDESCRIPTION

    "This group is mandatory only for those networkinterfaces which are packet-oriented and for which thevalue of the corresponding instance of ifSpeed isgreater than 650,000,000 bits/second."

    GROUP ifTestGroupDESCRIPTION

    "This group is optional. Media-specific MIBs whichrequire interface tests are strongly encouraged to usethis group for invoking tests and reporting results.A medium specific MIB which has mandatory tests maymake implementation of this group mandatory."

    GROUP ifRcvAddressGroupDESCRIPTION

    "The applicability of this group MUST be defined bythe media-specific MIBs. Media-specific MIBs mustdefine the exact meaning, use, and semantics of the

    addresses in this group."

    OBJECT ifLinkUpDownTrapEnableMIN-ACCESS read-onlyDESCRIPTION

    "Write access is not required."

    OBJECT ifPromiscuousModeMIN-ACCESS read-onlyDESCRIPTION

    "Write access is not required."

    OBJECT ifStackStatus

    SYNTAX INTEGER { active(1) } -- subset of RowStatusMIN-ACCESS read-onlyDESCRIPTION

    "Write access is not required, and only one of the sixenumerated values for the RowStatus textual conventionneed be supported, specifically: active(1)."

    OBJECT ifAdminStatusSYNTAX INTEGER { up(1), down(2) }MIN-ACCESS read-onlyDESCRIPTION

    "Write access is not required, nor is support for thevalue testing(3)."

    ::= { ifCompliances 1 }

    END