-- Copyright (C) 2008-2014 Super Micro Computer Inc. All Rights Reserved -- $Id: fserps.mib,v 1.33 2013/07/29 12:52:40 siva Exp $ -- ERPS Proprietary MIB Definition -- This file explains the proprietary MIB implemented for -- ERPS (Ethernet Ring Protection Switching) feature -- which conforms to the ITU-T specification G.8032/Y.1344 (06/2008) -- and G.8032/Y.1344 Amendment I (04/2009) SUPERMICRO-ERPS-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32, Unsigned32, enterprises, Counter32 FROM SNMPv2-SMI VlanId FROM SUPERMICROQ-BRIDGE-MIB Dot1agCfmMepId FROM IEEE8021-CFM-MIB InterfaceIndex, InterfaceIndexOrZero FROM IF-MIB DisplayString, RowStatus, TEXTUAL-CONVENTION, TruthValue, MacAddress FROM SNMPv2-TC; fsErpsMIB MODULE-IDENTITY LAST-UPDATED "201209050000Z" ORGANIZATION "Super Micro Computer Inc." CONTACT-INFO "support@Supermicro.com" DESCRIPTION "This MIB is a proprietary MIB for ERPS to provide ethernet ring protection switching as per ITU-T G.8032/Y.1344 and ITU-T G.8032/Y.1344 Amendment I (04/2009)" REVISION "201209050000Z" DESCRIPTION "This MIB is a proprietary MIB for ERPS to provide ethernet ring protection switching as per ITU-T G.8032/Y.1344 and ITU-T G.8032/Y.1344 Amendment I (04/2009)" ::= { enterprises supermicro-computer-inc(10876) super-switch(101) basic(2) 40 } -- ***************************************************************************** -- Subtrees in the ERPS MIB -- ***************************************************************************** fsErpsContext OBJECT IDENTIFIER ::= { fsErpsMIB 1 } fsErpsRing OBJECT IDENTIFIER ::= { fsErpsMIB 2 } fsErpsStats OBJECT IDENTIFIER ::= { fsErpsMIB 3 } fsErpsNotifications OBJECT IDENTIFIER ::= { fsErpsMIB 4 } -- ***************************************************************************** -- Textual Conventions -- ***************************************************************************** RingId ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "Ring identifier used to identify a ring protection group." SYNTAX Unsigned32 (1..4294967295) RingMonitorMechanismType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Object represents the type of monitoring mechanism used to monitor a Ring Entry. The value can be one of the following: cfm(1) Using Connectivity Fault Management via OAM functions and mechanisms for Ethernet based networks (ITU-T Y.1731) mplsOam(2) Using MPLS-OAM functions for MPLS LSP's and Pseudowires in MPLS TP networks for monitoring the working and protection services. For mplsOam monitoring mechanism to monitor the ring ports,the monitoring PWs needs to be created in MPLS module and down MEPs for the PWs needs to be provisioned in BFD for monitoring the PWs and the MEPs needs to be provisioned in fsErpsRingCfmTable. For sub-rings, Down MEP of the Monitoring PWs of fsErpsRingPort1 of the interconnecting nodes needs to be provisioned in the same fsErpsRingCfmTable. reserved(x) Reserved for other monitoring mechanisms for future use" SYNTAX INTEGER { cfm(1),mplsOam(2) } RingIdOrNone ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "The Ring identifier that uniquely identifies a specific ring protection group,or no ring. The special value of zero is used to indicate that no ring is present or used. This can be used in any situation where an object or a table entry must refer either to a specific ring, or to no ring. Note that a MIB object that is defined using this TEXTUAL-CONVENTION should clarify the meaning of 'no ring' (i.e., the special value 0)." SYNTAX Unsigned32 (0 | 1..4294967295) RingServiceType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A value representing the type of service to be protected by this ring group. The value can be one of the following: vlan(1) - IEEE802.1Q VLAN mplsLSP(2) - MPLS Label Switched Path (LSP) mplsPW(3) - MPLS Pseudowire. Right and left pseudowires will be monitored and protected. mplsLSPPW(4) - MPLS LSP Pseduowire.A set of pseudowires can exist and the overlying LSP will be monitored and all the underlying pseudowires will be protected. reserved(x) - Reserved for future use. [x values can be 5...7] The ring service type indicates the type of the transporting service that needs to be protected for this ring group." SYNTAX INTEGER { vlan(1), mplsLSP(2), mplsPW(3), mplsLSPPW(4) } -- ***************************************************************************** -- Context table -- ***************************************************************************** fsErpsContextTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsContextEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table of ERPS module parameters per ERPS Virtual Context." ::= { fsErpsContext 1 } fsErpsContextEntry OBJECT-TYPE SYNTAX FsErpsContextEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This entry contains virtual context specific ERPS module parameters." INDEX { fsErpsContextId } ::= { fsErpsContextTable 1 } FsErpsContextEntry ::= SEQUENCE { fsErpsContextId Unsigned32, fsErpsCtxtName DisplayString, fsErpsCtxtSystemControl INTEGER, fsErpsCtxtModuleStatus INTEGER, fsErpsCtxtTraceInput DisplayString, fsErpsCtxtTrapStatus INTEGER, fsErpsCtxtClearRingStats TruthValue, fsErpsCtxtRowStatus RowStatus, fsErpsCtxtVlanGroupManager INTEGER, fsErpsCtxtProprietaryClearFS TruthValue } fsErpsContextId OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "Context identifier used to distinguish between the multiple virtual bridge contexts within a bridge." ::= { fsErpsContextEntry 1 } fsErpsCtxtName OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) MAX-ACCESS read-only STATUS current DESCRIPTION "This object gives the context-name for this virtual context." ::= { fsErpsContextEntry 2 } fsErpsCtxtSystemControl OBJECT-TYPE SYNTAX INTEGER { start(1), shutdown(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "The administrative shutdown status requested by management for the ERPS feature. When set to 'start(1)', ERPS module will be started in this context and the module status will be initialized to 'disable(2)'. When set to 'shutdown(2)', ERPS module will be shutdown in this context and all ring configurations in this context will be deleted." DEFVAL { shutdown } ::= { fsErpsContextEntry 3 } fsErpsCtxtModuleStatus OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "The administrative status requested by management for the ERPS feature. When set to 'enable(1)', ERPS module will be enabled in this context and ERPS protocol will start running on all rings configured in this context. This object can be set to 'enable(1)', only when the fsErpsCtxtSystemControl is configured as 'start(1)'. When set to 'disable(2)', ERPS module will be disabled in this context and all rings configured in this context will become non-operational i.e., ERPS protocol will not run on the rings in this context." DEFVAL { disable } ::= { fsErpsContextEntry 4 } fsErpsCtxtTraceInput OBJECT-TYPE SYNTAX DisplayString (SIZE(1..255)) MAX-ACCESS read-write STATUS current DESCRIPTION "This object stores the trace option string input given by the user. To enable or disable particular trace, the user has to enter the corresponding string(given below) assigned for that. To enable or disable more than one trace, the user has to enter the corresponding strings with SPACE delimiter between each string. Syntax: ... For example, to enable the below traces - Start and Shutdown traces - Management traces The input string has to be: 'enable init-shut mgmt' For example, to disable the below traces - start and Shutdown traces and - Management traces The input string has to be: 'disable start-shutdown mgmt' First string should be either enable or disable. The definition of input strings that can be given are: enable - Enables the corresponding option, disable - Disables the corresponding option, start-shutdown - Start and Shutdown traces, mgmt - Management traces, ctrl - Control Plane traces, pkt-dump - Packet Dump traces, resource - Traces related to all resources except buffers, all-fail - All Failure traces, buffer - Buffer allocation/ release traces, critical - Critical traces, By default, critical trace will be enabled." DEFVAL { "critical" } ::= { fsErpsContextEntry 5 } fsErpsCtxtTrapStatus OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to enable or disable the TRAP notification. The value 'enable (1)' indicates that the ERPS will send notifications. The value 'disable (2)' indicates that the ERPS notifications will not be sent." DEFVAL { enable } ::= { fsErpsContextEntry 6 } fsErpsCtxtClearRingStats OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to clear statistics counters for all rings in this context. When set to true(1), statistics counters for all rings in this context will be cleared. When set to false(2), no action will take place. Get of this object will always return 'false'. " DEFVAL { false } ::= { fsErpsContextEntry 7 } fsErpsCtxtRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-write STATUS current DESCRIPTION "Row status for the ring context entry. An entry can be created in this table, only when the corresponding virtual context is created in the system. Only 'createAndGo', and 'destroy' values are allowed for this object. 'createAndWait' and 'notInService' values are not allowed. When virtual context is deleted from the system, the corresponding entry in this table will be deleted. All the fields in this table can be changed, only when the row status is active." ::= { fsErpsContextEntry 8 } fsErpsCtxtVlanGroupManager OBJECT-TYPE SYNTAX INTEGER { mstp(1), erps(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the module that manages the grouping of vlans in this virtual context. mstp(1) - MSTP(Multiple Spanning Tree Protocol) module manages the grouping of vlans. In this case, MSTI(MSTP instance Id) identifies the group (or vlan list). If a MSTI is mapped to a ring instance, then that ring instance will protect the list of vlan mapped to that MSTI. Administrator should make sure that MSTP module is started and enabled, if this object is set to mstp(1). erps(2) - ERPS module manages the grouping of vlans. If this value is set, then fsErpsVlanGroupTable is used to configure the grouping of vlans. In this case, fsErpsVlanGroupId object identifies the group. If a list is mapped to a ring instance, the ring instance will protect the list of vlans mapped to that list. fsErpsVlanGroupTable can be configured in a virtual context only when this object is set to 'erps'. It is recommended to shutdown erps or delete all rings in this context before changing the value for this context." DEFVAL { mstp } ::= { fsErpsContextEntry 9 } fsErpsCtxtProprietaryClearFS OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to enable or disable the ERPS proprietary implementation. The value 'true (1)' indicates that the ERPS proprietary implementation will override the standard implementation. On clearing the force switch the ring will move to the Ideal state as per the standard even though if there is a local SF, as per the standard local SF will be ignored if the ring node is in a force switch state refer section Table 10-1/G.8032/Y.1344-Request/State Priority but if Local SF is not handled on Clear FS then this will lead to ring segmentation. ERPS proprietary implementation will move the ring nodes to protection state on clearing the force switch and will send RAPS-SF PDU." DEFVAL { false } ::= { fsErpsContextEntry 10 } --***************************************************************************** -- fsErpsVlanGroupTable --***************************************************************************** fsErpsVlanGroupTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsVlanGroupEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table is used configure the grouping of set of vlans. This table can be accessed only if fsErpsCtxtVlanGroupManager object is set to 'erps'. By default a group with GroupId zero will be created and all vlans will get mapped to it. The VLAN will be treated as VFI to be protected by the ring group when the monitoring mechanism is mplsOam" ::= { fsErpsContext 2 } fsErpsVlanGroupEntry OBJECT-TYPE SYNTAX FsErpsVlanGroupEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This entry contains vlan id, group/list/instance Id and status of that vlan." INDEX { fsErpsContextId, fsErpsVlanId, fsErpsVlanGroupId } ::= { fsErpsVlanGroupTable 1 } FsErpsVlanGroupEntry ::= SEQUENCE { fsErpsVlanId VlanId, fsErpsVlanGroupId Integer32, fsErpsVlanGroupRowStatus RowStatus } fsErpsVlanId OBJECT-TYPE SYNTAX VlanId MAX-ACCESS not-accessible STATUS current DESCRIPTION "This is the vlan id which is mapped to this group." ::= { fsErpsVlanGroupEntry 1 } fsErpsVlanGroupId OBJECT-TYPE SYNTAX Integer32 (0..64) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This is the vlan group identifier. A group can contain multiple vlans, but one vlan cannot be part of multiple groups. It is similar to the MSTP Instance mapped with vlan." ::= { fsErpsVlanGroupEntry 2 } fsErpsVlanGroupRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-write STATUS current DESCRIPTION "This denotes the row status for this table. Only 'CreateAndGo' and 'destroy' values are allowed for this object. 'CreateAndWait' and 'notInService' values are not allowed. Vlans can be added/removed from a group, even when that group is associated with some active ring instances. When a vlan is removed from a non-default group, it gets added to default group. This object cannot be configured for default group. To move a vlan from default group to another group, set the row status for that (non-default group, vlan) as 'createAndGo'. Whenever a vlan is created, it is recommended to add that vlan to the required group. Also before deleting a vlan, it is recommended to remove that vlan from the non-default group to which it is mapped. Example: To add vlans 2, 3 to a group with id as 1 in this table, the following sequence to be followed: 1. Set the fsErpsVlanGroupRowStatus as 'CreateAndGo' for the entry with index (fsErpsVlanGroupId = 1, fsErpsVlanId = 2) 2. Set the fsErpsVlanGroupRowStatus as 'CreateAndGo' for the entry with index (fsErpsVlanGroupId = 1, fsErpsVlanId = 3) To delete a vlan 3 from group 1 do the following: 1. Set the fsErpsVlanGroupRowStatus as 'destroy' for the entry with index (fsErpsVlanGroupId = 1, fsErpsVlanId = 3)." ::= { fsErpsVlanGroupEntry 3 } -- ############################################################################# -- Ring Table Dependencies: -- ======================== -- Ring configurations are spread across the following three tables: -- 1. fsErpsRingTable -- - Ring table is used to configure a 'Protection Ring' in a -- switch. This table contains the mandatory configurations for -- the rings. -- 2. fsErpsRingCfmTable -- - If 'cfm' monitoring mechanism is to be followed, then -- through this table, monitoring entities for the ring ports -- should be configured. -- 3. fsErpsRingConfigTable -- - This table contains optional configurations and commands for -- the rings. -- 4. fsErpsRingTcPropTable -- - This table contains the list of ring IDs for a sub-ring, where -- the sub-ring's TC needs to be propagated. -- -- -- Sample Ring Topology: -- -- ======= ======= -- P3| N1 |P1 P3| N2 |P1 -- =====| |=======| |= -- | | | | -- ======= ======= -- |P2 |P2 -- | R1 | -- | | -- |P4 |P4 -- ======= ======= -- P3| N4 |P1 P3| N3 |P1 -- =====| |==/====| |= -- | | | | -- ======= ======= -- |P2 |P2 -- | R2 | -- | | -- |P4 |P4 -- ======= ======= -- P3| N5 |P1 P3| N6 |P1 -- =====| |==/===-| |= -- | | | | -- ======= ======= -- |P2 |P2 -- -- R1 is a ring formed by the closed loop between the ring nodes N1, N2, -- N3 and N4 with links (N1:P1<==>N2:P3), (N2:P2<==>N3:P4),(N3:P3<==>N4:P1), -- and (N4:P4<==>N1:P2). -- RplOwner for Ring R1 is N4 and the RPL port is N4:P1. -- -- R2 is a sub-ring formed by the ring nodes N3,N4,N5 andN6 with links -- (N3:P2<==>N6:P4),(N6:P3<==>N5:P1) and (N5:P4<==>N4:P2). -- RplOwner for sub-ring R2 is N5 and the RPL port is N5:P1. -- -- N3 and N4 are the interconnected nodes in this topology. -- Port P1 in the interconnected node N4 and port P3 in the interconnected -- node N3 belong only to ring R1. -- -- For sub-ring R2 in interconnected node N4: -- Ring port 1 is P2. -- Ring port 2 is 0. -- -- ############################################################################# fsErpsRingTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsRingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION " The table for creating and configuring the ring entries. Each entry has information about one ring in the switch." ::= { fsErpsRing 1 } fsErpsRingEntry OBJECT-TYPE SYNTAX FsErpsRingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The ring table entry, each entry in this table contains the attributes which define a ring." INDEX { fsErpsContextId, fsErpsRingId } ::= { fsErpsRingTable 1 } FsErpsRingEntry ::= SEQUENCE { fsErpsRingId RingId, fsErpsRingVlanId VlanId, fsErpsRingName DisplayString, fsErpsRingPort1 InterfaceIndex, fsErpsRingPort2 InterfaceIndexOrZero, fsErpsRingRplPort InterfaceIndexOrZero, fsErpsRingPortBlockingOnVcRecovery TruthValue, fsErpsRingNodeType INTEGER, fsErpsRingOperatingMode INTEGER, fsErpsRingMonitorMechanism RingMonitorMechanismType, fsErpsRingPort1Status INTEGER, fsErpsRingPort2Status INTEGER, fsErpsRingSemState INTEGER, fsErpsRingNodeStatus Integer32, fsErpsRingRowStatus RowStatus, fsErpsRingMacId Integer32, fsErpsRingProtectedVlanGroupId Integer32, fsErpsRingProtectionType INTEGER, fsErpsRingRAPSCompatibleVersion INTEGER, fsErpsRingRplNeighbourPort InterfaceIndexOrZero, fsErpsRingRAPSSubRingWithoutVC TruthValue, fsErpsRingRplNextNeighbourPort InterfaceIndexOrZero, fsErpsRingPort1NodeID MacAddress, fsErpsRingPort2NodeID MacAddress, fsErpsRingPort1BPRBitVal TruthValue, fsErpsRingPort2BPRBitVal TruthValue, fsErpsRingProtectedVlanGroupList OCTET STRING, fsErpsRingServiceType RingServiceType, fsErpsRingPort1SubPortList OCTET STRING, fsErpsRingPort2SubPortList OCTET STRING } fsErpsRingId OBJECT-TYPE SYNTAX RingId MAX-ACCESS not-accessible STATUS current DESCRIPTION "Unique numeric identifier of a ring within the context for administrative purposes. In service based protection mode(Multiple ERP instances), this object represents the id of the ring instance." ::= { fsErpsRingEntry 1 } fsErpsRingVlanId OBJECT-TYPE SYNTAX VlanId MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the dedicated VLAN Id used by a ring for its R-APS messages communication. It is recommended that the, * R-APS VLANs should be used only for ring R-APS message communication and should not be used for data switching and management purposes. It is recommended that R-APS VLAN is created first through the VLAN configuration before making the ring entry active, in order to avoid any loss of R-APS PDU Tx/Rx. It is not recommended to use the same R-APS VLAN ID for more than one ring." ::= { fsErpsRingEntry 2 } fsErpsRingName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates the name of the ring. By default, the ring name will be constructed by appending ring ID to the string 'ring'. Example: Default ring name for a ring with ID as 1 will be 'ring1'." ::= { fsErpsRingEntry 3 } fsErpsRingPort1 OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-write STATUS current DESCRIPTION "First port of the two ring ports participating in the ring. Any interface with valid interface ID can be configured as a ring port." ::= { fsErpsRingEntry 4 } fsErpsRingPort2 OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-write STATUS current DESCRIPTION "Second port of the two ring ports participating in the ring. Any interface with valid interface ID can be configured as a ring port. On the interconnected node of a sub-ring, this port should be configured as zero." ::= { fsErpsRingEntry 5 } fsErpsRingRplPort OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the RPL port of the ring. Valid values for this object are '0', 'IfIndex of fsErpsRingPort1' and 'IfIndex of fsErpsRingPort2'. When a port is configured as a RPL port, that node becomes RPL owner for that ring. Value '0' indicates that none of the ring ports is a RPL port and hence the node is not a RPL owner. In an interconnected node of a sub-ring, the 'fsErpsRingPort1' alone can be chosen as an RPL port when administrator decides to have the interconnected node as the RPL Owner of the sub-ring. Administrator has to ensure that, only one node in a ring is configured as RPL owner." DEFVAL { 0 } ::= { fsErpsRingEntry 6 } fsErpsRingPortBlockingOnVcRecovery OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object is applicable for the interconnected nodes of a sub-ring. This configuration helps to avoid the possibility of temporary loops getting formed in the sub-ring during the virtual channel recovery. This object should be set to 'true' on only one of the interconnected node of the sub-ring. (If 'fsErpsRingPortBlockingOnVcRecovery' is configured to be 'true' on both the interconnected node of a sub-ring, then that sub-ring will be temporary cutoff from the rest of network). When this object value is set to 'true', the fsErpsRingPort1 of this ring node will be blocked in the event of virtual channel recovery. The fsErpsRingPort1 of the sub-ring will be unblocked when the RPL port of the sub-ring is blocked and NRRB messages from the RPL Owner is received by this node." DEFVAL { false } ::= { fsErpsRingEntry 7 } fsErpsRingNodeType OBJECT-TYPE SYNTAX INTEGER { rplOwner(1), nonRplOwner(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies the node state of this ring node. If fsErpsRingRplPort is configured for a ring node, then that ring node becomes 'rplOwner', otherwise the node remains as 'nonRplOwner'." ::= { fsErpsRingEntry 8 } fsErpsRingOperatingMode OBJECT-TYPE SYNTAX INTEGER { revertive(1), nonRevertive(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies whether the ring is operating in revertive or nonRevertive manner. In revertive mode of operation, once the failed link recovers, the data path will be switched back from protection path to working path. In nonRevertive mode of operation, once the failed link recovers, one of the recovered link port will remain in blocked state and the data still remains in the protection path. This object can be changed, only when the rowstatus for this ring is not active." DEFVAL { revertive } ::= { fsErpsRingEntry 9 } fsErpsRingMonitorMechanism OBJECT-TYPE SYNTAX RingMonitorMechanismType MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates the type of monitoring mechanism used for detecting faults of the ring link. Currently 'cfm' and 'MPLS OAM' is supported as monitoring mechanism. For 'cfm' monitoring mechanism to monitor the ring ports, appropriate down MEPs on the R-APS VLAN of the ring has to be provisioned through fsErpsRingCfmTable. For sub-rings, a Up & Down MEP on the sub-ring R-APS VLAN needs to be installed on fsErpsRingPort1 of the interconnecting nodes using the same fsErpsRingCfmTable." DEFVAL { cfm } ::= { fsErpsRingEntry 10 } fsErpsRingPort1Status OBJECT-TYPE SYNTAX INTEGER { blocked(1), unblocked(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates ring port1's current status updated by ERPS control process of this ring. If the status is blocked then: - Data traffic will be blocked on this port. - R-APS messages received on this port will be given to ERPS control process but will not be forwarded. - Similarly R-APS messages received at other member ports of R-APS VLAN will not be forwarded on this port. - Locally regenerated R-APS packets will be transmitted out of this port. If the status is unblocked then: - Data traffic will be unblocked on this port. - R-APS messages received on this port will be given to ERPS control process and will be forwarded to R-APS VLAN member ports. - Similarly R-APS messages received at other member ports of R-APS VLAN can be forwarded on this port." ::= { fsErpsRingEntry 11 } fsErpsRingPort2Status OBJECT-TYPE SYNTAX INTEGER { blocked(1), unblocked(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates ring port2's current status updated by ERPS control process of this ring. If the status is blocked then: - Data traffic will be blocked on this port. - R-APS messages received on this port will be given to ERPS control process but will not be forwarded. - Similarly R-APS messages received at other member ports of R-APS VLAN will not be forwarded on this port. - Locally regenerated R-APS packets will be transmitted out of this port. If the status is unblocked then: - Data traffic will be unblocked on this port. - R-APS messages received on this port will be given to ERPS control process and will be forwarded to R-APS VLAN member ports. - Similarly R-APS messages received at other member ports of R-APS VLAN can be forwarded on this port. For sub-rings in interconnected nodes, this object is not valid, and get on this object will always return 'unblocked'." ::= { fsErpsRingEntry 12 } fsErpsRingSemState OBJECT-TYPE SYNTAX INTEGER { disabled(0), idle(1), protection(2), manualswitch(3), forcedswitch(4), pending(5) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object gives the node state as per the G.8032 state event machine. When ring Row status is not active or when ERPS is disabled in the virtual context, this object will show 'disabled(0)' status." ::= { fsErpsRingEntry 13 } fsErpsRingNodeStatus OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "A 32 bit mask giving the current status of the ring by specifying the events/status currently present. Bit 1 - Signal-failure on Ring Port 1 Bit 2 - Signal-failure on Ring Port 2 Bit 3 - Remote-signal-failure received on Ring Port 1 Bit 4 - Remote-signal-failure received on Ring Port 2 Bit 5 - Rpl-blocked Bit 6 - Wait-to-restore-timer-running Bit 7 - Hold-timer-running Bit 8 - Guard-timer-running Bit 9 - Periodic-timer-running Bit 10 - Wait-to-block-timer-running Value 1 of the bit signifies the presence of the event associated with that bit and value zero signifies the absence of that event For example: If a signal failure is received on Ring port 1 and R-APS(SF) is received on port 2, then Bit 1 and 4 will have the value as 1. Signal failure on a port represents Port failure indication received from the monitoring entity. This does not depend on hold off timer status. If signal failure is received on ring port 1 and hold-off timer is started, then both Bit 1 and Bit 7 will have the value as 1. Bit 9 indicates periodic timer and Bit 10 will have the value 1 when WTB timer is triggered." ::= { fsErpsRingEntry 14 } fsErpsRingRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-write STATUS current DESCRIPTION "Row status of the ring entry. Entries in this table can be modified by setting the RowStatus as NOT_IN_SERVICE. This RowStatus can be made active only if: - fsErpsRingPort1 for this entry is set to valid interfaceIndex and - fsErpsRingPort2 for this entry is set to valid interfaceIndex or is set to zero - fsErpsRingVlanId for this entry is configured - there exists a active entry for this ring in fsErpsRingCfmTable. This RowStatus can be set to 'destroy', only when the corresponding entry for this ring in fsErpsRingCfmTable is deleted." ::= { fsErpsRingEntry 15 } fsErpsRingMacId OBJECT-TYPE SYNTAX Integer32 (1..255) MAX-ACCESS read-write STATUS current DESCRIPTION "This object represents the id of the ring instance to be communicated via R-APS PDUs to other ring nodes. For this ring instance, the value of this object forms the last octet of the destination MAC address field of the R-APS PDUs. All ring nodes in a single ring instance must be configured with the same ring mac id. To interoperate with ring nodes implementing the version 1 of 'G.8032/Y.1344 Ethernet Ring Protection Switching', the value of this object should be set as 1. The ring MAC id can be modified only when the row status of the ring entry is in not in service." DEFVAL { 1 } ::= { fsErpsRingEntry 16 } fsErpsRingProtectedVlanGroupId OBJECT-TYPE SYNTAX Integer32 (0..64) MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the vlan group associated with this ring instance. If VlanGroupManager is 'mstp', then this object identifies the Mstp Instance Id. Otherwise this object identifies the VlanGroup created through fsErpsVlanGroupTable. This object can be used when single Vlan Group is to be mapped with the ring. To map multiple Vlan Groups with the ring, the MIB object 'fsErpsRingProtectedVlanGroupList' should be used. When this mib object is configured, it would be added to fsErpsRingProtectedVlanGroupList. If the ring is running in portBased protection mode then this object will not have any effect. Protected vlan group Id can be modified only when the row status of the ring entry in not in service." DEFVAL { 0 } ::= { fsErpsRingEntry 17 } fsErpsRingProtectionType OBJECT-TYPE SYNTAX INTEGER { portBased(1), serviceBased(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the type of protection being provided by this ring instance. The following two protection switching types are possible: portBased - Port Based Protection This ring applies the protection switching mechanism for all traffic that pass through its ring ports. Hence when ERP control process decides to block or unblock a ring port, all data traffic that passes through that port gets affected. serviceBased - Service Based Protection. This ring applies the protection switching mechanism only for the set of vlans mapped to this ring instance. Hence when ERP control process decides to block or unblock a ring port, only the data traffic of the vlans that are mapped to this ring instance and that passes through that port gets affected. All ring nodes in a single ring instance must be configured with the same protection type. In a single virtual context one ring can run in port based protection mode and another ring can run in service based protection mode. It is not recommended to configure a port as ring port in a port based ring instance as well as in a service based ring instance. It is not recommended to configure a port as ring port in multiple port based ring instance. The ring protection type can be modified only when the row status of the ring entry in not in service." DEFVAL { portBased } ::= { fsErpsRingEntry 18 } fsErpsRingRAPSCompatibleVersion OBJECT-TYPE SYNTAX INTEGER { v1(1), v2(2)} MAX-ACCESS read-write STATUS current DESCRIPTION "This is used to configure the compatible version number of the node in the ring. The default value is version2 (2).[Reference : Section 10.1.13 Backward compatibility logic of ITU-T G.8032 Y.1344 (03/2010)] The version number can be modified only when the row status of the ring entry is in not in service." DEFVAL { v2 } ::= { fsErpsRingEntry 19 } fsErpsRingRplNeighbourPort OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the RPL Neighbour port of the ring . Valid values for this object are '0', 'IfIndex of fsErpsRingPort1' and 'IfIndex of fsErpsRingPort2'. When a port is configured as a RPL Neighbour port, that node becomes RPL Neighbour for that ring. [Reference : Section 10.1 of ITU-T G.8032 Y.1344 (03/2010)] Value '0' indicates that none of the ring ports is a RPL Neighbour port and hence the node is not a RPL Neighbour. In an interconnected node of a sub-ring, the 'fsErpsRingPort1' alone can be chosen as an RPL Neighbour port when administrator decides to have the interconnected node as the RPL Neighbour of the sub-ring. Both the RPL owner and RPL Neighbor node cannot be enabled at the same Ethernet Ring Node. Administrator has to ensure that, only one node in a ring is configured as RPL Neighbour ,and the node is adjacent to the RPL ." DEFVAL { 0 } ::= { fsErpsRingEntry 20 } fsErpsRingRAPSSubRingWithoutVC OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This configuration helps to configure the sub-ring to run with or without an RAPS Virtual Channel. When this object is set to 'false',the sub-ring is configured to run with a R-APS Virtual Channel and both the traffic channel and the R-APS channel are blocked, when the ring port is set to blocked state. When this object is set to 'true',the sub-ring is configured to run without a R-APS Virtual Channel and the traffic channel is blocked but the R-APS channel is not blocked, when the ring port is set to blocked state [Reference : Section 10.1.14 of ITU-T G.8032 Y.1344 (03/2010)]. Administrator has to ensure that, this object is configured to true only in the nodes of a sub-ring. This object should be set to the same value (true/false) on all the nodes of the sub-ring. This object is applicable only when the compatible version is 2. This object can be changed, only when the rowstatus for this ring is not active." DEFVAL { false } ::= { fsErpsRingEntry 21 } fsErpsRingRplNextNeighbourPort OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the RPL Next Neighbour port of the ring. Valid values for this object are '0', 'IfIndex of fsErpsRingPort1' and 'IfIndex of fsErpsRingPort2'. When a port is configured as a RPL Next Neighbour port, that node becomes RPL Next Neighbour node for that ring. [Reference : Section VIII.4 of ITU-T G.8032 Y.1344 (03/2010)] Value '0' indicates that none of the ring ports is a RPL Next Neighbour port and hence the node is not a RPL Next Neighbour. In an interconnected node of a sub-ring, the 'fsErpsRingPort1' alone can be chosen as an RPL Neighbour port when administrator decides to have the interconnected node as the RPL Neighbour of the sub-ring. RPL owner node, RPL Neighbour node and RPL next neighbour node cannot be enabled at the same Ethernet Ring Node. Administrator has to ensure that, only nodes in a ring which are adjacent to the RPL owner or RPL Neighbour node are configured as RPL Next Neighbour Nodes. This object is applicable only when the compatible version is 2." DEFVAL { 0 } ::= { fsErpsRingEntry 22 } fsErpsRingPort1NodeID OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the Node ID of the Last R-APS PDU received on ring port 1. This object is used for the Flush Logic feature mentioned in Section 10.1.10 of ITU-T G.8032 Y.1344 (03/2010)." ::= { fsErpsRingEntry 23 } fsErpsRingPort2NodeID OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the Node ID of the Last R-APS PDU received on ring port 2. This object is used for the Flush Logic feature mentioned in Section 10.1.10 of ITU-T G.8032 Y.1344 (03/2010)." ::= { fsErpsRingEntry 24 } fsErpsRingPort1BPRBitVal OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the Blocked Port Reference (BPR bit) status of the Last R-APS PDU Received on ring port 1. This object is used for the Flush Logic feature mentioned in Section 10.1.10 of ITU-T G.8032 Y.1344 (03/2010)." ::= { fsErpsRingEntry 25 } fsErpsRingPort2BPRBitVal OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the Blocked Port Reference (BPR bit) status of the Last R-APS PDU Received on ring port 2. This object is used for the Flush Logic feature mentioned in Section 10.1.10 of ITU-T G.8032 Y.1344 (03/2010)." ::= { fsErpsRingEntry 26 } fsErpsRingProtectedVlanGroupList OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..8)) MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates the list of VLAN groups mapped to the ring entry. If the ring is running in portBased protection mode then this object will not have any effect. This object can be used when list of Vlan Groups are to be mapped with the ring. To map single Vlan Group with the ring, the MIB object 'fsErpsRingProtectedVlanGroupId' should be used. Protected vlan group List can be modified without making the row status of the ring entry as not in service. Example: Consider VlanGroup 10 is mapped to a Ring entry Ring 1 using mib object fsErpsRingProtectedVlanGroupId. Now configuring a list of VlangGroups 20,30 and 40 to Ring entry Ring 1 by using this mib object will result in the addition of vlan group 10 mapped via fsErpsRingProtectedVlanGroupId to the Vlan group list. Therefore the VlanGroup mapping with Ring entry Ring 1 will contain the list of vlan groups 10,20,30 and 40." ::= { fsErpsRingEntry 27 } fsErpsRingServiceType OBJECT-TYPE SYNTAX RingServiceType MAX-ACCESS read-write STATUS current DESCRIPTION "This object indicates the service on which protection is provided for this ring. The following service types are provided. - vlan(1) - mplsLSP(2) - mplsPW(3) - mplsLSPPW(4) The service types vlan and mplsLSPPW are currently supported." DEFVAL {vlan} ::= { fsErpsRingEntry 28 } fsErpsRingPort1SubPortList OBJECT-TYPE SYNTAX OCTET STRING MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the list of interfaces to which R-APS service can be extended, without actually running R-APS. An interface identified in this fsErpsRingPort1SubPortList is the first port of a ring pair. This list is configured as SubPorts for fsErpsRingPort1. Whenever any state change is identified in fsErpsRingPort1, it is propogated to the list of interfaces identified by this MIB object. This object should be configured as IfIndex'1', IfIndex'2', ... IfIndex'n' where IfIndex'1', IfIndex'2', IfIndex'n' corresponds to an interface with valid interface ID. If IfIndex'n' in this list is the first port of the ring, then the second port of ring has to be identified as IfIndex'n' in fsErpsRingPort2SubPortList, where 'n' corresponds to the position of the interface index in the list. This object is currently applicable only when the fsErpsRingServiceType is set to mplsLSPPW. The administrator must ensure that the Pseudowire interfaces configured belong to the same LSP." DEFVAL { "0" } ::= { fsErpsRingEntry 29 } fsErpsRingPort2SubPortList OBJECT-TYPE SYNTAX OCTET STRING MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the list of interfaces to which R-APS support is extended, without actually running R-APS. An interface identified in this fsErpsRingPort2SubPortList is the second port of a ring pair. This list is configured as SubPorts for fsErpsRingPort2. Whenever any state change is identified in fsErpsRingPort2, it is propogated to the list of interfaces identified by this MIB object. This object should be configured as IfIndex'1', IfIndex'2', ... IfIndex'n' where IfIndex'1', IfIndex'2', IfIndex'n' corresponds to an interface with valid interface ID. If IfIndex'n' in this list is the second port of the ring, then the first port of ring has to be identified as IfIndex'n' in fsErpsRingPort1SubPortList, where 'n' corresponds to the position of the interface index in the list. This object is currently applicable only when the fsErpsRingServiceType is set to mplsLSPPW. The administrator must ensure that the Pseudowire interfaces configured belongs to the same LSP." DEFVAL { "0" } ::= { fsErpsRingEntry 30 } -- ***************************************************************************** -- Ring's CFM Table -- ***************************************************************************** fsErpsRingCfmTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsRingCfmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains the configurations related to the monitoring entities of the ring entry in the fsErpsRingTable. Currently, fault monitoring using the Y.1731 mechanism is alone supported. The creation of an entry in this table will not create the Y.1731 monitoring entities. These monitoring entities have to be created explicitly in ECFM module. Entry can be created for a {ContextId , RingId} in this table, only when the corresponding entry exists in the fsErpsRingTable." ::= { fsErpsRing 2 } fsErpsRingCfmEntry OBJECT-TYPE SYNTAX FsErpsRingCfmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The entry indicates the monitoring entities for each ring entry." INDEX { fsErpsContextId, fsErpsRingId } ::= { fsErpsRingCfmTable 1 } FsErpsRingCfmEntry ::= SEQUENCE { fsErpsRingMEG1 Unsigned32, fsErpsRingCfmME1 Unsigned32, fsErpsRingCfmMEP1 Dot1agCfmMepId, fsErpsRingMEG2 Unsigned32, fsErpsRingCfmME2 Unsigned32, fsErpsRingCfmMEP2 Dot1agCfmMepId, fsErpsRingCfmRowStatus RowStatus } fsErpsRingMEG1 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "This refers to the Maintenance Entity Group of fsErpsRingPort1. Internally this object will refer to mib object dot1agCfmMdIndex of ECFM 802.1ag std. Both the MEPs installed on ring ports has to be in the same level." ::= { fsErpsRingCfmEntry 1 } fsErpsRingCfmME1 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "This refers to the Maintenance Entity (ME) of the fsErpsRingPort1. Internally this object will refer to mib object dot1agCfmMaIndex of ECFM 802.1ag std. This contains the MEP (identified using object fsErpsRingCfmMEP1) in R-APS VLAN" ::= { fsErpsRingCfmEntry 2 } fsErpsRingCfmMEP1 OBJECT-TYPE SYNTAX Dot1agCfmMepId MAX-ACCESS read-write STATUS current DESCRIPTION "This refers to the MEP ID that monitors the ring port fsErpsRingPort1 in R-APS VLAN of the ring. This MEP needs to be down MEP." ::= { fsErpsRingCfmEntry 3 } fsErpsRingMEG2 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "This refers to the Maintenance Entity Group of fsErpsRingPort2. Internally this object will refer to mib object dot1agCfmMdIndex of ECFM 802.1ag std. Both the MEPs installed on ring ports has to be in the same level." ::= { fsErpsRingCfmEntry 4 } fsErpsRingCfmME2 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "This refers to the Maintenance Entity (ME) of the fsErpsRingPort2. Internally this object will refer to mib object dot1agCfmMaIndex of ECFM 802.1ag std. This contains the MEP (identified using object fsErpsRingCfmMEP2) in R-APS VLAN." ::= { fsErpsRingCfmEntry 5 } fsErpsRingCfmMEP2 OBJECT-TYPE SYNTAX Dot1agCfmMepId MAX-ACCESS read-write STATUS current DESCRIPTION "This refers to the MEP ID that monitors the ring port fsErpsRingPort2 in R-APS VLAN of the ring. This MEP needs to be down MEP. In the interconnecting node of the sub-ring, this identifies the up MEP installed on the ring port fsErpsRingPort1. This up MEP helps in detecting the failure in R-APS virtual channel of the sub-ring." ::= { fsErpsRingCfmEntry 6 } fsErpsRingCfmRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-write STATUS current DESCRIPTION "Denotes the Row Status of the Ring CFM Entry. Creation or modification of any entry in this table is allowed, only when the corresponding ring entry is created and not active in the fsErpsRingTable. Similarly RowStatus of fsErpsRingTable can't be made active, when this RowStaus is not active. This object cannot be set to 'destroy', if corresponding ring entry's RowStatus in fsErpsRingTable is active." ::= { fsErpsRingCfmEntry 7 } -- ***************************************************************************** -- Ring Entry Configuaration Table -- ***************************************************************************** fsErpsRingConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsRingConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Ring configuration table. Each entry in this table corresponds to a configured ring entry in fsErpsRingTable. Entry in this table is implicitly created, when a ring entry is created in the fsErpsRingTable table. This table contains optional configurations and commands for rings." ::= { fsErpsRing 3 } fsErpsRingConfigEntry OBJECT-TYPE SYNTAX FsErpsRingConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry in this table contains optional configurations and commands for the corresponding ring entry. Objects in this entry can be changed, even when the corresponding Ring Entry's RowStatus is active." INDEX { fsErpsContextId, fsErpsRingId } ::= { fsErpsRingConfigTable 1 } FsErpsRingConfigEntry ::= SEQUENCE { fsErpsRingConfigHoldOffTime Unsigned32, fsErpsRingConfigGuardTime Unsigned32, fsErpsRingConfigWTRTime Unsigned32, fsErpsRingConfigPeriodicTime Unsigned32, fsErpsRingConfigSwitchPort InterfaceIndexOrZero, fsErpsRingConfigSwitchCmd INTEGER, fsErpsRingConfigRecoveryMethod INTEGER, fsErpsRingConfigPropagateTC INTEGER, fsErpsRingConfigWTBTime Unsigned32, fsErpsRingConfigClear INTEGER, fsErpsRingConfigInterConnNode INTEGER, fsErpsRingConfigMultipleFailure INTEGER, fsErpsRingConfigIsPort1Present INTEGER, fsErpsRingConfigIsPort2Present INTEGER, fsErpsRingConfigInfoDistributingPort InterfaceIndexOrZero, fsErpsRingConfigKValue OCTET STRING, fsErpsRingConfigFailureOfProtocol TruthValue } fsErpsRingConfigHoldOffTime OBJECT-TYPE SYNTAX Unsigned32 (0..3600000) UNITS "milliseconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to configure the period for the hold-off timer of this ring. Hold-Off timer will be started when a new defect (SF) is received for this ring. This defect will not be given as local SF to ERP control process until Hold-Off timer expires. When the Hold-Off timer expires and if a local defect still exists, it will be given as local SF to the ERPS control process of this ring. The configured value of this timer is applicable only from the next start/re-start of the timer. The Hold-Off timer has a period from 0 to 1 hour, configurable in units of 1 milliseconds. For example, to configure Hold-Off Time as 5 seconds, configure the value as 5000. Default value of Hold-Off timer is 0" DEFVAL { 0 } ::= { fsErpsRingConfigEntry 1 } fsErpsRingConfigGuardTime OBJECT-TYPE SYNTAX Unsigned32 (0..3600000) UNITS "milliseconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to configure the period for the guard timer of this ring. This timer is required to prevent reception of outdated R-APS messages. Guard timer will be started on reception of local clear SF event. R-APS messages (except R-APS event messages) received during the running of the guard timer will be discarded. The configured value of this timer is applicable only from the next start/re-start of the timer. The guard timer has a period from 0 to 1 hour, configurable in units of 1 millisecond. For example, to configure GuardTime as 1 second, configure the value as 1000." DEFVAL { 500 } ::= { fsErpsRingConfigEntry 2 } fsErpsRingConfigWTRTime OBJECT-TYPE SYNTAX Unsigned32 (0..86400000) UNITS "milliseconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to configure the period for the Wait to restore timer. This object is applicable, only if this ring is operating in the revertive mode of operation. In the revertive mode of operation, if this object is configured with a value of '0', then the traffic is switched back to the working entity from the protection entity immediately upon recovery of the working entity from failure. The configured value of this timer is applicable only from the next start/re-start of the timer. The WTR timer has a period from 0 to 24 hour, configurable in units of 1 ms. For example, to configure WTR as 15 minutes, configure the value as 900000. Default WTR timer value is 5 minutes" DEFVAL { 300000 } ::= { fsErpsRingConfigEntry 3 } fsErpsRingConfigPeriodicTime OBJECT-TYPE SYNTAX Unsigned32 (1..3600000) UNITS "milliseconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to configure the periodic timer. Periodic timer is used to configure the transmission interval of R-APS PDUs. Periodic timer is not valid for the first 3 R-APS PDU transmission, that will be send on any change of R-APS information. The configured value of this timer is applicable only from the next start/re-start of the timer. The periodic timer has a period from 1 ms to 1 hour, configurable in units of 1ms.For example, to configure Periodic timer value as 1 minute, configure the value as 60000. Default periodic timer value is 5 seconds." DEFVAL { 5000 } ::= { fsErpsRingConfigEntry 4 } fsErpsRingConfigSwitchPort OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the port that will be blocked by enforcing Forced or Manual Switching command. Port configured here should be one among the fsErpsRingPort1 or fsErpsRingPort2. This configuration is allowed, only when fsErpsRingConfigSwitchCmd is set to 'none'." DEFVAL { 0 } ::= { fsErpsRingConfigEntry 5 } fsErpsRingConfigSwitchCmd OBJECT-TYPE SYNTAX INTEGER { none(1), forceSwitch(2), manualSwitch(3) } MAX-ACCESS read-write STATUS current DESCRIPTION "Before configuring this object with (forceSwitch) or (manualSwitch), fsErpsRingConfigSwitchPort must be configured. When ForcedSwitch is enabled on a ring, irrespective of the status (Failed or not failed) of the switched port, port will be blocked. If a link failure is present in the ring, then setting the value as 'manualSwitch' will not be allowed. Failure of the link in the ring will clear the Manual Switch condition. Force Switch is of higher priority than the Manual switch. Force switch will overwrite the manual switch configuration. Similarly manual switch will not be allowed, when force switch is enabled. When this object is set to forceSwitch: - forceswitch will be applied for this ring. - port identified in fsErpsRingConfigSwitchPort object will be blocked. Setting of this object to manualswitch value will fail if: - forceswitch is already set or - local SF is present in any of the ring port or - R-APS(SF) is present in the priority logic for this ring. When this object is set to manualSwitch: - Port identified in fsErpsRingConfigSwitchPort object will be blocked. ManualSwitch will be automatically cleared if: - local-SF is received on one of the ring ports - R-APS(SF) is received on the ring port (none) command will clear the Manual/Force Switch, and the ring will work in the normal mode. The value of (none) is applicable to clear the manual/force switch only when the compatible version is 1." DEFVAL { none } ::= { fsErpsRingConfigEntry 6 } fsErpsRingConfigRecoveryMethod OBJECT-TYPE SYNTAX INTEGER { auto(1), manual(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object is valid, only when the operating mode for the ring is nonRevertive. This object will not have any impact when the ring is operating in revertive mode. auto - Normal nonRevertive mode of operation will be performed. Local clear SF will be considered according to the nonRevertive mode of operation. manual - Ignore local clear SF on this node, if the node is working in nonRevertive mode of operation. When the link recovers, link ports will remain in blocked state until manual method is changed to auto by administrator. When manual method is changed to auto by administrator, the ERPS will start behaving as in auto mode." DEFVAL { auto } ::= { fsErpsRingConfigEntry 7 } fsErpsRingConfigPropagateTC OBJECT-TYPE SYNTAX INTEGER { enable(1), disable(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to enable/disable the propagation of TC in the associated rings, whenever the flush FDB is triggered for this sub-ring. This configuration is applicable only in the interconnecting nodes of the sub-ring" DEFVAL { disable } ::= { fsErpsRingConfigEntry 8 } fsErpsRingConfigWTBTime OBJECT-TYPE SYNTAX Unsigned32 (0..86400000) UNITS "milliseconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to configure the period for Wait to Block timer. This object is effective, only when Force switch or Manual switch is configured in the ring and when clear command is issued to recover the ring from force switch or manual switch. The WTB timer is defined to be 5 seconds longer than the guard timer. [Reference : Section 10.1.4 of ITU-T G.8032 Y.1344 (03/2010)] The WTB timer has a period from 0 to 24 hour, configurable in units of 1 millisecond. For example, to configure WTB timer as 1 second configure the value as 1000." DEFVAL { 5500 } ::= { fsErpsRingConfigEntry 9 } fsErpsRingConfigClear OBJECT-TYPE SYNTAX INTEGER { none(1), clear(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "The purpose of this object is described below : a) Clearing the forced switch in the ring. b) Clearing the manual switch in the ring. c) Trigger reversion before the WTR or WTB timer expires when the ring operates in revertive mode. d) Trigger reversion when the ring operates in non-revertive mode. [Reference : Section 8 of ITU-T G.8032 Y.1344 (03/2010)]. If none of the above conditions exist in the Ring,then this object configuration does not have any effect. This object can be configured in any node in the Ring.But when this object is configured to trigger the reversion of operating modes (revertive / non-revertive), the configuration is effective only when the ring node is configured as RPL owner. This object is applicable only when the compatible version is 2. This object is applicable only when the ring is active" DEFVAL { none } ::= { fsErpsRingConfigEntry 10 } fsErpsRingConfigInterConnNode OBJECT-TYPE SYNTAX INTEGER { none(0), primary(1), secondary(2)} MAX-ACCESS read-write STATUS current DESCRIPTION "This object is configured in interconnection node of the sub-ring to support the feature 'Minimizing segmentation in interconnected rings' as per Appendix X of ITU-T G.8032/Y.1344 (03/2010) standard. Configured value of the objects fsErpsRingConfigInterConnNode and fsErpsRingConfigMultipleFailure is used in Block Indication Logic Procedure as per Section X.3.2 in Appendix X of ITU-T G.8032/Y.1344 (03/2010) standard. interconnected rings as described below : a) If Loss of connectivity between the interconnection nodes is detected and if the objects fsErpsRingConfigInterConnNode and fsErpsRingConfigMultipleFailure are configured to have identical values(i.e both are set to either primary or secondary) then Local MS command is applied on the subring port else loss of connectivity between the interconnection nodes is ignored. b) Similarly when loss of connectivity between the interconnection nodes is recovered and if the objects fsErpsRingConfigInterConnNode and fsErpsRingConfigMultipleFailure are configured to have identical values (i.e both are set to either primary or secondary) then Local MS command on the subring port is cleared else recovery of connectivity between the interconnection nodes is ignored. This object is effective only when ring node is interconnection node. The default value is disabled (0). This object is applicable only when the compatible version is 2." DEFVAL { none } ::= { fsErpsRingConfigEntry 11 } fsErpsRingConfigMultipleFailure OBJECT-TYPE SYNTAX INTEGER { disabled(0), primary(1), secondary(2)} MAX-ACCESS read-write STATUS current DESCRIPTION "This object is configured in interconnection node of the sub-ring to support the feature 'Minimizing segmentation in interconnected rings' as per Appendix X of ITU-T G.8032/Y.1344 (03/2010) standard. Configured value of the objects fsErpsRingConfigInterConnNode and fsErpsRingConfigMultipleFailure is used in Block Indication Logic Procedure as per Section X.3.2 in Appendix X of ITU-T G.8032/Y.1344 (03/2010) standard. interconnected rings as described below : a) If Loss of connectivity between the interconnection nodes is detected and if the objects fsErpsRingConfigInterConnNode and fsErpsRingConfigMultipleFailure are configured to have identical values(i.e both are set to either primary or secondary) then Local MS command is applied on the subring port else loss of connectivity between the interconnection nodes is ignored. b) Similarly when loss of connectivity between the interconnection nodes is recovered and if the objects fsErpsRingConfigInterConnNode and fsErpsRingConfigMultipleFailure are configured to have identical values (i.e both are set to either primary or secondary) then Local MS command on the subring port is cleared else recovery of connectivity between the interconnection nodes is ignored. This object is effective only when ring node is interconnection node. The default value is disabled (0). This object is applicable only when the compatible version is 2." DEFVAL { disabled } ::= { fsErpsRingConfigEntry 12 } fsErpsRingConfigIsPort1Present OBJECT-TYPE SYNTAX INTEGER { local(1), remote(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the presence of port1 of the ring in the line card. This object should be configured as 'remote' only if the ports are distributed across two line cards. This object can be altered even when the ring is active. When Ring port ifIndex is not configured, configuration of Port presence as 'remote' for the corresponding port should be rejected." DEFVAL { local } ::= { fsErpsRingConfigEntry 13 } fsErpsRingConfigIsPort2Present OBJECT-TYPE SYNTAX INTEGER { local(1), remote(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies the presence of port2 of the ring in the line card. This object should be configured as 'remote' only if the ports are distributed across two line cards. This object can be altered even when the ring is active. When Ring port ifIndex is not configured, configuration of Port presence as 'remote' for the corresponding port should be rejected." DEFVAL { local } ::= { fsErpsRingConfigEntry 14 } fsErpsRingConfigInfoDistributingPort OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used in Distributed ERPS to synchronize the ring information between local and remote line cards. The MEP's installed on this distributing port will be used for synchronization process. This object should be configured only if the ports are distributed across two line cards. (i.e. only if one of the ring port presence is configured as remote) The MEP information for the remote port should be present before configuring this object." DEFVAL { 0 } ::= { fsErpsRingConfigEntry 15 } fsErpsRingConfigKValue OBJECT-TYPE SYNTAX OCTET STRING (SIZE(4)) MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to configure with integer value which is used for running the timer interval of periodic multiplied by this value to raise a TFOP defect when un related packet received on running of this timer interval. The kvalue is a period from 0 to 86400000. Default kvalue is 3.50." DEFVAL { "3.50" } ::= { fsErpsRingConfigEntry 16 } fsErpsRingConfigFailureOfProtocol OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to enable or disable the Failure Of Protocol feature. The value 'true (1)' indicates that TFOP feature is enabled to raise the TRAP when 1. Valid Three RAPS packets are not received on Ring Node 2. And after receiving the Valid RAPS Packets on Ring Node. The TFOP Timer started with Multiple of Periodic timer and KValue. If the Ring node is not receiving the RAPS packets till the timer expiry, it will raise TFOP defect occurred TRAP. Once the Ring node receive the Valid RAPS Packet it will raise the TFOP defect Cleared TRAP." DEFVAL { false } ::= { fsErpsRingConfigEntry 17 } -- ***************************************************************************** -- Ring TC Propagation Table -- ***************************************************************************** fsErpsRingTcPropTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsRingTcPropEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table is used to configure the list of rings, where Topology Change (TC) has to be propagated, whenever there is a FDB flush condition in the sub-ring. This table is applicable only for the sub-rings in the inter-connected nodes." ::= { fsErpsRing 4 } fsErpsRingTcPropEntry OBJECT-TYPE SYNTAX FsErpsRingTcPropEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry in this table identifies the ring to which TC needs to be propagated upon FDB flush condition in the sub-ring. When TC propagation is enabled for a sub-ring (the object 'fsErpsRingConfigPropagateTC' is configured as 'true' for the sub-ring), and whenever FDB flush is triggered on this sub-ring, Topology Change will be triggered for all the associated rings of this subring as identified by this table. " INDEX { fsErpsContextId, fsErpsRingId, fsErpsRingTcPropRingId } ::= { fsErpsRingTcPropTable 1 } FsErpsRingTcPropEntry ::= SEQUENCE { fsErpsRingTcPropRingId RingId, fsErpsRingTcPropRowStatus RowStatus } fsErpsRingTcPropRingId OBJECT-TYPE SYNTAX RingId MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object identifies the ring ID to which TC needs to be propagated upon FDB flush condition in the sub-ring identified by 'fsErpsRingId'. This object value should not be equal to the fsErpsRingId (Same entries index)" ::= { fsErpsRingTcPropEntry 1 } fsErpsRingTcPropRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-write STATUS current DESCRIPTION "Denotes the Row Status for TC Propagation table entry. Only 'CreateAndGo' and 'destroy' values are allowed for this object. 'CreateAndWait' and 'notInService' values are not allowed." ::= { fsErpsRingTcPropEntry 2 } --***************************************************************************** -- Ring ConfigExt Table -- ***************************************************************************** fsErpsRingConfigExtTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsRingConfigExtEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Ring configuration Extension table. Each entry in this table corresponds to a configured ring entry in fsErpsRingTable. Entry in this table is implicitly created, when a ring entry is created in the fsErpsRingTable table. This table contains optional configurations and commands for rings." ::= { fsErpsRing 5 } fsErpsRingConfigExtEntry OBJECT-TYPE SYNTAX FsErpsRingConfigExtEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry in this table contains optional configurations and commands for the corresponding ring entry. Objects in this entry can be changed, even when the corresponding Ring Entry's RowStatus is active." INDEX { fsErpsContextId, fsErpsRingId } ::= { fsErpsRingConfigExtTable 1 } FsErpsRingConfigExtEntry ::= SEQUENCE { fsErpsRingConfigExtVCRecoveryPeriodicTime Unsigned32, fsErpsRingConfigExtMainRingId RingIdOrNone } fsErpsRingConfigExtVCRecoveryPeriodicTime OBJECT-TYPE SYNTAX Unsigned32 (0..3600000) UNITS "milliseconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to configure the time interval for which the periodic timer needs to be restarted, when the corresponding main ring indicates the virtual channel status change to this sub-ring and when the virtual channel of this sub-ring is in failed state. When one of the ring port of the main ring is in failed state, main ring indicates virtual channel status change indication to sub-ring when one of the following event happens: - R-APS (NR) is received on a ring port of the main ring - Local Clear SF on the main ring. On getting this virtual channel status indication from the main ring, this sub-ring will restart the periodic timer for this value, only if the virtual channel is in failed state. Once the periodic timer expires, it will get restarted only for the normal periodic time (value present in fsErpsRingConfigPeriodicTime). This object is valid only for sub-rings. For normal rings, configuring this object will not have any impact. This value must be configured on both the inter-connected nodes of the main ring. It is recommended to configure the value for this object as: (Periodic Timer Value + 3 * CC interval + GuardTimer Value of Main Ring + delta-T). It is recommended to have 3*CC interval as delta-T. The configured value of this timer is applicable only from the next start/re-start of the timer. This object can take the value between 0 to 1 hour, configurable in unit of 1 milliseconds. For example, to configure the value as 5 seconds, configure the value as 5000. Default value for this object is 5560. This value is derived from the above formula with periodic timer value as 5 seconds, CC interval as 10 milliseconds, guard timer value as 500 milliseconds and delta T as 30 milliseconds." DEFVAL { 5560 } ::= { fsErpsRingConfigExtEntry 1 } fsErpsRingConfigExtMainRingId OBJECT-TYPE SYNTAX RingIdOrNone MAX-ACCESS read-write STATUS current DESCRIPTION "This object identifies ID of the main Ring to which the sub-ring is connected. Upon configuration, this sub-ring will get added to the sub-ring list maintained by the Main Ring. Main ring will given the virtual channel status change indication to all the sub-rings present in its sub-ring list. This value must be configured on both the inter-connected nodes of the main ring. Only ring id's of rings created in the fsErpsRingTable can be configured for this object. To remove the association of the main ring id from the sub-ring, a value of zero should be configured for this object." ::= { fsErpsRingConfigExtEntry 2 } --***************************************************************************** -- fsErpsStats subtree --***************************************************************************** fsErpsMemFailCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies number of times Memory allocation failure occurred in the ERPS module." ::= { fsErpsStats 1 } fsErpsBufFailCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies number of times Buffer related failure occurred in the ERPS module." ::= { fsErpsStats 2 } fsErpsTimerFailCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies number of times Timer related failure occurred in the ERPS module." ::= { fsErpsStats 3 } fsErpsRingStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF FsErpsRingStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains statistics information for each of the ring present in the system. Entries in this table are created implicitly by the creation of entries in the fsErpsRingTable." ::= { fsErpsStats 4 } fsErpsRingStatsEntry OBJECT-TYPE SYNTAX FsErpsRingStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "There is one entry in this table for each entry in the fsErpsRingTable. Each entry contains the statistics for both ring ports. For a sub-ring in an interconnected node, Port 2 statistics represent the statistics of the UP MEP installed on fsErpsRingPort1." INDEX { fsErpsContextId, fsErpsRingId } ::= { fsErpsRingStatsTable 1 } FsErpsRingStatsEntry ::= SEQUENCE { fsErpsRingClearRingStats TruthValue, fsErpsRingPort1RapsPduSentCount Counter32, fsErpsRingPort2RapsPduSentCount Counter32, fsErpsRingPort1RapsPduRcvdCount Counter32, fsErpsRingPort2RapsPduRcvdCount Counter32, fsErpsRingPort1RapsPduDiscardCount Counter32, fsErpsRingPort2RapsPduDiscardCount Counter32, fsErpsRingPort1BlockedCount Counter32, fsErpsRingPort2BlockedCount Counter32, fsErpsRingPort1UnblockedCount Counter32, fsErpsRingPort2UnblockedCount Counter32, fsErpsRingPort1FailedCount Counter32, fsErpsRingPort2FailedCount Counter32, fsErpsRingPort1RecoveredCount Counter32, fsErpsRingPort2RecoveredCount Counter32, fsErpsRingPort1VersionDiscardCount Counter32, fsErpsRingPort2VersionDiscardCount Counter32, fsErpsRingPort1RapsFSPduRxCount Counter32, fsErpsRingPort1RapsFSPduTxCount Counter32, fsErpsRingPort2RapsFSPduRxCount Counter32, fsErpsRingPort2RapsFSPduTxCount Counter32, fsErpsRingPort1RapsMSPduRxCount Counter32, fsErpsRingPort1RapsMSPduTxCount Counter32, fsErpsRingPort2RapsMSPduRxCount Counter32, fsErpsRingPort2RapsMSPduTxCount Counter32, fsErpsRingPort1RapsEventPduRxCount Counter32, fsErpsRingPort1RapsEventPduTxCount Counter32, fsErpsRingPort2RapsEventPduRxCount Counter32, fsErpsRingPort2RapsEventPduTxCount Counter32, fsErpsRingPort1RapsSFPduRxCount Counter32, fsErpsRingPort1RapsSFPduTxCount Counter32, fsErpsRingPort2RapsSFPduRxCount Counter32, fsErpsRingPort2RapsSFPduTxCount Counter32, fsErpsRingPort1RapsNRPduRxCount Counter32, fsErpsRingPort1RapsNRPduTxCount Counter32, fsErpsRingPort2RapsNRPduRxCount Counter32, fsErpsRingPort2RapsNRPduTxCount Counter32, fsErpsRingPort1RapsNRRBPduRxCount Counter32, fsErpsRingPort1RapsNRRBPduTxCount Counter32, fsErpsRingPort2RapsNRRBPduRxCount Counter32, fsErpsRingPort2RapsNRRBPduTxCount Counter32, fsErpsRingGeneratedTrapsCount Counter32, fsErpsRingPort1DefectEncTimeSec Unsigned32, fsErpsRingPort2DefectEncTimeSec Unsigned32, fsErpsRingPort1DefectClearedTimeSec Unsigned32, fsErpsRingPort2DefectClearedTimeSec Unsigned32, fsErpsRingRplPortStatChgTimeSec Unsigned32, fsErpsRingRplNbrPortStatChgTime Unsigned32, fsErpsRingDistPortPduRxCount Counter32, fsErpsRingDistPortPduTxCount Counter32, fsErpsRingRapsPort1DefectEncTimeNSec Unsigned32, fsErpsRingRapsPort1DefectClearedTimeNSec Unsigned32, fsErpsRingRapsPort2DefectEncTimeNSec Unsigned32, fsErpsRingRapsPort2DefectClearedTimeNSec Unsigned32, fsErpsRingRapsRplPortStatChgTimeNSec Unsigned32, fsErpsRingDefectSwitchOverTimeMSec Unsigned32, fsErpsRingDefectClearedSwitchOverTimeMSec Unsigned32 } fsErpsRingClearRingStats OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to clear statistics counters for this ring. When set to true(1), statistics counters for this ring will be cleared. When set to false(2), no action will take place. Get of this object will always return 'false'. " DEFVAL { false } ::= { fsErpsRingStatsEntry 1 } fsErpsRingPort1RapsPduSentCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of valid R-APS PDUs sent on the fsErpsRingPort1 of the ring. R-APS PDUs include all types like R-APS(SF), R-APS(NR) & R-APS (NR, RB)." ::= { fsErpsRingStatsEntry 2 } fsErpsRingPort2RapsPduSentCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of valid R-APS PDUs sent on the fsErpsRingPort2 of the ring. R-APS PDUs include all types like R-APS(SF), R-APS(NR) & R-APS (NR, RB)." ::= { fsErpsRingStatsEntry 3 } fsErpsRingPort1RapsPduRcvdCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of valid R-APS PDUs received on the fsErpsRingPort1 of the ring. R-APS PDUs include all types like R-APS(SF), R-APS(NR) & R-APS (NR, RB)." ::= { fsErpsRingStatsEntry 4 } fsErpsRingPort2RapsPduRcvdCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of valid R-APS PDUs received on the fsErpsRingPort2 of the ring. R-APS PDUs include all types like R-APS(SF), R-APS(NR) & R-APS (NR, RB)." ::= { fsErpsRingStatsEntry 5 } fsErpsRingPort1RapsPduDiscardCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS PDUs discarded on the fsErpsRingPort1 of the ring. R-APS PDUs include all types like R-APS(SF), R-APS(NR) & R-APS (NR, RB). R-APS PDUs with invalid RAPS header information(wrong request/state) will be discarded." ::= { fsErpsRingStatsEntry 6 } fsErpsRingPort2RapsPduDiscardCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS PDUs discarded on the fsErpsRingPort2 of the ring. R-APS PDUs include all types like R-APS(SF), R-APS(NR) & R-APS (NR, RB). R-APS PDUs with invalid RAPS header information(wrong request/state) will be discarded." ::= { fsErpsRingStatsEntry 7 } fsErpsRingPort1BlockedCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number times the fsErpsRingPort1 is blocked. A port might be blocked because of local failure, or because of link configured as RPL, or if Force/Manual switch is configured" ::= { fsErpsRingStatsEntry 8 } fsErpsRingPort2BlockedCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number times the fsErpsRingPort2 is blocked. A port might be blocked because of local failure, or because of link configured as RPL, or if Force/Manual switch is configured" ::= { fsErpsRingStatsEntry 9 } fsErpsRingPort1UnblockedCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number times the fsErpsRingPort1 is unblocked. A port might be unblocked because of recovery from local failure, or if the link is configured as RPL link and there is any other failure in the network, or if Force/Manual switch configuration is removed." ::= { fsErpsRingStatsEntry 10 } fsErpsRingPort2UnblockedCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number times the fsErpsRingPort2 is unblocked. A port might be unblocked because of recovery from local failure, or if the link is configured as RPL link and there is any other failure in the network, or if Force/Manual switch configuration is removed." ::= { fsErpsRingStatsEntry 11 } fsErpsRingPort1FailedCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of times the fsErpsRingPort1 failed because of local SF condition." ::= { fsErpsRingStatsEntry 12 } fsErpsRingPort2FailedCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of times the fsErpsRingPort2 failed because of local SF condition." ::= { fsErpsRingStatsEntry 13 } fsErpsRingPort1RecoveredCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of times the fsErpsRingPort1 recovered from a failure (local clear SF condition)." ::= { fsErpsRingStatsEntry 14 } fsErpsRingPort2RecoveredCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of times the fsErpsRingPort2 recovered from a failure (local clear SF condition)." ::= { fsErpsRingStatsEntry 15 } fsErpsRingPort1VersionDiscardCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS PDUs discarded on the fsErpsRingPort1 of the ring due to version mismatch. The version discard count increments in the following scenarios:- a) If the (Request/State) field in the received R-APS PDUs does not correspond to R-APS(SF) or R-APS(NR) or R-APS event messages, when compatible version of the ring is 1. b)If the (Request/State) field in the received R-APS PDUs does not correspond to R-APS(SF) or R-APS(NR) or R-APS Event or R-APS(FS) or R-APS(MS) messages, when compatible version of the ring is 2." ::= { fsErpsRingStatsEntry 16 } fsErpsRingPort2VersionDiscardCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS PDUs discarded on the fsErpsRingPort2 of the ring due to version mismatch. The version discard count increments in the following scenarios:- a) If the (Request/State) field in the received R-APS PDUs does not correspond to R-APS(SF) or R-APS(NR) or R-APS event messages, when compatible version of the ring is 1. b) If the (Request/State) field in the received R-APS PDUs does not correspond to R-APS(SF) or R-APS(NR) or R-APS Event or R-APS(FS) or R-APS(MS) messages, when compatible version of the ring is 2." ::= { fsErpsRingStatsEntry 17 } fsErpsRingPort1RapsFSPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (FS) PDUs received on the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 18 } fsErpsRingPort1RapsFSPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (FS) PDUs sent from the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 19 } fsErpsRingPort2RapsFSPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (FS) PDUs received on the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 20 } fsErpsRingPort2RapsFSPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (FS) PDUs sent from the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 21 } fsErpsRingPort1RapsMSPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (MS) PDUs received on the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 22 } fsErpsRingPort1RapsMSPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (MS) PDUs sent from the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 23 } fsErpsRingPort2RapsMSPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (MS) PDUs received on the fsErpsRingPort2 of the ring . The RapsMSPduRx count increments only if the R-APS(MS)is recieved" ::= { fsErpsRingStatsEntry 24 } fsErpsRingPort2RapsMSPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (MS) PDUs sent from the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 25 } fsErpsRingPort1RapsEventPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (Event) PDUs received on the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 26 } fsErpsRingPort1RapsEventPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (Event) PDUs sent from the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 27 } fsErpsRingPort2RapsEventPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (MS) PDUs received on the fsErpsRingPort2 of the ring . The RapsEventPduRx count increments only if the R-APS(Event)is recieved" ::= { fsErpsRingStatsEntry 28 } fsErpsRingPort2RapsEventPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (Event) PDUs sent from the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 29 } fsErpsRingPort1RapsSFPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (SF) PDUs received on the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 30 } fsErpsRingPort1RapsSFPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (SF) PDUs sent from the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 31 } fsErpsRingPort2RapsSFPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (SF) PDUs received on the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 32 } fsErpsRingPort2RapsSFPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (SF) PDUs sent from the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 33 } fsErpsRingPort1RapsNRPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NR) PDUs received on the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 34 } fsErpsRingPort1RapsNRPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NR) PDUs sent from the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 35 } fsErpsRingPort2RapsNRPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NR) PDUs received on the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 36 } fsErpsRingPort2RapsNRPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NR) PDUs sent from the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 37 } fsErpsRingPort1RapsNRRBPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NRRB) PDUs received on the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 38 } fsErpsRingPort1RapsNRRBPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NRRB) PDUs sent from the fsErpsRingPort1 of the ring ." ::= { fsErpsRingStatsEntry 39 } fsErpsRingPort2RapsNRRBPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NRRB) PDUs received on the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 40 } fsErpsRingPort2RapsNRRBPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the number of R-APS (NRRB) PDUs sent from the fsErpsRingPort2 of the ring ." ::= { fsErpsRingStatsEntry 41 } fsErpsRingGeneratedTrapsCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION " This object indicates the number of trap messages send from a ring node." ::= { fsErpsRingStatsEntry 42 } fsErpsRingPort1DefectEncTimeSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time when the defect occurred for port1 of the ring and returns time in seconds." ::= { fsErpsRingStatsEntry 43 } fsErpsRingPort2DefectEncTimeSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time when the defect occurred for port2 of the ring and returns time in seconds." ::= { fsErpsRingStatsEntry 44 } fsErpsRingPort1DefectClearedTimeSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time when the defect cleared for port1 of the ring and returns time in seconds." ::= { fsErpsRingStatsEntry 45 } fsErpsRingPort2DefectClearedTimeSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time when the defect cleared for port2 of the ring and returns time in seconds." ::= { fsErpsRingStatsEntry 46 } fsErpsRingRplPortStatChgTimeSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time when Rpl Port status change for the ring and returns time in milliseconds." ::= { fsErpsRingStatsEntry 47 } fsErpsRingRplNbrPortStatChgTime OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time when Rpl Neighbor Port status change for the ring and returns time in milliseconds." ::= { fsErpsRingStatsEntry 48 } fsErpsRingDistPortPduRxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION " This object indicates the number of Dynamic sync PDUs received on the fsErpsRingConfigInfoDistributingPort of the ring." ::= { fsErpsRingStatsEntry 49 } fsErpsRingDistPortPduTxCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION " This object indicates the number of Dynamic sync PDUs send from the fsErpsRingConfigInfoDistributingPort of the ring." ::= { fsErpsRingStatsEntry 50 } fsErpsRingRapsPort1DefectEncTimeNSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time in nano seconds when the defect occurred on port1 of the ring." ::= { fsErpsRingStatsEntry 51 } fsErpsRingRapsPort1DefectClearedTimeNSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time in nano seconds when the defect cleared occurred on port1 of the ring." ::= { fsErpsRingStatsEntry 52 } fsErpsRingRapsPort2DefectEncTimeNSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time in nano seconds when the defect occurred on port2 of the ring." ::= { fsErpsRingStatsEntry 53 } fsErpsRingRapsPort2DefectClearedTimeNSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time in nano seconds when the defect cleared occurred on port2 of the ring." ::= { fsErpsRingStatsEntry 54 } fsErpsRingRapsRplPortStatChgTimeNSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the time when Rpl Port status change for the ring and returns time in nanoseconds." ::= { fsErpsRingStatsEntry 55 } fsErpsRingDefectSwitchOverTimeMSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the differences of the switch over time in milliseconds." ::= { fsErpsRingStatsEntry 56 } fsErpsRingDefectClearedSwitchOverTimeMSec OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the differences of the switch over time in milliseconds." ::= { fsErpsRingStatsEntry 57 } -- ***************************************************************************** -- fsErpsNotifications subtree -- ***************************************************************************** fsErpsTraps OBJECT IDENTIFIER ::= { fsErpsNotifications 0 } fsErpsTypeOfFailure OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object provides the text indicating a particular failure condition. 'R-APSPduTxFailure' will be set, when the state machine is unable to transmit an R-APS PDU. 'HwProgramFailure' will be set, when hardware programming for the ring fails. 'BufferAllocFailure' will be set, when there is memory allocation failure issues. 'TimerFailure' will be set, when there is any failure in the timer start." ::= { fsErpsNotifications 1 } fsErpsTrapSwitchingMechanism OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This object indicates the type of switching that is currently active 'AutoSwitch' will be set, when the switching happens automatically through the operation of the R-APS protocol (Local or remote event occurred; Local Events can be local signal failure, Clearance of the signal failure, disabling the ring, administrator issuing clear command. Remote Events can be remote Signal Failure, remote clearance of the signal failure, Forced / Manual switch applied on a remote node in the ring.)). 'ForcedSwitch' will be set, when the Force Switch(Local FS) is active on the node. 'ManualSwitch' will be set, when the Manual Switch(Local MS) is active on the node." ::= { fsErpsNotifications 2 } fsErpsStateChangeTrap NOTIFICATION-TYPE OBJECTS { fsErpsCtxtName, fsErpsRingName, fsErpsTrapSwitchingMechanism, fsErpsRingSemState, fsErpsRingNodeStatus } STATUS current DESCRIPTION "This trap is generated on the following events: - Local SF is received for the ring (Auto Trap). - Local Clear SF is received for the ring (Auto Trap). - Remote failure is detected on this ring (Auto Trap). - Remote failure is cleared on this ring (Auto Trap). - Force Switch (Local FS) is issued for a ring (ForcedSwitch). - Manual Switch (Local MS)is issued for a ring (ManualSwitch). - R-APS FS is received on a ring (Auto Trap). - R-APS MS is received on a ring (Auto Trap). - After Clear command is issued on a ring (Auto Trap). - After a ring is moved to Disabled state (Auto Trap)." ::= { fsErpsTraps 1 } fsErpsFailureTrap NOTIFICATION-TYPE OBJECTS { fsErpsCtxtName, fsErpsRingName, fsErpsTypeOfFailure } STATUS current DESCRIPTION "This trap is generated when there is any failure on a ring." ::= { fsErpsTraps 2 } END