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

                             19 March

                              31 May 1995                                 |

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

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

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

                            Keith McCloghrie
                          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).

1.2.  Change Log

For the 19 March version:                                                 +

-    The changes adopted by the SNMPv2 Working Group.                     +

For the 1 November version:

-    recast RFC 1450 into an Internet-Draft,

-    fixed typos,

-    fixed syntax of snmpORIndex,

-    removed ObjectName from IMPORTS clause,

-    removed definitions of linkUp and linkDown notifications since they
     are defined in RFC 1573,

-    referenced definition of egpNeighborLoss notification (in RFC
     1213), in order to remove the last dependency on a MIB defined
     using SNMPv1's SMI,

-    included the system group from MIB-II.

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;                                            |

snmpMIB MODULE-IDENTITY
    LAST-UPDATED "9503190000Z"                                            |
    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
    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 is:
--                                                                        |
--  \v/   transport service
--   |
-- ==+==  snmpStatsPackets
--   |
--   +==> snmpStats30Something
--   |
--   +==> snmpStatsEncodingErrors
--   |
--   +==> snmpStatsUnknownDstParties
--   |
--   +==> snmpStatsDstPartyMismatches
--   |
--   +==> snmpStatsUnknownSrcParties
--   |
--   +==> snmpStatsBadAuths
--   |
--   +==> snmpStatsNotInLifetimes
--   |
--   +==> snmpStatsWrongDigestValues
--   |
--   +==> 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 }

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 OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpPrivMsgs delivered to the SNMPv2
            entity which contained a SnmpAuthMsg for which the
            authData.dstParty field did not match the privDst field in
            the SnmpPrivMsg."
    ::= { snmpStats 5 }

snmpStatsUnknownSrcParties OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SnmpAuthMsgs 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 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 of the request's source party."
    ::= { 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
--   |
-- ==+==  snmpStatsPackets
--   |
--   +==> snmpStatsEncodingErrors
--   |
--   +==> snmpV1BadCommunityNames
--   |
--   +==> snmpV1BadCommunityUses
--   |
-- ===== sink

snmpV1         OBJECT IDENTIFIER ::= { snmpMIBObjects 2 }

snmpV1BadCommunityNames OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The total number of SNMPv1 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 }

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

--  ::= { 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 not-accessible 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 }

snmpTrapEnterprise OBJECT-TYPE
    SYNTAX     OBJECT IDENTIFIER
    MAX-ACCESS not-accessible 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 }                                   |
    STATUS  current
    DESCRIPTION
            "The system group defines objects which are common to all
            managed systems.  In particular, every SNMPv2 context         |
            contains the set of managed systems (i.e., objects contained in all SNMPv2 contexts)." the system   |
            group.  There is no required relationship between the values  |
            of these objects in two different contexts."                  |
    ::= { snmpMIBGroups 6 }

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

snmpV1Group OBJECT-GROUP
    OBJECTS { snmpV1BadCommunityNames, snmpV1BadCommunityUses }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing basic instrumentation of
            a SNMPv2 entity which also implements SNMPv1."
    ::= { 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 }

END

3.  Acknowledgements

The authors wish to acknowledge the contributions of the SNMPv2 Working
Group in general.  In particular, the following individuals

     Dave Arneson (Cabletron),
     Uri Blumenthal (IBM),
     Doug Book (Chipcom),
     Maria Greene (Ascom Timeplex),
     Deirdre Kostik (Bellcore),
     Dave Harrington (Cabletron),
     Jeff Johnson (Cisco Systems),
     Brian O'Keefe (Hewlett Packard),
     Dave Perkins (Bay Networks),
     Randy Presuhn (Peer Networks),
     Shawn Routhier (Epilogue),
     Bob Stewart (Cisco Systems),
     Kaj Tesink (Bellcore).

deserve special thanks for their contributions.

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., "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, March May 1995.                                                |

[3]  Case, J., McCloghrie, K., Rose, M., and Waldbusser, S., "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, March      | May 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, March 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

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

     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
1.1 A Note on Terminology .........................................    3
1.2 Change Log ....................................................    3
2 Definitions .....................................................    5    4
2.1 The System Group ..............................................    6    5
2.2 The SNMPv2 Statistics Group ...................................   11   10
2.3 The SNMPv1 Statistics Group ...................................   17   16
2.5 The Traps Group ...............................................   19   18
2.5.1 Well-known Traps ............................................   22   21
2.6 The Set Group .................................................   24   23
2.7 Conformance Information .......................................   25   24
2.7.1 Compliance Statements .......................................   25   24
2.7.2 Units of Conformance ........................................   26   25
3 Acknowledgements ................................................   28   27
4 References ......................................................   28   27
5 Security Considerations .........................................   30   29
6 Authors' Addresses ..............................................   30   29