rfc3159.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,760 行 · 第 1/5 页

TXT
1,760
字号






Network Working Group                                      K. McCloghrie
Request for Comments: 3159                                       M. Fine
Category: Standards Track                                  Cisco Systems
                                                             J. Seligson
                                                                 K. Chan
                                                         Nortel Networks
                                                                 S. Hahn
                                                               R. Sahita
                                                                   Intel
                                                                A. Smith
                                                        Allegro Networks
                                                           F. Reichmeyer
                                                                     PFN
                                                             August 2001


          Structure of Policy Provisioning Information (SPPI)

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2001).  All Rights Reserved.

Abstract

   This document, the Structure of Policy Provisioning Information
   (SPPI), defines the adapted subset of SNMP's Structure of Management
   Information (SMI) used to write Policy Information Base (PIB)
   modules.

   RFC 2748 defines the COPS protocol, and RFC 2749 describes how the
   COPS protocol is used to provide for the outsourcing of policy
   decisions for RSVP.  Another usage of the COPS protocol, for the
   provisioning of policy, is introduced in RFC 3084.  In this
   provisioning model, the policy information is viewed as a collection
   of Provisioning Classes (PRCs) and Provisioning Instances (PRIs)
   residing in a virtual information store, termed the Policy
   Information Base (PIB).  Collections of related Provisioning Classes
   are defined in a PIB module.





McCloghrie, et al.          Standards Track                     [Page 1]

RFC 3159                          SPPI                       August 2001


Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

Table of Contents

   1 Use of the SMI .................................................  3
   1.1 Terminology Translation ......................................  3
   1.2 Overview .....................................................  3
   2 Structure of this Specification ................................  4
   3 Definitions ....................................................  5
   4 PIB Modules .................................................... 17
   4.1 Importing Definitions ........................................ 17
   4.2 Reserved Keywords ............................................ 18
   5 Naming Hierarchy ............................................... 18
   6 Mapping of the MODULE-IDENTITY macro ........................... 18
   6.1 Mapping of the SUBJECT-CATEGORIES clause ..................... 18
   7 Mapping of the OBJECT-TYPE macro ............................... 19
   7.1 Mapping of the SYNTAX clause ................................. 19
   7.1.1 Counter32 .................................................. 19
   7.1.2 Gauge32 .................................................... 20
   7.1.3 Opaque ..................................................... 20
   7.1.4 IpAddress .................................................. 20
   7.1.5 Counter64 .................................................. 20
   7.1.6 Integer64 .................................................. 20
   7.1.7 Unsigned64 ................................................. 20
   7.1.8 Provisioning Classes ....................................... 21
   7.2 Mapping of the MAX-ACCESS clause ............................. 21
   7.3 Mapping of the PIB-ACCESS clause ............................. 22
   7.4 Mapping of the INSTALL-ERRORS clause ......................... 22
   7.5 Mapping of the PIB-INDEX clause .............................. 22
   7.6 Mapping of the INDEX clause .................................. 23
   7.7 Mapping of the AUGMENTS clause ............................... 23
   7.8 Mapping of the EXTENDS clause ................................ 24
   7.8.1  Relation between PIB-INDEX, AUGMENTS and EXTENDS clauses .. 24
   7.9 Mapping of the UNIQUENESS clause ............................. 25
   7.10 Mapping of the PIB-REFERENCES clause ........................ 25
   7.11 Mapping of the PIB-TAG clause ............................... 25
   8 Mapping of the OBJECT-IDENTITY macro ........................... 26
   9 Mapping of the OBJECT-GROUP macro .............................. 26
   9.1 Mapping of the OBJECTS clause ................................ 26
   10 Mapping of the MODULE-COMPLIANCE macro ........................ 26
   10.1 Mapping of the MODULE clause ................................ 26
   10.1.1 Mapping of the MANDATORY-GROUPS clause .................... 27
   10.1.2 Mapping of the GROUP clause ............................... 27
   10.1.3 Mapping of the OBJECT clause .............................. 27



McCloghrie, et al.          Standards Track                     [Page 2]

RFC 3159                          SPPI                       August 2001


   10.1.3.1 Mapping of the SYNTAX clause ............................ 27
   10.1.3.2 Mapping of the WRITE-SYNTAX clause ...................... 28
   10.1.3.3 Mapping of the PIB-MIN-ACCESS clause .................... 28
   11 Textual Conventions ........................................... 28
   11.1 Mapping of the TEXTUAL-CONVENTION macro ..................... 28
   11.1.1 Mapping of the DISPLAY-HINT clause ........................ 29
   11.1.2 Mapping of the SYNTAX clause .............................. 29
   11.1.2.1 Sub-typing of Textual Conventions ....................... 29
   12 Extending a PIB Module ........................................ 29
   12.1 PIB Modules ................................................. 29
   12.2 Object Assignments .......................................... 30
   12.3 Object Definitions .......................................... 30
   Appendix A: Mapping a PIB to a MIB ............................... 32
   Appendix B: Example usage of PIB-REFERENCES and PIB-TAG clauses .. 33
   Security Considerations .......................................... 35
   IANA Considerations .............................................. 35
   Authors' Addresses ............................................... 37
   References ....................................................... 38
   Full Copyright Statement ......................................... 40

1.  Use of the SMI

   The SPPI and PIB modules are based on SNMP's SMI and MIB modules,
   which use an adapted subset of the ASN.1 data definition language
   [ASN1].  The decision to base the definition of PIB modules on this
   format allows for the leveraging of the community's knowledge,
   experience and tools of the SMI and MIB modules.

1.1.  Terminology Translation

   The SMI uses the term "managed objects" to refer to object types,
   both tabular types with descriptors such as xxxTable and xxxEntry, as
   well as scalar and columnar object types.  The SPPI does not use the
   term "object" so as to avoid confusion with COPS protocol objects.
   Instead, the SPPI uses the term Provisioning Class (PRC) for the
   table and row definitions (the xxxTable and xxxEntry objects,
   respectively), and Provisioning Instance (PRI) for an instantiation
   of a row definition.  For a columnar object of a table definition,
   the SPPI uses the term "attribute" of a Provisioning Class.  (The
   SPPI does not support the equivalent of the SMI's scalar objects.)

1.2.  Overview

   SNMP's SMI is divided into five parts: module definitions, object
   definitions, notification definitions [SMI], textual convention
   definitions [TC] and conformance definitions [CONF].





McCloghrie, et al.          Standards Track                     [Page 3]

RFC 3159                          SPPI                       August 2001


   -  The SMI's MODULE-IDENTITY macro is used to convey the semantics of
      a MIB module.  The SPPI uses this macro to convey the semantics of
      a PIB module.

   -  The SMI's OBJECT-TYPE macro is used to convey the syntax and
      semantics of managed objects.  The SPPI uses this macro to convey
      the syntax and semantics of PRCs and their attributes.

   -  The SMI's notification definitions are not used (at this time) by
      the SPPI.  (Note that the use of the keyword 'notify' in the SPPI
      is not related to the SMI's notifications).

   -  The SMI's TEXTUAL CONVENTION macro allows new data types to be
      defined.  The SPPI uses this macro to define new data types having
      particular syntax and semantics which is common to several
      attributes of one of more PRCs.

   -  The SMI's conformance definitions define several macros: the
      OBJECT-GROUP macro, the NOTIFICATION-GROUP macro, the MODULE-
      COMPLIANCE macro and the AGENT-CAPABILITIES macro.  The SPPI uses
      the OBJECT-GROUP and MODULE-COMPLIANCE macros to specify
      acceptable lower-bounds of implementation of the attributes of
      PRCs, and thereby indirectly, acceptable lower-bounds of
      implementation of the PRCs themselves.  The NOTIFICATION-GROUP
      macro is not used (at this time) by the SPPI.  Potential usage by
      the SPPI of the AGENT- CAPABILITIES macro is for further study.

2.  Structure of this Specification

   The SMI is specified in terms of an ASN.1 definition together with
   descriptive text for each element introduced in that ASN.1
   definition.  This document specifies the SPPI also via a ASN.1
   definition, which is a modified version of the SMI's definition,
   together with descriptive text for only those elements in the SPPI's
   ASN.1 definition which have differences from the SMI's.  For elements
   in the ASN.1 definition which have no descriptive text in this
   specification, the reader is referred to the SMI's descriptive text
   for that element.













McCloghrie, et al.          Standards Track                     [Page 4]

RFC 3159                          SPPI                       August 2001


3.  Definitions

COPS-PR-SPPI DEFINITIONS ::= BEGIN

IMPORTS    ObjectName, SimpleSyntax, ExtUTCTime, mgmt
                                                FROM SNMPv2-SMI;

-- the root for PIB definitions

      pib           OBJECT IDENTIFIER ::= { mgmt 2 }

-- definitions for PIB modules

MODULE-IDENTITY MACRO ::=
BEGIN
    TYPE NOTATION ::=
                  SubjectPart                        -- new
                  "LAST-UPDATED" value(Update ExtUTCTime)
                  "ORGANIZATION" Text
                  "CONTACT-INFO" Text
                  "DESCRIPTION" Text
                  RevisionPart

    VALUE NOTATION ::=
                  value(VALUE OBJECT IDENTIFIER)

    SubjectPart ::=                                  -- new
                  "SUBJECT-CATEGORIES" "{" Categories "}"
                   -- see IANA Considerations section
    Categories ::=                                   -- new
                  CategoryIDs
                | "all"
    CategoryIDs ::=                                  -- new
                  CategoryID
                | CategoryIDs "," CategoryID
    CategoryID ::=                                   -- new
                 identifier "(" number ")"  -- number is positive

    RevisionPart ::=
                  Revisions
                | empty
    Revisions ::=
                  Revision
                | Revisions Revision
    Revision ::=
                  "REVISION" value(Update ExtUTCTime)
                  "DESCRIPTION" Text




McCloghrie, et al.          Standards Track                     [Page 5]

RFC 3159                          SPPI                       August 2001


    -- a character string as defined in [SMI]
    Text ::= value(IA5String)
END

--

OBJECT-IDENTITY MACRO ::=
BEGIN
    TYPE NOTATION ::=
                  "STATUS" Status
                  "DESCRIPTION" Text
                  ReferPart

    VALUE NOTATION ::=
                  value(VALUE OBJECT IDENTIFIER)

    Status ::=
                  "current"
                | "deprecated"
                | "obsolete"

    ReferPart ::=
                  "REFERENCE" Text
                | empty

    -- a character string as defined in [SMI]
    Text ::= value(IA5String)
END


-- syntax of attributes

-- the "base types" defined here are:
--   3 built-in ASN.1 types: INTEGER, OCTET STRING, OBJECT IDENTIFIER
--   7 application-defined types: Integer32, IpAddress, Unsigned32,
--         TimeTicks, Opaque, Integer64 and Unsigned64

ObjectSyntax ::=
    CHOICE {
        simple
            SimpleSyntax,

          -- note that SEQUENCEs for table and row definitions
          -- are not mentioned here...

        application-wide
            ApplicationSyntax
    }



McCloghrie, et al.          Standards Track                     [Page 6]

RFC 3159                          SPPI                       August 2001


-- application-wide types

ApplicationSyntax ::=
    CHOICE {
        ipAddress-value
            IpAddress,

        timeticks-value
            TimeTicks,

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?