-- -- RC-VRF-MIB -- RC-VRF-MIB DEFINITIONS ::= BEGIN IMPORTS InterfaceIndex FROM IF-MIB InetAddressType, InetAddress FROM INET-ADDRESS-MIB OBJECT-GROUP, MODULE-COMPLIANCE, NOTIFICATION-GROUP FROM SNMPv2-CONF Unsigned32, OBJECT-TYPE, MODULE-IDENTITY, TimeTicks, NOTIFICATION-TYPE, mib-2, Integer32 FROM SNMPv2-SMI TruthValue, DisplayString, RowStatus, TEXTUAL-CONVENTION FROM SNMPv2-TC SnmpAdminString FROM SNMP-FRAMEWORK-MIB rcVrf, IdList, EnableValue FROM RAPID-CITY; rcVrfMib MODULE-IDENTITY LAST-UPDATED "200809090000Z" ORGANIZATION "Nortel Networks" CONTACT-INFO "Alka Malik Postal: Nortel Networks, Inc. 600 Technology Park Billerica, MA 01821 email: alka@nortel.com " DESCRIPTION "The MIB module is the definition of the managed objects for the Virtual Router." REVISION "200809090000Z" -- 09 September 2008 DESCRIPTION "Version 11: added values isis(3) and pim(4) to VrfRpTriggerBitCode." REVISION "200805180000Z" -- 18 May 2008 DESCRIPTION "Version 10: corrected the enum values for rcVrfIpVpnSvcLblAllocOpt." REVISION "200805160000Z" -- 16 May 2008 DESCRIPTION "Version 9: Updated default value for rcVrfRpTrigger and removed vrrp bit from VrfRpTriggerBitCode." REVISION "200805130000Z" -- 13 May 2008 DESCRIPTION "Version 8: Updated default value for rcVrfRpTrigger." REVISION "200805090000Z" -- 09 May 2008 DESCRIPTION "Version 7: Fixed smilint errors." REVISION "200805080000Z" -- 08 May 2008 DESCRIPTION "Version 6: Removed embedded control characters (was causing compile errors)." REVISION "200804280000Z" -- 28 April 2008 DESCRIPTION "Version 5: Fixed smilint issues." REVISION "200803130000Z" -- 13 March 2008 DESCRIPTION "Version 4: Changed module name to 'RC-VRF-MIB' from 'RC-VIRTUAL-ROUTING-MIB'." REVISION "200712180000Z" -- 18 Dec 2007 DESCRIPTION "Version 3: Changed syntax of rcVrfIpVpnStatus from TruthValue to EnableValue" REVISION "200705030000Z" -- 03 May 2007 DESCRIPTION "Version 2: Add rcVrfIpVpnTableSize, rcVrfIpVpnTable." REVISION "200701240000Z" -- 24 Jan 2007 DESCRIPTION "Version 1: Initial version" ::= { rcVrf 1 } VrfIdentifier ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Virtual Router Identifier. VRFID 0 is reserved for the Administrative VRF and cannot be used to create VRF's. " SYNTAX Unsigned32 (0..4294967295) VPNId ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The purpose of a VPN-ID is to uniquely identify a VPN. The Global VPN Identifier format is: 3 octet VPN Authority, Organizationally Unique Identifier followed by 4 octet VPN index identifying VPN according to OUI" REFERENCE "Fox, B. and Gleeson, B., 'Virtual Private Networks Identifier', RFC 2685, September 1999." SYNTAX OCTET STRING (SIZE (7)) VrfRpTriggerBitCode ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This object represents Routing Protocol (RP) Triggers on a Virtual Router. The BITS represent an Action-code that specifies the action on the Routing Protocols. The actions are: initiate or shutdown. When encoding the RP using the BITS construct, the value is encoded as an OCTET STRING where the first bit (bit 0) is the highest bit of the octet. Bits 0-3 may be specified in any combination to allow multiple Routing Protocols to be acted on simultaneously or individually. " SYNTAX BITS { rip (0), ospf(1), bgp (2), isis(3), -- not supported in 8600 pim (4) } rcVrfNotifications OBJECT IDENTIFIER ::= { rcVrfMib 0 } rcVrfObjects OBJECT IDENTIFIER ::= { rcVrfMib 1 } rcVrfNotificationObjects OBJECT IDENTIFIER ::= { rcVrfMib 2 } -- -- Node definitions -- rcVrfConfig OBJECT IDENTIFIER ::= { rcVrfObjects 1 } rcVrfConfigScalars OBJECT IDENTIFIER ::= { rcVrfConfig 1 } rcVrfConfigNextAvailableVrfId OBJECT-TYPE SYNTAX VrfIdentifier MAX-ACCESS read-only STATUS current DESCRIPTION "The next available Virtual Router Id (index). This object provides a hint for the rcVrfId value to use when administratively creating a new rcVrfConfigEntry. A GET of this object returns the next available rcVrfId value to be used to create an entry in the associated rcVrfConfigTable; or zero, if no valid rcVrfId value is available. A value of zero(0) indicates that it is not possible to create a new rcVrfConfigEntry. This object also returns a value of zero when it is the lexicographic successor of a varbind presented in an SNMP GETNEXT or GETBULK request, for which circumstance it is assumed that ifIndex allocation is unintended. Successive GETs will typically return different values, thus avoiding collisions among cooperating management clients seeking to create table entries simultaneously. Unless specified otherwise by its MAX-ACCESS and DESCRIPTION clauses, an object of this type is read-only, and a SET of such an object returns a notWritable error." ::= { rcVrfConfigScalars 1 } rcVrfConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF RcVrfConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table is for creating the new Virtual Routers." ::= { rcVrfConfig 2 } rcVrfConfigEntry OBJECT-TYPE SYNTAX RcVrfConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The entries in this table can be added/deleted using the rcVrfRowStatus." INDEX { rcVrfId } ::= { rcVrfConfigTable 1 } RcVrfConfigEntry ::= SEQUENCE { rcVrfId VrfIdentifier, rcVrfRowStatus RowStatus, rcVrfName DisplayString, rcVrfContextName SnmpAdminString, rcVrfTrapEnable TruthValue, rcVrfMaxRoutes Unsigned32, rcVrfAdminStatus INTEGER, rcVrfVpnId VPNId, rcVrfRpTrigger VrfRpTriggerBitCode, rcVrfMaxRoutesTrapEnable TruthValue } rcVrfId OBJECT-TYPE SYNTAX VrfIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The unique id of this virtual router instance. A Virtual Router cannot not be created with rcVrfId = 0. VRFID 0 is reserved for the Administrative VRF. " ::= { rcVrfConfigEntry 1 } rcVrfRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status column has three defined values: - `active', which indicates that the conceptual row is available for use by the managed device; - `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device; - `destroy', which is supplied by a management station wishing to delete all of the instances associated with an existing conceptual row." ::= { rcVrfConfigEntry 2 } rcVrfName OBJECT-TYPE SYNTAX DisplayString (SIZE (0..32)) MAX-ACCESS read-write STATUS current DESCRIPTION "The Name of the Virtual Router." ::= { rcVrfConfigEntry 3 } rcVrfContextName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE (0..32)) MAX-ACCESS read-create STATUS current DESCRIPTION "The SNMPv2 Community String or SNMPv3 contextName denotes the VRF 'context' and is used to logically separate the MIB module management." ::= { rcVrfConfigEntry 4 } rcVrfTrapEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "This objects is used to enable the generation of the VrfUp and VrfDown traps. true(1) - VRF Traps Enabled false(2) - VRF Traps Disabled" DEFVAL { true } ::= { rcVrfConfigEntry 5 } rcVrfMaxRoutes OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the maximum number of routes that this VRF can support. The default value is 10000." DEFVAL { 10000 } ::= { rcVrfConfigEntry 6 } rcVrfAdminStatus OBJECT-TYPE SYNTAX INTEGER { up(1), down(2), testing(3), unknown(4) } MAX-ACCESS read-create STATUS current DESCRIPTION "The administrative state of the Virtual Router." DEFVAL { down } ::= { rcVrfConfigEntry 7 } rcVrfVpnId OBJECT-TYPE SYNTAX VPNId MAX-ACCESS read-create STATUS current DESCRIPTION "The Virtual Private Network Identifier of the Virtual Router." ::= { rcVrfConfigEntry 8 } rcVrfRpTrigger OBJECT-TYPE SYNTAX VrfRpTriggerBitCode MAX-ACCESS read-create STATUS current DESCRIPTION "This object represents Routing Protocol (RP) Triggers on a Virtual Router and it meant to be used to initiate or shutdown routing protocols on a VRF. Multiple RPs can be acted on simultaneously. Also, individual RPs can be brought up in steps, which should not affect the RPs that were running. The BITS represent an Action-code that specifies what action is to be performed for the RPs. The actions are: initiate(1) or shutdown(0). The running status of an RP shall be available in the VRF stats table's rcVrfRpStatus, which has a similar format, but represents the status. Bits 0-3 may be specified in any combination. Individual routing protocols may be enabled and disabled independently. Protocols are enabled by setting the respective BIT and are disabled by resetting the BIT. So, for example, to enable RIP and BGP protocols the rcVrfRpTrigger bits 0 and 2 need to be set, and as encoded as 10100000. All zeros should be interpreted as all protocols disable. " DEFVAL {{ rip, ospf }} ::= { rcVrfConfigEntry 9 } rcVrfMaxRoutesTrapEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "This objects is used to enable the generation of the VRF Max Routes Exceeded traps. true(1) - VRF Max Routes Exceeded Traps Enabled false(2) - VRF Max Routes Exceeded Traps Disabled" DEFVAL { true } ::= { rcVrfConfigEntry 10 } rcVrfStat OBJECT IDENTIFIER ::= { rcVrfObjects 2 } rcVrfStatScalars OBJECT IDENTIFIER ::= { rcVrfStat 1 } rcVrfConfiguredVRFs OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of VRFs configured on this network element." ::= { rcVrfStatScalars 1 } rcVrfActiveVRFs OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of VRFs that are active on the network element. These are VRFs for which the rcVrfStatOperStatus = up(1)" ::= { rcVrfStatScalars 2 } rcVrfStatTable OBJECT-TYPE SYNTAX SEQUENCE OF RcVrfStatEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains statistics for the Virtual Router." ::= { rcVrfStat 2 } rcVrfStatEntry OBJECT-TYPE SYNTAX RcVrfStatEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Entries in this table are per rcVrfId." INDEX { rcVrfId } ::= { rcVrfStatTable 1 } RcVrfStatEntry ::= SEQUENCE { rcVrfStatRouteEntries Unsigned32, rcVrfStatFIBEntries Unsigned32, rcVrfStatUpTime TimeTicks, rcVrfOperStatus INTEGER, rcVrfRpStatus VrfRpTriggerBitCode, rcVrfRouterAddressType InetAddressType, rcVrfRouterAddress InetAddress } rcVrfStatRouteEntries OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Total number of routes for this VRF." ::= { rcVrfStatEntry 1 } rcVrfStatFIBEntries OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Total number of FIB Entries for this VRF." ::= { rcVrfStatEntry 2 } rcVrfStatUpTime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The time in (in hundredths of a second) since this VRF entry has been operational." ::= { rcVrfStatEntry 3 } rcVrfOperStatus OBJECT-TYPE SYNTAX INTEGER { up(1), down(2), unknown(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The operational status of the Virtual Router." ::= { rcVrfStatEntry 4 } rcVrfRpStatus OBJECT-TYPE SYNTAX VrfRpTriggerBitCode MAX-ACCESS read-only STATUS current DESCRIPTION "This object represents the status of Routing Protocols on this VRF corresponding to the list of RP specified in rcVrfRpTrigger. The BITS represent an Action-code that specifies the status of the RPs. The status are: initiated (1) or shutdown (0). Initiated status is indicated when the respective BIT value is 1 and indicates shutdown when the respective BIT value is 0. Bits 0-3 may appear in any combination to indicate that RPs may be enabled and disabled independently or that multiple RP are acted on simultaneously. " ::= { rcVrfStatEntry 5 } rcVrfRouterAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "Router Address Type of this VRF." ::= { rcVrfStatEntry 6 } rcVrfRouterAddress OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "Router Address of this VRF. It is derived from one of the interfaces. If loopback interface is present, the loopback interface address can be used. However, loopback interface is optional." ::= { rcVrfStatEntry 7 } rcVrfIpVpnTableSize OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "Size of Vrf IpVpn Table" ::= { rcVrfObjects 3 } rcVrfIpVpnTable OBJECT-TYPE SYNTAX SEQUENCE OF RcVrfIpVpnTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table required to configure vpn under ip." ::= { rcVrfObjects 4 } rcVrfIpVpnTableEntry OBJECT-TYPE SYNTAX RcVrfIpVpnTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Entries in this table are per rcVrfId." INDEX { rcVrfIpVpnVrfId } ::= { rcVrfIpVpnTable 1 } RcVrfIpVpnTableEntry ::= SEQUENCE { rcVrfIpVpnVrfId VrfIdentifier, rcVrfIpVpnStatus EnableValue, rcVrfIpVpnImportRTList IdList, rcVrfIpVpnExportRTList IdList, rcVrfIpVpnSvcLblAllocOpt INTEGER, rcVrfIpVpnRowStatus RowStatus } rcVrfIpVpnVrfId OBJECT-TYPE SYNTAX VrfIdentifier MAX-ACCESS not-accessible STATUS current DESCRIPTION "The VrfId serves as the Index for the rcIpVpnVrfTable and also for the rcIpVpnRouteDistinguisherTable. It allows to connect to the vrf table to obtain other attributes like the vrf name, rcVrfMaxRoutesTrapEnable etc." ::= { rcVrfIpVpnTableEntry 1 } rcVrfIpVpnStatus OBJECT-TYPE SYNTAX EnableValue MAX-ACCESS read-create STATUS current DESCRIPTION "The status of IpVpn." DEFVAL { disable } ::= { rcVrfIpVpnTableEntry 2 } rcVrfIpVpnImportRTList OBJECT-TYPE SYNTAX IdList MAX-ACCESS read-create STATUS current DESCRIPTION "The Import RT list is a list of all the route-targets attached to a particular vrf behaving in the import mode." ::= { rcVrfIpVpnTableEntry 3 } rcVrfIpVpnExportRTList OBJECT-TYPE SYNTAX IdList MAX-ACCESS read-create STATUS current DESCRIPTION "The Export RT list is a list of all the route-targets attached to a particular vrf in the export mode." ::= { rcVrfIpVpnTableEntry 4 } rcVrfIpVpnSvcLblAllocOpt OBJECT-TYPE SYNTAX INTEGER { perVrfperNexthop(1), perVrf(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The service label allocation option for the ipvpn" ::= { rcVrfIpVpnTableEntry 5 } rcVrfIpVpnRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "RowStatus for the Vpn Entry." ::= { rcVrfIpVpnTableEntry 6 } END