-- ***************************************************************** -- CISCO-MODULE-VIRTUALIZATION-MIB: MIB for Virtualization of -- a module. -- -- August 2005, Subrahmanya Hegde -- -- Copyright (c) 2005 by cisco Systems, Inc. -- All rights reserved. -- ***************************************************************** -- CISCO-MODULE-VIRTUALIZATION-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF RowStatus, TruthValue, StorageType FROM SNMPv2-TC SnmpAdminString FROM SNMP-FRAMEWORK-MIB entPhysicalIndex FROM ENTITY-MIB IANAifType FROM IANAifType-MIB CiscoResourceClass FROM CISCO-L4L7MODULE-RESOURCE-LIMIT-MIB CiscoURLString FROM CISCO-TC ciscoMgmt FROM CISCO-SMI; ciscoModuleVirtualizationMIB MODULE-IDENTITY LAST-UPDATED "200605290000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO " Cisco Systems Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 USA Tel: +1 800 553-NETS E-mail: cs-l4l7security@cisco.com" DESCRIPTION "This MIB provides a way to create virtual contexts, and managing them. A virtual context is logical partition of a physical device. The Virtual context provide different type of services and can be managed independently. Each virtual context is an independent entity, with its own configuration and supports almost all the options that can be configured on stand-alone hardware. Each context can have a separate management IP address that the user can Telnet/SSH into and send other requests(SNMP, FTP etc). This MIB contains tables for creating/deleting virtual contexts and assigning interfaces and/or interface ranges to virtual contexts." REVISION "200605290000Z" DESCRIPTION "Corrected the contact E-mail id: cs-l4l7security@cisco.com" REVISION "200512120000Z" DESCRIPTION "Initial version of the MIB module." ::= { ciscoMgmt 472 } cmVirtualizationNotifs OBJECT IDENTIFIER ::= { ciscoModuleVirtualizationMIB 0 } cmVirtualizationMIBObjects OBJECT IDENTIFIER ::= { ciscoModuleVirtualizationMIB 1 } cmVirtualizationMIBConformance OBJECT IDENTIFIER ::= { ciscoModuleVirtualizationMIB 2 } cmVirtualContext OBJECT IDENTIFIER ::= { cmVirtualizationMIBObjects 1 } cmVirtualContextNotifControl OBJECT IDENTIFIER ::= { cmVirtualizationMIBObjects 2 } cmVirtualContextNotifObjects OBJECT IDENTIFIER ::= { cmVirtualizationMIBObjects 3 } -- The Virtual Context table. cmVirtualContextTable OBJECT-TYPE SYNTAX SEQUENCE OF CmVirtualContextEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This is the virtual context table. A virtual context can be created for a module. This table is used for creating/deleting virtual contexts. The entries can be created/deleted by SNMP and/or by console commands." ::= { cmVirtualContext 1 } cmVirtualContextEntry OBJECT-TYPE SYNTAX CmVirtualContextEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in virtual context table. Each entry provides information about a particular virtual context. To create a virtual context, following procedure is used: - choose the appropriate value for entPhysicalIndex to point to an entry(with entPhysicaClass = 'module') in entPhysicalTable. - specify the name of the virtual context. - create an entry in the table by specifying ciscoVirtualContextRowStatus value of 'createAndGo' or 'createAndWait'. One or more virtual contexts can be created in a module. Each of these contexts are identified by a unique name. Resources can be assigned/mapped to each virtual context. Configurations and Monitoring can be done each virtual context independent of each other. Configuration changes in one virtual context will not affect other." INDEX { entPhysicalIndex, cmVirtContextName } ::= { cmVirtualContextTable 1 } CmVirtualContextEntry ::= SEQUENCE { cmVirtContextName SnmpAdminString, cmVirtContextDescr SnmpAdminString, cmVirtContextURL CiscoURLString, cmVirtContextResourceClass CiscoResourceClass, cmVirtContextStorageType StorageType, cmVirtContextRowStatus RowStatus } cmVirtContextName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object uniquely identifies a virtual context." ::= { cmVirtualContextEntry 1 } cmVirtContextDescr OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used for configuring the description of virtual context." DEFVAL { "" } ::= { cmVirtualContextEntry 2 } cmVirtContextURL OBJECT-TYPE SYNTAX CiscoURLString MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used for configuring the URL from which virtual context configuration will be downloaded. The configuration contains information on anything that is configured in a virtual context. Some examples of possible values for this object are: disk://[path/]filename ftp://[user[:password]@]server/[path/]filename tftp://server/[path/]filename http://server/[path/]filename https://server/[path/]filename. NOTE: Above list is just an example. It does not specify/limit only these values to be supported." ::= { cmVirtualContextEntry 3 } cmVirtContextResourceClass OBJECT-TYPE SYNTAX CiscoResourceClass MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used for assigning a resource class to a context. The resource class contains information on the resources that are managed/applicable to a context. The type of resources that may be applicable are governed by the CiscoResourceClass TEXTUAL CONVENTION. This object value must correspond to an entry in cmResourceClassTable." REFERENCE "cmResourceClassTable in CISCO-RESOURCE-LIMIT-MIB." ::= { cmVirtualContextEntry 4 } cmVirtContextStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row." DEFVAL { nonVolatile } ::= { cmVirtualContextEntry 5 } cmVirtContextRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used for creating/deleting entries in this table." ::= { cmVirtualContextEntry 6 } -- Interface Map Table cmVirtContextIfMapTable OBJECT-TYPE SYNTAX SEQUENCE OF CmVirtContextIfMapEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table is used for assigning interfaces to a virtual context. This table will configure the set of interfaces that can be used by a virtual context." ::= { cmVirtualContext 2 } cmVirtContextIfMapEntry OBJECT-TYPE SYNTAX CmVirtContextIfMapEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in Interface Map table. Each entry represents the interface or interface range that are assigned to a virtual context." INDEX { cmVirtContextName, cmVirtContextIfMapType, cmVirtContextIfMapIdLow } ::= { cmVirtContextIfMapTable 1 } CmVirtContextIfMapEntry ::= SEQUENCE { cmVirtContextIfMapType IANAifType, cmVirtContextIfMapIdLow Unsigned32, cmVirtContextIfMapIdHigh Unsigned32, cmVirtContextIfMapStorageType StorageType, cmVirtContextIfMapRowStatus RowStatus } cmVirtContextIfMapType OBJECT-TYPE SYNTAX IANAifType MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object specifies the interface type for which cmVirtContextIfMapIdHigh and cmVirtContextIfMapIdLow are applicable." ::= { cmVirtContextIfMapEntry 1 } cmVirtContextIfMapIdLow OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object specifies the interface that can be assigned to a context. This object either represents an interface or lower value of the interface range." ::= { cmVirtContextIfMapEntry 2 } cmVirtContextIfMapIdHigh OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the interface that will be assigned to a virtual context. The non-zero value specifies the upper value of the interface range. This value must be greater than the value in cmVirtContextIfMapIdLow. The value zero specifies that value specified in cmVirtContextIfMapIdLow is assigned." ::= { cmVirtContextIfMapEntry 3 } cmVirtContextIfMapStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row." DEFVAL { nonVolatile } ::= { cmVirtContextIfMapEntry 4 } cmVirtContextIfMapRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used for creating/deleting entries in this table." ::= { cmVirtContextIfMapEntry 5 } -- Notification related objects cmVirtContextNotifEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used for enabling/disabling notifications related to virtual context." ::= { cmVirtualContextNotifControl 1 } cmNotifVirtContextName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object is used in notifications only. This object contains the virtual context name. (i.e. value of cmVirtContextName)." ::= { cmVirtualContextNotifObjects 1 } cmVirtContextAdded NOTIFICATION-TYPE OBJECTS { cmNotifVirtContextName } STATUS current DESCRIPTION "This notifications will be sent when a virtual context is added." ::= { cmVirtualizationNotifs 1 } cmVirtContextRemoved NOTIFICATION-TYPE OBJECTS { cmNotifVirtContextName } STATUS current DESCRIPTION "This notifications will be sent when a virtual context is removed/deleted." ::= { cmVirtualizationNotifs 2 } cmVirtualizationCompliances OBJECT IDENTIFIER ::= { cmVirtualizationMIBConformance 1 } cmVirtualizationGroups OBJECT IDENTIFIER ::= { cmVirtualizationMIBConformance 2 } -- compliance statements cmVirtualizationCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for SNMP entities which implement virtualization MIB." MODULE -- this module MANDATORY-GROUPS { cmVirtContextconfigGroup } GROUP cmVirtContextIfMapGroup DESCRIPTION "This group is mandatory in those systems which supports assignment of interface and interface ranges to a virtual context." GROUP cmVirtContextNotifControlGroup DESCRIPTION "This group is mandatory in those systems where it is required to control notifications that are sent." GROUP cmVirtContextNotificationGroup DESCRIPTION "This group is mandatory in those systems where context add/delete is required by the NMS applications." ::= { cmVirtualizationCompliances 1 } -- MIB groupings cmVirtContextconfigGroup OBJECT-GROUP OBJECTS { cmVirtContextDescr, cmVirtContextURL, cmVirtContextResourceClass, cmVirtContextStorageType, cmVirtContextRowStatus } STATUS current DESCRIPTION "The collection of objects which are used to represent virtual contexts in a virtualized system." ::= { cmVirtualizationGroups 1 } cmVirtContextIfMapGroup OBJECT-GROUP OBJECTS { cmVirtContextIfMapIdHigh, cmVirtContextIfMapStorageType, cmVirtContextIfMapRowStatus } STATUS current DESCRIPTION "The collection of objects which are used for assigning interfaces to a virtual context." ::= { cmVirtualizationGroups 2 } cmVirtContextNotifControlGroup OBJECT-GROUP OBJECTS { cmVirtContextNotifEnable } STATUS current DESCRIPTION "The collection of object to control notifications that are sent." ::= { cmVirtualizationGroups 3 } cmVirtContextNotifObjectsGroup OBJECT-GROUP OBJECTS { cmNotifVirtContextName } STATUS current DESCRIPTION "The collection of objects sent only in notifications." ::= { cmVirtualizationGroups 4 } cmVirtContextNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { cmVirtContextAdded, cmVirtContextRemoved } STATUS current DESCRIPTION "The collection of objects which are used to represent virtual contexts in a virtualized system." ::= { cmVirtualizationGroups 5 } END