ALCATEL-ENT1-VC-SPLIT-PROTECTION-MIB DEFINITIONS ::= BEGIN

IMPORTS
        NOTIFICATION-TYPE,
        MODULE-IDENTITY,
        OBJECT-TYPE,
        TimeTicks, 
        Integer32                             FROM SNMPv2-SMI
        RowStatus,
        TEXTUAL-CONVENTION                    FROM SNMPv2-TC
        alcatelIND1VirtualChassisMIBVCSP      FROM ALCATEL-ENT1-VIRTUAL-CHASSIS-MIB 
        MODULE-COMPLIANCE,
        OBJECT-GROUP,
        NOTIFICATION-GROUP                    FROM SNMPv2-CONF        ;

alaVCSPMIB MODULE-IDENTITY
    LAST-UPDATED "201310140000Z"
    ORGANIZATION "Alcatel-Lucent, Enterprise Solutions Division"
    CONTACT-INFO
     "Please consult with Customer Service to ensure the most appropriate
      version of this document is used with the products in question:

                 Alcatel-Lucent, Enterprise Solutions Division
                (Formerly Alcatel Internetworking, Incorporated)
                        26801 West Agoura Road
                     Agoura Hills, CA  91301-5122
                       United States Of America

     Telephone:               North America  +1 800 995 2696
                              Latin America  +1 877 919 9526
                              Europe         +31 23 556 0100
                              Asia           +65 394 7933
                              All Other      +1 818 878 4507

     Electronic Mail:         support@ind.alcatel.com
     World Wide Web:          http://alcatel-lucent.com/wps/portal/enterprise
     File Transfer Protocol:  ftp://ftp.ind.alcatel.com/pub/products/mibs"
    DESCRIPTION
        "This module describes an authoritative enterprise-specific Simple
        etwork Management Protocol (SNMP) Management Information Base (MIB):

        For the Birds Of Prey Product Line, this is the Chassis Supervision
        Chassis MIB
        for managing physical chassis objects not covered in the IETF
        Entity MIB (rfc 2737).

        The right to make changes in specification and other information
        contained in this document without prior notice is reserved.

        No liability shall be assumed for any incidental, indirect, special, or
        consequential damages whatsoever arising from or related to this
        document or the information contained herein.

        Vendors, end-users, and other interested parties are granted
        non-exclusive license to use this specification in connection with
        management of the products for which it is intended to be used.

                   Copyright (C) 1995-2007 Alcatel-Lucent
                       ALL RIGHTS RESERVED WORLDWIDE"

    REVISION      "201310140000Z"

  DESCRIPTION
     "Addressing discrepancies with Alcatel Standard."
     ::= { alcatelIND1VirtualChassisMIBVCSP 1 }

alaVCSPMIBNotifications OBJECT IDENTIFIER ::= { alaVCSPMIB 0 }
alaVCSPMIBObjects OBJECT IDENTIFIER ::= { alaVCSPMIB 1 }
alaVCSPMIBConformance OBJECT IDENTIFIER ::= { alaVCSPMIB 2 }

AlaVCSPChassisID ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION
                "The numbers allocated for the Chassis ID are as follows:
                 - 1..8 = valid and assigned chassis ID numbers
                 corresponding values from the entPhysicalTable"
        SYNTAX  Integer32(1..8)

AlaVCSPOpState ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION "This indicates the Active/Protection state of the current chassis."
        SYNTAX  INTEGER { active (1),
                          protection (2),
                          inactive (3) }

AlaVCSPState ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION "This indicates the enable/disable state."
        SYNTAX  INTEGER { enable (1),
                          disable (2) }

-----------------------------------------------
-- VC Split-Protection objects
-----------------------------------------------

alaVCSPConfigInfo OBJECT IDENTIFIER ::= { alaVCSPMIBObjects 2 }

alaVCSPAdminState OBJECT-TYPE
        SYNTAX      AlaVCSPState
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
                "VC Split Protection State. By default it should be disabled."
        DEFVAL { disable }
        ::= { alaVCSPConfigInfo 1}

alaVCSPLinkaggId OBJECT-TYPE
        SYNTAX      Integer32 (-1..128)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
                "Indicates the Linkagg ID assigned for VCSP. LinkaggId -1 means no linkagg is configured."
        DEFVAL { -1 }
        ::= { alaVCSPConfigInfo 2}

alaVCSPGuardTimer OBJECT-TYPE
        SYNTAX      Integer32 (30..100)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
                "This indicates the timer value for how long the device has
                 to wait before going to protection state if the links are
                 down and VCSP is enabled."
        DEFVAL { 30 }
        ::= { alaVCSPConfigInfo 3}

alaVCSPUpTime  OBJECT-TYPE
        SYNTAX       TimeTicks 
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
                "This indicates the uptime of the VC Split protection in timeticks."
        ::= { alaVCSPConfigInfo 4}

alaVCSPProtectionStateUpTime  OBJECT-TYPE
        SYNTAX       TimeTicks 
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
                "This indicates the uptime of the protection state of the VCSP in timeticks."
        ::= { alaVCSPConfigInfo 5}

----------------------------------------------------------
-- VC Split Helper Global Properties
----------------------------------------------------------

alaVCSPHelperGlobalConfig OBJECT IDENTIFIER ::= { alaVCSPMIBObjects 1 }

alaVCSPHelperAdminState OBJECT-TYPE
        SYNTAX      AlaVCSPState
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
                "VC Split Protection Helper State. This shall be
                 enabled only after configuring at least one Helper linkagg"
        DEFVAL { disable }
        ::= { alaVCSPHelperGlobalConfig 1 }

-- the VCSP Helper table

alaVCSPHelperLinkaggTable     OBJECT-TYPE
        SYNTAX  SEQUENCE OF AlaVCSPHelperLinkaggEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                "This table lists the vcsp helper enabled linkagg."
        ::=     { alaVCSPMIBObjects 3 }

alaVCSPHelperLinkaggEntry OBJECT-TYPE
        SYNTAX AlaVCSPHelperLinkaggEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                "An entry in vcsp helper Linkagg table."
        INDEX { alaVCSPHelperLinkaggId }
        ::= { alaVCSPHelperLinkaggTable 1 }

AlaVCSPHelperLinkaggEntry ::= SEQUENCE
        {
        alaVCSPHelperLinkaggId Integer32,
        alaVCSPHelperLinkaggRowStatus RowStatus
        }

alaVCSPHelperLinkaggId OBJECT-TYPE
        SYNTAX  Integer32 (0..128)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                "The linkagg ID."
        ::= { alaVCSPHelperLinkaggEntry 1 }

alaVCSPHelperLinkaggRowStatus  OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
                "Controls the creation and deletion of
                 rows in the table."
        ::= { alaVCSPHelperLinkaggEntry 2 }

----------------------------------------------------------
-- VCSP State Table
----------------------------------------------------------

alaVCSPStateTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF AlaVCSPStateEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                "Maintains a list with information about VCSP state of all the switches."
        ::= { alaVCSPMIBObjects 4}

alaVCSPStateEntry OBJECT-TYPE
        SYNTAX  AlaVCSPStateEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                "Each entry corresponds to a chassis and its VCSP state."
        INDEX { alaVCSPTableChassisID }
        ::= { alaVCSPStateTable 1 }

AlaVCSPStateEntry ::= SEQUENCE
        {
           alaVCSPTableChassisID AlaVCSPChassisID,
           alaVCSPTableOperState AlaVCSPOpState
        }

alaVCSPTableChassisID OBJECT-TYPE
        SYNTAX  AlaVCSPChassisID
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
                "Numbers allocated for the chassis as follows:
                - 1..8:       valid and assigned chassis ID."
        ::= { alaVCSPStateEntry 1 }

alaVCSPTableOperState  OBJECT-TYPE
        SYNTAX       AlaVCSPOpState
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
                "This indicates the Active/Protection state of the current chassis."
        ::= { alaVCSPStateEntry 2}

-------------------------------------------------------
-- Traps
-------------------------------------------------------

alaVCSPProtectionTrap NOTIFICATION-TYPE
        OBJECTS
        {
                alaVCSPTableChassisID
        }
        STATUS  current
        DESCRIPTION
                "The element identified by alaVCSPTableChassisID
                 will enter into the VCSP  Protection state."
        ::= { alaVCSPMIBNotifications 1 }

alaVCSPRecoveryTrap NOTIFICATION-TYPE
        OBJECTS    
        {
                alaVCSPTableChassisID
        }
        STATUS  current
        DESCRIPTION
                "The element identified by alaVCSPTableChassisID
                 will enter into the VCSP Active state."
        ::= { alaVCSPMIBNotifications 2 }

-- VCSP Conformance

alaVCSPMIBGroups OBJECT IDENTIFIER ::= { alaVCSPMIBConformance 1 }


alaVCSPMIBCompliances OBJECT IDENTIFIER ::= { alaVCSPMIBConformance 2 }

alaVCSPMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for device support of VCSP."
        MODULE
        MANDATORY-GROUPS
        {
		alaVCSPNotificationGroup,
		alaVCSPConfigInfoGroup,
                alaVCSPHelperGroup
        }
        ::= { alaVCSPMIBCompliances 1 }

alaVCSPNotificationGroup NOTIFICATION-GROUP
        NOTIFICATIONS
        {
                alaVCSPProtectionTrap,
                alaVCSPRecoveryTrap
        }
        STATUS  current
        DESCRIPTION
                "A collection of VCSP notifications for signaling events."
        ::= { alaVCSPMIBGroups 1 }


alaVCSPHelperGroup OBJECT-GROUP
        OBJECTS
        { 
                alaVCSPHelperAdminState,
                alaVCSPHelperLinkaggId,
                alaVCSPHelperLinkaggRowStatus
        }
        STATUS  current
        DESCRIPTION
                "A collection of object providing information about VCSP helper protocol."
        ::= { alaVCSPMIBGroups 3 }

alaVCSPConfigInfoGroup OBJECT-GROUP
        OBJECTS
        { 
           alaVCSPLinkaggId,
           alaVCSPProtectionStateUpTime,
           alaVCSPTableChassisID,
           alaVCSPTableOperState,
           alaVCSPUpTime,
           alaVCSPGuardTimer,
           alaVCSPAdminState
        }
        STATUS  current
        DESCRIPTION
                "A collection of object providing information about VCSP helper protocol."
        ::= { alaVCSPMIBGroups 2 }

END

