-- MibName=raisecomTopoDiscovery
-- *****************************************************************
-- RAISECOM-ELMI-MIB.MIB:  Raisecom Topology Discovery MIB file
--
-- Sep. 2010, liqiong,yanguotao
--
-- Copyright (c) 1910-2020, 2010 by Raisecom, Inc.
-- All rights reserved.
--
-- *****************************************************************
RAISECOM-ELMI-MIB  DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE, Integer32 FROM SNMPv2-SMI
        Vlanset, PortList FROM SWITCH-TC
        RowStatus, TEXTUAL-CONVENTION, TimeStamp, TruthValue FROM SNMPv2-TC
        VlanId FROM Q-BRIDGE-MIB
        iscomSwitch FROM RAISECOM-BASE-MIB;

rcElmi  MODULE-IDENTITY
        LAST-UPDATED    "201012300000Z"
        ORGANIZATION    "Raisecom, Inc."
        CONTACT-INFO
                        "Raisecom Systems

                        Postal: Beijing, China

                        Tel: 86-010-82884499

                        E-mail: liqiong@raisecom.com"
        DESCRIPTION
                        "Ethernet Local Management Interface."
                ::= {iscomSwitch 64}

-- textual conventions
Elmiid ::= OCTET STRING
Evcset ::= OCTET STRING

-- object 
rcElmiScalar             OBJECT IDENTIFIER ::= { rcElmi 1 }


-- rcElmiScalar
rcElmiEnable       OBJECT-TYPE
        SYNTAX     TruthValue  
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object indicates the e-lmi start flag that the system supports."
        DEFVAL{ false }
        ::= { rcElmiScalar 1 }

rcElmiMode        OBJECT-TYPE
        SYNTAX    Integer32 {
		    pe(1),
		    ce(2)
		    }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object indicates the e-lmi mode that the system supports. Pe means provider edge and Ce means customer edge."
        DEFVAL{ 1 }
        ::= { rcElmiScalar 2 }

rcElmiTrapEnable    OBJECT-TYPE
        SYNTAX      TruthValue  
        MAX-ACCESS  read-write
        STATUS current
        DESCRIPTION
        "This object indicates the e-lmi trap start flag that the system supports."
        DEFVAL{ false }
        ::= { rcElmiScalar 3 }
 
rcElmiMaxEvcNum    OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object indicates the maximum number of EVCs that every uni system supports."
        ::= { rcElmiScalar 4 }
        
rcElmiCfgEvcNum    OBJECT-TYPE
        SYNTAX     Integer32  
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object indicates the actual number of EVCs currently configured on the system."
        DEFVAL{ 0 }
        ::= { rcElmiScalar 5 }

-- rcElmiPortTable
rcElmiPortTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RcElmiPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
      "A table e-lmi port properties."
    ::= { rcElmi 2 }

rcElmiPortEntry OBJECT-TYPE
    SYNTAX      RcElmiPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
      "Table entry for e-lmi port properties."
    INDEX { rcElmiPortIfIndex }
    ::= { rcElmiPortTable 1 }

RcElmiPortEntry ::= SEQUENCE 
{
		rcElmiPortIfIndex           Integer32,
		rcElmiPortElmiEnable        TruthValue,
		rcElmiPortElmiClear         TruthValue,
		rcElmiPortElmiN393          Integer32(2..10)
}

rcElmiPortIfIndex       OBJECT-TYPE
        SYNTAX     Integer32  
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This object indicates the port ifindex."
        ::= { rcElmiPortEntry 1 }

rcElmiPortElmiEnable        OBJECT-TYPE
        SYNTAX    TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object indicates the e-lmi port enable switch."
        DEFVAL{ true }
        ::= { rcElmiPortEntry 2 }

rcElmiPortElmiClear    OBJECT-TYPE
        SYNTAX      TruthValue  
        MAX-ACCESS  read-write   
        STATUS current
        DESCRIPTION
        "This object indicates the e-lmi port statistics clear switch."
        DEFVAL{ false }
        ::= { rcElmiPortEntry 3 }
 
rcElmiPortElmiN393    OBJECT-TYPE
        SYNTAX     Integer32(2..10)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object indicates the N393(Status Counter). N393 is uesd to determine if E-LMI is operational or not. When there is N393 conseutive errors or right message, the E-LMI will become operational or not operational."
        DEFVAL{ 4 }
        ::= { rcElmiPortEntry 4 }

--rcElmiUniPeTable
rcElmiUniPeTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiUniPeEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
      "A table of e-lmi for uni-n properties."
    ::= { rcElmi 3}

rcElmiUniPeEntry OBJECT-TYPE
    SYNTAX      RcElmiUniPeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
      "Table entry for e-lmi uni-n."
    INDEX { rcElmiUniPeIfIndex }
    ::= { rcElmiUniPeTable 1 }

RcElmiUniPeEntry ::= SEQUENCE 
{
		rcElmiUniPeIfIndex          Integer32,
		rcElmiUniPeUniId            Elmiid,
		rcElmiUniPeEvcNotifyType    Integer32,
		rcElmiUniPeBundleType       Integer32,
		rcElmiUniPeMaxEvcNum        Integer32,
		rcElmiUniPeT392Enable       TruthValue,
		rcElmiUniPeT392             Integer32,
		rcElmiUniPeEvcList          Evcset,
		rcElmiUniPeDefaultEvcRefId  Integer32
}
             
rcElmiUniPeIfIndex   OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
    "The index of uni table."
    ::= { rcElmiUniPeEntry 1 }

rcElmiUniPeUniId     OBJECT-TYPE
    SYNTAX      Elmiid(SIZE(1..64))
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The uni identity, which must be unique in the MEN."
    ::= { rcElmiUniPeEntry 2 }
    
rcElmiUniPeEvcNotifyType  OBJECT-TYPE
    SYNTAX      Integer32 {asyn(1), full(2)} 
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The evc notify types, include asyn and full. The change of evc status will be send to CE as soon as E-LMI detect the change when asyn is set. If full is set PE will notify CE that EVC has changed when PE receives a Check Status Enquiryand CE will send a Full Status Enquiy message at once to get the new information of EVC."
    DEFVAL{ 1 }
    ::= { rcElmiUniPeEntry 3 }
    
rcElmiUniPeBundleType   OBJECT-TYPE
    SYNTAX Integer32
    {
    all-to-one-bunding(1),
    service-multiplexing(2),
    bundling(3)
    }
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The uni bundle types, include bundling,all-to-one-bundleing and service-multiplexing.
    If you enter bundling, the UNI supports bundling with multiplexing (one or more EVC with one or multiple VLANs be mapped to it).
    If you enter all-to-one-bundleing, the UNI supports a single EVC and all VLANs(1-4094 and untagged) are mapped to that EVC.
    If you enter service-multiplexing., the UNI supports multiplexing without bundling (one or more EVCs with a single 
    VLAN mapped to each EVC)."
    DEFVAL { 1 }
    ::= { rcElmiUniPeEntry 4 }
    
rcElmiUniPeMaxEvcNum   OBJECT-TYPE
    SYNTAX      Integer32(1..32)
    ACCESS       read-only
    STATUS      current
    DESCRIPTION
    "The max evc numbers of a uni."
    DEFVAL{ 32 }
    ::= { rcElmiUniPeEntry 5 }
    
rcElmiUniPeT392Enable   OBJECT-TYPE
    SYNTAX      TruthValue 
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The uni T392(Polling Verification Timer) timer start flag."
    DEFVAL { true }
    ::= { rcElmiUniPeEntry 6 }
    
rcElmiUniPeT392   OBJECT-TYPE
    SYNTAX      Integer32(5..30)  
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The uni T392 period  only for PE. PE will record an error when it does not receive message from CE in T392 seconds"
    DEFVAL { 15 }
    ::= { rcElmiUniPeEntry 7 }

rcElmiUniPeEvcList   OBJECT-TYPE
    SYNTAX      Evcset(SIZE (0..512)) 
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The evc bitlist of the evc bundled to the uni."
    ::= { rcElmiUniPeEntry 8 }
    
rcElmiUniPeDefaultEvcRefId   OBJECT-TYPE
    SYNTAX      Integer32(0..4096) 
    ACCESS      read-create
    STATUS      current
    DESCRIPTION
    "The default evc can only be set while the CE VLAN map type is bundling."
    DEFVAL { 0 }
    ::= { rcElmiUniPeEntry 9 }
    

-- rcElmiUniCeTable
rcElmiUniCeTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiUniCeEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
      "A table of e-lmi for uni-c properties."
    ::= { rcElmi 4}

rcElmiUniCeEntry OBJECT-TYPE
    SYNTAX      RcElmiUniCeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
      "Table entry for e-lmi uni-c."
    INDEX { rcElmiUniCeIfIndex }
    ::= { rcElmiUniCeTable 1 }

RcElmiUniCeEntry ::= SEQUENCE 
{
		rcElmiUniCeIfIndex          Integer32,
		rcElmiUniCeUniId            Elmiid,
		rcElmiUniCeBundleType       Integer32,
		rcElmiUniCeT391             Integer32,
		rcElmiUniCeN391             Integer32,
		rcElmiUniCeEvcList          Evcset,
		rcElmiUniCeDefaultEvcRefId  Integer32
}
             
rcElmiUniCeIfIndex   OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
    "The index of the table."
    ::= { rcElmiUniCeEntry 1 }

rcElmiUniCeUniId     OBJECT-TYPE
    SYNTAX      Elmiid(SIZE(1..64))
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The uni identity, is the same as the one in PE."
    ::= { rcElmiUniCeEntry 2 }
    
rcElmiUniCeBundleType   OBJECT-TYPE
    SYNTAX Integer32
    {
    all-to-one-bunding(1),
    service-multiplexing (2),
    bundling(3)
    }
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The uni CE VLAN map type, is the same as PE bundle type"
    DEFVAL { 1 }
    ::= { rcElmiUniCeEntry 3 }
    
rcElmiUniCeT391   OBJECT-TYPE
    SYNTAX      Integer32(5..30) 
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The interval of CHECK ENQUIRY message send."
    DEFVAL { 10 }
    ::= { rcElmiUniCeEntry 4 }
    
rcElmiUniCeN391   OBJECT-TYPE
    SYNTAX      Integer32(1..65000)
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The CE will send FULL ENQUIRY message every N391 PT expires."
    DEFVAL { 360 }
    ::= { rcElmiUniCeEntry 5 }
    
rcElmiUniCeEvcList   OBJECT-TYPE
    SYNTAX      Evcset(SIZE (512)) 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The evc bitlist of the evc in PE uni, is the same as the one in PE"
    ::= { rcElmiUniCeEntry 6 }
    
rcElmiUniCeDefaultEvcRefId   OBJECT-TYPE
    SYNTAX      Integer32(0..4096) 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The default evc, is the same as the one in PE."
    DEFVAL { 0 }
    ::= { rcElmiUniCeEntry 7 }
   
--rcElmiEvcPeTable
rcElmiEvcPeTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiEvcPeEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
      "A table of e-lmi for evc properties."
    ::= { rcElmi 5}
    
rcElmiEvcPeEntry OBJECT-TYPE
    SYNTAX      RcElmiEvcPeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Table entry for e-lmi for evc properties."
    INDEX { rcElmiEvcPeReferenceId }
    ::= { rcElmiEvcPeTable 1 }

RcElmiEvcPeEntry ::= SEQUENCE 
{
		rcElmiEvcPeReferenceId   Integer32,
		rcElmiEvcPeEvcId            Elmiid,
		rcElmiEvcPeType          Integer32, 
		rcElmiEvcPeCurrentStatus        Integer32,
        rcElmiEvcPeLastStatus       Integer32,
		rcElmiEvcPeSvlan         Integer32,
		rcElmiEvcPeExtra         Integer32,
		rcElmiEvcPeOamProtocol   Integer32,
		rcElmiEvcPeUniNum           Integer32,
		rcElmiEvcPeActiveUniNum     Integer32,
		rcElmiEvcPeUniList          PortList,
		rcElmiEvcPeRowStatus     RowStatus
}
             
rcElmiEvcPeReferenceId   OBJECT-TYPE
    SYNTAX      Integer32(1..4096)
    ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
    "The index of evc table."
    ::= { rcElmiEvcPeEntry 1 }
    
rcElmiEvcPeEvcId   OBJECT-TYPE
    SYNTAX      Elmiid(SIZE(1..100))
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The evc identity, must be unique in the MEN."
    ::= { rcElmiEvcPeEntry 2 }
    
rcElmiEvcPeType   OBJECT-TYPE
    SYNTAX      Integer32{
    p2p(0),
    mp2mp(1)
    }
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The evc types. It is p2p when the uni count is 2 and it is mp2mp when the uni count is greater than 2."
    ::= { rcElmiEvcPeEntry 3 }

rcElmiEvcPeCurrentStatus   OBJECT-TYPE
    SYNTAX      Integer32{
    notActive(0),
    new-notActive(1),
    active(2),
    new-active(3),
    partiallyActive(4),
    new-PartiallyActive(5)
    } 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The evc current status, include notActive, new_notActive, new_active, active, partiallyActive and new_PartiallyActive. It is partiallyActive when the number active uni is less than the count of uni."
    DEFVAL { 0 }
    ::= { rcElmiEvcPeEntry 4 }
    
rcElmiEvcPeLastStatus   OBJECT-TYPE
    SYNTAX      Integer32{
    notActive(0),
    new-notActive(1),
    active(2),
    new-active(3),
    partiallyActive(4),
    new-PartiallyActive(5)
    } 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The evc last status, include notActive, new_notActive, 
    new_active, active, partiallyActive and new_PartiallyActive."
    DEFVAL { 0 }
    ::= { rcElmiEvcPeEntry 5 }

rcElmiEvcPeSvlan   OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The svlan of the oam bundled to the uni."
    ::= { rcElmiEvcPeEntry 6 }
    
rcElmiEvcPeExtra  OBJECT-TYPE
    SYNTAX      Integer32
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The extra information of the oam bundled to the uni."
    ::= { rcElmiEvcPeEntry 7 }    
    
rcElmiEvcPeOamProtocol   OBJECT-TYPE
    SYNTAX      Integer32 {
    bfd(2),
    cfm(1),
    invalide(0)
    }
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The related oam protocal of uni"
    DEFVAL { 1 }
    ::= { rcElmiEvcPeEntry 8 }
    
rcElmiEvcPeUniNum   OBJECT-TYPE
    SYNTAX      Integer32(2..32)
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The uni number of currently configured on a evc, include local and remote ones."
    DEFVAL { 2 }
    ::= { rcElmiEvcPeEntry 9 }
    
rcElmiEvcPeActiveUniNum   OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The active uni number of the evc."
    ::= { rcElmiEvcPeEntry 10}
    
rcElmiEvcPeUniList   OBJECT-TYPE
    SYNTAX      PortList 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The bitlist of all unies in the evc."
    ::= { rcElmiEvcPeEntry 11 }
    
rcElmiEvcPeRowStatus   OBJECT-TYPE
    SYNTAX      RowStatus 
    ACCESS      read-create
    STATUS      current
    DESCRIPTION
    "This object is responsible for managing the creation, 
    deletion and modification of rows, which support 
    active status and CreatAndGo, destroy operation."
    ::= { rcElmiEvcPeEntry 12 }
    
-- rcElmiEvcCeTable
rcElmiEvcCeTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiEvcCeEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
      "A table of e-lmi for evc properties."
    ::= { rcElmi 6}
    
rcElmiEvcCeEntry OBJECT-TYPE
    SYNTAX      RcElmiEvcCeEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Table entry for e-lmi for evc properties."
    INDEX { rcElmiEvcPeReferenceId }
    ::= { rcElmiEvcCeTable 1 }

RcElmiEvcCeEntry ::= SEQUENCE 
{
		rcElmiEvcCeReferenceId   Integer32,
		rcElmiEvcCeEvcId            Elmiid,
		rcElmiEvcCeType          Integer32, 
		rcElmiEvcCeCurrentStatus         Integer32,
		rcElmiEvcCeLastStatus         Integer32
}
             
rcElmiEvcCeReferenceId   OBJECT-TYPE
    SYNTAX      Integer32(1..4096)
    ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
    "The index of evc table."
    ::= { rcElmiEvcCeEntry 1 }
    
rcElmiEvcCeEvcId   OBJECT-TYPE
    SYNTAX      Elmiid(SIZE(1..100))
    ACCESS      read-write
    STATUS      current
    DESCRIPTION
    "The evc identity."
    ::= { rcElmiEvcCeEntry 2 }
    
rcElmiEvcCeType   OBJECT-TYPE
    SYNTAX      Integer32{
    p2p(0),
    mp2mp(1)
    }
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The evc types,include p2p and mp2mp, is the same as the one in PE."
    ::= { rcElmiEvcCeEntry 3 }

rcElmiEvcCeCurrentStatus   OBJECT-TYPE
    SYNTAX      Integer32{
    notActive(0),
    new-notActive(1),
    active(2),
    new-active(3),
    partiallyActive(4),
    new-PartiallyActive(5)
    } 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The evc current status, include notActive, new_notActive, new_active, active, partiallyActive and new_PartiallyActive, is the same as the one in PE"
    DEFVAL { 0 }
    ::= { rcElmiEvcCeEntry 4 }
   
rcElmiEvcCeLastStatus   OBJECT-TYPE
    SYNTAX      Integer32{
    notActive(0),
    new-notActive(1),
    active(2),
    new-active(3),
    partiallyActive(4),
    new-PartiallyActive(5)
    } 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The evc last status, include notActive, new_notActive, new_active, active, partiallyActive and new_PartiallyActive, is the same as the one in PE"
    DEFVAL { 0 }
    ::= { rcElmiEvcCeEntry 5 }

-- rcElmiPeStatisticsTable
rcElmiPeStatisticsTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiPeStatisticsEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
    "A table of e-lmi statistics."
    ::= { rcElmi 7}
    
rcElmiPeStatisticsEntry OBJECT-TYPE
    SYNTAX      RcElmiPeStatisticsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Table entry for e-lmi statistics."
    INDEX { rcElmiUniPeIfIndex }
    ::= { rcElmiPeStatisticsTable 1 }

RcElmiPeStatisticsEntry ::= SEQUENCE 
{
		rcElmiPeStatisticsLastClear                    TimeStamp,
		rcElmiPeStatisticsLastFullStatusSent    TimeStamp,
		rcElmiPeStatisticsLastFullStatusEnquiryRecv           TimeStamp,
		rcElmiPeStatisticsLastCheckStatusSent   TimeStamp,
		rcElmiPeStatisticsLastCheckStatusEnquiryRecv          TimeStamp,
        rcElmiPeStatisticsLastAysnLastSend             TimeStamp,
		rcElmiPeStatisticsStatusEnquiryTimeout         Integer32,
		rcElmiPeStatisticsInvalidSeqNum                Integer32,
		rcElmiPeStatisticsInvalidProtoVersion          Integer32,
		rcElmiPeStatisticsInvalidMsgType               Integer32,
		rcElmiPeStatisticsOutOfSeqIE                   Integer32,
		rcElmiPeStatisticsDuplicatedIE                 Integer32,
		rcElmiPeStatisticsMandatoryIEMissing           Integer32,
		rcElmiPeStatisticsInvalidMandatoryIE           Integer32,
		rcElmiPeStatisticsInvalidNonMandatoryIE        Integer32,
		rcElmiPeStatisticsUnrecognizedIE               Integer32,
		rcElmiPeStatisticsUnexpectedIE                 Integer32,
		rcElmiPeStatisticsShortMessage                 Integer32,
		rcElmiPeStatisticsUnsolicitedStatusReceived    Integer32	
}

rcElmiPeStatisticsLastClear                     OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last clear statistics."
    ::= { rcElmiPeStatisticsEntry 1 }

rcElmiPeStatisticsLastFullStatusSent     OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Full Status message sent."
    ::= { rcElmiPeStatisticsEntry 2 }

rcElmiPeStatisticsLastFullStatusEnquiryRecv            OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Full Status Enquiry message received."
    ::= { rcElmiPeStatisticsEntry 3 }

rcElmiPeStatisticsLastCheckStatusSent    OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Check Status message send."
    ::= { rcElmiPeStatisticsEntry 4 }

rcElmiPeStatisticsLastCheckStatusEnquiryRecv           OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Check Status Enquiry message received."
    ::= { rcElmiPeStatisticsEntry 5 }

rcElmiPeStatisticsLastAysnLastSend          OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Asynchronous Status message send."
    ::= { rcElmiPeStatisticsEntry 6 }

rcElmiPeStatisticsStatusEnquiryTimeout          OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of status enquiry timeout packets."
    ::= { rcElmiPeStatisticsEntry 7 }

rcElmiPeStatisticsInvalidSeqNum                 OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid sequence number packets."
    ::= { rcElmiPeStatisticsEntry 8 }

rcElmiPeStatisticsInvalidProtoVersion           OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid protocal version packets."
    ::= { rcElmiPeStatisticsEntry 9 }

rcElmiPeStatisticsInvalidMsgType                OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalide massage type packets."
    ::= { rcElmiPeStatisticsEntry 10 }

rcElmiPeStatisticsOutOfSeqIE                    OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of out of sequence IE packets."
    ::= { rcElmiPeStatisticsEntry 11 }

rcElmiPeStatisticsDuplicatedIE                  OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of duplicated IE packets."
    ::= { rcElmiPeStatisticsEntry 12 }

rcElmiPeStatisticsMandatoryIEMissing            OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of mandatory IE missing packets."
    ::= { rcElmiPeStatisticsEntry 13 }

rcElmiPeStatisticsInvalidMandatoryIE            OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid mandatory IE packetes."
    ::= { rcElmiPeStatisticsEntry 14 }

rcElmiPeStatisticsInvalidNonMandatoryIE         OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid non-Mandatory IE packets."
    ::= { rcElmiPeStatisticsEntry 15 }

rcElmiPeStatisticsUnrecognizedIE                OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of unrecognized IE packets."
    ::= { rcElmiPeStatisticsEntry 16 }

rcElmiPeStatisticsUnexpectedIE                  OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of unexpected IE packets."
    ::= { rcElmiPeStatisticsEntry 17 }

rcElmiPeStatisticsShortMessage                  OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of short packets."
    ::= { rcElmiPeStatisticsEntry 18 }

rcElmiPeStatisticsUnsolicitedStatusReceived     OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of unsolicited status received packets."
    ::= { rcElmiPeStatisticsEntry 19 }


-- rcElmiCeStatisticsTable
rcElmiCeStatisticsTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiCeStatisticsEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
    "A table of e-lmi statistics."
    ::= { rcElmi 8}
    
rcElmiCeStatisticsEntry OBJECT-TYPE
    SYNTAX      RcElmiCeStatisticsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Table entry for e-lmi statistics."
    INDEX { rcElmiUniCeIfIndex }
    ::= { rcElmiCeStatisticsTable 1 }

RcElmiCeStatisticsEntry ::= SEQUENCE 
{
		rcElmiCeStatisticsLastClear                    TimeStamp,
		rcElmiCeStatisticsLastFullStatusEnquirySent    TimeStamp,
		rcElmiCeStatisticsLastFullStatusRecv           TimeStamp,
		rcElmiCeStatisticsLastCheckStatusEnquirySent   TimeStamp,
		rcElmiCeStatisticsLastCheckStatusRecv          TimeStamp,
        rcElmiCeStatisticsLastAysnLastRecv             TimeStamp,
		rcElmiCeStatisticsLastPTAbnormalTimeout        TimeStamp,
		rcElmiCeStatisticsInvalidSeqNum                Integer32,
		rcElmiCeStatisticsInvalidProtoVersion          Integer32,
		rcElmiCeStatisticsInvalidEvcRefId              Integer32,
		rcElmiCeStatisticsInvalidMsgType               Integer32,
		rcElmiCeStatisticsOutOfSeqIE                   Integer32,
		rcElmiCeStatisticsDuplicatedIE                 Integer32,
		rcElmiCeStatisticsMandatoryIEMissing           Integer32,
		rcElmiCeStatisticsInvalidMandatoryIE           Integer32,
		rcElmiCeStatisticsInvalidNonMandatoryIE        Integer32,
		rcElmiCeStatisticsUnrecognizedIE               Integer32,
		rcElmiCeStatisticsUnexpectedIE                 Integer32,
		rcElmiCeStatisticsShortMessage                 Integer32,
		rcElmiCeStatisticsInvalidStatusResponse        Integer32,
		rcElmiCeStatisticsUnsolicitedStatusReceived    Integer32	
}

rcElmiCeStatisticsLastClear                     OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last clear statistics."
    ::= { rcElmiCeStatisticsEntry 1 }

rcElmiCeStatisticsLastFullStatusEnquirySent     OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Full Status Enquiry message sent."
    ::= { rcElmiCeStatisticsEntry 2 }

rcElmiCeStatisticsLastFullStatusRecv            OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Full Status message received."
    ::= { rcElmiCeStatisticsEntry 3 }

rcElmiCeStatisticsLastCheckStatusEnquirySent    OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Check Status Enquiry message sent."
    ::= { rcElmiCeStatisticsEntry 4 }

rcElmiCeStatisticsLastCheckStatusRecv           OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Check Status message received."
    ::= { rcElmiCeStatisticsEntry 5 }

rcElmiCeStatisticsLastAysnLastRecv              OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last Asynchronous Status message received."
    ::= { rcElmiCeStatisticsEntry 6 }  
    
rcElmiCeStatisticsLastPTAbnormalTimeout          OBJECT-TYPE
    SYNTAX      TimeStamp 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The time of last PT(Poll Timer) abnormal time out. Abnormal time out means the CE does not receive a valid reponse for a Enquiry message which was send at last PT expired and the PT expires again."
    ::= { rcElmiCeStatisticsEntry 7 }

rcElmiCeStatisticsInvalidSeqNum                 OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid sequence number packets."
    ::= { rcElmiCeStatisticsEntry 8 }

rcElmiCeStatisticsInvalidProtoVersion           OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid protocal version packets."
    ::= { rcElmiCeStatisticsEntry 9 }

rcElmiCeStatisticsInvalidEvcRefId               OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid evc reference id packets."
    ::= { rcElmiCeStatisticsEntry 10 }

rcElmiCeStatisticsInvalidMsgType                OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalide massage type packets."
    ::= { rcElmiCeStatisticsEntry 11 }

rcElmiCeStatisticsOutOfSeqIE                    OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of out of sequence IE packets."
    ::= { rcElmiCeStatisticsEntry 12 }

rcElmiCeStatisticsDuplicatedIE                  OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of duplicated IE packets."
    ::= { rcElmiCeStatisticsEntry 13 }

rcElmiCeStatisticsMandatoryIEMissing            OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of mandatory IE missing packets."
    ::= { rcElmiCeStatisticsEntry 14 }

rcElmiCeStatisticsInvalidMandatoryIE            OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid mandatory IE packetes."
    ::= { rcElmiCeStatisticsEntry 15 }

rcElmiCeStatisticsInvalidNonMandatoryIE         OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid non-Mandatory IE packets."
    ::= { rcElmiCeStatisticsEntry 16 }

rcElmiCeStatisticsUnrecognizedIE                OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of unrecognized IE packets."
    ::= { rcElmiCeStatisticsEntry 17 }

rcElmiCeStatisticsUnexpectedIE                  OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of unexpected IE packets."
    ::= { rcElmiCeStatisticsEntry 18 }

rcElmiCeStatisticsShortMessage                  OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of short packets."
    ::= { rcElmiCeStatisticsEntry 19 }

rcElmiCeStatisticsInvalidStatusResponse         OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of invalid status response packets."
    ::= { rcElmiCeStatisticsEntry 20 }

rcElmiCeStatisticsUnsolicitedStatusReceived     OBJECT-TYPE
    SYNTAX      Integer32 
    ACCESS      read-only
    STATUS      current
    DESCRIPTION
    "The statistics number of unsolicited status received packets."
    ::= { rcElmiCeStatisticsEntry 21 }

-- rcElmiRemoteUniTable 
rcElmiRemoteUniTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiRemoteUniEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
      "A table of e-lmi remote uni."
    ::= { rcElmi 9}
    
rcElmiRemoteUniEntry OBJECT-TYPE
    SYNTAX      RcElmiRemoteUniEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
      "Table entry for e-lmi remote uni."
    INDEX { rcElmiEvcPeReferenceId, rcElmiRemoteUniId }
    ::= { rcElmiRemoteUniTable 1 }

RcElmiRemoteUniEntry ::= SEQUENCE 
{
		rcElmiRemoteUniId   Elmiid
}
             
rcElmiRemoteUniId   OBJECT-TYPE
    SYNTAX      Elmiid(SIZE (1..64)) 
    ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
    "The remote uni table index."
    ::= { rcElmiRemoteUniEntry 1 }

-- rcElmiCeVlanMapTable
rcElmiCeVlanMapTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RcElmiCeVlanMapEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
    "A table of e-lmi ce vlan."
    ::= { rcElmi 10}
    
rcElmiCeVlanMapEntry OBJECT-TYPE
    SYNTAX      RcElmiCeVlanMapEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Table entry for e-lmi ce vlans."
    INDEX { rcElmiCeVlanMapUni, rcElmiCeVlanMapEvc }
    ::= { rcElmiCeVlanMapTable 1 }

RcElmiCeVlanMapEntry ::= SEQUENCE 
{
        rcElmiCeVlanMapUni       Integer32,
        rcElmiCeVlanMapEvc       Integer32(1..4096),
		rcElmiCeVlanMapVlanlist  Vlanset 
}

rcElmiCeVlanMapUni       OBJECT-TYPE
    SYNTAX      Integer32
    ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
    "The ifindex of UNI." 
    ::= { rcElmiCeVlanMapEntry 1 }  

rcElmiCeVlanMapEvc OBJECT-TYPE
    SYNTAX      Integer32(1..4096)
    ACCESS      not-accessible
    STATUS      current
    DESCRIPTION
    "The evc reference ID."
    ::= { rcElmiCeVlanMapEntry 2 }

rcElmiCeVlanMapVlanlist   OBJECT-TYPE
    SYNTAX         Vlanset 
    ACCESS         read-write
    STATUS         current
    DESCRIPTION
    "The ce vlan list mapped to evc."
    ::= { rcElmiCeVlanMapEntry 3 }

    -- rcElmiPeNotifications      
rcElmiPeNotifications           OBJECT IDENTIFIER ::= { rcElmi 11 }
rcElmiEvcPeStatusChangedNotification
NOTIFICATION-TYPE
    OBJECTS     { rcElmiEvcPeCurrentStatus,rcElmiEvcPeUniNum,rcElmiEvcPeActiveUniNum,rcElmiEvcPeLastStatus }
    STATUS      current
    DESCRIPTION
       "
       "
    REFERENCE
       ""
    ::= { rcElmiPeNotifications 1 }
    
rcElmiEvcPeCreationNotification
NOTIFICATION-TYPE
    OBJECTS     { rcElmiEvcPeCurrentStatus
                }
    STATUS      deprecated
    DESCRIPTION
       "
       "
    REFERENCE
       ""
    ::= { rcElmiPeNotifications 2 }    
    
rcElmiEvcPeDeletionNotification
NOTIFICATION-TYPE
    OBJECTS     { rcElmiEvcPeCurrentStatus
                }
    STATUS      deprecated
    DESCRIPTION
       "
       "
    REFERENCE
       ""
    ::= { rcElmiPeNotifications 3 }            

   
-- rcElmiCeNotifications       
rcElmiCeNotifications           OBJECT IDENTIFIER ::= { rcElmi 12 }
rcElmiEvcCeStatusChangedNotification
NOTIFICATION-TYPE
    OBJECTS     { rcElmiEvcCeCurrentStatus,rcElmiEvcCeLastStatus
                }
    STATUS      current
    DESCRIPTION
       "
       "
    REFERENCE
       ""
    ::= { rcElmiCeNotifications 1 }
    
rcElmiEvcCeCreationNotification
NOTIFICATION-TYPE
    OBJECTS     { rcElmiEvcCeCurrentStatus
                }
    STATUS      current
    DESCRIPTION
       "
       "
    REFERENCE
       ""
    ::= { rcElmiCeNotifications 2 }    
    
rcElmiEvcCeDeletionNotification
NOTIFICATION-TYPE
    OBJECTS     { rcElmiEvcCeCurrentStatus
                }
    STATUS      current
    DESCRIPTION
       "
       "
    REFERENCE
       ""
    ::= { rcElmiCeNotifications 3 }  
    
  END


