
--------------------------------------------------------------------------------
-- 
-- File Name : ZTE-AN-SERVICEPORT-MIB.mib
-- Date      : 2009-01-04
-- Author    : ZTE Nms dept.
--
-- 
-- 
--------------------------------------------------------------------------------


ZTE-AN-SERVICEPORT DEFINITIONS ::= BEGIN
 
IMPORTS

         MODULE-IDENTITY    FROM SNMPv2-SMI
         OBJECT-TYPE        FROM SNMPv2-SMI
         IpAddress          FROM SNMPv2-SMI
         Integer32          FROM SNMPv2-SMI
         Unsigned32         FROM SNMPv2-SMI  
         RowStatus          FROM SNMPv2-TC            
         DisplayString      FROM SNMPv2-TC 
         ZxAnIfindex        FROM ZTE-AN-TC-MIB
         zxAn               FROM ZTE-AN-TC-MIB;
 
    zxAnServicePort MODULE-IDENTITY   
        LAST-UPDATED    "200901041500Z"
        ORGANIZATION    "ZTE Corporation"
        CONTACT-INFO    "zhangzhikun
                        Mail: zhang.zhikun@zte.com.cn
                        Tel : 021-68897124"
        DESCRIPTION  "This MIB defines managed objects of zte service port."        
         ::= {zxAn 8}
         

    zxAnServicePortObjects           OBJECT IDENTIFIER ::= { zxAnServicePort 1 }
    
  
--------------------------------------------------------------------------------
-- Following objects are defined.
-- 1.Service Port Table
-- 2.User Scene Table
-- 3.ServicePort Global
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-- 1.Service Port Table
--------------------------------------------------------------------------------
    zxAnServicePortConfTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnServicePortConfEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "This table includes interface service port configuration.it uses in
             user's traffic scene, a service port indicates an user's sercice,
             for example VOIP/CATV/POTS/DATA service.
             We can create a service port as the same time finished some 
             functions which are qinQ and translate etc."
        ::= { zxAnServicePortObjects 1 }

    zxAnServicePortConfEntry OBJECT-TYPE
        SYNTAX      ZxAnServicePortConfEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "An entry in zxAnServicePortConfTable."
        INDEX       {  zxAnBridgePortIndex,zxAnServicePortID }
        ::= { zxAnServicePortConfTable 1 }
    
    ZxAnServicePortConfEntry ::= SEQUENCE {
        zxAnBridgePortIndex               ZxAnIfindex,
        zxAnServicePortID                 Integer32,
        zxAnServicePortDesc               DisplayString,
        zxAnServicePortServiceMode        INTEGER,
        zxAnUserInVid                     INTEGER,
        zxAnUserInPriority                INTEGER,
        zxAnUserEthType                   Integer32,
        zxAnUserEthFilter                 INTEGER,
        zxAnUserOutCVid                   INTEGER,
        zxAnUserOutSVid                   INTEGER, 
        zxAnUserTlsVlan                   INTEGER,
        zxAnUserSVidCos                   INTEGER,           
        zxAnVlanTransMode                 INTEGER,   
        zxAnUserInStartVid                INTEGER,  
        zxAnUserInEndVid                  INTEGER,
        zxAnUserCVidCos                   INTEGER,  
        zxAnUserInSVid                    INTEGER,
        zxAnSrvPortVlanXconnectEnable     INTEGER,
        zxAnServicePortUserDscp           INTEGER,
        zxAnServicePortIngressTrafficPrf  DisplayString,
        zxAnServicePortEgressTrafficPrf   DisplayString,
        zxAnServicePortAdminStatus        INTEGER,
        zxAnServicePortQueueId            INTEGER,
        zxAnServicePortRowStatus          RowStatus
    }


    zxAnBridgePortIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for a bridge port."
        ::= { zxAnServicePortConfEntry 1 }    
        
    zxAnServicePortID OBJECT-TYPE
        SYNTAX      Integer32 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for a service port under a bridge port,index value from 1
             to 8"
        ::= { zxAnServicePortConfEntry 2 }        
        
    zxAnServicePortDesc OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..32))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "A service port describe string."           
        ::= {  zxAnServicePortConfEntry 3 }   
        
    zxAnServicePortServiceMode  OBJECT-TYPE
        SYNTAX      INTEGER
        {
            untag(1),    
            untagAndEncap(2),
            priority(3), 
            tag(4),   
            tls(5),
            tagAndEncap(6),
            tagAndEtype(7),
            tagAndCos(8),
            vlanRangeTag(9),
            vlanRangeTagAndEncap(10),
            vlanRangeTagAndEtype(11),
            vlanRangeTagAndCos(12),
            batchBindingTag(13),
            doubleVlanTag(14),
            tagAndDscp(15)
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION 
           "A traffic type for a service port." 
        DEFVAL      { untag }  
        ::={zxAnServicePortConfEntry 4}   
        
    zxAnUserInVid  OBJECT-TYPE
        SYNTAX      INTEGER(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User inner vlan,'0' indicates untag."
        DEFVAL      { 0 }      
        ::={zxAnServicePortConfEntry 5}
                                              
    zxAnUserInPriority  OBJECT-TYPE
        SYNTAX      INTEGER(0..7)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User priority,from 0 to 7."
        DEFVAL      { 0 }          
        ::={zxAnServicePortConfEntry 6}   
        
    zxAnUserEthType  OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User Ether type, '1' indicates no config, '2' indicates pppoe, '3' 
            indicates ipoe,user define uses hex."
        DEFVAL      { 1 }          
        ::={zxAnServicePortConfEntry 7}   
        
    zxAnUserEthFilter  OBJECT-TYPE
        SYNTAX      INTEGER
        {
            enable(1),    
            disable(2)                                      
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "this object indicates if filtered by ether protocol."
        DEFVAL      { 1 }          
        ::={zxAnServicePortConfEntry 8}      
        
    zxAnUserOutCVid  OBJECT-TYPE
        SYNTAX      INTEGER(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User outer cvlan,'0' indicates no config."    
        DEFVAL      { 0 }         
        ::={zxAnServicePortConfEntry 9}        

    zxAnUserOutSVid  OBJECT-TYPE
        SYNTAX      INTEGER(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User outer svlan,'0' indicates no config."
        DEFVAL      { 0 }         
        ::={zxAnServicePortConfEntry 10}  
     
    zxAnUserTlsVlan  OBJECT-TYPE
        SYNTAX      INTEGER(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "TLS VLAN,when zxAnServicePortServiceMode equal 'tls' then '0' 
            indicates untag, when zxAnServicePortServiceMode unequal to 'tls' 
            then '0' indicates no config"
        DEFVAL      { 0 }             
        ::={zxAnServicePortConfEntry 11}     
        
    zxAnUserSVidCos  OBJECT-TYPE
        SYNTAX      INTEGER(0..7)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           ""
        DEFVAL      { 0 }             
        ::={zxAnServicePortConfEntry 12}        
        
    zxAnVlanTransMode  OBJECT-TYPE
        SYNTAX      INTEGER
        {
            vlan1v1(1),    
            vlanNv1(2)                                      
        }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           ""
        DEFVAL      { 1 }             
        ::={zxAnServicePortConfEntry 13}   
        
    zxAnUserInStartVid  OBJECT-TYPE
        SYNTAX      INTEGER(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User inner start vlan,'0' indicates untag."
        DEFVAL      { 0 }      
        ::={zxAnServicePortConfEntry 14}
        
    zxAnUserInEndVid  OBJECT-TYPE
        SYNTAX      INTEGER(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User inner end vlan,'0' indicates untag."
        DEFVAL      { 0 }      
        ::={zxAnServicePortConfEntry 15}
        
    zxAnUserCVidCos  OBJECT-TYPE
        SYNTAX      INTEGER(0..7)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "This object indicates user egress CVLAN CoS.'0xFF' indicates no 
            config."
        DEFVAL      { 0 }             
        ::={zxAnServicePortConfEntry 16}
        
    zxAnUserInSVid  OBJECT-TYPE
        SYNTAX      INTEGER(0..4094)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
           "User inner svlan,'0' indicates no config."
        DEFVAL      { 0 }         
        ::={zxAnServicePortConfEntry 17}
        
    zxAnSrvPortVlanXconnectEnable  OBJECT-TYPE
        SYNTAX      INTEGER
            {
                enable(1),
                disable(2)
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Enabling service port VLAN Xconnect means that zxAnUserOutSVid will
             be forwarded without learning MAC address and configuring VLAN 
             Xconnect."
        DEFVAL      { disable }
        ::={zxAnServicePortConfEntry 18}
        
    zxAnServicePortUserDscp  OBJECT-TYPE
        SYNTAX      INTEGER(0..63)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "User-side DSCP.
             When zxAnServicePortServiceMode is tagAndDscp(15), 
             map zxAnServicePortUserDscp to zxAnUserSVidCos,
             translate zxAnUserInVid to zxAnUserOutCVid and zxAnUserOutSVid 
             for upstream traffic and  
             translate to zxAnUserInVid with zxAnUserOutSVid, 
             zxAnUserOutCVid and zxAnServicePortUserDscp of downstream 
             traffic."
        DEFVAL      { 0 }
        ::={zxAnServicePortConfEntry 19}
    
    zxAnServicePortIngressTrafficPrf OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..32))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Ingress traffic profile.
             The zero length means not-configured."           
        ::= {  zxAnServicePortConfEntry 20 }   
        
    zxAnServicePortEgressTrafficPrf OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..32))
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Egress traffic profile.
             The zero length means not-configured."           
        ::= {  zxAnServicePortConfEntry 21 }
        
    zxAnServicePortAdminStatus OBJECT-TYPE
        SYNTAX      INTEGER
            {
                enable(1),
                disable(2)
            }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Administrative status of service port."           
        ::= {  zxAnServicePortConfEntry 22 }
    
    zxAnServicePortQueueId  OBJECT-TYPE
        SYNTAX      INTEGER(0..7)
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION  
            "Service port queue ID.
             Value 0xFF means not config."
        DEFVAL      { 0 }             
        ::={  zxAnServicePortConfEntry 23 }
        
    zxAnServicePortRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { zxAnServicePortConfEntry 100 }        
        
--------------------------------------------------------------------------------
-- 2.User Scene Table
--------------------------------------------------------------------------------
    zxAnUserSceneTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF ZxAnUserSceneEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "This table indicates user traffic scene,includes  multi-user-access
             scene and aggregation scene."
        ::= { zxAnServicePortObjects 2 }

    zxAnUserSceneEntry OBJECT-TYPE
        SYNTAX      ZxAnUserSceneEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION 
            "An entry in zxAnUserSceneTable."
        INDEX       {  zxAnCpeIndex }
        ::= { zxAnUserSceneTable 1 }
    
    ZxAnUserSceneEntry ::= SEQUENCE {
        zxAnCpeIndex                      ZxAnIfindex,
        zxAnSceneMode                     INTEGER        
    }


    zxAnCpeIndex OBJECT-TYPE
        SYNTAX      ZxAnIfindex 
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "An index for a CPE,for example EPON/GPON ONU."
        ::= { zxAnUserSceneEntry 1 }    
                    
    zxAnSceneMode  OBJECT-TYPE
        SYNTAX      INTEGER
        {
            noconfig(1),    
            multiuseraccess(2),
            aggregation(3)            
        }
        MAX-ACCESS  read-only
        STATUS    current
        DESCRIPTION 
           "A traffic secen mode." 
        DEFVAL      { 1 }  
        ::={zxAnUserSceneEntry 2}   

--------------------------------------------------------------------------------       
-- 3.ServicePort Global
--------------------------------------------------------------------------------

    zxAnServicePortGlobalObjects
        OBJECT IDENTIFIER ::= { zxAnServicePortObjects 50 }
    
    zxAnServicePortCompatible  OBJECT-TYPE 
      SYNTAX      BITS 
          {
              vlanXconnectEnable(0),
              userDscp(1),
              trafficProfile(2),
              adminStatus(3),
              queueId(4),
              egressCvlanCos(5)
          }
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION   
          "The service port compatibility.
           The bit value 1 means the function represented by this bit is 
           supported by this equipment.           
           vlanXconnectEnable(0): value 1 means supporting VLAN Xconnect enable 
                                  for service port.
           userDscp(1): value 1 means supporting user DSCP configuration
                                  for service port.           
           trafficProfile(2): value 1 means supporting traffic profile 
                                  configuration for service port.
           adminStatus(3): value 1 means supporting administrative status for 
                           service port.
           queueId(4): value 1 means supporting queue ID for service port.
           egressCvlanCos(5): value 1 means supporting egress CVLAN CoS for 
                              service port.
                           
           NOTE: No recommended to display it in NMS." 
      ::=  {  zxAnServicePortGlobalObjects  1  }

END