Network Working Group
Request for Comments: 1901
Category: Experimental
SNMPv2 Working Group
J. Case
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.

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,

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

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].

(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.

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)

     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.

[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).