Network Working Group Editors of this version:
Request for Comments: 2578 K. McCloghrie STD: 58 Cisco Systems Obsoletes: 1902 D. Perkins Category: 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
Structure of Management Information Version 2 (SMIv2)
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 (1999). All Rights Reserved.
Table of Contents
1 Introduction (3)
1.1 A Note on Terminology (4)
2 Definitions (4)
杨淑荣2.1 The MODULE-IDENTITY macro (5)
2.2 Object Names and Syntaxes (5)
2.3 The OBJECT-TYPE macro (8)
2.5 The NOTIFICATION-TYPE macro (10)
2.6 Administrative Identifiers (11)
3 Information Modules (11)
3.1 Macro Invocation (12)
3.1.1 Textual Values and Strings (13)
McCloghrie, et al. Standards Track [Page 1]
RFC 2578 SMIv2 April 1999 3.2 IMPORTing Symbols (14)
3.3 Exporting Symbols (14)
3.4 ASN.1 Comments (14)
3.5 OBJECT IDENTIFIER values (15)
3.6 OBJECT IDENTIFIER usage (15)
3.7 Reserved Keywords (16)
4 Naming Hierarchy (16)
5 Mapping of the MODULE-IDENTITY macro (17)
5.1 Mapping of the LAST-UPDATED clause (17)
5.2 Mapping of the ORGANIZATION clause (17)
5.3 Mapping of the CONTACT-INFO clause (18)
5.4 Mapping of the DESCRIPTION clause (18)
5.5 Mapping of the REVISION clause (18)
5.5.1 Mapping of the DESCRIPTION sub-clause (18)
5.6 Mapping of the MODULE-IDENTITY value (18)
5.7 Usage Example (18)
6 Mapping of the OBJECT-IDENTITY macro (19)
6.1 Mapping of the STATUS clause (19)
6.2 Mapping of the DESCRIPTION clause (20)
6.3 Mapping of the REFERENCE clause (20)
6.4 Mapping of the OBJECT-IDENTITY value (20)
6.5 Usage Example (20)
7 Mapping of the OBJECT-TYPE macro (20)
7.1 Mapping of the SYNTAX clause (21)
7.1.1 Integer32 and INTEGER (21)
7.1.2 OCTET STRING (21)
7.1.3 OBJECT IDENTIFIER (22)
7.1.4 The BITS construct (22)
7.1.5 IpAddress (22)
7.1.6 Counter32 (23)
7.1.7 Gauge32 (23)
7.1.8 TimeTicks (24)
7.1.9 Opaque (24)
7.1.10 Counter64 (24)
7.1.11 Unsigned32 (25)
7.1.12 Conceptual Tables (25)
7.1.12.1 Creation and Deletion of Conceptual Rows (26)
芍倍注射液
7.2 Mapping of the UNITS clause (26)
7.3 Mapping of the MAX-ACCESS clause (26)
7.4 Mapping of the STATUS clause (27)
7.5 Mapping of the DESCRIPTION clause (27)
7.6 Mapping of the REFERENCE clause (27)
7.7 Mapping of the INDEX clause (27)
7.8 Mapping of the AUGMENTS clause (29)
7.8.1 Relation between INDEX and AUGMENTS clauses (30)
7.9 Mapping of the DEFVAL clause (30)
7.10 Mapping of the OBJECT-TYPE value (31)
7.11 Usage Example (32)
McCloghrie, et al. Standards Track [Page 2]
RFC 2578 SMIv2 April 1999 8 Mapping of the NOTIFICATION-TYPE macro (34)
8.1 Mapping of the OBJECTS clause (34)
8.2 Mapping of the STATUS clause (34)
8.3 Mapping of the DESCRIPTION clause (35)
8.4 Mapping of the REFERENCE clause (35)
8.5 Mapping of the NOTIFICATION-TYPE value (35)
8.6 Usage Example (35)
9 Refined Syntax (36)
10 Extending an Information Module (37)
10.1 Object Assignments (37)
10.2 Object Definitions (38)
10.3 Notification Definitions (39)
11 Appendix A: Detailed Sub-typing Rules (40)
11.1 Syntax Rules (40)
11.2 Examples (41)
12 Security Considerations (41)
13 Editors’ Addresses (41)
14 References (42)
15 Full Copyright Statement (43)
1. 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]. It is the
purpose of this document, the Structure of Management Information
(SMI), to define that adapted subset, and to assign a set of
associated administrative values.
The SMI is divided into three parts: module definitions, object
definitions, and, notification 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.
McCloghrie, et al. Standards Track [Page 3]
RFC 2578 SMIv2 April 1999 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. Definitions
SNMPv2-SMI DEFINITIONS ::= BEGIN
-- the path to the root
org OBJECT IDENTIFIER ::= { iso 3 } -- "iso" = 1
dod OBJECT IDENTIFIER ::= { org 6 }
internet OBJECT IDENTIFIER ::= { dod 1 }
directory OBJECT IDENTIFIER ::= { internet 1 }
mgmt OBJECT IDENTIFIER ::= { internet 2 }
mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }
transmission OBJECT IDENTIFIER ::= { mib-2 10 }
experimental OBJECT IDENTIFIER ::= { internet 3 }
private OBJECT IDENTIFIER ::= { internet 4 }
enterprises OBJECT IDENTIFIER ::= { private 1 }
security OBJECT IDENTIFIER ::= { internet 5 }
snmpV2 OBJECT IDENTIFIER ::= { internet 6 }
-- transport domains
snmpDomains OBJECT IDENTIFIER ::= { snmpV2 1 }
-- transport proxies
snmpProxys OBJECT IDENTIFIER ::= { snmpV2 2 }
-- module identities
snmpModules OBJECT IDENTIFIER ::= { snmpV2 3 }
-
- Extended UTCTime, to allow dates with four-digit years
-- (Note that this definition of ExtUTCTime is not to be IMPORTed
-- by MIB modules.)
甜蜜家园
糖尿病论坛ExtUTCTime ::= OCTET STRING(SIZE(11 | 13))
-- format is YYMMDDHHMMZ or YYYYMMDDHHMMZ
McCloghrie, et al. Standards Track [Page 4]
RFC 2578 SMIv2 April 1999 -- where: YY - last two digits of year (only years
-- between 1900-1999)
-- YYYY - last four digits of the year (any year)
-- MM - month (01 through 12)
-- DD - day of month (01 through 31)
-- HH - hours (00 through 23)
-- MM - minutes (00 through 59)
-- Z - denotes GMT (the ASCII character Z)
--
-- For example, "9502192015Z" and "199502192015Z" represent
-- 8:15pm GMT on 19 February 1995. Years after 1999 must use
-- the four digit year format. Years 1900-1999 may use the
-- two or four digit format.
-- definitions for information modules
MODULE-IDENTITY MACRO ::=
风胸BEGIN
TYPE NOTATION ::=
"LAST-UPDATED" value(Update ExtUTCTime)
"ORGANIZATION" Text
"CONTACT-INFO" Text
"DESCRIPTION" Text
RevisionPart
VALUE NOTATION ::=
value(VALUE OBJECT IDENTIFIER)
RevisionPart ::=
Revisions
| empty
Revisions ::=
Revision
| Revisions Revision
Revision ::=
"REVISION" value(Update ExtUTCTime)
"DESCRIPTION" Text
-- a character string as defined in section 3.1.1
Text ::= value(IA5String)
END
OBJECT-IDENTITY MACRO ::=
TYPE NOTATION ::=
"STATUS" Status
"DESCRIPTION" Text
McCloghrie, et al. Standards Track [Page 5]
RFC 2578 SMIv2 April 1999 ReferPart
VALUE NOTATION ::=
value(VALUE OBJECT IDENTIFIER)
Status ::=
"current"
| "deprecated"
| "obsolete"
ReferPart ::=
"REFERENCE" Text
| empty
-- a character string as defined in section 3.1.1
Text ::= value(IA5String)
END
-- names of objects
-- (Note that these definitions of ObjectName and NotificationName
-- are not to be IMPORTed by MIB modules.)
ObjectName ::=
OBJECT IDENTIFIER
NotificationName ::=
OBJECT IDENTIFIER
-- syntax of objects
-- the "base types" defined here are:
-- 3 built-in ASN.1 types: INTEGER, OCTET STRING, OBJECT IDENTIFIER
-- 8 application-defined types: Integer32, IpAddress, Counter32,
-- Gauge32, Unsigned32, TimeTicks, Opaque, and Counter64 ObjectSyntax ::=
CHOICE {
simple
SimpleSyntax,
-- note that SEQUENCEs for conceptual tables and
-
- rows are not
application-wide
ApplicationSyntax
}
McCloghrie, et al. Standards Track [Page 6]