
-------------------------------------------------------------------------------
-- File Name : ZTE-AN-VLAN-MIB.mib
-- Date      : 2006-11-15
-- Author    : ZTE Nms dept.

--
-- Zte Vlan Mib for Access Node
--
--
-------------------------------------------------------------------------------


ZTE-AN-VLAN-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        MODULE-IDENTITY     FROM SNMPv2-SMI
        OBJECT-TYPE         FROM SNMPv2-SMI
        Integer32           FROM SNMPv2-SMI
        Counter64           FROM SNMPv2-SMI
        Gauge32             FROM SNMPv2-SMI
        RowStatus           FROM SNMPv2-TC
        DisplayString       FROM SNMPv2-TC
        TruthValue          FROM SNMPv2-TC
        zxAn                FROM ZTE-AN-TC-MIB
        VlanId              FROM ZTE-AN-TC-MIB
        ZxAnIfindex         FROM ZTE-AN-TC-MIB
        ZxAnPortList        FROM ZTE-AN-TC-MIB;


    zxAnVlanMib MODULE-IDENTITY
        LAST-UPDATED    "1106150000Z"  -- Nov 15, 2006
        ORGANIZATION    "Zhongxing Telcom Co. Ltd."
        CONTACT-INFO    "Zhongxing Telcom Co. Ltd.
                         E-mail: info@mail.zte.com.cn
                         http  : www.zte.com.cn or www.zhongxing.com"
        DESCRIPTION     "VLAN MIB definition."
        REVISION        "1106150000Z"  -- Nov 15, 2006
        DESCRIPTION     "Initial MIB creation."

        ::= { zxAn 20 }


    zxAnBatchVLANObjects           OBJECT IDENTIFIER ::= { zxAnVlanMib 17 }
-------------------------------------------------------------------------------
-- Following objects are defined.
-- 1.zxAnSysVlanGroup
-- 2.zxAnVlanGroup
-- 3.zxAnVlanPortGroup
-- 4.zxAnVlanPortVlanConfGroup
-- 5.zxAnVlanTransGroup
-- 6.zxAnVlanPortListGroup
-- 7.zxAnVlanGlobalTransConfGroup
-- 8.zxAnVlanMpExQinQConfGroup
-- 9.zxAnVlanVoipConfGroup
-- 10.zxAnVlanMpExQinQPortGroup
-- 11.zxAnVlanMpExTranslatePortGroup
-- 12.zxAnProtocolVlanMap
-- 13.batchVlanGroup
-- 18.zxAnXconnectConfGroup
-- 22.zxAnGlobalVlanTpidGroup
-- 30.zxAnInternalVlanGroup
-- 31.zxAnVlanExQinQOnuGroup
-- 32.zxAnVlanTpidObjects
-- 33.zxAnIeee1588VlanTable
-- 34.zxAnGlobalMvlanTranslate
-- 35.zxAnVlanStormCtrl
-- 36.zxAnVlanTagPortList
-- 37.zxAnVlanConfTpid
-- 38.zxAnVlanRuledTransGroup
-- 39.zxAnVlanIfCosMapObjects
-- 40.zxAnVlanBasedForwardObjects
-- 99.zxAnVlanGlobalObjects
-------------------------------------------------------------------------------
-- 100.zxAnVlanMibEnd
-------------------------------------------------------------------------------



-------------------------------------------------------------------------------
--  1.zxAnSysVlanGroup
-------------------------------------------------------------------------------
    zxAnVlanNum OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The current number of VLANs that are configured in this device."
        ::= { zxAnVlanMib 1 }

-------------------------------------------------------------------------------
-- 2.zxAnVlanGroup
-------------------------------------------------------------------------------
    zxAnVlanTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing VLAN information for VLANs
            configured into the bridge by (local or network)
            management,  specifying the set of
            ports to which frames received on a VLAN for this FDB
            and containing a specific Group destination address are
            allowed to be forwarded."
        ::= { zxAnVlanMib 2 }

    zxAnVlanEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Filtering information configured into the bridge by
            management, specifying the set of
            ports to which frames received on a VLAN and containing
            a specific Group destination address, are allowed to be
            forwarded. It is forbidden to destroy zxAnVlanEntry
            whose zxAnVlanId exists in zxAnVlanVoipConfTable."
        INDEX   { zxAnVlanId }
        ::= { zxAnVlanTable 1 }

    ZxAnVlanEntry ::= SEQUENCE {
            zxAnVlanId                      VlanId,
            zxAnVlanName                    DisplayString,
            zxAnVlanTransparent             INTEGER,
            zxAnVlanRowStatus               RowStatus,
            zxAnVlanXconnect                INTEGER,
            zxAnVlanDesc                    DisplayString
        }

    zxAnVlanId OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The VlanId to which
            this entry's filtering information applies."
        ::= { zxAnVlanEntry 1 }

    zxAnVlanName OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..32))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "DURABLE: { 'Default' }
            An administratively assigned string, which may be used
            to identify the VLAN."
        REFERENCE
            "IEEE 802.1Q/D11 Section 12.10.2.1"
        ::= { zxAnVlanEntry 2 }

    zxAnVlanTransparent OBJECT-TYPE
        SYNTAX   INTEGER {
                 enable(1),
                 disable(2)
                 }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The transparent mode of the vlan enable or disable."
        DEFVAL  { disable }
        ::= { zxAnVlanEntry 3 }

    zxAnVlanRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnVlanEntry 4 }

    zxAnVlanXconnect OBJECT-TYPE
        SYNTAX   INTEGER {
                 enable(1),
                 disable(2)
                 }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The xconnect mode of the vlan enable or disable."
        DEFVAL  { disable }
        ::= { zxAnVlanEntry 5 }
        
    zxAnVlanDesc OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..64))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The description of VLAN. "
        DEFVAL  { "" }
        ::= { zxAnVlanEntry 6 }
        
-------------------------------------------------------------------------------
-- 3.zxAnVlanPortGroup
-------------------------------------------------------------------------------
    zxAnVlanPortTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanPortEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing VLAN Port information for VLANs
            configured into the bridge by (local or network)
            management,  specifying the set of
            ports to which frames received on a VLAN for this FDB
            and containing a specific Group destination address are
            allowed to be forwarded."
        ::= { zxAnVlanMib 3 }

    zxAnVlanPortEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanPortEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Filtering information configured into the bridge by
            management, specifying the set of
            ports to which frames received on a VLAN and containing
            a specific Group destination address, are allowed to be
            forwarded.  "
        INDEX   { zxAnVlanPortIndex }
        ::= { zxAnVlanPortTable 1 }

    ZxAnVlanPortEntry ::= SEQUENCE {
            zxAnVlanPortIndex              ZxAnIfindex,
            zxAnVlanIfConfMode             INTEGER,
            zxAnVlanIfConfTlsEnable        INTEGER,
            zxAnVlanIfConfTlsSVid          Integer32,
            zxAnVlanIfConfDefaultVid       VlanId,
            zxAnVlanIfConfDefaultCVid      Integer32,
            zxAnVlanIfConfUntaggedVlanList DisplayString,
            zxAnVlanIfConfTaggedVlanList   DisplayString,
            zxAnVlanIfConfTpid             Integer32,
            zxAnVlanIfIngressFilterEnable  INTEGER,
            zxAnVlanIfAcceptableFrameTypes INTEGER,
            zxAnVlanIfConfTpidEnable       INTEGER
        }

    zxAnVlanPortIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for a bridge port."
        ::= { zxAnVlanPortEntry 1 }

    zxAnVlanIfConfMode OBJECT-TYPE
        SYNTAX   INTEGER {
                 access(1),
                 trunk(2),
                 hybrid(3),
                 transparent(4)
                 }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "the access mode of the port."
        ::= { zxAnVlanPortEntry 2 }

   zxAnVlanIfConfTlsEnable OBJECT-TYPE
        SYNTAX   INTEGER {
                 enable(1),
                 disable(2)
                 }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The Transparent LAN Service enable or disable.
             When port in access mode, TLS always disable."
        DEFVAL  { disable }
        ::= { zxAnVlanPortEntry 3 }

    zxAnVlanIfConfTlsSVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "the TLS vlan ID of the port.
            Only TLS enable, TLS Vlan ID can be configured.
            Default value(0)."
        ::= { zxAnVlanPortEntry 4 }

    zxAnVlanIfConfDefaultVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "the pvid of the port."
        ::= { zxAnVlanPortEntry 5 }

    zxAnVlanIfConfDefaultCVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "the cpvid of the port.
            Default value(0)."
        ::= { zxAnVlanPortEntry 6 }

    zxAnVlanIfConfUntaggedVlanList OBJECT-TYPE
            SYNTAX      DisplayString
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The Untagged vlan sequence to a Port."
            ::= { zxAnVlanPortEntry 7 }

    zxAnVlanIfConfTaggedVlanList OBJECT-TYPE
            SYNTAX     DisplayString
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
               "The Tagged vlan sequence to a Port."
            ::= { zxAnVlanPortEntry 8 }

    zxAnVlanIfConfTpid  OBJECT-TYPE
        SYNTAX    Integer32
        MAX-ACCESS  read-write
        STATUS    current
        DESCRIPTION
           "This object indicates the Outer VLAN TPID of this port,value define
            uses hex. default vlan 0x8100"
        DEFVAL     { 33024 }  --0x8100
        ::={zxAnVlanPortEntry 9}
        
    zxAnVlanIfIngressFilterEnable OBJECT-TYPE
        SYNTAX           INTEGER  
        { 
            enable  ( 1 ), 
            disable ( 2 ) 
        } 
        MAX-ACCESS       read-write
        STATUS           current
        DESCRIPTION      "When this is enable(1) the port will reject incoming
            frames for VLAN only if the port belongs to that vlan. When this is 
            disable(2), the port will accept all incoming frames,regardless of 
            the port's vlan membership."
        DEFVAL { enable }
        ::=  {  zxAnVlanPortEntry 10 }
        
    zxAnVlanIfAcceptableFrameTypes OBJECT-TYPE
        SYNTAX      INTEGER {
                        admitAll(1),
                        admitOnlyVlanTagged(2),
                        admitOnlyVlanUntagged(3),
                        admitOnlyVlanSingleTagged(4),
                        admitOnlyVlanMaxDoubleTagged(5),
                        admitOnlyVlanMaxSingleTagged(6),
                        admitOnlyVlanDoubleTagged(7)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "When this is admitOnlyVlanTagged(2) the device will
            discard untagged frames or Priority-Tagged frames
            received on this port.  When admitAll(1), untagged
            frames or Priority-Tagged frames received on this port
            will be accepted and assigned to the PVID for this port.
            
            When admitOnlyVlanUntagged(3), only untagged frames
            or Priority-Tagged frames received on this port will be
            accepted for this port.
            
            When admitOnlyVlanSingleTagged(4), only single tagged frames
            received on this port will be accepted for this port.
            
            When admitOnlyVlanMaxDoubleTagged(5), the device will
            accept untagged frames or Priority-tagged frames or single tagged
            frames or double tagged frames received on this port.
            
            When admitOnlyVlanMaxSingleTagged(6), the device will
            accept untagged frames or Priority-tagged frames or single tagged
            frames received on this port.
            
            When admitOnlyVlanDoubleTagged(7), only double tagged frames
            received on this port will be accepted for this port.
        
            This control does not affect VLAN independent BPDU
            frames, such as GVRP and STP.  It does affect VLAN
            dependent BPDU frames, such as GMRP."
        REFERENCE
            "IEEE 802.1Q/D11 Section 12.10.1.3"
        DEFVAL      { admitAll }
        ::= { zxAnVlanPortEntry 11 }
        
    zxAnVlanIfConfTpidEnable OBJECT-TYPE
        SYNTAX      INTEGER 
            {
                enable(1),
                disable(2)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Enable or disable zxAnVlanIfConfTpid.
             
             enable(1)  -- Apply the out VLAN TPID with zxAnVlanIfConfTpid.
             disable(2) -- Apply the out VLAN TPID with zxAnVlanConfTpid in the 
                           zxAnVlanConfTpidTable.
            "
        DEFVAL      { enable }
        ::= { zxAnVlanPortEntry 12 }

-------------------------------------------------------------------------------
--  4.zxAnVlanPortVlanConfGroup
-------------------------------------------------------------------------------

--  Operation command table for bridge port configuration like Vlan list

    zxAnVlanIfConfVlanCmdTable OBJECT-TYPE
        SYNTAX SEQUENCE OF ZxAnVlanIfConfVlanCmdEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "Operation command table for bridge port configuration like
            Vlan list.
            A single object such as pkg and channel will be added or removed 
            to/from
            PkgIdList/ChanIdList through this table.
            "
         ::= { zxAnVlanMib 4 }

    zxAnVlanIfConfVlanCmdEntry  OBJECT-TYPE
        SYNTAX     ZxAnVlanIfConfVlanCmdEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
            "A list of  entries of zxAnVlanIfConfVlanCmdTable."
        INDEX  { zxAnVlanPortIndex }
         ::= { zxAnVlanIfConfVlanCmdTable 1 }

    ZxAnVlanIfConfVlanCmdEntry  ::= SEQUENCE {
        zxAnVlanIfConfVlanCmd      INTEGER,
        zxAnVlanIfConfVlanList       VlanId
        }

    zxAnVlanIfConfVlanCmd OBJECT-TYPE
        SYNTAX INTEGER {
                    addTaggedVlan(1),
                    delTaggedVlan(2),
                    addUntaggedVlan(3),
                    delUntaggedVlan(4),
                    addDefaultVlan(5),
                    delDefaultVlan(6)
                    }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            " The command to operate Vlan list of zxAnVlanPortConfTable.
            Each command is related to each meaming of 
            zxAnVlanPortConfVlanObjName.
            "
         ::= { zxAnVlanIfConfVlanCmdEntry 1 }

    zxAnVlanIfConfVlanList OBJECT-TYPE
        SYNTAX VlanId
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            " The value of object name in Vlan list,eg. pkgName,chanName
              Different command has different operated Vlan list,so this object
            has different meanings.please see the DESCRIPTION of 
            zxAnVlanPortConfVlanListCmd.
            "
         ::= { zxAnVlanIfConfVlanCmdEntry 2 }


-------------------------------------------------------------------------------
--  5.zxAnVlanTransGroup
-------------------------------------------------------------------------------
    zxAnVlanTranslateMode OBJECT-TYPE
        SYNTAX   INTEGER {
                -- oneton(0),
                 ntoone(1),
                 hybrid(2)
                 }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Vlan Translate Mode"
        ::= { zxAnVlanMib 14 }

    zxAnVlanIfTransTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanIfTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing VLAN translate information for VLANs
            configured into the bridge by (local or network)
            management."
        ::= { zxAnVlanMib 5 }

    zxAnVlanIfTransEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanIfTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "VLAN Translate information for VLANs
            configured into the bridge by (local or network)
            management."
        INDEX   { zxAnVlanTranslatePortId, zxAnVlanIfTransUserVid }
        ::= { zxAnVlanIfTransTable 1 }

    ZxAnVlanIfTransEntry ::= SEQUENCE {
            zxAnVlanTranslatePortId       Integer32,
            zxAnVlanIfTransUserVid       VlanId,
            zxAnVlanIfTransCVid      Integer32,
            zxAnVlanIfTransSVid      VlanId,
            zxAnVlanIfTransRowStatus    RowStatus,
            zxAnVlanIfTransVlanMerge     INTEGER
        }

    zxAnVlanTranslatePortId OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Port ID of Vlan translate rule."
        ::= { zxAnVlanIfTransEntry 1 }

    zxAnVlanIfTransUserVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "VlanId for Vlan translate."
        ::= { zxAnVlanIfTransEntry 2 }

    zxAnVlanIfTransCVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "CVlanId for Vlan translate.
            CVlanId is optional field."
        ::= { zxAnVlanIfTransEntry 3 }

    zxAnVlanIfTransSVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlanId for Vlan translate."
        ::= { zxAnVlanIfTransEntry 4 }

    zxAnVlanIfTransRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnVlanIfTransEntry 5 }

    zxAnVlanIfTransVlanMerge OBJECT-TYPE
        SYNTAX       INTEGER {
                 enable(1),    
                 disable(2) 
                 }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Vlan Translate rule Mode."
        ::= { zxAnVlanIfTransEntry 6 }

-------------------------------------------------------------------------------
--  6.zxAnVlanPortListGroup
-------------------------------------------------------------------------------
    zxAnVlanPortListTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanPortListEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing VLAN PortList information for VLAN +
            SHELF + SLOT configured into the bridge by (local or network)
            management,  specifying the set of ports to which frames
            received on a VLAN for this FDB  and containing a specific
            Group destination address are allowed to be forwarded."
        ::= { zxAnVlanMib 6 }

    zxAnVlanPortListEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanPortListEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Filtering information configured into the bridge by
            management, specifying the set of
            ports to which frames received on a VLAN and containing
            a specific Group destination address, are allowed to be
            forwarded.  "
        INDEX   { zxAnVlanIndex, zxAnShelfIndex, zxAnSlotIndex }
        ::= { zxAnVlanPortListTable 1 }

    ZxAnVlanPortListEntry ::= SEQUENCE {
            zxAnVlanIndex                 VlanId,
            zxAnShelfIndex                Integer32,
            zxAnSlotIndex                 Integer32,
            zxAnVlanPortListSlotIfType    Integer32,
            zxAnVlanPortUntaggedPortList  ZxAnPortList,
            zxAnVlanPortTaggedPortList    ZxAnPortList
        }

    zxAnVlanIndex OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "vlan index for Vlan Port list."
        ::= { zxAnVlanPortListEntry 1 }

    zxAnShelfIndex OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "shelf index for Vlan Port list."
        ::= { zxAnVlanPortListEntry 2 }

    zxAnSlotIndex OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "slot index for Vlan Port list."
        ::= { zxAnVlanPortListEntry 3 }


    zxAnVlanPortListSlotIfType OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Interface type in this slot.It is used to decide how to decode
            ZxAnPortList.It equals the value of InterfaceType field in 
            ZxAnIfindex."
        ::= { zxAnVlanPortListEntry 4 }

    zxAnVlanPortUntaggedPortList OBJECT-TYPE
            SYNTAX      ZxAnPortList
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "the untagged ports of the vlan."
            ::= { zxAnVlanPortListEntry 5 }

    zxAnVlanPortTaggedPortList OBJECT-TYPE
            SYNTAX      ZxAnPortList
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
               "the tagged ports of the vlan."
            ::= { zxAnVlanPortListEntry 6 }




-------------------------------------------------------------------------------
--  7.zxAnVlanGlobalTransConfGroup
-------------------------------------------------------------------------------
    zxAnVlanGlobalTransTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanGlobalTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMib 7 }

    zxAnVlanGlobalTransEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanGlobalTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "  "
        INDEX   {zxAnVlanGlobalTransSessionNo }
        ::= { zxAnVlanGlobalTransTable 1 }

    ZxAnVlanGlobalTransEntry ::= SEQUENCE {
        zxAnVlanGlobalTransSessionNo    Integer32,
        zxAnVlanMpTranslatePortId     Integer32,
        zxAnVlanGlobalTransVid     VlanId,
        zxAnVlanGlobalTransCVid    Integer32,
        zxAnVlanGlobalTransSVid    Integer32,
        zxAnVlanMpTranslateDirection  INTEGER,
        zxAnVlanGlobalTransRowStatus  RowStatus,
        zxAnVlanGlobalTransVlanMerge       INTEGER
    }

    zxAnVlanGlobalTransSessionNo OBJECT-TYPE
        SYNTAX      Integer32 (1..128)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This object indecate the index of item."
        ::= { zxAnVlanGlobalTransEntry 1 }

    zxAnVlanMpTranslatePortId OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indecates the ifindex of epon olt port."
        ::= { zxAnVlanGlobalTransEntry 2 }


    zxAnVlanGlobalTransVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanGlobalTransEntry 3 }


     zxAnVlanGlobalTransCVid OBJECT-TYPE
        SYNTAX      Integer32(1..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "CVlanId for Vlan translate."
        ::= { zxAnVlanGlobalTransEntry 4 }


     zxAnVlanGlobalTransSVid OBJECT-TYPE
        SYNTAX      Integer32(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlanId for Vlan translate."
        ::= { zxAnVlanGlobalTransEntry 5 }

     zxAnVlanMpTranslateDirection OBJECT-TYPE
        SYNTAX      INTEGER {upStream(1), downStream(2)}
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Stream direction for Vlan translate.At present the object hasn't 
            been used."
        ::= { zxAnVlanGlobalTransEntry 6 }

     zxAnVlanGlobalTransRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnVlanGlobalTransEntry 7}
        
     zxAnVlanGlobalTransVlanMerge OBJECT-TYPE
        SYNTAX   INTEGER {
                 enable(1),    
                 disable(2)               
                 }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Vlan Translate Mode.At present the object hasn't been used."
        ::= { zxAnVlanGlobalTransEntry 8 }   



-------------------------------------------------------------------------------
--  8.zxAnVlanMpExQinQConfGroup
-------------------------------------------------------------------------------
    zxAnVlanSmartQinQEnable OBJECT-TYPE
        SYNTAX   INTEGER {
                 enableGlobal(1),
                 disablGlobal(2),
                 enableEIGMP(3),
                 disablEIGMP(4),
                 enableV2(5),
                 disableV2(6),
                 enableV3(7),
                 disableV3(8)
                 }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Enable status of QinQ functionanity"
        ::= { zxAnVlanMib 10 }

    zxAnReservedVlan OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Reserved vlan sequence for QinQ functionality.
             eg. 1-3,5 means that vlan 1,2,3,5 are reserved
             for QinQ. It is used by QinQ V1 and V3."
        ::= { zxAnVlanMib 11 }

    zxAnVlanMpExQinQTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanMpExQinQEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMib 8 }

    zxAnVlanMpExQinQEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanMpExQinQEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "  "
        INDEX   {zxAnVlanExQinQSessionNo }
        ::= { zxAnVlanMpExQinQTable 1 }

    ZxAnVlanMpExQinQEntry ::= SEQUENCE {
        zxAnVlanExQinQSessionNo        Integer32,
        zxAnVlanSmartQinQIfIndex       Integer32,
        zxAnVlanSmartQinQUserVid       Integer32,
        zxAnVlanSmartQinQSelectiveType INTEGER,
        zxAnVlanSmartQinQStartUserVid  Integer32,
        zxAnVlanSmartQinQEndUserVid    Integer32,
        zxAnVlanExQinQInCVlanMask      Integer32,
        zxAnVlanSmartQinQEtherType     Integer32,
        zxAnVlanSmartQinQUserCos       Integer32,
        zxAnVlanSmartQinQSVid          VlanId,
        zxAnVlanSmartQinQStagCos       Integer32,
        zxAnVlanExQinQRefOnuGroupId    Integer32,
        zxAnVlanSmartQinQRowStatus     RowStatus
    }

    zxAnVlanExQinQSessionNo OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "index."
        ::= { zxAnVlanMpExQinQEntry 1 }

    zxAnVlanSmartQinQIfIndex OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 2 }

    zxAnVlanSmartQinQUserVid OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 3 }

     zxAnVlanSmartQinQSelectiveType OBJECT-TYPE
        SYNTAX      INTEGER{cvlanscope(1), ethertype(2),cos(3),cvlancos(4),
                            cvlanethertype(5),cvlantransparent(6)}
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 4 }

      zxAnVlanSmartQinQStartUserVid OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 5 }

      zxAnVlanSmartQinQEndUserVid OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 6 }

      zxAnVlanExQinQInCVlanMask OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 7 }

      zxAnVlanSmartQinQEtherType OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            " {0x0800(IP), 0x0806(ARP), 0x8863(PPPOE discovery phase), 
            0x8864(PPPOE session phase)}"
        ::= { zxAnVlanMpExQinQEntry 8 }

      zxAnVlanSmartQinQUserCos OBJECT-TYPE
        SYNTAX      Integer32 (1..7)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 9 }

      zxAnVlanSmartQinQSVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMpExQinQEntry 10 }

      zxAnVlanSmartQinQStagCos OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Cos value is between 0 to 7, default value 255 represet not 
            configured"
        DEFVAL{255}
        ::= { zxAnVlanMpExQinQEntry 11 }
        
      zxAnVlanExQinQRefOnuGroupId OBJECT-TYPE
        SYNTAX      Integer32(0..256)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The QinQ ONU group ID,refer to zxAnVlanExQinQOnuGroupId.The 0 
            means that the ONU is not joined any groups."
        DEFVAL{0}
        ::= { zxAnVlanMpExQinQEntry 12 }        
        
      zxAnVlanSmartQinQRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnVlanMpExQinQEntry 50}




-------------------------------------------------------------------------------
--  9.zxAnVlanVoipConfGroup
-------------------------------------------------------------------------------
    zxAnVlanVoipConfTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanVoipConfEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing VLAN information for VOIP."
        ::= { zxAnVlanMib 9 }

    zxAnVlanVoipConfEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanVoipConfEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Containing VLAN information for VOIP."
        INDEX   { zxAnVlanVoipVlanId }
        ::= { zxAnVlanVoipConfTable 1 }

    ZxAnVlanVoipConfEntry ::= SEQUENCE {
            zxAnVlanVoipVlanId           VlanId,
            zxAnVoipVlanUsages          BITS,
            zxAnVlanVoipRowStatus   RowStatus
        }

    zxAnVlanVoipVlanId OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The VlanId  that must exist in zxAnVlanTable."
        ::= { zxAnVlanVoipConfEntry 1 }
        
    zxAnVoipVlanUsages  OBJECT-TYPE
             SYNTAX     BITS {
                              media(0),
                              signal(1)
                             }
             MAX-ACCESS  read-create
             STATUS      current
             DESCRIPTION
                 "This configuration parameter defines the related attribute 
                 of vlan.
                   It is coded in a bit map representation (0 if not allowed,
                 1 if allowed) with following definition:
                
                    Bit 0   media (Indicate vlan of media ip )
                    Bit 1   signal (Indicate vlan of signal ip )
                    ...
                    etc."
            ::= { zxAnVlanVoipConfEntry 2 }                         
    
    zxAnVlanVoipRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnVlanVoipConfEntry 50 }

-------------------------------------------------------------------------------
--  10.zxAnVlanMpExQinQPortGroup
-------------------------------------------------------------------------------
    zxAnVlanMpExQinQPortTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanMpExQinQPortEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMib 12 }

    zxAnVlanMpExQinQPortEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanMpExQinQPortEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "  "
        INDEX   {zxAnVlanExQinQPortIndex }
        ::= { zxAnVlanMpExQinQPortTable 1 }

    ZxAnVlanMpExQinQPortEntry ::= SEQUENCE {
        zxAnVlanExQinQPortIndex     ZxAnIfindex,
        zxAnVlanSmartQinQIfEnable   INTEGER,
        zxAnVlanExQinQOnuMapGroupId Integer32,
        zxAnVlanExQinQPortResVlan   Integer32
    }

    zxAnVlanExQinQPortIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for PON port or ONU."
        ::= { zxAnVlanMpExQinQPortEntry 1 }

    zxAnVlanSmartQinQIfEnable OBJECT-TYPE
        SYNTAX   INTEGER {
                 enable(1),
                 disable(2)
                 }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Enable status of port QinQ functionanity."
        ::= { zxAnVlanMpExQinQPortEntry 2 }
        
    zxAnVlanExQinQOnuMapGroupId OBJECT-TYPE
        SYNTAX      Integer32(0..256)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The extend QinQ ONU group ID,refer to zxAnVlanExQinQOnuGroupId.
            The 0 means that the ONU is not joined any groups."
        ::= { zxAnVlanMpExQinQPortEntry 3 }  
        
    zxAnVlanExQinQPortResVlan OBJECT-TYPE
        SYNTAX      Integer32(4055..4094)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "It is only used by QinQ V2 and can be set when enable 
            zxAnVlanSmartQinQIfEnable base on PON port ,if not specified 
            reserved VLAN default value is 4094. The zxAnVlanExQinQPortResVlan 
            is invalid for ONU and get zxAnVlanExQinQPortResVlan value 
            is 0."
        DEFVAL { 4094 }
        ::= { zxAnVlanMpExQinQPortEntry 4 }        
        
-------------------------------------------------------------------------------
--  11.zxAnVlanMpExTranslatePortGroup
-------------------------------------------------------------------------------
 zxAnVlanMpExTranslatePortTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanMpExTranslatePortEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            ""
        ::= { zxAnVlanMib 13 }

    zxAnVlanMpExTranslatePortEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanMpExTranslatePortEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "  "
        INDEX   {zxAnVlanExTranslatePortIndex }
        ::= { zxAnVlanMpExTranslatePortTable 1 }

    ZxAnVlanMpExTranslatePortEntry ::= SEQUENCE {
        zxAnVlanExTranslatePortIndex     ZxAnIfindex,
        zxAnVlanExTranslatePortEnabled       INTEGER
    }

    zxAnVlanExTranslatePortIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for PON ONU."
        ::= { zxAnVlanMpExTranslatePortEntry 1 }

    zxAnVlanExTranslatePortEnabled OBJECT-TYPE
        SYNTAX   INTEGER {
                 enable(1),
                 disable(2)
                 }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Enable status of port Translate functionanity."
        ::= { zxAnVlanMpExTranslatePortEntry 2 }

-------------------------------------------------------------------------------
--  12.zxAnProtocolVlanMap
-- only use for 9800v3
-------------------------------------------------------------------------------
    zxAnProtocolVlanMapTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnProtocolVlanMapEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "ethernet protocol vlan mapping."
        ::= { zxAnVlanMib 16 }

    zxAnProtocolVlanMapEntry OBJECT-TYPE
        SYNTAX      ZxAnProtocolVlanMapEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "ethernet protocol vlan mapping."
        INDEX   { zxAnProtocolVlanPortIndex,zxAnEtherProtocolType }
        ::= { zxAnProtocolVlanMapTable 1 }

    ZxAnProtocolVlanMapEntry ::= SEQUENCE {
            zxAnProtocolVlanPortIndex       ZxAnIfindex,
            zxAnEtherProtocolType           Integer32,
            zxAnVlanIfProtoMapVid           VlanId,
            zxAnVlanIfProtoMapCos           Integer32,
            zxAnVlanIfProtoMapCVid          Integer32,
            zxAnVlanIfProtoMapCtagCos       Integer32,
            zxAnVlanIfProtoMapRowStatus     RowStatus
        }

    zxAnProtocolVlanPortIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for  port."
        ::= { zxAnProtocolVlanMapEntry 1 }

    zxAnEtherProtocolType OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Ethernet Protocol.
             '1' indicates IP.
             '2' indicates ARP.
             '3' indicates PPPoE discovery phase.
             '4' indicates PPPoE session phase.
             User define uses hex."
        ::= { zxAnProtocolVlanMapEntry 2 }

     zxAnVlanIfProtoMapVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlanId ."
        ::= { zxAnProtocolVlanMapEntry 3 }

    zxAnVlanIfProtoMapCos OBJECT-TYPE
        SYNTAX      Integer32 (0..7)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlan cos priority"
        ::= { zxAnProtocolVlanMapEntry 4 }

     zxAnVlanIfProtoMapCVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "CVlanId."
        ::= { zxAnProtocolVlanMapEntry 5 }

     zxAnVlanIfProtoMapCtagCos OBJECT-TYPE
        SYNTAX      Integer32 (0..7)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "CVlan cos priority"
        ::= { zxAnProtocolVlanMapEntry 6 }

    zxAnVlanIfProtoMapRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnProtocolVlanMapEntry 100 }
        
-------------------------------------------------------------------------------
--29 zxAnVlanIfProtoMapEnableTable
--only use for 9800v3, msag5200v3 and ms6000
-------------------------------------------------------------------------------

    zxAnVlanIfProtoMapEnableTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanIfProtoMapEnableEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Config vlan the protocol-mapping switch, default false."
        ::= { zxAnVlanMib 29 }

    zxAnVlanIfProtoMapEnableEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanIfProtoMapEnableEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Vlan mapping enable switch"
        INDEX   { zxAnProtocolVlanPortIfIndex }
        ::= { zxAnVlanIfProtoMapEnableTable 1 }

    ZxAnVlanIfProtoMapEnableEntry ::= SEQUENCE {
            zxAnProtocolVlanPortIfIndex      ZxAnIfindex, 
            zxAnVlanIfProtoMapEnable         TruthValue
        }

    zxAnProtocolVlanPortIfIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for pvc."
        ::= { zxAnVlanIfProtoMapEnableEntry 1 }

    zxAnVlanIfProtoMapEnable OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Enable this switch before config vlan mapping, 
             default value is false."
        DEFVAL  { false }
        ::= { zxAnVlanIfProtoMapEnableEntry 2 }
        
        
-------------------------------------------------------------------------------
--  13.batchVlanGroup
-------------------------------------------------------------------------------
    zxAnVlanBatchConfVlanList     OBJECT-TYPE
        SYNTAX          DisplayString
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION     " Vlans list.format, for example :2-7,11,15,300-500"
        ::=  {  zxAnBatchVLANObjects 1 }

    zxAnVlanBatchConfPrefixName OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..32))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "DURABLE: { 'Default' }
            An administratively assigned string, which may be used
            to identify the VLAN."
        REFERENCE
            "IEEE 802.1Q/D11 Section 12.10.2.1"
        ::= {  zxAnBatchVLANObjects 2 }

    zxAnBatchVlanTransparent OBJECT-TYPE
        SYNTAX   INTEGER {
                 enable(1),
                 disable(2)
                 }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The transparent mode of the vlan enable or disable."
        DEFVAL  { disable }
        ::= {  zxAnBatchVLANObjects 3 }

    zxAnVlanBatchConfType OBJECT-TYPE
        SYNTAX  INTEGER
            {
               create (1) ,
               delete (2)
            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= {  zxAnBatchVLANObjects 4 }

    zxAnVlanBatchConfStatus       OBJECT-TYPE
        SYNTAX           INTEGER
            {
               notstarted (1) ,
               inprogress (2) ,
               success (3) ,
               failed (4)
            }
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION     " operational status."
        ::=  {  zxAnBatchVLANObjects 5 }

    zxAnVlanBatchConfFailedVlanList     OBJECT-TYPE
        SYNTAX          DisplayString
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION     " failed Vlans list.Vlans list.format, 
        for example :2-7,11,15,300-500"
        ::=  {  zxAnBatchVLANObjects 6 }
    zxAnVlanBatchConfCurrVlanList     OBJECT-TYPE
        SYNTAX          DisplayString
        MAX-ACCESS      read-only
        STATUS          current
        DESCRIPTION     " Vlans list.format, for example :2-7,11,15,300-500"
        ::=  {  zxAnBatchVLANObjects 7 }



-------------------------------------------------------------------------------
--  18.zxAnXconnectConfGroup
--
-------------------------------------------------------------------------------
    zxAnXconnectTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnXconnectEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "1:1 Vlan Mib table."
        ::= { zxAnVlanMib 18 }

    zxAnXconnectEntry OBJECT-TYPE
        SYNTAX      ZxAnXconnectEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "ethernet protocol vlan mapping."
        INDEX   { zxAnXconnectPortIndex, zxAnXconnectLocationIndex }
        ::= { zxAnXconnectTable 1 }

    ZxAnXconnectEntry ::= SEQUENCE {
            zxAnXconnectPortIndex           ZxAnIfindex,
            zxAnXconnectLocationIndex       Integer32,
            zxAnXconnectMode                INTEGER,
            zxAnVlanBasedFwdSVid            VlanId,
            zxAnVlanBasedFwdCVid            VlanId,
            zxAnXconnectNewCvlanId          VlanId,
            zxAnXconnectNewSvlanId          VlanId,
            zxAnVlanBasedFwdUplinkPort      ZxAnIfindex,
            zxAnVlanBasedFwdRowStatus       RowStatus
        }

    zxAnXconnectPortIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for  port."
        ::= { zxAnXconnectEntry 1 }


    zxAnXconnectLocationIndex OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Ethernet Protocol"
        ::= { zxAnXconnectEntry 2 }

     zxAnXconnectMode OBJECT-TYPE
        SYNTAX INTEGER {
                    tlsvlan(1),
                    cvlan(2),
                    svlan(3)
                    }
        MAX-ACCESS read-create
        STATUS      current
        DESCRIPTION
            "SVlanId ."
        ::= { zxAnXconnectEntry 3 }

    zxAnVlanBasedFwdSVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlan cos priority"
        ::= { zxAnXconnectEntry 4 }

    zxAnVlanBasedFwdCVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlan cos priority"
        ::= { zxAnXconnectEntry 5 }

    zxAnXconnectNewCvlanId OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlan cos priority"
        ::= { zxAnXconnectEntry 6 }

    zxAnXconnectNewSvlanId OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlan cos priority"
        ::= { zxAnXconnectEntry 7 }

    zxAnVlanBasedFwdUplinkPort OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "SVlan cos priority"
        ::= { zxAnXconnectEntry 8 }

    zxAnVlanBasedFwdRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnXconnectEntry 100 }


    zxAnVlanExQinQSupportEIGMP     OBJECT-TYPE
       SYNTAX           TruthValue
       MAX-ACCESS       read-only
       STATUS           current
       DESCRIPTION      "If this value is true, enableEIGMP and disableEIGMP 
       in zxAnVlanSmartQinQEnable is valid."
       ::=  {  zxAnVlanMib  22  }

------------------------------------------------------------------------------
--  22.zxAnGlobalVlanTpidGroup
--
------------------------------------------------------------------------------

 zxAnVlanGlobalCtagTpid     OBJECT-TYPE
       SYNTAX           DisplayString
       MAX-ACCESS       read-write
       STATUS           current
       DESCRIPTION      "this object indicates the inner vlan tpid,at best 
       supports four groups global tpid items,
             every group defines an item including inner vlan tpid and outer 
             vlan tpid.the format as example '0x8100,0x9100'"
       DEFVAL      { "0x8100" }
       ::=  {  zxAnVlanMib  23  }

  zxAnVlanGlobalTpid     OBJECT-TYPE
       SYNTAX           DisplayString
       MAX-ACCESS       read-write
       STATUS           current
       DESCRIPTION      "this object indicates the outer vlan tpid,at best 
       supports four groups global tpid items,every group defines an item 
       including inner vlan tpid and outer vlan tpid.
             the format as example '0x8100,0x9100'"
       DEFVAL      { "0x8100" }
       ::=  {  zxAnVlanMib  24  }

-------------------------------------------------------------------------------
--  23.zxAnOnuMngVlanTable
--
-------------------------------------------------------------------------------

    zxAnOnuMngVlanTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ZxAnOnuMngVlanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    "Onu inband management vlan table."
    ::= { zxAnVlanMib 25 }

    zxAnOnuMngVlanEntry OBJECT-TYPE
    SYNTAX      ZxAnOnuMngVlanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    ""
    INDEX { zxAnOnuMngVlan}
    ::= { zxAnOnuMngVlanTable 1 }

    ZxAnOnuMngVlanEntry ::= SEQUENCE {
        zxAnOnuMngVlan        VlanId,
        zxAnOnuMngVlanRowStatus RowStatus
        }

    zxAnOnuMngVlan      OBJECT-TYPE
        SYNTAX          VlanId
        MAX-ACCESS      not-accessible
        STATUS      current
        DESCRIPTION
        "A  key that identifies the onu inband management vlan."
        ::= { zxAnOnuMngVlanEntry 1 }

    zxAnOnuMngVlanRowStatus  OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The row status of this entry."
        ::= { zxAnOnuMngVlanEntry 20 }

-------------------------------------------------------------------------------
--  24.zxAnIpRouteVlanTable
--
-------------------------------------------------------------------------------

     zxAnIpRouteVlanTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF ZxAnIpRouteVlanEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
     "IP route vlan table,IP routing to forward in the OLT-side according to 
     vlan."
     ::= { zxAnVlanMib 26 }

    zxAnIpRouteVlanEntry OBJECT-TYPE
    SYNTAX      ZxAnIpRouteVlanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
    ""
    INDEX { zxAnIpRouteVlan}
    ::= { zxAnIpRouteVlanTable 1 }

    ZxAnIpRouteVlanEntry ::= SEQUENCE {
        zxAnIpRouteVlan        VlanId,
        zxAnIpRouteVlanRowStatus RowStatus
        }

    zxAnIpRouteVlan   OBJECT-TYPE
        SYNTAX        VlanId
        MAX-ACCESS    not-accessible
        STATUS      current
        DESCRIPTION
        "A  key that identifies the IP routing forwarding vlan ."
        ::= { zxAnIpRouteVlanEntry 1 }

    zxAnIpRouteVlanRowStatus  OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
        "The row status of this entry."
        ::= { zxAnIpRouteVlanEntry 20 }

-------------------------------------------------------------------------------
--  27.zxAnVlanInterfaceTable
--    
-------------------------------------------------------------------------------
     zxAnVlanInterfaceTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanInterfaceEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "Vlan interface configuration table"
        ::= { zxAnVlanMib 27 }

    zxAnVlanInterfaceEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanInterfaceEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        ""
        INDEX { zxAnVlanInterfaceVlanId}
        ::= { zxAnVlanInterfaceTable 1 }

    ZxAnVlanInterfaceEntry ::= SEQUENCE {
        zxAnVlanInterfaceVlanId        VlanId,
        zxAnVlanBroadcastRateLimit     Integer32
        }

    zxAnVlanInterfaceVlanId  OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
        "VlanId for Vlan interface."
        ::= { zxAnVlanInterfaceEntry 1 }

    zxAnVlanBroadcastRateLimit  OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "kbps"
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
        "Indicates broadcast rate-limit"
        ::= { zxAnVlanInterfaceEntry 5 }

-------------------------------------------------------------------------------
--    zxAnVlanArpRateLimit  OBJECT-TYPE
--        SYNTAX      Integer32
--        MAX-ACCESS  read-write
--        STATUS      current
--        DESCRIPTION
--        "Indicates arp rate-limit"
--        ::= { zxAnVlanInterfaceEntry 6 }
--
--    zxAnVlanDhcpRateLimit  OBJECT-TYPE
--        SYNTAX      Integer32
--        MAX-ACCESS  read-write
--        STATUS      current
--        DESCRIPTION
--        "Indicates dhcp rate-limit"
--        ::= { zxAnVlanInterfaceEntry 7 }
-------------------------------------------------------------------------------       

-------------------------------------------------------------------------------
--  zxAnPortMvlanTranslateTable
--
-------------------------------------------------------------------------------

    zxAnPortMvlanTranslateTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnPortMvlanTranslateEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing MVLAN translate information for VLANs
            configured into the bridge by (local or network)
            management."
        ::= { zxAnVlanMib 28 }

    zxAnPortMvlanTranslateEntry OBJECT-TYPE
        SYNTAX      ZxAnPortMvlanTranslateEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "MVLAN Translate information for VLANs
            configured into the bridge by (local or network)
            management."
        INDEX   { zxAnPortMvlanTranslateIfIndex, zxAnPortMvlanTranslateMvlan,
         zxAnPortMvlanTranslateCvlan }
        ::= { zxAnPortMvlanTranslateTable 1 }

    ZxAnPortMvlanTranslateEntry ::= SEQUENCE {
            zxAnPortMvlanTranslateIfIndex      ZxAnIfindex,
            zxAnPortMvlanTranslateMvlan        VlanId,
            zxAnPortMvlanTranslateCvlan        Integer32,
            zxAnMVlanIfTransRowStatus    RowStatus
        }

    zxAnPortMvlanTranslateIfIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Port ID of Mvlan translate rule."
        ::= { zxAnPortMvlanTranslateEntry 1 }

    zxAnPortMvlanTranslateMvlan OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "VlanId for Mvlan translate."
        ::= { zxAnPortMvlanTranslateEntry 2 }

    zxAnPortMvlanTranslateCvlan OBJECT-TYPE
        SYNTAX      Integer32 (0..4094)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "CVlan Id for Mvlan translate, 
              1 to 4094 is the CVlan Id, and 0 means translate to untag." 
        ::= { zxAnPortMvlanTranslateEntry 3 }

    zxAnMVlanIfTransRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnPortMvlanTranslateEntry 10 }       
        
-------------------------------------------------------------------------------
-- 30.zxAnInternalVlanGroup
-------------------------------------------------------------------------------
    zxAnInternalVlanTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnInternalVlanEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing system Internal used VLANs information."
        ::= { zxAnVlanMib 30 }

    zxAnInternalVlanEntry OBJECT-TYPE
        SYNTAX      ZxAnInternalVlanEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            " Entry contains system Internal VLAN information, 
            including and service type VLAN IDs."
        INDEX   { zxAnInternalVlanServiceType }
        ::= { zxAnInternalVlanTable 1 }

    ZxAnInternalVlanEntry ::= SEQUENCE {
            zxAnInternalVlanServiceType    INTEGER,
            zxAnInternalVlanList         DisplayString,
            zxAnInternalVlanRowStatus      RowStatus
        }

    zxAnInternalVlanServiceType OBJECT-TYPE
        SYNTAX   INTEGER
        {
            vpn(1),
            voipUpstream(2),
            voipDownstream(3),
            ieee1588(4),
            gpon(5)
        }
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The system Internal used VLAN service type, there are five types:
            - vpn
            - voipUpstream
            - voipDownStream
            - ieee1588
            - gpon
            "
        ::= { zxAnInternalVlanEntry 1 }

    zxAnInternalVlanList OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            " Internal vlan sequence, eg. 1-3,5 means that vlan 1,2,3,5
            are Internal used. "
        ::= { zxAnInternalVlanEntry 2 }
        
    zxAnInternalVlanRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Row Status of the Table."
        ::= { zxAnInternalVlanEntry 20 }
        
-------------------------------------------------------------------------------
-- 31.zxAnVlanExQinQOnuGroup
-------------------------------------------------------------------------------
     zxAnVlanExQinQOnuGroupTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanExQinQOnuGroupEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing QinQ ONU groups."
        ::= { zxAnVlanMib 31 }
        
    zxAnVlanExQinQOnuGroupEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanExQinQOnuGroupEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Entry for zxAnVlanExQinQOnuGroupTable."
        INDEX   {zxAnVlanExQinQPonPortIndex,zxAnVlanExQinQOnuGroupId }
        ::= { zxAnVlanExQinQOnuGroupTable 1 }            


    ZxAnVlanExQinQOnuGroupEntry ::= SEQUENCE {
        zxAnVlanExQinQPonPortIndex     ZxAnIfindex,
        zxAnVlanExQinQOnuGroupId       Integer32,
        zxAnVlanExQinQOnuGroupName     DisplayString,
        zxAnVlanExQinQOnuGroupResVlan  Integer32,
        zxAnVlanExQinQOnuGroupMembers  DisplayString
    }

    zxAnVlanExQinQPonPortIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for PON port."
        ::= { zxAnVlanExQinQOnuGroupEntry 1 }

    zxAnVlanExQinQOnuGroupId OBJECT-TYPE
        SYNTAX      Integer32(1..256)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The extend QinQ ONU group ID."
        ::= { zxAnVlanExQinQOnuGroupEntry 2 }  
        
    zxAnVlanExQinQOnuGroupName OBJECT-TYPE
        SYNTAX      DisplayString(SIZE(0..64))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "The extend QinQ ONU group name."
        ::= { zxAnVlanExQinQOnuGroupEntry 3 }      
        
    zxAnVlanExQinQOnuGroupResVlan OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The reserved VLAN of the QinQ ONU group."
        ::= { zxAnVlanExQinQOnuGroupEntry 4 } 
        
    zxAnVlanExQinQOnuGroupMembers OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The members of the group.Its members are the ONU number, 
            comma, hyphen.  eg. 1-3,5 means ONU 1,2,3,5."
        ::= { zxAnVlanExQinQOnuGroupEntry 5 }   

-------------------------------------------------------------------------------
-- 32.zxAnVlanTpidObjects  
-------------------------------------------------------------------------------
        
    zxAnVlanTpidObjects           OBJECT IDENTIFIER ::= { zxAnVlanMib 32 }
    
    zxAnVlanTpidTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanTpidEntry
        MAX-ACCESS  not-accessible
        STATUS      deprecated
        DESCRIPTION
            "A table containing VLAN TPID configuration."
        ::= { zxAnVlanTpidObjects 2 }
        
    zxAnVlanTpidEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanTpidEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Entry for zxAnVlanTpidTable."
        INDEX   
            {
                zxAnVlanPortIndex,
                zxAnVlanTpidSVlanId,
                zxAnVlanTpidCVlanId
            }
        ::= { zxAnVlanTpidTable 1 } 
        
    ZxAnVlanTpidEntry ::= SEQUENCE {
        zxAnVlanTpidSVlanId             Integer32,
        zxAnVlanTpidCVlanId             Integer32,
        zxAnVlanTpid                    Integer32,
        zxAnVlanTpidRowStatus           RowStatus
    }
    
    zxAnVlanTpidSVlanId  OBJECT-TYPE
        SYNTAX      Integer32(1..4094)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "SVLAN ID of the port."
        ::= { zxAnVlanTpidEntry 1 }
        
    zxAnVlanTpidCVlanId  OBJECT-TYPE
        SYNTAX      Integer32(0..4094)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "CVLAN ID of the port.
             If zxAnVlanTpidCVlanId is 0, the TPID of single tag traffic 
             will be modified.
            "
        ::= { zxAnVlanTpidEntry 2 }
    
    zxAnVlanTpid    OBJECT-TYPE 
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the SVLAN TPID with HEX. 
             Default VLAN 0x8100(33024)."
        DEFVAL     { 33024 }
        ::= { zxAnVlanTpidEntry 3 }
    
    zxAnVlanTpidRowStatus  OBJECT-TYPE
        SYNTAX     RowStatus
        MAX-ACCESS read-create
        STATUS     current
        DESCRIPTION
            "The row status of this entry."
        ::= { zxAnVlanTpidEntry 50 }

-------------------------------------------------------------------------------
-- 33.zxAnIeee1588VlanTable
-------------------------------------------------------------------------------

    zxAnIeee1588VlanTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnIeee1588VlanEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "IEEE1588 VLAN table."
        ::= { zxAnVlanMib 33 }

    zxAnIeee1588VlanEntry OBJECT-TYPE
        SYNTAX      ZxAnIeee1588VlanEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "IEEE1588 VLAN table entry."
        INDEX { zxAnIeee1588Vlan}
        ::= { zxAnIeee1588VlanTable 1 }

    ZxAnIeee1588VlanEntry ::= SEQUENCE {
        zxAnIeee1588Vlan          VlanId,
        zxAnIeee1588VlanRowStatus RowStatus
        }

    zxAnIeee1588Vlan      OBJECT-TYPE
        SYNTAX          VlanId
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
            "This object indicates the VLAN ID that is used to forward the
             IEEE1588 clock synchronization packet."
        ::= { zxAnIeee1588VlanEntry 1 }

    zxAnIeee1588VlanRowStatus  OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The row status of this entry."
        ::= { zxAnIeee1588VlanEntry 50  }

-------------------------------------------------------------------------------
-- 34.zxAnGlobalMvlanTranslate
-------------------------------------------------------------------------------

    zxAnMVlanGlobalTransTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnMVlanGlobalTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing global MVLAN translate information."
        ::= { zxAnVlanMib 34 }

    zxAnMVlanGlobalTransEntry OBJECT-TYPE
        SYNTAX      ZxAnMVlanGlobalTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Entry for zxAnMVlanGlobalTransTable."
        INDEX   { zxAnMVlanGlobalTransMVid}
        ::= { zxAnMVlanGlobalTransTable 1 }

    ZxAnMVlanGlobalTransEntry ::= SEQUENCE {
            zxAnMVlanGlobalTransMVid         VlanId,
            zxAnMVlanGlobalTransCVid         Integer32,
            zxAnMVlanGlobalTransRowStatus     RowStatus
        }

    zxAnMVlanGlobalTransMVid OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "VLAN ID for MVLAN translated."
        ::= { zxAnMVlanGlobalTransEntry 1 }

    zxAnMVlanGlobalTransCVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "CVLAN ID for MVLAN translate, 
              1 to 4094 is the CVLAN ID, and 0 means translate to untag." 
        ::= { zxAnMVlanGlobalTransEntry 2 }

    zxAnMVlanGlobalTransRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnMVlanGlobalTransEntry 20 }  

-------------------------------------------------------------------------------  
-- 35.zxAnVlanStormCtrl
-------------------------------------------------------------------------------

    zxAnVlanStormCtrlTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanStormCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing VLAN storm control information."
        ::= { zxAnVlanMib 35 }

    zxAnVlanStormCtrlEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanStormCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Entry for zxAnVlanStormCtrlTable."
        INDEX   { zxAnVlanId }
        ::= { zxAnVlanStormCtrlTable 1 }

    ZxAnVlanStormCtrlEntry ::= SEQUENCE {
            zxAnVlanMulticastFloodCtrl     INTEGER
        }
    
    zxAnVlanMulticastFloodCtrl OBJECT-TYPE
        SYNTAX      INTEGER
            {
                floodUnknown(1),
                dropUnknown(2),
                floodAll(3)                
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The multicast packet flood control of VLAN."
        DEFVAL  { floodUnknown }
        ::= { zxAnVlanStormCtrlEntry 1 }

-------------------------------------------------------------------------------
-- 36.zxAnVlanTagPortList
-------------------------------------------------------------------------------

    zxAnVlanTagPortListTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanTagPortListEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "VLAN tag port list table."
        ::= { zxAnVlanMib 36 }

    zxAnVlanTagPortListEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanTagPortListEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "VLAN tag port list entry."
        INDEX   
            { 
                zxAnVlanStag,
                zxAnVlanCtag,
                zxAnVlanTagShelf,
                zxAnVlanTagSlot
            }
        ::= { zxAnVlanTagPortListTable 1 }

    ZxAnVlanTagPortListEntry ::= SEQUENCE 
        {
            zxAnVlanStag           Integer32,
            zxAnVlanCtag           Integer32,
            zxAnVlanTagShelf       Integer32,
            zxAnVlanTagSlot        Integer32,
            zxAnVlanTagPortList    ZxAnPortList
        }
    
    zxAnVlanStag OBJECT-TYPE
        SYNTAX      Integer32(0..4094)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "S-Tag for port list.
             Value 0 means to query VLAN tag port list without S-Tag.
            "
        ::= { zxAnVlanTagPortListEntry 1 }
        
    zxAnVlanCtag OBJECT-TYPE
        SYNTAX      Integer32(0..4094)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "C-Tag for port list.
             Value 0 means to query VLAN tag port list without C-Tag.
            "
        ::= { zxAnVlanTagPortListEntry 2 }

    zxAnVlanTagShelf OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Shelf No. for VLAN tag port list."
        ::= { zxAnVlanTagPortListEntry 3 }

    zxAnVlanTagSlot OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Slot No. for VLAN tag port list."
        ::= { zxAnVlanTagPortListEntry 4 }
        
    zxAnVlanTagPortList OBJECT-TYPE
        SYNTAX      ZxAnPortList
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The ports of the VLAN tag.
             
             If zxAnVlanStag equals 0 and zxAnVlanCtag does not equal 0, 
             zxAnVlanTagPortList means the ports of the specified C-Tag.
             
             If zxAnVlanStag does not equal 0 and zxAnVlanCtag equals 0, 
             zxAnVlanTagPortList means the ports of the specified S-Tag.
             
             If both zxAnVlanStag and zxAnVlanCtag do not equal 0, 
             zxAnVlanTagPortList means the ports of the specified S-Tag and 
             C-Tag."
        ::= { zxAnVlanTagPortListEntry 5 }

-------------------------------------------------------------------------------
-- 37.zxAnVlanConfTpid
-------------------------------------------------------------------------------

    zxAnVlanConfTpidTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanConfTpidEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table containing VLAN TPID information."
        ::= { zxAnVlanMib 37 }

    zxAnVlanConfTpidEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanConfTpidEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Entry for zxAnVlanConfTpidTable.
            
            The multi-variables binding rule should be complied with when a 
            manager creates a VLAN TPID. According to this rule, all the 
            related mib variables must be included in one SNMP set operation.
            "
        INDEX   { zxAnVlanId }
        ::= { zxAnVlanConfTpidTable 1 }

    ZxAnVlanConfTpidEntry ::= SEQUENCE {
            zxAnVlanTpidConfTpid           Integer32,
            zxAnVlanTpidConfRowStatus  RowStatus
        }
    
    zxAnVlanTpidConfTpid  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the Outer VLAN TPID of this VLAN.
             Value define uses hex."
        ::={  zxAnVlanConfTpidEntry 1 }

    zxAnVlanTpidConfRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The status of this conceptual row.
            
             The supported actions of this conceptual row only include:
             'createAndGo' and 'destroy'.

             To create a row in this table, a manager must set this object to 
             createAndGo(4), and must comply with the multi-variables binding 
             rule described in zxAnSrvPortConfEntry.
    
             To delete a row in this table, a manager must set this object to 
             destroy(6). 
             
             To get this object, the agent always returns 1. "
        ::= { zxAnVlanConfTpidEntry 50 }

-------------------------------------------------------------------------------
-- 38.zxAnVlanRuledTransGroup
-------------------------------------------------------------------------------
        
    zxAnVlanRuledTransGroup           OBJECT IDENTIFIER ::= { zxAnVlanMib 38 }
    
    zxAnVlanRuledTransTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanRuledTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This table includes ruled VLAN translate configuration.     
            
            Mandatory variables must be in the one snmp set operation.
            Optional variables may be in the one snmp set operation with the 
            mandatory variables, but must not be used alone.
            
            - mandatoty: 
            zxAnVlanRuledTransUserVid, 
            zxAnVlanRuledTransRowStatus
            - optional : none
            "
        ::= { zxAnVlanRuledTransGroup 2 }
    
    zxAnVlanRuledTransEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanRuledTransEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry in zxAnVlanRuledTransTable."
        INDEX   { 
            zxAnVlanPortIndex, 
            zxAnVlanRuledTransSVid,  
            zxAnVlanRuledTransCVid
        }
        ::= { zxAnVlanRuledTransTable 1 }
    
    ZxAnVlanRuledTransEntry ::= SEQUENCE { 
        zxAnVlanRuledTransSVid        Integer32,
        zxAnVlanRuledTransCVid        Integer32,
        zxAnVlanRuledTransUserVid     Integer32,
        zxAnVlanRuledTransRowStatus   RowStatus
        }

    zxAnVlanRuledTransSVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094) 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The network side SVLAN.
             '0' indicates no config."    
        DEFVAL      { 0 }
        ::= { zxAnVlanRuledTransEntry 1 }      
    
    zxAnVlanRuledTransCVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094) 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The network side CVLAN.
             '0' indicates any CVLAN."    
        ::= { zxAnVlanRuledTransEntry 2 }
        
    zxAnVlanRuledTransUserVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION 
            "User VLAN ID.
            '0' indicates removing the network side VLAN."    
        ::= { zxAnVlanRuledTransEntry 3 }         
        
    zxAnVlanRuledTransRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The status of this conceptual row.
            The state of this conceptual row only support 
            'not exist' and  'active'.
            The action of this conceptual row only support
            'createAndGo' and 'destroy'.
            
            To create a row in this table, a manager must
            set this object to createAndGo(4), and must comply 
            with the multi-variables usage rules in zxAnVlanRuledTransEntry
            description.
    
            To delete a row in this table, a manager must
            set this object to destroy(6). 
             
            To query this object, always return 1. "
        ::= { zxAnVlanRuledTransEntry 50}        

-------------------------------------------------------------------------------
-- 39.zxAnVlanIfCosMapObjects
-------------------------------------------------------------------------------
        
    zxAnVlanIfCosMapObjects         OBJECT IDENTIFIER ::= { zxAnVlanMib 39 }
    
    zxAnVlanIfCosMapEnableTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanIfCosMapEnableEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This table includes CoS mapping VLAN enabling configuration"
        ::= { zxAnVlanIfCosMapObjects 2 }

    zxAnVlanIfCosMapEnableEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanIfCosMapEnableEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry in zxAnVlanIfCosMapEnableTable."
        INDEX   { zxAnVlanPortIndex }
        ::= { zxAnVlanIfCosMapEnableTable 1 }

    ZxAnVlanIfCosMapEnableEntry ::= SEQUENCE { 
            zxAnVlanIfCosMapEnable        INTEGER
        }

    zxAnVlanIfCosMapEnable OBJECT-TYPE
        SYNTAX      INTEGER
        {
            enabled(1),
            disabled(2)
        }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Enable/disable CoS mapping VLAN on the interface."
        DEFVAL  { disabled }
        ::= { zxAnVlanIfCosMapEnableEntry 1 }
    
    zxAnVlanIfCosMapTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanIfCosMapEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This table includes CoS mapping VLAN configuration of interface. 
            
            Mandatory variables must be in the one snmp set operation.
            Optional variables may be in the one snmp set operation with the 
            mandatory variables, but must not be used alone.
            
            - mandatoty: 
            zxAnVlanIfCosMapSVid, 
            zxAnVlanIfCosMapCVid,
            zxAnVlanIfCosMapRowStatus
            
            - optional : none            
            "
        ::= { zxAnVlanIfCosMapObjects 3 }
        
    zxAnVlanIfCosMapEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanIfCosMapEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry in zxAnVlanIfCosMapTable."
        INDEX   { 
            zxAnVlanPortIndex, 
            zxAnVlanIfCosMapCos
        }
        ::= { zxAnVlanIfCosMapTable 1 }
        
    ZxAnVlanIfCosMapEntry ::= SEQUENCE {
            zxAnVlanIfCosMapCos          Integer32,
            zxAnVlanIfCosMapSVid         Integer32,
            zxAnVlanIfCosMapCVid         Integer32,
            zxAnVlanIfCosMapRowStatus    RowStatus
        }
        
    zxAnVlanIfCosMapCos OBJECT-TYPE
        SYNTAX      Integer32(0..7)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "CoS priority."
        ::= { zxAnVlanIfCosMapEntry 1 }
        
    zxAnVlanIfCosMapSVid OBJECT-TYPE
        SYNTAX      Integer32(1..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "CoS priority mapping SVID."
        ::= { zxAnVlanIfCosMapEntry 2 }
        
    zxAnVlanIfCosMapCVid OBJECT-TYPE
        SYNTAX      Integer32(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "CoS priority mapping CVID.
             Value 0 means no CVID."
        ::= { zxAnVlanIfCosMapEntry 3 }
        
    zxAnVlanIfCosMapRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The status of this conceptual row.
            The action of this conceptual row only support
            'createAndGo' and 'destroy'.
            
            To create a row in this table, a manager must
            set this object to createAndGo(4), and must comply with the 
            multi-variables usage rules in zxAnVlanIfCosMapEntry
            description.
    
            To delete a row in this table, a manager must
            set this object to destroy(6)."
        ::= { zxAnVlanIfCosMapEntry 50 }

-------------------------------------------------------------------------------
-- 40.zxAnVlanBasedForwardObjects
-------------------------------------------------------------------------------    
    zxAnVlanBasedForwardObjects         OBJECT IDENTIFIER ::= { zxAnVlanMib 40 }    
    
    zxAnVlanBasedForwardTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnVlanBasedForwardEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This table includes VLAN based forward rule configuration." 
        ::= { zxAnVlanBasedForwardObjects 2 }
      
    zxAnVlanBasedForwardEntry OBJECT-TYPE
        SYNTAX      ZxAnVlanBasedForwardEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An entry in zxAnVlanBasedForwardTable.
            To create a row in this table, the zxAnVlanBasedForwardSVid and 
            zxAnVlanBasedForwardCVid can contain only one user port and one
            uplink port.
            The zxAnVlanBasedForwardUserPort and zxAnVlanBasedForwardUplinkPort 
            variables are not necessary in SNMP set operation."
        INDEX   { zxAnVlanBasedForwardSVid, zxAnVlanBasedForwardCVid }
        ::= { zxAnVlanBasedForwardTable 1 }
    
    ZxAnVlanBasedForwardEntry ::= SEQUENCE {
        zxAnVlanBasedForwardSVid             VlanId,
        zxAnVlanBasedForwardCVid             Integer32,
        zxAnVlanBasedForwardIfIndex          ZxAnIfindex,    
        zxAnVlanBasedForwardUplinkPort       ZxAnIfindex,                     
        zxAnVlanBasedForwardRowStatus        RowStatus
    }
        
    zxAnVlanBasedForwardSVid OBJECT-TYPE
        SYNTAX      VlanId 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "SVLAN"
        ::= { zxAnVlanBasedForwardEntry 1 }
        
    zxAnVlanBasedForwardCVid OBJECT-TYPE
        SYNTAX      Integer32 (0..4094)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "CVLAN,'0' indicates no config."
        ::= { zxAnVlanBasedForwardEntry 2 }   
        
    zxAnVlanBasedForwardIfIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex 
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "An index for user port."
        ::= { zxAnVlanBasedForwardEntry 3 }    
                     
    zxAnVlanBasedForwardUplinkPort OBJECT-TYPE
        SYNTAX      ZxAnIfindex 
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "An index for uplink port."
        ::= { zxAnVlanBasedForwardEntry 4 }    

    zxAnVlanBasedForwardRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The status of this conceptual row.
            The state of this conceptual row only support 
            'not exist' and  'active'.
            The action of this conceptual row only support
            'createAndGo' and 'destroy'.
            
            To create a row in this table, a manager must
            set this object to createAndGo(4), and must comply 
            with the multi-variables usage rules in zxAnVlanBasedForwardEntry
            description.
    
            To delete a row in this table, a manager must
            set this object to destroy(6). 
             
            To query this object, always return 1. "
        ::= { zxAnVlanBasedForwardEntry 50 }                      
        
-------------------------------------------------------------------------------
-- 99.zxAnVlanGlobalObjects
-------------------------------------------------------------------------------    
    zxAnVlanGlobalObjects         OBJECT IDENTIFIER ::= { zxAnVlanMib 99 }    
    
    zxAnVlanCapabilities  OBJECT-TYPE
        SYNTAX      BITS    {
            supportBasedForwardObjects(0)     
        }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The VLAN management capabilities of this equipment. 
             The bit value 1 means the function represented by this bit is
             supported by this equipment.
             NOTE: No recommended to display it in NMS.

             supportVlanBasedForwardTable(0) 
                                  - Support zxAnVlanBasedForwardObjects
                                    ,deprecated zxAnXconnectTable and 
                                    zxAnVlanXconnect
            "
        ::= { zxAnVlanGlobalObjects 1 }                               
-------------------------------------------------------------------------------
-- 100.zxAnVlanMibEnd
-------------------------------------------------------------------------------
    zxAnVlanMibEnd OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The dummy object indicats the end of vlan mib."
        ::= { zxAnVlanMib 100 }

    END
