This is a purely informative rendering of an RFC that includes verified errata. This rendering may not be used as a reference.

The following 'Verified' errata have been incorporated in this document: EID 557
Network Working Group                                   M. Rose, Editor
Request for Comments: 1158            Performance Systems International
                                                               May 1990


           Management Information Base for Network Management
                       of TCP/IP-based internets:
                                 MIB-II

1.  Status of this Memo

   This memo defines the second version of the Management Information
   Base (MIB-II) for use with network management protocols in TCP/IP-
   based internets.  In particular, together with its companion memos
   which describe the structure of management information (RFC 1155)
   along with the network management protocol (RFC 1157) for TCP/IP-
   based internets, these documents provide a simple, workable
   architecture and system for managing TCP/IP-based internets and in
   particular the Internet community.

   This document on MIB-II incorporates all of the technical content of
   RFC 1156 on MIB-I and extends it, without loss of compatibilty.
   However, MIB-I as described in RFC 1156 is full Standard Protocol of
   the Internet, while the MIB-II described here is Proposed Standard
   Protocol of the Internet.

   This memo defines a mandatory extension to the base MIB (RFC 1156)
   and is a Proposed Standard for the Internet community.  The
   extensions described here are currently Elective, but when they
   become a standard, they will have the same status as RFC 1156, that
   is, Recommended.  The Internet Activities Board recommends that all
   IP and TCP implementations be network manageable.  This implies
   implementation of the Internet MIB (RFC 1156 and the extensions in
   RFC 1158) and at least one of the two recommended management
   protocols SNMP (RFC 1157) or CMOT (RFC 1095).

   This version of the MIB specification, MIB-II, is an incremental
   refinement of MIB-I.  As such, it has been designed according to two
   criteria: first, changes have been made in response to new
   operational requirements in the Internet; and, second, the changes
   are entirely upwards compatible in order to minimize impact on the
   network as the managed nodes in the Internet transition from MIB-I to
   MIB-II.

   It is expected that additional MIB groups and variables will be
   defined over time to accommodate the monitoring and control needs of
   new or changing components of the Internet.

   Please refer to the latest edition of the "IAB Official Protocol
   Standards" RFC for current information on the state and status of
   standard Internet protocols.

   Distribution of this memo is unlimited.

                             Table of Contents


   1. Status of this Memo ..................................    1
   2. Introduction .........................................    3
   3. Changes from MIB-I ...................................    4
   3.1 Deprecated Objects ..................................    4
   3.2 Display Strings .....................................    5
   3.3 The System Group ....................................    5
   3.4 The Interfaces Group ................................    5
   3.5 The Address Translation Group .......................    6
   3.6 The IP Group ........................................    7
   3.7 The ICMP Group ......................................    7
   3.8 The TCP Group .......................................    7
   3.9 The UDP Group .......................................    7
   3.10 The EGP Group ......................................    8
   3.11 The Transmission Group .............................    8
   3.12 The SNMP Group .....................................    8
   4. Objects ..............................................    8
   4.1 Object Groups .......................................    9
   4.2 Format of Definitions ...............................   10
   5. Object Definitions ...................................   10
   5.1 The System Group ....................................   11
   5.2 The Interfaces Group ................................   14
   5.2.1 The Interfaces table ..............................   15
   5.3 The Address Translation Group .......................   27
   5.4 The IP Group ........................................   30
   5.4.1 The IP Address table ..............................   38
   5.4.2 The IP Routing table ..............................   41
   5.4.3 The IP Address Translation table ..................   48
   5.5 The ICMP Group ......................................   51
   5.6 The TCP Group .......................................   61
   5.6.1 The TCP Connection table ..........................   66
   5.6.2 Additional TCP Objects ............................   69
   5.7 The UDP Group .......................................   70
   5.7.1 The UDP Listener table ............................   72
   5.8 The EGP Group .......................................   73
   5.8.1 The EGP Neighbor table ............................   75
   5.8.2 Additional EGP variables ..........................   83
   5.9 The Transmission Group ..............................   83
   5.10 The SNMP Group .....................................   83
   6. Definitions ..........................................   95

   7. Identification of OBJECT instances for use with  the
      SNMP .................................................  126
   7.1 ifTable Object Type Names ...........................  127
   7.2 atTable Object Type Names ...........................  127
   7.3 ipAddrTable Object Type Names .......................  128
   7.4 ipRoutingTable Object Type Names ....................  128
   7.5 ipNetToMediaTable Object Type Names .................  129
   7.6 tcpConnTable Object Type Names ......................  129
   7.7 udpTable Object Type Names ..........................  130
   7.8 egpNeighTable Object Type Names .....................  130
   8.  Acknowledgements ....................................  130
   9.  References ..........................................  131
   10. Security Considerations..............................  133
   11. Author's Address.....................................  133

2.  Introduction

   As reported in RFC 1052, IAB Recommendations for the
   Development of Internet Network Management Standards [1], a
   two-prong strategy for network management of TCP/IP-based
   internets was undertaken.  In the short-term, the Simple
   Network Management Protocol (SNMP) was to be used to manage
   nodes in the Internet community.  In the long-term, the use of
   the OSI network management framework was to be examined.  Two
   documents were produced to define the management information:
   RFC 1065, which defined the Structure of Management
   Information (SMI) [2], and RFC 1066, which defined the
   Management Information Base (MIB) [3].  Both of these
   documents were designed so as to be compatible with both the
   SNMP and the OSI network management framework.

   This strategy was quite successful in the short-term:
   Internet-based network management technology was fielded, by
   both the research and commercial communities, within a few
   months.  As a result of this, portions of the Internet
   community became network manageable in a timely fashion.

   As reported in RFC 1109, Report of the Second Ad Hoc Network
   Management Review Group [4], the requirements of the SNMP and
   the OSI network management frameworks were more different than
   anticipated.  As such, the requirement for compatibility
   between the SMI/MIB and both frameworks was suspended.  This
   action permitted the operational network management framework,
   the SNMP, to respond to new operational needs in the Internet
   community by producing this document.

   As such, the current network management framework for TCP/IP-
   based internets consists of: Structure and Identification of

   Management Information for TCP/IP-based internets, RFC 1155 [13],
   which describes how managed objects contained in the MIB are
   defined; Management Information Base for Network Management of
   TCP/IP-based internets (version 2), this memo, which describes
   the managed objects contained in the MIB; and, the Simple
   Network Management Protocol, RFC 1157 [14], which defines the
   protocol used to manage these objects.

   Consistent with the IAB directive to produce simple, workable
   systems in the short-term, the list ofc objects (e.g., for BSD UNIX)
      were excluded.

   7) It was agreed to avoid heavily instrumenting critical
      sections of code.  The general guideline was one counter
      per critical section per layer.

3.  Changes from MIB-I

   Features of this MIB include:

      1) incremental additions to reflect new operational
         requirements;

      2) upwards compatibility with the SMI/MIB and the SNMP;

      3) improved support for multi-protocol entities; and,

      4) textual clean-up of the MIB to improve clarity and
         readability.

   The objects defined in MIB-II have the OBJECT IDENTIFIER prefix:

               mib-2      OBJECT IDENTIFIER ::= { mgmt 1 }

3.1.  Deprecated Objects

   In order to better prepare implementors for future changes in the
   MIB, a new term "deprecated" may be used when describing an object.
   A deprecated object in the MIB is one which must be supported, but
   one which will most likely be removed from the next version of the
   MIB (e.g., MIB-III).

      MIB-II marks one object as being deprecated:

      atTable

   As a result of deprecating the atTable object, the entire Address
   Translation group is deprecated.

   Note that no functionality is lost with the deprecation of these
   objects: new objects providing equivalent or superior functionality
   are defined in MIB-II.

3.2.  Display Strings

   In the past, there have been misinterpretations of the MIB as to when
   a string of octets should contain printable characters, meant to be
   displayed to a human.  As a textual convention in the MIB, the
   datatype

                  DisplayString ::= OCTET STRING

   is introduced.  A DisplayString is restricted to the NVT ASCII
   character set, as defined in pages 10-11 of [7].

   The following objects are now defined in terms of DisplayString:

                  sysDescr
                  ifDescr

   It should be noted that this change has no effect on either the
   syntax nor semantics of these objects.  The use of the DisplayString
   notation is merely an artifact of the explanatory method used in
   MIB-II and future MIBs.

   Further, it should be noted that any object defined in terms of OCTET
   STRING may contain arbitrary binary data, in which each octet may
   take any value from 0 to 255 (decimal).

3.3.  The System Group

   Four new objects are added to this group:

                  sysContact
                  sysName
                  sysLocation
                  sysServices

   These provide contact, administrative, location, and service
   information regarding the managed node.

3.4.  The Interfaces Group

   The definition of the ifNumber object was incorrect, as it required
   all interfaces to support IP.  (For example, devices without IP, such
   as MAC-layer bridges, could not be managed if this definition was
   strictly followed.) The description of the ifNumber object is changed

   accordingly.

   The ifTable object was mistaken marked as read-write, it has been
   (correctly) re-designated as read-only.  In addition, several new
   values have been added to the ifType column in the ifTable object:

                  ppp(23)
                  softwareLoopback(24)
                  eon(25)
                  ethernet-3Mbit(26)
                  nsip(27)
                  slip(28)

   Finally, a new column has been added to the ifTable object:

                  ifSpecific

   which provides information about information specific to the media
   being used to realize the interface.

3.5.  The Address Translation Group

   In MIB-I, this group contained a table which permitted mappings from
   network addresses (e.g., IP addresses) to physical addresses (e.g.,
   MAC addresses).  Experience has shown that efficient implementations
   of this table make two assumptions: a single network protocol
   environment, and mappings occur only from network address to physical
   address.

   The need to support multi-protocol nodes (e.g., those with both the
   IP and CLNP active), and the need to support the inverse mapping
   (e.g., for ES-IS), have invalidated both of these assumptions.  As
   such, the atTable object is declared deprecated.

   In order to meet both the multi-protocol and inverse mapping
   requirements, MIB-II and its successors will allocate up to two
   address translation tables inside each network protocol group.  That
   is, the IP group will contain one address translation table, for
   going from IP addresses to physical addresses.  Similarly, when a
   document defining MIB objects for the CLNP is produced (e.g., [8]),
   it will contain two tables, for mappings in both directions, as this
   is required for full functionality.

   It should be noted that the choice of two tables (one for each
   direction of mapping) provides for ease of implementation in many
   cases, and does not introduce undue burden on implementations which
   realize the address translation abstraction through a single internal
   table.

3.6.  The IP Group

   The access attribute of the variable ipForwarding has been changed
   from read-only to read-write.

   In addition, there is a new column to the ipAddrTable object,

                  ipAdEntReasmMaxSize

   which keeps track of the largest IP datagram that can be re-
   assembled on a particular interface.  There is also a new column in
   the ipRoutingTable object,

                  ipRouteMask

   which is used for IP routing subsystems that support arbitrary subnet
   masks.

   One new object is added to the IP group:

                  ipNetToMediaTable

   which is the address translation table for the IP group (providing
   identical functionality to the now deprecated atTable in the address
   translation group).

3.7.  The ICMP Group

   There are no changes to this group.

3.8.  The TCP Group

   Two new variables are added:

                  tcpInErrs
                  tcpOutRsts

   which keep track of the number of incoming TCP segments in error and
   the number of resets generated by a TCP.

3.9.  The UDP Group

   A new table:

                  udpTable

   is added.

3.10.  The EGP Group

   Experience has indicated a need for additional objects that are
   useful in EGP monitoring.  In addition to making several additions to
   the egpNeighborTable object, a new variable is added:

                  egpAs

   which gives the autonomous system associated with this EGP entity.

3.11.  The Transmission Group

   MIB-I was lacking in that it did not distinguish between different
   types of transmission media.  A new group, the Transmission group, is
   allocated for this purpose:

                  transmission OBJECT IDENTIFIER ::= { mib-2 10 }

   When Internet-standard definitions for managing transmission media
   are defined, the transmission group is used to provide a prefix for
   the names of those objects.

   Typically, such definitions reside in the experimental portion of the
   MIB until they are "proven", then as a part of the Internet
   standardization process, the definitions are accordingly elevated and
   a new object identifier, under the transmission group is defined.  By
   convention, the name assigned is:

                  type OBJECT IDENTIFIER    ::= { transmission number }

   where "type" is the symbolic value used for the media in the ifType
   column of the ifTable object, and "number" is the actual integer
   value corresponding to the symbol.

3.12.  The SNMP Group

   The application-oriented working groups of the IETF have been tasked
   to be receptive towards defining MIB variables specific to their
   respective applications.

   For the SNMP, it is useful to have statistical information.  A new
   group, the SNMP group, is allocated for this purpose:

                  snmp   OBJECT IDENTIFIER ::= { mib-2 11 }

4.  Objects

   Managed objects are accessed via a virtual information store, termed

   the Management Information Base or MIB.  Objects in the MIB are
   defined using Abstract Syntax Notation One (ASN.1) [9].

   The mechanisms used for describing these objects are specified the
   companion memo, the SMI.  In particular, each object has a name, a
   syntax, and an encoding.  The name is an object identifier, an
   administratively assigned name, which specifies an object type.  The
   object type together with an object instance serves to uniquely
   identify a specific instantiation of the object.  For human
   convenience, we often use a textual string, termed the OBJECT
   DESCRIPTOR, to also refer to the object type.

   The syntax of an object type defines the abstract data structure
   corresponding to that object type.  The ASN.1 language is used for
   this purpose.  However, the companion memo purposely restricts the
   ASN.1 constructs which may be used.  These restrictions are
   explicitly made for simplicity.

   The encoding of an object type is simply how that object type is
   represented using the object type's syntax.  Implicitly tied to the
   notion of an object type's syntax and encoding is how the object type
   is represented when being transmitted on the network.  This memo
   specifies the use of the basic encoding rules (BER) of ASN.1 [10],
   subject to the additional requirements imposed by the SNMP [14].

4.1.  Object Groups

   Since this list of managed objects contains only the essential
   elements, there is no need to allow individual objects to be
   optional.  Rather, the objects are arranged into the following
   groups:

                  - System
                  - Interfaces
                  - Address Translation (deprecated)
                  - IP
                  - ICMP
                  - TCP
                  - UDP
                  - EGP
                  - Transmission
                  - SNMP

   There are two reasons for defining these groups: to provide a means
   of assigning object identifiers; and, to provide a method for
   implementations of managed agents to know which objects they must
   implement.  This method is as follows: if the semantics of a group is
   applicable to an implementation, then it must implement all objects

   in that group.  For example, an implementation must implement the EGP
   group if and only if it implements the EGP.

4.2.  Format of Definitions

   The next section contains the specification of all object types
   contained in the MIB.  Following the conventions of the companion
   memo, the object types are defined using the following fields:

      OBJECT:
      -------
           A textual name, termed the OBJECT DESCRIPTOR, for the
           object type, along with its corresponding OBJECT
           IDENTIFIER.

      Syntax:
           The abstract syntax for the object type, presented using
           ASN.1.  This must resolve to an instance of the ASN.1
           type ObjectSyntax defined in the SMI.

      Definition:
           A textual description of the semantics of the object
           type.  Implementations should ensure that their
           interpretation of the object type fulfills this
           definition since this MIB is intended for use in multi-
           vendor environments.  As such it is vital that object
           types have consistent meaning across all machines.

      Access:
           A keyword, one of read-only, read-write, write-only, or
           not-accessible.  Note that this designation specifies the
           minimum level of support required.  As a local matter,
           implementations may support other access types (e.g., an
           implementation may elect to permitting writing a variable
           marked herein as read-only).  Further, protocol-specific
           "views" (e.g., those implied by an SNMP community) may
           make further restrictions on access to a variable.

      Status:
           A keyword, one of mandatory, optional, obsolete, or
           deprecated.  Use of deprecated implies mandatory status.

5.  Object Definitions

               RFC1158-MIB

               DEFINITIONS ::= BEGIN

               IMPORTS
                       mgmt, OBJECT-TYPE, NetworkAddress, IpAddress,
                       Counter, Gauge, TimeTicks
                           FROM RFC1155-SMI;

               DisplayString ::=
                           OCTET STRING


               mib-2      OBJECT IDENTIFIER ::= { mgmt 1 }    -- MIB-II

               system     OBJECT IDENTIFIER ::= { mib-2 1 }
               interfaces OBJECT IDENTIFIER ::= { mib-2 2 }
               at         OBJECT IDENTIFIER ::= { mib-2 3 }
               ip         OBJECT IDENTIFIER ::= { mib-2 4 }
               icmp       OBJECT IDENTIFIER ::= { mib-2 5 }
               tcp        OBJECT IDENTIFIER ::= { mib-2 6 }
               udp        OBJECT IDENTIFIER ::= { mib-2 7 }
               egp        OBJECT IDENTIFIER ::= { mib-2 8 }
               -- cmot    OBJECT IDENTIFIER ::= { mib-2 9 }
               transmission OBJECT IDENTIFIER ::= { mib-2 10 }
               snmp       OBJECT IDENTIFIER ::= { mib-2 11 }
               END

5.1.  The System Group

   Implementation of the System group is mandatory for all systems.


          OBJECT:
          -------
               sysDescr { system 1 }

          Syntax:
               DisplayString (SIZE (0..255))

          Definition:
               A textual description of the entity.  This value should
               include the full name and version identification of the
               system's hardware type, software operating-system, and
               networking software.  It is mandatory that this only
               contain printable ASCII characters.

          Access:
               read-only.

          Status:
               mandatory.

          OBJECT:
          -------
               sysObjectID { system 2 }

          Syntax:
               OBJECT IDENTIFIER

          Definition:
               The vendor's authoritative identification of the network
               management subsystem contained in the entity.  This value
               is allocated within the SMI enterprises subtree
               (1.3.6.1.4.1) and provides an easy and unambiguous means
               for determining "what kind of box" is being managed.  For
               example, if vendor "Flintstones, Inc." was assigned the
               subtree 1.3.6.1.4.1.4242, it could assign the identifier
               1.3.6.1.4.1.4242.1.1 to its "Fred Router".

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               sysUpTime { system 3 }

          Syntax:
               TimeTicks

          Definition:
               The time (in hundredths of a second) since the network
               management portion of the system was last re-initialized.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               sysContact { system 4 }

          Syntax:
               DisplayString (SIZE (0..255))

          Definition:
               The textual identification of the contact person for this
               managed node, together with information on how to contact
               this person.

          Access:
               read-write.

          Status:
               mandatory.


          OBJECT:
          -------
               sysName { system 5 }

          Syntax:
               DisplayString (SIZE (0..255))

          Definition:
               An administratively-assigned name for this managed node.
               By convention, this is the node's fully-qualified domain
               name.

          Access:
               read-write.

          Status:
               mandatory.


          OBJECT:
          -------
               sysLocation { system 6 }

          Syntax:
               DisplayString (SIZE (0..255))

          Definition:
               The physical location of this node (e.g., "telephone
               closet, 3rd floor").

          Access:
               read-only.

          Status:
               mandatory.

          OBJECT:
          -------
               sysServices { system 7 }

          Syntax:
               INTEGER (0..127)

          Definition:
               A value which indicates the set of services that this
               entity potentially offers.  The value is a sum.  This
               sum initially takes the value zero, Then, for each layer,
               L, in the range 1 through 7, that this node performs
               transactions for, 2 raised to (L - 1) is added to the
               sum.  For example, a node which performs only routing
               functions would have a value of 4 (2^(3-1)).  In
               contrast, a node which is a host offering application
               services would have a value of 72 (2^(4-1) + 2^(7-1)).
               Note that in the context of the Internet suite of
               protocols, values should be calculated accordingly:

                    layer  functionality
                    1      physical (e.g., repeaters)
                    2      datalink/subnetwork (e.g., bridges)
                    3      internet (e.g., supports the IP)
                    4      end-to-end  (e.g., supports the TCP)
                    7      applications (e.g., supports the SMTP)

               For systems including OSI protocols, layers 5 and 6 may
               also be counted.

          Access:
               read-only.

          Status:
               mandatory.

5.2.  The Interfaces Group

   Implementation of the Interfaces group is mandatory for all systems.


          OBJECT:
          -------
               ifNumber { interfaces 1 }

          Syntax:
               INTEGER

          Definition:
               The number of network interfaces (regardless of their
               current state) present on this system.

          Access:
               read-only.

          Status:
               mandatory.

5.2.1.  The Interfaces table

   The Interfaces table contains information on the entity's interfaces.
   Each interface is thought of as being attached to a "subnetwork".
   Note that this term should not be confused with "subnet" which refers
   to an addressing partitioning scheme used in the Internet suite of
   protocols.


          OBJECT:
          -------
               ifTable { interfaces 2 }

          Syntax:
               SEQUENCE OF IfEntry

          Definition:
               A list of interface entries.  The number of entries is
               given by the value of ifNumber.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifEntry { ifTable 1 }

          Syntax:
               IfEntry ::= SEQUENCE {
                    ifIndex
                        INTEGER,
                    ifDescr
                        DisplayString,
                    ifType
                        INTEGER,
                    ifMtu
                        INTEGER,
                    ifSpeed
                        Gauge,
                    ifPhysAddress
                        OCTET STRING,
                    ifAdminStatus
                        INTEGER,
                    ifOperStatus
                        INTEGER,
                    ifLastChange
                        TimeTicks,
                    ifInOctets
                        Counter,
                    ifInUcastPkts
                        Counter,
                    ifInNUcastPkts
                        Counter,
                    ifInDiscards
                        Counter,
                    ifInErrors
                        Counter,
                    ifInUnknownProtos
                        Counter,
                    ifOutOctets
                        Counter,
                    ifOutUcastPkts
                        Counter,
                    ifOutNUcastPkts
                        Counter,
                    ifOutDiscards
                        Counter,
                    ifOutErrors
                        Counter,
                    ifOutQLen
                        Gauge,
                    ifSpecific
                        OBJECT IDENTIFIER
               }

          Definition:
               An interface entry containing objects at the subnetwork
               layer and below for a particular interface.

          Access:
               read-only.

          Status:
               mandatory.


          We now consider the individual components of each interface
          entry:


          OBJECT:
          -------
               ifIndex { ifEntry 1 }

          Syntax:
               INTEGER

          Definition:
               A unique value for each interface.  Its value ranges
               between 1 and the value of ifNumber.  The value for each
               interface must remain constant at least from one re-
               initialization of the entity's network management system
               to the next re-initialization.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifDescr { ifEntry 2 }

          Syntax:
               DisplayString (SIZE (0..255))

          Definition:
               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
               hardware interface.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifType { ifEntry 3 }

          Syntax:
               INTEGER {
                    other(1),          -- none of the following
                    regular1822(2),
                    hdh1822(3),
                    ddn-x25(4),
                    rfc877-x25(5),
                    ethernet-csmacd(6),
                    iso88023-csmacd(7),
                    iso88024-tokenBus(8),
                    iso88025-tokenRing(9),
                    iso88026-man(10),
                    starLan(11),
                    proteon-10Mbit(12),
                    proteon-80Mbit(13),
                    hyperchannel(14),
                    fddi(15),
                    lapb(16),
                    sdlc(17),
                    t1-carrier(18),
                    cept(19),          -- european equivalent of T-1
                    basicISDN(20),
                    primaryISDN(21),
                                        -- proprietary serial
                    propPointToPointSerial(22),
                    ppp(23),
                    softwareLoopback(24),
                    eon(25),            -- CLNP over IP [12]
                    ethernet-3Mbit(26)
                    nsip(27),           -- XNS over IP
                    slip(28)            -- generic SLIP
               }

          Definition:
               The type of interface, distinguished according to the
               physical/link protocol(s) immediately "below" the network
               layer in the protocol stack.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifMtu { ifEntry 4 }

          Syntax:
               INTEGER

          Definition:
               The size of the largest datagram 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.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifSpeed { ifEntry 5 }

          Syntax:
               Gauge

          Definition:
               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.

          Access:
               read-only.

          Status:
               mandatory.

          OBJECT:
          -------
               ifPhysAddress { ifEntry 6 }

          Syntax:
               OCTET STRING

          Definition:
               The interface's address at the protocol layer immediately
               "below" the network layer in the protocol stack.  For
               interfaces which do not have such an address (e.g., a
               serial line), this object should contain an octet string
               of zero length.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifAdminStatus { ifEntry 7 }

          Syntax:
               INTEGER {
                    up(1),       -- ready to pass packets
                    down(2),
                    testing(3)   -- in some test mode
               }

          Definition:
               The desired state of the interface.  The testing(3) state
               indicates that no operational packets can be passed.

          Access:
               read-write.

          Status:
               mandatory.


          OBJECT:
          -------
               ifOperStatus { ifEntry 8 }

          Syntax:
               INTEGER {
                    up(1),       -- ready to pass packets
                    down(2),
                    testing(3)   -- in some test mode
               }

          Definition:
               The current operational state of the interface.  The
               testing(3) state indicates that no operational packets
               can be passed.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifLastChange { ifEntry 9 }

          Syntax:
               TimeTicks

          Definition:
               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.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifInOctets { ifEntry 10 }

          Syntax:
               Counter

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

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifInUcastPkts  { ifEntry 11 }

          Syntax:
               Counter

          Definition:
               The number of subnetwork-unicast packets delivered to a
               higher-layer protocol.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifInNUcastPkts { ifEntry 12 }

          Syntax:
               Counter

          Definition:
               The number of non-unicast (i.e., subnetwork-broadcast or
               subnetwork-multicast) packets delivered to a higher-layer
               protocol.

          Access:
               read-only.

          Status:
               mandatory.

          OBJECT:
          -------
               ifInDiscards { ifEntry 13 }

          Syntax:
               Counter

          Definition:
               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.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifInErrors { ifEntry 14 }

          Syntax:
               Counter

          Definition:
               The number of inbound packets that contained errors
               preventing them from being deliverable to a higher-layer
               protocol.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifInUnknownProtos { ifEntry 15 }

          Syntax:
               Counter

          Definition:
               The number of packets received via the interface which
               were discarded because of an unknown or unsupported
               protocol.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifOutOctets { ifEntry 16 }

          Syntax:
               Counter

          Definition:
               The total number of octets transmitted out of the
               interface, including framing characters.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifOutUcastPkts { ifEntry 17 }

          Syntax:
               Counter

          Definition:
               The total number of packets that higher-level protocols
               requested be transmitted to a subnetwork-unicast address,
               including those that were discarded or not sent.

          Access:
               read-only.

          Status:
               mandatory.

          OBJECT:
          -------
               ifOutNUcastPkts { ifEntry 18 }

          Syntax:
               Counter

          Definition:
               The total number of packets that higher-level protocols
               requested be transmitted to a non-unicast (i.e., a
               subnetwork-broadcast or subnetwork-multicast) address,
               including those that were discarded or not sent.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifOutDiscards { ifEntry 19 }

          Syntax:
               Counter

          Definition:
               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.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifOutErrors { ifEntry 20 }

          Syntax:
               Counter

          Definition:
               The number of outbound packets that could not be
               transmitted because of errors.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifOutQLen { ifEntry 21 }

          Syntax:
               Gauge

          Definition:
               The length of the output packet queue (in packets).

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ifSpecific { ifEntry 22 }

          Syntax:
               OBJECT IDENTIFIER

          Definition:
               A reference to MIB definitions specific to the particular
               media being used to realize the interface.  For example,
               if the interface is realized by an ethernet, then the
               value of this object refers to a document defining
               objects specific to ethernet.  If an agent is not
               configured to have a value for any of these variables,
               the object identifier

                    nullSpecific OBJECT IDENTIFIER ::= { 0 0 }

               is returned.  Note that "nullSpecific" is a syntatically
               valid object identifier, and any conformant

               implementation of ASN.1 and BER must be able to generate
               and recognize this value.

          Access:
               read-only.

          Status:
               mandatory.

5.3.  The Address Translation Group

   Implementation of the Address Translation group is mandatory for all
   systems.  Note however that this group is deprecated by MIB-II.  That
   is, it is being included solely for compatibility with MIB-I nodes,
   and will most likely be excluded from MIB-III nodes.  From MIB-II and
   onwards, each network protocol group contains its own address
   translation tables.

   The Address Translation group contains one table which is the union
   across all interfaces of the translation tables for converting a
   NetworkAddress (e.g., an IP address) into a subnetwork-specific
   address.  For lack of a better term, this document refers to such a
   subnetwork-specific address as a "physical" address.

   Examples of such translation tables are: for broadcast media where
   ARP is in use, the translation table is equivalent to the ARP cache;
   or, on an X.25 network where non-algorithmic translation to X.121
   addresses is required, the translation table contains the
   NetworkAddress to X.121 address equivalences.


          OBJECT:
          -------
               atTable { at 1 }

          Syntax:
               SEQUENCE OF AtEntry

          Definition:
               The Address Translation tables contain the NetworkAddress
               to "physical" address equivalences.  Some interfaces do
               not use translation tables for determining address
               equivalences (e.g., DDN-X.25 has an algorithmic method);
               if all interfaces are of this type, then the Address
               Translation table is empty, i.e., has zero entries.

          Access:
               read-write.

          Status:
               deprecated.


          OBJECT:
          -------
               atEntry { atTable 1 }

          Syntax:
               AtEntry ::= SEQUENCE {
                    atIfIndex
                        INTEGER,
                    atPhysAddress
                        OCTET STRING,
                    atNetAddress
                        NetworkAddress
               }

          Definition:
               Each entry contains one NetworkAddress to "physical"
               address equivalence.

          Access:
               read-write.

          Status:
               deprecated.

          We now consider the individual components of each Address
          Translation table entry:


          OBJECT:
          -------
               atIfIndex { atEntry 1 }

          Syntax:
               INTEGER

          Definition:
               The interface on which this entry's equivalence is
               effective.  The interface identified by a particular
               value of this index is the same interface as identified
               by the same value of ifIndex.

          Access:
               read-write.

          Status:
               deprecated.


          OBJECT:
          -------
               atPhysAddress { atEntry 2 }

          Syntax:
               OCTET STRING

          Definition:
               The media-dependent "physical" address.

          Setting this object to a null string (one of zero length) has
          the effect of invaliding the corresponding entry in the
          atTable object.  That is, it effectively disassociates the
          interface identified with said entry from the mapping
          identified with said entry.  It is an implementation-specific
          matter as to whether the agent removes an invalidated entry
          from the table.  Accordingly, management stations must be
          prepared to receive tabular information from agents that
          corresponds to entries not currently in use.  Proper
          interpretation of such entries requires examination of the
          relevant atPhysAddress object.

          Access:
               read-write.

          Status:
               deprecated.


          OBJECT:
          -------
               atNetAddress { atEntry 3 }

          Syntax:
               NetworkAddress

          Definition:
               The NetworkAddress (e.g., the IP address) corresponding
               to the media-dependent "physical" address.

          Access:
               read-write.

          Status:
               deprecated.

5.4.  The IP Group

   Implementation of the IP group is mandatory for all systems.



          OBJECT:
          -------
               ipForwarding { ip 1 }

          Syntax:
               INTEGER {
                    forwarding(1),    -- i.e., acting as a gateway
                    not-forwarding(2) -- i.e., NOT acting as a gateway
               }

          Definition:
               The indication of whether this entity is acting as an IP
               gateway in respect to the forwarding of datagrams
               received by, but not addressed to, this entity.  IP
               gateways forward datagrams.  IP hosts do not (except
               those source-routed via the host).

          Access:
               read-write.

          Status:
               mandatory.


          OBJECT:
          -------
               ipDefaultTTL { ip 2 }

          Syntax:
               INTEGER

          Definition:
               The default value inserted into the Time-To-Live field of
               the IP header of datagrams originated at this entity,
               whenever a TTL value is not supplied by the transport
               layer protocol.

          Access:
               read-write.

          Status:
               mandatory.


          OBJECT:
          -------
               ipInReceives { ip 3 }

          Syntax:
               Counter

          Definition:
               The total number of input datagrams received from
               interfaces, including those received in error.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipInHdrErrors { ip 4 }

          Syntax:
               Counter

          Definition:
               The number of input datagrams discarded due to errors in
               their IP headers, including bad checksums, version number
               mismatch, other format errors, time-to-live exceeded,
               errors discovered in processing their IP options, etc.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipInAddrErrors { ip 5 }

          Syntax:
               Counter

          Definition:
               The number of input datagrams discarded because the IP
               address in their IP header's destination field was not a
               valid address to be received at this entity.  This count
               includes invalid addresses (e.g., 0.0.0.0) and addresses
               of unsupported Classes (e.g., Class E).  For entities
               which are not IP Gateways and therefore do not forward
               datagrams, this counter includes datagrams discarded
               because the destination address was not a local address.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipForwDatagrams { ip 6 }

          Syntax:
               Counter

          Definition:
               The number of input datagrams for which this entity was
               not their final IP destination, as a result of which an
               attempt was made to find a route to forward them to that
               final destination.  In entities which do not act as IP
               Gateways, this counter will include only those packets
               which were Source-Routed via this entity, and the
               Source-Route option processing was successful.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipInUnknownProtos { ip 7 }

          Syntax:
               Counter

          Definition:
               The number of locally-addressed datagrams received
               successfully but discarded because of an unknown or
               unsupported protocol.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipInDiscards { ip 8 }

          Syntax:
               Counter

          Definition:
               The number of input IP datagrams for which no problems
               were encountered to prevent their continued processing,
               but which were discarded (e.g., for lack of buffer
               space).  Note that this counter does not include any
               datagrams discarded while awaiting re-assembly.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipInDelivers { ip 9 }

          Syntax:
               Counter

          Definition:
               The total number of input datagrams successfully
               delivered to IP user-protocols (including ICMP).

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipOutRequests { ip 10 }

          Syntax:
               Counter

          Definition:
               The total number of IP datagrams which local IP user-
               protocols (including ICMP) supplied to IP in requests for
               transmission.  Note that this counter does not include
               any datagrams counted in ipForwDatagrams.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
               ipOutDiscards { ip 11 }

          Syntax:
               Counter

          Definition:
               The number of output IP datagrams for which no problem
               was encountered to prevent their transmission to their
               destination, but which were discarded (e.g., for lack of
               buffer space).  Note that this counter would include
               datagrams counted in ipForwDatagrams if any such packets
               met this (discretionary) discard criterion.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipOutNoRoutes { ip 12 }

          Syntax:
               Counter

          Definition:
               The number of IP datagrams discarded because no route
               could be found to transmit them to their destination.
               Note that this counter includes any packets counted in
               ipForwDatagrams which meet this "no-route" criterion.
               Note that this includes any datagarms which a host cannot
               route because all of its default gateways are down.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipReasmTimeout { ip 13 }

          Syntax:
               INTEGER

          Definition:
               The maximum number of seconds which received fragments
               are held while they are awaiting reassembly at this
               entity.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipReasmReqds { ip 14 }

          Syntax:
               Counter

          Definition:
               The number of IP fragments received which needed to be
               reassembled at this entity.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipReasmOKs { ip 15 }

          Syntax:
               Counter

          Definition:
               The number of IP datagrams successfully re-assembled.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipReasmFails { ip 16 }

          Syntax:
               Counter

          Definition:
               The number of failures detected by the IP re-assembly
               algorithm (for whatever reason: timed out, errors, etc).
               Note that this is not necessarily a count of discarded IP
               fragments since some algorithms (notably the algorithm in
               RFC 815) can lose track of the number of fragments by
               combining them as they are received.

          Access:
               read-only.

          Status:
               mandatory.

          OBJECT:
          -------
               ipFragOKs { ip 17 }

          Syntax:
               Counter

          Definition:
               The number of IP datagrams that have been successfully
               fragmented at this entity.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipFragFails { ip 18 }

          Syntax:
               Counter

          Definition:
               The number of IP datagrams that have been discarded
               because they needed to be fragmented at this entity but
               could not be, e.g., because their "Don't Fragment" flag
               was set.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipFragCreates { ip 19 }

          Syntax:
               Counter

          Definition:
               The number of IP datagram fragments that have been
               generated as a result of fragmentation at this entity.

          Access:
               read-only.

          Status:
               mandatory.

5.4.1.  The IP Address table

   The Ip Address table contains this entity's IP addressing
   information.



          OBJECT:
          -------
               ipAddrTable { ip 20 }

          Syntax:
               SEQUENCE OF IpAddrEntry

          Definition:
               The table of addressing information relevant to this
               entity's IP addresses.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipAddrEntry { ipAddrTable 1 }

          Syntax:
               IpAddrEntry ::= SEQUENCE {
                    ipAdEntAddr
                        IpAddress,
                    ipAdEntIfIndex
                        INTEGER,
                    ipAdEntNetMask
                        IpAddress,
                    ipAdEntBcastAddr
                        INTEGER,
                    ipAdEntReasmMaxSize
                        INTEGER (0..65535)
               }

          Definition:
               The addressing information for one of this entity's IP
               addresses.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipAdEntAddr  { ipAddrEntry 1 }

          Syntax:
               IpAddress

          Definition:
               The IP address to which this entry's addressing
               information pertains.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipAdEntIfIndex  { ipAddrEntry 2 }

          Syntax:
               INTEGER

          Definition:
               The index value which uniquely identifies the interface
               to which this entry is applicable.  The interface
               identified by a particular value of this index is the
               same interface as identified by the same value of
               ifIndex.

          Access:
               read-only.

          Status:
               mandatory.

          OBJECT:
          -------
               ipAdEntNetMask  { ipAddrEntry 3 }

          Syntax:
               IpAddress

          Definition:
               The subnet mask associated with the IP address of this
               entry.  The value of the mask is an IP address with all
               the network bits set to 1 and all the hosts bits set to
               0.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipAdEntBcastAddr { ipAddrEntry 4 }

          Syntax:
               INTEGER

          Definition:
               The value of the least-significant bit in the IP
               broadcast address used for sending datagrams on the
               (logical) interface associated with the IP address of
               this entry.  For example, when the Internet standard
               all-ones broadcast address is used, the value will be 1.
               This value applies to both the subnet and network
               broadcasts addresses used by the entity on this (logical)
               interface.

          Access:
               read-only.

          Status:
               mandatory.


          OBJECT:
          -------
               ipAdEntReasmMaxSize { ipAddrEntry 5 }

          Syntax:
               INTEGER (0..65535)

          Definition:
               The size of the largest IP datagram which this entity can
               re-assemble from incoming IP fragmented datagrams
               received on this interface.

          Access:
               read-only.

          Status:
               mandatory.

5.4.2.  The IP Routing table

EID 557 (Verified) is as follows:

Section: 5.4.2

Original Text:

   egp(5),
   ggp(6),
   hello(7),
   rip(8),
   is-is(9),
   es-is(10),
   ciscoIgrp(11),
   bbnSpfIgp(12),
   ospf(13)
   bgp(14)

Corrected Text:

   egp(5),
   ggp(6),
   hello(7),
   rip(8),
   is-is(9),
   es-is(10),
   ciscoIgrp(11),
   bbnSpfIgp(12),
   ospf(13),
   bgp(14)
Notes:
The IP Routing table contains an entry for each route presently known to this entity. OBJECT: ------- ipRoutingTable { ip 21 } Syntax: SEQUENCE OF IpRouteEntry Definition: This entity's IP Routing table. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteEntry { ipRoutingTable 1 } Syntax: IpRouteEntry ::= SEQUENCE { ipRouteDest IpAddress, ipRouteIfIndex INTEGER, ipRouteMetric1 INTEGER, ipRouteMetric2 INTEGER, ipRouteMetric3 INTEGER, ipRouteMetric4 INTEGER, ipRouteNextHop IpAddress, ipRouteType INTEGER, ipRouteProto INTEGER, ipRouteAge INTEGER, ipRouteMask IpAddress } Definition: A route to a particular destination. Access: read-write. Status: mandatory. We now consider the individual components of each route in the IP Routing table: OBJECT: ------- ipRouteDest { ipRouteEntry 1 } Syntax: IpAddress Definition: The destination IP address of this route. An entry with a value of 0.0.0.0 is considered a default route. Multiple routes to a single destination can appear in the table, but access to such multiple entries is dependent on the table-access mechanisms defined by the network management protocol in use. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteIfIndex { ipRouteEntry 2 } Syntax: INTEGER Definition: The index value which uniquely identifies the local interface through which the next hop of this route should be reached. The interface identified by a particular value of this index is the same interface as identified by the same value of ifIndex. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteMetric1 { ipRouteEntry 3 } Syntax: INTEGER Definition: The primary routing metric for this route. The semantics of this metric are determined by the routing-protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteMetric2 { ipRouteEntry 4 } Syntax: INTEGER Definition: An alternate routing metric for this route. The semantics of this metric are determined by the routing- protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteMetric3 { ipRouteEntry 5 } Syntax: INTEGER Definition: An alternate routing metric for this route. The semantics of this metric are determined by the routing- protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteMetric4 { ipRouteEntry 6 } Syntax: INTEGER Definition: An alternate routing metric for this route. The semantics of this metric are determined by the routing- protocol specified in the route's ipRouteProto value. If this metric is not used, its value should be set to -1. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteNextHop { ipRouteEntry 7 } Syntax: IpAddress Definition: The IP address of the next hop of this route. (In the case of a route bound to an interface which is realized via a broadcast media, the value of this field is the agent's IP address on that interface.) Access: read-write. Status: mandatory. OBJECT: ------- ipRouteType { ipRouteEntry 8 } Syntax: INTEGER { other(1), -- none of the following invalid(2), -- an invalidated route -- route to directly direct(3), -- connected (sub-)network -- route to a non-local remote(4) -- host/network/sub-network } Definition: The type of route. Setting this object to the value invalid(2) has the effect of invalidating the corresponding entry in the ipRoutingTable object. That is, it effectively disassociates the destination identified with said entry from the route identified with said entry. It is an implementation-specific matter as to whether the agent removes an invalidated entry from the table. Accordingly, management stations must be prepared to receive tabular information from agents that corresponds to entries not currently in use. Proper interpretation of such entries requires examination of the relevant ipRouteType object. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteProto { ipRouteEntry 9 } Syntax: INTEGER { other(1), -- none of the following -- non-protocol information, -- e.g., manually configured local(2), -- entries -- set via a network management netmgmt(3), -- protocol -- obtained via ICMP, icmp(4), -- e.g., Redirect -- the remaining values are -- all gateway routing protocols egp(5), ggp(6), hello(7), rip(8), is-is(9), es-is(10), ciscoIgrp(11), bbnSpfIgp(12), ospf(13), bgp(14) } Definition: The routing mechanism via which this route was learned. Inclusion of values for gateway routing protocols is not intended to imply that hosts should support those protocols. Access: read-only. Status: mandatory. OBJECT: ------- ipRouteAge { ipRouteEntry 10 } Syntax: INTEGER Definition: The number of seconds since this route was last updated or otherwise determined to be correct. Note that no semantics of "too old" can be implied except through knowledge of the routing protocol by which the route was learned. Access: read-write. Status: mandatory. OBJECT: ------- ipRouteMask { ipRouteEntry 11 } Syntax: IpAddress Definition: Indicate the mask to be logical-ANDed with the destination address before being compared to the value in the ipRouteDest field. For those systems that do not support arbitrary subnet masks, an agent constructs the value of the ipRouteMask by determining whether the value of the correspondent ipRouteDest field belong to a class-A, B, or C network, and then using one of: mask network 255.0.0.0 class-A 255.255.0.0 class-B 255.255.255.0 class-C If the value of the ipRouteDest is 0.0.0.0 (a default route), then the mask value is also 0.0.0.0. It should be noted that all IP routing subsystems implicitly use this mechanism. Access: read-write. Status: mandatory. 5.4.3. The IP Address Translation table The Address Translation tables contain the IpAddress to "physical" address equivalences. Some interfaces do not use translation tables for determining address equivalences (e.g., DDN-X.25 has an algorithmic method); if all interfaces are of this type, then the Address Translation table is empty, i.e., has zero entries. OBJECT: ------- ipNetToMediaTable { ip 22 } Syntax: SEQUENCE OF IpNetToMediaEntry Definition: The IP Address Translation table used for mapping from IP addresses to physical addresses. Access: read-write. Status: mandatory. OBJECT: ------- IpNetToMediaEntry { ipNetToMediaTable 1 } Syntax: IpNetToMediaEntry ::= SEQUENCE { ipNetToMediaIfIndex INTEGER, ipNetToMediaPhysAddress OCTET STRING, ipNetToMediaNetAddress IpAddress, ipNetToMediaType INTEGER } Definition: Each entry contains one IpAddress to "physical" address equivalence. Access: read-write. Status: mandatory. We now consider the individual components of each IP Address Translation table entry: OBJECT: ------- ipNetToMediaIfIndex { ipNetToMediaEntry 1 } Syntax: INTEGER Definition: The interface on which this entry's equivalence is effective. The interface identified by a particular value of this index is the same interface as identified by the same value of ifIndex. Access: read-write. Status: mandatory. OBJECT: ------- ipNetToMediaPhysAddress { ipNetToMediaEntry 2 } Syntax: OCTET STRING Definition: The media-dependent "physical" address. Access: read-write. Status: mandatory. OBJECT: ------- ipNetToMediaNetAddress { ipNetToMediaEntry 3 } Syntax: IpAddress Definition: The IpAddress corresponding to the media-dependent "physical" address. Access: read-write. Status: mandatory. OBJECT: ------- ipNetToMediaType { ipNetToMediaEntry 4 } Syntax: INTEGER { other(1), -- none of the following invalid(2), -- an invalidated mapping dynamic(3), static(4) } Definition: The type of mapping. Setting this object to the value invalid(2) has the effect of invalidating the corresponding entry in the ipNetToMediaTable. That is, it effectively disassociates the interface identified with said entry from the mapping identified with said entry. It is an implementation-specific matter as to whether the agent removes an invalidated entry from the table. Accordingly, management stations must be prepared to receive tabular information from agents that corresponds to entries not currently in use. Proper interpretation of such entries requires examination of the relevant ipNetToMediaType object. Access: read-write. Status: mandatory. 5.5. The ICMP Group Implementation of the ICMP group is mandatory for all systems. The ICMP group contains the ICMP input and output statistics. OBJECT: ------- icmpInMsgs { icmp 1 } Syntax: Counter Definition: The total number of ICMP messages which the entity received. Note that this counter includes all those counted by icmpInErrors. Access: read-only. Status: mandatory. OBJECT: ------- icmpInErrors { icmp 2 } Syntax: Counter Definition: The number of ICMP messages which the entity received but determined as having ICMP-specific errors (bad ICMP checksums, bad length, etc.). Access: read-only. Status: mandatory. OBJECT: ------- icmpInDestUnreachs { icmp 3 } Syntax: Counter Definition: The number of ICMP Destination Unreachable messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInTimeExcds { icmp 4 } Syntax: Counter Definition: The number of ICMP Time Exceeded messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInParmProbs { icmp 5 } Syntax: Counter Definition: The number of ICMP Parameter Problem messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInSrcQuenchs { icmp 6 } Syntax: Counter Definition: The number of ICMP Source Quench messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInRedirects { icmp 7 } Syntax: Counter Definition: The number of ICMP Redirect messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInEchos { icmp 8 } Syntax: Counter Definition: The number of ICMP Echo (request) messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInEchoReps { icmp 9 } Syntax: Counter Definition: The number of ICMP Echo Reply messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInTimestamps { icmp 10 } Syntax: Counter Definition: The number of ICMP Timestamp (request) messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInTimestampReps { icmp 11 } Syntax: Counter Definition: The number of ICMP Timestamp Reply messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInAddrMasks { icmp 12 } Syntax: Counter Definition: The number of ICMP Address Mask Request messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpInAddrMaskReps { icmp 13 } Syntax: Counter Definition: The number of ICMP Address Mask Reply messages received. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutMsgs { icmp 14 } Syntax: Counter Definition: The total number of ICMP messages which this entity attempted to send. Note that this counter includes all those counted by icmpOutErrors. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutErrors { icmp 15 } Syntax: Counter Definition: The number of ICMP messages which this entity did not send due to problems discovered within ICMP such as a lack of buffers. This value should not include errors discovered outside the ICMP layer such as the inability of IP to route the resultant datagram. In some implementations there may be no types of error which contribute to this counter's value. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutDestUnreachs { icmp 16 } Syntax: Counter Definition: The number of ICMP Destination Unreachable messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutTimeExcds { icmp 17 } Syntax: Counter Definition: The number of ICMP Time Exceeded messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutParmProbs { icmp 18 } Syntax: Counter Definition: The number of ICMP Parameter Problem messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutSrcQuenchs { icmp 19 } Syntax: Counter Definition: The number of ICMP Source Quench messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutRedirects { icmp 20 } Syntax: Counter Definition: The number of ICMP Redirect messages sent. For a host, this object will always be zero, since hosts do not send redirects. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutEchos { icmp 21 } Syntax: Counter Definition: The number of ICMP Echo (request) messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutEchoReps { icmp 22 } Syntax: Counter Definition: The number of ICMP Echo Reply messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutTimestamps { icmp 23 } Syntax: Counter Definition: The number of ICMP Timestamp (request) messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutTimestampReps { icmp 24 } Syntax: Counter Definition: The number of ICMP Timestamp Reply messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutAddrMasks { icmp 25 } Syntax: Counter Definition: The number of ICMP Address Mask Request messages sent. Access: read-only. Status: mandatory. OBJECT: ------- icmpOutAddrMaskReps { icmp 26 } Syntax: Counter Definition: The number of ICMP Address Mask Reply messages sent. Access: read-only. Status: mandatory. 5.6. The TCP Group Implementation of the TCP group is mandatory for all systems that implement the TCP. Note that instances of object types that represent information about a particular TCP connection are transient; they persist only as long as the connection in question. OBJECT: ------- tcpRtoAlgorithm { tcp 1 } Syntax: INTEGER { other(1), -- none of the following constant(2), -- a constant rto rsre(3), -- MIL-STD-1778, Appendix B vanj(4) -- Van Jacobson's algorithm [11] } Definition: The algorithm used to determine the timeout value used for retransmitting unacknowledged octets. Access: read-only. Status: mandatory. OBJECT: ------- tcpRtoMin { tcp 2 } Syntax: INTEGER Definition: The minimum value permitted by a TCP implementation for the retransmission timeout, measured in milliseconds. More refined semantics for objects of this type depend upon the algorithm used to determine the retransmission timeout. In particular, when the timeout algorithm is rsre(3), an object of this type has the semantics of the LBOUND quantity described in RFC 793. Access: read-only. Status: mandatory. OBJECT: ------- tcpRtoMax { tcp 3 } Syntax: INTEGER Definition: The maximum value permitted by a TCP implementation for the retransmission timeout, measured in milliseconds. More refined semantics for objects of this type depend upon the algorithm used to determine the retransmission timeout. In particular, when the timeout algorithm is rsre(3), an object of this type has the semantics of the UBOUND quantity described in RFC 793. Access: read-only. Status: mandatory. OBJECT: ------- tcpMaxConn { tcp 4 } Syntax: INTEGER Definition: The limit on the total number of TCP connections the entity can support. In entities where the maximum number of connections is dynamic, this object should contain the value "-1". Access: read-only. Status: mandatory. OBJECT: ------- tcpActiveOpens { tcp 5 } Syntax: Counter Definition: The number of times TCP connections have made a direct transition to the SYN-SENT state from the CLOSED state. Access: read-only. Status: mandatory. OBJECT: ------- tcpPassiveOpens { tcp 6 } Syntax: Counter Definition: The number of times TCP connections have made a direct transition to the SYN-RCVD state from the LISTEN state. Access: read-only. Status: mandatory. OBJECT: ------- tcpAttemptFails { tcp 7 } Syntax: Counter Definition: The number of times TCP connections have made a direct transition to the CLOSED state from either the SYN-SENT state or the SYN-RCVD state, plus the number of times TCP connections have made a direct transition to the LISTEN state from the SYN-RCVD state. Access: read-only. Status: mandatory. OBJECT: ------- tcpEstabResets { tcp 8 } Syntax: Counter Definition: The number of times TCP connections have made a direct transition to the CLOSED state from either the ESTABLISHED state or the CLOSE-WAIT state. Access: read-only. Status: mandatory. OBJECT: ------- tcpCurrEstab { tcp 9 } Syntax: Gauge Definition: The number of TCP connections for which the current state is either ESTABLISHED or CLOSE-WAIT. Access: read-only. Status: mandatory. OBJECT: ------- tcpInSegs { tcp 10 } Syntax: Counter Definition: The total number of segments received, including those received in error. This count includes segments received on currently established connections. Access: read-only. Status: mandatory. OBJECT: ------- tcpOutSegs { tcp 11 } Syntax: Counter Definition: The total number of segments sent, including those on current connections but excluding those containing only retransmitted octets. Access: read-only. Status: mandatory. OBJECT: ------- tcpRetransSegs { tcp 12 } Syntax: Counter Definition: The total number of segments retransmitted - that is, the number of TCP segments transmitted containing one or more previously transmitted octets. Access: read-only. Status: mandatory. 5.6.1. The TCP Connection table The TCP connection table contains information about this entity's existing TCP connections. OBJECT: ------- tcpConnTable { tcp 13 } Syntax: SEQUENCE OF TcpConnEntry Definition: A table containing TCP connection-specific information. Access: read-only. Status: mandatory. OBJECT: ------- tcpConnEntry { tcpConnTable 1 } Syntax: TcpConnEntry ::= SEQUENCE { tcpConnState INTEGER, tcpConnLocalAddress IpAddress, tcpConnLocalPort INTEGER (0..65535), tcpConnRemAddress IpAddress, tcpConnRemPort INTEGER (0..65535) } Definition: Information about a particular current TCP connection. An object of this type is transient, in that it ceases to exist when (or soon after) the connection makes the transition to the CLOSED state. Access: read-only. Status: mandatory. OBJECT: ------- tcpConnState { tcpConnEntry 1 } Syntax: INTEGER { closed(1), listen(2), synSent(3), synReceived(4), established(5), finWait1(6), finWait2(7), closeWait(8), lastAck(9), closing(10), timeWait(11) } Definition: The state of this TCP connection. Access: read-only. Status: mandatory. OBJECT: ------- tcpConnLocalAddress { tcpConnEntry 2 } Syntax: IpAddress Definition: The local IP address for this TCP connection. In the case of a connection in the listen state which is willing to accept connections for any IP interface associated with the node, the value 0.0.0.0 is used. Access: read-only. Status: mandatory. OBJECT: ------- tcpConnLocalPort { tcpConnEntry 3 } Syntax: INTEGER (0..65535) Definition: The local port number for this TCP connection. Access: read-only. Status: mandatory. OBJECT: ------- tcpConnRemAddress { tcpConnEntry 4 } Syntax: IpAddress Definition: The remote IP address for this TCP connection. Access: read-only. Status: mandatory. OBJECT: ------- tcpConnRemPort { tcpConnEntry 5 } Syntax: INTEGER (0..65535) Definition: The remote port number for this TCP connection. Access: read-only. Status: mandatory. 5.6.2. Additional TCP Objects OBJECT: ------- tcpInErrs { tcp 14 } Syntax: Counter Definition: The total number of segments received in error (e.g., bad TCP checksums). Access: read-only. Status: mandatory. OBJECT: ------- tcpOutRsts { tcp 15 } Syntax: Counter Definition: The number of TCP segments sent containing the RST flag. Access: read-only. Status: mandatory. 5.7. The UDP Group Implementation of the UDP group is mandatory for all systems which implement the UDP. OBJECT: ------- udpInDatagrams { udp 1 } Syntax: Counter Definition: The total number of UDP datagrams delivered to UDP users. Access: read-only. Status: mandatory. OBJECT: ------- udpNoPorts { udp 2 } Syntax: Counter Definition: The total number of received UDP datagrams for which there was no application at the destination port. Access: read-only. Status: mandatory. OBJECT: ------- udpInErrors { udp 3 } Syntax: Counter Definition: The number of received UDP datagrams that could not be delivered for reasons other than the lack of an application at the destination port. Access: read-only. Status: mandatory. OBJECT: ------- udpOutDatagrams { udp 4 } Syntax: Counter Definition: The total number of UDP datagrams sent from this entity. Access: read-only. Status: mandatory. 5.7.1. The UDP Listener table The UDP listener table contains information about this entity's UDP end-points on which a local application is currently accepting datagrams. OBJECT: ------- udpTable { udp 5 } Syntax: SEQUENCE OF UdpEntry Definition: A table containing UDP listener information. Access: read-only. Status: mandatory. OBJECT: ------- udpEntry { udpTable 1 } Syntax: UdpEntry ::= SEQUENCE { udpLocalAddress IpAddress, udpLocalPort INTEGER (0..65535) } Definition: Information about a particular current UDP listener. Access: read-only. Status: mandatory. OBJECT: ------- udpLocalAddress { udpEntry 1 } Syntax: IpAddress Definition: The local IP address for this UDP listener. In the case of a UDP listener which is willing to accept datagrams for any IP interface associated with the node, the value 0.0.0.0 is used. Access: read-only. Status: mandatory. OBJECT: ------- udpLocalPort { udpEntry 2 } Syntax: INTEGER (0..65535) Definition: The local port number for this UDP listener. Access: read-only. Status: mandatory. 5.8. The EGP Group Implementation of the EGP group is mandatory for all systems which implement the EGP. OBJECT: ------- egpInMsgs { egp 1 } Syntax: Counter Definition: The number of EGP messages received without error. Access: read-only. Status: mandatory. OBJECT: ------- egpInErrors { egp 2 } Syntax: Counter Definition: The number of EGP messages received that proved to be in error. Access: read-only. Status: mandatory. OBJECT: ------- egpOutMsgs { egp 3 } Syntax: Counter Definition: The total number of locally generated EGP messages. Access: read-only. Status: mandatory. OBJECT: ------- egpOutErrors { egp 4 } Syntax: Counter Definition: The number of locally generated EGP messages not sent due to resource limitations within an EGP entity. Access: read-only. Status: mandatory. 5.8.1. The EGP Neighbor table The Egp Neighbor table contains information about this entity's EGP neighbors. OBJECT: ------- egpNeighTable { egp 5 } Syntax: SEQUENCE OF EgpNeighEntry Definition: The EGP neighbor table. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighEntry { egpNeighTable 1 } Syntax: EgpNeighEntry ::= SEQUENCE { egpNeighState INTEGER, egpNeighAddr IpAddress, egpNeighAs INTEGER, egpNeighInMsgs Counter, egpNeighInErrs Counter, egpNeighOutMsgs Counter, egpNeighOutErrs Counter, egpNeighInErrMsgs Counter, egpNeighOutErrMsgs Counter, egpNeighStateUps Counter, egpNeighStateDowns Counter, egpNeighIntervalHello INTEGER, egpNeighIntervalPoll INTEGER, egpNeighMode INTEGER, egpNeighEventTrigger INTEGER } Definition: Information about this entity's relationship with a particular EGP neighbor. Access: read-only. Status: mandatory. We now consider the individual components of each EGP neighbor entry: OBJECT: ------- egpNeighState { egpNeighEntry 1 } Syntax: INTEGER { idle(1), acquisition(2), down(3), up(4), cease(5) } Definition: The EGP state of the local system with respect to this entry's EGP neighbor. Each EGP state is represented by a value that is one greater than the numerical value associated with said state in RFC 904. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighAddr { egpNeighEntry 2 } Syntax: IpAddress Definition: The IP address of this entry's EGP neighbor. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighAs { egpNeighEntry 3 } Syntax: INTEGER Definition: The autonomous system of this EGP peer. Zero should be specified if the autonomous system number of the neighbor is not yet known. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighInMsgs { egpNeighEntry 4 } Syntax: Counter Definition: The number of EGP messages received without error from this EGP peer. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighInErrs { egpNeighEntry 5 } Syntax: Counter Definition: The number of EGP messages received from this EGP peer that proved to be in error (e.g., bad EGP checksum). Access: read-only. Status: mandatory. OBJECT: ------- egpNeighOutMsgs { egpNeighEntry 6 } Syntax: Counter Definition: The number of locally generated EGP messages to this EGP peer. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighOutErrs { egpNeighEntry 7 } Syntax: Counter Definition: The number of locally generated EGP messages not sent to this EGP peer due to resource limitations within an EGP entity. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighInErrMsgs { egpNeighEntry 8 } Syntax: Counter Definition: The number of EGP-defined error messages received from this EGP peer. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighOutErrMsgs { egpNeighEntry 9 } Syntax: Counter Definition: The number of EGP-defined error messages sent to this EGP peer. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighStateUps { egpNeighEntry 10 } Syntax: Counter Definition: The number of EGP state transitions to the UP state with this EGP peer. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighStateDowns { egpNeighEntry 11 } Syntax: Counter Definition: The number of EGP state transitions from the UP state to any other state with this EGP peer. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighIntervalHello { egpNeighEntry 12 } Syntax: INTEGER Definition: The interval between EGP Hello command retransmissions (in hundredths of a second). This represents the t1 timer as defined in RFC 904. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighIntervalPoll { egpNeighEntry 13 } Syntax: INTEGER Definition: The interval between EGP poll command retransmissions (in hundredths of a second). This represents the t3 timer as defined in RFC 904. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighMode { egpNeighEntry 14 } Syntax: INTEGER { active(1), passive(2) } Definition: The polling mode of this EGP entity, either passive or active. Access: read-only. Status: mandatory. OBJECT: ------- egpNeighEventTrigger { egpNeighEntry 15 } Syntax: INTEGER { start(1), stop(2) } Definition: A control variable used to trigger operator-initiated Start and Stop events. When read, this variable always returns the most recent value that egpNeightEventTrigger was set to. If it has not been set since the last initialization of the network management subsystem on the node, it returns a value of "stop". Access: read-write Status: mandatory. 5.8.2. Additional EGP variables OBJECT: ------- egpAs { egp 6 } Syntax: INTEGER Definition: The autonomous system number of this EGP entity. Access: read-only. Status: mandatory. 5.9. The Transmission Group Based on the transmission media underlying each interface on a system, the corresponding portion of the Transmission group is mandatory for that system. When Internet-standard definitions for managing transmission media are defined, the transmission group is used to provide a prefix for the names of those objects. Typically, such definitions reside in the experimental portion of the MIB until they are "proven", then as a part of the Internet standardization process, the definitions are accordingly elevated and a new object identifier, under the transmission group is defined. By convention, the name assigned is: type OBJECT IDENTIFIER ::= { transmission number } where "type" is the symbolic value used for the media in the ifType column of the ifTable object, and "number" is the actual integer value corresponding to the symbol. 5.10. The SNMP Group Implementation of the SNMP group is mandatory for all systems which support an SNMP protocol entity. Some of the objects defined below will be zero-valued in those SNMP implementations that are optimized to support only those functions specific to either a management agent or a management client. OBJECT: ------- snmpInPkts { snmp 1 } Syntax: Counter Definition: The total number of PDUs delivered to the SNMP entity from the transport service. Access: read-only. Status: mandatory. OBJECT: ------- snmpOutPkts { snmp 2 } Syntax: Counter Definition: The total number of SNMP PDUs which were passed from the SNMP protocol entity to the transport service. Access: read-only. Status: mandatory. OBJECT: ------- snmpInBadVersions { snmp 3 } Syntax: Counter Definition: The total number of syntactically correct SNMP PDUs which were delivered to the SNMP protocol entity and were for an unsupported SNMP version. Access: read-only. Status: mandatory. OBJECT: ------- snmpInBadCommunityNames { snmp 4 } Syntax: Counter Definition: The total number of SNMP PDUs delivered to the SNMP protocol entity which used a SNMP community name not known to said entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpInBadCommunityUses { snmp 5 } Syntax: Counter Definition: The total number of SNMP PDUs delivered to the SNMP protocol entity which represented an SNMP operation which was not allowed by the SNMP community named in the PDU. Access: read-only. Status: mandatory. OBJECT: ------- snmpInASNParseErrs { snmp 6 } Syntax: Counter Definition: The total number of ASN.1 parsing errors (either in encoding or syntax) encountered by the SNMP protocol entity when decoding received SNMP PDUs. Access: read-only. Status: mandatory. OBJECT: ------- snmpInBadTypes { snmp 7 } Syntax: Counter Definition: The total number of SNMP PDUs delivered to the SNMP protocol entity which had an unknown PDU type. Access: read-only. Status: mandatory. OBJECT: ------- snmpInTooBigs { snmp 8 } Syntax: Counter Definition: The total number valid SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the "ErrorStatus" component is "tooBig." Access: read-only. Status: mandatory. OBJECT: ------- snmpInNoSuchNames { snmp 9 } Syntax: Counter Definition: The total number valid SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the "ErrorStatus" component is "noSuchName." Access: read-only. Status: mandatory. OBJECT: ------- snmpInBadValues { snmp 10 } Syntax: Counter Definition: The total number valid SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the "ErrorStatus" component is "badValue." Access: read-only. Status: mandatory. OBJECT: ------- snmpInReadOnlys { snmp 11 } Syntax: Counter Definition: The total number valid SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the "ErrorStatus" component is "readOnly." Access: read-only. Status: mandatory. OBJECT: ------- snmpInGenErrs { snmp 12 } Syntax: Counter Definition: The total number valid SNMP PDUs which were delivered to the SNMP protocol entity and for which the value of the "ErrorStatus" component is "genErr." Access: read-only. Status: mandatory. OBJECT: ------- snmpInTotalReqVars { snmp 13 } Syntax: Counter Definition: The total number of MIB objects which have been retrieved successfully by the SNMP protocol entity as the result of receiving valid SNMP Get-Request and Get-Next PDUs. Access: read-only. Status: mandatory. OBJECT: ------- snmpInTotalSetVars { snmp 14 } Syntax: Counter Definition: The total number of MIB objects which have been altered successfully by the SNMP protocol entity as the result of receiving valid SNMP Set-Request PDUs. Access: read-only. Status: mandatory. OBJECT: ------- snmpInGetRequests { snmp 15 } Syntax: Counter Definition: The total number of SNMP Get-Request PDUs which have been accepted and processed by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpInGetNexts { snmp 16 } Syntax: Counter Definition: The total number of SNMP Get-Next PDUs which have been accepted and processed by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpInSetRequests { snmp 17 } Syntax: Counter Definition: The total number of SNMP Set-Request PDUs which have been accepted and processed by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpInGetResponses { snmp 18 } Syntax: Counter Definition: The total number of SNMP Get-Response PDUs which have been accepted and processed by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpInTraps { snmp 19 } Syntax: Counter Definition: The total number of SNMP Trap PDUs which have been accepted and processed by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpOutTooBigs { snmp 20 } Syntax: Counter Definition: The total number valid SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the "ErrorStatus" component is "tooBig." Access: read-only. Status: mandatory. OBJECT: ------- snmpOutNoSuchNames { snmp 21 } Syntax: Counter Definition: The total number valid SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the "ErrorStatus" component is "noSuchName." Access: read-only. Status: mandatory. OBJECT: ------- snmpOutBadValues { snmp 22 } Syntax: Counter Definition: The total number valid SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the "ErrorStatus" component is "badValue." Access: read-only. Status: mandatory. OBJECT: ------- snmpOutReadOnlys { snmp 23 } Syntax: Counter Definition: The total number valid SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the "ErrorStatus" component is "readOnly." Access: read-only. Status: mandatory. OBJECT: ------- snmpOutGenErrs { snmp 24 } Syntax: Counter Definition: The total number valid SNMP PDUs which were generated by the SNMP protocol entity and for which the value of the "ErrorStatus" component is "genErr." Access: read-only. Status: mandatory. OBJECT: ------- snmpOutGetRequests { snmp 25 } Syntax: Counter Definition: The total number of SNMP Get-Request PDUs which have been generated by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpOutGetNexts { snmp 26 } Syntax: Counter Definition: The total number of SNMP Get-Next PDUs which have been generated by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpOutSetRequests { snmp 27 } Syntax: Counter Definition: The total number of SNMP Set-Request PDUs which have been generated by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpOutGetResponses { snmp 28 } Syntax: Counter Definition: The total number of SNMP Get-Response PDUs which have been generated by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpOutTraps { snmp 29 } Syntax: Counter Definition: The total number of SNMP Trap PDUs which have been generated by the SNMP protocol entity. Access: read-only. Status: mandatory. OBJECT: ------- snmpEnableAuthTraps { snmp 30 } Syntax: INTEGER { enabled(1), disabled(2) } Definition: Indicates whether the SNMP agent process is configured to generate authentication-failure traps. Access: read-write. Status: mandatory. 6. Definitions RFC1158-MIB DEFINITIONS ::= BEGIN IMPORTS mgmt, OBJECT-TYPE, NetworkAddress, IpAddress, Counter, Gauge, TimeTicks FROM RFC1155-SMI; mib-2 OBJECT IDENTIFIER ::= { mgmt 1 } -- MIB-II -- (same prefix as MIB-I) system OBJECT IDENTIFIER ::= { mib-2 1 } interfaces OBJECT IDENTIFIER ::= { mib-2 2 } at OBJECT IDENTIFIER ::= { mib-2 3 } ip OBJECT IDENTIFIER ::= { mib-2 4 } icmp OBJECT IDENTIFIER ::= { mib-2 5 } tcp OBJECT IDENTIFIER ::= { mib-2 6 } udp OBJECT IDENTIFIER ::= { mib-2 7 } egp OBJECT IDENTIFIER ::= { mib-2 8 } -- cmot OBJECT IDENTIFIER ::= { mib-2 9 } transmission OBJECT IDENTIFIER ::= { mib-2 10 } snmp OBJECT IDENTIFIER ::= { mib-2 11 } -- object types -- the System group sysDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory ::= { system 1 } sysObjectID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory ::= { system 2 } sysUpTime OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory ::= { system 3 } sysContact OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-write STATUS mandatory ::= { system 4 } sysName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-write STATUS mandatory ::= { system 5 } sysLocation OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory ::= { system 6 } sysServices OBJECT-TYPE SYNTAX INTEGER (0..127) ACCESS read-only STATUS mandatory ::= { system 7 } -- the Interfaces group ifNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { interfaces 1 } -- the Interfaces table ifTable OBJECT-TYPE SYNTAX SEQUENCE OF IfEntry ACCESS read-only STATUS mandatory ::= { interfaces 2 } ifEntry OBJECT-TYPE SYNTAX IfEntry ACCESS read-only STATUS mandatory ::= { ifTable 1 } IfEntry ::= SEQUENCE { ifIndex INTEGER, ifDescr DisplayString, ifType INTEGER, ifMtu INTEGER, ifSpeed Gauge, ifPhysAddress OCTET STRING, ifAdminStatus INTEGER, ifOperStatus INTEGER, ifLastChange TimeTicks, ifInOctets Counter, ifInUcastPkts Counter, ifInNUcastPkts Counter, ifInDiscards Counter, ifInErrors Counter, ifInUnknownProtos Counter, ifOutOctets Counter, ifOutUcastPkts Counter, ifOutNUcastPkts Counter, ifOutDiscards Counter, ifOutErrors Counter, ifOutQLen Gauge, ifSpecific OBJECT IDENTIFIER } ifIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { ifEntry 1 } ifDescr OBJECT-TYPE SYNTAX DisplayString (SIZE (0..255)) ACCESS read-only STATUS mandatory ::= { ifEntry 2 } ifType OBJECT-TYPE SYNTAX INTEGER { other(1), -- none of the -- following regular1822(2), hdh1822(3), ddn-x25(4), rfc877-x25(5), ethernet-csmacd(6), iso88023-csmacd(7), iso88024-tokenBus(8), iso88025-tokenRing(9), iso88026-man(10), starLan(11), proteon-10Mbit(12), proteon-80Mbit(13), hyperchannel(14), fddi(15), lapb(16), sdlc(17), t1-carrier(18), cept(19), -- european --equivalent of T-1 basicISDN(20), primaryISDN(21), -- proprietary -- serial propPointToPointSerial(22), terminalServer-asyncPort(23), softwareLoopback(24), eon(25), -- CLNP over IP ethernet-3Mbit(26), nsip(27), -- XNS over IP slip(28) -- generic SLIP } ACCESS read-only STATUS mandatory ::= { ifEntry 3 } ifMtu OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { ifEntry 4 } ifSpeed OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory ::= { ifEntry 5 } ifPhysAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-only STATUS mandatory ::= { ifEntry 6 } ifAdminStatus OBJECT-TYPE SYNTAX INTEGER { up(1), -- ready to pass packets down(2), testing(3) -- in some test mode } ACCESS read-write STATUS mandatory ::= { ifEntry 7 } ifOperStatus OBJECT-TYPE SYNTAX INTEGER { up(1), -- ready to pass packets down(2), testing(3) -- in some test mode } ACCESS read-only STATUS mandatory ::= { ifEntry 8 } ifLastChange OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory ::= { ifEntry 9 } ifInOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 10 } ifInUcastPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 11 } ifInNUcastPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 12 } ifInDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 13 } ifInErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 14 } ifInUnknownProtos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 15 } ifOutOctets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 16 } ifOutUcastPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 17 } ifOutNUcastPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 18 } ifOutDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 19 } ifOutErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ifEntry 20 } ifOutQLen OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory ::= { ifEntry 21 } ifSpecific OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory ::= { ifEntry 22 } nullSpecific OBJECT IDENTIFIER ::= { 0 0 } -- the Address Translation group (deprecated) atTable OBJECT-TYPE SYNTAX SEQUENCE OF AtEntry ACCESS read-write STATUS deprecated ::= { at 1 } atEntry OBJECT-TYPE SYNTAX AtEntry ACCESS read-write STATUS deprecated ::= { atTable 1 } AtEntry ::= SEQUENCE { atIfIndex INTEGER, atPhysAddress OCTET STRING, atNetAddress NetworkAddress } atIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS deprecated ::= { atEntry 1 } atPhysAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-write STATUS deprecated ::= { atEntry 2 } atNetAddress OBJECT-TYPE SYNTAX NetworkAddress ACCESS read-write STATUS deprecated ::= { atEntry 3 } -- the IP group ipForwarding OBJECT-TYPE SYNTAX INTEGER { gateway(1), -- entity forwards -- datagrams host(2) -- entity does NOT -- forward datagrams } ACCESS read-write STATUS mandatory ::= { ip 1 } ipDefaultTTL OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ip 2 } ipInReceives OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 3 } ipInHdrErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 4 } ipInAddrErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 5 } ipForwDatagrams OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 6 } ipInUnknownProtos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 7 } ipInDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 8 } ipInDelivers OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 9 } ipOutRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 10 } ipOutDiscards OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 11 } ipOutNoRoutes OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 12 } ipReasmTimeout OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { ip 13 } ipReasmReqds OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 14 } ipReasmOKs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 15 } ipReasmFails OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 16 } ipFragOKs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 17 } ipFragFails OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 18 } ipFragCreates OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { ip 19 } -- the IP Interface table ipAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF IpAddrEntry ACCESS read-only STATUS mandatory ::= { ip 20 } ipAddrEntry OBJECT-TYPE SYNTAX IpAddrEntry ACCESS read-only STATUS mandatory ::= { ipAddrTable 1 } IpAddrEntry ::= SEQUENCE { ipAdEntAddr IpAddress, ipAdEntIfIndex INTEGER, ipAdEntNetMask IpAddress, ipAdEntBcastAddr INTEGER, ipAdEntReasmMaxSize INTEGER (0..65535) } ipAdEntAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory ::= { ipAddrEntry 1 } ipAdEntIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { ipAddrEntry 2 } ipAdEntNetMask OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory ::= { ipAddrEntry 3 } ipAdEntBcastAddr OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { ipAddrEntry 4 } ipAdEntReasmMaxSiz OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory ::= { ipAddrEntry 5 } -- the IP Routing table ipRoutingTable OBJECT-TYPE SYNTAX SEQUENCE OF IpRouteEntry ACCESS read-write STATUS mandatory ::= { ip 21 } ipRouteEntry OBJECT-TYPE SYNTAX IpRouteEntry ACCESS read-write STATUS mandatory ::= { ipRoutingTable 1 } IpRouteEntry ::= SEQUENCE { ipRouteDest IpAddress, ipRouteIfIndex INTEGER, ipRouteMetric1 INTEGER, ipRouteMetric2 INTEGER, ipRouteMetric3 INTEGER, ipRouteMetric4 INTEGER, ipRouteNextHop IpAddress, ipRouteType INTEGER, ipRouteProto INTEGER, ipRouteAge INTEGER, ipRouteMask IpAddress } ipRouteDest OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory ::= { ipRouteEntry 1 } ipRouteIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ipRouteEntry 2 } ipRouteMetric1 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ipRouteEntry 3 } ipRouteMetric2 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ipRouteEntry 4 } ipRouteMetric3 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ipRouteEntry 5 } ipRouteMetric4 OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ipRouteEntry 6 } ipRouteNextHop OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory ::= { ipRouteEntry 7 } ipRouteType OBJECT-TYPE SYNTAX INTEGER { other(1), -- none of the following invalid(2), -- an invalidated route -- route to directly direct(3), -- connected -- (sub-)network -- route to a non-local remote(4) -- host/network/ -- sub-network } ACCESS read-write STATUS mandatory ::= { ipRouteEntry 8 } ipRouteProto OBJECT-TYPE SYNTAX INTEGER { other(1), -- none of the following -- non-protocol -- information -- e.g., manually local(2), -- configured entries -- set via a network netmgmt(3), -- management protocol -- obtained via ICMP, icmp(4), -- e.g., Redirect -- the following are -- gateway routing -- protocols egp(5), ggp(6), hello(7), rip(8), is-is(9), es-is(10), ciscoIgrp(11), bbnSpfIgp(12), ospf(13) bgp(14) } ACCESS read-only STATUS mandatory ::= { ipRouteEntry 9 } ipRouteAge OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ipRouteEntry 10 } ipRouteMask OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory ::= { ipRouteEntry 11 } -- the IP Address Translation tables ipNetToMediaTable OBJECT-TYPE SYNTAX SEQUENCE OF IpNetToMediaEntry ACCESS read-write STATUS mandatory ::= { ip 22 } ipNetToMediaEntry OBJECT-TYPE SYNTAX IpNetToMediaEntry ACCESS read-write STATUS mandatory ::= { ipNetToMediaTable 1 } IpNetToMediaEntry ::= SEQUENCE { ipNetToMediaIfIndex INTEGER, ipNetToMediaPhysAddress OCTET STRING, ipNetToMediaNetAddress IpAddress, ipNetoToMediaType INTEGER } ipNetToMediaIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory ::= { ipNetToMediaEntry 1 } ipNetToMediaPhysAddress OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-write STATUS mandatory ::= { ipNetToMediaEntry 2 } ipNetToMediaNetAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory ::= { ipNetToMediaEntry 3 } ipNetToMediaType OBJECT-TYPE SYNTAX INTEGER { other(1), -- none of the following invalid(2), -- an invalidated mapping dynamic(3), -- connected (sub-)network static(4) } ACCESS read-write STATUS mandatory ::= { ipNetToMediaEntry 4 } -- the ICMP group icmpInMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 1 } icmpInErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 2 } icmpInDestUnreachs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 3 } icmpInTimeExcds OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 4 } icmpInParmProbs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 5 } icmpInSrcQuenchs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 6 } icmpInRedirects OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 7 } icmpInEchos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 8 } icmpInEchoReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 9 } icmpInTimestamps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 10 } icmpInTimestampReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 11 } icmpInAddrMasks OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 12 } icmpInAddrMaskReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 13 } icmpOutMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 14 } icmpOutErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 15 } icmpOutDestUnreachs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 16 } icmpOutTimeExcds OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 17 } icmpOutParmProbs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 18 } icmpOutSrcQuenchs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 19 } icmpOutRedirects OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 20 } icmpOutEchos OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 21 } icmpOutEchoReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 22 } icmpOutTimestamps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 23 } icmpOutTimestampReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 24 } icmpOutAddrMasks OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 25 } icmpOutAddrMaskReps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { icmp 26 } -- the TCP group tcpRtoAlgorithm OBJECT-TYPE SYNTAX INTEGER { other(1), -- none of the following constant(2), -- a constant rto rsre(3), -- MIL-STD-1778, -- Appendix B vanj(4) -- Van Jacobson's -- algorithm } ACCESS read-only STATUS mandatory ::= { tcp 1 } tcpRtoMin OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { tcp 2 } tcpRtoMax OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { tcp 3 } tcpMaxConn OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { tcp 4 } tcpActiveOpens OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 5 } tcpPassiveOpens OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 6 } tcpAttemptFails OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 7 } tcpEstabResets OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 8 } tcpCurrEstab OBJECT-TYPE SYNTAX Gauge ACCESS read-only STATUS mandatory ::= { tcp 9 } tcpInSegs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 10 } tcpOutSegs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 11 } tcpRetransSegs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 12 } -- the TCP connections table tcpConnTable OBJECT-TYPE SYNTAX SEQUENCE OF TcpConnEntry ACCESS read-only STATUS mandatory ::= { tcp 13 } tcpConnEntry OBJECT-TYPE SYNTAX TcpConnEntry ACCESS read-only STATUS mandatory ::= { tcpConnTable 1 } TcpConnEntry ::= SEQUENCE { tcpConnState INTEGER, tcpConnLocalAddress IpAddress, tcpConnLocalPort INTEGER (0..65535), tcpConnRemAddress IpAddress, tcpConnRemPort INTEGER (0..65535) } tcpConnState OBJECT-TYPE SYNTAX INTEGER { closed(1), listen(2), synSent(3), synReceived(4), established(5), finWait1(6), finWait2(7), closeWait(8), lastAck(9), closing(10), timeWait(11) } ACCESS read-only STATUS mandatory ::= { tcpConnEntry 1 } tcpConnLocalAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory ::= { tcpConnEntry 2 } tcpConnLocalPort OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory ::= { tcpConnEntry 3 } tcpConnRemAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory ::= { tcpConnEntry 4 } tcpConnRemPort OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory ::= { tcpConnEntry 5 } -- additional TCP variables tcpInErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 14 } tcpOutRsts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { tcp 15 } -- the UDP group udpInDatagrams OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { udp 1 } udpNoPorts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { udp 2 } udpInErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { udp 3 } udpOutDatagrams OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { udp 4 } -- the UDP listener table udpTable OBJECT-TYPE SYNTAX SEQUENCE OF UdpEntry ACCESS read-only STATUS mandatory ::= { udp 5 } udpEntry OBJECT-TYPE SYNTAX UdpEntry ACCESS read-only STATUS mandatory ::= { udpTable 1 } UdpEntry ::= SEQUENCE { udpLocalAddress IpAddress, udpLocalPort INTEGER (0..65535) } udpLocalAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory ::= { udpEntry 1 } udpLocalPort OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory ::= { udpEntry 2 } -- the EGP group egpInMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egp 1 } egpInErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egp 2 } egpOutMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egp 3 } egpOutErrors OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egp 4 } -- the EGP Neighbor table egpNeighTable OBJECT-TYPE SYNTAX SEQUENCE OF EgpNeighEntry ACCESS read-only STATUS mandatory ::= { egp 5 } egpNeighEntry OBJECT-TYPE SYNTAX EgpNeighEntry ACCESS read-only STATUS mandatory ::= { egpNeighTable 1 } EgpNeighEntry ::= SEQUENCE { egpNeighState INTEGER, egpNeighAddr IpAddress, egpNeighAs INTEGER, egpNeighInMsgs Counter, egpNeighInErrs Counter, egpNeighOutMsgs Counter, egpNeighOutErrs Counter, egpNeighInErrMsgs Counter, egpNeighOutErrMsgs Counter, egpNeighStateUps Counter, egpNeighStateDowns Counter, egpNeighIntervalHello INTEGER, egpNeighIntervalPoll INTEGER, egpNeighMode INTEGER, egpNeighEventTrigger INTEGER } egpNeighState OBJECT-TYPE SYNTAX INTEGER { idle(1), acquisition(2), down(3), up(4), cease(5) } ACCESS read-only STATUS mandatory ::= { egpNeighEntry 1 } egpNeighAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory ::= { egpNeighEntry 2 } egpNeighAs OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { egpNeighEntry 3 } egpNeighInMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 4 } egpNeighInErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 5 } egpNeighOutMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 6 } egpNeighOutErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 7 } egpNeighInErrMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 8 } egpNeighOutErrMsgs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 9 } egpNeighStateUps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 10 } egpNeighStateDowns OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { egpNeighEntry 11 } egpNeighIntervalHello OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { egpNeighEntry 12 } egpNeighIntervalPoll OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { egpNeighEntry 13 } egpNeighMode OBJECT-TYPE SYNTAX INTEGER { active(1), passive(2) } ACCESS read-only STATUS mandatory ::= { egpNeighEntry 14 } egpNeighEventTrigger OBJECT-TYPE SYNTAX INTEGER { start(1), stop(2) } ACCESS read-write STATUS mandatory ::= { egpNeighEntry 15 } -- additional EGP variables egpAs OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory ::= { egp 6 } -- the Transmission group (empty at present) -- the SNMP group snmpInPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 1 } snmpOutPkts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 2 } snmpInBadVersions OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 3 } snmpInBadCommunityNames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 4 } snmpInBadCommunityUses OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 5 } snmpInASNParseErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 6 } snmpInBadTypes OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 7 } snmpInTooBigs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 8 } snmpInNoSuchNames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 9 } snmpInBadValues OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 10 } snmpInReadOnlys OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 11 } snmpInGenErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 12 } snmpInTotalReqVars OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 13 } snmpInTotalSetVars OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 14 } snmpInGetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 15 } snmpInGetNexts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 16 } snmpInSetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 17 } snmpInGetResponses OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 18 } snmpInTraps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 19 } snmpOutTooBigs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 20 } snmpOutNoSuchNames OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 21 } snmpOutBadValues OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 22 } snmpOutReadOnlys OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 23 } snmpOutGenErrs OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 24 } snmpOutGetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 25 } snmpOutGetNexts OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 26 } snmpOutSetRequests OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 27 } snmpOutGetResponses OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 28 } snmpOutTraps OBJECT-TYPE SYNTAX Counter ACCESS read-only STATUS mandatory ::= { snmp 29 } snmpEnableAuthTraps OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } ACCESS read-write STATUS mandatory ::= { snmp 30 } END 7. Identification of OBJECT instances for use with the SNMP The names for all object types in the MIB are defined explicitly either in the Internet-standard MIB or in other documents which conform to the naming conventions of the SMI. The SMI requires that conformant management protocols define mechanisms for identifying individual instances of those object types for a particular network element. Each instance of any object type defined in the MIB is identified in SNMP operations by a unique name called its "variable name." In general, the name of an SNMP variable is an OBJECT IDENTIFIER of the form x.y, where x is the name of a non-aggregate object type defined in the MIB and y is an OBJECT IDENTIFIER fragment that, in a way specific to the named object type, identifies the desired instance. This naming strategy admits the fullest exploitation of the semantics of the powerful SNMP get-next operator, because it assigns names for related variables so as to be contiguous in the lexicographical ordering of all variable names known in the MIB. The type-specific naming of object instances is defined below for a number of classes of object types. Instances of an object type to which none of the following naming conventions are applicable are named by OBJECT IDENTIFIERs of the form x.0, where x is the name of said object type in the MIB definition. For example, suppose one wanted to identify an instance of the variable sysDescr. The object class for sysDescr is: iso org dod internet mgmt mib system sysDescr 1 3 6 1 2 1 1 1 Hence, the object type, x, would be 1.3.6.1.2.1.1.1 to which is appended an instance sub-identifier of 0. That is, 1.3.6.1.2.1.1.1.0 identifies the one and only instance of sysDescr. 7.1. ifTable Object Type Names The name of a subnetwork interface, s, is the OBJECT IDENTIFIER value of the form i, where i has the value of that instance of the ifIndex object type associated with s. For each object type, t, for which the defined name, n, has a prefix of ifEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.s, where s is the name of the subnetwork interface about which i represents information. For example, suppose one wanted to identify the instance of the variable ifType associated with interface 2. Accordingly, ifType.2 would identify the desired instance. 7.2. atTable Object Type Names The name of an address translation entry, x, is an OBJECT IDENTIFIER of the form s.1.a.b.c.d, such that s is the value of that instance of the atIfIndex object type associated with x, the subidentifer "1" signifies the translation of an IP protocol address, and a.b.c.d is the IP address value (in the familiar "dot" notation) of that instance of the atNetAddress object type associated with x. For each object type, t, for which the defined name, n, has a prefix of atEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.y, where y is the name of the address translation entry about which i represents information. For example, suppose one wanted to find the physical address of an entry in the address translation table (ARP cache) associated with an IP address of 89.1.1.42 and interface 3. Accordingly, atPhysAddress.3.1.89.1.1.42 would identify the desired instance. 7.3. ipAddrTable Object Type Names The name of an IP-addressable network element, x, is the OBJECT IDENTIFIER of the form a.b.c.d such that a.b.c.d is the value (in the familiar "dot" notation) of that instance of the ipAdEntAddr object type associated with x. For each object type, t, for which the defined name, n, has a prefix of ipAddrEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.y, where y is the name of the IP- addressable network element about which i represents information. For example, suppose one wanted to find the network mask of an entry in the IP interface table associated with an IP address of 89.1.1.42. Accordingly, ipAdEntNetMask.89.1.1.42 would identify the desired instance. At the option of the agent, multiple entries for the same IP address may be visible. To realize this, the agent, while required to return a single entry for an IP address, x, of the form n.y, may also return information about other entries for the same IP address using the form n.y.z, where z is a implementation-dependendent small, non- negative integer. It is strongly recommended that the value of z correspond to the value of ipAddrIfIndex for that entry. 7.4. ipRoutingTable Object Type Names The name of an IP route, x, is the OBJECT IDENTIFIER of the form a.b.c.d such that a.b.c.d is the value (in the familiar "dot" notation) of that instance of the ipRouteDest object type associated with x. For each object type, t, for which the defined name, n, has a prefix of ipRoutingEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.y, where y is the name of the IP route about which i represents information. For example, suppose one wanted to find the next hop of an entry in the IP routing table associated with the destination of 89.1.1.42. Accordingly, ipRouteNextHop.89.1.1.42 would identify the desired instance. At the option of the agent, multiple routes to the same destination may be visible. To realize this, the agent, while required to return a single entry for an IP route, x, of the form n.y, may also return information about other routes to the same destination using the form n.y.z, where z is a implementation-dependendent small, non-negative integer. 7.5. ipNetToMediaTable Object Type Names The name of a cached IP address, x, is an OBJECT IDENTIFIER of the form s.a.b.c.d, such that s is the value of that instance of the ipNetToMediaIfIndex object type associated with the entry and a.b.c.d is the value (in the familiar "dot" notation) of the ipNetToMediaNetAddress object type associated with x. For each object type, t, for which the defined name, n, has a prefix of ipNetToMediaEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.y, where y is the name of the cached IP address about which i represents information. For example, suppose one wanted to find the media address of an entry in the address translation table associated with a IP address of 192.52.180.1 and interface 3. Accordingly, ipNetToMediaPhysAddress.3.192.52.180.1 would identify the desired instance. 7.6. tcpConnTable Object Type Names The name of a TCP connection, x, is the OBJECT IDENTIFIER of the form a.b.c.d.e.f.g.h.i.j such that a.b.c.d is the value (in the familiar "dot" notation) of that instance of the tcpConnLocalAddress object type associated with x and such that f.g.h.i is the value (in the familiar "dot" notation) of that instance of the tcpConnRemoteAddress object type associated with x and such that e is the value of that instance of the tcpConnLocalPort object type associated with x and such that j is the value of that instance of the tcpConnRemotePort object type associated with x. For each object type, t, for which the defined name, n, has a prefix of tcpConnEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.y, where y is the name of the TCP connection about which i represents information. For example, suppose one wanted to find the state of a TCP connection between the local address of 89.1.1.42 on TCP port 21 and the remote address of 10.0.0.51 on TCP port 2059. Accordingly, tcpConnState.89.1.1.42.21.10.0.0.51.2059 would identify the desired instance. 7.7. udpTable Object Type Names The name of a UDP listener, x, is the OBJECT IDENTIFIER of the form a.b.c.d.e. such that a.b.c.d is the value (in the familiar "dot" notation) of that instance of the udpLocalAddress object type associated with x and such that e is the value of that instance of the udpLocalPort object type associated with x. For each object type, t, for which the defined name, n, has a prefix of udpEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.y, where y is the name of the UDP listener about which i represents information. For example, suppose one wanted to determine if a UDP listener was present at the local address of 89.1.1.42 on UDP port 21. Accordingly, a successful retrieval of either udpLocalAddress.89.1.1.42.21 or udpLocalPort.89.1.1.42.21 would indicate this. 7.8. egpNeighTable Object Type Names The name of an EGP neighbor, x, is the OBJECT IDENTIFIER of the form a.b.c.d such that a.b.c.d is the value (in the familiar "dot" notation) of that instance of the egpNeighAddr object type associated with x. For each object type, t, for which the defined name, n, has a prefix of egpNeighEntry, an instance, i, of t is named by an OBJECT IDENTIFIER of the form n.y, where y is the name of the EGP neighbor about which i represents information. For example, suppose one wanted to find the neighbor state for the IP address of 89.1.1.42. Accordingly, egpNeighState.89.1.1.42 would identify the desired instance. 8. Acknowledgements This document was produced by the SNMP Working Group: Karl Auerbach, Epilogue Technology David Bridgham, Epilogue Technology Brian Brown, Synoptics John Burress, Wellfleet Jeffrey D. Case, University of Tennessee at Knoxville James R. Davin, MIT-LCS Mark S. Fedor, PSI, Inc. Stan Froyd, ACC Satish Joshi, Synoptics Ken Key, University of Tennessee at Knoxville Gary Malkin, Proteon Randy Mayhew, University of Tennessee at Knoxville Keith McCloghrie, Hughes LAN Systems Marshall T. Rose, PSI, Inc. (chair) Greg Satz, cisco Martin Lee Schoffstall, PSI, Inc. Bob Stewart, Xyplex Geoff Thompson, Synoptics Bill Versteeg, Network Research Corporation Wengyik Yeong, PSI, Inc. In addition, the comments of the following individuals are also acknolwedged: Craig A. Finseth, Minnesota Supercomputer Center, Inc. Jeffrey C. Honig, Cornell University Theory Center Philip R. Karn, Bellcore David Waitzman, BBN 9. References [1] Cerf, V., "IAB Recommendations for the Development of Internet Network Management Standards", RFC 1052, IAB, April 1988. [2] Rose, M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based internets", RFC 1065, TWG, August 1988. [3] McCloghrie K., and M. Rose,"Management Information Base for Network Management of TCP/IP-based internets", RFC 1066, TWG, August 1988. [4] Cerf, V., "Report of the Second Ad Hoc Network Management Review Group", RFC 1109, IAB, August 1989. [5] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "A Simple Network Management Protocol (SNMP)", RFC 1098, University of Tennessee at Knoxville, NYSERNet, Inc., Rensselaer Polytechnic Institute, MIT Laboratory for Computer Science, April 1989. [6] Warrier, U., and L. Besaw, "Common Management Information Services and Protocol over TCP/IP (CMOT)", RFC 1095, Unisys Corporation, Hewlett-Packard, April 1989. [7] Postel, J., "Telnet Protocol Specification", RFC 854, USC/Information Sciences Institute, May 1983. [8] Satz, G., "Experimental MIB Objects for the CLNP", Internet Working Group Request for Comments draft. Network Information Center, SRI International, Menlo Park, California, (in preparation). [9] Information processing systems - Open Systems Interconnection, "Specification of Abstract Syntax Notation One (ASN.1)", International Organization for Standardization, International Standard 8824, December 1987. [10] Information processing systems - Open Systems Interconnection, "Specification of Basic Encoding Rules for Abstract Notation One (ASN.1)", International Organization for Standardization. International Standard 8825, December 1987. [11] Jacobson, V., "Congestion Avoidance and Control", SIGCOMM 1988, Stanford, California. [12] Hagens, R., Hall, N., and M. Rose, "Use of the Internet as a subnetwork for experimentation with the OSI network layer", February, 1989. [13] Rose, M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based Internets", RFC 1155, Performance Systems International and Hughes LAN Systems, May 1990. [14] Case, J., Fedor, M., Schoffstall, M., and J. Davin, The Simple Network Management Protocol", RFC 1157, University of Tennessee at Knoxville, Performance Systems International, Performance Systems International, and the MIT Laboratory for Computer Science, May 1990. 10. Security Considerations Security issues are not discussed in this memo. 11. Author's Address: Marshall T. Rose PSI, Inc. PSI California Office P.O. Box 391776 Mountain View, CA 94039 Phone: (415) 961-3380 Email: mrose@PSI.COM