Network Working Group                               SNMPv2 Working Group
Request for Comments: 1901                                       J. Case
Category: Experimental                               SNMP Research, Inc.
                                                           K. McCloghrie
                                                     Cisco Systems, Inc.
                                                                 M. Rose
                                            Dover Beach Consulting, Inc.
                                                           S. Waldbusser
                                          International Network Services
                                                            January 1996


                 Introduction to Community-based SNMPv2

Status of this Memo

   This document specifies an Experimental protocol for the Internet
   community.  This memo does not specify an Internet standard of any
   kind.  Discussion and suggestions for improvement are requested.
   Distribution of this memo is unlimited.

Table of Contents

   1. Introduction ................................................    1
   2. Components of the SNMPv2 Framework ..........................    2
   2.1 Structure of Management Information ........................    2
   2.2 Textual Conventions ........................................    3
   2.3 Conformance Statements .....................................    3
   2.4 Protocol Operations ........................................    3
   2.5 Transport Mappings .........................................    4
   2.6 Protocol Instrumentation ...................................    4
   3. The Community-based Administrative Framework ................    4
   4. Security Considerations .....................................    5
   5. Editor's Address ............................................    6
   6. Acknowledgements ............................................    6
   7. References ..................................................    7

1.  Introduction

   The purpose of this document is to define the Community-based
   Administrative Framework for the SNMP version 2 framework (SNMPv2).
   The SNMPv2 framework is fully described in [1-6].  This framework is
   derived from the original Internet-standard Network Management
   Framework (SNMPv1), which consists of these three documents:

      STD 16, RFC 1155 [7] which defines the Structure of Management
      Information (SMI), the mechanisms used for describing and naming
      objects for the purpose of management.



SNMPv2 Working Group          Experimental                      [Page 1]


RFC 1901         Introduction to Community-based SNMPv2     January 1996


      STD 16, RFC 1212 [8] which defines a more concise description
      mechanism, which is wholly consistent with the SMI.

      STD 15, RFC 1157 [9] which defines the Simple Network Management
      Protocol (SNMP), the protocol used for network access to managed
      objects.

   For information on coexistence between SNMPv1 and SNMPv2, consult
   [10].

2.  Components of the SNMPv2 Framework

   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.

2.1.  Structure of 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) [11].  It is the purpose of the
   Structure of Management Information for SNMPv2 document [1] to define
   that subset.

   The SMI is divided into three parts:  module definitions, object
   definitions, and, trap definitions.

   (1)  Module definitions are used when describing information modules.
        An ASN.1 macro, MODULE-IDENTITY, is used to concisely convey the
        semantics of an information module.

   (2)  Object definitions are used when describing managed objects.  An
        ASN.1 macro, OBJECT-TYPE, is used to concisely convey the syntax
        and semantics of a managed object.

   (3)  Notification definitions are used when describing unsolicited
        transmissions of management information.  An ASN.1 macro,



SNMPv2 Working Group          Experimental                      [Page 2]


RFC 1901         Introduction to Community-based SNMPv2     January 1996


        NOTIFICATION-TYPE, is used to concisely convey the syntax and
        semantics of a notification.

2.2.  Textual Conventions

   When designing a MIB module, it is often useful to define new types
   similar to those defined in the SMI.  In comparison to a type defined
   in the SMI, each of these new types has a different name, a similar
   syntax, but a more precise semantics.  These newly defined types are
   termed textual conventions, and are used for the convenience of
   humans reading the MIB module.  It is the purpose of the Textual
   Conventions for SNMPv2 document [2] to define the initial set of
   textual conventions available to all MIB modules.

   Objects defined using a textual convention are always encoded by
   means of the rules that define their primitive type.  However,
   textual conventions often have special semantics associated with
   them.  As such, an ASN.1 macro, TEXTUAL-CONVENTION, is used to
   concisely convey the syntax and semantics of a textual convention.

2.3.  Conformance Statements

   It may be useful to define the acceptable lower-bounds of
   implementation, along with the actual level of implementation
   achieved.  It is the purpose of the Conformance Statements for SNMPv2
   document [3] to define the notation used for these purposes.  There
   are two kinds of notations:

   (1)  Compliance statements are used when describing requirements for
        agents with respect to object definitions.  An ASN.1 macro,
        MODULE-COMPLIANCE, is used to concisely convey such requirements.

   (2)  Capability statements are used when describing capabilities of
        agents with respect to object definitions.  An ASN.1 macro, AGENT-
        CAPABILITIES, is used to concisely convey such capabilities.

   Finally, collections of related objects are grouped together to form
   a unit of conformance.  An ASN.1 macro, OBJECT-GROUP, is used to
   concisely convey the syntax and semantics of a group.

2.4.  Protocol Operations

   The management protocol provides for the exchange of messages which
   convey management information between the agents and the management
   stations.  The form of these messages is a message "wrapper" which
   encapsulates a Protocol Data Unit (PDU).





SNMPv2 Working Group          Experimental                      [Page 3]


RFC 1901         Introduction to Community-based SNMPv2     January 1996


   It is the purpose of the Protocol Operations for SNMPv2 document [4]
   to define the operations of the protocol with respect to the sending
   and receiving of the PDUs.

2.5.  Transport Mappings

   The management protocol, version 2 of the Simple Network Management
   Protocol, may be used over a variety of protocol suites.  It is the
   purpose of the Transport Mappings for SNMPv2 document [5] to define
   how the SNMPv2 maps onto an initial set of transport domains.  Other
   mappings may be defined in the future.

   Although several mappings are defined, the mapping onto UDP is the
   preferred mapping.  As such, to provide for the greatest level of
   interoperability, systems which choose to deploy other mappings
   should also provide for proxy service to the UDP mapping.

2.6.  Protocol Instrumentation

   It is the purpose of the Management Information Base for SNMPv2
   document [6] to define managed objects which describe the behavior of
   a SNMPv2 entity.

3.  The Community-based Administrative Framework

   It is the purpose of an administrative framework to define an
   infrastructure through which effective management can be realized in
   a variety of configurations and environments.  Specified as a part
   of, or as extensions of, an administrative framework are security
   mechanisms used to achieve an administratively-defined level of
   security for protocol interactions.

   The administrative framework for SNMPv2 identified in this document
   is the same framework as was defined for SNMPv1 [9].  This
   administrative framework associates each message with a "community"
   as defined in [9].  Use of this administrative framework with SNMP
   Version 2 is commonly known as "Community-based SNMPv2 (SNMPv2C)."

   Specifically, Section 3.2.5 of [9] defines the concept of a
   community, and Section 4.1 of [9] defines the Elements of Procedure
   for generating and receiving messages.  The following updates apply:

   (1)  The types of access defined in Section 3.2.5 of [9] are updated
        by [1].

   (2)  The Elements of Procedure defined in Section 4.1 of [9] are
        updated with the additional requirement of incrementing the
        relevant statistics counter as defined in [6].



SNMPv2 Working Group          Experimental                      [Page 4]


RFC 1901         Introduction to Community-based SNMPv2     January 1996


   (3)  The requirement in the Elements of Procedure in Section 4.1 of
        [9] that the "the source transport address that a response
        message is sent from shall be identical to the destination
        transport address that the original request message was sent to"
        is deleted, i.e., the source transport address of a response
        message can be any transport address belonging to the agent.

   The form of a message is also taken from [9], with the exception that
   a new version number is used in the message "wrapper".  Use of a new
   version number is necessary because of SNMPv2's new PDU types [4],
   error codes [4], etc.  With this one change, the wrapper becomes:

    COMMUNITY-BASED-SNMPv2 DEFINITIONS ::= BEGIN

    -- top-level message

        Message ::=
                SEQUENCE {
                     version
                        INTEGER {
                            version(1)  -- modified from RFC 1157
                        },

                    community           -- community name
                        OCTET STRING,

                    data                -- PDUs as defined in [4]
                        ANY
                }
        }

    END

   Note that with this administrative framework, the
   'authorizationError(16)' value defined for the error-status component
   of an SNMPv2 PDU [4] is unused.  It may, however, be used with future
   administrative frameworks.

4.  Security Considerations

   Security issues are not discussed in this memo.










SNMPv2 Working Group          Experimental                      [Page 5]


RFC 1901         Introduction to Community-based SNMPv2     January 1996


5.  Editor's Address

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

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

6.  Acknowledgements

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

   Jeffrey D. Case (SNMP Research, case@snmp.com)
   Keith McCloghrie (Cisco Systems, kzm@cisco.com)
   Marshall T. 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 are
   acknowledged.  In particular, a special thanks is extended for the
   contributions of:

     Alexander I. Alten (Novell)
     Dave Arneson (Cabletron)
     Uri Blumenthal (IBM)
     Doug Book (Chipcom)
     Kim Curran (Bell-Northern Research)
     Jim Galvin (Trusted Information Systems)
     Maria Greene (Ascom Timeplex)
     Iain Hanson (Digital)
     Dave Harrington (Cabletron)
     Nguyen Hien (IBM)
     Jeff Johnson (Cisco 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)
     Andrew Pearson (SNMP Research)
     Dave Perkins (Peer Networks)
     Randy Presuhn (Peer Networks)
     Aleksey Romanov (Quality Quorum)
     Shawn Routhier (Epilogue)
     Jon Saperia (BGS Systems)



SNMPv2 Working Group          Experimental                      [Page 6]


RFC 1901         Introduction to Community-based SNMPv2     January 1996


     Bob Stewart (Cisco Systems, bstewart@cisco.com), chair
     Kaj Tesink (Bellcore)
     Glenn Waters (Bell-Northern Research)
     Bert Wijnen (IBM)

7.  References

[1]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Structure of Management Information for Version 2
     of the Simple Network Management Protocol (SNMPv2)", RFC 1902,
     January 1996.

[2]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Textual Conventions for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1903, January 1996.

[3]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Conformance Statements for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1904, January 1996.

[4]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Protocol Operations for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1905, January 1996.

[5]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Transport Mappings for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1906, January 1996.

[6]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Management Information Base for Version 2 of the
     Simple Network Management Protocol (SNMPv2)", RFC 1907,
     January 1996.

[7]  Rose, M., and K. McCloghrie, "Structure and Identification of
     Management Information for TCP/IP-based internets", STD 16, RFC
     1155, May 1990.

[8]  Rose, M., and K. McCloghrie, "Concise MIB Definitions", STD 16,
     RFC 1212, March 1991.

[9]  Case, J., Fedor, M., Schoffstall, M., Davin, J., "Simple Network
     Management Protocol", STD 15, RFC 1157, SNMP Research, Performance
     Systems International, MIT Laboratory for Computer Science, May
     1990.







SNMPv2 Working Group          Experimental                      [Page 7]


RFC 1901         Introduction to Community-based SNMPv2     January 1996


[10] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Coexistence between Version 1 and Version 2 of the
     Internet-standard Network Management Framework", RFC 1908,
     January 1996.

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










































SNMPv2 Working Group          Experimental                      [Page 8]