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: [email protected]

6.  Acknowledgements

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

  Jeffrey D. Case (SNMP Research, [email protected])
  Keith McCloghrie (Cisco Systems, [email protected])
  Marshall T. Rose (Dover Beach Consulting, [email protected])
  Steven Waldbusser (International Network Services, [email protected])

  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, [email protected]), 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]