INTERNET DRAFT Expires November 29, 1993 ISO/CCITT and Internet Management Coexistence (IIMC): Translation of Internet MIBs to ISO/CCITT GDMO MIBs (IIMCIMIBTRANS) Draft 2 May 26, 1993 Lee LaBarre (Editor) The MITRE Corporation Burlington Road Bedford, MA 01730 cel@mbunix.mitre.org Status of this Memo This document provides information to the network and systems management community. This document is intended as a contribution to ongoing work in the area of multi-protocol management coexistence and interworking. This document is part of a package; see also [IIMCOMIBTRANS] [IIMCMIB-II] [IIMCPROXY] and [IIMCSEC]. Distribution of this document is unlimited. Comments should be sent to the Network Management Forum IIMC working group (iimc@thumper.bellcore.com). This document is an Internet Draft. Internet Drafts are working documents of the Internet Engineering Task Force (IETF), its Areas, and its Working Groups. Note that other groups may also distribute working documents as Internet Drafts. Internet Drafts are draft documents valid for a maximum of six months. Internet Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material or to cite them other than as a ``working draft'' or ``work in progress.'' Please check the 1id-abstracts.txt listing contained in the internet-drafts Shadow Directories on nic.ddn.mil, nnsc.nsf.net,nic.nordu.net, ftp.nisc.sri.com, munnari.oz.au to learn the current status of any Internet Draft. LaBarre Expires November 29, 1993 Page i Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 Abstract This document is intended to facilitate the multi-protocol management coexistence and interworking for networks that are managed using the ISO/CCITT Common Management Information Protocol (CMIP) and networks that are managed using the Internet Simple Network Management Protocol (SNMP). This document contains translation and registration procedures that are applicable to translation of Internet MIBs, defined according to the Internet Structure of Management Information (SMI), into ISO/CCITT SMI-defined MIBs. This document also defines and registers generic management information that may be used with the translation procedures to facilitate interoperability. Table of Contents Status of this Memo ......................................i Abstract .................................................ii Table of Contents ........................................ii Revision History .........................................iv 1.Introduction ...........................................1 1.1 Problem Statement ...................................1 1.2 Overview of IIMC ....................................1 1.3 MIB Translation Procedures ..........................2 1.4 Native Management Model .............................3 1.5 Proxy Management Model ..............................4 1.6 Scope of this Document ..............................5 1.7 Terms and Conventions ................................5 2. Registration and Naming Procedures ....................6 2.1 Registration Procedures ..............................6 2.1.1 Automated Registration Procedures ..................6 2.1.2 IIMC Explicit Registration Procedures ..............7 2.1.2.1 Object Classes and Attributes Registration .......8 2.1.2.2 Trap/Notification Registration ...................8 2.1.2.3 NAME BINDINGs Registration .......................9 2.1.2.4 Registration of ASN.1 Modules and IIMC Documents .9 2.2 Naming Procedures ....................................10 2.2.1 Naming Attribute ...................................10 2.2.2 ISO/CCITT-Internet Naming Tree .....................10 2.2.3 Distinguished Names ................................11 2.3 OID Translation ......................................11 2.3.1 OID/Name Translation ISO/CCITT to Internet ...............................11 2.3.2 OID/Name Translation Internet to ISO/CCITT ...............................13 2.4 Inheritance for Object Classes .......................15 2.5 Reference Labels for Derived Entities ................15 3. Internet to ISO/CCITT MIB Translation Procedures ......15 3.1 Pre-translation Procedures ...........................15 3.2 GDMO Translation Procedures ..........................18 3.2.1 Translation of Groups ..............................19 3.2.2 Translation of Table Objects .......................20 3.2.3 Translation of Table Entry Objects .................21 LaBarre Expires November 29, 1993 Page ii Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 3.2.4 Translation of Other OBJECT-TYPES ..................23 3.2.5 Translation of Notifications .......................26 3.2.6 Log Record for Internet Alarm. .....................27 3.2.7 Translation of Internet Attribute Types ............27 3.3 Post-translation Procedures ..........................29 3.3.1 Post-translation of BEHAVIOUR Cause ................29 3.3.2 Deletion of Derived MIB Elements ...................30 3.3.3 Creation of NAME BINDING Templates .................30 3.3.4 Attribute Property-label Changes ...................34 3.3.4.1 Create/Delete Attributes .........................34 3.3.4.2 Naming (INDEX) Attributes ........................34 4. IIMCIMIBTRANS MIB .....................................35 4.1 IMIBTRANS MIB GDMO Templates ........................35 -- 4.1.1 IMIBTRANS Managed Object Classes ...............35 -- 4.1.2 IMIBTRANS Attributes ...........................36 -- 4.1.3 IMIBTRANS Notifications ........................38 -- 4.1.4 IMIBTRANS Attribute Types ......................39 4.2 IMIBTRANS ASN.1 Modules .............................46 5. Acknowledgments .......................................50 References ...............................................51 Appendix A (Normative) Managed Object Conformance Statements (MOCS) ........53 Appendix B (Informative) Issues in Conceptual Table Translation ..............54 LaBarre Expires November 29, 1993 Page iii Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 Revision History Draft 0 - October 9, 1992 Initial draft of this document. Draft 1 - March 26, 1993 Previous draft of this document (replaced Draft 0). Draft 2 - May 26, 1993 Current draft of this document (replaces Draft 1). Major Changes Since Last Revision 1. Additional information added to the generic notification. Also changed the unknownVarBindList syntax to a choice between SNMPv1 and SNMPv2 syntax. 2. Updated references to reflect SNMPv2 changes. 3. All notifications are now emitted by the internetSystem object (if source agent known) or cmipsnmpProxyAgent (if source agent unknown). 4. Clarified naming hierarchy for translated MIBs. 5. Only single name bindings are now automatically assigned for translated objects. 6. Extended pre and post processing procedures. 7. Clarified that automatic and explicit registration procedures apply to entities registered under the IIMC with the NM Forum as registration authority. 8. Added a temporary Appendix B to describe issues related to translation of conceptual table objects. 9. Added a log record class related to the internetAlarm notification. 10.Changed post processing procedures to disallow creation and deletion of table entries by CMIS set attribute; now allowed only via CMIS create and delete operations. 11.Added post-translation checking to ensure that attributes used for naming table entries (derived from Internet indexing objects) may not be modified by CMIS operations except through the create/delete process. Their translated property-label must be GET. 12.Now allow multiple name bindings for the ISO system managed object (e.g., to root or to some other object class). 13.Changed ASN.1 syntax to use Internet syntax for attributes, including the syntax for counters and gauges. 14.Changed create and delete modifiers for name bindings to improve consistent translation of name bindings. 15.Put place holder for MOCS in normative Appendix A. 16.Added BEHAVIOUR clause to the name binding template and specified scannable behaviour for all BEHAVIOURs. 17.Removed CREATEDELETEATT and CREATEDELETEVALUE from the scannable behaviour for table entry objects and put them into the scannable behaviour for name bindings. All information relative to creation and deletion via CMIS or LaBarre Expires November 29, 1993 Page iv Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 SNMP is in the scannable behaviour for name binding. 18.Added scannable behaviour to attribute types. 19.Changed allowed operations and values for the rowStatus attribute type, and deleted most of text description. Outstanding Issues 1. Should we keep the current translation of Internet "conceptual" tables into ISO object classes (which we call table objects)? Is the convenience they provide for scoping sufficient to warrant their inclusion in the translated MIB? Appendix B provides a description of this issue; comments are solicited during review. 2. Can most current ASN.1 compilers handle ASN.1 macros (e.g., Internet MIB macros)? The current ASN.1 modules IMPORT some Internet MIB macros for the syntax that they contain (e.g., the TEXTUAL-CONVENTION macro). 3. What should internetAlarmRecords used for logging internetAlarms contain? Comments are solicited on this new object class defined in this draft. LaBarre Expires November 29, 1993 Page v Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 1.Introduction This section provides an overview of ISO/CCITT and Internet Management Coexistence (IIMC) activities, insight into the problem being addressed by IIMC, and a brief introduction to the strategy adopted by IIMC: use of translated MIBs in either a proxy or native implementation. The section concludes by describing the scope of this document, and terms and conventions used by this document. 1.1 Problem Statement The need for enterprise network management has been addressed by development of network management standards within various communities, most notably the ISO/CCITT and Internet communities. - The ISO/CCITT community developed the Common Management Information Protocol (CMIP) [ISO9596-1], and related SMI documents [ISO10165-1,2,4]. - The Internet community developed the Simple Network Management Protocol (SNMP) [RFC1157], and its successor, SNMPv2 [RFC1448]. The Internet SMI is defined in [RFC1155] and [RFC1442]. These standards share a nearly common management model, but diverge due to differing management philosophies. Although functionally similar, the Internet and ISO/CCITT protocols and SMIs differ in terms of their complexity and specific operations. Business requirements for end-to-end enterprise management include the need to integrate the management of components accessed by ISO/CCITT management, Internet management, and proprietary management mechanisms in a manner which presents a unified view of the network, despite protocol and SMI differences. For example, many telecommunications and computer vendors, represented by organizations such as the Network Management Forum (NMF), and the U.S. government, as specified in the Government Network Management Profile (GNMP), have based their enterprise management model on the ISO/CCITT management model. These organizations are particularly interested in integrated management of devices that use the Internet management. This interest is primarily due to the widespread commercial implementation and use of such devices, especially devices that use the Internet TCP/IP protocol suite. 1.2 Overview of IIMC This document is part of a package of ISO/CCITT and Internet Management Coexistence (IIMC) drafts. Documents included in this package are: LaBarre Expires November 29, 1993 Page 1 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 [IIMCIMIBTRANS] Translation of Internet MIBs to ISO/CCITT GDMO MIBs [IIMCOMIBTRANS] Translation of ISO/CCITT GDMO MIBs to Internet MIBs [IIMCMIB-II] Translation of Internet MIB-II (RFC1213) to ISO/CCITT GDMO MIB [IIMCPROXY] ISO/CCITT to Internet Management Proxy [IIMCSEC] ISO/CCITT to Internet Management Security These documents together comprise a package aimed at integrating ISO/CCITT-based and Internet-based management systems. These documents represent coexistence and interworking efforts underway within the IIMC working group, chartered under the auspices of the Network Management Forum Architecture Integration ISO/Internet (AIII) technical team. The IIMC intends to address the problem that end-to-end management requires an integrated, unified view of the managed network, despite differences in management protocol and information structure. Integrated management can be facilitated by the development of "proxy" mechanisms which translate between functionally equivalent service, protocol, and SMI differences to create this unified view. MIB translation procedures can be used to support proxy management, as well as to take advantage of existing MIB definition and avoid duplication of effort. In this way, commercial investment in both ISO/CCITT and Internet- based management technologies can be preserved through deployment of common methods and tools which support integration. This overall strategy was outlined in a joint publication developed by the NM Forum and X/Open entitled "ISO/CCITT and Internet Management: Coexistence and Interworking Strategy" [NMFTR107]. The documents included in the IIMC package are the next level of detailed specifications which implement several of the methodologies identified in the strategy. 1.3 MIB Translation Procedures The foundation of IIMC is provided by a pair of Management Information Base (MIB) translation procedures. - [IIMCIMIBTRANS] specifies translation procedures for converting MIBs from Internet MIB macro format into ISO/CCITT GDMO template format. - [IIMCOMIBTRANS] specifies translation procedures for converting MIBs from ISO/CCITT GDMO template format into Internet MIB macro format. LaBarre Expires November 29, 1993 Page 2 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 The IIMC approach is to specify direct translation procedures which yield a pair of functionally-equivalent MIBs, as shown in the following figure. +----------------+ +--------------------+ +----------------+ | Internet MIB | | MIB Translation | | GDMO MIB | | | | Procedures | | | | Format = | | Specified By | | Format = | | [RFC1212] & |---->| [IIMCIMIBTRANS] or |---->| [ISO10165-1] & | | [RFC1442] |<----| [IIMCOMIBTRANS] |<----| [ISO10165-4] | +----------------+ +--------------------+ +----------------+ MIBs translated by these procedures may be used to take advantage of existing MIB definitions when business needs require deployment in a different management environment. Translated MIBs may also be used to provide uniformity when multiple management environments are supported by a single system (e.g., dual stack managers). Finally, IIMC MIB translation procedures may be used to support service emulation by a proxy. 1.4 Native Management Model The basic model for ISO/CCITT and Internet management is illustrated in the following diagram. Manager Agent +-----------------------+ +----------------------+ |+---------------------+| |+-------------------+ | || Management || || Managed | | || Applications || || Resources | | |+---------------------+| |+-------------------+ | | | | | | | | | | | | | |+-----------+---------+| |+----------+---------+| || Manager | MIB || || Agent | MIB || |+-----------+---------+| |+----------+---------+| | | | | | | | | Management | | | Management | | | Services | | | Services | +-----------------------+ +----------------------+ | Management Protocol | | Management Protocol | +-----------------------+ +----------------------+ ^ ^ | | +------------------------------------+ Protocol Messages Within IIMC documents, this model is referred to as the "native" management model. MIBs translated using IIMC procedures can be used by "native" agent implementations. For example, an ISO/CCITT agent can make visible TCP/IP managed resources using the translated GDMO version of the Internet MIB-II [RFC1213] specified by [IIMCMIB-II]. Dual-stack managers or agents may LaBarre Expires November 29, 1993 Page 3 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 also be implemented which support both the original MIB and the translated MIB generated using IIMC-specified procedures. 1.5 Proxy Management Model The basic model for ISO/CCITT to Internet proxy management is illustrated in the following diagram. This proxy is specified by [IIMCPROXY]. A similar approach could also be taken to specify an Internet to ISO/CCITT proxy, although no such IIMC document is currently specified. Manager Proxy Agent +-----------------------+ +---------------------+ +----------------------+ |+---------------------+| |+------+ +----------+| |+-------------------+ | || Management || || GDMO | | Internet || || Managed | | || Applications || || MIB | | MIB || || Resources | | |+---------------------+| |+------+ +----------+| |+-------------------+ | | | | |+-------------------+| | | | | | | || Service || | | | | | | || Emulation || | | | | | | ||(scoping) || | | | | | | || (filtering) || | | | | | || (operations)|| | | | |+-----------+---------+| |+-------------------+| |+----------+---------+| || ISO/CCITT | GDMO || || Protocols Mapping || || Internet | Internet|| || Manager | MIB || || CMIS |...| SNMP || || Agent | MIB || |+-----------+---------+| |+-------------------+| |+----------+---------+| | | | | |CMIS | | | | | | | CMIS Services | | |Services | | | | SNMP "Services" | | | | | | | | | | | | | | | | SNMP| | | | | | | | | | "Services"| | | | | +-----------------------+ +---------------------+ +----------------------+ | CMIP | | CMIP | SNMP | | SNMP | +-----------------------+ +---------------------+ +----------------------+ ^ ^ ^ ^ | | | | +---------------------+ +-------------------+ CMIP Messages SNMP Messages This ISO/CCITT to Internet proxy provides emulation of CMIS services by mapping to the corresponding SNMP message(s) necessary to carry out the service request. The service emulation allows management of Internet objects by an ISO/CCITT manager. The left hand side of the proxy behaves like an ISO/CCITT agent, communicating with the ISO/CCITT manager using CMIP protocols. The right hand side of the proxy behaves like an Internet manager, communicating with the Internet agent using SNMP protocols. The proxy relies on the existence of a pair of directly-related MIB definitions, where the Internet MIB has been translated into ISO/CCITT GDMO using the procedures specified in [IIMCIMIBTRANS]. The proxy uses these MIB definitions and rules LaBarre Expires November 29, 1993 Page 4 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 to provide run-time translation of management information carried in service requests and responses. The proxy is designed with a specified interface between the proxy and the underlying protocol stacks, and so deals primarily in terms of CMIS services and SNMP "services". The proxy emulates services such as CMIS scoping and filtering, processing of CMIS operations, and forwarding/logging of CMIS notifications by performing a mapping process which must be tailored for each protocol (for example, SNMPv1 and SNMPv2 are variants of the same protocol mapping process). 1.6 Scope of this Document A major reason for the rapid commercialization of devices manageable via the Internet management protocol is due to the speed with which the vendors in the Internet community have been able to develop MIBs based on the Internet SMI. To capitalize on this continuing Internet MIB development and their deployment in commercial devices, communities interested in integrated management via ISO/CCITT-Internet proxies require that procedures be defined for translation of Internet MIBs into ISO/CCITT GDMO MIBs, i.e., MIBs defined according to the ISO/CCITT SMI Guidelines for Definition of Managed Objects [ISO10165-4]. Communities interested in using ISO/CCITT management protocols to directly manage resources using the Internet defined MIB elements are also interested in MIB translation procedures. Such MIB translations may also minimize the independent development of ISO/CCITT GDMO MIBs for the same resources and thereby reduce the incompatibilities with the Internet MIBs. Translation procedures which may be automated to a high degree, and include unambiguous automated registration procedures, are of particular interest to the communities interested in using GDMO translations of Internet MIBs. This document (IIMCIMIBTRANS) defines such procedures. This document also defines generic SNMP trap to CMIS notification mappings, common naming conventions, and ASN.1 modules applicable to translated Internet MIBs. Many of the procedures defined in this document may be subject to automation. Comments are provided concerning possible aids to automation; however, it is not the intent of this document to provide fully automated translation algorithms. 1.7 Terms and Conventions This document assumes that the reader is familiar with the ISO/CCITT SMI and Internet SMI, and the terminology of each. The term SNMP will be used throughout the document to indicate either SNMPv1 or SNMPv2, unless a distinction needs to be made. LaBarre Expires November 29, 1993 Page 5 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 Other conventions used during the translation process are described in Section 3.2. 2. Registration and Naming Procedures Registration and naming procedures are crucial to the unique identification of management information. Registration assures the uniqueness of management information element types, while naming provides a way of distinguishing instances of a type and locating them within the MIB. 2.1 Registration Procedures Registration procedures specify that changes in the syntax or semantics of registered entities require them to be registered as new entities. The process of converting Internet MIBs into the ISO/CCITT GDMO MIBs inevitably introduces subtle semantic changes in how data can be operated on, and changes in the content of the MIB element. For example, ISO/CCITT attributes that are converted from Internet Object Types acquire matching rules for use in filtering operations. ISO/CCITT object classes that are created from Internet groups acquire semantics related to their inheritance of new attributes from the "top" managed object class. The end result is that all the new ISO/CCITT object classes, attributes, and notifications created during the translation process must be registered. In addition, name bindings for inserting object instances into the naming hierarchy must be registered. 2.1.1 Automated Registration Procedures Registration procedures are critical to the goals of automating the translation of Internet MIBs to ISO/CCITT GDMO format, and the efficient implementation of ISO/CCITT-Internet proxies. Registration involves assignment of an ASN.1 Object Identifier (OID) to the entity. Management entities defined according to the principles of the Internet SMI may be registered under the IAB's "internet" arc, or registered under an arc in another organization's proprietary registration subtree. Since OIDs can be guaranteed to be unique across organizations only within the context of the uppermost registration hierarchy, this document uses the entire OID to prevent ambiguity. The effect of the registration procedure specified in this document is to graft the entire OID to another part of the registration tree, without changing the OID structure. Registration is accomplished by the following procedure: a) determine the sequence of sub-identifiers of the OID assigned to the internet management entity, beginning at the root of the registration tree, and identify that sequence as , LaBarre Expires November 29, 1993 Page 6 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 NOTE: Remember, the first part of the ASN.1 encoded OID must be translated into two sub-identifiers. b) determine the translated OID {} as: {} = { } where is the OID dedicated for ISO/CCITT- Internet automated registration procedures. This procedure preserves the unique identification of the entities within the Internet subtree, and entities identified by OIDs that are registered by other organizations. Internet defined groups and objects must be registered as ISO/CCITT object classes and attributes; and Internet traps must be registered for inclusion in as ISO/CCITT notifications. This document allocates an arc in the registration hierarchy for use in automated registration of management elements defined according to IIMC procedures defined in this document. The arc is named "iimcAutoTrans". iimcAutoTrans OBJECT IDENTIFIER ::= {...TBD...} Editor's Note: [This TBD value to be provided prior to publication.] 2.1.2 IIMC Explicit Registration Procedures Automated registration procedures alone are not sufficient to support the translation process. ISO/CCITT management entities other than translated objects, attributes, and Internet traps, need to be explicitly registered. These entities include: - name bindings for object classes, - ASN.1 modules that may be referenced for inclusion in other ASN.1 modules of other documents, - documents to enable MIB elements and attribute types defined in one document to be referenced within other documents, - IIMC defined management elements, such as the generic notification defined in this document and the IIMC proxy MIB defined in [IIMCPROXY]. This document allocates an arc in the registration hierarchy for explicitly registering IIMC management entities. The arc is named "iimcManagement". This document assigns sub-arcs under the "iimcManagement" arc in the ASN.1 module in section 4.2. LaBarre Expires November 29, 1993 Page 7 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 The following paragraphs describe IIMC registration procedures to facilitate automated translation and assure uniqueness of registered ASN.1 object identifiers for ISO/CCITT object classes and attributes derived from internet entities; and a registration procedure for their name bindings. 2.1.2.1 Object Classes and Attributes Registration Follow the procedure described in section 2.1.1 for OIDs associated with Internet groups, conceptual tables, conceptual table entries, and objects. 2.1.2.2 Trap/Notification Registration Internet traps/notifications and informRequests are not considered by the Internet SMI to be associated with any one object or group. The ISO/CCITT SMI, however, requires that a notification be emitted by a specific object instance. Therefore, determining which ISO/CCITT managed object class should emit specific internet traps/notifications is problematic. This document defines a generic IIMC notification, internetAlarm (see 3.2.5 and 4.1.3) that is used to carry all Internet traps/notifications and informRequests. This notification is to be emitted according to the conditions described in section 3.2.5 either by the internetSystem managed object defined in [IIMCMIB-II] and derived from the internet system group defined in [RFC1213], or by the cmipsnmpProxyAgent managed object defined in [IIMCPROXY]. However, each Internet defined trap/notification and informRequest must be registered such that they may be differentiated within the IIMC generic notification. Internet traps/notifications are registered using the OID corresponding to the value of the Internet snmpTrapOID object defined in [RFC1450]. For SNMPv1 trap PDUs, the snmpTrapOID is derived as stated in the SNMPv1/SNMPv2 Coexistence document [RFC1452] 3.1.2(2). That definition is repeated below: "... if the value of the generic-trap field is 'enterpriseSpecific' then the value used is the concatenation of the enterprise field from the trap PDU with two additional sub- identifiers, '0', and the value of the specific-trap field." For notifications, informRequests, defined according to the SNMPv2 SMI, the registered OID is the value of the snmpTrapOID. The registered OID for the Internet trap/notification is then used as the value for the probableCause field of the IIMC generic notification, internetAlarm, as defined in section 3.2.5 and 4.1.3. LaBarre Expires November 29, 1993 Page 8 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 2.1.2.3 NAME BINDINGs Registration As described in section 2.2.2 , the ISO/CCITT SMI requires that managed object instances be bound into a naming hierarchy, or tree, for purposes of naming. ISO/CCITT NAME BINDING templates are used to register the manner in which such instances may be bound. These name bindings shall be registered. The Internet SMI does not include the concept of a naming tree and name binding. Thus, there exists no registered internet entity from which an OID for the ISO/CCITT NAME BINDING template can be derived. One solution is to use the object class OID to register name bindings under a special registration arc {iimcManagementNB}. The following procedure is recommended for registration of a single name binding for an object class to be inserted into the naming hierarchy, i.e., the subordinate object class: - Assign each new name binding an OID, using the following rules. Start with the OID for the subordinate object class, derived using the procedures in section 2.1.1. Within the class OID, extract the (c) portion of the OID. Prepend iimcManagementNB to the (c) so that the OID for the name binding is of the form: {iimcManagementNB (c)} Note: in general multiple name bindings may be defined for an OSI object class. However the automated registration procedures defined in this document only provide for a single name binding. This facilitates the proxy translation process, especially for received traps/notifications and informRequests. 2.1.2.4 Registration of ASN.1 Modules and IIMC Documents ASN.1 modules defined in IIMC documents are registered under the {iimcManagementModule} arc. Modules derived for MIBs defined in Internet RFC are registered under the iimcManagementModAuto arc by concatenating the RFC number onto that arc. If multiple RFCs are included in the translation, then the RFC numbers shall be concatenated to iimcManagementModAuto in ascending sequence. Explicit registration of other ASN.1 modules within the IIMC sub-tree shall be under the iimcManagementModMan arc. IIMC documents are registered under the {iimcManagementDoc} arc. Documents derived from MIBs defined in Internet RFCs are registered under the iimcManagementDocAuto arc by concatenating the RFC number onto that arc. If multiple RFCs are included in the translation, then the RFC numbers shall be concatenated to iimcManagementDocAuto in ascending sequence. Explicit registration of other documents within the IIMC sub-tree shall be under the iimcManagementDocMan arc. LaBarre Expires November 29, 1993 Page 9 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 The registration authority for the iimcManagementModule and iimcManagementDoc arcs shall be the Network Management Forum. 2.2 Naming Procedures ISO/CCITT objects are identified by specifying read-only attributes within the object class as naming attributes. The naming attribute is used to form the relative distinguished name of the object instance. The sequence of relative distinguished names that trace the path in the naming hierarchy from the root to the object forms a distinguished name that uniquely identifies the object instance. 2.2.1 Naming Attribute The conversion of Internet MIBs into ISO/CCITT GDMO MIBs requires that naming attributes be defined and registered for each ISO/CCITT object class derived from Internet management entities. This paper specifies a generic naming attribute, internetClassId, and the conventions for its value definition, to facilitate automated generation of naming attributes for object classes derived from Internet MIBs. This generic naming attribute is applicable to all ISO/CCITT object classes derived from Internet defined MIBs. The format for the values of the internetClassId naming attribute is compatible with instance identification conventions used by the Internet, thereby facilitating the automated conversion of Internet MIBs into ISO/CCITT SMI format and the name mapping required for proxy management. The internetClassId is defined in section 4.1.2. 2.2.2 ISO/CCITT-Internet Naming Tree The ISO/CCITT SMI requires that managed object instances (conventionally just called managed objects) be bound into a naming hierarchy, or tree, for purposes of naming. This hierarchy is often called the containment hierarchy. The binding must specify for each managed object class: the object class which is superior to it in the containment hierarchy; and a naming attribute in the object class that is used to distinguish instances of the object class at a given level in the hierarchy. The name binding is specified after the object class has been defined. LaBarre Expires November 29, 1993 Page 10 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 2.2.3 Distinguished Names The distinguished name (DN) of a managed object consists of a sequence of relative distinguished names (RDN), one for each managed object on the naming path from the root to the managed object. Each relative distinguished name contains exactly one attribute, the "naming" attribute for the corresponding class, as specified by a NAME BINDING template. This DN is used as the CMIP ManagedObjectInstance or BaseObjectInstance parameter for identifying managed objects. For example, a distinguished name designating a particular routing table entry (of class ipRouteEntry) might be: { {systemId = {troi.mitre.org} -- ISO/CCITT system {internetClassId = {iimcAutoTrans 1 3 6 1 2 1 4 0}} -- ip {internetClassId = {iimcAutoTrans 1 3 6 1 2 1 4 21 0}} -- ipRouteTable {internetClassId = {iimcAutoTrans 1 3 6 1 2 1 4 21 1 129 83 217}} -- ipRouteEntry } Note: the beginning of the above example distinguished name is implementation dependent. For example, the naming attribute for the system object could have been chosen to be the systemTitle attribute instead of the systemId attribute, and the system object could have been bound to object classes other than root. 2.3 OID Translation The procedures required to translate between Internet registered OIDs and names, and ISO/CCITT registered attribute and class OIDs are described in this section. 2.3.1 OID/Name Translation ISO/CCITT to Internet The general procedure for deriving ISO/CCITT registered OIDs from Internet OIDs was explained in section 2.1, and the structure of the naming attribute value was explained in section 2.2. This paragraph explains how the information used in an ISO/CCITT class OID, attribute OID, and the naming attribute value may be used to create the identifier for naming Internet objects. The following definitions apply: ((c) and (a) refer to class and attribute, respectively) From 2.1, {classOID} ::= {iimcAutoTrans LaBarre Expires November 29, 1993 Page 11 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 (c)} and {attributeOID} ::= {iimcAutoTrans (a)} For example, examine the ipRouteEntry object class OID: ipRouteEntry ::= {iimcAutoTrans 1 3 6 1 2 1 4 21 1} where (c) ::= 1 3 6 1 2 1 4 21 1, and an attribute that belongs ipRouteEntry, ipRouteNextHop: ipRouteNextHop ::= {iimcAutoTrans 1 3 6 1 2 1 4 21 1 7} where (a) ::= 1 3 6 1 2 1 4 21 1 7. Note that the attribute (a) for ipRouteNextHop is equal to (c) for its associated object class, ipRouteEntry, with the sub-identifier (7) appended to it. Most of the time the relationship: (a) ::= (c) is true for translated MIB attributes. This property is useful for determining the object class and object instance with which an attribute may be associated during run-time translation of Internet object instances contained in SNMP response PDUs and traps/notifications. Note: when attributes that were not a part of the original Internet group, table, or table entry, are included in a translated object class, then this relationship is not valid. For example, derived attributes assigned to an object class because their inclusion was indicated by an SNMPv2 AUGMENTS clause, as discussed in section 3.1. From 2.2, the ISO/CCITT naming attribute value contains the OID formed as, (the "( )" indicates "contents of"): (naming attribute) ::= {iimcAutoTrans (c) } where the , the OID created uniquely for each Internet object instance, is "0" for object classes that may only have a single instance. The for object classes that may have multiple instances is an OID fragment derived from the values of the internet objects identified in the INDEX (or AUGMENTS) clause of the Internet LaBarre Expires November 29, 1993 Page 12 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 Macro from which the object class is derived, as defined in [RFC1155] or [RFC1442]. For example, the ISO/CCITT naming attribute value for the instance of ipRouteEntry specific to IP address 129 83 2 17 is {iimcAutoTrans 1 3 6 1 2 1 4 21 1 129 83 2 17}, where (c) ::= 1 3 6 1 2 1 4 21 1, and ::= 129 83 2 17. The Internet uses the following convention to uniquely identify an Internet object instance: {internet object name}::= {(a) } For example, the internet object name for ipRouteNextHop corresponding to IP address 129 83 2 17 is {1 3 6 1 2 1 4 21 1 7 129 83 2 17}, where (a) ::= 1 3 6 1 2 1 4 21 1 7, ::=129 83 2 17. Therefore, given the contents of the naming attribute for the ISO/CCITT object instance being accessed, the is extracted. Given the attributeOID for the attribute being operated upon, the (a) is extracted. The {internet object name} is then formed from the results. For example, assume that a CMIS request is issued specifying a distinguished name for an ipRouteEntry managed object as illustrated in section 2.2.3; and an attribute for ipRouteEntry, say ipRouteNextHop. The ipRouteNextHop attribute has been assigned the identifier {iimcAutoTrans 1 3 6 1 2 1 4 21 1 7} in the MIB defined in [IIMCMIB-II]. Therefore, the ipRouteNextHop attribute identifier would first have to be translated into the corresponding Internet identifier {1 3 6 1 2 1 4 21 1 7} by stripping off the iimcAutoTrans portion of the OID. Then, from the RDN value for the ipRouteEntry extract the {129 83 217}. Finally the Internet identification for this piece of management information would be constructed according to [RFC1213] as {ipRouteNextHop 129 83 2 17}, or equivalently, {1 3 6 1 2 1 4 21 1 7 129 83 2 17}. The agent with which this information resides is identified (see 2.2.3), by the RDN for the system managed object naming attribute, e.g., the "systemId", as "troi.mitre.org." 2.3.2 OID/Name Translation Internet to ISO/CCITT Internet to ISO/CCITT OID/name translation is only necessary when used during run-time proxy translation. At run-time internet identifiers are provided as internet object names in SNMP responses and traps/notifications. The internet object names are of the form described in section 2.3.1. Although actual translation is required only during run-time in proxy implementations, the translation properties, and information LaBarre Expires November 29, 1993 Page 13 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 that may be obtained, must be understood in order to properly define the structure of the IIMC generic notification, internetAlarm, defined in section 3.2.5. Given the definitions shown in section 2.3.1, and knowledge of the IIMC naming hierarchy (name bindings), the ISO/CCITT {classOID},{attributeOID}, and distinguished name can be derived from Internet names and the Internet agent address. - The iimcAutoTrans OID is known. - Using knowledge of the internet name structure as described in section 2.3.1, and knowledge of valid (a) values known to the proxy, the (a) and may be extracted from the internet name. Note: The extraction process is not possible if the valid (a) value is not known to the proxy. The translation process cannot be performed. - The ISO/CCITT attribute OID is formed as: {iimcAutoTrans (a)} - the ISO/CCITT class OID may be determined in one of two ways: i) assume that the (a) contains the object class OID, (c), with which the attribute may be associated, as discussed in section 2.3.1. Then stripping off the final component of the OID will yield the (c). The object class OID is then formed as {iimcAutoTrans (c)}. However, see the note in section 2.3.1. ii) use a safer approach, and determine the class OID by looking up the ISO/CCITT object class OID to which the attribute identified as {iimcAutoTrans (a)} belongs. - The managed object instance value, the object's DN, may be determined as follows: a) the value of the naming attribute associated with the object class may be formed as: {iimcAutoTrans (c) } b) the naming attribute value, and the internetClass OID defined in section 2.2.1, are used to form the final RDN for the object's DN. The sequence of other RDNs for the DN are determined from knowledge of the naming hierarchy defined for proxy [IIMCPROXY], i.e., the IIMC proxy name bindings, and the Internet agent's address. LaBarre Expires November 29, 1993 Page 14 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 Note: if the Internet agent's address cannot be determined, then it may not be possible to associate a response or notification with a specific agent. This may be a problem if multiple Internet agents are associated with the same network address. 2.4 Inheritance for Object Classes The "top" class defined by [ISO10165-2] is the ultimate superior in the ISO/CCITT inheritance hierarchy. The class "top" contains attributes which are inherited by all managed object classes that are defined using the ISO/CCITT SMI and GDMO templates. Not all attributes of "top" need to be instantiated in any single managed object. All objects shall instantiate the mandatory "objectClass", and "nameBindings" attributes. If conditional packages may apply, an object shall instantiate the "packages" attribute. 2.5 Reference Labels for Derived Entities The labels used to reference Internet entities (groups, objects, traps) shall be used to reference the corresponding templates for the derived ISO/CCITT entity (object class, attribute, notification). 3. Internet to ISO/CCITT MIB Translation Procedures The procedures for translating Internet SMI MIBs into ISO/CCITT SMI MIBs consist of pre-translation procedures, GDMO template translation procedures, and post-translation procedures. Many of the procedures are subject to automation; some are not. Comments are provided concerning possible aids to automation; however, it is not the intent of this document to provide fully automated translation algorithms. 3.1 Pre-translation Procedures Pre-translation procedures are outlined below. The rationale for steps (a) - (e) is that the ISO/CCITT object classes and associated attributes must be identified. The rationale for steps (f) - (g) is that all ASN.1 syntax references in templates must be an ASN.1 External type reference or External value reference, i.e., must reference a label that appears on the left side of an ASN.1 construct within some ASN.1 module that appears in the document that defines the derived MIB. Internet MIBs often reference basic ASN.1 constructs, such as INTEGER and OCTET STRING, which must be converted into an External type reference. Default values must reference an External value reference. (a) Identify Internet groups and OBJECT-TYPEs associated with each group. For SNMPv2 defined MIBs, the OBJECT-GROUP macro LaBarre Expires November 29, 1993 Page 15 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 includes this information. For SNMPv1 defined MIBs, the group may be identified manually and then the members of the group identified by the fact that their OIDs contain the group object identifier. For SNMPv1 defined MIBs, procedure (c) must be followed. (b) Identify conceptual table OBJECT-TYPEs, conceptual table entry (row) OBJECT-TYPEs associated with each table, and columnar OBJECT-TYPEs associated with each conceptual table entry. Note: For SNMPv2 defined MIBs, the MAX-ACCESS clause of the conceptual table and entry OBJECT-TYPES macro will have a value of 'not-accessible', and the convention often used is to include the word "Table" or "Entry" in the macro label. Once a conceptual table has been identified, the corresponding conceptual entry OBJECT-TYPE macro can be identified via its registered object identifier through the convention of appending a 1 to the table object identifier. Alternatively, the conceptual table's SYNTAX clause may be examined to determine the label of the corresponding conceptual entry Macro. SNMPv1 defined MIBs are not so consistent in their use of "not- accessible"; however, the other conventions apply. Note: For SNMPv2 defined MIBs, tables may be defined with table entries that augment (SNMPv2 AUGMENT clause) entries for an existing table. The table object classes derived from such tables will be deleted from the ISO/CCITT MIB during post- translation (see 3.3.2). The table entry object class for the deleted table will be bound to the table entry object class that corresponds to the reference in the AUGMENTS clause. (c) For each group, the OBJECT-TYPEs not identified in procedure (b), and not having an ACCESS or MAX-ACCESS clause value of "not-accessible", are identified for translation into attributes of an ISO/CCITT object class associated with the group. The OBJECT-TYPEs that have an ACCESS or MAX-ACCESS clause of 'not-accessible' are not translated. (d) For each conceptual table entry OBJECT-TYPE, the set (set1) of columnar OBJECT-TYPEs associated with the table entry are identified for translation into ISO/CCITT attributes of an ISO/CCITT object class associated with the entry. Another set (set2) of OBJECT-TYPES identified in the INDEX clause of the conceptual table entry OBJECT-TYPE are also identified for inclusion in the class. If the AUGMENTS clause is present, then the INDEX clause of the conceptual table entry OBJECT-TYPE pointed to by the AUGMENTS clause identifies the elements of (set2). The union of these two sets constitutes the set of ISO/CCITT attributes associated with the table entry object class. All OBJECT-TYPEs are translated, including those that have an ACCESS or MAX-ACCESS clause of 'not-accessible'. LaBarre Expires November 29, 1993 Page 16 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 Note: The set of columnar OBJECT-TYPES associated with a table entry can be identified by the SYNTAX clause for the OBJECT-TYPE for the conceptual table entry. The SYNTAX clause is of the form: SEQUENCE OF where includes the label of an OBJECT-TYPE included in the conceptual table entry. (e) For each conceptual table, an ISO/CCITT object class is created that contains the generic naming attribute "internetClassId". (f) Create an ASN.1 module for use in the GDMO template translations. Create an IMPORTS clause for the module and include in it the syntax to be imported from other modules. This may be done by including the parameters for the IMPORTS clause encountered in the Internet module. (An alternative is to import the syntax for attribute types defined in this document from the IimcCommonDef module. However, not all of the syntax may be needed, and some necessary syntax may be omitted for attribute types defined in other MIBs.) When any Internet TEXTUAL-CONVENTIONS macros that may be present in the Internet module are translated according to the procedures of 3.2.7, the resulting ASN.1 syntax shall be included in the new ASN.1 module. TEXTUAL-CONVENTIONS macros should be translated first so that these ASN.1 constructs may be used during the translation of OBJECT-TYPE macros. For each OBJECT-TYPE that is to be translated into an ISO/CCITT attribute, check the value of the SYNTAX clause, and if it is not a syntax included in the IMPORTS clause of the new ASN.1 module, or defined using an SNMPv2 TEXTUAL-CONVENTION macro, then do one of the following: i) If the value is not an External type reference: create an External type reference for the value in the SYNTAX clause and put it into the ASN.1 module. The label for the External type reference shall be the attribute label with the first letter capitalized. ii) If the value is an External type reference put the External type reference syntax into the ASN.1 module. g) If a DEFVAL clause is present, create an External value reference which has the type indicated by the OBJECT-TYPE SYNTAX clause and is assigned the value of the DEFVAL clause. The label for the External value reference shall be the attribute label preceded by "c-" (lower case letter "c"). Place the External value reference into the ASN.1 module created in f). LaBarre Expires November 29, 1993 Page 17 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 For example, the following would be a valid value references (assuming StorageType was declared in, or imported to, the same ASN.1 module): c-contextStorageType StorageType ::= nonVolatile c-xyz INTEGER ::= 100. h) If the ASN.1 module for the Internet MIB definition contains ASN.1 value assignments, then the syntax for those value assignments pertinent to the translation shall either be placed in the ASN.1 module created in (f) or imported into the module using an External value reference. Note: It is recommended that a syntax that is used more than once in the MIB to be translated be defined just once in the new ASN.1 module created in (f) and referenced repeatedly. Examples of such commonly referenced types are INTEGER, OCTET STRING, and OBJECT IDENTIFIER. 3.2 GDMO Translation Procedures Readers of this document are assumed to have familiarity with the GDMO templates and their format. The templates presented here should be considered exemplar, and not definitive. The GDMO templates in this paragraph contain elements indicated by "< x >", where "x" is to be interpreted and the result substituted into the template. The "||" symbol indicates concatenation of elements. Adjacent elements that are not concatenated shall be separated by at least one space. The "[ ]" symbols surrounding a construct indicate that it maybe present or absent in any particular instance of the template. The "[ ]*" symbols surrounding a construct indicate that it may be present or absent in any particular instance of the template an undefined number of times. An "|" symbol is used to indicate that a choice must be made between alternate constructs. The "!" symbol is used to delimit text strings in the templates. Other delimiters may be used, as specified by the GDMO. The delimiter may not be used in the text string unless it is "doubled", e.g.,"!!". Elements that are defined in one template are not repeated for other templates unless its interpretation has changed. The Internet SNMPv2 SMI also includes macros for specifying compliance with the MIBs. These macros are similar to ISO/CCITT LaBarre Expires November 29, 1993 Page 18 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 managed object conformance statements (MOCS), and are not addressed here. 3.2.1 Translation of Groups Internet groups may be translated to ISO/CCITT managed object classes by filling in the following GDMO template: MANAGED OBJECT CLASS DERIVED FROM "Rec. X.721 | ISO/IEC 10165-2 : 1992" :top; CHARACTERIZED BY || "Pkg" PACKAGE [BEHAVIOUR || "PkgBehaviour" BEHAVIOUR DEFINED AS !!;;] ATTRIBUTES {iimcManagementDoc 1}:internetClassId GET ["," [DEFAULT VALUE ]]*;;; REGISTERED AS { iimcAutoTrans (c) }; The following definitions apply: - The label associated with the Internet group. - Any textual description that is applicable to the resource modeled by this group, and the resource's management behaviour. Text in the SNMPv2 DESCRIPTION clause of the OBJECT-GROUP macro may be used. To facilitate parsing of BEHAVIOUR clauses for classes derived from groups, the following scannable structure is recommended (the [] indicate optionality, keywords must be in caps, keywords shall be excluded from the descriptive text): [BEGINPARSE [REFERENCE !!!!;] [DESCRIPTION !!!!;] ENDPARSE ] If used, the scannable structure shall be the first text in the BEHAVIOUR clause. - The label of an Internet OBJECT-TYPE which is included in the group and does not represent a conceptual table, a conceptual table entry, or an OBJECT-TYPE included in a conceptual table entry. LaBarre Expires November 29, 1993 Page 19 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 These become attributes of the object class. - The mapping of the ACCESS (or SNMPv2 MAX-ACCESS) clause value as defined below (multi-valued attributes are not permitted in the Internet SMI): OBJECT-TYPE ACCESS Clause Value ISO/CCITT read-only GET read-write GET-REPLACE write-only REPLACE read-create not applicable not-accessible not translated - The value of the DEFVAL clause in the form of an External value reference, i.e., ., where the module-name is the name of an ASN.1 module within the document in which this object class is defined, and the value-name is the label assigned to the ASN.1 value definition contained in the DEFVAL clause. Where it is necessary to refer to the label of a definition contained in another document, this may be achieved by means of a local ASN.1 module which makes use of the ASN.1 IMPORTS mechanism to import the appropriate value definition. 3.2.2 Translation of Table Objects Editor's Note: [The translation of conceptual table objects is an issue. See Appendix B for a discussion of this issue.] Internet conceptual table objects may be translated to ISO/CCITT managed object classes by filling in the following GDMO template: MANAGED OBJECT CLASS DERIVED FROM "Rec. X.721 | ISO/IEC 10165-2 : 1992" :top; CHARACTERIZED BY || "Pkg" PACKAGE [BEHAVIOUR || "PkgBehaviour" BEHAVIOUR DEFINED AS !!;;] ATTRIBUTES {iimcManagementDoc 1}:internetClassId GET;;; REGISTERED AS { iimcAutoTrans (c) }; The following definitions apply: - The label associated with the OBJECT- TYPE macro. LaBarre Expires November 29, 1993 Page 20 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 - To facilitate parsing of BEHAVIOUR clauses for classes derived from tables, the following scannable structure is recommended (the [] indicate optionality, keywords must be in caps, keywords shall be excluded from the descriptive text): [BEGINPARSE [REFERENCE !!!!;] [DESCRIPTION !!!!;] CONCEPTUALTABLE ENDPARSE ] If used, the scannable structure shall be the first text in the BEHAVIOUR clause. 3.2.3 Translation of Table Entry Objects Internet conceptual table entry objects may be translated to ISO/CCITT managed object classes by filling in the following GDMO template: MANAGED OBJECT CLASS DERIVED FROM "Rec. X.721 | ISO/IEC 10165-2 : 1992" :top; CHARACTERIZED BY || "Pkg" PACKAGE BEHAVIOUR || "PkgBehaviour" BEHAVIOUR DEFINED AS !!;; ATTRIBUTES {iimcManagementDoc 1}:internetClassId GET ["," [DEFAULT VALUE ]]*;;; REGISTERED AS {iimcAutoTrans (c) }; The following definitions apply: - The label of an Internet OBJECT-TYPE which represents a conceptual table entry. - The label of an Internet OBJECT- TYPE which represents an OBJECT-TYPE included in a conceptual table entry. These become attributes of the table entry managed object. - The mapping of the ACCESS (or SNMPv2 MAX-ACCESS) clause value LaBarre Expires November 29, 1993 Page 21 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 as defined below (multi-valued attributes are not permitted in the Internet SMI): OBJECT-TYPE ACCESS Clause Value ISO/CCITT read-only GET read-write* GET-REPLACE write-only REPLACE read-create* GET-REPLACE not-accessible GET * Some attributes that were derived from OBJECT-TYPEs with a read-create or read-write access clause will be changed to GET during post-translation processing of create/delete attributes and INDEX type attributes. See section 3.3.4. - To facilitate parsing of BEHAVIOUR clauses for classes derived from table entries, the following scannable structure is recommended (the [] indicate optionality, keywords must be in caps, keywords shall be excluded from the descriptive text): [BEGINPARSE [REFERENCE !!!!;] [DESCRIPTION !!!!;] INDEX ; [AUGMENTS ;] ENDPARSE] If used, the scannable structure shall be the first text in the BEHAVIOUR clause. Note: Table object classes that contain table entry object classes which were derived from OBJECT-TYPES with an AUGMENTS clause shall be deleted in the post-translation phase according to section 3.3.2. 3.2.4 Translation of Other OBJECT-TYPES Other Internet OBJECT-TYPEs are translated into ISO/CCITT attributes by filling in the following GDMO template: LaBarre Expires November 29, 1993 Page 22 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 ATTRIBUTE [WITH ATTRIBUTE SYNTAX || "." || ;] | [DERIVED FROM ;] [MATCHES FOR ;] [BEHAVIOUR || "Behaviour" BEHAVIOUR DEFINED AS !!;;] REGISTERED AS {iimcAutoTrans (a)}; The following definitions apply: - The label of the ASN.1 module that contains the ASN.1 syntax being referenced. The module must appear in the document that defines the translated MIB. ISO/CCITT have the concept of a generic "attribute type", which is a defined type that can be used in the definition of specific attributes. Attribute types have a defined syntax, generic semantics, and matching rules. For example, counter and gauge are attribute types. The SNMPv2 SMI has a similar concept embodied in the TEXTUAL- CONVENTIONS macro, which allows the definition of "Internet attribute types" with associated syntax and semantics. See section 3.2.7 for translation procedures associated with the TEXTUAL CONVENTIONS macro. Attributes of the defined SNMP types (e.g., Counter, IpAddress, Gauge, TimeTicks, Opaque, Counter32, Gauge32, Counter64, NsapAddress) shall inherit the semantics associated with the type - not just the syntax. As such, they could have been defined as Internet attribute types using a TEXTUAL CONVENTIONS macro. See 4.1.4 for the conversion of these types into ISO/CCITT attribute types. In addition, 4.1.4 contains ISO/CCITT attribute type definitions derived from [RFC1443]. Attribute templates derived from OBJECT-TYPE macros that specify these Internet attribute types in their SYNTAX clause shall contain the DERIVED FROM clause. Attribute templates derived from other ASN.1 types shall contain the WITH SYNTAX clause. - Translation of the SYNTAX clause into a valid type reference name using the ASN.1 External type reference notation as GDMO requires. - The matching rules for use in CMIS filtering operations. Note: These rules also apply to External type references that reference the syntax type. These matching rules may LaBarre Expires November 29, 1993 Page 23 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 be applied by automated mechanisms and then examined in the post-translation phase. Syntax Type Matching Rules INTEGER EQUALITY, ORDERING OCTET STRING EQUALITY, ORDERING, SUBSTRINGS BIT STRING EQUALITY OBJECT IDENTIFIER EQUALITY, ORDERING NULL EQUALITY See section 4.1.4 for the matching rules that are inherited from some ISO/CCITT attribute types derived from Internet attribute types. - Attributes of the defined SNMP/SNMPv2 types (e.g., Counter, IpAddress, Gauge, TimeTicks, Opaque, Counter32, Gauge32, Counter64, NsapAddress), and Internet attribute types defined using the SNMPv2 TEXTUAL CONVENTIONS macro, shall be treated as ISO/CCITT attribute types. Specific attributes are derived from these types. The following table indicates the translations required for Internet attribute types as defined either in this document or Internet documents. ISO/CCITT attribute types corresponding to the following Internet attribute types are defined in section 4.1.4 Syntax Type Substituted Value AutonomousType {iimcManagementDoc 1} :autonomousType Counter {iimcManagementDoc 1} :counter32 Counter32 {iimcManagementDoc 1} :counter32 Counter64 {iimcManagementDoc 1} :counter64 DisplayString {iimcManagementDoc 1} :displayString Gauge {iimcManagementDoc 1} :gauge32 Gauge32 {iimcManagementDoc 1} :gauge32 InstancePointer {iimcManagementDoc 1} :instancePointer IpAddress {iimcManagementDoc 1} :ipAddress MacAddress {iimcManagementDoc 1} :macAddress NetworkAddress {iimcManagementDoc 1} :ipAddress NsapAddress {iimcManagementDoc 1} :nsapAddress Opaque {iimcManagementDoc 1} :opaque PhysAddress {iimcManagementDoc 1} :physAddress RowStatus {iimcManagementDoc 1} :rowStatus TestAndIncrement {iimcManagementDoc 1} :testAndIncrement TimeInterval {iimcManagementDoc 1} :timeInterval TimeStamp {iimcManagementDoc 1} :timeStamp TimeTicks {iimcManagementDoc 1} :timeTicks TruthValue {iimcManagementDoc 1} :truthValue UInteger32 {iimcManagementDoc 1} :uInteger32 LaBarre Expires November 29, 1993 Page 24 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 - To facilitate parsing of BEHAVIOUR clauses for attributes derived from Internet objects, the following scannable structure is recommended (the [] indicate optionality, keywords must be in caps, keywords shall be excluded from the descriptive text): [BEGINPARSE [REFERENCE !!!!;] [DESCRIPTION !!!!;] [UNITS !!!!;] [DEFVAL ;] ENDPARSE] If used, the scannable structure shall be the first text in the BEHAVIOUR clause. 3.2.5 Translation of Notifications The Concise MIB Definitions [RFC1212] for SNMPv1 does not contain a macro for representing traps since, in SNMPv1, traps were considered part of the protocol and not part of the MIB. A subsequent attempt was made to correct this problem in [RFC1215] by defining a TRAP-TYPE macro. The SNMPv2 SMI [RFC1442] defines a NOTIFICATION macro and its mapping onto an SNMPv2 PDU. The document on SNMPv1/SNMPv2 Coexistence [RFC1452] defines a mapping between SNMPv1 trap PDUs and SNMPv2 notifications. Therefore, by inference, there exists a mapping of SNMP trap PDUs into an SNMPv2 NOTIFICATION macro. The ISO/CCITT SMI models notifications as being emitted by specific managed objects. As a consequence, notifications must be assigned to appropriate object classes at the time the object class is defined. New notifications cannot be added to an object class without changing the class's registration. The Internet SMI has no explicit concept of traps being associated with an object. Consequently, determining the IIMC derived managed object which is the source of a notification is not always possible. Therefore, this document defines a generic notification into which all Internet traps/notifications may be mapped. Internet Traps/Notifications may contain information related to multiple internet objects. Consequently, the generic LaBarre Expires November 29, 1993 Page 25 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 notification may contain variables not affiliated with the same derived ISO/CCITT object class. This document requires that variables be placed into the generic notification even if they are not attributes of the object class from which the notification is emitted. The generic notification, "internetAlarm", shall be emitted by the internetSystem managed object as defined in [IIMCMIB-II] and derived from the internet system group defined in [RFC1213]. The notification shall be sent in the unconfirmed mode in the context that an Internet trap/notification would be sent, and in the confirmed mode in the context that an SNMPv2 InformRequest PDU would be sent. When generated within a proxy, the events that shall trigger the notification to be emitted are the receipt of an Internet trap/notification, or an SNMPv2 InformRequest PDU. In accordance with [ISO10165-1] the decision whether to send a notification in the confirmed or unconfirmed mode is a matter for the agent to determine based on the policies associated with the manager. The SNMPv2 InformRequest PDU shall cause the notification to be sent in the confirmed mode, with the response containing no reply information, i.e., the CMIS service shall omit the event reply parameter. All SNMP traps/notifications shall cause the generic notification to be sent in the unconfirmed mode. In the case of proxy, an Internet trap/notification and SNMPv2 InformRequest PDU for which the agent address cannot be determined by the proxy shall cause the generic notification to be emitted by a different object than the internetSystem object, as defined in [IIMCPROXY]. The internetAlarm notification is defined in section 4.1.3. 3.2.6 Log Record for Internet Alarm. If internetAlarms notifications and event reports are to be logged, then a corresponding log record object class must be defined. The internetAlarmRecord managed object class is defined in section 4.1.1. 3.2.7 Translation of Internet Attribute Types ISO/CCITT has the concept of a generic "attribute type", which is a defined type that can be used in the definition of specific attributes. Attribute types have a defined syntax, generic semantics, and matching rules. For example, counter and gauge are attribute types. LaBarre Expires November 29, 1993 Page 26 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 The SNMPv2 SMI has a similar concept embodied in the TEXTUAL- CONVENTION macro, which allows the definition of "Internet attribute types" with associated syntax and semantics. Attributes of the defined SNMP types (e.g., Counter, IpAddress, Gauge, TimeTicks, Opaque, Counter32, Gauge32, Counter64, NsapAddress) should inherit the semantics associated with the type - not just the syntax. As such, they could have been defined as Internet attribute types using a TEXTUAL-CONVENTION macro. ISO/CCITT attribute types are defined using the ATTRIBUTE template, without the REGISTERED AS clause. ATTRIBUTE [WITH ATTRIBUTE SYNTAX || "." || ; | [DERIVED FROM ;] [MATCHES FOR ;] [BEHAVIOUR || "Behaviour" BEHAVIOUR DEFINED AS !!;;] The following definitions apply: - The label associated with the TEXTUAL-CONVENTION macro, or with the generic type that could have been defined using that macro. - To facilitate parsing of BEHAVIOUR clauses for attributes derived from internet objects, the following scannable structure is recommended (the [] indicate optionality, keywords must be in caps, keywords shall be excluded from the descriptive text): LaBarre Expires November 29, 1993 Page 27 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 [BEGINPARSE [REFERENCE !!!!;] [DESCRIPTION !!!!;] [UNITS !!!!;] [DISPLAY-HINT !!!!; ENDPARSE] If used, the scannable structure shall be the first text in the BEHAVIOUR clause. Attribute templates derived from OBJECT-TYPE macros that specify Internet attribute types in their SYNTAX clause shall specify the corresponding ISO/CCITT attribute types in their DERIVED FROM clause. Note: In many cases, an SNMP SMI MIB will define a new ASN.1 type which is repeatedly referenced by a large number of OBJECT- TYPE macros. In this case, it would be useful to define a new generic attribute once and then use DERIVED FROM wherever the type is used. Furthermore, if the new ASN.1 type is actually a refinement of one of the defined SNMP types (for example, a refinement of DisplayString), it is desirable that the behaviour associated with the defined SNMP type gets carried over into the translated MIB. To accomplish this, such cases could use the DERIVED FROM clause when defining new generic attributes. For example, the ASN.1 syntax: DateAndTime ::= DisplayString (SIZE (14)) -- comments provide additional semantics could be represented as a new generic attribute: dateAndTime ATTRIBUTE DERIVED FROM {iimcManagementDocMan 1}:displayString; BEHAVIOUR dateAndTimeBehaviour BEHAVIOUR DEFINED AS !!;; 3.3 Post-translation Procedures Post-translation procedures generally include manual checking of the BEHAVIOUR clause text for proper behaviour definitions, the addition of information concerning variables for creation and deletion in the case of NAME BINDING templates, and the creation of name bindings for placing the derived ISO/CCITT objects into the containment hierarchy. LaBarre Expires November 29, 1993 Page 28 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 Post-translation of the property-label is required for attributes derived from Internet objects used in conceptual table creation and deletion. Post-translation may also be required for the ASN.1 module created during the translation process. Post-translation procedures may result in deletion of some ISO/CCITT MIB elements derived from the procedures described in section 2.2. 3.3.1 Post-translation of BEHAVIOUR Cause The SNMP and SNMPv2 text descriptions often contain SNMP/SNMPv2 protocol, or SMI, relevant information that is inappropriate for an ISO/CCITT object class or attribute; such text should be removed or properly modified. For BEHAVIOUR clauses in NAME BINDING templates, the behaviour of the object relative to creation and deletion, and any constraints that pertain, should be explained, especially if the action causes an effect on the resource, e.g., deletion of a transport connection object may cause the transport connection to be terminated. The scannable structures within the BEHAVIOUR clause should be checked for completeness and missing fields filled in. 3.3.2 Deletion of Derived MIB Elements Tables which contain entries that augment the entries of another table shall be deleted from the derived MIB. The corresponding entries shall be bound to the table entries that they augment. The reason for this is that the ISO/CCITT SMI prohibits adding attributes to an object class. The solution used in this document is to make a table entry object class that augments another table entry the direct subordinate of the table entry object class being augmented. The table is no longer needed. 3.3.3 Creation of NAME BINDING Templates The ISO/CCITT name bindings for object classes to be bound into the naming hierarchy described in section 2.2.2 are created by filling in the GDMO template defined below. LaBarre Expires November 29, 1993 Page 29 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 || "NB" NAME BINDING SUBORDINATE OBJECT CLASS AND SUBCLASSES; NAMED BY SUPERIOR OBJECT CLASS AND SUBCLASSES; WITH ATTRIBUTE {iimcManagementDoc 1}:internetClassId; BEHAVIOUR || "Behaviour" BEHAVIOUR DEFINED AS !!;; [CREATE WITH-AUTOMATIC-INSTANCE-NAMING, WITH-REFERENCE-OBJECT;] [DELETE DELETES-CONTAINED-OBJECTS;] REGISTERED AS { }; - the combination of the subordinate and superior managed object class reference labels separated by a hyphen. An example of the resulting label is: ip-systemNB. - the reference label of the superior object class in the naming hierarchy. Table object classes, derived from conceptual tables, have the object class derived from the group in which they were defined as their superior. One way to determine the group is to use the structure of the OID for the table object, i.e., it contains the internet specific portion of the OID for the group. However, if the table object class contains entries that were derived from Internet OBJECT-TYPES that contained an AUGMENTS clause, then the table is deleted from the MIB. Table entry object classes, derived from conceptual table entries, have the corresponding table object class as their superior. One way to determine the table is to use the structure of the OID for the table entry object class, i.e., it contains the internet specific portion of the OID for the table. However, table entry object classes derived from OBJECT-TYPES that contain an AUGMENTS clause have the table entry object class derived from the OBJECT-TYPE referenced in the AUGMENTS clause as their superior. - To facilitate parsing of BEHAVIOUR clauses for name bindings, the following scannable structure is recommended (the [] indicate optionality, keywords must be in caps, keywords shall be excluded from the descriptive text): [BEGINPARSE [REFERENCE !!!!;] LaBarre Expires November 29, 1993 Page 30 Draft Translation of Internet MIBs to ISO/CCITT MIBs5/26/93 [DESCRIPTION !!!!;] [INDEX ;] [AUGMENTS ;] [CREATEDELETEATT