-- extracted from draft-paari-ppvpn-vpls-mib-00.txt -- at Tue Jul 23 06:10:09 2002 VPLS-MIB DEFINITIONS ::= BEGIN IMPORTS TruthValue, TimeStamp, DisplayString, RowStatus, TEXTUAL-CONVENTION FROM SNMPv2-TC TimeTicks FROM SNMPv2-SMI InetAddress FROM INET-ADDRESS-MIB VPNId FROM PPVPN-TC-MIB InterfaceIndex FROM IF-MIB; vplsMib MODULE-IDENTITY LAST-UPDATED "200207031200Z" ORGANIZATION "HCL Technologies Ltd." CONTACT-INFO "HCL Technologies Ltd. Cisco Offshore Development Centre 158 Arcot Road Vadapalani Chennai 600 026 India Tel.: +91-44-375-0171 Fax : +91-44-375-0185 Email: pelangov@cisco.com" DESCRIPTION "The MIB is the definition of the managed objects for the Virtual Private LAN Service." REVISION "200207031200Z" DESCRIPTION "Initial version of the VPLS-MIB." -- ::= { experimental XXXX } -- To be assigned ::= { experimental 9999 } -- in case you want to compile vplsObjects OBJECT IDENTIFIER ::= { vplsMib 1 } vplsNotifications OBJECT IDENTIFIER ::= { vplsMib 2 } vplsConformance OBJECT IDENTIFIER ::= { vplsMib 3 } vplsInstance OBJECT IDENTIFIER ::= { vplsObjects 1 } -- VPLS Instance Config Table vplsInstanceAttributesTable OBJECT-TYPE SYNTAX SEQUENCE OF VplsInstanceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of VPLS instances present on the local system." ::= { vplsInstance 1 } vplsInstanceEntry OBJECT-TYPE SYNTAX VplsInstanceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (row) containing managment information applicable to a particular VPLS instance." INDEX { vplsInstIndex } ::= { vplsInstanceAttributesTable 1 } VplsInstanceEntry ::= SEQUENCE { vplsInstIndex Unsigned32, vplsInstCustId OCTET STRING, vplsInstSiteId OCTET STRING, vplsInstName DisplayString, vplsInstDescr DisplayString, vplsInstUpTime TimeStamp, vplsVsTrapEnable TruthValue, vplsInstRowStatus RowStatus } vplsInstIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "This is a unique index for an entry in the vplsInstanceAttributesTable. " ::= { vplsInstanceEntry 1 } vplsInstCustId OBJECT-TYPE SYNTAX OCTET STRING (SIZE (8)) MAX-ACCESS read-create STATUS current DESCRIPTION "This is an 8 octet integer identifier that uniquely represents a particular customer." ::= { vplsInstanceEntry 2 } vplsInstSiteId OBJECT-TYPE SYNTAX OCTET STRING (SIZE (2)) MAX-ACCESS read-create STATUS current DESCRIPTION "This is a 2 octet integer identifier that represents a particular site of the VPLS service provider. It is unique across a single VPLS service provider." ::= { vplsInstanceEntry 3 } vplsInstName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-create STATUS current DESCRIPTION " The human-readable name of this VPLS instance." ::= { vplsInstanceEntry 4 } vplsInstDescr OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-create STATUS current DESCRIPTION "The description of this VPLS instance." ::= { vplsInstanceEntry 5 } vplsInstUpTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of the sysUpTime at which this VPLS instance entry was created." ::= { vplsInstanceEntry 6 } vplsVsTrapEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "If this object is true, then it enables the generation of all notifications defined in this MIB for this particular VPLS instance." DEFVAL { false } ::= { vplsInstanceEntry 7 } vplsInstRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The row status for this entry. This value is used to create a row in this table." ::= { vplsInstanceEntry 8 } -- VPLS Instance Statistics Table vplsInstanceStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF VplsInstanceStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of VPLS instance statistics. This table extends vplsInstanceAttributesTable." ::= { vplsInstance 2 } vplsInstanceStatsEntry OBJECT-TYPE SYNTAX VplsInstanceStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (row) containing managment information applicable to a particular VPLS instance." AUGMENTS { vplsInstanceEntry } ::= { vplsInstanceStatsTable 1 } VplsInstanceStatsEntry ::= SEQUENCE { vplsInstStatus INTEGER, vplsInstPeers Unsigned32, vplsInstInBytes Counter64, vplsInstOutBytes Counter64, vplsInstInDiscardPkts Counter32, vplsInstInDataRate Gauge32, vplsInstOutDataRate Gauge32, vplsInstServiceTime TimeTicks, vplsInstNotInServiceTime TimeTicks, vplsInstFailureCount Unsigned32 } vplsInstStatus OBJECT-TYPE SYNTAX INTEGER { up (1), down (2) } MAX-ACCESS read-only STATUS current DESCRIPTION "Denotes whether a VPLS instance is operational or not. A VPLS instance is up(1) when at least one virtual switch associated with this VPLS instance, whose vplsVsStatus is up. A VPLS instance is down(2) when there does not exist at least one virtual switch interface associated with this VPLS instance whose vplsVsStatus is up." ::= { vplsInstanceStatsEntry 1 } vplsInstPeers OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total no of peer sites available for this VPLS instance." ::= { vplsInstanceStatsEntry 2 } vplsInstInBytes OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total no of data bytes received from the customer attached to this VPLS instance." ::= { vplsInstanceStatsEntry 3 } vplsInstOutBytes OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total no of data bytes sent to the customer attached to this VPLS instance." ::= { vplsInstanceStatsEntry 4 } vplsInstInDiscardPkts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets dropped, which were received from the customer by this VPLS instance. There can be several reasons for the packet drop like duplicate packets, error packets etc." ::= { vplsInstanceStatsEntry 5 } vplsInstInDataRate OBJECT-TYPE SYNTAX Gauge32 UNITS "bytes per second" MAX-ACCESS read-only STATUS current DESCRIPTION "The total no of data bytes per second received from the customer attached to this VPLS instance." ::= { vplsInstanceStatsEntry 6 } vplsInstOutDataRate OBJECT-TYPE SYNTAX Gauge32 UNITS "bytes per second" MAX-ACCESS read-only STATUS current DESCRIPTION "The total no of data bytes per second sent to the customer attached to this VPLS instance." ::= { vplsInstanceStatsEntry 7 } vplsInstServiceTime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The amount of time that this VPLS instance has been up. This is computed by summing up all the past up durations." ::= { vplsInstanceStatsEntry 8 } vplsInstNotInServiceTime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The amount of time that this VPLS instance has been down. This is computed by summing up all the past down durations." ::= { vplsInstanceStatsEntry 9 } vplsInstFailureCount OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times this VPLS instance was down." ::= { vplsInstanceStatsEntry 10 } -- VPLS Instance Peer Table vplsInstancePeerTable OBJECT-TYPE SYNTAX SEQUENCE OF VplsInstancePeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains a list of peers for the list of VPLS instances." ::= { vplsInstance 3 } vplsInstancePeerEntry OBJECT-TYPE SYNTAX VplsInstancePeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (row) containing the information about the peer entities of a particular VPLS instance." INDEX { vplsInstPeerIndex } ::= { vplsInstancePeerTable 1 } VplsInstancePeerEntry ::= SEQUENCE { vplsInstPeerIndex Unsigned32, vplsInstLocCustId OCTET STRING, vplsInstCustId OCTET STRING, vplsInstSiteId OCTET STRING, vplsInstPeerAddress InetAddress } vplsInstPeerIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "This is a unique index for an entry in the vplsInstancePeerTable." ::= { vplsInstancePeerEntry 1 } vplsInstLocCustId OBJECT-TYPE SYNTAX OCTET STRING (SIZE (8)) MAX-ACCESS read-create STATUS current DESCRIPTION "This is an 8 octet integer identifier that uniquely represents a local customer." ::= { vplsInstancePeerEntry 2 } vplsInstCustId OBJECT-TYPE SYNTAX OCTET STRING (SIZE (8)) MAX-ACCESS read-create STATUS current DESCRIPTION "This is an 8 octet integer identifier that uniquely represents a particular customer." ::= { vplsInstancePeerEntry 3 } vplsInstSiteId OBJECT-TYPE SYNTAX OCTET STRING (SIZE (2)) MAX-ACCESS read-only STATUS current DESCRIPTION "This is a 2 octet integer identifier that represents a particular site of the VPLS service provider. It is unique across a single VPLS service provider." ::= { vplsInstancePeerEntry 4 } vplsInstPeerAddress OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "Denotes the peer site addresses for this particular VPLS instance." ::= { vplsInstancePeerEntry 5 } vplsVirtualSwitch OBJECT IDENTIFIER ::= { vplsObjects 2 } -- VPLS Virtual Switch Attributes Table vplsVsAttributesTable OBJECT-TYPE SYNTAX SEQUENCE OF VplsVsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains a list of virtual switches present in the local system." ::= { vplsVirtualSwitch 1 } vplsVsEntry OBJECT-TYPE SYNTAX VplsVsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (row) containing managment information applicable to a particular virtual switch instance." INDEX { vplsInstIndex, vplsVsIndex } ::= { vplsVsAttributesTable 1 } VplsVsEntry ::= SEQUENCE { vplsVsIndex Unsigned32, vplsVsId OCTET STRING, vplsVsAddress MacAddress, vplsVsNumPorts INTEGER, vplsVsStatus INTEGER } vplsVsIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "An arbitrary integer used to uniquely identify a particular virtual switch within a VPLS instance present on the local system." ::= { vplsVsEntry 1 } vplsVsId OBJECT-TYPE SYNTAX OCTET STRING (SIZE (8)) MAX-ACCESS read-only STATUS current DESCRIPTION "This is an 8 octet integer identifier that uniquely represents a virtual switch in a single VPLS service provider. Used in the STP operation" ::= { vplsVsEntry 2 } vplsVsAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The MAC address used by this virtual switch when it must be referred to in a unique fashion." ::= { vplsVsEntry 3 } vplsVsNumPorts OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "The number of virtual ports present in this virtual switch." ::= { vplsVsEntry 4 } vplsVsStatus OBJECT-TYPE SYNTAX INTEGER { up(1), down(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The operational state of the virtual switch." ::= { vplsVsEntry 5 } vplsVirtualPort OBJECT IDENTIFIER ::= { vplsObjects 3 } -- VPLS Virtual Port Attributes Table vplsVpAttributesTable OBJECT-TYPE SYNTAX SEQUENCE OF VplsVpEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains a list of virtual ports present in the local system." ::= { vplsVirtualPort 1 } vplsVpEntry OBJECT-TYPE SYNTAX VplsVpEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (row) containing managment information applicable to a particular virtual port." INDEX { vplsInstIndex, vplsVsIndex, vplsVpIndex } ::= { vplsVpAttributesTable 1 } VplsVpEntry ::= SEQUENCE { vplsVpIndex Unsigned32, vplsVpInterface InterfaceIndex, vplsVpVpnId VPNId } vplsVpIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "An arbitrary integer used to uniquely identify a particular virtual port within a virtual switch present within a VPLS instance." ::= { vplsVpEntry 1 } vplsVpInterface OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-only STATUS current DESCRIPTION "The ifIndex value that identifies the local interface to which the virtual circuit of this virtual port is mapped to." ::= { vplsVpEntry 2 } vplsVpVpnId OBJECT-TYPE SYNTAX VPNId MAX-ACCESS read-only STATUS current DESCRIPTION "The VPN ID as specified in RFC 2685 to which this virtual port is connected to." ::= { vplsVpEntry 3 } -- VPLS Virtual Port Statistics Table vplsVpStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF VplsVpStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains a list of virtual port statistics. This table extends vplsVpAttributesTable" ::= { vplsVirtualPort 2 } vplsVpStatsEntry OBJECT-TYPE SYNTAX VplsVpStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (row) containing managment information applicable to a particular virtual port." AUGMENTS { vplsVpEntry } ::= { vplsVpStatsTable 1 } VplsVpStatsEntry ::= SEQUENCE { vplsVpInBytes Counter64, vplsVpOutBytes Counter64, vplsVpInDiscards Counter32 } vplsVpInBytes OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total no of data bytes received from this virtual port." ::= { vplsVpStatsEntry 1 } vplsVpOutBytes OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total no of data bytes sent to this virtual port." ::= { vplsVpStatsEntry 2 } vplsVpInDiscards OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Count of valid packets received which were discarded." ::= { vplsVpStatsEntry 3 } -- VPLS Notifications vplsNotificationsPrefix OBJECT IDENTIFIER ::= { vplsNotifications 1 } VirtualSwitchUp NOTIFICATION-TYPE OBJECTS { vplsVsId } STATUS current DESCRIPTION "This notification is generated when the specified virtual switch is about to be initialized or change the status from down to up." ::= { vplsNotificationsPrefix 1 } VirtualSwitchDown NOTIFICATION-TYPE OBJECTS { vplsVsId } STATUS current DESCRIPTION "This notification is generated when the specified virtual switch is about to go down." ::= { vplsNotificationsPrefix 2 } vplsVpnFail NOTIFICATION-TYPE OBJECTS { vplsVpVpnId } STATUS current DESCRIPTION "This notification is generated when the specified vpn is about to go down." ::= { vplsNotificationsPrefix 3 } vplsCompliances OBJECT IDENTIFIER ::= { vplsConformance 1 } vplsMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for entities that implement the VPLS-MIB." MODULE -- this module MANDATORY-GROUPS { vplsInstConfigGroup, vplsVsConfigGroup, vplsVpConfigGroup, vplsNotificationGroup } ::= { vplsCompliances 1 } vplsGroups OBJECT IDENTIFIER ::= { vplsConformance 2 } vplsInstConfigGroup OBJECT-GROUP OBJECTS { vplsInstCustId, vplsInstSiteId, vplsInstName, vplsInstDescr, vplsInstUpTime, vplsVsTrapEnable, vplsInstRowStatus } STATUS current DESCRIPTION "A collection of attributes that contain configuration of VPLS Instances." ::= { vplsGroups 1 } vplsInstStatsGroup OBJECT-GROUP OBJECTS { vplsInstStatus, vplsInstPeers, vplsInstInBytes, vplsInstOutBytes, vplsInstInDiscardPkts, vplsInstInDataRate, vplsInstOutDataRate, vplsInstServiceTime, vplsInstNotInServiceTime, vplsInstFailureCount } STATUS current DESCRIPTION "A collection of attributes that contain stats of the VPLS Instances." ::= { vplsGroups 2 } vplsInstPeerGroup OBJECT-GROUP OBJECTS { vplsInstPeerIndex, vplsInstLocCustId, vplsInstCustId, vplsInstSiteId, vplsInstPeerAddress } STATUS current DESCRIPTION "A collection of attributes that contain information of peers of the VPLS Instances." ::= { vplsGroups 3 } vplsVsConfigGroup OBJECT-GROUP OBJECTS { vplsVsIndex, vplsVsId, vplsVsAddress, vplsVsNumPorts, vplsVsStatus } STATUS current DESCRIPTION "A collection of attributes that contain configuration of virtual switches." ::= { vplsGroups 4 } vplsVpConfigGroup OBJECT-GROUP OBJECTS { vplsVpIndex, vplsVpInterface, vplsVpVpnId} STATUS current DESCRIPTION "A collection of attributes that contain configuration of virtual ports." ::= { vplsGroups 5 } vplsVpStatsGroup OBJECT-GROUP OBJECTS { vplsVpInBytes, vplsVpOutBytes, vplsVpInDiscards } STATUS current DESCRIPTION "A collection of attributes that contain statistics of virtual ports." ::= { vplsGroups 6 } vplsNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { VirtualSwitchUp, VirtualSwitchDown, vplsVpnFail } STATUS current DESCRIPTION "A collection of traps that are supported by the VPLS instance." ::= { vplsGroups 7 } END