📄 rfc2579.txt
字号:
Network Working Group Editors of this version:Request for Comments: 2579 K. McCloghrieSTD: 58 Cisco SystemsObsoletes: 1903 D. PerkinsCategory: Standards Track SNMPinfo J. Schoenwaelder TU Braunschweig Authors of previous version: J. Case SNMP Research K. McCloghrie Cisco Systems M. Rose First Virtual Holdings S. Waldbusser International Network Services April 1999 Textual Conventions for SMIv2Status 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 (1999). All Rights Reserved.Table of Contents 1 Introduction ..................................................2 1.1 A Note on Terminology .......................................2 2 Definitions ...................................................2 3 Mapping of the TEXTUAL-CONVENTION macro ......................20 3.1 Mapping of the DISPLAY-HINT clause .........................21 3.2 Mapping of the STATUS clause ...............................22 3.3 Mapping of the DESCRIPTION clause ..........................23 3.4 Mapping of the REFERENCE clause ............................23 3.5 Mapping of the SYNTAX clause ...............................23 4 Sub-typing of Textual Conventions ............................23 5 Revising a Textual Convention Definition .....................23McCloghrie, et al. Standards Track [Page 1]RFC 2579 Textual Conventions for SMIv2 April 1999 6 Security Considerations ......................................24 7 Editors' Addresses ...........................................25 8 References ...................................................25 9 Full Copyright Statement .....................................261. Introduction 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 an adapted subset of OSI's Abstract Syntax Notation One, ASN.1 (1988) [1], termed the Structure of Management Information (SMI) [2]. 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 this document 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.1.1. A Note on Terminology For the purpose of exposition, the original Structure of Management Information, as described in RFCs 1155 (STD 16), 1212 (STD 16), and RFC 1215, is termed the SMI version 1 (SMIv1). The current version of the Structure of Management Information is termed SMI version 2 (SMIv2).2. DefinitionsSNMPv2-TC DEFINITIONS ::= BEGINIMPORTS TimeTicks FROM SNMPv2-SMI;-- definition of textual conventionsTEXTUAL-CONVENTION MACRO ::=McCloghrie, et al. Standards Track [Page 2]RFC 2579 Textual Conventions for SMIv2 April 1999BEGIN TYPE NOTATION ::= DisplayPart "STATUS" Status "DESCRIPTION" Text ReferPart "SYNTAX" Syntax VALUE NOTATION ::= value(VALUE Syntax) -- adapted ASN.1 DisplayPart ::= "DISPLAY-HINT" Text | empty Status ::= "current" | "deprecated" | "obsolete" ReferPart ::= "REFERENCE" Text | empty -- a character string as defined in [2] Text ::= value(IA5String) Syntax ::= -- Must be one of the following: -- a base type (or its refinement), or -- a BITS pseudo-type type | "BITS" "{" NamedBits "}" NamedBits ::= NamedBit | NamedBits "," NamedBit NamedBit ::= identifier "(" number ")" -- number is nonnegativeENDDisplayString ::= TEXTUAL-CONVENTION DISPLAY-HINT "255a" STATUS current DESCRIPTION "Represents textual information taken from the NVT ASCIIMcCloghrie, et al. Standards Track [Page 3]RFC 2579 Textual Conventions for SMIv2 April 1999 character set, as defined in pages 4, 10-11 of RFC 854. To summarize RFC 854, the NVT ASCII repertoire specifies: - the use of character codes 0-127 (decimal) - the graphics characters (32-126) are interpreted as US ASCII - NUL, LF, CR, BEL, BS, HT, VT and FF have the special meanings specified in RFC 854 - the other 25 codes have no standard interpretation - the sequence 'CR LF' means newline - the sequence 'CR NUL' means carriage-return - an 'LF' not preceded by a 'CR' means moving to the same column on the next line. - the sequence 'CR x' for any x other than LF or NUL is illegal. (Note that this also means that a string may end with either 'CR LF' or 'CR NUL', but not with CR.) Any object defined using this syntax may not exceed 255 characters in length." SYNTAX OCTET STRING (SIZE (0..255))PhysAddress ::= TEXTUAL-CONVENTION DISPLAY-HINT "1x:" STATUS current DESCRIPTION "Represents media- or physical-level addresses." SYNTAX OCTET STRINGMacAddress ::= TEXTUAL-CONVENTION DISPLAY-HINT "1x:" STATUS current DESCRIPTION "Represents an 802 MAC address represented in the `canonical' order defined by IEEE 802.1a, i.e., as if it were transmitted least significant bit first, even though 802.5 (in contrast to other 802.x protocols) requires MAC addresses to be transmitted most significant bit first." SYNTAX OCTET STRING (SIZE (6))McCloghrie, et al. Standards Track [Page 4]RFC 2579 Textual Conventions for SMIv2 April 1999TruthValue ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Represents a boolean value." SYNTAX INTEGER { true(1), false(2) }TestAndIncr ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Represents integer-valued information used for atomic operations. When the management protocol is used to specify that an object instance having this syntax is to be modified, the new value supplied via the management protocol must precisely match the value presently held by the instance. If not, the management protocol set operation fails with an error of `inconsistentValue'. Otherwise, if the current value is the maximum value of 2^31-1 (2147483647 decimal), then the value held by the instance is wrapped to zero; otherwise, the value held by the instance is incremented by one. (Note that regardless of whether the management protocol set operation succeeds, the variable- binding in the request and response PDUs are identical.) The value of the ACCESS clause for objects having this syntax is either `read-write' or `read-create'. When an instance of a columnar object having this syntax is created, any value may be supplied via the management protocol. When the network management portion of the system is re- initialized, the value of every object instance having this syntax must either be incremented from its value prior to the re-initialization, or (if the value prior to the re- initialization is unknown) be set to a pseudo-randomly generated value." SYNTAX INTEGER (0..2147483647)AutonomousType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Represents an independently extensible type identification value. It may, for example, indicate a particular sub-tree with further MIB definitions, or define a particular type of protocol or hardware." SYNTAX OBJECT IDENTIFIERInstancePointer ::= TEXTUAL-CONVENTION STATUS obsoleteMcCloghrie, et al. Standards Track [Page 5]RFC 2579 Textual Conventions for SMIv2 April 1999 DESCRIPTION "A pointer to either a specific instance of a MIB object or a conceptual row of a MIB table in the managed device. In the latter case, by convention, it is the name of the particular instance of the first accessible columnar object in the conceptual row. The two uses of this textual convention are replaced by VariablePointer and RowPointer, respectively." SYNTAX OBJECT IDENTIFIERVariablePointer ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A pointer to a specific object instance. For example, sysContact.0 or ifInOctets.3." SYNTAX OBJECT IDENTIFIERRowPointer ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Represents a pointer to a conceptual row. The value is the name of the instance of the first accessible columnar object in the conceptual row. For example, ifIndex.3 would point to the 3rd row in the ifTable (note that if ifIndex were not-accessible, then ifDescr.3 would be used instead)." SYNTAX OBJECT IDENTIFIERRowStatus ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The RowStatus textual convention is used to manage the creation and deletion of conceptual rows, and is used as the value of the SYNTAX clause for the status column of a conceptual row (as described in Section 7.7.1 of [2].)McCloghrie, et al. Standards Track [Page 6]RFC 2579 Textual Conventions for SMIv2 April 1999 The status column has six defined values: - `active', which indicates that the conceptual row is available for use by the managed device; - `notInService', which indicates that the conceptual row exists in the agent, but is unavailable for use by the managed device (see NOTE below); 'notInService' has no implication regarding the internal consistency of the row, availability of resources, or consistency with the current state of the managed device; - `notReady', which indicates that the conceptual row exists in the agent, but is missing information necessary in order to be available for use by the managed device (i.e., one or more required columns in the conceptual row have not been instanciated); - `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -