-- =========================================================================
-- Copyright (c) 2004-2018 Hangzhou H3C Tech. Co., Ltd.  All rights reserved.
--
-- Description: This MIB file is used for management of h3c Class Based
--             QoS information.
-- Reference:
-- Version: V2.2
-- History:
-- V1.0 created by tangshun.
-- V1.1 2006/01/17 modified by wangjinwang
--   add enum value 22 and 23 in MatchRuleType
--   add comment for h3cCBQoSMatchRuleIntValue1
-- V1.2 2006/02/24 modified by changhuifeng
--   Add an enumeration Bittorrent(24) to object h3cCBQoSMatchRuleType.
--   Add h3cCBQoSMirrorCfgInfoTable for flow mirror.
--   Add h3cCBQoSRedirectIpv6Interface1 and h3cCBQoSRedirectIpv6Interface2
--   object for h3cCBQoSRedirectCfgInfoTable.
--   Modify the value range of h3cCBQoSRemarkValue from "1~4094" to "1~4095"
--   in h3cIfQoSPQClassRuleTable.
-- V1.3 2006/03/29 modified by xialei
--   Modify the MAX-ACCESS clause of h3cCBQoSQueueDropType.
--   Modify the description for object h3cCBQoSQueueCbs.
--   Modify the enumeration name of object h3cCBQoSRedirectType.
-- V1.4 2007/10/15 modified by wangjinwang
--   Add h3cCBQoSGlobalApplyTable to global policy apply.
--   Add h3cCBQoSPolicyClassMode and h3cCBQoSPolicyClassCfgOrder to
--   h3cCBQoSPolicyClassCfgInfoTable.
--   Add h3cCBQoSNestCfgInfoTable to traffic behavior.
--   Add enumeration matchRuleServiceDot1p
--   to object h3cCBQoSMatchRuleType.
--   Add enumeration typeTopMostVlanID to object h3cCBQoSRemarkType.
-- V1.5 2007/12/12 modified by Xu Hang/ChenWei
--   Delete the default value of h3cCBQoSGlobalApplyDirection
--   in h3cCBQoSGlobalApplyTable
--   Add h3cCBQoSApplyPolicyIndexObjects to h3cCBQoSApplyPolicyStaticsObjects
--   Add h3cCBQoSStaticsObjects to h3cCBQoSApplyPolicyStaticsObjects
--   Modify the MAX-ACCESS clause of h3cCBQoSQueueDropType.
--   Modify the MAX-ACCESS clause of h3cCBQoSIfApplyPolicyIfIndex,
--   h3cCBQoSIfApplyPolicyDirection, h3cCBQoSVlanApplyPolicyVlanid
--   and h3cCBQoSVlanApplyPolicyDirection.
--   Add h3cCBQoSApplyingStatusObjects to h3cCBQoSObjects.
--   Add h3cCBQoSApplyingStatus to h3cCBQoSApplyPolicyObjects.
--   Add h3cCBQoSNotifications to h3cCBQoSObjects.
--   Add h3cCBQoSNotificationsPrefix to h3cCBQoSNotifications.
--   Add h3cCBQoSIfPolicyChanged and h3cCBQoSVlanPolicyChanged
--   to h3cCBQoSNotificationsPrefix.
--   Add remark-local-pre-pass and remark-drop-pre-pass to CarAction.
--   Delete the default value of h3cCBQoSVlanApplyPolicyDirection and
--   h3cCBQoSGlobalApplyDirection.
-- V1.6 2008/05/28 modified by ChenWei
--   Add h3cCBQoSNestPolicyCfgInfoTable to h3cCBQoSBehaviorObjects.
--   Add h3cCBQoSNestPolicyApplyObjectTable to h3cCBQoSApplyPolicyIndexObjects.
-- V1.7 2011/01/25 modified by XuGuoFang/zhaixiaoxiang
--   Modify the range of h3cCBQoSQueueBandwidthValue.
--   Modify the range of h3cCBQoSQueueCbs.
--   Modify the description of h3cCBQoSQueueCbsRatio.
--   Modify the description of h3cCBQoSBehaviorIndexNext.
-- V1.8 2012/07/02 modified by XuJunjie/XunZhi
--   Modify MatchRuleType add matchRuleMplsLabel to matchRuleForwardingLayer.
--   Modify the description for h3cCBQoSClassifierIndexNext.
--   Modify the description for h3cCBQosClassifierMatchRuleNextIndex.
--   Modify the description for h3cCBQoSMatchRuleStringValue.
--   Modify the description for h3cCBQoSMatchRuleIntValue1.
--   Modify the description for h3cCBQoSMatchRuleIntValue2.
--   Add table h3cCBQoSMatchCpProtoCfgTable.
--   Add table h3cCBQoSMatchCpGroupCfgTable.
--   Add h3cCBQoSAccountingMode in h3cCBQoSAccountCfgInfoTable.
--   Add h3cCBQoSRedirectIfVlanID in h3cCBQoSRedirectCfgInfoTable.
--   Add table h3cCBQoSMirrorIfCfgInfoTable.
--   Add table h3cCBQoSColoredRemarkCfgTable.
--   Add table h3cCBQoSPrimapCfgInfoTable.
--   Add table h3cCBQoSColorMapDpCfgInfoTable.
--   Modify the description for h3cCBQoSPolicyIndexNext
--   Modify the description for h3cCBQoSPolicyClassNextIndex
--   Add table h3cCBQoSCpApplyPolicyTable
--   Modify ApplyObjectType add controlPlane
--   Modify the description for h3cCBQoSApplyObjectMainSite
--   Modify the description for h3cCBQoSApplyObjectSubChannel
--   Add table h3cCBQoSCpApplyObjectTable
--   Modify SYNTAX add partialSuccess(3) for h3cCBQoSClassBehaviorStatus
--   Modify h3cCBQoSQueueBandwidthUnit add a value RemainPercent.
--   Modify h3cCBQoSPolicyClassMode, add modeQppb, modeIpSourceGuard, modeVoiceVlan,
--   modeDCBX to value list.
--   Add node ApplyPolicyStatus for table h3cCBQoSIfApplyPolicyTable,
--   h3cCBQoSVlanApplyPolicyTable, and h3cCBQoSGlobalApplyTable.
-- V1.9 2013/03/13 modified by MouXuanli
--   Add typeSecondMplsExp to RemarkType.
--   Modify the description of h3cCBQoSRemarkValue and h3cCBQoSColoredRemarkValue.
-- V2.0 2014/02/24 modified by MouXuanli
--   Modify the range of h3cCBQoSQueueLength.
-- V2.1 2014/04/17 modified by GaoYu/XunZhi
--   Add enumeration matchRuleMacAcl and matchRuleUserAcl to MatchRuleType.
--   Modify the description of h3cCBQoSMatchRuleStringValue.
--   Modify the description of h3cCBQoSMatchRuleIntValue1.
-- V2.2 2016/2/24 modified by WanQing
--   Add enumeration matchRuleVxlan to MatchRuleType.
--   Modify the description of h3cCBQoSMatchRuleStringValue.
--   2017/03/02 modified by gaomengfei
--   Add h3cCBQoSCarClassName to h3cCBQoSCarRunInfoEntry.
--   2017/10/10 modified by gaomengfei
--   Add h3cCBQoSAccountingPktpps to H3cCBQoSAccountingRunInfoEntry.
--   Add h3cCBQoSAccountingPktbps to H3cCBQoSAccountingRunInfoEntry.
--   2018/01/4 modified by gaomengfei
--   Add h3cCBQoSPolicyAccRunInfoTable.
-- ==========================================================================
H3C-CBQOS2-MIB DEFINITIONS ::= BEGIN

IMPORTS
    h3cCommon
        FROM HUAWEI-3COM-OID-MIB
    Integer32, Counter64, Unsigned32, OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE
        FROM SNMPv2-SMI
    InetAddressType, InetAddress
        FROM INET-ADDRESS-MIB           -- [RFC3291]
    TEXTUAL-CONVENTION, RowStatus, TruthValue
        FROM SNMPv2-TC;

h3cCBQos2 MODULE-IDENTITY
    LAST-UPDATED "201801040000Z"            --January 4, 2018 at 00:00 GMT
    ORGANIZATION
        "Hangzhou H3C Technologies Co., Ltd."
    CONTACT-INFO
        "Platform Team Hangzhou H3C Technologies Co., Ltd.
        Hai-Dian District Beijing P.R. China
        http://www.h3c.com
        Zip:100085
        "
    DESCRIPTION
        "This MIB contains objects to manage configuration and
         monitor running state for Class Based QoS feature.

            *********************************
                    MIB Tables
            **********************************
         This MIB consists of the following tables:
            1 :  h3cCBQoSClassifierCfgInfoTable
            2 :  h3cCBQoSMatchRuleCfgInfoTable
            3 :  h3cCBQoSMatchCpProtoCfgTable
            4 :  h3cCBQoSMatchCpGroupCfgTable
            5 :  h3cCBQoSBehaviorCfgInfoTable
            6 :  h3cCBQoSCarCfgInfoTable
            7 :  h3cCBQoSAggregativeCarCfgInfoTable
            8 :  h3cCBQoSGtsCfgInfoTable
            9 :  h3cCBQoSRemarkCfgInfoTable
            10:  h3cCBQoSQueueCfgInfoTable
            11:  h3cCBQoSWredCfgInfoTable
            12:  h3cCBQoSWredClassCfgInfoTable
            13:  h3cCBQoSPolicyRouteCfgInfoTable
            14:  h3cCBQoSNatCfgInfoTable
            15:  h3cCBQoSFirewallCfgInfoTable
            16:  h3cCBQoSSamplingCfgInfoTable
            17:  h3cCBQoSAccountCfgInfoTable
            18:  h3cCBQoSRedirectCfgInfoTable
            19:  h3cCBQoSPriorityMapCfgInfoTable
            20:  h3cCBQoSPolicyCfgInfoTable
            21:  h3cCBQoSPolicyClassCfgInfoTable
            22:  h3cCBQoSIfApplyPolicyTable
            23:  h3cCBQoSAtmPvcApplyPolicyTable
            24:  h3cCBQoSVlanApplyPolicyTable
            25:  h3cCBQoSFrClassApplyPolicyTable
            26:  h3cCBQoSFrPvcApplyPolicyTable
            27:  h3cCBQoSIfCbqRunInfoTable
            28:  h3cCBQoSIfClassMatchRunInfoTable
            29:  h3cCBQoSIfCarRunInfoTable
            30:  h3cCBQoSIfGtsRunInfoTable
            31:  h3cCBQoSIfRemarkRunInfoTable
            32:  h3cCBQoSIfQueueRunInfoTable
            33:  h3cCBQoSIfWredRunInfoTable
            34:  h3cCBQoSIfAccountingRunInfoTable
            35:  h3cCBQoSAtmPvcCbqRunInfoTable
            36:  h3cCBQoSAtmPvcClassMatchRunInfoTable
            37:  h3cCBQoSAtmPvcCarRunInfoTable
            38:  h3cCBQoSAtmPvcGtsRunInfoTable
            39:  h3cCBQoSAtmPvcRemarkRunInfoTable
            40:  h3cCBQoSAtmPvcQueueRunInfoTable
            41:  h3cCBQoSAtmPvcWredRunInfoTable
            42:  h3cCBQoSAtmPvcAccountingRunInfoTable
            43:  h3cCBQoSFrPvcCbqRunInfoTable
            44:  h3cCBQoSFrPvcClassMatchRunInfoTable
            45:  h3cCBQoSFrPvcCarRunInfoTable
            46:  h3cCBQoSFrPvcGtsRunInfoTable
            47:  h3cCBQoSFrPvcRemarkRunInfoTable
            48:  h3cCBQoSFrPvcQueueRunInfoTable
            49:  h3cCBQoSFrPvcWredRunInfoTable
            50:  h3cCBQoSFrPvcAccountingRunInfoTable
            51:  h3cCBQoSIfVlanClassMatchRunInfoTable
            52:  h3cCBQoSIfVlanAccountingRunInfoTable
            53:  h3cCBQoSMirrorCfgInfoTable
            54:  h3cCBQoSGlobalApplyTable
            55:  h3cCBQoSCpApplyPolicyTable
            56:  h3cCBQoSNestCfgInfoTable
            57:  h3cCBQoSNestPolicyCfgInfoTable
            58:  h3cCBQoSMirrorIfCfgInfoTable
            59:  h3cCBQoSColoredRemarkCfgTable
            60:  h3cCBQoSPrimapCfgInfoTable
            61:  h3cCBQoSColorMapDpCfgInfoTable
            62:  h3cCBQoSApplyObjectTable
            63:  h3cCBQoSIntApplyObjectTable
            64:  h3cCBQoSVlanApplyObjectTable
            65:  h3cCBQoSPvcApplyObjectTable
            66:  h3cCBQoSNestPolicyApplyObjectTable
            67:  h3cCBQoSCpApplyObjectTable
            68:  h3cCBQoSCbqRunInfoTable
            69:  h3cCBQoSClassMatchRunInfoTable
            70:  h3cCBQoSCarRunInfoTable
            71:  h3cCBQoSGtsRunInfoTable
            72:  h3cCBQoSRemarkRunInfoTable
            73:  h3cCBQoSQueueRunInfoTable
            74:  h3cCBQoSWredRunInfoTable
            75:  h3cCBQoSAccountingRunInfoTable
            76:  h3cCBQoSPolicyAccRunInfoTable
            77:  h3cCBQoSApplyingStatusObjects
            78:  h3cCBQoSNotifications
        "
    REVISION "201801040000Z"        --January 4, 2018 at 00:00 GMT
    DESCRIPTION
        "Add h3cCBQoSPolicyAccRunInfoTable."
    REVISION "201710100000Z"        --October 10, 2017 at 00:00 GMT
    DESCRIPTION
        "Add h3cCBQoSAccountingPktpps to H3cCBQoSAccountingRunInfoEntry.
         Add h3cCBQoSAccountingPktbps to H3cCBQoSAccountingRunInfoEntry."
    REVISION "201703020000Z"        --March 02, 2017 at 00:00 GMT
    DESCRIPTION
        "Add h3cCBQoSCarClassName to h3cCBQoSCarRunInfoEntry."
    REVISION "201602240000Z"        -- Feb 24, 2016 at 00:00 GMT
    DESCRIPTION
        "Add enumeration matchRuleVxlan to MatchRuleType.
         Modify the description of h3cCBQoSMatchRuleStringValue."
    REVISION "201207020000Z"        -- July 02, 2012 at 00:00 GMT
    DESCRIPTION
        "Modified to add new tables and new nodes."
    REVISION "200507300000Z"        -- July 30, 2005 at 00:00 GMT
    DESCRIPTION
        "The initial revision of this MIB module."
    ::= { h3cQos2 2 }

h3cQos2 OBJECT IDENTIFIER ::= { h3cCommon 65 }

--
-- type definitions in the traffic classifier
--

-- MatchRuleType
MatchRuleType ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION
        "Type of Match Rule."
    SYNTAX INTEGER
    {
        matchRuleAny(1),
        matchRuleIpv4Acl(2),
        matchRuleIPv6Acl(3) ,
        matchRuleIPv4Protocol(4),
        matchRuleIPv6Protocol(5),
        matchRuleIPXProtocol(6),
        matchRuleDscp(7),
        matchRuleIpPre(8),
        matchRuleVlan8021p(9),
        matchRuleMplsExp(10),
        matchRuleAtmClp(11),
        matchRuleFrDe(12),
        matchRuleSourceMac(13),
        matchRuleDestinationMac(14),
        matchRuleQosLocalID(15),
        matchRuleClassifier(16),
        matchRuleInboundInterface(17),
        matchRuleRtpPort(18),
        matchRuleSourceIp(19),
        matchRuleVlanID(20),
        matchRuleTopMostVlanID(21),
        matchRuleLocalPrecedence(22),
        matchRuleDropPriority(23),
        matchRuleBittorrent(24),
        matchRuleServiceDot1p(25),
        matchRuleMplsLabel(26),
        matchRuleSecondMplsLabel(27),
        matchRuleSecondMplsExp(28),
        matchRulePacketLength(29),
        matchRuleArpProtocol(30),
        matchRuleForwardingLayer(31),
        matchRuleMacAcl(32),
        matchRuleUserAcl(33),
        matchRuleVxlan(34)
    }
--
-- end of type definitions in the traffic classifier
--

--
-- type definitions in the traffic behavior
--

-- CarAction
CarAction ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION
        "The actions taken when packets conforming or exceeding
         the configured committed information rate(CIR)."
    SYNTAX INTEGER
    {
        invalid(0),
        pass(1),
        continue(2),
        discard(3),
        remark(4),
        remark-ip-continue(5),
        remark-ip-pass(6),
        remark-mplsexp-continue(7),
        remark-mplsexp-pass(8),
        remark-dscp-continue(9),
        remark-dscp-pass(10),
        remark-dot1p-continue(11),
        remark-dot1p-pass(12),
        remark-atm-clp-continue(13),
        remark-atm-clp-pass(14),
        remark-fr-de-continue(15),
        remark-fr-de-pass(16),
        remark-local-pre-pass(17),
        remark-drop-pre-pass(18)
    }

-- RemarkType
RemarkType ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
        "Type of remark."
    SYNTAX INTEGER
    {
        typeIpPrecedence(1),
        typeDscp(2),
        typeMplsExp(3),
        typeVlan8021p(4),
        typeAtmClp(5),
        typeFrDe(6),
        typeVlanID(7),
        typeQosLocalID(8),
        typeDropPrecedence(9),
        typeLocalPrecedence(10),
        typeTopMostVlanID(11),
        typeSecondMplsExp(12)
    }

-- WredType
WredType ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION
        "WRED type."
    SYNTAX INTEGER
    {
        typeIpPrecBased(1),
        typeDscpBased(2),
        typeDropLevelBased(3),
        typeAtmClpBased(4),
        typeVlan8021pBased(5),
        typeMplsExpBased(6)
    }

-- QueueType
QueueType ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
        "Queueing Type:
         EF:(1)
         AF:(2)
         WFQ:(3)
        "
    SYNTAX INTEGER
    {
        ef(1),
        af(2),
        wfq(3)
    }

-- QueueBandwidthUnit
QueueBandwidthUnit ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION
        "Bandwidth Unit:
         Absolute, Unit : Kbps(1)
         Percent, Unit : %(2)
         RemainPercent, Unit : %(3)
        "
    SYNTAX INTEGER
    {
        unitUnavailable(0),
        unitAbsolute(1),
        unitPercent(2),
        unitRemainPercent(3)
    }

--
-- end of type definitions in the traffic behavior
--

--
-- type definitions in the policy
--

-- Direction
DirectionType ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
        "The direction of policy apply on at interface."
    SYNTAX  INTEGER
    {
        inbound(1),
        outbound(2)
    }

-- ApplyObjectType
ApplyObjectType ::= TEXTUAL-CONVENTION
    STATUS  current
    DESCRIPTION
        "Type of QoS apply object."
    SYNTAX  INTEGER
    {
        interface(1),
        vlan(2),
        atmPvc(3),
        frDlci(4),
        controlPlane(5)
    }

--
-- end of type definitions in policy
--

--
-- Node definitions
--
h3cCBQoSObjects OBJECT IDENTIFIER ::= { h3cCBQos2 1 }

-- h3cCBQoSClassifierObjects

h3cCBQoSClassifierObjects OBJECT IDENTIFIER ::= { h3cCBQoSObjects 1 }

-- Traffic Classifier Next Index
h3cCBQoSClassifierIndexNext OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "This object contains an appropriate value to be used for
         h3cCBQoSClassifierIndex when creating rows in the
         h3cCBQoSClassifierCfgInfoTable.
        "
    ::= { h3cCBQoSClassifierObjects 1 }

-- Traffic Classifier

h3cCBQoSClassifierCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSClassifierCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Traffic Classifier configuration information."
    ::= { h3cCBQoSClassifierObjects 2 }

h3cCBQoSClassifierCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSClassifierCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Traffic Classifier Configuration Information Entry."
    INDEX { h3cCBQoSClassifierIndex }
    ::= { h3cCBQoSClassifierCfgInfoTable 1 }

H3cCBQoSClassifierCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSClassifierIndex
            Integer32,
        h3cCBQoSClassifierName
            OCTET STRING,
        h3cCBQoSClassifierRuleCount
            Integer32,
        h3cCBQoSClassifierOperator
            INTEGER,
        h3cCBQoSClassifierLayer
            INTEGER,
        h3cCBQoSClassifierType
            INTEGER,
        h3cCBQosClassifierMatchRuleNextIndex
            Integer32,
        h3cCBQoSClassifierRowStatus
            RowStatus
    }

h3cCBQoSClassifierIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Index of Traffic Classifier.  Begin with 0."
    ::= { h3cCBQoSClassifierCfgInfoEntry 1 }

h3cCBQoSClassifierName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of Traffic Classifier."
    ::= { h3cCBQoSClassifierCfgInfoEntry 2 }

h3cCBQoSClassifierRuleCount OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The counter of match rules of Traffic classifier."
    ::= { h3cCBQoSClassifierCfgInfoEntry 3 }

h3cCBQoSClassifierOperator OBJECT-TYPE
    SYNTAX INTEGER
    {
        and(1),
        or(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Operator of the match rules of traffic classifier.
         Software QoS supports and, or.
         Hardware QoS supports and.
        "
    DEFVAL { and }
    ::= { h3cCBQoSClassifierCfgInfoEntry 4 }

h3cCBQoSClassifierLayer OBJECT-TYPE
    SYNTAX INTEGER
    {
        unavailable(1),
        l2(2),
        l3(3),
        both(4)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Configuration layer of traffic classifier.
         Only hardware QoS support it.
         1(unavailable) is returned only when getting value from software QoS.
         1(unavailable) can't be set.
        "
    DEFVAL { l3 }
    ::= { h3cCBQoSClassifierCfgInfoEntry 5 }

h3cCBQoSClassifierType OBJECT-TYPE
    SYNTAX INTEGER
    {
        systemDefined(1),
        userDefined(2)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The type of classifier."
    ::= { h3cCBQoSClassifierCfgInfoEntry 6 }

h3cCBQosClassifierMatchRuleNextIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "This object contains an appropriate value to be used for
         h3cCBQoSMatchRuleIndex when creating rows in the
         h3cCBQoSMatchRuleCfgInfoTable.
        "
    ::= { h3cCBQoSClassifierCfgInfoEntry 7 }

h3cCBQoSClassifierRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSClassifierCfgInfoEntry 8 }

-- Match rule

h3cCBQoSMatchRuleCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSMatchRuleCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Match Rule configuration information."
    ::= { h3cCBQoSClassifierObjects 3 }

h3cCBQoSMatchRuleCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSMatchRuleCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Match Rule Configuration Information Entry."
    INDEX { h3cCBQoSClassifierIndex, h3cCBQoSMatchRuleIndex }
    ::= { h3cCBQoSMatchRuleCfgInfoTable 1 }

H3cCBQoSMatchRuleCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSMatchRuleIndex
            Integer32,
        h3cCBQoSMatchRuleIfNot
            INTEGER,
        h3cCBQoSMatchRuleType
            MatchRuleType,
        h3cCBQoSMatchRuleStringValue
            OCTET STRING,
        h3cCBQoSMatchRuleIntValue1
            Unsigned32,
        h3cCBQoSMatchRuleIntValue2
            Unsigned32,
        h3cCBQoSMatchIpAddressType
            InetAddressType,
        h3cCBQoSMatchIpAddress
            InetAddress,
        h3cCBQoSMatchRuleRowStatus
            RowStatus
    }

h3cCBQoSMatchRuleIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Index of Match Rule."
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 1 }

h3cCBQoSMatchRuleIfNot OBJECT-TYPE
    SYNTAX INTEGER
    {
        match(1),
        matchNot(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Whether the if-match rule is a match or matchNot statement.
         Software QoS supports match, matchNot.
         Hardware QoS supports match.
        "
    DEFVAL { match }
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 2 }

h3cCBQoSMatchRuleType OBJECT-TYPE
    SYNTAX MatchRuleType
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Type of Match Rule."
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 3 }

h3cCBQoSMatchRuleStringValue OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Value of Match Rule.
         IPv4 ACL: SIZE (1..63) ACL name
         MAC ACL: SIZE (1..63) MAC ACL name
         User ACL: SIZE (1..63) User ACL name
         IPv6 ACL: SIZE (1..63) IPv6 ACL name
         SourceMAC: SIZE (12) HHHHHHHHHHHH
           for example: 010102020303 means the match rule is
                        'if-match source-mac 0101-0202-0303'
         DestinationMAC: SIZE (12) HHHHHHHHHHHH
           for example: 010102020303 means the match rule is
                        'if-match destination-mac 0101-0202-0303'
         Classifier: SIZE (1..31) classifier name
         InboundInterface: SIZE (1..47) interface description
         TopMostVlanID, VlanID: SIZE(1..109), up to 10 values can be input;
           for example: 1##5#11#111##114#1111 means the match rule is
                        'if-match vlanid 1 to 5 11 111 to 114 1111'
         SourceIp: SIZE (12) HHHHHHHHHHHH
           for example: 010102020303 means the match rule is
                        'if-match source-ip mac-address 0101-0202-0303'
         MplsLabel: SIZE (1..63), up to 8 values can be input;
           for example: 1#11#111#1111 means the match rule is
                        'if-match mpls-label 1 11 111 1111';
                        1##1111 means the match rule is
                        'if-match mpls-label 1 to 1111';
         SecondMplsLabel: SIZE (1..63), up to 8 values can be input;
           for example: 1#11#111#1111 means the match rule is
                        'if-match mpls-label 1 11 111 1111';
                        1##1111 means the match rule is
                        'if-match mpls-label 1 to 1111';
         VxlanID: SIZE(1..8) Vxlan ID or any
           for example: 20 means the match rule is
                        'if-match vxlan 20';
                        any means the match rule is
                        'if-match vxlan any';
         other types: Set is not permitted.  Zero-length string will
                      be returned when getting.
        "
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 4 }

h3cCBQoSMatchRuleIntValue1 OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Value of Match Rule.
         IPv4 ACL: 2000~3999
         MAC ACL: 4000~4999
         User ACL: 5000~5999
         IPv6 ACL: 2000~3999; 10000~42767
         Software QoS: 2000~3999
         Hardware Qos: 10000~42767
         RtpPort: start-port: 2000~65535
         IpPrec: value: 0~7, up to 8 values can be input.  The bit set to
                 1 of the last 8 bits of h3cCBQoSMatchRuleIntValue1 is
                 used to indicate the value 0~7.
           for example: 0x53(Binary format is 01010011)
                        means the match rule is 'if-match ip-prec 0 1 4 6'
         Dscp: value:0~63, up to 8 values can be input.
               The bit set to 1 of h3cCBQoSMatchRuleIntValue1 is used
               to indicate the value 32~63.
               The bit set to 1 of h3cCBQoSMatchRuleIntValue2 is used to
               indicate the value 0~31.
           for example: 0x80000003 means the match rule is 'if-match
                        dscp 32 33 63'
         Vlan8021p: value:0~7, up to 8 values can be input.  The bit set
                    to 1 of the last 8 bits of h3cCBQoSMatchRuleIntValue1
                    is used to indicate the value 0~7.
           for example: 0x53(Binary format is 01010011) means the
                        match rule is 'if-match customer-dot1p 0 1 4 6'
         MplsExp: value:0~7, up to 8 values can be input.  The bit set to 1
                  of the last 8 bits of h3cCBQoSMatchRuleIntValue1 is used
                  to indicate the 8 value 0~7.
           for example: 0x53(Binary format is 01010011) means the
                        match rule is 'if-match mpls 0 1 4 6'
         SourceIp: 1~4095
         QosLocalID: 1~4095
         AtmClp: 0~1
         FrDe: 0~1
         LocalPrecedence: 0~7, up to 8 values can be input.  The bit set to
                          1 of the last 8 bits of h3cCBQoSMatchRuleIntValue1
                          is used to indicate the value 0~7.
           for example: 0x53(Binary format is 01010011) means the match
                        rule is 'if-match localprecedence 0 1 4 6'
         DropPriority: 0~2, up to 3 values can be input.  The bit set to 1
                       of the last 3 bits of h3cCBQoSMatchRuleIntValue1 is
                       used to indicate the value 0~2.
         ServiceDot1p: 0~7, up to 8 values can be input.
                       The bit set to 1 of the last 8 bits of
                       h3cCBQoSMatchRuleIntValue1 is used to indicate
                       the value 0~7.
           for example: 0x53(Binary format is 01010011) means the match
                        rule is 'if-match service-dot1p 0 1 4 6'
         SecondMplsExp: value:0~7, up to 8 values can be input.  The bit
                        set to 1 of the last 8 bits of h3cCBQoSMatchRuleIntValue1
                        is used to indicate the 8 value 0~7.
           for example: 0x53(Binary format is 01010011) means the
                        match rule is 'if-match mpls 0 1 4 6'
         PacketLength: 1~2000.  h3cCBQoSMatchRuleIntValue1 is used to
                       indicate the minimum value, h3cCBQoSMatchRuleIntValue2
                       is used to indicate the maximum value.
         ForwardingLayer: {bridge(1), route(2)}
         other types: Set is not permitted.  0xffffffff will be returned
                      when getting.
        "
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 5 }

h3cCBQoSMatchRuleIntValue2 OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Value of Match Rule.
         RtpPort: end-port: 2000~65535
         Dscp: value:0~63, up to 8 values can be input.
               The bit set to 1 of h3cCBQoSMatchRuleIntValue1 is used to indicate the value 32~63.
               The bit set to 1 of h3cCBQoSMatchRuleIntValue2 is used to indicate the value 0~31.
               for example: 0x80000003 means the match rule is 'if-match dscp 0 1 31'
         PacketLength: 1~2000.  h3cCBQoSMatchRuleIntValue1 is used to
                       indicate the minimum value, h3cCBQoSMatchRuleIntValue2
                       is used to indicate the maximum value.
         other types: Set is not permitted.  0xffffffff will be returned when getting.
        "
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 6 }

h3cCBQoSMatchIpAddressType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "A value that represents a type of Internet address.
          unknown(0)  An unknown address type.  This value MUST
            be used if the value of the corresponding
            InetAddress object is a zero-length string.
            It may also be used to indicate an IP address
            which is not in one of the formats defined below.

         ipv4(1)     An IPv4 address as defined by the
                InetAddressIPv4 textual convention.

         ipv6(2)     A global IPv6 address as defined by the
                InetAddressIPv6 textual convention.

         ipv4z(3)    A non-global IPv4 address including a zone
                index as defined by the InetAddressIPv4z textual convention.

         ipv6z(4)    A non-global IPv6 address including a zone
                index as defined by the InetAddressIPv6z textual convention.

         dns(16)     A DNS domain name as defined by the
                InetAddressDNS textual convention.

         Value of match rule.
         SourceIp support this node.
         other types: Set is not permitted.  Unknown will be returned when getting.
        "
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 7 }

h3cCBQoSMatchIpAddress OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Denotes a generic Internet address.
         SourceIP support this node.
         other types: Set is not permitted.  NULL will be returned when getting.
        "
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 8 }

h3cCBQoSMatchRuleRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSMatchRuleCfgInfoEntry 9 }

-- h3cCBQoSMatchCpProtoCfgTable

h3cCBQoSMatchCpProtoCfgTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSMatchCpProtoCfgEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Matching CpProtocol Rule configuration information."
    ::= { h3cCBQoSClassifierObjects 4 }

h3cCBQoSMatchCpProtoCfgEntry OBJECT-TYPE
    SYNTAX H3cCBQoSMatchCpProtoCfgEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Matching CpProtocol Rule Configuration Information Entry."
    INDEX { h3cCBQoSClassifierIndex, h3cCBQoSMatchRuleIndex }
    ::= { h3cCBQoSMatchCpProtoCfgTable 1 }

H3cCBQoSMatchCpProtoCfgEntry ::=
    SEQUENCE
    {
        h3cCBQoSMatchCpProtoIfNot
            INTEGER,
        h3cCBQoSMatchCpProtoValue
            OCTET STRING,
        h3cCBQoSMatchCpProtoRowStatus
            RowStatus
    }

h3cCBQoSMatchCpProtoIfNot OBJECT-TYPE
    SYNTAX INTEGER
    {
        match(1),
        matchNot(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Whether the if-match rule is a match or matchNot statement.
         Software QoS supports match, matchNot.
         Hardware QoS supports match.
        "
    DEFVAL { match }
    ::= { h3cCBQoSMatchCpProtoCfgEntry 1 }

h3cCBQoSMatchCpProtoValue OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Value of Cp Protocol, SIZE (1..23).  Up to 8 values can be input.
           for example: 1#2#3#4#5 means the match rule is
                        'if-match control-plane protocol arp arp-snooping
                        bgp bgp4+ bpdu-tunnel';
        arp: 1
        arp-snooping: 2
        bgp: 3
        bgp4+: 4
        bpdu-tunnel: 5
        cdp: 6
        cfd: 7
        dhcp: 8
        dhcp-snooping: 9
        dhcp6: 10
        dldp: 11
        dot1x: 12
        gmrp: 13
        gvrp: 14
        http: 15
        https: 16
        icmp: 17
        icmp6: 18
        igmp: 19
        igmp-snooping: 20
        irdp: 21
        isis: 22
        lacp: 23
        ldp: 24
        ldp6: 25
        lldp: 26
        mld: 27
        msdp: 28
        ntp: 29
        oam: 30
        ospf-multicast: 31
        ospf-unicast: 32
        ospf3-multicast: 33
        ospf3-unicast: 34
        pagp: 35
        pim-multicast: 36
        pim-unicast: 37
        pim6-multicast: 38
        pim6-unicast: 39
        portal: 40
        pppoe-negotiation: 41
        pvst: 42
        radius: 43
        rip: 44
        ripng: 45
        rrpp: 46
        rsvp: 47
        smart-link: 48
        snmp: 49
        stp: 50
        tacas: 51
        udld: 52
        udp-helper: 53
        vrrp: 54
        vrrp6: 55
        vtp: 56
        ip-option: 57
        ipv6-option: 58
        ssh: 59
        telnet: 60"
    ::= { h3cCBQoSMatchCpProtoCfgEntry 2 }

h3cCBQoSMatchCpProtoRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSMatchCpProtoCfgEntry 3 }

-- h3cCBQoSMatchCpGroupCfgTable

h3cCBQoSMatchCpGroupCfgTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSMatchCpGroupCfgEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of matching Cp protocol group rule configuration information."
    ::= { h3cCBQoSClassifierObjects 5 }

h3cCBQoSMatchCpGroupCfgEntry OBJECT-TYPE
    SYNTAX H3cCBQoSMatchCpGroupCfgEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Matching Cp protocol group Rule Configuration Information Entry."
    INDEX { h3cCBQoSClassifierIndex, h3cCBQoSMatchRuleIndex }
    ::= { h3cCBQoSMatchCpGroupCfgTable 1 }

H3cCBQoSMatchCpGroupCfgEntry ::=
    SEQUENCE
    {
        h3cCBQoSMatchCpGroupIfNot
            INTEGER,
        h3cCBQoSMatchCpGroupValue
            INTEGER,
        h3cCBQoSMatchCpGroupRowStatus
            RowStatus
    }

h3cCBQoSMatchCpGroupIfNot OBJECT-TYPE
    SYNTAX INTEGER
    {
        match(1),
        matchNot(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Whether the if-match rule is a match or matchNot statement.
         Software QoS supports match, matchNot.
         Hardware QoS supports match.
        "
    DEFVAL { match }
    ::= { h3cCBQoSMatchCpGroupCfgEntry 1 }

h3cCBQoSMatchCpGroupValue OBJECT-TYPE
    SYNTAX INTEGER
    {
        critical(1),
        important(2),
        management(3),
        normal(4),
        redirect(5),
        monitor(6),
        exception(7)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Type of Cp protocol group.
        "
    ::= { h3cCBQoSMatchCpGroupCfgEntry 2 }

h3cCBQoSMatchCpGroupRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSMatchCpGroupCfgEntry 3 }

-- h3cCBQoSBehaviorObjects

h3cCBQoSBehaviorObjects OBJECT IDENTIFIER ::= { h3cCBQoSObjects 2 }

-- Traffic Behavior Next Index

h3cCBQoSBehaviorIndexNext OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "This object contains an appropriate value to be used for
         h3cCBQoSBehaviorIndex when creating rows in the
         h3cCBQoSBehaviorCfgInfoTable."
    ::= { h3cCBQoSBehaviorObjects 1 }

-- Traffic Behavior

h3cCBQoSBehaviorCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSBehaviorCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Traffic Behavior configuration information."
    ::= { h3cCBQoSBehaviorObjects 2 }

h3cCBQoSBehaviorCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSBehaviorCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Traffic Behavior Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSBehaviorCfgInfoTable 1 }

H3cCBQoSBehaviorCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSBehaviorIndex
            Integer32,
        h3cCBQoSBehaviorName
            OCTET STRING,
        h3cCBQoSBehaviorType
            INTEGER,
        h3cCBQoSBehaviorRowStatus
            RowStatus
    }

h3cCBQoSBehaviorIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Index of Traffic Behavior."
    ::= { h3cCBQoSBehaviorCfgInfoEntry 1 }

h3cCBQoSBehaviorName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of Traffic Behavior."
    ::= { h3cCBQoSBehaviorCfgInfoEntry 2 }

h3cCBQoSBehaviorType OBJECT-TYPE
    SYNTAX INTEGER
    {
        systemDefined(1),
        userDefined(2)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Type of behavior."
    ::= { h3cCBQoSBehaviorCfgInfoEntry 3 }

h3cCBQoSBehaviorRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSBehaviorCfgInfoEntry 4 }

-- CAR

h3cCBQoSCarCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSCarCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of CAR feature configuration information."
    ::= { h3cCBQoSBehaviorObjects 3 }

h3cCBQoSCarCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSCarCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "CAR Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSCarCfgInfoTable 1 }

H3cCBQoSCarCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSCarCir
            Unsigned32,
        h3cCBQoSCarCbs
            Unsigned32,
        h3cCBQoSCarEbs
            Unsigned32,
        h3cCBQoSCarPir
            Unsigned32,
        h3cCBQoSCarPbs
            Unsigned32,
        h3cCBQoSCarGreenAction
            CarAction,
        h3cCBQoSCarGreenRemarkValue
            Integer32,
        h3cCBQoSCarYellowAction
            CarAction,
        h3cCBQoSCarYellowRemarkValue
            Integer32,
        h3cCBQoSCarRedAction
            CarAction,
        h3cCBQoSCarRedRemarkValue
            Integer32,
        h3cCBQoSCarPolicedPriorityMapType
            INTEGER,
        h3cCBQoSCarRowStatus
            RowStatus
    }

h3cCBQoSCarCir OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Committed Information Rate.  Unit: kbps."
    ::= { h3cCBQoSCarCfgInfoEntry 1 }

h3cCBQoSCarCbs OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Committed Burst Size.  Unit: byte."
    ::= { h3cCBQoSCarCfgInfoEntry 2 }

h3cCBQoSCarEbs OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Excess Burst Size.  Unit: byte.
         Only software QoS support this node.
         4294967295 is returned only when getting value from hardware QoS.
         4294967295 can't be set."
    DEFVAL {0}
    ::= { h3cCBQoSCarCfgInfoEntry 3 }

h3cCBQoSCarPir OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Peak Information Rate.  Unit: kbps.
         Only hardware QoS support this node.
         4294967295 is returned only when getting value from software QoS.
         4294967295 can't be set."
    ::= { h3cCBQoSCarCfgInfoEntry 4 }

h3cCBQoSCarPbs OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Peak Burst Size.  Unit: byte.
         Only hardware QoS support this node.
         4294967295 is returned only when getting value from software QoS.
         4294967295 can't be set."
    ::= { h3cCBQoSCarCfgInfoEntry 5 }

h3cCBQoSCarGreenAction OBJECT-TYPE
    SYNTAX CarAction
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Green Action
         Hardware QoS : pass, discard, remark.
         Software QoS : pass, discard, remark IP Precedence, remark DSCP, remark MPLS EXP.
        "
    DEFVAL {pass}
    ::= { h3cCBQoSCarCfgInfoEntry 6 }

h3cCBQoSCarGreenRemarkValue OBJECT-TYPE
    SYNTAX Integer32 (0..63|255)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The value is to remark When green action is remarking.
         For remarking DSCP, the range is 0~63;
         For remarking IP Precedence and MPLS EXP, the range is 0~7;
         Only software QoS support this node.
         255 is returned only when getting value from hardware QoS or
         when action being pass, discard of software QoS.
         255 can't be set.
        "
    ::= { h3cCBQoSCarCfgInfoEntry 7 }

h3cCBQoSCarYellowAction OBJECT-TYPE
    SYNTAX CarAction
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Yellow Action:
         Only hardware QoS support this node.  Hardware QoS support pass, discard, remark.
         invalid is returned only when getting value from software QoS.
         invalid can't be set.
        "
    DEFVAL {remark}
    ::= { h3cCBQoSCarCfgInfoEntry 8 }

h3cCBQoSCarYellowRemarkValue OBJECT-TYPE
    SYNTAX Integer32 (0..63|255)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The value is to remark When red action is remarking.
         For remarking DSCP, the range is 0~63;
         For remarking IP Precedence and MPLS EXP, the range is 0~7;
         Only software QoS support this node.
         255 is returned only when getting value from hardware QoS or
         when action being pass, discard of software QoS.
         255 can't be set."
    ::= { h3cCBQoSCarCfgInfoEntry 9 }

h3cCBQoSCarRedAction OBJECT-TYPE
    SYNTAX CarAction
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Red Action:
         Hardware QoS : pass, discard, remark.
         Software QoS : pass, discard, remark IP Precedence, remark DSCP, remark MPLS EXP.
        "
    DEFVAL {discard}
    ::= { h3cCBQoSCarCfgInfoEntry 10 }

h3cCBQoSCarRedRemarkValue OBJECT-TYPE
    SYNTAX Integer32 (0..63|255)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The value is to remark When red action is remarking.
         For remarking DSCP, the range is 0~63;
         For remarking IP Precedence and MPLS EXP, the range is 0~7;
         Only software QoS support this node.
         255 is returned only when getting value from hardware QoS or
         when action being pass, discard of software QoS.
         255 can't be set."
    ::= { h3cCBQoSCarCfgInfoEntry 11 }

h3cCBQoSCarPolicedPriorityMapType OBJECT-TYPE
    SYNTAX INTEGER
    {
        none(0),
        policed-service-map(1),
        local-precedence-dot1p-map(2),
        drop-precedence-map(3)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Type of priority map."
    DEFVAL { none }
    ::= { h3cCBQoSCarCfgInfoEntry 12 }

h3cCBQoSCarRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSCarCfgInfoEntry 13 }

--
-- nodes of aggregative CAR applyed behavior
--
h3cCBQoSAggregativeCarCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAggregativeCarCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of aggregative CAR applied CBQ feature configuration information.
         Aggregative CAR is managed by H3C-IFQOS2-MIB.  So, you can use H3C-IFQOS2-MIB
         to get some details information about aggregative CAR.
        "
    ::= { h3cCBQoSBehaviorObjects 4 }

h3cCBQoSAggregativeCarCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAggregativeCarCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Aggregative CAR feature applied CBQ configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex,
            h3cCBQoSCarAggregativeCarIndex }
    ::= { h3cCBQoSAggregativeCarCfgInfoTable 1 }

H3cCBQoSAggregativeCarCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSCarAggregativeCarIndex
            Integer32,
        h3cCBQoSCarAggregativeCarName
            OCTET STRING,
        h3cCBQoSAggregativeCarRowStatus
            RowStatus
    }

h3cCBQoSCarAggregativeCarIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Index of aggregative CAR.
         It is equal to h3cIfQoSAggregativeCarIndex at H3C-IFQOS2-MIB.
        "
    ::= { h3cCBQoSAggregativeCarCfgInfoEntry 1 }

h3cCBQoSCarAggregativeCarName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE(1..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Name of aggregative CAR.
         It is equal to h3cIfQoSAggregativeCarName at H3C-IFQOS2-MIB.
        "
    ::= { h3cCBQoSAggregativeCarCfgInfoEntry 2 }

h3cCBQoSAggregativeCarRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSAggregativeCarCfgInfoEntry 3 }

-- GTS

h3cCBQoSGtsCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSGtsCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of GTS feature configuration information."
    ::= { h3cCBQoSBehaviorObjects 5 }

h3cCBQoSGtsCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSGtsCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "GTS Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSGtsCfgInfoTable 1 }

H3cCBQoSGtsCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSGtsCir
            Unsigned32,
        h3cCBQoSGtsCbs
            Unsigned32,
        h3cCBQoSGtsEbs
            Unsigned32,
        h3cCBQoSGtsQueueLength
            Integer32,
        h3cCBQoSGtsRowStatus
            RowStatus,
        h3cCBQoSGtsPir
            Unsigned32
    }

h3cCBQoSGtsCir OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Committed Information Rate.  Unit: kbps"
    ::= { h3cCBQoSGtsCfgInfoEntry 1 }

h3cCBQoSGtsCbs OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Committed Burst Size.  Unit: byte
         default: max(cir*1/2,15000)"
    ::= { h3cCBQoSGtsCfgInfoEntry 2 }

h3cCBQoSGtsEbs OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Excess Burst Size.  Unit: byte"
    ::= { h3cCBQoSGtsCfgInfoEntry 3 }

h3cCBQoSGtsQueueLength OBJECT-TYPE
    SYNTAX Integer32 (1..1024)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The length of GTS buffer."
    DEFVAL { 50 }
    ::= { h3cCBQoSGtsCfgInfoEntry 4 }

h3cCBQoSGtsRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSGtsCfgInfoEntry 5 }

h3cCBQoSGtsPir OBJECT-TYPE
    SYNTAX Unsigned32
    UNITS  "kbps"
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Peak Information Rate."
    ::= { h3cCBQoSGtsCfgInfoEntry 6 }

-- REMARK

h3cCBQoSRemarkCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSRemarkCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Remarking feature configuration information."
    ::= { h3cCBQoSBehaviorObjects 6 }

h3cCBQoSRemarkCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSRemarkCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remarking Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex, h3cCBQoSRemarkType }
    ::= { h3cCBQoSRemarkCfgInfoTable 1 }

H3cCBQoSRemarkCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSRemarkType
            RemarkType,
        h3cCBQoSRemarkValue
            Integer32,
        h3cCBQoSRemarkRowStatus
            RowStatus
    }

h3cCBQoSRemarkType OBJECT-TYPE
    SYNTAX RemarkType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remark type."
    ::= { h3cCBQoSRemarkCfgInfoEntry 1 }

h3cCBQoSRemarkValue OBJECT-TYPE
    SYNTAX Integer32 (0..4095)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Value to remark:
         for IpPrecedence: 0~7
         for Dscp: 0~63
         for MplsExp: 0~7
         for Vlan8021p: 0~7
         for AtmClp: 0~1
         for FrDe: 0~1
         for VlanID: 1~4094
         for QosLocalID: 1~4095
         for DropPrecedence: 0~2
         for LocalPrecedence: 0~7
         for TopMostVlanID: 1~4094
         for SecondMplsExp: 0~7
        "
    ::= { h3cCBQoSRemarkCfgInfoEntry 2 }

h3cCBQoSRemarkRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus"
    ::= { h3cCBQoSRemarkCfgInfoEntry 3 }

-- Queue

h3cCBQoSQueueCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSQueueCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of queue feature configuration information."
    ::= { h3cCBQoSBehaviorObjects 7 }

h3cCBQoSQueueCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSQueueCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Queue Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSQueueCfgInfoTable 1 }

H3cCBQoSQueueCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSQueueType
            QueueType,
        h3cCBQoSQueueDropType
            INTEGER,
        h3cCBQoSQueueLength
            Integer32,
        h3cCBQoSQueueBandwidthUnit
            QueueBandwidthUnit,
        h3cCBQoSQueueBandwidthValue
            Integer32,
        h3cCBQoSQueueCbs
            Integer32,
        h3cCBQoSQueueQueueNumber
            INTEGER,
        h3cCBQoSQueueCbsRatio
            Integer32,
        h3cCBQoSQueueRowStatus
            RowStatus
    }

h3cCBQoSQueueType OBJECT-TYPE
    SYNTAX QueueType
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Queueing Type:
         EF:(1)
         AF:(2)
         WFQ:(3)"
    ::= { h3cCBQoSQueueCfgInfoEntry 1 }

h3cCBQoSQueueDropType OBJECT-TYPE
    SYNTAX INTEGER
    {
        typeUnavailable(0),
        typeTailDrop(1),
        typeWred(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The drop type of queue.  Only valid for AF and WFQ queue.
         typeUnavailable is returned only when getting value about EF queue.
         typeUnavailable can't be set."
    DEFVAL {typeTailDrop}
    ::= { h3cCBQoSQueueCfgInfoEntry 2 }

h3cCBQoSQueueLength OBJECT-TYPE
    SYNTAX Integer32 (1..2147483647)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The length of QueueLength.  Only valid for tail-drop type
         of AF and WFQ queue.
         2147483647 is returned only when getting value about EF queue
         or WRED type of AF and WFQ queue.
         2147483647 can't be set."
    DEFVAL { 64 }
    ::= { h3cCBQoSQueueCfgInfoEntry 3 }

h3cCBQoSQueueBandwidthUnit OBJECT-TYPE
    SYNTAX QueueBandwidthUnit
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Bandwidth Unit:
         Absolute, Unit Kbps (1)
         Percent, Unit % (2)
         RemainPercent, Unit % of remained bandwidth (3)
         Only valid for EF and AF queue.
         0 is returned only when getting value about WFQ queue.
         0 can't be set.
        "
    ::= { h3cCBQoSQueueCfgInfoEntry 4 }

h3cCBQoSQueueBandwidthValue OBJECT-TYPE
    SYNTAX Integer32 (1..10000000|2147483647)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Bandwidth value:
         Absolute value: 8~10000000.  Unit: Kbps
         Percent value: 1~100.
         Only valid for EF and AF queue.
         2147483647 is returned only when getting value about WFQ queue.
         2147483647 can't be set."
    ::= { h3cCBQoSQueueCfgInfoEntry 5 }

h3cCBQoSQueueCbs OBJECT-TYPE
    SYNTAX Integer32 (32..1000000000|2147483647)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Committed Burst Size.  Unit: byte.
         Only valid for EF queue.
         Default: If the value of 'h3cCBQoSQueueBandwidthValue * 25' is
                  between 1500 and 2000000, the default value of this
                  object is 'h3cCBQoSQueueBandwidthValue * 25';If the value of
                  'h3cCBQoSQueueBandwidthValue * 25' is larger than or equal to
                  2000000, the default value of this object is 2000000;
                  If the value of 'h3cCBQoSQueueBandwidthValue * 25' is
                  less than or equal to 1500, the default value of this object is 1500.
         2147483647 is returned only when getting value about AF or WFQ queue.
         2147483647 can't be set."
    ::= { h3cCBQoSQueueCfgInfoEntry 6 }

h3cCBQoSQueueQueueNumber OBJECT-TYPE
    SYNTAX INTEGER
    {
        unavailable(0),
        a16(16),
        a32(32),
        a64(64),
        a128(128),
        a256(256),
        a512(512),
        a1024(1024),
        a2048(2048),
        a4096(4096)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Max number of hashed queues (a power of 2).
         Only valid for WFQ.
         'unavailable' is returned only when getting value about AF or EF queue.
         'unavailable' can't be set."
    DEFVAL {a256}
    ::= { h3cCBQoSQueueCfgInfoEntry 7 }

h3cCBQoSQueueCbsRatio OBJECT-TYPE
    SYNTAX Integer32(25..500|2147483647)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Committed Burst Size Ratio.
         CBS = CBS_Ratio * Bandwidth(k bps)
         Only valid for EF queue.
         2147483647 is returned only when getting value about AF or WFQ queue.
         2147483647 can't be set.
        "
    DEFVAL { 25 }
    ::= { h3cCBQoSQueueCfgInfoEntry 8 }

h3cCBQoSQueueRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSQueueCfgInfoEntry 9 }

-- WRED

h3cCBQoSWredCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSWredCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of WRED configuration information."
    ::= { h3cCBQoSBehaviorObjects 8 }

h3cCBQoSWredCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSWredCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "WRED Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSWredCfgInfoTable 1 }

H3cCBQoSWredCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSWredType
            WredType,
        h3cCBQoSWredWeightConst
            Integer32
    }

h3cCBQoSWredType OBJECT-TYPE
    SYNTAX WredType
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "WRED type."
    DEFVAL { 1 }
    ::= { h3cCBQoSWredCfgInfoEntry 1 }

h3cCBQoSWredWeightConst OBJECT-TYPE
    SYNTAX Integer32 (1..16)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Specify weight for calculating mean queue depth."
    DEFVAL { 9 }
    ::= { h3cCBQoSWredCfgInfoEntry 2 }

-- WRED Class

h3cCBQoSWredClassCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSWredClassCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of WRED configuration information."
    ::= { h3cCBQoSBehaviorObjects 9 }

h3cCBQoSWredClassCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSWredClassCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "WRED Class Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex, h3cCBQoSWredClassValue }
    ::= { h3cCBQoSWredClassCfgInfoTable 1 }

H3cCBQoSWredClassCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSWredClassValue
            Integer32,
        h3cCBQoSWredClassLowLimit
            Integer32,
        h3cCBQoSWredClassHighLimit
            Integer32,
        h3cCBQoSWredClassDiscardProb
            Integer32
    }

h3cCBQoSWredClassValue OBJECT-TYPE
    SYNTAX Integer32 (0..63)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The class value.
         For IP precedence based WRED, the class is IP precedence,
         and range is 0~7.
         For DSCP based WRED, the class is DSCP, and range is 0~63.
        "
    ::= { h3cCBQoSWredClassCfgInfoEntry 1 }

h3cCBQoSWredClassLowLimit OBJECT-TYPE
    SYNTAX Integer32 (1..1024)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "The low limit of queue depth."
    DEFVAL {10}
    ::= { h3cCBQoSWredClassCfgInfoEntry 2 }

h3cCBQoSWredClassHighLimit OBJECT-TYPE
    SYNTAX Integer32 (1..1024)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "The high limit of queue depth."
    DEFVAL { 30 }
    ::= { h3cCBQoSWredClassCfgInfoEntry 3 }

h3cCBQoSWredClassDiscardProb OBJECT-TYPE
    SYNTAX Integer32 (1..255)
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "The discard probability denominator."
    DEFVAL { 10 }
    ::= { h3cCBQoSWredClassCfgInfoEntry 4 }

-- Policy Route

h3cCBQoSPolicyRouteCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSPolicyRouteCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Policy Routing configuration information."
    ::= { h3cCBQoSBehaviorObjects 10 }

h3cCBQoSPolicyRouteCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSPolicyRouteCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy Routeing Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSPolicyRouteCfgInfoTable 1 }

H3cCBQoSPolicyRouteCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSPolicyRouteIpAddrType
            InetAddressType,
        h3cCBQoSPolicyRouteNexthop
            InetAddress,
        h3cCBQoSPolicyRouteBackup
            INTEGER,
        h3cCBQoSPolicyRouteRowStatus
            RowStatus
    }

h3cCBQoSPolicyRouteIpAddrType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Type of InetAddress."
    ::= { h3cCBQoSPolicyRouteCfgInfoEntry 1 }

h3cCBQoSPolicyRouteNexthop OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The next-hop ip address for redirection."
    ::= { h3cCBQoSPolicyRouteCfgInfoEntry 2 }

h3cCBQoSPolicyRouteBackup OBJECT-TYPE
    SYNTAX INTEGER
    {
        backup(1),
        notbackup(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Whether forward the packet according to the routing table
         When the next-hop IP address for redirection is not valid.
         Backup means forwarding.  NoBackup means not forwarding.
        "
    ::= { h3cCBQoSPolicyRouteCfgInfoEntry 3 }

h3cCBQoSPolicyRouteRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSPolicyRouteCfgInfoEntry 4 }

-- NAT

h3cCBQoSNatCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSNatCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Nat configuration information."
    ::= { h3cCBQoSBehaviorObjects 11 }

h3cCBQoSNatCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSNatCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Nat Configuration Information Entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSNatCfgInfoTable 1 }

H3cCBQoSNatCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSNatMainNumber
            Integer32,
        h3cCBQoSNatBackupNumber
            Integer32,
        h3cCBQoSNatServiceClass
            Integer32,
        h3cCBQoSNatRowStatus
            RowStatus
    }

h3cCBQoSNatMainNumber OBJECT-TYPE
    SYNTAX Integer32 (1..255)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The main ISP number."
    ::= { h3cCBQoSNatCfgInfoEntry 1 }

h3cCBQoSNatBackupNumber OBJECT-TYPE
    SYNTAX Integer32 (1..255)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The backup ISP number"
    ::= { h3cCBQoSNatCfgInfoEntry 2 }

h3cCBQoSNatServiceClass OBJECT-TYPE
    SYNTAX Integer32 (1..4)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The service class."
    DEFVAL { 2 }
    ::= { h3cCBQoSNatCfgInfoEntry 3 }

h3cCBQoSNatRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSNatCfgInfoEntry 4 }

-- Firewall

h3cCBQoSFirewallCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFirewallCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of firewall configuration information."
    ::= { h3cCBQoSBehaviorObjects 12 }

h3cCBQoSFirewallCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFirewallCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Firewall configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSFirewallCfgInfoTable 1 }

H3cCBQoSFirewallCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFirewallAction
            INTEGER,
        h3cCBQoSFirewallRowStatus
            RowStatus
    }

h3cCBQoSFirewallAction OBJECT-TYPE
    SYNTAX INTEGER
    {
        permit(1),
        deny(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The firewall action "
    DEFVAL {permit}
    ::= { h3cCBQoSFirewallCfgInfoEntry 1 }

h3cCBQoSFirewallRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSFirewallCfgInfoEntry 2 }

-- Sampling behavior

h3cCBQoSSamplingCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSSamplingCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of sampling configuration information."
    ::= { h3cCBQoSBehaviorObjects 13 }

h3cCBQoSSamplingCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSSamplingCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Sampling configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSSamplingCfgInfoTable 1 }

H3cCBQoSSamplingCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSSamplingNum
            Integer32,
        h3cCBQoSSamplingRowStatus
            RowStatus
    }

h3cCBQoSSamplingNum OBJECT-TYPE
    SYNTAX Integer32 (1..16)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The sampling number."
    ::= { h3cCBQoSSamplingCfgInfoEntry 1 }

h3cCBQoSSamplingRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSSamplingCfgInfoEntry 2 }

h3cCBQoSAccountCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAccountCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of account configuration information."
    ::= { h3cCBQoSBehaviorObjects 14 }

h3cCBQoSAccountCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAccountCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Account configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSAccountCfgInfoTable 1 }

H3cCBQoSAccountCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAccounting
            TruthValue,
        h3cCBQoSAccountRowStatus
            RowStatus,
        h3cCBQoSAccountingMode
            INTEGER
    }

h3cCBQoSAccounting OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Account action."
    ::= { h3cCBQoSAccountCfgInfoEntry 1 }

h3cCBQoSAccountRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSAccountCfgInfoEntry 2 }

h3cCBQoSAccountingMode OBJECT-TYPE
    SYNTAX INTEGER
    {
        auto(1),
        packet(2),
        byte(3),
        both(4)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Account mode."
    DEFVAL { auto }
    ::= { h3cCBQoSAccountCfgInfoEntry 3 }

--
-- nodes of h3cCBQoSRedirectCfgInfoTable
--
h3cCBQoSRedirectCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSRedirectCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of redirect configuration information."
    ::= { h3cCBQoSBehaviorObjects 15 }

h3cCBQoSRedirectCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSRedirectCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Redirect configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSRedirectCfgInfoTable 1 }

H3cCBQoSRedirectCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSRedirectType
            INTEGER,
        h3cCBQoSRedirectIfIndex
            Integer32,
        h3cCBQoSRedirectIpAddressType
            InetAddressType,
        h3cCBQoSRedirectIpAddress1
            InetAddress,
        h3cCBQoSRedirectIpAddress2
            InetAddress,
        h3cCBQoSRedirectRowStatus
            RowStatus,
        h3cCBQoSRedirectIpv6Interface1
            Integer32,
        h3cCBQoSRedirectIpv6Interface2
            Integer32,
        h3cCBQoSRedirectIfVlanID
            Integer32
    }

h3cCBQoSRedirectType OBJECT-TYPE
    SYNTAX INTEGER
    {
        cpu(1),
        interface(2),
        nextHop(3)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The type of redirect."
    ::= { h3cCBQoSRedirectCfgInfoEntry 1 }

h3cCBQoSRedirectIfIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "ifIndex.
         Only the value of h3cCBQoSRedirectType is interface,
         can be set this node.
        "
    DEFVAL { 0 }
    ::= { h3cCBQoSRedirectCfgInfoEntry 2 }

h3cCBQoSRedirectIpAddressType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "A value that represents a type of Internet address.
          unknown(0)  An unknown address type.  This value MUST
             be used if the value of the corresponding
             InetAddress object is a zero-length string.
             It may also be used to indicate an IP address
             which is not in one of the formats defined
             below.

          ipv4(1)     An IPv4 address as defined by the
             InetAddressIPv4 textual convention.

          ipv6(2)     A global IPv6 address as defined by the
             InetAddressIPv6 textual convention.

          ipv4z(3)    A non-global IPv4 address including a zone
             index as defined by the InetAddressIPv4z
             textual convention.

          ipv6z(4)    A non-global IPv6 address including a zone
             index as defined by the InetAddressIPv6z
             textual convention.

          dns(16)     A DNS domain name as defined by the
             InetAddressDNS textual convention.
          Now supports ipv4 and ipv6.
          Only the value of h3cCBQoSRedirectType is next-hop,
          can be set this node and h3cCBQoSRedirectIpAddress1 or h3cCBQoSRedirectIpAddress2.
        "
    DEFVAL { unknown }
    ::= { h3cCBQoSRedirectCfgInfoEntry 3 }

h3cCBQoSRedirectIpAddress1 OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "IP Address.
         If the value of h3cCBQoSRedirectType is not next-hop,
         zero-length string will be returned when getting.
         If the value of h3cCBQoSRedirectIpAddressType is ipv6,
         this node is set necessarily.
        "
    ::= { h3cCBQoSRedirectCfgInfoEntry 4 }

h3cCBQoSRedirectIpAddress2 OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "IP Address.
         If the value of h3cCBQoSRedirectType is not next-hop,
         zero-length string will be returned when getting.
         If the value of h3cCBQoSRedirectIpAddressType is ipv6,
         this node is set optionally.
        "
    ::= { h3cCBQoSRedirectCfgInfoEntry 5 }

h3cCBQoSRedirectRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSRedirectCfgInfoEntry 6 }

h3cCBQoSRedirectIpv6Interface1 OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "IfIndex for ipv6 next hop .
         If and only if the value of h3cCBQoSRedirectIpAddressType is ipv6
         and h3cCBQoSRedirectIpAddress1 is set,
         this node can be set.
        "
    DEFVAL { 0 }
    ::= { h3cCBQoSRedirectCfgInfoEntry 7 }

h3cCBQoSRedirectIpv6Interface2 OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "IfIndex for ipv6 next hop .
         If and only if the value of h3cCBQoSRedirectIpAddressType is ipv6
         and h3cCBQoSRedirectIpAddress2 is set,
         this node can be set.
        "
    DEFVAL { 0 }
    ::= { h3cCBQoSRedirectCfgInfoEntry 8 }

h3cCBQoSRedirectIfVlanID OBJECT-TYPE
    SYNTAX Integer32 (0..4094 |65535)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "VLAN-ID to tag.
         If and only if the value of h3cCBQoSRedirectType is interface,
         this node can be set.
        "
    DEFVAL { 65535 }
    ::= { h3cCBQoSRedirectCfgInfoEntry 9 }

--
-- nodes of h3cCBQoSPriorityMapCfgInfoTable
--
h3cCBQoSPriorityMapCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSPriorityMapCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of priority map configuration information."
    ::= { h3cCBQoSBehaviorObjects 16 }

h3cCBQoSPriorityMapCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSPriorityMapCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "priority map configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSPriorityMapCfgInfoTable 1 }

H3cCBQoSPriorityMapCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSPriorityMapImportType
            INTEGER,
        h3cCBQoSPriorityMapExportType
            INTEGER,
        h3cCBQoSPriorityMapGroupIndex
            Integer32,
        h3cCBQoSPriorityMapGroupName
            OCTET STRING,
        h3cCBQoSPriorityMapAuto
            INTEGER,
        h3cCBQoSPriorityMapRowStatus
            RowStatus
    }

h3cCBQoSPriorityMapImportType OBJECT-TYPE
    SYNTAX INTEGER
    {
        invalid(1),
        dscp(2),
        dot1p(3),
        exp(4),
        ipPrecedence(5),
        localPrecedence(6),
        dropPrecedence(7)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Import type of map."
    DEFVAL { invalid }
    ::= { h3cCBQoSPriorityMapCfgInfoEntry 1 }

h3cCBQoSPriorityMapExportType OBJECT-TYPE
    SYNTAX INTEGER
    {
        invalid(1),
        dscp(2),
        dot1p(3),
        exp(4),
        ipPrecedence(5),
        localPrecedence(6),
        dropPrecedence(7)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Export type of map."
    DEFVAL { invalid }
    ::= { h3cCBQoSPriorityMapCfgInfoEntry 2 }

h3cCBQoSPriorityMapGroupIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Index of map group.
         Map group is managed by H3C-IFQOS2-MIB.
        "
    ::= { h3cCBQoSPriorityMapCfgInfoEntry 3 }

h3cCBQoSPriorityMapGroupName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE(0..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Name of map group.
         Map group is managed by H3C-IFQOS2-MIB.
        "
    ::= { h3cCBQoSPriorityMapCfgInfoEntry 4 }

h3cCBQoSPriorityMapAuto OBJECT-TYPE
    SYNTAX INTEGER
    {
        invalid(1),
        autoDscp(2),
        autoDot1p(3),
        autoMplsExp(4),
        autoIp(5)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Type of priority MAP."
    DEFVAL { invalid }
    ::= { h3cCBQoSPriorityMapCfgInfoEntry 5 }

h3cCBQoSPriorityMapRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSPriorityMapCfgInfoEntry 6 }

--
-- nodes of h3cCBQoSMirrorCfgInfoTable
--
h3cCBQoSMirrorCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSMirrorCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of flow mirror configuration information."
    ::= { h3cCBQoSBehaviorObjects 17 }

h3cCBQoSMirrorCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSMirrorCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Flow mirror configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSMirrorCfgInfoTable 1 }

H3cCBQoSMirrorCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSMirrorType
            INTEGER,
        h3cCBQoSMirrorIfIndex
            OCTET STRING,
        h3cCBQoSMirrorVlanID
            Integer32,
        h3cCBQoSMirrorRowStatus
            RowStatus
    }

h3cCBQoSMirrorType OBJECT-TYPE
    SYNTAX INTEGER
    {
        interface(1),
        cpu(2),
        vlan(3)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Type of flow mirror."
    ::= { h3cCBQoSMirrorCfgInfoEntry 1 }

h3cCBQoSMirrorIfIndex OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..255))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "IfIndex of destination interface.
         Only the value of h3cCBQoSMirrorType is interface,
         can be set this node.
         For example: 1#11#111#1111 means the flow mirror
         destination ifindex is 1,11,111 and 1111.
         '#' is list separator for all IfIndex value.
        "
    ::= { h3cCBQoSMirrorCfgInfoEntry 2 }

h3cCBQoSMirrorVlanID OBJECT-TYPE
    SYNTAX Integer32 (0..4094)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Destination vlan of flow mirror,
         Only the value of h3cCBQoSMirrorType is vlan,
         can be set this node.
        "
    ::= { h3cCBQoSMirrorCfgInfoEntry 3 }

h3cCBQoSMirrorRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSMirrorCfgInfoEntry 4 }

--
-- nodes of h3cCBQoSNestCfgInfoTable
--
h3cCBQoSNestCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSNestCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Insert a service VLAN tag or customer VLAN tag into a packet.
        A VLAN tag contains the VLAN ID field and the 802.1p priority
        field.  Both the service VLAN ID and the customer VLAN ID can
        not be set at the same time.  One of them must be set.  The
        802.1p priority of the service VLAN tag and that of the
        customer VLAN tag can be set optionally.  However, both of
        them can not be set at the same time.  The new setting
        overwrites the previous one."
    ::= { h3cCBQoSBehaviorObjects 18 }

h3cCBQoSNestCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSNestCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "VLAN nesting table entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSNestCfgInfoTable 1 }

H3cCBQoSNestCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSNestServiceVlanID
            Integer32,
        h3cCBQoSNestServiceDot1pValue
            Integer32,
        h3cCBQoSNestCustomerVlanID
            Integer32,
        h3cCBQoSNestCustomerDot1pValue
            Integer32,
        h3cCBQoSNestRowStatus
            RowStatus
    }

h3cCBQoSNestServiceVlanID OBJECT-TYPE
    SYNTAX Integer32 (1..4094|65535)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "VLAN ID of the service VLAN tag to be inserted.  If the
        customer VLAN tag has been configured, 65535 is returned
        for the service VLAN ID.  The service VLAN ID can not be
        set to 65535."
    ::= { h3cCBQoSNestCfgInfoEntry 1 }

h3cCBQoSNestServiceDot1pValue OBJECT-TYPE
    SYNTAX Integer32 (0..7|65535)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "802.1p priority value in the service VLAN tag to be inserted.
        If the 802.1p priority is not set, 65535 is returned.  The
        802.1p priority value can not be set to 65535."
    ::= { h3cCBQoSNestCfgInfoEntry 2 }

h3cCBQoSNestCustomerVlanID OBJECT-TYPE
    SYNTAX Integer32 (1..4094|65535)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "VLAN ID of the customer VLAN tag to be inserted.  If the
        service VLAN tag has been configured, 65535 is returned for
        the customer VLAN ID.  The customer VLAN ID can not be set
        to 65535."
    ::= { h3cCBQoSNestCfgInfoEntry 3 }

h3cCBQoSNestCustomerDot1pValue OBJECT-TYPE
    SYNTAX Integer32 (0..7|65535)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "802.1p priority value in the customer VLAN tag to be inserted.
        If the 802.1p priority is not set, 65535 is returned.  The
        802.1p priority value can not be set to 65535."
    ::= { h3cCBQoSNestCfgInfoEntry 4 }

h3cCBQoSNestRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus"
    ::= { h3cCBQoSNestCfgInfoEntry 5 }

-- Nest Policy

h3cCBQoSNestPolicyCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSNestPolicyCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "This table is used for configuring nest policy."
    ::= { h3cCBQoSBehaviorObjects 19 }

h3cCBQoSNestPolicyCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSNestPolicyCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Nest policy configuration entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSNestPolicyCfgInfoTable 1 }

H3cCBQoSNestPolicyCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSNestPolicyName
            OCTET STRING,
        h3cCBQoSNestPolicyRowStatus
            RowStatus
    }

h3cCBQoSNestPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE(1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of the nested policy."
    ::= { h3cCBQoSNestPolicyCfgInfoEntry 1 }

h3cCBQoSNestPolicyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus"
    ::= { h3cCBQoSNestPolicyCfgInfoEntry 2 }

--
-- nodes of h3cCBQoSMirrorIfCfgInfoTable
--
h3cCBQoSMirrorIfCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSMirrorIfCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of flow mirroring to interface configuration information."
    ::= { h3cCBQoSBehaviorObjects 20 }

h3cCBQoSMirrorIfCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSMirrorIfCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Flow mirroring to interface configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex, h3cCBQoSMirrorIfMainIfIndex }
    ::= { h3cCBQoSMirrorIfCfgInfoTable 1 }

H3cCBQoSMirrorIfCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSMirrorIfMainIfIndex
            Integer32,
        h3cCBQoSMirrorIfMainIfStatus
            INTEGER,
        h3cCBQoSMirrorIfBackupIfIndex
            Integer32,
        h3cCBQoSMirrorIfBackupIfStatus
            INTEGER,
        h3cCBQoSMirrorIfRowStatus
            RowStatus
    }

h3cCBQoSMirrorIfMainIfIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "IfIndex of mirror interface."
    ::= { h3cCBQoSMirrorIfCfgInfoEntry 1 }

h3cCBQoSMirrorIfMainIfStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        inactive(1),
        active(2)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Status of main interface."
    DEFVAL {active}
    ::= { h3cCBQoSMirrorIfCfgInfoEntry 2 }

h3cCBQoSMirrorIfBackupIfIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "IfIndex of backup mirror interface."
    ::= { h3cCBQoSMirrorIfCfgInfoEntry 3 }

h3cCBQoSMirrorIfBackupIfStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        inactive(1),
        active(2)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Status of backup interface."
    DEFVAL {active}
    ::= { h3cCBQoSMirrorIfCfgInfoEntry 4 }

h3cCBQoSMirrorIfRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSMirrorIfCfgInfoEntry 5 }

--
-- nodes of h3cCBQoSColoredRemarkCfgTable
--
h3cCBQoSColoredRemarkCfgTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSColoredRemarkCfgEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of colored remarking feature configuration information."
    ::= { h3cCBQoSBehaviorObjects 21 }

h3cCBQoSColoredRemarkCfgEntry OBJECT-TYPE
    SYNTAX H3cCBQoSColoredRemarkCfgEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Colored remarking configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex, h3cCBQoSColoredRemarkType, h3cCBQoSColoredRemarkColor }
    ::= { h3cCBQoSColoredRemarkCfgTable 1 }

H3cCBQoSColoredRemarkCfgEntry ::=
    SEQUENCE
    {
        h3cCBQoSColoredRemarkType
            RemarkType,
        h3cCBQoSColoredRemarkColor
            INTEGER,
        h3cCBQoSColoredRemarkValue
            Integer32,
        h3cCBQoSColoredRemarkRowStatus
            RowStatus
    }

h3cCBQoSColoredRemarkType OBJECT-TYPE
    SYNTAX RemarkType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remark type."
    ::= { h3cCBQoSColoredRemarkCfgEntry 1 }

h3cCBQoSColoredRemarkColor OBJECT-TYPE
    SYNTAX INTEGER
    {
        green(1),
        yellow(2),
        red(3)
    }
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remark color."
    ::= { h3cCBQoSColoredRemarkCfgEntry 2 }

h3cCBQoSColoredRemarkValue OBJECT-TYPE
    SYNTAX Integer32 (0..4095)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Value to remark:
         for IpPrecedence: 0~7
         for Dscp: 0~63
         for MplsExp: 0~7
         for Vlan8021p: 0~7
         for AtmClp: 0~1
         for FrDe: 0~1
         for VlanID: 1~4094
         for QosLocalID: 1~4095
         for DropPrecedence: 0~2
         for LocalPrecedence: 0~7
         for TopMostVlanID: 1~4094
         for SecondMplsExp: 0~7
        "
    ::= { h3cCBQoSColoredRemarkCfgEntry 3 }

h3cCBQoSColoredRemarkRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus"
    ::= { h3cCBQoSColoredRemarkCfgEntry 4 }

--
-- nodes of h3cCBQoSPrimapCfgInfoTable
--
h3cCBQoSPrimapCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSPrimapCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of referencing priority map configuration information."
    ::= { h3cCBQoSBehaviorObjects 22 }

h3cCBQoSPrimapCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSPrimapCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Referencing priority map configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex, h3cCBQoSPrimapColorType, h3cCBQoSPrePriMapTableType }
    ::= { h3cCBQoSPrimapCfgInfoTable 1 }

H3cCBQoSPrimapCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSPrimapColorType
            INTEGER,
        h3cCBQoSPrePriMapTableType
            INTEGER,
        h3cCBQoSPrimapRowStatus
            RowStatus
    }

h3cCBQoSPrimapColorType OBJECT-TYPE
    SYNTAX INTEGER
    {
        noColorMap(1),
        colorMap(2)
    }
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Color type of priority map."
    ::= { h3cCBQoSPrimapCfgInfoEntry 1 }

h3cCBQoSPrePriMapTableType OBJECT-TYPE
    SYNTAX INTEGER
    {
        dot1pToLp(1),
        dot1pToDp(2),
        expToLp(3),
        dscpToLp(4),
        expToDp(5),
        dscpToDp(6),
        dscpToDot1p(7),
        dot1pToDscp(8),
        dscpToDscp(9),
        dscpToExp(10),
        expToDscp(11),
        expToDot1p(12),
        expToExp(13),
        lpToDot1p(14),
        dot1pToRpr(15),
        dscpToRpr(16),
        expToRpr(17),
        ippreToRpr(18),
        upToDot1p(19),
        upToDscp(20),
        upToExp(21),
        upToDp(22),
        upToLp(23),
        upToRpr(24),
        upToFc(25),
        lpTodscp(26),
        dot11eToLp(27),
        lpToDot11e(28),
        lpToLp(29),
        dot1pToExp(30),
        lpToExp(31),
        lpToDp(32),
        upToUp(33),
        dot1pToDot1p(34)
    }
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The type of pre-defined priority mapping table."
    ::= { h3cCBQoSPrimapCfgInfoEntry 2 }

h3cCBQoSPrimapRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus"
    ::= { h3cCBQoSPrimapCfgInfoEntry 3 }

--
-- nodes of h3cCBQoSColorMapDpCfgInfoTable
--
h3cCBQoSColorMapDpCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSColorMapDpCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of referencing color-map-DP action configuration information."
    ::= { h3cCBQoSBehaviorObjects 23 }

h3cCBQoSColorMapDpCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSColorMapDpCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Referencing color-map-DP action configuration information entry."
    INDEX { h3cCBQoSBehaviorIndex }
    ::= { h3cCBQoSColorMapDpCfgInfoTable 1 }

H3cCBQoSColorMapDpCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSColorMapDpEnable
            TruthValue,
        h3cCBQoSColorMapDpRowStatus
            RowStatus
    }

h3cCBQoSColorMapDpEnable OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Color-map-DP enable status."
    ::= { h3cCBQoSColorMapDpCfgInfoEntry 1 }

h3cCBQoSColorMapDpRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus"
    ::= { h3cCBQoSColorMapDpCfgInfoEntry 2 }

-- h3cCBQoSPolicyObjects

h3cCBQoSPolicyObjects OBJECT IDENTIFIER ::= { h3cCBQoSObjects 3 }

-- Traffic Policy Next Index

h3cCBQoSPolicyIndexNext OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "This object contains an appropriate value to be used for
         h3cCBQoSPolicyIndex when creating rows in the
         h3cCBQoSPolicyCfgInfoTable."
    ::= { h3cCBQoSPolicyObjects 1 }

-- Traffic Policy

h3cCBQoSPolicyCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSPolicyCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policy configuration information."
    ::= { h3cCBQoSPolicyObjects 2 }

h3cCBQoSPolicyCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSPolicyCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Traffic policy configuration information entry."
    INDEX { h3cCBQoSPolicyIndex }
    ::= { h3cCBQoSPolicyCfgInfoTable 1 }

H3cCBQoSPolicyCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSPolicyIndex
            Integer32,
        h3cCBQoSPolicyName
            OCTET STRING,
        h3cCBQoSPolicyClassCount
            Integer32,
        h3cCBQoSPolicyConfigMode
            INTEGER,
        h3cCBQoSPolicyType
            INTEGER,
        h3cCBQoSPolicyClassNextIndex
            Integer32,
        h3cCBQoSPolicyRowStatus
            RowStatus
    }

h3cCBQoSPolicyIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Index of Traffic Policy."
    ::= { h3cCBQoSPolicyCfgInfoEntry 1 }

h3cCBQoSPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of Traffic Policy."
    ::= { h3cCBQoSPolicyCfgInfoEntry 2 }

h3cCBQoSPolicyClassCount OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The counter of policy classes of policy."
    ::= { h3cCBQoSPolicyCfgInfoEntry 3 }

h3cCBQoSPolicyConfigMode OBJECT-TYPE
    SYNTAX INTEGER
    {
        unavailable(0),
        config(1),
        auto(2)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Configuration mode of Traffic Policy.
         Only hardware QoS support this node.
         'unavailable' is returned only when getting value from software QoS.
         'unavailable' can't be set."
    DEFVAL {config}
    ::= { h3cCBQoSPolicyCfgInfoEntry 4 }

h3cCBQoSPolicyType OBJECT-TYPE
    SYNTAX INTEGER
    {
        systemDefined(1),
        userDefined(2)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Type of policy."
    ::= { h3cCBQoSPolicyCfgInfoEntry 5 }

h3cCBQoSPolicyClassNextIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "This object contains an appropriate value to be used for
         h3cCBQoSPolicyClassIndex when creating rows in the
         h3cCBQoSPolicyClassCfgInfoTable.
        "
    ::= { h3cCBQoSPolicyCfgInfoEntry 6 }

h3cCBQoSPolicyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSPolicyCfgInfoEntry 7 }

-- Classifier-Behavior in QoS policy

h3cCBQoSPolicyClassCfgInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSPolicyClassCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS Policy classifier-behavior configuration information."
    ::= { h3cCBQoSPolicyObjects 3 }

h3cCBQoSPolicyClassCfgInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSPolicyClassCfgInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Traffic policy classifier-behavior configuration information entry."
    INDEX { h3cCBQoSPolicyIndex, h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSPolicyClassCfgInfoTable 1 }

H3cCBQoSPolicyClassCfgInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSPolicyClassIndex
            Integer32,
        h3cCBQoSPolicyClassClassifierIndex
            Integer32,
        h3cCBQoSPolicyClassClassifierName
            OCTET STRING,
        h3cCBQoSPolicyClassBehaviorIndex
            Integer32,
        h3cCBQoSPolicyClassBehaviorName
            OCTET STRING,
        h3cCBQoSPolicyClassPrecedence
            Integer32,
        h3cCBQoSPolicyClassRowStatus
            RowStatus,
        h3cCBQoSPolicyClassMode
            INTEGER,
        h3cCBQoSPolicyClassCfgOrder
            Integer32
    }

h3cCBQoSPolicyClassIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "PolicyClass Index in a QoS policy."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 1 }

h3cCBQoSPolicyClassClassifierIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Index of classifier applied by a policy.
         It should exist in h3cCBQoSClassifierCfgInfoTable."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 2 }

h3cCBQoSPolicyClassClassifierName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Name of classifier applied by a policy.
         It is corresponding to h3cCBQoSPolicyClassClassifierIndex."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 3 }

h3cCBQoSPolicyClassBehaviorIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Index of Behavior applied by a policy.
         It should exist in h3cCBQoSBehaviorCfgInfoTable."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 4 }

h3cCBQoSPolicyClassBehaviorName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Name of Behavior applied by a policy.
         It is corresponding to h3cCBQoSPolicyClassBehaviorIndex."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 5 }

h3cCBQoSPolicyClassPrecedence OBJECT-TYPE
    SYNTAX Integer32 (0..16383|2147483647)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The Precedence of the class in the policy.
         Only hardware QoS support this node.
         2147483647 is returned only when getting value from software QoS.
         2147483647 can't be set."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 6 }

h3cCBQoSPolicyClassRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 7 }

h3cCBQoSPolicyClassMode OBJECT-TYPE
    SYNTAX INTEGER
    {
        modeNo(1),
        modeDot1q(2),
        modeQppb(3),
        modeIpSourceGuard(4),
        modeVoiceVlan(5),
        modeDCBX(6)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Set the mode of the classifier-behavior association.  The
        default mode modeNo is a normal mode.
        modeDot1q indicates that the association is used for VLAN mapping.
        modeQppb indicates that the association is used for BGP routing policy.
        modeIpSourceGuard indicates that the association is used for packets
        undergo IP source guard.
        modeVoiceVlan indicates that the association is used for voice data
        packets.
        modeDCBX indicates that the association is used for DCBX.
        "
    DEFVAL {modeNo}
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 8 }

h3cCBQoSPolicyClassCfgOrder OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "A QoS policy contains multiple classifier-behavior
        associations.  A node indicates the configuration order of
        the corresponding classifier-behavior association."
    ::= { h3cCBQoSPolicyClassCfgInfoEntry 9 }

-- h3cCBQoSApplyPolicyObjects

h3cCBQoSApplyPolicyObjects OBJECT IDENTIFIER ::= { h3cCBQoSObjects 4 }

-- Policy Instance on interface Table

h3cCBQoSIfApplyPolicyTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policy instance."
    ::= { h3cCBQoSApplyPolicyObjects 1 }

h3cCBQoSIfApplyPolicyEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy applied on interface Configuration Information Entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex, h3cCBQoSIfApplyPolicyDirection }
    ::= { h3cCBQoSIfApplyPolicyTable 1 }

H3cCBQoSIfApplyPolicyEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfApplyPolicyIfIndex
            Integer32,
        h3cCBQoSIfApplyPolicyDirection
            DirectionType,
        h3cCBQoSIfApplyPolicyName
            OCTET STRING,
        h3cCBQoSIfApplyPolicyEnableDynamic
            INTEGER,
        h3cCBQoSIfApplyPolicyRowStatus
            RowStatus,
        h3cCBQoSIfApplyPolicyStatus
            INTEGER
    }

h3cCBQoSIfApplyPolicyIfIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "Interface Index, equal to ifIndex."
    ::= { h3cCBQoSIfApplyPolicyEntry 1 }

h3cCBQoSIfApplyPolicyDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "Policy direction:
         inbound (1)
         outbound (2)
        "
    ::= { h3cCBQoSIfApplyPolicyEntry 2 }

h3cCBQoSIfApplyPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of Traffic Policy."
    ::= { h3cCBQoSIfApplyPolicyEntry 3 }

h3cCBQoSIfApplyPolicyEnableDynamic OBJECT-TYPE
    SYNTAX INTEGER
    {
        unavailable(1),
        true(2),
        false(3)
    }
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "If the value of it is specified 'true',Enable dynamic qos policy.
         'unavailable' is returned if device don't support dynamic QoS.
         'unavailable' can't be set.
        "
    ::= { h3cCBQoSIfApplyPolicyEntry 4 }

h3cCBQoSIfApplyPolicyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSIfApplyPolicyEntry 5 }

h3cCBQoSIfApplyPolicyStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        proccessing(1),
        success(2),
        partialItemFailed(3)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Status of policy applied on interface."
    ::= { h3cCBQoSIfApplyPolicyEntry 6 }

-- Policy Instance on ATM PVC Table

h3cCBQoSAtmPvcApplyPolicyTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policy instance."
    ::= { h3cCBQoSApplyPolicyObjects 2 }

h3cCBQoSAtmPvcApplyPolicyEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy applied on ATM PVC Configuration Information Entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection }
    ::= { h3cCBQoSAtmPvcApplyPolicyTable 1 }

H3cCBQoSAtmPvcApplyPolicyEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcApplyPolicyIfIndex
            Integer32,
        h3cCBQoSAtmPvcApplyPolicyVPI
            Integer32,
        h3cCBQoSAtmPvcApplyPolicyVCI
            Integer32,
        h3cCBQoSAtmPvcApplyPolicyDirection
            DirectionType,
        h3cCBQoSAtmPvcApplyPolicyName
            OCTET STRING,
        h3cCBQoSAtmPvcApplyPolicyRowStatus
            RowStatus
    }

h3cCBQoSAtmPvcApplyPolicyIfIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "ATM Interface Index, equal to ifIndex."
    ::= { h3cCBQoSAtmPvcApplyPolicyEntry 1 }

h3cCBQoSAtmPvcApplyPolicyVPI OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "VPI value of ATM Interface."
    ::= { h3cCBQoSAtmPvcApplyPolicyEntry 2 }

h3cCBQoSAtmPvcApplyPolicyVCI OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "VCI value of ATM Interface."
    ::= { h3cCBQoSAtmPvcApplyPolicyEntry 3 }

h3cCBQoSAtmPvcApplyPolicyDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy direction:
         inbound (1)
         outbound (2)"
    ::= { h3cCBQoSAtmPvcApplyPolicyEntry 4 }

h3cCBQoSAtmPvcApplyPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of Traffic Policy."
    ::= { h3cCBQoSAtmPvcApplyPolicyEntry 5 }

h3cCBQoSAtmPvcApplyPolicyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus"
    ::= { h3cCBQoSAtmPvcApplyPolicyEntry 6 }

-- Policy Instance on VLAN Table

h3cCBQoSVlanApplyPolicyTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSVlanApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policy instance."
    ::= { h3cCBQoSApplyPolicyObjects 3 }

h3cCBQoSVlanApplyPolicyEntry OBJECT-TYPE
    SYNTAX H3cCBQoSVlanApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy applied on Ethernet VLAN Configuration Information Entry."
    INDEX { h3cCBQoSVlanApplyPolicyVlanid,
            h3cCBQoSVlanApplyPolicyDirection }
    ::= { h3cCBQoSVlanApplyPolicyTable 1 }

H3cCBQoSVlanApplyPolicyEntry ::=
    SEQUENCE
    {
        h3cCBQoSVlanApplyPolicyVlanid
            Integer32,
        h3cCBQoSVlanApplyPolicyDirection
            DirectionType,
        h3cCBQoSVlanApplyPolicyName
            OCTET STRING,
        h3cCBQoSVlanApplyPriority
            Integer32,
        h3cCBQoSVlanApplyPolicyRowStatus
            RowStatus,
        h3cCBQoSVlanApplyPolicyStatus
            INTEGER
    }

h3cCBQoSVlanApplyPolicyVlanid OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "Vlan of Ethernet Interface."
    ::= { h3cCBQoSVlanApplyPolicyEntry 1 }

h3cCBQoSVlanApplyPolicyDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "Policy direction:
         inbound (1)
         outbound (2)"
    ::= { h3cCBQoSVlanApplyPolicyEntry 2 }

h3cCBQoSVlanApplyPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of Traffic Policy."
    ::= { h3cCBQoSVlanApplyPolicyEntry 3 }

h3cCBQoSVlanApplyPriority OBJECT-TYPE
    SYNTAX Integer32 (0..4095)
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "The priority of policy."
    ::= { h3cCBQoSVlanApplyPolicyEntry 4 }

h3cCBQoSVlanApplyPolicyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSVlanApplyPolicyEntry 5 }

h3cCBQoSVlanApplyPolicyStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        proccessing(1),
        success(2),
        partialItemFailed(3)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Status of policy applied on VLAN."
    ::= { h3cCBQoSVlanApplyPolicyEntry 6 }

-- Policy Instance on FR class Table

h3cCBQoSFrClassApplyPolicyTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrClassApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policy instance."
    ::= { h3cCBQoSApplyPolicyObjects 4 }

h3cCBQoSFrClassApplyPolicyEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrClassApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy applied on FR class Configuration Information Entry."
    INDEX { h3cCBQoSFrClassApplyPolicyFrClassName,
            h3cCBQoSFrClassApplyPolicyDirection }
    ::= { h3cCBQoSFrClassApplyPolicyTable 1 }

H3cCBQoSFrClassApplyPolicyEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrClassApplyPolicyFrClassName
            OCTET STRING,
        h3cCBQoSFrClassApplyPolicyDirection
            DirectionType,
        h3cCBQoSFrClassApplyPolicyName
            OCTET STRING,
        h3cCBQoSFrClassApplyPolicyRowStatus
            RowStatus
    }

h3cCBQoSFrClassApplyPolicyFrClassName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The name of FR class."
    ::= { h3cCBQoSFrClassApplyPolicyEntry 1 }

h3cCBQoSFrClassApplyPolicyDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy direction:
         inbound (1)
         outbound (2)"
    ::= { h3cCBQoSFrClassApplyPolicyEntry 2 }

h3cCBQoSFrClassApplyPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of Traffic Policy."
    ::= { h3cCBQoSFrClassApplyPolicyEntry 3 }

h3cCBQoSFrClassApplyPolicyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSFrClassApplyPolicyEntry 4 }

-- Policy Instance on FR PVC Table

h3cCBQoSFrPvcApplyPolicyTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policy instance."
    ::= { h3cCBQoSApplyPolicyObjects 5 }

h3cCBQoSFrPvcApplyPolicyEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy applied on FR PVC Configuration Information Entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection }
    ::= { h3cCBQoSFrPvcApplyPolicyTable 1 }

H3cCBQoSFrPvcApplyPolicyEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcApplyPolicyIfIndex
            Integer32,
        h3cCBQoSFrPvcApplyPolicyDlciNum
            Integer32,
        h3cCBQoSFrPvcApplyPolicyDirection
            DirectionType,
        h3cCBQoSFrPvcApplyPolicyName
            OCTET STRING,
        h3cCBQoSFrPvcApplyPolicyRowStatus
            RowStatus
    }

h3cCBQoSFrPvcApplyPolicyIfIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Fr Interface Index, equal to ifIndex."
    ::= { h3cCBQoSFrPvcApplyPolicyEntry 1 }

h3cCBQoSFrPvcApplyPolicyDlciNum OBJECT-TYPE
    SYNTAX Integer32 (16..1007)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Fr DLCI number."
    ::= { h3cCBQoSFrPvcApplyPolicyEntry 2 }

h3cCBQoSFrPvcApplyPolicyDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy direction:
         inbound (1)
         outbound (2)"
    ::= { h3cCBQoSFrPvcApplyPolicyEntry 3 }

h3cCBQoSFrPvcApplyPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Name of Traffic Policy."
    ::= { h3cCBQoSFrPvcApplyPolicyEntry 4 }

h3cCBQoSFrPvcApplyPolicyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSFrPvcApplyPolicyEntry 5 }

-- Policy Instance on Global

h3cCBQoSGlobalApplyTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSGlobalApplyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policies applied globally.  A QoS policy
        applied globally takes effect on all ports of the device."
    ::= { h3cCBQoSApplyPolicyObjects 6 }

h3cCBQoSGlobalApplyEntry OBJECT-TYPE
    SYNTAX H3cCBQoSGlobalApplyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A global policy entry."
    INDEX { h3cCBQoSGlobalApplyDirection }
    ::= { h3cCBQoSGlobalApplyTable 1 }

H3cCBQoSGlobalApplyEntry ::=
    SEQUENCE
    {
        h3cCBQoSGlobalApplyDirection
            DirectionType,
        h3cCBQoSGlobalApplyName
            OCTET STRING,
        h3cCBQoSGlobalApplyRowStatus
            RowStatus,
        h3cCBQoSGlobalApplyStatus
            INTEGER
    }

h3cCBQoSGlobalApplyDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy direction:
         inbound (1)
         outbound (2)"
    ::= { h3cCBQoSGlobalApplyEntry 1 }

h3cCBQoSGlobalApplyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of a global policy."
    ::= { h3cCBQoSGlobalApplyEntry 2 }

h3cCBQoSGlobalApplyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSGlobalApplyEntry 3 }

h3cCBQoSGlobalApplyStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        proccessing(1),
        success(2),
        partialItemFailed(3)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Status of policy applied globally."
    ::= { h3cCBQoSGlobalApplyEntry 4 }

-- Policy Instance on controlPlane

h3cCBQoSCpApplyPolicyTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSCpApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS policies applied on control plane."
    ::= { h3cCBQoSApplyPolicyObjects 7 }

h3cCBQoSCpApplyPolicyEntry OBJECT-TYPE
    SYNTAX H3cCBQoSCpApplyPolicyEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy applied on control plane configuration information entry."
    INDEX { h3cCBQoSCpApplyPolicyChassis,
            h3cCBQoSCpApplyPolicySlot,
            h3cCBQoSCpApplyPolicyDirection }
    ::= { h3cCBQoSCpApplyPolicyTable 1 }

H3cCBQoSCpApplyPolicyEntry ::=
    SEQUENCE
    {
        h3cCBQoSCpApplyPolicyChassis
            Unsigned32,
        h3cCBQoSCpApplyPolicySlot
            Unsigned32,
        h3cCBQoSCpApplyPolicyDirection
            DirectionType,
        h3cCBQoSCpApplyPolicyName
            OCTET STRING,
        h3cCBQoSCpApplyPolicyStatus
            INTEGER,
        h3cCBQoSCpApplyRowStatus
            RowStatus
    }

h3cCBQoSCpApplyPolicyChassis OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Chassis number."
    ::= { h3cCBQoSCpApplyPolicyEntry 1 }

h3cCBQoSCpApplyPolicySlot OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Slot number."
    ::= { h3cCBQoSCpApplyPolicyEntry 2 }

h3cCBQoSCpApplyPolicyDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy direction:
         inbound (1)
         outbound (2)"
    ::= { h3cCBQoSCpApplyPolicyEntry 3 }

h3cCBQoSCpApplyPolicyName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Name of traffic policy."
    ::= { h3cCBQoSCpApplyPolicyEntry 4 }

h3cCBQoSCpApplyPolicyStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        proccessing(1),
        success(2),
        partialItemFailed(3)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Status of policy applied on control plane."
    ::= { h3cCBQoSCpApplyPolicyEntry 5 }

h3cCBQoSCpApplyRowStatus OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "RowStatus."
    ::= { h3cCBQoSCpApplyPolicyEntry 6 }

-- Running statistics information

h3cCBQoSApplyPolicyStaticsObjects OBJECT IDENTIFIER ::= { h3cCBQoSObjects 5 }

-- Interface: policy Running statistics information

h3cCBQoSIfStaticsObjects OBJECT IDENTIFIER ::= { h3cCBQoSApplyPolicyStaticsObjects 1 }

-- Interface CBQ statistics

h3cCBQoSIfCbqRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of interface CBQ Running statistics.
         When policy using queue behavior is applied on
         interface the interface will using Class Based Queuing."
    ::= { h3cCBQoSIfStaticsObjects 1 }

h3cCBQoSIfCbqRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Interface CBQ statistics entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex }
    ::= { h3cCBQoSIfCbqRunInfoTable 1 }

H3cCBQoSIfCbqRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfCbqQueueSize
            Integer32,
        h3cCBQoSIfCbqDiscard
            Counter64,
        h3cCBQoSIfCbqEfQueueSize
            Integer32,
        h3cCBQoSIfCbqAfQueueSize
            Integer32,
        h3cCBQoSIfCbqBeQueueSize
            Integer32,
        h3cCBQoSIfCbqBeActiveQueueNum
            Integer32,
        h3cCBQoSIfCbqBeMaxActiveQueueNum
            Integer32,
        h3cCBQoSIfCbqBeTotalQueueNum
            Integer32,
        h3cCBQoSIfCbqAfAllocatedQueueNum
            Integer32
    }

h3cCBQoSIfCbqQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of CBQ queue"
    ::= { h3cCBQoSIfCbqRunInfoEntry 1 }

h3cCBQoSIfCbqDiscard OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of discarded packets which couldn't be enqueued."
    ::= { h3cCBQoSIfCbqRunInfoEntry 2 }

h3cCBQoSIfCbqEfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of EF queue."
    ::= { h3cCBQoSIfCbqRunInfoEntry 3 }

h3cCBQoSIfCbqAfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of AF queue."
    ::= { h3cCBQoSIfCbqRunInfoEntry 4 }

h3cCBQoSIfCbqBeQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of BE queue."
    ::= { h3cCBQoSIfCbqRunInfoEntry 5 }

h3cCBQoSIfCbqBeActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The Packet number of Active BE Queue."
    ::= { h3cCBQoSIfCbqRunInfoEntry 6 }

h3cCBQoSIfCbqBeMaxActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The max Packet number of Active BE Queue."
    ::= { h3cCBQoSIfCbqRunInfoEntry 7 }

h3cCBQoSIfCbqBeTotalQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total Packet number of BE Queue."
    ::= { h3cCBQoSIfCbqRunInfoEntry 8 }

h3cCBQoSIfCbqAfAllocatedQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The Allocated Packet number of AF Queue."
    ::= { h3cCBQoSIfCbqRunInfoEntry 9 }

-- Class match statistics

h3cCBQoSIfClassMatchRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for matching a classifier
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSIfStaticsObjects 2 }

h3cCBQoSIfClassMatchRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Classifier's matching statistics information entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSIfClassMatchRunInfoTable 1 }

H3cCBQoSIfClassMatchRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfClassMatchedPackets
            Counter64,
        h3cCBQoSIfClassMatchedBytes
            Counter64,
        h3cCBQoSIfClassAverageRate
            Counter64
    }

h3cCBQoSIfClassMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matching a class in a QoS policy."
    ::= { h3cCBQoSIfClassMatchRunInfoEntry 1 }

h3cCBQoSIfClassMatchedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matching a class in a QoS policy.
         Only software QoS support this node."
    ::= { h3cCBQoSIfClassMatchRunInfoEntry 2 }

h3cCBQoSIfClassAverageRate OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average rate matching a class of the last 5 minutes."
    ::= { h3cCBQoSIfClassMatchRunInfoEntry 3 }

-- CAR statistics

h3cCBQoSIfCarRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for CAR
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSIfStaticsObjects 3 }

h3cCBQoSIfCarRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "CAR statistics information entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSIfCarRunInfoTable 1 }

H3cCBQoSIfCarRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfCarGreenPackets
            Counter64,
        h3cCBQoSIfCarGreenBytes
            Counter64,
        h3cCBQoSIfCarRedPackets
            Counter64,
        h3cCBQoSIfCarRedBytes
            Counter64,
        h3cCBQoSIfCarYellowPackets
            Counter64,
        h3cCBQoSIfCarYellowBytes
            Counter64
    }

h3cCBQoSIfCarGreenPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of green packets."
    ::= { h3cCBQoSIfCarRunInfoEntry 1 }

h3cCBQoSIfCarGreenBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of green bytes."
    ::= { h3cCBQoSIfCarRunInfoEntry 2 }

h3cCBQoSIfCarRedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of red packets."
    ::= { h3cCBQoSIfCarRunInfoEntry 3 }

h3cCBQoSIfCarRedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of red bytes."
    ::= { h3cCBQoSIfCarRunInfoEntry 4 }

h3cCBQoSIfCarYellowPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of yellow packets."
    ::= { h3cCBQoSIfCarRunInfoEntry 5 }

h3cCBQoSIfCarYellowBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of yellow bytes."
    ::= { h3cCBQoSIfCarRunInfoEntry 6 }

-- GTS statistics

h3cCBQoSIfGtsRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for GTS
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSIfStaticsObjects 4 }

h3cCBQoSIfGtsRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "GTS statistics entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSIfGtsRunInfoTable 1 }

H3cCBQoSIfGtsRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfGtsPassedPackets
            Counter64,
        h3cCBQoSIfGtsPassedBytes
            Counter64,
        h3cCBQoSIfGtsDiscardedPackets
            Counter64,
        h3cCBQoSIfGtsDiscardedBytes
            Counter64,
        h3cCBQoSIfGtsDelayedPackets
            Counter64,
        h3cCBQoSIfGtsDelayedBytes
            Counter64,
        h3cCBQoSIfGtsQueueSize
            Integer32
    }

h3cCBQoSIfGtsPassedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets passed by GTS."
    ::= { h3cCBQoSIfGtsRunInfoEntry 1 }

h3cCBQoSIfGtsPassedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes passed by GTS."
    ::= { h3cCBQoSIfGtsRunInfoEntry 2 }

h3cCBQoSIfGtsDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discarded by GTS."
    ::= { h3cCBQoSIfGtsRunInfoEntry 3 }

h3cCBQoSIfGtsDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discarded by GTS."
    ::= { h3cCBQoSIfGtsRunInfoEntry 4 }

h3cCBQoSIfGtsDelayedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets delayed by GTS."
    ::= { h3cCBQoSIfGtsRunInfoEntry 5 }

h3cCBQoSIfGtsDelayedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes delayed by GTS."
    ::= { h3cCBQoSIfGtsRunInfoEntry 6 }

h3cCBQoSIfGtsQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of GTS queue."
    ::= { h3cCBQoSIfGtsRunInfoEntry 7 }

-- Remark statistics

h3cCBQoSIfRemarkRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for remarking
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSIfStaticsObjects 5 }

h3cCBQoSIfRemarkRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remarking statistics entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSIfRemarkRunInfoTable 1 }

H3cCBQoSIfRemarkRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfRemarkedPackets
            Counter64
    }

h3cCBQoSIfRemarkedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets remarked."
    ::= { h3cCBQoSIfRemarkRunInfoEntry 1 }

-- Queue statistics

h3cCBQoSIfQueueRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for queue
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSIfStaticsObjects 6 }

h3cCBQoSIfQueueRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Queue statistics entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSIfQueueRunInfoTable 1 }

H3cCBQoSIfQueueRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfQueueMatchedPackets
            Counter64,
        h3cCBQoSIfQueueMatchedBytes
            Counter64,
        h3cCBQoSIfQueueEnqueuedPackets
            Counter64,
        h3cCBQoSIfQueueEnqueuedBytes
            Counter64,
        h3cCBQoSIfQueueDiscardedPackets
            Counter64,
        h3cCBQoSIfQueueDiscardedBytes
            Counter64
    }

h3cCBQoSIfQueueMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matched to enqueue."
    ::= { h3cCBQoSIfQueueRunInfoEntry 1 }

h3cCBQoSIfQueueMatchedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matched to enqueue."
    ::= { h3cCBQoSIfQueueRunInfoEntry 2 }

h3cCBQoSIfQueueEnqueuedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets enqueued."
    ::= { h3cCBQoSIfQueueRunInfoEntry 3 }

h3cCBQoSIfQueueEnqueuedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes enqueued."
    ::= { h3cCBQoSIfQueueRunInfoEntry 4 }

h3cCBQoSIfQueueDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discarded when enqueued by discard method."
    ::= { h3cCBQoSIfQueueRunInfoEntry 5 }

h3cCBQoSIfQueueDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discarded when enqueued by discard method."
    ::= { h3cCBQoSIfQueueRunInfoEntry 6 }

-- WRED statistics

h3cCBQoSIfWredRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for WRED
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSIfStaticsObjects 7 }

h3cCBQoSIfWredRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "WRED statistics entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex,
            h3cCBQoSWredClassValue }
    ::= { h3cCBQoSIfWredRunInfoTable 1 }

H3cCBQoSIfWredRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfWredRandomDiscardedPackets
            Counter64,
        h3cCBQoSIfWredTailDiscardedPackets
            Counter64
    }

h3cCBQoSIfWredRandomDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets that random-discarded by WRED."
    ::= { h3cCBQoSIfWredRunInfoEntry 1 }

h3cCBQoSIfWredTailDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets that tail-discarded by WRED."
    ::= { h3cCBQoSIfWredRunInfoEntry 2 }

--
-- nodes of h3cCBQoSIfAccountingRunInfoTable
--
h3cCBQoSIfAccountingRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIfAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for account
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSIfStaticsObjects 8 }

h3cCBQoSIfAccountingRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIfAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Account statistics entry."
    INDEX { h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex
          }
    ::= { h3cCBQoSIfAccountingRunInfoTable 1 }

H3cCBQoSIfAccountingRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSIfAccountingPackets
            Counter64,
        h3cCBQoSIfAccountingBytes
            Counter64
    }

h3cCBQoSIfAccountingPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets."
    ::= { h3cCBQoSIfAccountingRunInfoEntry 1 }

h3cCBQoSIfAccountingBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes."
    ::= { h3cCBQoSIfAccountingRunInfoEntry 2 }

-- ATM Interface PVC: policy Running statistics information

h3cCBQoSAtmPvcStaticsObjects OBJECT IDENTIFIER ::= { h3cCBQoSApplyPolicyStaticsObjects 2 }

-- ATM PVC CBQ statistics

h3cCBQoSAtmPvcCbqRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of ATM PVC CBQ Running statistics.
         When policy using queue behavior is applied on
         ATM PVC.  ATM PVC will using Class Based Queuing."
    ::= { h3cCBQoSAtmPvcStaticsObjects 1 }

h3cCBQoSAtmPvcCbqRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "FR PVC CBQ statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI }
    ::= { h3cCBQoSAtmPvcCbqRunInfoTable 1 }

H3cCBQoSAtmPvcCbqRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcCbqQueueSize
            Integer32,
        h3cCBQoSAtmPvcCbqDiscard
            Counter64,
        h3cCBQoSAtmPvcCbqEfQueueSize
            Integer32,
        h3cCBQoSAtmPvcCbqAfQueueSize
            Integer32,
        h3cCBQoSAtmPvcCbqBeQueueSize
            Integer32,
        h3cCBQoSAtmPvcCbqBeActiveQueueNum
            Integer32,
        h3cCBQoSAtmPvcCbqBeMaxActiveQueueNum
            Integer32,
        h3cCBQoSAtmPvcCbqBeTotalQueueNum
            Integer32,
        h3cCBQoSAtmPvcCbqAfAllocatedQueueNum
            Integer32
    }

h3cCBQoSAtmPvcCbqQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of CBQ queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 1 }

h3cCBQoSAtmPvcCbqDiscard OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of discarded packets which couldn't be enqueued."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 2 }

h3cCBQoSAtmPvcCbqEfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of EF queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 3 }

h3cCBQoSAtmPvcCbqAfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of AF queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 4 }

h3cCBQoSAtmPvcCbqBeQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of BE queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 5 }

h3cCBQoSAtmPvcCbqBeActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The packet number of Active Be Queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 6 }

h3cCBQoSAtmPvcCbqBeMaxActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The max packet number of Active Be Queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 7 }

h3cCBQoSAtmPvcCbqBeTotalQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total packet number of Be Queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 8 }

h3cCBQoSAtmPvcCbqAfAllocatedQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The Allocated packet number of AF Queue."
    ::= { h3cCBQoSAtmPvcCbqRunInfoEntry 9 }

-- Class match statistics

h3cCBQoSAtmPvcClassMatchRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for matching a classifier
         in a QoS policy applied on ATM PVC."
    ::= { h3cCBQoSAtmPvcStaticsObjects 2 }

h3cCBQoSAtmPvcClassMatchRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Classifier matching statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSAtmPvcClassMatchRunInfoTable 1 }

H3cCBQoSAtmPvcClassMatchRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcClassMatchPackets
            Counter64,
        h3cCBQoSAtmPvcClassMatchBytes
            Counter64,
        h3cCBQoSAtmPvcClassAverageRate
            Integer32
    }

h3cCBQoSAtmPvcClassMatchPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matching a class in a QoS policy."
    ::= { h3cCBQoSAtmPvcClassMatchRunInfoEntry 1 }

h3cCBQoSAtmPvcClassMatchBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matching a class in a QoS policy."
    ::= { h3cCBQoSAtmPvcClassMatchRunInfoEntry 2 }

h3cCBQoSAtmPvcClassAverageRate OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average rate matching a class in the last 5 minutes."
    ::= { h3cCBQoSAtmPvcClassMatchRunInfoEntry 3 }

-- CAR statistics

h3cCBQoSAtmPvcCarRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for CAR
         in a QoS policy applied on ATM PVC."
    ::= { h3cCBQoSAtmPvcStaticsObjects 3 }

h3cCBQoSAtmPvcCarRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "CAR statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSAtmPvcCarRunInfoTable 1 }

H3cCBQoSAtmPvcCarRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcCarConformPackets
            Counter64,
        h3cCBQoSAtmPvcCarConformBytes
            Counter64,
        h3cCBQoSAtmPvcCarExceedPackets
            Counter64,
        h3cCBQoSAtmPvcCarExceedBytes
            Counter64
    }

h3cCBQoSAtmPvcCarConformPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets that conforming specified CIR."
    ::= { h3cCBQoSAtmPvcCarRunInfoEntry 1 }

h3cCBQoSAtmPvcCarConformBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes that conforming specified CIR."
    ::= { h3cCBQoSAtmPvcCarRunInfoEntry 2 }

h3cCBQoSAtmPvcCarExceedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets exceeded CIR."
    ::= { h3cCBQoSAtmPvcCarRunInfoEntry 3 }

h3cCBQoSAtmPvcCarExceedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes exceeded CIR."
    ::= { h3cCBQoSAtmPvcCarRunInfoEntry 4 }

-- GTS statistics

h3cCBQoSAtmPvcGtsRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for GTS
         in a QoS policy applied on ATM PVC."
    ::= { h3cCBQoSAtmPvcStaticsObjects 4 }

h3cCBQoSAtmPvcGtsRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "GTS statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSAtmPvcGtsRunInfoTable 1 }

H3cCBQoSAtmPvcGtsRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcGtsPassedPackets
            Counter64,
        h3cCBQoSAtmPvcGtsPassedBytes
            Counter64,
        h3cCBQoSAtmPvcGtsDiscardedPackets
            Counter64,
        h3cCBQoSAtmPvcGtsDiscardedBytes
            Counter64,
        h3cCBQoSAtmPvcGtsDelayedPackets
            Counter64,
        h3cCBQoSAtmPvcGtsDelayedBytes
            Counter64,
        h3cCBQoSAtmPvcGtsQueueSize
            Integer32
    }

h3cCBQoSAtmPvcGtsPassedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets passed by GTS."
    ::= { h3cCBQoSAtmPvcGtsRunInfoEntry 1 }

h3cCBQoSAtmPvcGtsPassedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes passed by GTS."
    ::= { h3cCBQoSAtmPvcGtsRunInfoEntry 2 }

h3cCBQoSAtmPvcGtsDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discarded by GTS."
    ::= { h3cCBQoSAtmPvcGtsRunInfoEntry 3 }

h3cCBQoSAtmPvcGtsDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discarded by GTS."
    ::= { h3cCBQoSAtmPvcGtsRunInfoEntry 4 }

h3cCBQoSAtmPvcGtsDelayedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets delayed by GTS."
    ::= { h3cCBQoSAtmPvcGtsRunInfoEntry 5 }

h3cCBQoSAtmPvcGtsDelayedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes delayed by GTS."
    ::= { h3cCBQoSAtmPvcGtsRunInfoEntry 6 }

h3cCBQoSAtmPvcGtsQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "packet number of GTS queue."
    ::= { h3cCBQoSAtmPvcGtsRunInfoEntry 7 }

-- Remark statistics

h3cCBQoSAtmPvcRemarkRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for remarking
         in a QoS policy applied on ATM PVC."
    ::= { h3cCBQoSAtmPvcStaticsObjects 5 }

h3cCBQoSAtmPvcRemarkRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remarking statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSAtmPvcRemarkRunInfoTable 1 }

H3cCBQoSAtmPvcRemarkRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcRemarkedPackets
            Counter64
    }

h3cCBQoSAtmPvcRemarkedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets remarked."
    ::= { h3cCBQoSAtmPvcRemarkRunInfoEntry 1 }

-- Queue statistics

h3cCBQoSAtmPvcQueueRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for queue
         in a QoS policy applied on ATM PVC."
    ::= { h3cCBQoSAtmPvcStaticsObjects 6 }

h3cCBQoSAtmPvcQueueRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Queue statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSAtmPvcQueueRunInfoTable 1}

H3cCBQoSAtmPvcQueueRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcQueueMatchedPackets
            Counter64,
        h3cCBQoSAtmPvcQueueMatchedBytes
            Counter64,
        h3cCBQoSAtmPvcQueueEnqueuedPackets
            Counter64,
        h3cCBQoSAtmPvcQueueEnqueuedBytes
            Counter64,
        h3cCBQoSAtmPvcQueueDiscardedPackets
            Counter64,
        h3cCBQoSAtmPvcQueueDiscardedBytes
            Counter64
    }

h3cCBQoSAtmPvcQueueMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matched to enqueue."
    ::= { h3cCBQoSAtmPvcQueueRunInfoEntry 1 }

h3cCBQoSAtmPvcQueueMatchedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matched to enqueue."
    ::= { h3cCBQoSAtmPvcQueueRunInfoEntry 2 }

h3cCBQoSAtmPvcQueueEnqueuedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets enqueued."
    ::= { h3cCBQoSAtmPvcQueueRunInfoEntry 3 }

h3cCBQoSAtmPvcQueueEnqueuedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes enqueued."
    ::= { h3cCBQoSAtmPvcQueueRunInfoEntry 4 }

h3cCBQoSAtmPvcQueueDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discard when enqueued by discard method."
    ::= { h3cCBQoSAtmPvcQueueRunInfoEntry 5 }

h3cCBQoSAtmPvcQueueDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discard when enqueued by discard method."
    ::= { h3cCBQoSAtmPvcQueueRunInfoEntry 6 }

-- WRED statistics

h3cCBQoSAtmPvcWredRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for WRED
         in a QoS policy applied on ATM PVC."
    ::= { h3cCBQoSAtmPvcStaticsObjects 7 }

h3cCBQoSAtmPvcWredRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "WRED statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex,
            h3cCBQoSWredClassValue }
    ::= { h3cCBQoSAtmPvcWredRunInfoTable 1 }

H3cCBQoSAtmPvcWredRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcWredRandomDiscardedPackets
            Counter64,
        h3cCBQoSAtmPvcWredTailDiscardedPackets
            Counter64
    }

h3cCBQoSAtmPvcWredRandomDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets randomly discarded by WRED."
    ::= { h3cCBQoSAtmPvcWredRunInfoEntry 1 }

h3cCBQoSAtmPvcWredTailDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets tail-discarded by WRED."
    ::= { h3cCBQoSAtmPvcWredRunInfoEntry 2 }

--
-- nodes of h3cCBQoSAtmPvcAccountingRunInfoTable
--
h3cCBQoSAtmPvcAccountingRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAtmPvcAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for account
         in a QoS policy applied on the ATM PVC."
    ::= { h3cCBQoSAtmPvcStaticsObjects 8 }

h3cCBQoSAtmPvcAccountingRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAtmPvcAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Account statistics entry."
    INDEX { h3cCBQoSAtmPvcApplyPolicyIfIndex,
            h3cCBQoSAtmPvcApplyPolicyVPI,
            h3cCBQoSAtmPvcApplyPolicyVCI,
            h3cCBQoSAtmPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex,
            h3cCBQoSWredClassValue
          }
    ::= { h3cCBQoSAtmPvcAccountingRunInfoTable 1 }

H3cCBQoSAtmPvcAccountingRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAtmPvcAccountingPackets
            Counter64,
        h3cCBQoSAtmPvcAccountingBytes
            Counter64
    }

h3cCBQoSAtmPvcAccountingPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets."
    ::= { h3cCBQoSAtmPvcAccountingRunInfoEntry 1 }

h3cCBQoSAtmPvcAccountingBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes."
    ::= { h3cCBQoSAtmPvcAccountingRunInfoEntry 2 }

-- FR Interface PVC: policy Running statistics information

h3cCBQoSFrPvcStaticsObjects OBJECT IDENTIFIER ::= { h3cCBQoSApplyPolicyStaticsObjects 3 }

-- FR PVC CBQ statistics

h3cCBQoSFrPvcCbqRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of FR PVC CBQ Running statistics.
         When policy using queue behavior is applied on FR PVC
         will using Class Based Queuing."
    ::= { h3cCBQoSFrPvcStaticsObjects 1 }

h3cCBQoSFrPvcCbqRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "FR PVC CBQ statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex, h3cCBQoSFrPvcApplyPolicyDlciNum }
    ::= { h3cCBQoSFrPvcCbqRunInfoTable 1 }

H3cCBQoSFrPvcCbqRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcCbqQueueSize
            Integer32,
        h3cCBQoSFrPvcCbqDiscard
            Counter64,
        h3cCBQoSFrPvcCbqEfQueueSize
            Integer32,
        h3cCBQoSFrPvcCbqAfQueueSize
            Integer32,
        h3cCBQoSFrPvcCbqBeQueueSize
            Integer32,
        h3cCBQoSFrPvcCbqBeActiveQueueNum
            Integer32,
        h3cCBQoSFrPvcCbqBeMaxActiveQueueNum
            Integer32,
        h3cCBQoSFrPvcCbqBeTotalQueueNum
            Integer32,
        h3cCBQoSFrPvcCbqAfAllocatedQueueNum
            Integer32
    }

h3cCBQoSFrPvcCbqQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of CBQ queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 1 }

h3cCBQoSFrPvcCbqDiscard OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of discarded packets which could not be enqueued."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 2 }

h3cCBQoSFrPvcCbqEfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of EF queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 3 }

h3cCBQoSFrPvcCbqAfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of AF queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 4 }

h3cCBQoSFrPvcCbqBeQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of BE queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 5 }

h3cCBQoSFrPvcCbqBeActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The packet number of Active Be Queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 6 }

h3cCBQoSFrPvcCbqBeMaxActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The max packet number of Active Be Queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 7 }

h3cCBQoSFrPvcCbqBeTotalQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total packet number of Be Queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 8 }

h3cCBQoSFrPvcCbqAfAllocatedQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The Allocated packet number of AF Queue."
    ::= { h3cCBQoSFrPvcCbqRunInfoEntry 9 }

-- Class match statistics

h3cCBQoSFrPvcClassMatchRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for matching a classifier
         in a QoS policy applied on FR PVC."
    ::= { h3cCBQoSFrPvcStaticsObjects 2 }

h3cCBQoSFrPvcClassMatchRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Classifier matching statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSFrPvcClassMatchRunInfoTable 1 }

H3cCBQoSFrPvcClassMatchRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcClassMatchedPackets
            Counter64,
        h3cCBQoSFrPvcClassMatchedBytes
            Counter64,
        h3cCBQoSFrPvcClassAverageRate
            Counter64
    }

h3cCBQoSFrPvcClassMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matching a class in a QoS policy."
    ::= { h3cCBQoSFrPvcClassMatchRunInfoEntry 1 }

h3cCBQoSFrPvcClassMatchedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matching a class in a QoS policy."
    ::= { h3cCBQoSFrPvcClassMatchRunInfoEntry 2 }

h3cCBQoSFrPvcClassAverageRate OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average rate matching a class of the last 5 minutes."
    ::= { h3cCBQoSFrPvcClassMatchRunInfoEntry 3 }

-- CAR statistics

h3cCBQoSFrPvcCarRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for CAR
         in a QoS policy applied on FR PVC."
    ::= { h3cCBQoSFrPvcStaticsObjects 3 }

h3cCBQoSFrPvcCarRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "CAR statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSFrPvcCarRunInfoTable 1 }

H3cCBQoSFrPvcCarRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcCarConformPackets
            Counter64,
        h3cCBQoSFrPvcCarConformBytes
            Counter64,
        h3cCBQoSFrPvcCarExceedPackets
            Counter64,
        h3cCBQoSFrPvcCarExceedBytes
            Counter64
    }

h3cCBQoSFrPvcCarConformPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets conform CIR."
    ::= { h3cCBQoSFrPvcCarRunInfoEntry 1 }

h3cCBQoSFrPvcCarConformBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes conform CIR."
    ::= { h3cCBQoSFrPvcCarRunInfoEntry 2 }

h3cCBQoSFrPvcCarExceedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets exceed CIR."
    ::= { h3cCBQoSFrPvcCarRunInfoEntry 3 }

h3cCBQoSFrPvcCarExceedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes exceed CIR."
    ::= { h3cCBQoSFrPvcCarRunInfoEntry 4 }

-- GTS statistics

h3cCBQoSFrPvcGtsRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for GTS
         in a QoS policy applied on FR PVC."
    ::= { h3cCBQoSFrPvcStaticsObjects 4 }

h3cCBQoSFrPvcGtsRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "GTS statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSFrPvcGtsRunInfoTable 1 }

H3cCBQoSFrPvcGtsRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcGtsPassedPackets
            Counter64,
        h3cCBQoSFrPvcGtsPassedBytes
            Counter64,
        h3cCBQoSFrPvcGtsDiscardedPackets
            Counter64,
        h3cCBQoSFrPvcGtsDiscardedBytes
            Counter64,
        h3cCBQoSFrPvcGtsDelayedPackets
            Counter64,
        h3cCBQoSFrPvcGtsDelayedBytes
            Counter64,
        h3cCBQoSFrPvcGtsQueueSize
            Integer32
    }

h3cCBQoSFrPvcGtsPassedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets passed by GTS."
    ::= { h3cCBQoSFrPvcGtsRunInfoEntry 1 }

h3cCBQoSFrPvcGtsPassedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes passed by GTS."
    ::= { h3cCBQoSFrPvcGtsRunInfoEntry 2 }

h3cCBQoSFrPvcGtsDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discarded by GTS."
    ::= { h3cCBQoSFrPvcGtsRunInfoEntry 3 }

h3cCBQoSFrPvcGtsDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discarded by GTS."
    ::= { h3cCBQoSFrPvcGtsRunInfoEntry 4 }

h3cCBQoSFrPvcGtsDelayedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets delayed by GTS."
    ::= { h3cCBQoSFrPvcGtsRunInfoEntry 5 }

h3cCBQoSFrPvcGtsDelayedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes delayed by GTS."
    ::= { h3cCBQoSFrPvcGtsRunInfoEntry 6 }

h3cCBQoSFrPvcGtsQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Packet number of GTS queue."
    ::= { h3cCBQoSFrPvcGtsRunInfoEntry 7 }

-- Remark statistics

h3cCBQoSFrPvcRemarkRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for remarking
         in a QoS policy applied on FR PVC."
    ::= { h3cCBQoSFrPvcStaticsObjects 5 }

h3cCBQoSFrPvcRemarkRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remarking statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSFrPvcRemarkRunInfoTable 1 }

H3cCBQoSFrPvcRemarkRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcRemarkedPackets
            Counter64
    }

h3cCBQoSFrPvcRemarkedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets remarked."
    ::= { h3cCBQoSFrPvcRemarkRunInfoEntry 1 }

-- Queue statistics

h3cCBQoSFrPvcQueueRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for queue
        in a QoS policy applied on FR PVC."
    ::= { h3cCBQoSFrPvcStaticsObjects 6 }

h3cCBQoSFrPvcQueueRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Queue statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSFrPvcQueueRunInfoTable 1 }

H3cCBQoSFrPvcQueueRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcQueueMatchedPackets
            Counter64,
        h3cCBQoSFrPvcQueueMatchedBytes
            Counter64,
        h3cCBQoSFrPvcQueueEnqueuedPackets
            Counter64,
        h3cCBQoSFrPvcQueueEnqueuedBytes
            Counter64,
        h3cCBQoSFrPvcQueueDiscardedPackets
            Counter64,
        h3cCBQoSFrPvcQueueDiscardedBytes
            Counter64
    }

h3cCBQoSFrPvcQueueMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matched to enqueue."
    ::= { h3cCBQoSFrPvcQueueRunInfoEntry 1 }

h3cCBQoSFrPvcQueueMatchedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matched to en-queue."
    ::= { h3cCBQoSFrPvcQueueRunInfoEntry 2 }

h3cCBQoSFrPvcQueueEnqueuedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets en-queued."
    ::= { h3cCBQoSFrPvcQueueRunInfoEntry 3 }

h3cCBQoSFrPvcQueueEnqueuedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes enqueued."
    ::= { h3cCBQoSFrPvcQueueRunInfoEntry 4 }

h3cCBQoSFrPvcQueueDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discarded when enqueued by discard method."
    ::= { h3cCBQoSFrPvcQueueRunInfoEntry 5 }

h3cCBQoSFrPvcQueueDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discarded when enqueued by discard method."
    ::= { h3cCBQoSFrPvcQueueRunInfoEntry 6 }

-- WRED statistics

h3cCBQoSFrPvcWredRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for WRED
         in a QoS policy applied on FR PVC.
        "
    ::= { h3cCBQoSFrPvcStaticsObjects 7 }

h3cCBQoSFrPvcWredRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "WRED statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex,
            h3cCBQoSWredClassValue }
    ::= { h3cCBQoSFrPvcWredRunInfoTable 1 }

H3cCBQoSFrPvcWredRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcWredRandomDiscardedPackets
            Counter64,
        h3cCBQoSFrPvcWredTailDiscardedPackets
            Counter64
    }

h3cCBQoSFrPvcWredRandomDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets randomly discarded by WRED."
    ::= { h3cCBQoSFrPvcWredRunInfoEntry 1 }

h3cCBQoSFrPvcWredTailDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets tail-discarded by WRED."
    ::= { h3cCBQoSFrPvcWredRunInfoEntry 2 }

--
-- nodes of h3cCBQoSFrPvcAccountingRunInfoTable
--
h3cCBQoSFrPvcAccountingRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSFrPvcAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for account
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSFrPvcStaticsObjects 8 }

h3cCBQoSFrPvcAccountingRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSFrPvcAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Account statistics entry."
    INDEX { h3cCBQoSFrPvcApplyPolicyIfIndex,
            h3cCBQoSFrPvcApplyPolicyDlciNum,
            h3cCBQoSFrPvcApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex,
            h3cCBQoSWredClassValue
          }
    ::= { h3cCBQoSFrPvcAccountingRunInfoTable 1 }

H3cCBQoSFrPvcAccountingRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSFrPvcAccountingPackets
            Counter64,
        h3cCBQoSFrPvcAccountingBytes
            Counter64
    }

h3cCBQoSFrPvcAccountingPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets."
    ::= { h3cCBQoSFrPvcAccountingRunInfoEntry 1 }

h3cCBQoSFrPvcAccountingBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes."
    ::= { h3cCBQoSFrPvcAccountingRunInfoEntry 2 }

-- Ethernet Interface VLAN: policy Running statistics information

h3cCBQoSVlanStaticsObjects OBJECT IDENTIFIER ::= { h3cCBQoSApplyPolicyStaticsObjects 4 }

-- Class match statistics

h3cCBQoSVlanClassMatchRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSVlanClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for matching a classifier
         in a QoS policy applied on Ethernet VLAN.
        "
    ::= { h3cCBQoSVlanStaticsObjects 1 }

h3cCBQoSVlanClassMatchRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSVlanClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Classifier matching statistics entry."
    INDEX { h3cCBQoSVlanApplyPolicyVlanid,
            h3cCBQoSVlanApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSVlanClassMatchRunInfoTable 1 }

H3cCBQoSVlanClassMatchRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSVlanClassMatchedPackets
            Counter64
    }

h3cCBQoSVlanClassMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matching a class in a QoS policy."
    ::= { h3cCBQoSVlanClassMatchRunInfoEntry 1 }

--
-- nodes of h3cCBQoSIfVlanAccountingRunInfoTable
--
h3cCBQoSVlanAccountingRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSVlanAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of Running statistics for account
         in a QoS policy applied on the interface."
    ::= { h3cCBQoSVlanStaticsObjects 2 }

h3cCBQoSVlanAccountingRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSVlanAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Account statistics entry."
    INDEX { h3cCBQoSVlanApplyPolicyVlanid,
            h3cCBQoSVlanApplyPolicyDirection,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSVlanAccountingRunInfoTable 1 }

H3cCBQoSVlanAccountingRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSVlanAccountingPackets
            Counter64,
        h3cCBQoSVlanAccountingBytes
            Counter64
    }

h3cCBQoSVlanAccountingPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets."
    ::= { h3cCBQoSVlanAccountingRunInfoEntry 1 }

h3cCBQoSVlanAccountingBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes."
    ::= { h3cCBQoSVlanAccountingRunInfoEntry 2 }

-- Index Object
h3cCBQoSApplyPolicyIndexObjects OBJECT IDENTIFIER
    ::= { h3cCBQoSApplyPolicyStaticsObjects 5 }

--
-- ApplyObjectTable
--
h3cCBQoSApplyObjectTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of QoS apply object index.  It provides the function
         of querying the information of QoS apply object, which
         consists of interface type, interface index, ATM PVC, FR DLCI
         and nesting policy index, using QoS apply object index."
    ::= { h3cCBQoSApplyPolicyIndexObjects 1 }

h3cCBQoSApplyObjectEntry OBJECT-TYPE
    SYNTAX H3cCBQoSApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "QoS apply object index entry."
    INDEX { h3cCBQoSApplyObjectIndex }
    ::= { h3cCBQoSApplyObjectTable 1 }

H3cCBQoSApplyObjectEntry ::=
    SEQUENCE
    {
        h3cCBQoSApplyObjectIndex
            Unsigned32,
        h3cCBQoSApplyObjectType
            ApplyObjectType,
        h3cCBQoSApplyObjectDirection
            DirectionType,
        h3cCBQoSApplyObjectMainSite
            Unsigned32,
        h3cCBQoSApplyObjectSubChannel
            Unsigned32,
        h3cCBQoSApplyObjectSubClass
            Unsigned32,
        h3cCBQoSApplyObjectSubClassSec
            Unsigned32
    }

h3cCBQoSApplyObjectIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "QoS apply object index.  It represents the unique identifier
         of QoS policy applied position.  It generates when QoS policy
         is applied considering ifIndex, VLAN ID, ATM PVC, FR DLCI and
         policy nesting."
    ::= { h3cCBQoSApplyObjectEntry 1 }

h3cCBQoSApplyObjectType OBJECT-TYPE
    SYNTAX ApplyObjectType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Apply object type."
    ::= { h3cCBQoSApplyObjectEntry 2 }

h3cCBQoSApplyObjectDirection OBJECT-TYPE
    SYNTAX DirectionType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The direction of QoS apply object."
    ::= { h3cCBQoSApplyObjectEntry 3 }

h3cCBQoSApplyObjectMainSite OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Its value depends on h3cCBQoSApplyObjectType.
         It represents VLAN ID when h3cCBQoSApplyObjectType
         is vlan, and represents chassis ID when h3cCBQoSApplyObjectType
         is controlPlane, otherwise it represents ifIndex."
    ::= { h3cCBQoSApplyObjectEntry 4 }

h3cCBQoSApplyObjectSubChannel OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Its value depends on h3cCBQoSApplyObjectType.
         It represents the value of VPI/VCI, of which high 16-bits
         is VPI and low 16-bits is VCI, when h3cCBQoSApplyObjectType
         is atmPvc.
         It represents the value of data link connection identifier
         in FR network, when h3cCBQoSApplyObjectType is frDlci.
         It represents slot ID, when h3cCBQoSApplyObjectType is controlPlane.
         Otherwise the value is '0xFFFFFFFF'."
    ::= { h3cCBQoSApplyObjectEntry 5 }

h3cCBQoSApplyObjectSubClass OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The value represents level-1 sub class index when the QoS
         apply object is level-2 or level-3 nesting policy.  Otherwise
         the value is '0xFFFFFFFF'."
    ::= { h3cCBQoSApplyObjectEntry 6 }

h3cCBQoSApplyObjectSubClassSec OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The value represents level-2 sub class index when the QoS
         apply object is level-3 nesting policy.  Otherwise
         the value is '0xFFFFFFFF'."
    ::= { h3cCBQoSApplyObjectEntry 7 }

--
-- IntApplyObjectTable
--
h3cCBQoSIntApplyObjectTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSIntApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table used for querying the QoS apply object indexes by
         interface index.  It is suitable for querying QoS apply
         object indexes for policies applied on Ethernet ports, ATM
         ports and FR ports."
    ::= { h3cCBQoSApplyPolicyIndexObjects 2 }

h3cCBQoSIntApplyObjectEntry OBJECT-TYPE
    SYNTAX H3cCBQoSIntApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "QoS apply object on interface index querying entry."
    INDEX { h3cCBQoSIntApplyObjectIfIndex,
            h3cCBQoSApplyObjectDirection }
    ::= { h3cCBQoSIntApplyObjectTable 1 }

H3cCBQoSIntApplyObjectEntry ::=
    SEQUENCE
    {
        h3cCBQoSIntApplyObjectIfIndex
            Unsigned32,
        h3cCBQoSIntApplyObjectIndex
            Unsigned32
    }

h3cCBQoSIntApplyObjectIfIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Interface index."
    ::= { h3cCBQoSIntApplyObjectEntry 1 }

h3cCBQoSIntApplyObjectIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "QoS apply object index."
    ::= { h3cCBQoSIntApplyObjectEntry 2 }

--
-- VlanApplyObjectTable
--
h3cCBQoSVlanApplyObjectTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSVlanApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table used for querying the QoS apply object indexes by VLAN
         ID and policy direction.  It is suitable for querying QoS
         apply object indexes for policies applied on VLANs.  If the
         value of h3cCBQoSVlanApplyObjectVlanID is 0, it means querying
         Qos apply object index for policy applied on global."
    ::= { h3cCBQoSApplyPolicyIndexObjects 3 }

h3cCBQoSVlanApplyObjectEntry OBJECT-TYPE
    SYNTAX H3cCBQoSVlanApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "VLAN apply object entry."
    INDEX { h3cCBQoSVlanApplyObjectVlanID,
            h3cCBQoSApplyObjectDirection }
    ::= { h3cCBQoSVlanApplyObjectTable 1 }

H3cCBQoSVlanApplyObjectEntry ::=
    SEQUENCE
    {
        h3cCBQoSVlanApplyObjectVlanID
            Unsigned32,
        h3cCBQoSVlanApplyObjectIndex
            Unsigned32
    }

h3cCBQoSVlanApplyObjectVlanID OBJECT-TYPE
    SYNTAX Unsigned32 (0..4094)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "VLAN ID."
    ::= { h3cCBQoSVlanApplyObjectEntry 1 }

h3cCBQoSVlanApplyObjectIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "QoS apply object index."
    ::= { h3cCBQoSVlanApplyObjectEntry 2 }

--
-- PvcApplyObjectTable
--
h3cCBQoSPvcApplyObjectTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSPvcApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table used for querying the QoS apply object indexes by ATM
         PVC or FR DLCI, ifIndex and policy direction.  It is suitable
         for querying QoS apply object indexes for policies applied on
         ATM PVCs or FR DLCIs."
    ::= { h3cCBQoSApplyPolicyIndexObjects 4 }

h3cCBQoSPvcApplyObjectEntry OBJECT-TYPE
    SYNTAX H3cCBQoSPvcApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "QoS apply object querying entry for ATM PVC or FR
         DLCI."
    INDEX { h3cCBQoSPvcApplyObjectIfIndex,
            h3cCBQoSPvcApplyObjectPvcID,
            h3cCBQoSApplyObjectDirection }
    ::= { h3cCBQoSPvcApplyObjectTable 1 }

H3cCBQoSPvcApplyObjectEntry ::=
    SEQUENCE
    {
        h3cCBQoSPvcApplyObjectIfIndex
            Unsigned32,
        h3cCBQoSPvcApplyObjectPvcID
            Unsigned32,
        h3cCBQoSPvcApplyObjectIndex
            Unsigned32
    }

h3cCBQoSPvcApplyObjectIfIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Interface index."
    ::= { h3cCBQoSPvcApplyObjectEntry 1 }

h3cCBQoSPvcApplyObjectPvcID OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "If the QoS apply object queried is a ATM PVC, its input value
         represents a VPI/VCI.  If the QoS apply object queried is a FR
         DLCI, its input value represents a value of FR DLCI."
    ::= { h3cCBQoSPvcApplyObjectEntry 2 }

h3cCBQoSPvcApplyObjectIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "QoS apply object index."
    ::= { h3cCBQoSPvcApplyObjectEntry 3 }

--
-- h3cCBQoSNestPolicyApplyObjectTable
--
h3cCBQoSNestPolicyApplyObjectTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSNestPolicyApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table used for querying the nested QoS policy apply object indexes.
         It is suitable for querying nested QoS apply object indexes for policies
         applied on ifIndex, VLAN ID, ATM PVC or FR DLCI."
    ::= { h3cCBQoSApplyPolicyIndexObjects 5 }

h3cCBQoSNestPolicyApplyObjectEntry OBJECT-TYPE
    SYNTAX H3cCBQoSNestPolicyApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "QoS apply object on policy querying entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSNestPolicyClassIndex}
    ::= { h3cCBQoSNestPolicyApplyObjectTable 1 }

H3cCBQoSNestPolicyApplyObjectEntry ::=
    SEQUENCE
    {
        h3cCBQoSNestPolicyClassIndex
            Unsigned32,
        h3cCBQoSNestPolicyApplyObjectIndex
            Unsigned32
    }

h3cCBQoSNestPolicyClassIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policyclass index in father policy."
    ::= { h3cCBQoSNestPolicyApplyObjectEntry 1 }

h3cCBQoSNestPolicyApplyObjectIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "QoS apply object index of the son policy."
    ::= { h3cCBQoSNestPolicyApplyObjectEntry 2 }

--
-- h3cCBQoSCpApplyObjectTable
--
h3cCBQoSCpApplyObjectTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSCpApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table used for querying the QoS policy apply object indexes
         by chassis ID and slot ID.  It is suitable for querying QoS apply
         object indexes for policies applied on control plane."
    ::= { h3cCBQoSApplyPolicyIndexObjects 6 }

h3cCBQoSCpApplyObjectEntry OBJECT-TYPE
    SYNTAX H3cCBQoSCpApplyObjectEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "QoS policy apply object on control plane querying entry."
    INDEX { h3cCBQoSCpApplyObjectChassis,
            h3cCBQoSCpApplyObjectSlot,
            h3cCBQoSApplyObjectDirection}
    ::= { h3cCBQoSCpApplyObjectTable 1 }

H3cCBQoSCpApplyObjectEntry ::=
    SEQUENCE
    {
        h3cCBQoSCpApplyObjectChassis
            Unsigned32,
        h3cCBQoSCpApplyObjectSlot
            Unsigned32,
        h3cCBQoSCpApplyObjectIndex
            Unsigned32
    }

h3cCBQoSCpApplyObjectChassis OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Chassis ID."
    ::= { h3cCBQoSCpApplyObjectEntry 1 }

h3cCBQoSCpApplyObjectSlot OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Slot ID."
    ::= { h3cCBQoSCpApplyObjectEntry 2 }

h3cCBQoSCpApplyObjectIndex OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "QoS apply object index."
    ::= { h3cCBQoSCpApplyObjectEntry 3 }

-- Statistics

h3cCBQoSStaticsObjects OBJECT IDENTIFIER
    ::= { h3cCBQoSApplyPolicyStaticsObjects 6 }

-- CBQ statistics

h3cCBQoSCbqRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of CBQ running statistics.
         When policy using queue behavior is applied on QoS apply
         object, the QoS apply object will use Class Based Queuing."
    ::= { h3cCBQoSStaticsObjects 1 }

h3cCBQoSCbqRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSCbqRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "CBQ statistics entry of QoS apply object."
    INDEX { h3cCBQoSApplyObjectIndex }
    ::= { h3cCBQoSCbqRunInfoTable 1 }

H3cCBQoSCbqRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSCbqQueueSize
            Integer32,
        h3cCBQoSCbqDiscard
            Counter64,
        h3cCBQoSCbqEfQueueSize
            Integer32,
        h3cCBQoSCbqAfQueueSize
            Integer32,
        h3cCBQoSCbqBeQueueSize
            Integer32,
        h3cCBQoSCbqBeActiveQueueNum
            Integer32,
        h3cCBQoSCbqBeMaxActiveQueueNum
            Integer32,
        h3cCBQoSCbqBeTotalQueueNum
            Integer32,
        h3cCBQoSCbqAfAllocatedQueueNum
            Integer32
    }

h3cCBQoSCbqQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets in CBQ queue."
    ::= { h3cCBQoSCbqRunInfoEntry 1 }

h3cCBQoSCbqDiscard OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of discarded packets which couldn't queue."
    ::= { h3cCBQoSCbqRunInfoEntry 2 }

h3cCBQoSCbqEfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets in EF queue."
    ::= { h3cCBQoSCbqRunInfoEntry 3 }

h3cCBQoSCbqAfQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets in AF queue."
    ::= { h3cCBQoSCbqRunInfoEntry 4 }

h3cCBQoSCbqBeQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets in BE Queue."
    ::= { h3cCBQoSCbqRunInfoEntry 5 }

h3cCBQoSCbqBeActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of Active BE Queues."
    ::= { h3cCBQoSCbqRunInfoEntry 6 }

h3cCBQoSCbqBeMaxActiveQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The max number of Active BE Queues."
    ::= { h3cCBQoSCbqRunInfoEntry 7 }

h3cCBQoSCbqBeTotalQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of total BE Queues."
    ::= { h3cCBQoSCbqRunInfoEntry 8 }

h3cCBQoSCbqAfAllocatedQueueNum OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of allocated AF Queues."
    ::= { h3cCBQoSCbqRunInfoEntry 9 }

-- Class match statistics

h3cCBQoSClassMatchRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for matching a classifier on a
         QoS apply object."
    ::= { h3cCBQoSStaticsObjects 2 }

h3cCBQoSClassMatchRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSClassMatchRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Classifier's matching statistics information entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSClassMatchRunInfoTable 1 }

H3cCBQoSClassMatchRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSClassMatchedPackets
            Counter64,
        h3cCBQoSClassMatchedBytes
            Counter64,
        h3cCBQoSClassFwdPktpps
            Unsigned32,
        h3cCBQoSClassFwdPktbps
            Unsigned32,
        h3cCBQoSClassDropPktpps
            Unsigned32,
        h3cCBQoSClassDropPktbps
            Unsigned32,
        h3cCBQoSClassFlowStatInterval
            Unsigned32,
        h3cCBQoSClassBehaviorStatus
            INTEGER
    }

h3cCBQoSClassMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matching a class in a QoS policy."
    ::= { h3cCBQoSClassMatchRunInfoEntry 1 }

h3cCBQoSClassMatchedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matching a class in a QoS policy."
    ::= { h3cCBQoSClassMatchRunInfoEntry 2 }

h3cCBQoSClassFwdPktpps OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average number of packets macthing the class forwarded
         per second in the last interval.
         Unit: pps."
    ::= { h3cCBQoSClassMatchRunInfoEntry 3 }

h3cCBQoSClassFwdPktbps OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average bits of packets matching the class forwarded
         per second in the last interval.
         Unit: bps."
    ::= { h3cCBQoSClassMatchRunInfoEntry 4 }

h3cCBQoSClassDropPktpps OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average number of packets matching the class dropped
         per second in the last interval.
         Unit: pps."
    ::= { h3cCBQoSClassMatchRunInfoEntry 5 }

h3cCBQoSClassDropPktbps OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average bits of packets matching the class dropped
         per second in the last interval.
         Unit: bps."
    ::= { h3cCBQoSClassMatchRunInfoEntry 6 }

h3cCBQoSClassFlowStatInterval OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Interval of collecting traffic statistics.
         Unit: minute."
    ::= { h3cCBQoSClassMatchRunInfoEntry 7 }

h3cCBQoSClassBehaviorStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        success(1),
        failure(2),
        partialSuccess(3)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Classifier-behavior applying status."
    ::= { h3cCBQoSClassMatchRunInfoEntry 8 }

-- CAR statistics

h3cCBQoSCarRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for CAR on a QoS apply object."
    ::= { h3cCBQoSStaticsObjects 3 }

h3cCBQoSCarRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSCarRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "CAR statistics information entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSCarRunInfoTable 1 }

H3cCBQoSCarRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSCarGreenPackets
            Counter64,
        h3cCBQoSCarGreenBytes
            Counter64,
        h3cCBQoSCarRedPackets
            Counter64,
        h3cCBQoSCarRedBytes
            Counter64,
        h3cCBQoSCarYellowPackets
            Counter64,
        h3cCBQoSCarYellowBytes
            Counter64,
        h3cCBQoSCarClassName
            OCTET STRING
    }

h3cCBQoSCarGreenPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of green packets."
    ::= { h3cCBQoSCarRunInfoEntry 1 }

h3cCBQoSCarGreenBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of green bytes."
    ::= { h3cCBQoSCarRunInfoEntry 2 }

h3cCBQoSCarRedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of red packets."
    ::= { h3cCBQoSCarRunInfoEntry 3 }

h3cCBQoSCarRedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of red bytes."
    ::= { h3cCBQoSCarRunInfoEntry 4 }

h3cCBQoSCarYellowPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of yellow packets."
    ::= { h3cCBQoSCarRunInfoEntry 5 }

h3cCBQoSCarYellowBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of yellow bytes."
    ::= { h3cCBQoSCarRunInfoEntry 6 }

h3cCBQoSCarClassName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (1..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Name of classifier."
    ::= { h3cCBQoSCarRunInfoEntry 7 }

-- GTS statistics

h3cCBQoSGtsRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for GTS on a QoS apply object."
    ::= { h3cCBQoSStaticsObjects 4 }

h3cCBQoSGtsRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSGtsRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "GTS statistics entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSGtsRunInfoTable 1 }

H3cCBQoSGtsRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSGtsPassedPackets
            Counter64,
        h3cCBQoSGtsPassedBytes
            Counter64,
        h3cCBQoSGtsDiscardedPackets
            Counter64,
        h3cCBQoSGtsDiscardedBytes
            Counter64,
        h3cCBQoSGtsDelayedPackets
            Counter64,
        h3cCBQoSGtsDelayedBytes
            Counter64,
        h3cCBQoSGtsQueueSize
            Integer32
    }

h3cCBQoSGtsPassedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets passed by GTS."
    ::= { h3cCBQoSGtsRunInfoEntry 1 }

h3cCBQoSGtsPassedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes passed by GTS."
    ::= { h3cCBQoSGtsRunInfoEntry 2 }

h3cCBQoSGtsDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discarded by GTS."
    ::= { h3cCBQoSGtsRunInfoEntry 3 }

h3cCBQoSGtsDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discarded by GTS."
    ::= { h3cCBQoSGtsRunInfoEntry 4 }

h3cCBQoSGtsDelayedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets delayed by GTS."
    ::= { h3cCBQoSGtsRunInfoEntry 5 }

h3cCBQoSGtsDelayedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes delayed by GTS."
    ::= { h3cCBQoSGtsRunInfoEntry 6 }

h3cCBQoSGtsQueueSize OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets in GTS queue."
    ::= { h3cCBQoSGtsRunInfoEntry 7 }

-- Remark statistics

h3cCBQoSRemarkRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for remarking on a QoS apply
         object."
    ::= { h3cCBQoSStaticsObjects 5 }

h3cCBQoSRemarkRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSRemarkRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Remarking statistics entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSRemarkRunInfoTable 1 }

H3cCBQoSRemarkRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSRemarkedPackets
            Counter64
    }

h3cCBQoSRemarkedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of remarked packets."
    ::= { h3cCBQoSRemarkRunInfoEntry 1 }

-- Queue statistics

h3cCBQoSQueueRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for queue on a QoS apply
         object."
    ::= { h3cCBQoSStaticsObjects 6 }

h3cCBQoSQueueRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSQueueRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Queue statistics entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSPolicyClassIndex }
    ::= { h3cCBQoSQueueRunInfoTable 1 }

H3cCBQoSQueueRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSQueueMatchedPackets
            Counter64,
        h3cCBQoSQueueMatchedBytes
            Counter64,
        h3cCBQoSQueueEnqueuedPackets
            Counter64,
        h3cCBQoSQueueEnqueuedBytes
            Counter64,
        h3cCBQoSQueueDiscardedPackets
            Counter64,
        h3cCBQoSQueueDiscardedBytes
            Counter64
    }

h3cCBQoSQueueMatchedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matched to queue."
    ::= { h3cCBQoSQueueRunInfoEntry 1 }

h3cCBQoSQueueMatchedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matched to queue."
    ::= { h3cCBQoSQueueRunInfoEntry 2 }

h3cCBQoSQueueEnqueuedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets queued."
    ::= { h3cCBQoSQueueRunInfoEntry 3 }

h3cCBQoSQueueEnqueuedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes queued."
    ::= { h3cCBQoSQueueRunInfoEntry 4 }

h3cCBQoSQueueDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets discarded when queued by discard method."
    ::= { h3cCBQoSQueueRunInfoEntry 5 }

h3cCBQoSQueueDiscardedBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes discarded when queued by discard method."
    ::= { h3cCBQoSQueueRunInfoEntry 6 }

-- WRED statistics

h3cCBQoSWredRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for WRED on a QoS apply object."
    ::= { h3cCBQoSStaticsObjects 7 }

h3cCBQoSWredRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSWredRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "WRED statistics entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSPolicyClassIndex,
            h3cCBQoSWredClassValue }
    ::= { h3cCBQoSWredRunInfoTable 1 }

H3cCBQoSWredRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSWredRandomDiscardedPackets
            Counter64,
        h3cCBQoSWredTailDiscardedPackets
            Counter64
    }

h3cCBQoSWredRandomDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets random-discarded by WRED."
    ::= { h3cCBQoSWredRunInfoEntry 1 }

h3cCBQoSWredTailDiscardedPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets tail-discarded by WRED."
    ::= { h3cCBQoSWredRunInfoEntry 2 }

--
-- Accounting RunInfo
--
h3cCBQoSAccountingRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for account on a QoS apply
         object."
    ::= { h3cCBQoSStaticsObjects 8 }

h3cCBQoSAccountingRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSAccountingRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Account statistics entry."
    INDEX { h3cCBQoSApplyObjectIndex,
            h3cCBQoSPolicyClassIndex
          }
    ::= { h3cCBQoSAccountingRunInfoTable 1 }

H3cCBQoSAccountingRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSAccountingPackets
            Counter64,
        h3cCBQoSAccountingBytes
            Counter64,
        h3cCBQoSAccountingPktpps
            Counter64,
        h3cCBQoSAccountingPktbps
            Counter64
    }

h3cCBQoSAccountingPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matching a class in QoS policy."
    ::= { h3cCBQoSAccountingRunInfoEntry 1 }

h3cCBQoSAccountingBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matching a class in QoS policy."
    ::= { h3cCBQoSAccountingRunInfoEntry 2 }

h3cCBQoSAccountingPktpps OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average number of packets matching a class in QoS policy
         per second in the last interval.
         Unit: pps."
    ::= { h3cCBQoSAccountingRunInfoEntry 3 }

h3cCBQoSAccountingPktbps OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Average bits of packets matching a class in QoS policy
         per second in the last interval.
         Unit: bps."
    ::= { h3cCBQoSAccountingRunInfoEntry 4 }

--
-- Policy Accounting RunInfo
--
h3cCBQoSPolicyAccRunInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cCBQoSPolicyAccRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A table of running statistics for account on a QoS apply
         object."
    ::= { h3cCBQoSStaticsObjects 9 }

h3cCBQoSPolicyAccRunInfoEntry OBJECT-TYPE
    SYNTAX H3cCBQoSPolicyAccRunInfoEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Policy account statistics entry."
    INDEX { h3cCBQoSApplyObjectIndex }
    ::= { h3cCBQoSPolicyAccRunInfoTable 1 }

H3cCBQoSPolicyAccRunInfoEntry ::=
    SEQUENCE
    {
        h3cCBQoSPolicyAccPackets
            Counter64,
        h3cCBQoSPolicyAccBytes
            Counter64
    }

h3cCBQoSPolicyAccPackets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of packets matching a QoS policy."
    ::= { h3cCBQoSPolicyAccRunInfoEntry 1 }

h3cCBQoSPolicyAccBytes OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Number of bytes matching a QoS policy."
    ::= { h3cCBQoSPolicyAccRunInfoEntry 2 }

-- Policy applying status

h3cCBQoSApplyingStatusObjects OBJECT IDENTIFIER ::= { h3cCBQoSObjects 6 }

-- System status when applying policy

h3cCBQoSApplyingStatus OBJECT-TYPE
    SYNTAX INTEGER
    {
        idle(1),
        busy(2)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "This object shows the status of the system when applying policy.
        It is forbidden to set or read in this MIB module except current
        table when the value is busy."
    ::= { h3cCBQoSApplyingStatusObjects 1 }

-- Notifications

h3cCBQoSNotifications OBJECT IDENTIFIER ::= { h3cCBQoSObjects 7 }

-- All trap definitions should be placed under this object.

h3cCBQoSNotificationsPrefix OBJECT IDENTIFIER ::= { h3cCBQoSNotifications 0 }

-- All objects used for TRAP only are defined here.

h3cCBQoSIfPolicyChanged NOTIFICATION-TYPE
    OBJECTS
        {
            h3cCBQoSIfApplyPolicyIfIndex,
            h3cCBQoSIfApplyPolicyDirection
        }
    STATUS current
    DESCRIPTION
        "This notification will be sent when the applying status
        of the policy on the interface is changed."
    ::= { h3cCBQoSNotificationsPrefix 1 }

h3cCBQoSVlanPolicyChanged NOTIFICATION-TYPE
    OBJECTS
        {
            h3cCBQoSVlanApplyPolicyVlanid,
            h3cCBQoSVlanApplyPolicyDirection
        }
    STATUS current
    DESCRIPTION
        "This notification will be sent when the applying status
        of the policy on the VLAN is changed."
    ::= { h3cCBQoSNotificationsPrefix 2 }

END
