
--------------------------------------------------------------------------
-- File Name : ZTE-AN-ACL-MIB.mib
-- Date      : 2008-01-18
-- Author    : ZTE Nms dept.

--
-- Zte ACL Mib for Access Node
-- 
-- 
--------------------------------------------------------------------------


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

    IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE, Integer32, Unsigned32, 
        Counter32,IpAddress                 FROM SNMPv2-SMI
        MacAddress,RowStatus,DisplayString,RowStatus,
        TEXTUAL-CONVENTION                  FROM SNMPv2-TC
        ifIndex                             FROM IF-MIB
        zxAn,ZxAnIfindex                    FROM ZTE-AN-TC-MIB;


    zxAnAclMib MODULE-IDENTITY
        LAST-UPDATED "200801180840Z"
        ORGANIZATION "ZTE Corporation"
        CONTACT-INFO "ZTE NMS dept. 
                      Su Chunshan   68896292 "
        DESCRIPTION  "This MIB defines managed objects of zte ACL mgmt."
         ::= {zxAn 23}
         

    zxAnAclObjects     OBJECT IDENTIFIER  ::=  { zxAnAclMib 1 }
    zxAnAclTrapObjects OBJECT IDENTIFIER  ::=  { zxAnAclMib 2 }
    
    zxAnAclGlobalObjects OBJECT IDENTIFIER  ::=  { zxAnAclObjects 1 }
    
    
    
--------------------------------------------------------------------------------
-- Following objects are defined.
-- 1.Acl Table

-- 9.Trap
--------------------------------------------------------------------------------

-------------------------------------------------------------------------------
-- Following objects are defined 4 UNI.
-- 1.Acl Class Configuration Table
-- 2.Acl Policy Configuration Table
-- 3.Acl Port Policy table
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
-- 1.Acl Table
--------------------------------------------------------------------------------
    Operator ::= TEXTUAL-CONVENTION
        STATUS      current
        DESCRIPTION
            "......"
        SYNTAX      INTEGER {
            none(0),
            eq(1),
            neq(2),
            lt(3),
            gt(4),
            range(5)
            }
            
    zxAnAclTable  OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnAclEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Acl Table"
        ::= { zxAnAclObjects 2 }

    zxAnAclEntry  OBJECT-TYPE
        SYNTAX      ZxAnAclEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Acl Table"
        INDEX  { zxAnAclIndex,  zxAnAclRuleId }
        ::= { zxAnAclTable 1 }
        
    ZxAnAclEntry ::=
        SEQUENCE {
            zxAnAclIndex                INTEGER,      
            zxAnAclRuleId               INTEGER,      
            zxAnAclAction               INTEGER,
            zxAnAclProtocolType         INTEGER,
            zxAnAclSrcIp                IpAddress,
            zxAnAclSrcIpWildcardMask    IpAddress,
            zxAnAclDestIp               IpAddress,
            zxAnAclDestIpWildcardMask   IpAddress,
            zxAnAclSrcPortOperator      Operator,
            zxAnAclSrcPortStart         Integer32,      
            zxAnAclSrcPortEnd           Integer32,      
            zxAnAclDestPortOperator     Operator,      
            zxAnAclDestPortStart        Integer32,      
            zxAnAclDestPortEnd          Integer32,      
                                        
            zxAnAclInMAC                MacAddress,
            zxAnAclInMACWildcardMask    MacAddress,
            zxAnAclOutMAC               MacAddress,
            zxAnAclOutMACWildcardMask   MacAddress,
            zxAnAclEthProtocol          INTEGER,      
            zxAnAclVlanID               Integer32,      
            zxAnAclVlanPri              Integer32,      
            zxAnAclInnerVlan            Integer32,      
            zxAnAclInnerVlanPri         Integer32, 
            --zxAnAclStartTime                   INTEGER, 
            --zxAnAclEndTime                     INTEGER, 
            --zxAnAclEnable               INTEGER,  
            
            zxAnAclMinVlanID               Integer32,      
            zxAnAclMaxVlanID               Integer32,  
            zxAnAclDscp                         INTEGER,    
            zxAnBasicAclRowStatus            RowStatus         
    }
    
    zxAnAclIndex  OBJECT-TYPE
        SYNTAX      INTEGER(300..349)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The ACL main index of this table"
        ::= { zxAnAclEntry 1 }    

    zxAnAclRuleId  OBJECT-TYPE
        SYNTAX      INTEGER(1..127)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The ACL sub index of this table"
        ::= { zxAnAclEntry 2 }    

    zxAnAclAction  OBJECT-TYPE
        SYNTAX      INTEGER
            {
                permit(1),
                deny(2)
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The action of this ACL rule."
        DEFVAL{ permit }    
        ::= { zxAnAclEntry 3 }    

    zxAnAclProtocolType  OBJECT-TYPE
        SYNTAX      INTEGER
            {
                icmp(1),
                igmp(2),
                ipInIp(4),
                tcp(6),
                eigr(8),
                igrp(9),
                udp(17),
                icmpv6(58),
                ospf(89),
                pim(103),
                vrrp(112),
                ip(255)
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Protocol Type of ip,such as:
                ICMP = 1,
                IGMP = 2,
                IPINIP = 4,
                TCP = 6,
                EIGR = 8,
                IGRP = 9,
                UDP = 17,
                ICMPv6 = 58, 
                OSPF = 89,
                PIM = 103,
                VRRP = 112,
                IP = 255
            "
        DEFVAL{ip}    
        ::= { zxAnAclEntry 4 }
            
    zxAnAclSrcIp  OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The source ip of the ACL rule."    
        --DEFVAL{ 0.0.0.0 }    
        ::= { zxAnAclEntry 5 }    

    zxAnAclSrcIpWildcardMask OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Wildcard Mask of source ip. "    
        --DEFVAL{255.255.255.255}
        ::= { zxAnAclEntry 6 }    
        
    zxAnAclDestIp  OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The destination ip of the ACL rule."    
        --DEFVAL{ 0.0.0.0 }    
        ::= { zxAnAclEntry 7 } 
           
    zxAnAclDestIpWildcardMask OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Wildcard Mask of destination ip. "    
        --DEFVAL{255.255.255.255}
        ::= { zxAnAclEntry 8 }   
         

    zxAnAclSrcPortOperator  OBJECT-TYPE
        SYNTAX      Operator
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The operator of the source port rule."
        DEFVAL{ none }    
        ::= { zxAnAclEntry 9 }    
        
    zxAnAclSrcPortStart  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "the start of source port.
            Such as:
            0,none
            21,ftp
            23,telnet
            25,smtp
            53,domain
            79,finger
            80,http
            109,pop2
            110,pop3
            179,bgp
            513,rlogin
            
             "
        DEFVAL{0}    
        ::= { zxAnAclEntry 10 }    
        
    zxAnAclSrcPortEnd  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "the end of source port "
        DEFVAL{0}    
        ::= { zxAnAclEntry 11 }    
        
    zxAnAclDestPortOperator  OBJECT-TYPE
        SYNTAX      Operator
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The operator of the destination port rule."
        DEFVAL{ none }    
        ::= { zxAnAclEntry 12 }    
        
    zxAnAclDestPortStart  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "the end of source port "
        DEFVAL{0}    
        ::= { zxAnAclEntry 13 }    
        
    zxAnAclDestPortEnd  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "the end of destination port "
        DEFVAL{0}    
        ::= { zxAnAclEntry 14 }   
         
            
    zxAnAclInMAC  OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "In MAC"
       -- DEFVAL{00:00:00:00:00:00}
        ::= { zxAnAclEntry 15 }    
        
    zxAnAclInMACWildcardMask OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Wildcard Mask of in MAC. "    
            
      --  DEFVAL{{ff ff ff ff ff ff}}            
        ::= { zxAnAclEntry 16 }  
          

    zxAnAclOutMAC  OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Out MAC"
        --DEFVAL{{00 00 00 00 00 00}}
        ::= { zxAnAclEntry 17 }  
          
    zxAnAclOutMACWildcardMask OBJECT-TYPE
        SYNTAX      MacAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Wildcard Mask of out MAC. "    
        --DEFVAL{ff ff ff ff ff ff}            
        ::= { zxAnAclEntry 18 }    
        
       
    zxAnAclEthProtocol  OBJECT-TYPE
        SYNTAX  INTEGER
            {
                ip(2048),
                arp(2054)
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Ethernet Protocol
            0x0800  ip
            0x0806  arp"
        ::= { zxAnAclEntry 19 }
       
 
    zxAnAclVlanID  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "VLAN ID"
--        DEFVAL{65535}    
        ::= { zxAnAclEntry 20 }    
        
    zxAnAclVlanPri  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The priority of the VLAN."
--        DEFVAL{255}    
        ::= { zxAnAclEntry 21 }

    zxAnAclInnerVlan  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Inner VLAN"
--        DEFVAL{65535}    
        ::= { zxAnAclEntry 22 }

    zxAnAclInnerVlanPri  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The priority of the inner VLAN."
        DEFVAL{255}    
        ::= { zxAnAclEntry 23 }

    zxAnAclMinVlanID  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "VLAN ID"
--        DEFVAL{65535}    
        ::= { zxAnAclEntry 24 }    

    zxAnAclMaxVlanID  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "VLAN ID"
--        DEFVAL{65535}    
        ::= { zxAnAclEntry 25 }         

    zxAnAclDscp  OBJECT-TYPE
        SYNTAX      INTEGER(0..63)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "dscp"
--        DEFVAL{255}    
        ::= { zxAnAclEntry 26 }                    
       
    zxAnBasicAclRowStatus      OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus of this entry."
        ::= { zxAnAclEntry 50 }            
         







--------------------------------------------------------------------------------
-- 2.Acl Extended Table
--------------------------------------------------------------------------------

    zxAnAclExTable  OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnAclExEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Acl Table"
        ::= { zxAnAclObjects 3 }

    zxAnAclExEntry  OBJECT-TYPE
        SYNTAX      ZxAnAclExEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Acl Table"
        INDEX  { zxAnAclExIndex,  zxAnAclExRuleId }
        ::= { zxAnAclExTable 1 }
        
    ZxAnAclExEntry ::=
        SEQUENCE {
            zxAnAclExIndex              INTEGER,      
            zxAnAclExRuleId             INTEGER, 
            zxAnAclExAction               INTEGER,     
            zxAnAclExTos                Integer32,
            zxAnAclExDscp               Integer32,
            zxAnAclTtl                  Integer32,
            zxAnAclExRowStatus          RowStatus
            }

    zxAnAclExIndex  OBJECT-TYPE
        SYNTAX      INTEGER(100..199)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The ACL main index of this table"
        ::= { zxAnAclExEntry 1 }    

    zxAnAclExRuleId  OBJECT-TYPE
        SYNTAX      INTEGER(1..127)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The ACL sub index of this table"
        ::= { zxAnAclExEntry 2 }    
        
    zxAnAclExTos  OBJECT-TYPE
        SYNTAX   Integer32
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            ""
        DEFVAL{255}    
        ::= { zxAnAclExEntry 3 }  
          
    zxAnAclExDscp  OBJECT-TYPE
        SYNTAX   Integer32
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            ""
        DEFVAL{255}    
        ::= { zxAnAclExEntry 4 } 
        
    zxAnAclExAction  OBJECT-TYPE
        SYNTAX   INTEGER
        {
                permit(1),
                deny(2)
            }
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            ""
        DEFVAL{permit}    
        ::= { zxAnAclExEntry 5 }       
        
    zxAnAclTtl  OBJECT-TYPE
        SYNTAX   Integer32
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "valid 0-255"
        DEFVAL{65535}    
        ::= { zxAnAclExEntry 6 }                  
      
    zxAnAclExRowStatus      OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus of this entry."
        ::= { zxAnAclExEntry 50 }            
            



--------------------------------------------------------------------------------
-- 3.Acl Qos Table
--------------------------------------------------------------------------------

    zxAnAclQosTrafficTable  OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnAclQosTrafficEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Acl Table"
        ::= { zxAnAclObjects 4 }

    zxAnAclQosTrafficEntry  OBJECT-TYPE
        SYNTAX      ZxAnAclQosTrafficEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Acl Table"
        INDEX  { zxAnAclExIndex,  zxAnAclExRuleId }
        ::= { zxAnAclQosTrafficTable 1 }
        
    ZxAnAclQosTrafficEntry ::=
        SEQUENCE {
            zxAnAclQosTrafficLimitCir    INTEGER,
            zxAnAclQosTrafficLimitCbs    INTEGER,
            zxAnAclQosTrafficLimitEbs    INTEGER,
            zxAnAclQosTrafficLimitPir    INTEGER,
            zxAnAclQosTrafficLimitPbs    INTEGER,
            zxAnAclQosTrafficLimitMode   INTEGER,
            zxAnAclQosTrafficRowStatus   RowStatus
            }

    zxAnAclQosTrafficLimitCir OBJECT-TYPE
        SYNTAX  INTEGER(64..32000000)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Committed Information Rate(CIR) in kbps."  
        ::= { zxAnAclQosTrafficEntry 1 }


    zxAnAclQosTrafficLimitPir OBJECT-TYPE
        SYNTAX  INTEGER(64..32000000)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Peak Information Rate(PIR) in kbps."   
        ::= { zxAnAclQosTrafficEntry 2 }
            
    zxAnAclQosTrafficLimitCbs OBJECT-TYPE
        SYNTAX  INTEGER(4..16000)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Committed Burst Rate(CBS) in kbyte."    
        ::= { zxAnAclQosTrafficEntry 3 }

    zxAnAclQosTrafficLimitEbs OBJECT-TYPE
        SYNTAX  INTEGER(64..32000000)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "ebs in kbps."  
        ::= { zxAnAclQosTrafficEntry 4 }

    zxAnAclQosTrafficLimitPbs OBJECT-TYPE
        SYNTAX  INTEGER(64..32000000)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "ebs in kbps."  
        ::= { zxAnAclQosTrafficEntry 5 }
        
    zxAnAclQosTrafficLimitMode OBJECT-TYPE
        SYNTAX  INTEGER
               {
                blind(1),
                aware(2)
               }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "ebs in kbps."  
        ::= { zxAnAclQosTrafficEntry 6 }        
        
    zxAnAclQosTrafficRowStatus      OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "RowStatus of this entry."
        ::= { zxAnAclQosTrafficEntry 30 }       


------------------------------------

    zxAnAclQosPriorityMarkTable  OBJECT-TYPE
              SYNTAX  SEQUENCE OF ZxAnAclQosPriorityMarkEntry
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      ""
               ::= { zxAnAclObjects 5 }

    zxAnAclQosPriorityMarkEntry  OBJECT-TYPE
              SYNTAX  ZxAnAclQosPriorityMarkEntry
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      ""
        INDEX  { zxAnAclExIndex,  zxAnAclExRuleId }
              ::= { zxAnAclQosPriorityMarkTable 1 }

    ZxAnAclQosPriorityMarkEntry ::=
              SEQUENCE {
                zxAnAclQosPriMarkDscp             Integer32,       
                zxAnAclQosPriMarkUserPriority     Integer32,       
                zxAnAclQosPriMarkRowStatus        RowStatus    
              }


   zxAnAclQosPriMarkDscp OBJECT-TYPE
              SYNTAX  Integer32
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                  ""
              DEFVAL{255}    
             ::= { zxAnAclQosPriorityMarkEntry 1 }

   zxAnAclQosPriMarkUserPriority OBJECT-TYPE
              SYNTAX  Integer32
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                  ""
              DEFVAL{255}    
             ::= { zxAnAclQosPriorityMarkEntry 2 }


   zxAnAclQosPriMarkRowStatus OBJECT-TYPE
              SYNTAX  RowStatus
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                  ""
             ::= { zxAnAclQosPriorityMarkEntry 30 }

--------------------------------------------------------------------------------
-- 4.Acl Qos Statist Table
--------------------------------------------------------------------------------
             
    zxAnAclQosStatisticTable OBJECT-TYPE
              SYNTAX      SEQUENCE OF ZxAnAclQosStatisticEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
                  "A list of AclQos statistic data entries."
             ::= { zxAnAclObjects 6 }

    zxAnAclQosStatisticEntry OBJECT-TYPE
              SYNTAX      ZxAnAclQosStatisticEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
                   "An entry containing AclQos statistic data."
              INDEX   { zxAnAclIndex, zxAnAclRuleId }
             ::= { zxAnAclQosStatisticTable 1 }

    ZxAnAclQosStatisticEntry ::=
              SEQUENCE {
                  zxAnAclQosStatistInPkg       Counter32,
                  zxAnAclQosStatistRowStatus   RowStatus
              }

    zxAnAclQosStatistInPkg OBJECT-TYPE
              SYNTAX      Counter32
              MAX-ACCESS  read-only
              STATUS      current
              DESCRIPTION
                   "The number of packets, delivered by this VclQos rule to a
                   higher (sub-)layer.Discontinuities in the value of this 
                   counter can occur at re-initialization of the management 
                   system."
             ::= { zxAnAclQosStatisticEntry 1 }
             
    zxAnAclQosStatistRowStatus OBJECT-TYPE
              SYNTAX  RowStatus
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                  "RowStatus of this entry."
             ::= { zxAnAclQosStatisticEntry 50 }
             
--------------------------------------------------------------------------------
-- 5.Acl Qos Qinq Table
--------------------------------------------------------------------------------
             
    zxAnAclQosQinqTable OBJECT-TYPE
              SYNTAX      SEQUENCE OF ZxAnAclQosQinqEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
                  "A list of AclQos Qinq data entries."
             ::= { zxAnAclObjects 7 }

    zxAnAclQosQinqEntry OBJECT-TYPE
              SYNTAX      ZxAnAclQosQinqEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
                   "An entry containing AclQos Qinq data."
              INDEX   { zxAnAclIndex, zxAnAclRuleId }
             ::= { zxAnAclQosQinqTable 1 }

    ZxAnAclQosQinqEntry ::=
              SEQUENCE {
                  zxAnAclQosQinqSvlan               Integer32, 
                  zxAnAclQosQinqCvlan               Integer32, 
                  zxAnAclQosQinqRowStatus   RowStatus
              }

              
    zxAnAclQosQinqSvlan  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "VLAN ID,vlaid range 1-4095"
--        DEFVAL{65535}    
        ::= { zxAnAclQosQinqEntry 1 }    

    zxAnAclQosQinqCvlan  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "VLAN ID,vlaid range 1-4095"
--        DEFVAL{65535}    
        ::= { zxAnAclQosQinqEntry 2 }            
            
    zxAnAclQosQinqRowStatus OBJECT-TYPE
              SYNTAX  RowStatus
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                  "RowStatus of this entry."
             ::= { zxAnAclQosQinqEntry 30 }             
   

--------------------------------------------------------------------------------
-- 6.Acl Qos Redirect Table
--------------------------------------------------------------------------------
             
    zxAnAclQosRedirectTable OBJECT-TYPE
              SYNTAX      SEQUENCE OF ZxAnAclQosRedirectEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
                  "A list of AclQos Redirect data entries."
             ::= { zxAnAclObjects 8 }

    zxAnAclQosRedirectEntry OBJECT-TYPE
              SYNTAX      ZxAnAclQosRedirectEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
                   "An entry containing AclQos Redirect data."
              INDEX   { zxAnAclIndex, zxAnAclRuleId }
             ::= { zxAnAclQosRedirectTable 1 }

    ZxAnAclQosRedirectEntry ::=
              SEQUENCE {
                  zxAnAclQosRedirectMode            INTEGER, 
                  zxAnAclQosRedirectPktLimit        INTEGER, 
                  zxAnAclQosRedirectInterface       ZxAnIfindex, 
                  zxAnAclQosRedirectIpAddress       IpAddress, 
                  zxAnAclQosRedirectRowStatus       RowStatus
              }

              
    zxAnAclQosRedirectMode  OBJECT-TYPE
        SYNTAX      INTEGER
              {
               cpu(1),
               interface(2),
               nextHop(3)
              }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "The redirect mode for this entry."
        DEFVAL{cpu}    
        ::= { zxAnAclQosRedirectEntry 1 }    

    zxAnAclQosRedirectPktLimit  OBJECT-TYPE
        SYNTAX      INTEGER (1..500)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "For redirect to cpu. The specified packet limit size, redirect takes effect before this size reached."
        DEFVAL{1}
        ::= { zxAnAclQosRedirectEntry 2 }            

    zxAnAclQosRedirectInterface  OBJECT-TYPE
        SYNTAX         ZxAnIfindex
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION
            "For redirect to interface. Uplink port ifId."
        ::= { zxAnAclQosRedirectEntry 3}

    zxAnAclQosRedirectIpAddress  OBJECT-TYPE
        SYNTAX         IpAddress
        MAX-ACCESS     read-create
        STATUS         current
        DESCRIPTION
            "For redirect to next hop. The next hop ipaddress."
        ::= { zxAnAclQosRedirectEntry 4}

    zxAnAclQosRedirectRowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "RowStatus of this entry."
        ::= { zxAnAclQosRedirectEntry 30 }             
   
--------------------------------------------------------------------------------
-- FOR UNI QOS 
-- 1.Acl Class Configuration Table
--------------------------------------------------------------------------------
    zxAnUniAclClassTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnUniAclClassEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "The (conceptual) table listing all Acl class."
        ::= { zxAnAclObjects 11 }

    zxAnUniAclClassEntry OBJECT-TYPE
        SYNTAX      ZxAnUniAclClassEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "An entry (conceptual row) representing a Acl class."
        INDEX       { zxAnUniAclClassName }
        ::= { zxAnUniAclClassTable 1 }

    ZxAnUniAclClassEntry ::= SEQUENCE {
        zxAnUniAclClassName       DisplayString,
        zxAnUniAclClassMatch      DisplayString,
        zxAnUniAclClassRowStatus  RowStatus
    }

    zxAnUniAclClassName OBJECT-TYPE 
        SYNTAX      DisplayString ( SIZE ( 1 .. 32 )) 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION   
            "The name of this Acl class referred to in this table entry."
        ::= { zxAnUniAclClassEntry 1 }

    zxAnUniAclClassMatch OBJECT-TYPE 
        SYNTAX      DisplayString (SIZE ( 1 .. 255  )) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "The string contains one class's qualification and its meansing is defined before."
        ::= { zxAnUniAclClassEntry 2 }

    zxAnUniAclClassRowStatus OBJECT-TYPE 
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "RowStatus"
        ::= { zxAnUniAclClassEntry 50 }
    
--------------------------------------------------------------------------------
-- 2.Acl Policy Configuration Table
--------------------------------------------------------------------------------
    zxAnUniAclPolicyTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnUniAclPolicyEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "The (conceptual) table listing all Acl policy."
        ::= { zxAnAclObjects 12 }

    zxAnUniAclPolicyEntry OBJECT-TYPE
        SYNTAX      ZxAnUniAclPolicyEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "An entry (conceptual row) representing a Acl Policy."
        INDEX       { zxAnUniAclPolicyName }
        ::= { zxAnUniAclPolicyTable 1 }

    ZxAnUniAclPolicyEntry ::= SEQUENCE {
        zxAnUniAclPolicyName       DisplayString,
        zxAnUniAclPolicyRowStatus  RowStatus
    }

    zxAnUniAclPolicyName  OBJECT-TYPE 
        SYNTAX      DisplayString ( SIZE ( 1 .. 32  ) ) 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION   
            "The name of this Acl policy referred to in this table entry."
        ::= { zxAnUniAclPolicyEntry 1 }

    zxAnUniAclPolicyRowStatus OBJECT-TYPE 
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "RowStatus."
        ::= { zxAnUniAclPolicyEntry 50 }    
    
    zxAnUniAclPolicyConfigTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnUniAclPolicyConfigEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "The policy configuration table listing all Acl policy."
        ::= { zxAnAclObjects 13 }

    zxAnUniAclPolicyConfigEntry OBJECT-TYPE
        SYNTAX      ZxAnUniAclPolicyConfigEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "An entry (conceptual row) representing a Acl policy."
        INDEX       { zxAnUniAclPolicyName, zxAnUniAclClassName  }
        ::= { zxAnUniAclPolicyConfigTable 1 }

    ZxAnUniAclPolicyConfigEntry ::= SEQUENCE {
        zxAnUniAclPolicyAction                INTEGER,
        zxAnUniAclPolicyCir                   Integer32,
        zxAnUniAclPolicyCbs                   Integer32,
        zxAnUniAclPolicyExceedAction          INTEGER,
        zxAnUniAclPolicyExceedActValue        Integer32,
        zxAnUniAclPolicyActionSCos            Integer32,
        zxAnUniAclPolicyActionDSCP            Integer32,
        zxAnUniAclPolicyActionVLAN            Integer32,
        zxAnUniAclPolicyActionRedirectedTo    Integer32,
        zxAnUniAclPolicyActionMirroredTo      Integer32,
        zxAnUniAclPolicyActionISStatistics    INTEGER,
        zxAnUniAclPolicyActionCCos            Integer32,        
        
        zxAnUniAclPolicyPir                   Integer32, 
        zxAnUniAclPolicyPbs                   Integer32,
        zxAnUniAclPolicyTrtcmExceedAction     INTEGER, 
        zxAnUniAclPolicyTrtcmRemarkRedDscp    Integer32,
        zxAnUniAclPolicyTrtcmRemarkYellowDscp Integer32,
        zxAnUniAclPolicyTrtcmRemarkGreenDscp  Integer32,
        zxAnUniAclPolicyTrtcmRemarkRedCos     Integer32,
        zxAnUniAclPolicyTrtcmRemarkYellowCos  Integer32,
        zxAnUniAclPolicyTrtcmRemarkGreenCos   Integer32,                   
        zxAnUniAclPolicyStatus                RowStatus
    }

    zxAnUniAclPolicyAction  OBJECT-TYPE 
        SYNTAX      INTEGER 
        { 
            permit ( 1 ) , 
            deny ( 2 ) 
        } 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If it is enabled, the flow will be denied"
        DEFVAL { permit } 
        ::= { zxAnUniAclPolicyConfigEntry 1 }

    zxAnUniAclPolicyCir OBJECT-TYPE 
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "Committed Information Rate:the config Committed rate in kbps."
        ::= { zxAnUniAclPolicyConfigEntry 2 }

    zxAnUniAclPolicyCbs OBJECT-TYPE 
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "Committed Burst Size:the Committed burst size of the corresponding 
            token barrel of the class in byte."
        ::= { zxAnUniAclPolicyConfigEntry 3 }

    zxAnUniAclPolicyExceedAction OBJECT-TYPE 
        SYNTAX      INTEGER 
        { 
            drop(1), 
            setDSCP(2), 
            setCos(3)
        } 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "The mib means the acion would be taken if the flow of the class exceeds 
            the config rate. And if the acion is 1(drop),it means the flow will be droped at all.
            However the following mib zxAnUniAclPolicyExceedActValue has no meaning .
            And if the action is 2(SetDSCP),it means the flow will be changed the DSCP value and 
            the wanted DSCP value is stored in mib zxAnUniAclPolicyExceedActValue."
        DEFVAL      { drop }       
        ::= { zxAnUniAclPolicyConfigEntry 4 }

    zxAnUniAclPolicyExceedActValue OBJECT-TYPE 
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "if the zxAnUniAclPolicyExceedAction mib = 2(SetDSCP) ,the mib's meaning is the value wanted."
        ::= { zxAnUniAclPolicyConfigEntry 5 }

    zxAnUniAclPolicyActionSCos OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 7) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the flow is classified, the action can be changed the COS value in the flow by SVID."
        ::= { zxAnUniAclPolicyConfigEntry 6 }

    zxAnUniAclPolicyActionDSCP OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 63 ) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the flow is classified, the action can be changed the DSCP value in the flow ."
        ::=  {  zxAnUniAclPolicyConfigEntry  7  }

    zxAnUniAclPolicyActionVLAN OBJECT-TYPE 
        SYNTAX      Integer32 ( 0 .. 4095 ) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the flow is classified, the action can be changed the Vlan ID value in the flow ."
        ::= { zxAnUniAclPolicyConfigEntry 8 }

    zxAnUniAclPolicyActionRedirectedTo OBJECT-TYPE 
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the flow is classified, the action can be changed the Port value in the flow ."
        ::= { zxAnUniAclPolicyConfigEntry 9 }

    zxAnUniAclPolicyActionMirroredTo OBJECT-TYPE 
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the flow is classified, the action can be mirrored."
        ::= { zxAnUniAclPolicyConfigEntry 10 }

    zxAnUniAclPolicyActionISStatistics OBJECT-TYPE 
        SYNTAX      INTEGER 
        { 
            enable(1), 
            disable(2) 
        } 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If it is enabled, the flow's statistics will be started"
        DEFVAL     { disable }   
        ::= { zxAnUniAclPolicyConfigEntry 11 }

    zxAnUniAclPolicyActionCCos OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 7) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the flow is classified, the action can be changed the COS value in the flow by CVID."
        ::= { zxAnUniAclPolicyConfigEntry 12 }

    zxAnUniAclPolicyPir OBJECT-TYPE 
        SYNTAX      Integer32(512 .. 128000)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "Peak Information Rate:the config peak rate in kbps."
        ::= { zxAnUniAclPolicyConfigEntry 13 }

    zxAnUniAclPolicyPbs OBJECT-TYPE 
        SYNTAX      Integer32(2000 .. 2047)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "Peak Burst Size:the peak burst size of the corresponding 
             token barrel of the class in byte."
        ::= { zxAnUniAclPolicyConfigEntry 14 }
        
    zxAnUniAclPolicyTrtcmExceedAction OBJECT-TYPE 
        SYNTAX      INTEGER 
        { 
            dropYellow(1), 
            forwardRed(2),
            notSet(-286331154)
        } 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "trTCM means Two Rate Three Color Marker. The mib means the action 
             would be taken if the flow of the class exceeds the traffic limit. "
        DEFVAL      { dropYellow }       
        ::= { zxAnUniAclPolicyConfigEntry 15 }
                
    zxAnUniAclPolicyTrtcmRemarkRedDscp OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 63 ) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the packet is marked red, the action can be changed the DSCP value."
        ::=  {  zxAnUniAclPolicyConfigEntry  16  }
        
    zxAnUniAclPolicyTrtcmRemarkYellowDscp OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 63 ) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the packet is marked yellow, the action can be changed the DSCP value ."
        ::=  {  zxAnUniAclPolicyConfigEntry  17  }
        
    zxAnUniAclPolicyTrtcmRemarkGreenDscp OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 63 ) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the packet is marked green, the action can be changed the DSCP value ."
        ::=  {  zxAnUniAclPolicyConfigEntry  18  }
                                        
    zxAnUniAclPolicyTrtcmRemarkRedCos OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 7) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the packet is marked red, the action can be changed the COS value."
        ::= { zxAnUniAclPolicyConfigEntry 19 }

    zxAnUniAclPolicyTrtcmRemarkYellowCos OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 7) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the packet is marked yellow, the action can be changed the COS value."
        ::= { zxAnUniAclPolicyConfigEntry 20 }
        
    zxAnUniAclPolicyTrtcmRemarkGreenCos OBJECT-TYPE 
        SYNTAX      Integer32 (0 .. 7) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "If the packet is marked green, the action can be changed the COS value."
        ::= { zxAnUniAclPolicyConfigEntry 21 }                                       

    zxAnUniAclPolicyStatus OBJECT-TYPE 
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "RowStatus"
        ::= { zxAnUniAclPolicyConfigEntry 50 }

--------------------------------------------------------------------------------
-- 3.Acl Port Policy table
--------------------------------------------------------------------------------
    zxAnUniAclBindTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnUniAclBindEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION    
            "The Acl policy table being applied on one physical port.This table 
            includes Acl bind.It is used for a user-side port(interface)"
        ::= { zxAnAclObjects 14 }
          
    zxAnUniAclBindEntry OBJECT-TYPE
        SYNTAX      ZxAnUniAclBindEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION    
            "An entry of zxAnUniAclBindTable."
        INDEX      { ifIndex }
        ::= { zxAnUniAclBindTable 1 }
  
    ZxAnUniAclBindEntry ::= SEQUENCE
    {
        zxAnUniIfAclPolicyName         DisplayString,
        zxAnUniAclBindDir            INTEGER,
        zxAnUniAclBindRowStatus      RowStatus     
    }
  
    zxAnUniIfAclPolicyName OBJECT-TYPE    
        SYNTAX      DisplayString ( SIZE (1 .. 32) ) 
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION   
            "The applied policy index of a user-side port(interface)"
        ::= { zxAnUniAclBindEntry 1 }            

    zxAnUniAclBindDir    OBJECT-TYPE    
        SYNTAX      INTEGER
        {
            ingress(1),
            egress(2),
            both(3)
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION 
            "Bind diraction,Ingress or Egress"
        ::= { zxAnUniAclBindEntry 2 }  
            
    zxAnUniAclBindRowStatus    OBJECT-TYPE    
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION    
            "The Row status of this table."
        ::= { zxAnUniAclBindEntry 50 }    
END
    