Management Information Base
                          for Version 2 of the
              Simple Network Management Protocol (SNMPv2)

                              31 May

                           20 September 1995                              |

                    draft-ietf-snmpv2-mib-ds-02.txt

                    draft-ietf-snmpv2-mib-ds-03.txt                       |

                            Jeffrey D. Case
                          SNMP Research, Inc.
                             case@snmp.com

                            Keith McCloghrie
                                 Editor                                   +
                          Cisco Systems, Inc.
                             kzm@cisco.com

                            Marshall T. Rose
                      Dover Beach Consulting, Inc.
                         mrose@dbc.mtview.ca.us

                           Steven Waldbusser
                       Carnegie Mellon University
                           waldbusser@cmu.edu

Status of this Memo                                                       -

This document is an Internet-Draft.  Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas, and
its working groups.  Note that other groups may also distribute working
documents as Internet-Drafts.

Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time.  It is inappropriate to use Internet- Drafts as reference material
or to cite them other than as ``work in progress.''

To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet- Drafts Shadow
Directories on ds.internic.net (US East Coast), nic.nordu.net (Europe),
ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim).

1.  Introduction

A management system contains: several (potentially many) nodes, each
with a processing entity, termed an agent, which has access to
management instrumentation; at least one management station; and, a
management protocol, used to convey management information between the
agents and management stations.  Operations of the protocol are carried
out under an administrative framework which defines authentication,
authorization, access control, and privacy policies.

Management stations execute management applications which monitor and
control managed elements.  Managed elements are devices such as hosts,
routers, terminal servers, etc., which are monitored and controlled via
access to their management information.

Management information is viewed as a collection of managed objects,
residing in a virtual information store, termed the Management
Information Base (MIB).  Collections of related objects are defined in
MIB modules.  These modules are written using a subset of OSI's Abstract
Syntax Notation One (ASN.1) [1], termed the Structure of Management
Information (SMI) [2].

The management protocol, SNMPv2 [3], provides for the exchange of
messages which convey management information between the agents and the
management stations.  It is the purpose of this document to define
managed objects which describe the behavior of a SNMPv2 entity.

1.1.  A Note on Terminology

For the purpose of exposition, the original Internet-standard Network
Management Framework, as described in RFCs 1155, 1157, and 1212, is
termed the SNMP version 1 framework (SNMPv1).  The current framework is
termed the SNMP version 2 framework (SNMPv2).

2.  Definitions                                                           -

SNMPv2-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
    TimeTicks, Counter32, snmpModules, mib-2
        FROM SNMPv2-SMI
    TruthValue, DisplayString, TestAndIncr, TimeStamp
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    partyEntry
        FROM SNMPv2-PARTY-MIB; SNMPv2-CONF;                                                 |

snmpMIB MODULE-IDENTITY
    LAST-UPDATED "9503190000Z" "9509200000Z"                                            |
    ORGANIZATION "IETF SNMPv2 Working Group"
    CONTACT-INFO
            "        Marshall T. Rose

             Postal: Dover Beach Consulting, Inc.
                     420 Whisman Court
                     Mountain View, CA  94043-2186
                     US

                Tel: +1 415 968 1052
                Fax: +1 415 968 2510

             E-mail: mrose@dbc.mtview.ca.us"
    DESCRIPTION
            "The MIB module for SNMPv2 entities."
    REVISION      "9104300000Z"
    DESCRIPTION
            "The initial revision of this MIB module was published as
            RFC 1450."
    ::= { snmpModules 1 }

snmpMIBObjects OBJECT IDENTIFIER ::= { snmpMIB 1 }

-- the System group
--
-- a collection of objects common to all managed systems.
-- The system group must be present in every SNMPv2 context.

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

sysDescr OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "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."
    ::= { system 1 }

sysObjectID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "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'."
    ::= { system 2 }

sysUpTime OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The time (in hundredths of a second) since the network
            management portion of the system was last re-initialized."
    ::= { system 3 }

sysContact OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The textual identification of the contact person for this
            managed node, together with information on how to contact
            this person.  If no contact information is known, the value
            is the zero-length string."
    ::= { system 4 }

sysName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "An administratively-assigned name for this managed node.
            By convention, this is the node's fully-qualified domain
            name.  If the name is unknown, the value is the zero-length
            string."
    ::= { system 5 }

sysLocation OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..255))
    MAX-ACCESS  read-only  read-write                                                |
    STATUS      current
    DESCRIPTION
            "The physical location of this node (e.g., `telephone
            closet, 3rd floor').  If the location is unknown, the value
            is the zero-length string."
    ::= { system 6 }

sysServices OBJECT-TYPE
    SYNTAX      INTEGER (0..127)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A value which indicates the set of services that this
            entity may 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."
    ::= { system 7 }

-- object resource information
--
-- a collection of objects which describe the SNMPv2 entity's
-- (statically and dynamically configurable) support of
-- various MIB modules.

sysORLastChange OBJECT-TYPE
    SYNTAX     TimeStamp
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The value of sysUpTime at the time of the most recent
            change in state or value of any instance of sysORID."
    ::= { system 8 }

sysORTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF SysOREntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The (conceptual) table listing the capabilities of the
            local SNMPv2 entity acting in an agent role with respect to
            various MIB modules.  SNMPv2 entities having dynamically-
            configurable support of MIB modules will have a
            dynamically-varying number of conceptual rows."
    ::= { system 9 }

sysOREntry OBJECT-TYPE
    SYNTAX     SysOREntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry (conceptual row) in the sysORTable."
    INDEX      { sysORIndex }
    ::= { sysORTable 1 }

SysOREntry ::= SEQUENCE {
    sysORIndex     INTEGER,
    sysORID        OBJECT IDENTIFIER,
    sysORDescr     DisplayString,
    sysORUpTime    TimeStamp
}

sysORIndex OBJECT-TYPE
    SYNTAX     INTEGER (1..2147483647)
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "The auxiliary variable used for identifying instances of
            the columnar objects in the sysORTable."
    ::= { sysOREntry 1 }

sysORID OBJECT-TYPE
    SYNTAX     OBJECT IDENTIFIER
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "An authoritative identification of a capabilities statement  |
            with respect to various MIB modules supported (in the same    |
            SNMPv2 context) by the local    |
            SNMPv2 entity acting in an       | agent role."                       |
    ::= { sysOREntry 2 }

sysORDescr OBJECT-TYPE
    SYNTAX     DisplayString
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "A textual description of the capabilities identified by the
            corresponding instance of sysORID."
    ::= { sysOREntry 3 }

sysORUpTime OBJECT-TYPE
    SYNTAX     TimeStamp
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The value of sysUpTime at the time this conceptual row was
            last instanciated."
    ::= { sysOREntry 4 }

-- the SNMPv2 statistics group
--
-- a collection of objects providing basic instrumentation of
-- the SNMPv2 entity.

-- A Case diagram[4] relating these objects and objects from              |
-- the Community-Based statistics group (see below) is:                   |
--
--  \v/   transport service
--   |
-- ==+==  snmpStatsPackets
--   |
--   +==> snmpStats30Something
--   |
--   +==> snmpStatsEncodingErrors                                         -
--   |
--   +==> snmpStatsUnknownDstParties
--   |
--   +==> snmpStatsDstPartyMismatches
--   |
--   +==> snmpStatsUnknownSrcParties
--   |
--   +==> snmpStatsBadAuths
-- snmpBadCommunityNames                                           |
--   +==> snmpStatsNotInLifetimes
--   |
--   +==> snmpStatsWrongDigestValues
-- snmpBadCommunityUses                                            |
--   +==> snmpStatsUnknownContexts
--   |
--   +==> snmpStatsBadOperations                                          -
--   |
--   +==> snmpStatsProxyDrops                                             +
--   |                                                                    +
--   +==> snmpStatsSilentDrops
--   |
-- ===== sink

snmpStats      OBJECT IDENTIFIER ::= { snmpMIBObjects 1 }

snmpStatsPackets OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of packets received by the SNMPv2 entity
            from the transport service."
    REFERENCE
            "Derived from RFC1213-MIB.snmpInPkts."
    ::= { snmpStats 1 }

snmpStats30Something OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of packets which had an initial octet with
            a value of 30 hexadecimal received by a SNMPv2 entity which
            does not support SNMPv1.  (Such packets are possibly
            misdirected SNMPv1 Messages.)"
    REFERENCE
            "Derived from RFC1213-MIB.snmpInASNParseErrs."

--  ::= { snmpStats 2 }        this OID is obsolete                       |

snmpStatsEncodingErrors OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of packets received by the SNMPv2 entity
            which were improperly encoded or had invalid syntax."
    REFERENCE
            "Derived from RFC1213-MIB.snmpInASNParseErrs."
    ::= { snmpStats 3 }

snmpStatsUnknownDstParties OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpPrivMsgs delivered to the SNMPv2
            entity for which the privDst field was not a known local
            party."

--  ::= { snmpStats 4 }

snmpStatsDstPartyMismatches        this OID is obsolete                       |

--  ::= { snmpStats 5 }        this OID is obsolete                       |

--  ::= { snmpStats 6 }        this OID is obsolete                       |

--  ::= { snmpStats 7 }        this OID is obsolete                       |

--  ::= { snmpStats 8 }        this OID is obsolete                       |

--  ::= { snmpStats 9 }        this OID is obsolete                       |

--  ::= { snmpStats 10 }       this OID is obsolete                       |

snmpStatsBadOperations OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpPrivMsgs messages delivered to the SNMPv2 entity
            which contained a SnmpAuthMsg for which were silently dropped because the
            authData.dstParty field did PDU type referred to
            an operation not match the privDst field in allowed by the SnmpPrivMsg." entity's access control       |
            policy."                                                      |
    ::= { snmpStats 5 11 }

snmpStatsUnknownSrcParties

snmpStatsSilentDrops OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpAuthMsgs GetRequest-PDUs, GetNextRequest-PDUs,
            GetBulkRequest-PDUs, SetRequest-PDUs, and InformRequest-PDUs
            delivered to the SNMPv2 entity for which the authData.srcParty field was not a known
            remote party."
    ::= { snmpStats 6 }

snmpStatsBadAuths OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpAuthMsgs delivered to the SNMPv2
            entity which contained an authInfo field which was
            inconsistent with the authentication protocol associated
            with the source party."
    ::= { snmpStats 7 }

snmpStatsNotInLifetimes OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpAuthMsgs delivered to the SNMPv2
            entity which were deemed unauthentic due to their
            authInfo.authSrcTimestamp field being less than the source
            party's clock plus lifetime."
    ::= { snmpStats 8 }

snmpStatsWrongDigestValues OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpAuthMsgs delivered to the SNMPv2
            entity which were deemed unauthentic due to their
            authInfo.authDigest field being unequal to the expected
            digest value."
    ::= { snmpStats 9 }

snmpStatsUnknownContexts OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpMgmtComs delivered to the SNMPv2
            entity for which the context field was not a known SNMPv2
            context, or for which the local/remote realization of the
            SNMPv2 context was not consistent with the operation
            referred to by the PDU type."
    ::= { snmpStats 10 }

snmpStatsBadOperations OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of messages delivered to the SNMPv2 entity
            which were silently dropped because the PDU type referred to
            an operation not authorized by the acTable [5]."
    ::= { snmpStats 11 }

snmpStatsSilentDrops OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of GetRequest-PDUs, GetNextRequest-PDUs,
            GetBulkRequest-PDUs, SetRequest-PDUs, and InformRequest-PDUs
            delivered to the SNMPv2 entity which were silently dropped
            because were silently dropped
            because the size of a reply containing an alternate
            Response-PDU with an empty variable-bindings field was        |
            greater than either a local constraint or the maximum         |
            message size associated with the originator of the request's source party." request."  |
    ::= { snmpStats 12 }

snmpStatsProxyDrops OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of GetRequest-PDUs, GetNextRequest-PDUs,
            GetBulkRequest-PDUs, SetRequest-PDUs, and InformRequest-PDUs
            delivered to the SNMPv2 entity which were silently dropped    |
            because the context indicated a proxy SNMPv2 context and                                                       |
            the transmission of the (possibly translated) message to a
            proxy target failed in a manner (other than a time-out) such that
            no Response-PDU could be returned to the original request's
            source party."
    ::= { snmpStats 13 }

snmpV2EnableReports OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "Indicates whether the SNMPv2 entity, when acting in an
            agent role, is permitted to generate the report PDU.  The
            value of this object overrides any configuration
            information; as such, it provides a means whereby error
            reports may be disabled.

            Note that it is strongly recommended that this object be
            stored in non-volatile memory so that it remains constant
            across re-initializations of the network management system."
    ::= { snmpStats 14 }

-- the SNMPv1 statistics group
--
-- a collection of objects providing basic instrumentation of
-- a SNMPv2 entity which also implements SNMPv1.

-- A Case diagram[4] relating these objects
-- (and those applicable objects in the snmpStats group)
-- is:
--
--  \v/   transport service
-- failed in a manner (other than a time-out) such  |
-- ==+==  snmpStatsPackets
--
            that no Response-PDU could be returned."                      |
    ::= { snmpStats 13 }

--   +==> snmpStatsEncodingErrors
-- the Community-Based statistics group                                   |
--   +==> snmpV1BadCommunityNames
--   |
--   +==> snmpV1BadCommunityUses a collection of objects providing basic instrumentation of
-- community-based authentication                                         |
-- ===== sink

snmpV1         OBJECT IDENTIFIER ::= { snmpMIBObjects 2 }

snmpV1BadCommunityNames

snmpBadCommunityNames OBJECT-TYPE                                         |
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SNMPv1 Messages SNMP messages delivered to the SNMPv2    |
            entity which                                                  |
            used a community name not known to the SNMPv2 entity."
    REFERENCE
            "Derived from RFC1213-MIB.snmpInBadCommunityNames."
    ::= { snmpV1 1 snmpStats 14 }

snmpV1BadCommunityUses                                                  |

snmpBadCommunityUses OBJECT-TYPE                                          |
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SNMPv1 Messages SNMP messages delivered to SNMPv2        |
            entity                                                        |
            containing an operation which was not allowed for the
            community named in the Message." message."                              |
    REFERENCE
            "Derived from RFC1213-MIB.snmpInBadCommunityUses."
    ::= { snmpV1 snmpStats 15 }                                                  |

--  ::= { snmpMIBObjects 2 }        this OID is obsolete                  +

--  ::= { snmpMIBObjects 3 }        this OID is obsolete

-- the traps group
--
-- a collection of objects which allow the SNMPv2 entity, when
-- acting in an agent role, to be configured to generate
-- SNMPv2-Trap-PDUs.

snmpTrap       OBJECT IDENTIFIER ::= { snmpMIBObjects 4 }

snmpTrapOID OBJECT-TYPE
    SYNTAX     OBJECT IDENTIFIER
    MAX-ACCESS accessible-for-notify                                      |
    STATUS     current
    DESCRIPTION
            "The authoritative identification of the trap currently
            being sent.  This variable occurs as the second varbind of a
            SNMPv2-Trap-PDU."
    ::= { snmpTrap 1 }

snmpTrapTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF SnmpTrapEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "A table which keeps track of how many traps have been sent
            to each SNMPv2 entity."

--  ::= { snmpTrap 2 }

snmpTrapEntry OBJECT-TYPE
    SYNTAX     SnmpTrapEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry which keeps track of how many traps have been sent
            to a particular SNMPv2 entity."
    AUGMENTS   { partyEntry }
    ::= { snmpTrapTable 1 }

SnmpTrapEntry ::= SEQUENCE {
    snmpTrapNumbers     Counter32
}

snmpTrapNumbers OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The number of traps which have been sent to a particular
            SNMPv2 party, since the last initialization of the SNMPv2
            entity, or the creation of the SNMPv2 party, whichever
            occurred most recently."
    ::= { snmpTrapEntry 1 }              this OID is obsolete                  |

snmpTrapEnterprise OBJECT-TYPE                                            -
    SYNTAX     OBJECT IDENTIFIER
    MAX-ACCESS accessible-for-notify                                      |
    STATUS     current
    DESCRIPTION
            "The authoritative identification of the enterprise
            associated with the trap currently being sent.  When a
            SNMPv2 proxy agent is mapping an RFC1157 Trap-PDU into a
            SNMPv2-Trap-PDU, this variable occurs as the last varbind."
    ::= { snmpTrap 3 }

snmpV2EnableAuthenTraps OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "Indicates whether the SNMPv2 entity, when acting in an
            agent role, is permitted to generate authenticationFailure
            traps.  The value of this object overrides any configuration
            information; as such, it provides a means whereby all
            authenticationFailure traps may be disabled.

            Note that it is strongly recommended that this object be
            stored in non-volatile memory so that it remains constant
            across re-initializations of the network management system."
    REFERENCE
            "Derived from RFC1213-MIB.snmpEnableAuthenTraps."
    ::= { snmpTrap 4 }

-- well-known traps

snmpTraps      OBJECT IDENTIFIER ::= { snmpMIBObjects 5 }

coldStart NOTIFICATION-TYPE
    STATUS  current
    DESCRIPTION
            "A coldStart trap signifies that the SNMPv2 entity, acting
            in an agent role, is reinitializing itself and that its
            configuration may have been altered."
    ::= { snmpTraps 1 }

warmStart NOTIFICATION-TYPE
    STATUS  current
    DESCRIPTION
            "A warmStart trap signifies that the SNMPv2 entity, acting
            in an agent role, is reinitializing itself such that its
            configuration is unaltered."
    ::= { snmpTraps 2 }

-- Note the linkDown NOTIFICATION-TYPE ::= { snmpTraps 3 }
-- and the linkUp NOTIFICATION-TYPE ::= { snmpTraps 4 }
-- are defined in RFC 1573

authenticationFailure NOTIFICATION-TYPE
    STATUS  current
    DESCRIPTION
            "An authenticationFailure trap signifies that the SNMPv2
            entity, acting in an agent role, has received a protocol
            message that is not properly authenticated.  While all
            implementations of the SNMPv2 must be capable of generating
            this trap, the snmpV2EnableAuthenTraps object indicates
            whether this trap will be generated."
    ::= { snmpTraps 5 }

-- Note the egpNeighborLoss NOTIFICATION-TYPE ::= { snmpTraps 6 }
-- is defined in RFC 1213

-- the set group
--
-- a collection of objects which allow several cooperating
-- SNMPv2 entities, all acting in a manager role, to
-- coordinate their use of the SNMPv2 set operation.

snmpSet        OBJECT IDENTIFIER ::= { snmpMIBObjects 6 }

snmpSetSerialNo OBJECT-TYPE
    SYNTAX     TestAndIncr
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
            "An advisory lock used to allow several cooperating SNMPv2
            entities, all acting in a manager role, to coordinate their
            use of the SNMPv2 set operation.

            This object is used for coarse-grain coordination.  To
            achieve fine-grain coordination, one or more similar objects
            might be defined within each MIB group, as appropriate."
    ::= { snmpSet 1 }

-- conformance information

snmpMIBConformance
               OBJECT IDENTIFIER ::= { snmpMIB 2 }

snmpMIBCompliances
               OBJECT IDENTIFIER ::= { snmpMIBConformance 1 }
snmpMIBGroups  OBJECT IDENTIFIER ::= { snmpMIBConformance 2 }

-- compliance statements

snmpMIBCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for SNMPv2 entities which
            implement the SNMPv2 MIB."
    MODULE  -- this module
        MANDATORY-GROUPS { systemGroup, -- in each SNMPv2 context                                   |
                           snmpStatsGroup,
                           snmpTrapGroup, snmpSetGroup }

        GROUP   snmpV1Group
        DESCRIPTION
            "The snmpV1 group is mandatory only for those
             SNMPv2 entities which also implement SNMPv1."
    ::= { snmpMIBCompliances 1 }

-- units of conformance

systemGroup OBJECT-GROUP
    OBJECTS { sysDescr, sysObjectID, sysUpTime,
              sysContact, sysName, sysLocation,
              sysServices,
              sysORLastChange, sysORID,                                   |
              sysORUpTime, sysORDescr }   snmpCommunityGroup                                        |
    STATUS  current
        DESCRIPTION
            "The system snmpCommunity group defines objects which are common to all
            managed systems.  In particular, every SNMPv2 context         |
            contains the set of managed objects contained in the system   |
            group.  There is no required relationship between the values  |
            of these objects in two different contexts." mandatory for those               |
             SNMPv2 entities community-based authentication."             |
    ::= { snmpMIBGroups 6 snmpMIBCompliances 1 }

-- units of conformance

snmpStatsGroup OBJECT-GROUP                                               -
    OBJECTS { snmpStatsPackets, snmpStats30Something,                                           |
              snmpStatsEncodingErrors,
              snmpStatsUnknownDstParties,
              snmpStatsDstPartyMismatches,
              snmpStatsUnknownSrcParties, snmpStatsBadAuths,
              snmpStatsNotInLifetimes,
              snmpStatsWrongDigestValues,
              snmpStatsUnknownContexts,
              snmpStatsBadOperations,                                     -
              snmpStatsSilentDrops,
              snmpStatsProxyDrops,
              snmpV2EnableReports
              snmpStatsProxyDrops }                                       |
    STATUS  current
    DESCRIPTION
            "A collection of objects providing basic instrumentation of
            the SNMPv2 entity."
    ::= { snmpMIBGroups 1 }

snmpV1Group

snmpCommunityGroup OBJECT-GROUP                                           |
    OBJECTS { snmpV1BadCommunityNames, snmpV1BadCommunityUses snmpBadCommunityNames, snmpBadCommunityUses }               |
    STATUS  current
    DESCRIPTION
            "A collection of objects providing basic instrumentation of
            a SNMPv2 entity which also implements SNMPv1." supports community-based                |
            authentication."                                              |
    ::= { snmpMIBGroups 2 }

--  ::= { snmpMIBGroups 3 }           this OID is obsolete

snmpTrapGroup OBJECT-GROUP
    OBJECTS { snmpTrapNumbers, snmpV2EnableAuthenTraps }                                   |
    STATUS  current
    DESCRIPTION
            "A collection of objects which allow the SNMPv2 entity, when
            acting in an agent role, to be configured to generate
            SNMPv2-Trap-PDUs."
    ::= { snmpMIBGroups 4 }

snmpSetGroup OBJECT-GROUP
    OBJECTS { snmpSetSerialNo }
    STATUS  current
    DESCRIPTION
            "A collection of objects which allow several cooperating
            SNMPv2 entities, all acting in a manager role, to coordinate
            their use of the SNMPv2 set operation."
    ::= { snmpMIBGroups 5 }

systemGroup OBJECT-GROUP                                                  +
    OBJECTS { sysDescr, sysObjectID, sysUpTime,                           +
              sysContact, sysName, sysLocation,                           +
              sysServices,                                                +
              sysORLastChange, sysORID,                                   +
              sysORUpTime, sysORDescr }                                   +
    STATUS  current                                                       +
    DESCRIPTION                                                           +
            "The system group defines objects which are common to all     +
            managed systems."                                             +
    ::= { snmpMIBGroups 6 }                                               +

snmpBasicNotificationsGroup NOTIFICATION-GROUP                            +
    NOTIFICATIONS { coldStart, authenticationFailure }                    +
    STATUS        current                                                 +
    DESCRIPTION                                                           +
            "The two notifications which an SNMPv2 entity is required to  +
            implement."                                                   +
    ::= { snmpMIBGroups 7 }                                               +

END

3.  Acknowledgements

The authors wish to acknowledge

This document is the result of significant work by the four major
contributors:

     Jeffrey Case (SNMP Research, case@snmp.com)
     Keith McCloghrie (Cisco Systems, kzm@cisco.com)
     Marshall Rose (Dover Beach Consulting, mrose@dbc.mtview.ca.us)
     Steven Waldbusser (International Network Services, stevew@uni.ins.com)

In addition, the contributions of the SNMPv2 Working Group in general. are
acknowledged.  In particular, a special thanks is extended for the following individuals
contributions of:

     Alexander I. Alten (Novell)
     Dave Arneson (Cabletron), (Cabletron)
     Uri Blumenthal (IBM), (IBM)
     Doug Book (Chipcom), (Chipcom)
     Kim Curran (Bell-Northern Research)
     Jim Galvin (Trusted Information Systems)
     Maria Greene (Ascom Timeplex),
     Deirdre Kostik (Bellcore), Timeplex)
     Iain Hanson (Digital)
     Dave Harrington (Cabletron), (Cabletron)
     Nguyen Hien (IBM)
     Jeff Johnson (Cisco Systems), Systems)
     Michael Kornegay (Object Quest)
     Deirdre Kostick (AT&T Bell Labs)
     David Levi (SNMP Research)
     Daniel Mahoney (Cabletron)
     Bob Natale (ACE*COMM)
     Brian O'Keefe (Hewlett Packard), Packard)
     Andrew Pearson (SNMP Research)
     Dave Perkins (Bay Networks), (Peer Networks)
     Randy Presuhn (Peer Networks), Networks)
     Aleksey Romanov (Quality Quorum)
     Shawn Routhier (Epilogue), (Epilogue)
     Jon Saperia (BGS Systems)
     Bob Stewart (Cisco Systems), Systems, bstewart@cisco.com), chair
     Kaj Tesink (Bellcore).

deserve special thanks for their contributions. (Bellcore)
     Glenn Waters (Bell-Northern Research)
     Bert Wijnen (IBM)

4.  References

[1]  Information processing systems - Open Systems Interconnection -
     Specification of Abstract Syntax Notation One (ASN.1),
     International Organization for Standardization.  International
     Standard 8824, (December, 1987).

[2]  Case, J.,  McCloghrie, K., Rose, M., and Waldbusser, S., Editor,                                              |
     "Structure of Management Information for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", Internet Draft, SNMP Research, Inc., Cisco         |
     Systems, Dover Beach Consulting, Inc., Carnegie Mellon
     University, May September 1995.                                             |

[3]  Case, J.,  McCloghrie, K., Rose, M., and Waldbusser, S., Editor,                                              |
     "Protocol Operations for Version 2 of the Simple Network Management
     Protocol (SNMPv2)", Internet Draft, SNMP Research, Inc., Cisco Systems,
     Dover Beach Consulting, Inc., Carnegie Mellon University, May September 1995.   |

[4]  J.D. Case, C. Partridge, Case Diagrams: A First Step to Diagramed
     Management Information Bases.  Computer Communications Review,
     Volume 19, Number 1, (January, 1989).

[5]  Case, J., Galvin, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
     "Party MIB for Version 2 of the Simple Network Management Protocol
     (SNMPv2)", Internet Draft, SNMP Research, Inc., Trusted Information
     Systems, Cisco Systems, Dover Beach Consulting, Inc., Carnegie
     Mellon University, May 1995.                                         |                                -

5.  Security Considerations

Security issues are not discussed in this memo.

6.  Authors' Addresses

     Jeffrey D. Case
     SNMP Research, Inc.
     3001 Kimberlin Heights Rd.
     Knoxville, TN  37920-9716
     US

     Phone: +1 615 573 1434
     Email: case@snmp.com  Editor's Address

     Keith McCloghrie                                                     -
     Cisco Systems, Inc.
     170 West Tasman Drive, Drive                                                |
     San Jose Jose, CA 95134-1706.  95134-1706                                             |
     US                                                                   |

     Phone: +1 408 526 5260
     Email: kzm@cisco.com

     Marshall T. Rose
     Dover Beach Consulting, Inc.
     420 Whisman Court
     Mountain View, CA  94043-2186
     US

     Phone: +1 415 968 1052
     Email: mrose@dbc.mtview.ca.us

     Steven Waldbusser
     Carnegie Mellon University
     5000 Forbes Ave
     Pittsburgh, PA  15213
     US

     Phone: +1 412 268 6628
     Email: waldbusser@cmu.edu

Table of Contents                                                         -

1 Introduction ....................................................    3    2
1.1 A Note on Terminology .........................................    3    2
2 Definitions .....................................................    4    3
2.1 The System Group ..............................................    5    4
2.2 The SNMPv2 Statistics Group ...................................   10    9
2.3 The SNMPv1 Community-Based Statistics Group ...................................   16
2.5 ..........................   12
2.4 The Traps Group ...............................................   18
2.5.1   13
2.4.1 Well-known Traps ............................................   21
2.6   15
2.5 The Set Group .................................................   23
2.7   17
2.6 Conformance Information .......................................   24
2.7.1   18
2.6.1 Compliance Statements .......................................   24
2.7.2   18
2.6.2 Units of Conformance ........................................   25   19
3 Acknowledgements ................................................   27   21
4 References ......................................................   27   22
5 Security Considerations .........................................   29   23
6 Authors' Addresses ..............................................   29 Editor's Address ................................................   23