A single SNMP agent sometimes needs to support multiple instances of the same MIB module, and does so through the use of multipl...
Version: 2008-11-22
module CISCO-CONTEXT-MAPPING-MIB { yang-version 1; namespace "urn:ietf:params:xml:ns:yang:smiv2:CISCO-CONTEXT-MAPPING-MIB"; prefix CISCO-CONTEXT-MAPPING-MIB; import CISCO-TC { prefix cisco-tc; } import SNMP-FRAMEWORK-MIB { prefix snmp-framework; } import SNMPv2-TC { prefix snmpv2-tc; } import ietf-yang-smiv2 { prefix smiv2; } organization "Cisco Systems, Inc."; contact "Cisco Systems Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 USA Tel: +1 800 553-NETS E-mail: cs-snmp@cisco.com"; description "A single SNMP agent sometimes needs to support multiple instances of the same MIB module, and does so through the use of multiple SNMP contexts. This typically occurs because the technology has evolved to have extra dimension(s), i.e., one or more extra data and/or identifier values which are different in the different contexts, but were not defined in INDEX clause(s) of the original MIB module. In such cases, network management applications need to know the specific data/identifier values in each context, and this MIB module provides mapping tables which contain that information. Within a network there can be multiple Virtual Private Networks (VPNs) configured using Virtual Routing and Forwarding Instances (VRFs). Within a VPN there can be multiple topologies when Multi-topology Routing (MTR) is used. Also, Interior Gateway Protocols (IGPs) can have multiple protocol instances running on the device. A network can have multiple broadcast domains configured using Bridge Domain Identifiers. With MTR routing, VRFs, and Bridge domains, a router now needs to support multiple instances of several existing MIB modules, and this can be achieved if the router's SNMP agent provides access to each instance of the same MIB module via a different SNMP context (see Section 3.1.1 of RFC 3411). For MTR routing, VRFs, and Bridge domains, a different SNMP context is needed depending on one or more of the following: the VRF, the topology-identifier, the routing protocol instance, and the bridge domain identifier. In other words, the router's management information can be accessed through multiple SNMP contexts where each such context represents a specific VRF, a specific topology-identifier, a specific routing protocol instance and/or a bridge domain identifier. This MIB module provides a mapping of each such SNMP context to the corresponding VRF, the corresponding topology, the corresponding routing protocol instance, and the corresponding bridge domain identifier. Some SNMP contexts are independent of VRFs, independent of a topology, independent of a routing protocol instance, or independent of a bridge domain and in such a case, the mapping is to the zero length string. With the Cisco package licensing strategy, the features available in the image are grouped into multiple packages and each packages can be managed to operate at different feature levels based on the available license. This MIB module provides option to associate an SNMP context to a feature package group. This will allow manageability of license MIB objects specific to a feature package group. As technology evolves more we may need additional identifiers to identify the context. Then we would need to add those additional identifiers into the mapping."; revision "2008-11-22" { description "Added New Table cContextMappingLicenseGroupTable to provide SNMP Context support for license package groups. Added cContextMappingLicenseGroupDataGroup in OBJECT-GROUP Added cContextMappingMIBComplianceRev2 in MODULE-COMPLIANCE Updated the MIB description to indicate the use of the above additions"; } revision "2008-05-30" { description "Add cContextMappingBridgeInstanceTable. Added cContextMappingBridgeInstanceDataGroup. Deprecated cContextMappingMIBComplianceRev1 and added cContextMappingMIBComplianceRev2 compliance statement."; } revision "2008-02-01" { description "Added New Table cContextMappingBridgeDomainTable to provide SNMP context support to the Bridge Domain. Added cContextMappingBridgeDomainDataGroup in OBJECT-GROUP Added cContextMappingMIBComplianceRev1 in MODULE-COMPLIANCE"; } revision "2005-03-17" { description "Initial version of the MIB module."; } smiv2:alias "ciscoContextMappingMIB" { smiv2:oid "1.3.6.1.4.1.9.9.468"; } smiv2:alias "cContextMappingMIBObjects" { smiv2:oid "1.3.6.1.4.1.9.9.468.1"; } smiv2:alias "cContextMappingMIBConformance" { smiv2:oid "1.3.6.1.4.1.9.9.468.2"; } smiv2:alias "cContextMappingMIBCompliances" { smiv2:oid "1.3.6.1.4.1.9.9.468.2.1"; } smiv2:alias "cContextMappingMIBGroups" { smiv2:oid "1.3.6.1.4.1.9.9.468.2.2"; } container CISCO-CONTEXT-MAPPING-MIB { config false; container cContextMappingTable { smiv2:oid "1.3.6.1.4.1.9.9.468.1.1"; description "This table contains information on which cContextMappingVacmContextName is mapped to which VRF, topology, and routing protocol instance. This table is indexed by SNMP VACM context. Configuring a row in this table for an SNMP context does not require that the context be already defined, i.e., a row can be created in this table for a context before the corresponding row is created in RFC 3415's vacmContextTable. To create a row in this table, a manager must set cContextMappingRowStatus to either 'createAndGo' or 'createAndWait'. To delete a row in this table, a manager must set cContextMappingRowStatus to 'destroy'."; list cContextMappingEntry { smiv2:oid "1.3.6.1.4.1.9.9.468.1.1.1"; key "cContextMappingVacmContextName"; description "Information relating to a single mapping of cContextMappingVacmContextName to the corresponding VRF, the corresponding topology, and the corresponding routing protocol instance."; leaf cContextMappingVacmContextName { smiv2:max-access "not-accessible"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.1.1.1"; type snmp-framework:SnmpAdminString { length "0..32"; } description "The vacmContextName given to the SNMP context. This is a human readable name identifying a particular SNMP VACM context at a particular SNMP entity. The empty contextName (zero length) represents the default context."; } leaf cContextMappingVrfName { smiv2:defval ""; smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.1.1.2"; type snmp-framework:SnmpAdminString { length "0..32"; } description "The value of an instance of this object identifies the name given to the VRF to which the SNMP context is mapped to. This is typically a human-readable string. This is the same ASCII string used in the router's console interface to refer to this VRF. When the value of this object is the zero length string it indicates that the SNMP context is independent of any VRF."; } leaf cContextMappingTopologyName { smiv2:defval ""; smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.1.1.3"; type snmp-framework:SnmpAdminString { length "0..32"; } description "The value of an instance of this object identifies the name given to the topology to which the SNMP context is mapped to. This is typically a human-readable string. This is the same ASCII string used in the router's console interface to refer to this topology. When the value of this object is the zero length string it indicates that the SNMP context is independent of any topology."; } leaf cContextMappingProtoInstName { smiv2:defval ""; smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.1.1.4"; type snmp-framework:SnmpAdminString { length "0..32"; } description "The value of an instance of this object identifies the name given to the protocol instance to which the SNMP context is mapped to. This is typically a human-readable string. This is the same ASCII string used in the router's console interface to refer to this protocol instance. When the value of this object is the zero length string it indicates that the SNMP context is independent of any protocol instance."; } leaf cContextMappingStorageType { smiv2:defval "nonVolatile"; smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.1.1.5"; type snmpv2-tc:StorageType; 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."; } leaf cContextMappingRowStatus { smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.1.1.6"; type snmpv2-tc:RowStatus; description "This object facilitates the creation, modification, or deletion of a conceptual row in this table."; } } // list cContextMappingEntry } // container cContextMappingTable container cContextMappingBridgeDomainTable { smiv2:oid "1.3.6.1.4.1.9.9.468.1.2"; description "This table contains information on which cContextMappingVacmContextName is mapped to which bridge domain. A Bridge Domain is one of the means by which it is possible to define an Ethernet broadcast domain on a bridging device. A network can have multiple broadcast domains configured. This table helps the network management personnel to find out the details of various broadcast domains configured in the network. An entry need to exist in cContextMappingTable, to create an entry in this table."; list cContextMappingBridgeDomainEntry { smiv2:oid "1.3.6.1.4.1.9.9.468.1.2.1"; key "cContextMappingVacmContextName"; description "Information relating to a single mapping of cContextMappingVacmContextName to the corresponding bridge domain. To create a row in this table, a manager must set cContextMappingBridgeDomainRowStatus to either 'createAndGo' or 'createAndWait'. To delete a row in this table, a manager must set cContextMappingBridgeDomainRowStatus to 'destroy'."; leaf cContextMappingVacmContextName { type leafref { path "/CISCO-CONTEXT-MAPPING-MIB:CISCO-CONTEXT-MAPPING-MIB/CISCO-CONTEXT-MAPPING-MIB:cContextMappingTable/CISCO-CONTEXT-MAPPING-MIB:cContextMappingEntry/CISCO-CONTEXT-MAPPING-MIB:cContextMappingVacmContextName"; } } leaf cContextMappingBridgeDomainIdentifier { smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.2.1.1"; type cisco-tc:CiscoBridgeDomain; description "The value of an instance of this object identifies the bridge domain to which the SNMP context is mapped to."; reference "CISCO-BRIDGE-DOMAIN-MIB"; } leaf cContextMappingBridgeDomainStorageType { smiv2:defval "nonVolatile"; smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.2.1.2"; type snmpv2-tc:StorageType; 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."; } leaf cContextMappingBridgeDomainRowStatus { smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.2.1.3"; type snmpv2-tc:RowStatus; description "This object facilitates the creation, modification, or deletion of a conceptual row in this table."; } } // list cContextMappingBridgeDomainEntry } // container cContextMappingBridgeDomainTable container cContextMappingBridgeInstanceTable { smiv2:oid "1.3.6.1.4.1.9.9.468.1.3"; description "This table contains information on mapping between cContextMappingVacmContextName and bridge instance. Bridge instance is an instance of a physical or logical bridge which has unique bridge-id. If an entry is deleted from cContextMappingTable, the corresponding entry in this table will also get deleted. If an entry needs to be created in this table, the corresponding entry must exist in cContextMappingTable."; reference "BRIDGE-MIB"; list cContextMappingBridgeInstanceEntry { smiv2:oid "1.3.6.1.4.1.9.9.468.1.3.1"; key "cContextMappingVacmContextName"; description "Information relating to a single mapping of cContextMappingVacmContextName to the corresponding bridge instance. To create a row in this table, a manager must set cContextMappingBridgeInstRowStatus to either 'createAndGo' or 'createAndWait'. To delete a row in this table, a manager must set cContextMappingBridgeInstRowStatus to 'destroy'."; leaf cContextMappingVacmContextName { type leafref { path "/CISCO-CONTEXT-MAPPING-MIB:CISCO-CONTEXT-MAPPING-MIB/CISCO-CONTEXT-MAPPING-MIB:cContextMappingTable/CISCO-CONTEXT-MAPPING-MIB:cContextMappingEntry/CISCO-CONTEXT-MAPPING-MIB:cContextMappingVacmContextName"; } } leaf cContextMappingBridgeInstName { smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.3.1.1"; type snmp-framework:SnmpAdminString; description "The object identifies the name given to bridge instance to which the SNMP context is mapped to. Value of this object cannot be changed when the RowStatus object in the same row is 'active'. This is typically a human-readable string. This is the same ASCII string used in the router's console interface to refer to this bridge instance. When the value of this object is a zero length string, it indicates that the SNMP context is independent of any bridge instances."; } leaf cContextMappingBridgeInstStorageType { smiv2:defval "nonVolatile"; smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.3.1.2"; type snmpv2-tc:StorageType; description "The storage type for this conceptual row. Value of this object cannot be changed when the RowStatus object in the same row is 'active'. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row."; } leaf cContextMappingBridgeInstRowStatus { smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.3.1.3"; type snmpv2-tc:RowStatus; description "This object facilitates the creation, modification, or deletion of a conceptual row in this table."; } } // list cContextMappingBridgeInstanceEntry } // container cContextMappingBridgeInstanceTable container cContextMappingLicenseGroupTable { smiv2:oid "1.3.6.1.4.1.9.9.468.1.4"; description "This table contains information on which cContextMappingVacmContextName is mapped to which License Group. Group level licensing is used where each Technology Package is enabled via a License."; list cContextMappingLicenseGroupEntry { smiv2:oid "1.3.6.1.4.1.9.9.468.1.4.1"; key "cContextMappingVacmContextName"; description "Information relating to a single mapping of CContextMappingVacmContextName to the corresponding License Group."; leaf cContextMappingVacmContextName { type leafref { path "/CISCO-CONTEXT-MAPPING-MIB:CISCO-CONTEXT-MAPPING-MIB/CISCO-CONTEXT-MAPPING-MIB:cContextMappingTable/CISCO-CONTEXT-MAPPING-MIB:cContextMappingEntry/CISCO-CONTEXT-MAPPING-MIB:cContextMappingVacmContextName"; } } leaf cContextMappingLicenseGroupName { smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.4.1.1"; type snmp-framework:SnmpAdminString { length "0..32"; } description "The value of an instance of this object identifies the name given to the Group to which the SNMP context is mapped. Feature sets from all groups will be combined to form universal image. User can configure multiple groups as needed. For example: In Next generation ISRs will use the universal image package level licensing model for its licensing need. Each group has the feature set needed for that specific technology. Feature sets from different groups are combined to form universal image and each feature set for a group can be enabled using a valid license key. There will be a base level ipbase package in which the router boots with out any license key. The following are the different Technology Groups. 1.crypto 2.data 3.ip 4.legacy 5.novpn-security 6.security 7.uc"; } leaf cContextMappingLicenseGroupStorageType { smiv2:defval "nonVolatile"; smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.4.1.2"; type snmpv2-tc:StorageType; 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."; } leaf cContextMappingLicenseGroupRowStatus { smiv2:max-access "read-write"; smiv2:oid "1.3.6.1.4.1.9.9.468.1.4.1.3"; type snmpv2-tc:RowStatus; description "This object facilitates the creation, modification, or deletion of a conceptual row in this table."; } } // list cContextMappingLicenseGroupEntry } // container cContextMappingLicenseGroupTable } // container CISCO-CONTEXT-MAPPING-MIB } // module CISCO-CONTEXT-MAPPING-MIB
© 2023 YumaWorks, Inc. All rights reserved.