-- ***************************************************************** -- TN-ELPS-MIB.my : TN Ethernet Linear Protection Switch MIB -- -- Author : Angela Xing -- update by Tony Lei -- Copyright (c) 2009 by Transition Networks, Inc. -- All rights reserved. -- -- ************************************************************************************************* -- TN-ELPS-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE, Unsigned32, Gauge32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF RowStatus,TruthValue, MacAddress FROM SNMPv2-TC -- [RFC2579] InterfaceIndex FROM IF-MIB Dot1agCfmMepId FROM IEEE8021-CFM-MIB tnProducts FROM TRANSITION-SMI tnProtectionMIB FROM TN-PROTECTION-MIB; -- -- main body -- tnElpsMib OBJECT IDENTIFIER ::= { tnProtectionMIB 2 } tnElpsMibNotifications OBJECT IDENTIFIER ::= { tnElpsMib 0 } tnElpsMibObjects OBJECT IDENTIFIER ::= { tnElpsMib 1 } tnElpsMibConformance OBJECT IDENTIFIER ::= { tnElpsMib 2 } -- -- sub Objects list -- tnElpsCfgMgmt OBJECT IDENTIFIER ::= { tnElpsMibObjects 1 } tnElpsStateMgmt OBJECT IDENTIFIER ::= { tnElpsMibObjects 2 } tnElpsLinkOverMgmt OBJECT IDENTIFIER ::= { tnElpsMibObjects 3 } -- Textual Conventions TnElpsProtSwitchState ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Indicates ELPS protection switch state." SYNTAX INTEGER { disabled (1), noRequestW (2), noRequestP (3), lockout (4), forcedSwitch (5), signalFailW (6), signalFailP (7), manualSwitchW (8), manualSwitchP (9), waitToRestore (10), exerciseW (11), exerciseP (12), reverseRequestW (13), reverseRequestP (14), doNotRevert (15) } TnElpsDefectState ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Indicates ELPS working/protecting state." SYNTAX INTEGER { signalOk (1), signalFail (2), signalDegrade (3) } TnElpsRequestType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "Indicates ELPS received/transmitted APS request type." SYNTAX INTEGER { noRequest (1), doNotRevert (2), reverseRequest (3), exercise (4), wait2Restore (5), manualSwitch (6), signalDegrade (7), signalFailForWorking (8), forcedWwitch (9), signalFailForProtection (10), lockoutOfProtection (11) } -- ****************************************************************** -- NOTIFICATIONS (TRAPS) -- These notifications will be sent to the management entity -- whenever a MEP loses/restores contact with one or more other MEPs. -- ****************************************************************** tnElpsAlarmUp NOTIFICATION-TYPE OBJECTS { tnElpsProtectionState, tnElpsWFlowState, tnElpsPFlowState, tnElpsArchitectureMismatch, tnElpsAPSOnWorking, tnElpsSwitchingIncomplete } STATUS current DESCRIPTION "A Elps has a persistent defect condition. A notification (fault alarm) is sent to the management entity with the OID of the Elps that has detected the fault. The management entity receiving the notification can identify the system from the network source address of the notification, and can identify the ELPS reporting the defect by the indices in the OID of the variables in the notification: tnElpsInstance - Also the index of the EPLS state table entry (tnElpsStateTable). " ::= { tnElpsMibNotifications 1 } tnElpsAlarmDown NOTIFICATION-TYPE OBJECTS { tnElpsProtectionState, tnElpsWFlowState, tnElpsPFlowState, tnElpsArchitectureMismatch, tnElpsAPSOnWorking, tnElpsSwitchingIncomplete } STATUS current DESCRIPTION "A Elps has a persistent defect condition. A notification (fault alarm) is sent to the management entity with the OID of the Elps that has detected the fault. The management entity receiving the notification can identify the system from the network source address of the notification, and can identify the ELPS reporting the defect by the indices in the OID of the variables in the notification: tnElpsInstance - Also the index of the EPLS state table entry (tnElpsStateTable). " ::= { tnElpsMibNotifications 2 } -- ****************************************************************** -- TN Elps Cfg Table -- ****************************************************************** tnElpsCfgTable OBJECT-TYPE SYNTAX SEQUENCE OF TnElpsCfgEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table provides configuration of ELPS." ::= { tnElpsCfgMgmt 1 } tnElpsCfgEntry OBJECT-TYPE SYNTAX TnElpsCfgEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A entry in the table represents a configuration for ELPS." INDEX { tnElpsInstance } ::= { tnElpsCfgTable 1 } TnElpsCfgEntry ::= SEQUENCE{ tnElpsInstance Unsigned32, tnElpsDomain INTEGER, tnElpsArchitecture INTEGER, tnElpsWFlowPortId InterfaceIndex, tnElpsPFlowPortId InterfaceIndex, tnElpsWSfMepId Dot1agCfmMepId, tnElpsPSfMepId Dot1agCfmMepId, tnElpsApsMepId Dot1agCfmMepId, tnElpsConfigured TruthValue, tnElpsDirection INTEGER, tnElpsApsEnable TruthValue, tnElpsRevertiveEnable TruthValue, tnElpsWTRTime INTEGER, tnElpsHoldOffTime INTEGER, tnElpsCmd INTEGER, tnElpsStatus RowStatus } tnElpsInstance OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The ID of the ELPS." ::= { tnElpsCfgEntry 1 } tnElpsDomain OBJECT-TYPE SYNTAX INTEGER { port (1) } MAX-ACCESS read-create STATUS current DESCRIPTION "Port: This will create a ELPS in the Port Domain. 'W/P Flow' is a Port." ::= { tnElpsCfgEntry 2} tnElpsArchitecture OBJECT-TYPE SYNTAX INTEGER{ onePlusOne (1), oneForOne (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Port: This will create a 1+1 ELPS. Port: This will create a 1:1 ELPS." ::= { tnElpsCfgEntry 3} tnElpsWFlowPortId OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-create STATUS current DESCRIPTION "The working flow for the ELPS - See 'Domain' above." ::= { tnElpsCfgEntry 4} tnElpsPFlowPortId OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-create STATUS current DESCRIPTION "The protecting flow for the ELPS - See 'Domain' above." ::= { tnElpsCfgEntry 5} tnElpsWSfMepId OBJECT-TYPE SYNTAX Dot1agCfmMepId MAX-ACCESS read-create STATUS current DESCRIPTION "The working Signal Fail reporting MEP." ::= { tnElpsCfgEntry 6} tnElpsPSfMepId OBJECT-TYPE SYNTAX Dot1agCfmMepId MAX-ACCESS read-create STATUS current DESCRIPTION "The protecting Signal Fail reporting MEP." ::= { tnElpsCfgEntry 7} tnElpsApsMepId OBJECT-TYPE SYNTAX Dot1agCfmMepId MAX-ACCESS read-create STATUS current DESCRIPTION "The APS PDU handling MEP." ::= { tnElpsCfgEntry 8} tnElpsConfigured OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "False: This ELPS is only created and has not yet been configured - is not active. True: This ELPS is configured - is active." ::= { tnElpsCfgEntry 9 } tnElpsDirection OBJECT-TYPE SYNTAX INTEGER{ unidirectional (1), bidirectional (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Unidirectional: ELPS in the two ends can select traffic from different working/protecting flow. This is only possible in case of 1+1. Bidirectional: ELPS in the two ends is selecting traffic from the same working/protecting flow. This requires APS enabled. This is mandatory for 1:1." ::= { tnElpsCfgEntry 10 } tnElpsApsEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "The Automatic Protection Switching protocol can be enabled/disabled. This is mandatory for 1:1. " ::= { tnElpsCfgEntry 11 } tnElpsRevertiveEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "The revertive switching to working flow can be enabled/disabled. " ::= { tnElpsCfgEntry 12 } tnElpsWTRTime OBJECT-TYPE SYNTAX INTEGER{ disabled (0), t10sec (1), t30sec (2), t5min (3), t6min (4), t7min (5), t8min (6), t9min (7), t10min (8), t11min (9), t12min (10) } MAX-ACCESS read-create STATUS current DESCRIPTION "The Wait To Restore timing value to be used in revertive switching. " ::= { tnElpsCfgEntry 13 } tnElpsHoldOffTime OBJECT-TYPE SYNTAX INTEGER{ disabled (0), t100ms (1), t200ms (2), t300ms (3), t400ms (4), t500ms (5), t600ms (6), t700ms (7), t800ms (8), t900ms (9), t1s (10), t2s (11), t3s (12), t4s (13), t5s (14), t6s (15), t7s (16), t8s (17), t9s (18), t10s (19) } MAX-ACCESS read-create STATUS current DESCRIPTION "The timing value to be used to make persistent check on Signal Fail before switching. " ::= { tnElpsCfgEntry 14 } tnElpsCmd OBJECT-TYPE SYNTAX INTEGER{ none (0), clear (1), lockOut (2), forcedSwitch (3), manualSwitchP (4), manualSwitchW (5), exercise (6), freeze (7), lockOutLocal (8) } MAX-ACCESS read-create STATUS current DESCRIPTION "None: There is no active local command on this instance. Clear: The active local command will be cleared. Lock Out: This ELPS is locked to working (not active). In case of 1:N (more than one ELPS with same protecting flow) - when one ELPS switch to protecting flow, other ELPS is enforced this command Forced Switch: Forced switch to protecting. Manual Switch P: Manual switch to protecting. Manual Switch W: Manual switch to working - this is only possible in 1:1 non-revertive. Exercise: Exercise of the protocol - not traffic effecting. Freeze: This ELPS is locally freezed - ignoring all input. Lock Out Local: This ELPS is locally 'locked out' - ignoring local SF detected on working." ::= { tnElpsCfgEntry 15 } tnElpsStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of the row. The writable columns in a row can not be changed if the row is active. All columns must have a valid value before a row can be activated." ::= { tnElpsCfgEntry 16 } -- ****************************************************************** -- TN Elps state table -- ****************************************************************** tnElpsStateTable OBJECT-TYPE SYNTAX SEQUENCE OF TnElpsStateEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table provides configuration about ELPS state" ::= { tnElpsStateMgmt 1 } tnElpsStateEntry OBJECT-TYPE SYNTAX TnElpsStateEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This entry represents configuration about ELPS state" INDEX { tnElpsInstance } ::= { tnElpsStateTable 1 } TnElpsStateEntry ::= SEQUENCE{ tnElpsProtectionState TnElpsProtSwitchState, tnElpsWFlowState TnElpsDefectState, tnElpsPFlowState TnElpsDefectState, tnElpsTransmitRequestType TnElpsRequestType, tnElpsTransmitRequestedSignal Unsigned32, tnElpsTransmitBridgedSignal Unsigned32, tnElpsReceiveRequestType TnElpsRequestType, tnElpsReceiveRequestedSignal Unsigned32, tnElpsReceiveBridgedSignal Unsigned32, tnElpsArchitectureMismatch TruthValue, tnElpsAPSOnWorking TruthValue, tnElpsSwitchingIncomplete TruthValue, tnElpsNoApsReceived TruthValue } tnElpsProtectionState OBJECT-TYPE SYNTAX TnElpsProtSwitchState MAX-ACCESS read-only STATUS current DESCRIPTION "ELPS Protection state" ::= { tnElpsStateEntry 1} tnElpsWFlowState OBJECT-TYPE SYNTAX TnElpsDefectState MAX-ACCESS read-only STATUS current DESCRIPTION "signalOk: State of working flow is ok signalFail: State of working flow is Signal Fail signalDegrade: State of working flow is Signal Degrade (for future use)" ::= { tnElpsStateEntry 2} tnElpsPFlowState OBJECT-TYPE SYNTAX TnElpsDefectState MAX-ACCESS read-only STATUS current DESCRIPTION "signalOk: State of protecting flow is ok signalFail: State of protecting flow is Signal Fail signalDegrade: State of protecting flow is Signal Degrade (for future use)" ::= { tnElpsStateEntry 3} tnElpsTransmitRequestType OBJECT-TYPE SYNTAX TnElpsRequestType MAX-ACCESS read-only STATUS current DESCRIPTION "The transmitted request type." ::= { tnElpsStateEntry 4} tnElpsTransmitRequestedSignal OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The transmitted request signal." ::= { tnElpsStateEntry 5} tnElpsTransmitBridgedSignal OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The transmitted bridged signal." ::= { tnElpsStateEntry 6} tnElpsReceiveRequestType OBJECT-TYPE SYNTAX TnElpsRequestType MAX-ACCESS read-only STATUS current DESCRIPTION "The requested type that is received from APS." ::= { tnElpsStateEntry 7} tnElpsReceiveRequestedSignal OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The requested signal received from APS." ::= { tnElpsStateEntry 8} tnElpsReceiveBridgedSignal OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The bridged signal received from APS ." ::= { tnElpsStateEntry 9} tnElpsArchitectureMismatch OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "The architecture indicated in the received APS does not match the locally configured." ::= { tnElpsStateEntry 10} tnElpsAPSOnWorking OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "APS is received on the working flow." ::= { tnElpsStateEntry 11} tnElpsSwitchingIncomplete OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "Traffic is not selected from the same flow instance in the two ends." ::= { tnElpsStateEntry 12} tnElpsNoApsReceived OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "APS PDU is not received from the other end." ::= { tnElpsStateEntry 13} -- ****************************************************************** -- TN Elps LinkOver table -- ****************************************************************** tnElpsLinkOverTable OBJECT-TYPE SYNTAX SEQUENCE OF TnElpsLinkOverEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table provides configuration about ELPS Link Over based on the SOAM DM" ::= { tnElpsLinkOverMgmt 1 } tnElpsLinkOverEntry OBJECT-TYPE SYNTAX TnElpsLinkOverEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This entry represents configuration about ELPS Link Over" INDEX { tnElpsInstance } ::= { tnElpsLinkOverTable 1 } TnElpsLinkOverEntry ::= SEQUENCE{ tnElpsLinkOverEnabled TruthValue, tnElpsLinkOverDeltaValue Unsigned32 } tnElpsLinkOverEnabled OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "The feature about the DM LinkOver can be enabled and disabeld. False: This feature is disabled. True: This ELPS is enabled." ::= { tnElpsLinkOverEntry 1 } tnElpsLinkOverDeltaValue OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The Delta value is ranged from 6 to 120. If the value that is on one link subtract the other one is larger than the delta value, the data flow will be swithed to the link that own the better DM value." ::= { tnElpsLinkOverEntry 2 } END