--	3Com Switching Systems QOS Management Information Base 
--	Version 1.0.0 
--	February 13, 1998 
 
--	3Com Corporation 
--	80 Central Street 
--	Boxborough, MA 01719  
--	(508) 264-1400 
 
----------------------------------------------------------------------------------------
--  08/03/99 - lam      Added support for SNMP trap feature to QoS One-Way TCP Filter
--                      functionality. 
--  01/24/98 - tmeiczin Added qos non flow classifiers for Custom types
--  08/14/98 - tmeiczin Fixed syntax to compiled with SMICng 
--  02/13/98 - iwolf    Originally created 
-- 
---------------------------------------------------------------------------------------- 
 
        A3COM-SWITCHING-SYSTEMS-QOS-MIB DEFINITIONS ::= BEGIN 
 
        IMPORTS 
            enterprises, Gauge, IpAddress 
                 FROM RFC1155-SMI 
            DisplayString, ifIndex 
                 FROM RFC1213-MIB 
            OBJECT-TYPE 
                 FROM RFC-1212
			TRAP-TYPE
                 FROM RFC-1215;
--            RowStatus 
--                 FROM SNMPv2-TC;	 
-- The Following was removed to allow compiling with SunNet Manager
--                RowStatus
--                        FROM SNMPv2-TC;

                RowStatus ::= INTEGER {

                -- the following two values are states:
                -- these values may be read or written
                active(1),
                notInService(2),

                -- the following value is a state:
                -- this value may be read, but not written
                notReady(3),

                -- the following three values are
                -- actions: these values may be written,
                --   but are never read
                createAndGo(4),
                createAndWait(5),
                destroy(6)
                }

        -- Object identifiers 
 
a3Com                               OBJECT IDENTIFIER ::= { enterprises 43 } 
switchingSystemsMibs                OBJECT IDENTIFIER ::= { a3Com 29 } 
a3ComSwitchingSystemsMib            OBJECT IDENTIFIER ::= { switchingSystemsMibs 4 } 
a3ComQos                            OBJECT IDENTIFIER ::= { a3ComSwitchingSystemsMib 21 } 
     
        -- Qos groups 
     
a3ComQosClass                       OBJECT IDENTIFIER ::= { a3ComQos 1 } 
a3ComQosCtrl                        OBJECT IDENTIFIER ::= { a3ComQos 2 } 
a3ComQosRsvp                        OBJECT IDENTIFIER ::= { a3ComQos 3 } 
a3ComQosStats                       OBJECT IDENTIFIER ::= { a3ComQos 4 } 
a3ComQosMisc                        OBJECT IDENTIFIER ::= { a3ComQos 5 } 
             
 
        -- 
        -- The QoS Generic Class Table. 
        -- 
     
a3ComQosGenClassTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosGenClassEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "This table lists all QoS classes (Flow and Non-Flow)  
            configured in the system." 
::= { a3ComQosClass 1 } 
 
a3ComQosGenClassEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosGenClassEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry describing a single class entity." 
    INDEX  { a3ComQosGenClassIndex } 
::= { a3ComQosGenClassTable 1 } 
 
        A3ComQosGenClassEntry ::= 
    SEQUENCE { 
      a3ComQosGenClassIndex    
       INTEGER,   
      a3ComQosGenClassName    
       DisplayString,   
      a3ComQosGenClassControlId    
      INTEGER    
    } 
 
a3ComQosGenClassIndex  OBJECT-TYPE 
    SYNTAX  INTEGER (1..65532) 
    ACCESS  read-only  
    STATUS  mandatory 
    DESCRIPTION   
            "A unique value for each entry." 
::= { a3ComQosGenClassEntry 1 } 
 
a3ComQosGenClassName  OBJECT-TYPE 
    SYNTAX  DisplayString (SIZE(0..32)) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "A textual name for the class." 
::= { a3ComQosGenClassEntry 2 } 
 
a3ComQosGenClassControlId  OBJECT-TYPE 
    SYNTAX  INTEGER  
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The control entry that this class is associated with. 
            Note that the user must have created the control (via the  
            a3ComQosCtrlTable) before making the association via this object. 
            A value of zero indicates no control is attached." 
::= { a3ComQosGenClassEntry 3 } 
 
 
        -- 
        -- The QoS Flow Class Table. 
        -- 
     
a3ComQosFlowClassTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosFlowClassEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "This table lists the Flow classes defined in the system.  
 
            A Flow class applies only to IP unicast and multicast packets.  
            A Flow class is defined in terms of the IP packet header:  
            IP protocol type, IP source and destination addresses,  
            TCP/UDP source and destination ports. 
 
            Note that a filter entry can only be modified if there 
            is no control attached to it. Otherwise, the entry has to  
            be deleted and recreated." 
::= { a3ComQosClass 2 } 
 
a3ComQosFlowClassEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosFlowClassEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry describing a single flow class entity." 
    INDEX  { a3ComQosFlowClassIndex, a3ComQosFlowClassFilterIndex } 
::= { a3ComQosFlowClassTable 1 } 
 
        A3ComQosFlowClassEntry ::= 
    SEQUENCE { 
      a3ComQosFlowClassIndex    
       INTEGER,   
      a3ComQosFlowClassFilterIndex    
       INTEGER,   
      a3ComQosFlowClassCastType    
       INTEGER,   
      a3ComQosFlowClassIpProtoType    
       INTEGER,   
      a3ComQosFlowClassSrcAddr    
       IpAddress,   
      a3ComQosFlowClassSrcSubnetMask    
       IpAddress,   
      a3ComQosFlowClassDestAddr    
       IpAddress,   
      a3ComQosFlowClassDestSubnetMask    
       IpAddress,   
      a3ComQosFlowClassPortStart    
       INTEGER,   
      a3ComQosFlowClassPortEnd    
       INTEGER,   
      a3ComQosFlowClassRowStatus    
      RowStatus    
    } 
 
a3ComQosFlowClassIndex  OBJECT-TYPE 
    SYNTAX  INTEGER (1..65532) 
    ACCESS  read-only  
    STATUS  mandatory 
    DESCRIPTION   
            "A unique value for each entry. 
            Flow classses use id values between 1-399." 
::= { a3ComQosFlowClassEntry 1 } 
 
a3ComQosFlowClassFilterIndex  OBJECT-TYPE 
    SYNTAX  INTEGER (1..100) 
    ACCESS  read-only  
    STATUS  mandatory 
    DESCRIPTION   
            "The unique filter index associated with this class. 
            Note that the maximum limit of 100 filters is the 
            aggregate of all the filters defined in the system, not 
            just the number of filters defined for this classifier." 
::= { a3ComQosFlowClassEntry 2 } 
 
a3ComQosFlowClassCastType  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              unicast(1), 
              multicast(2), 
              both(3) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The network layer cast type for this class." 
    DEFVAL  { both } 
::= { a3ComQosFlowClassEntry 3 } 
 
a3ComQosFlowClassIpProtoType  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              udp(1), 
              tcp(2), 
              both(3) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The IP protocol type for this class." 
    DEFVAL  { both } 
::= { a3ComQosFlowClassEntry 4 } 
 
a3ComQosFlowClassSrcAddr  OBJECT-TYPE 
    SYNTAX  IpAddress 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The source IP address for this class." 
::= { a3ComQosFlowClassEntry 5 } 
         
a3ComQosFlowClassSrcSubnetMask  OBJECT-TYPE 
    SYNTAX  IpAddress 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The source subnet mask for this class." 
::= { a3ComQosFlowClassEntry 6 } 
 
a3ComQosFlowClassDestAddr  OBJECT-TYPE 
    SYNTAX  IpAddress 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The destination IP address for this class." 
::= { a3ComQosFlowClassEntry 7 } 
         
a3ComQosFlowClassDestSubnetMask  OBJECT-TYPE 
    SYNTAX  IpAddress 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The destination subnet mask for this class." 
::= { a3ComQosFlowClassEntry 8 } 
 
a3ComQosFlowClassPortStart  OBJECT-TYPE 
    SYNTAX  INTEGER (0..65535) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The starting range of ports associated with this class." 
    DEFVAL  { 0 }     
::= { a3ComQosFlowClassEntry 9 } 
 
a3ComQosFlowClassPortEnd  OBJECT-TYPE 
    SYNTAX  INTEGER (0..65535) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The finishing range of ports associated with this class." 
    DEFVAL  { 65535 }     
::= { a3ComQosFlowClassEntry 10 } 
     
a3ComQosFlowClassRowStatus  OBJECT-TYPE 
    SYNTAX  RowStatus 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The status column for this entry. This object can be set to: 
            createAndGo(4)                 
            destroy(6) 
 
            The following value may be read: 
            active(1) 
 
            Setting this object to createAndGo(4) creates a row in 
            in this table. The agent will allocate the next sequential  
            filter index value for the newly created entry. 
 
            Setting this object to destroy(6) will remove this entry.  
            Note that only the entry with the highest  
            a3ComQosFlowClassFilterIndex value can be deleted. 
            Also, an entry can only be deleted if there is no control  
            attached to it." 
::= { a3ComQosFlowClassEntry 11 } 
 
 
        -- 
        -- The QoS Non-Flow Class Table. 
        -- 
     
a3ComQosNonFlowClassTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosNonFlowClassEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "This table lists the Non-Flow classes defined in the system.  
 
            A Non-Flow class defines a packet in terms of its data link  
            level protocol: IEEE 802.1p tag value, cast type (broadcast,  
            multicast, and unicast). Packets which match a Non-Flow class 
            receive a service level specific to that class." 
::= { a3ComQosClass 3 } 
 
a3ComQosNonFlowClassEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosNonFlowClassEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry describing a single non-flow class entity." 
    INDEX  { a3ComQosNonFlowClassIndex } 
::= { a3ComQosNonFlowClassTable 1 } 
 
        A3ComQosNonFlowClassEntry ::= 
    SEQUENCE { 
      a3ComQosNonFlowClassIndex    
       INTEGER,   
      a3ComQosNonFlowClassCastType    
       OCTET STRING,  
      a3ComQosNonFlowClassProtos    
       OCTET STRING,  
      a3ComQosNonFlowClass8021pTags    
       OCTET STRING,  
      a3ComQosNonFlowClassRowStatus    
      RowStatus,    
      a3ComQosNonFlowClassProtoDescriptor
       INTEGER,
      a3ComQosNonFlowClassCustomProto
       OCTET STRING
    } 
 
a3ComQosNonFlowClassIndex  OBJECT-TYPE 
    SYNTAX  INTEGER (1..65532) 
    ACCESS  read-only  
    STATUS  mandatory 
    DESCRIPTION   
            "A unique value for each entry. 
            Non-flow classs use class ids values between 400-499." 
::= { a3ComQosNonFlowClassEntry 1 } 
 
a3ComQosNonFlowClassCastType  OBJECT-TYPE 
    SYNTAX  OCTET STRING (SIZE(1)) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "A bit mask of 'cast' types associated with this class.  
            Each cast is represented by a single bit. If that bit is set  
            then the corresponding cast is selected by this class.
 
            The following bits are currently defined: 
 
            Unicast          0x01 
            Multicast        0x02 
            Broadcast        0x04" 
    DEFVAL  { '07'H } 
::= { a3ComQosNonFlowClassEntry 2 } 
 
a3ComQosNonFlowClassProtos  OBJECT-TYPE 
    SYNTAX  OCTET STRING (SIZE(1)) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "A bit mask of network protocols associated with this class.  
            Each protocol is represented by a single bit. If that bit 
            is set then the corresponding protocol is a member of this  
            class. Only one protocol can be assigned to any given classifier.
            This object CAN ONLY BE SET if a3ComQosNonFlowClassProtoDesciptor
            is set to name(1) for the associated class.  Custom (0x10) will be
            returned if a3ComQosNonFlowClassProtoDesciptor is not set to name(1).
            However this object CANNOT be set to Custom.  
 
            The following bits are currently defined: 
 
            Any          0x00 
            IP           0x01 
            IPX          0x02 
            TCP          0x04 
            Appletalk    0x08 
            Custom       0x10"

    DEFVAL  { 'f'H } 
::= { a3ComQosNonFlowClassEntry 3 } 
 
a3ComQosNonFlowClass8021pTags  OBJECT-TYPE 
    SYNTAX  OCTET STRING(SIZE(1))  
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "A bit mask of the 802.1p tags associated with this class.  
            Each tag is represented by a single bit. If that bit is set  
            then the corresponding tag is selected by this class. 
 
            The following bits are currently defined: 
 
            8021pTag-0        0x01         
            8021pTag-1        0x02 
            8021pTag-2        0x04 
            8021pTag-3        0x08 
            8021pTag-4        0x10 
            8021pTag-5        0x20 
            8021pTag-6        0x40 
            8021pTag-7        0x80" 
    DEFVAL  { 'ff'H } 
::= { a3ComQosNonFlowClassEntry 4 } 
 
a3ComQosNonFlowClassRowStatus  OBJECT-TYPE 
    SYNTAX  RowStatus 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The status column for this entry. This object can be set to: 
            createAndGo(4)                 
            destroy(6) 
 
            The following value may be read: 
            active(1) 
 
            Setting this object to createAndGo(4) creates a row in 
            in this table.  
 
            Setting this object to destroy(6) will remove this entry.  
            Note that an entry can only be deleted if there is no control  
            attached to it." 
::= { a3ComQosNonFlowClassEntry 5 } 
 
a3ComQosNonFlowClassProtoDescriptor OBJECT-TYPE
    SYNTAX  INTEGER {
              name(1),
              ethertype (2),
              dsap-ssap (3)
            } 
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "This object determines whether a3ComQosNonFlowClassProtos
             or a3ComQosNonFlowClassCustomProto is used to define the protocol 
             for a classifier.  If set to name(1), the pre-defined types 
             Any, IP, IPX, TCP, AppleTalk from a3ComQosNonFlowClassProtos
             will be used.  If set to ethertype(2) or dsap-ssap(3) then
             the a3ComQosNonFlowClassProtos will be custom and the value
             used will be determined by a3ComQosNonFlowClassCustomProto."
	DEFVAL { name }
::= { a3ComQosNonFlowClassEntry 6 }

a3ComQosNonFlowClassCustomProto  OBJECT-TYPE
    SYNTAX  OCTET STRING(SIZE(2))
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
            "This object determines a 2-byte hex value for the Ethertype or
             DSAP/SSAP that will be used in conjunction with 
             a3ComQosNonFlowClassProtoDescriptor.

             If a3ComQosNonFlowClassProtoDescriptor is set to name(1) then
             this object is not used and it CANNOT be set.
            
             If a3ComQosNonFlowClassProtoDescriptor is set to ethertype(2) then 
             the value will be used as an ethertype mask.

             If a3ComQosNonFlowClassProtoDescriptor is set to dsap-ssap(3) then 
             the most significant byte will be used for the DSAP value and the
             least significant will be used for the SSAP value.

             -- Example 1: a3ComQosNonFlowClassProto is set to ethertype (2)
                           a3ComQosNonFlowClassCustomTypeMask is set to 0x1234

                           The value 0x1234 will be used in the ethertype field.

			 -- Example 2: a3ComQosNonFlowClassCustomType is set to dsap-ssap (2)
                           a3ComQosNonFlowClassCustomTypeMask is set to 0x1234

                           The value 0x12 would be used for the DSAP value.
                           The value 0x34 would be used for the SSAP value."
::= { a3ComQosNonFlowClassEntry 7 } 
 
        -- 
        -- The QoS Control Table.  
        -- 
 
a3ComQosCtrlTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosCtrlEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "A list of controls defined on a given system." 
::= { a3ComQosCtrl 1 } 
 
a3ComQosCtrlEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosCtrlEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry describing a single QoS control."  
    INDEX  { a3ComQosCtrlIndex } 
::= { a3ComQosCtrlTable 1 } 
 
        A3ComQosCtrlEntry ::= 
    SEQUENCE { 
      a3ComQosCtrlIndex    
       INTEGER,   
      a3ComQosCtrlName    
       DisplayString,   
      a3ComQosCtrlServiceLevel    
       INTEGER,   
      a3ComQosCtrlConformPktsLossEligible    
       INTEGER,   
      a3ComQosCtrlExcessPktsServiceLevel    
       INTEGER,   
      a3ComQosCtrlExcessPktsLossEligible    
       INTEGER,   
      a3ComQosCtrl8021pTag    
       INTEGER,   
      a3ComQosCtrlRateLimitType    
       INTEGER,   
      a3ComQosCtrlRowStatus    
      RowStatus    
    } 
 
a3ComQosCtrlIndex  OBJECT-TYPE 
    SYNTAX  INTEGER (1..65532) 
    ACCESS  read-only  
    STATUS  mandatory 
    DESCRIPTION   
            "A unique value for this entry." 
::= { a3ComQosCtrlEntry 1 } 
 
a3ComQosCtrlName  OBJECT-TYPE 
    SYNTAX  DisplayString (SIZE(0..32)) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "A textual name for the control." 
    DEFVAL  { '00'H } 
::= { a3ComQosCtrlEntry 2 } 
 
a3ComQosCtrlServiceLevel  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              highPriority(1), 
              bestEffort(2), 
              lowPriority(3), 
              drop(4) 
            } 
    ACCESS  read-write  
    STATUS  mandatory 
    DESCRIPTION   
            "The service level for all conforming packets." 
    DEFVAL  { bestEffort } 
::= { a3ComQosCtrlEntry 3 } 
 
a3ComQosCtrlConformPktsLossEligible  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              eligible(1), 
              nonEligible(2) 
            } 
    ACCESS  read-write  
    STATUS  mandatory 
    DESCRIPTION   
            "The variable indicates whether conforming packets are 
            loss eligible." 
    DEFVAL  { eligible } 
::= { a3ComQosCtrlEntry 4 } 
 
a3ComQosCtrlExcessPktsServiceLevel  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              highPriority(1), 
              bestEffort(2), 
              lowPriority(3), 
              drop(4) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The service level of excess packets for this control." 
    DEFVAL  { bestEffort } 
::= { a3ComQosCtrlEntry 5 } 
     
a3ComQosCtrlExcessPktsLossEligible  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              eligible(1), 
              nonEligible(2)  
            } 
    ACCESS  read-write  
    STATUS  mandatory 
    DESCRIPTION   
            "The variable indicates whether excess packets are 
            loss eligible." 
    DEFVAL  { eligible }     
::= { a3ComQosCtrlEntry 6 } 
 
a3ComQosCtrl8021pTag  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              none(1), 
              ieee8021pTag0(2), 
              ieee8021pTag1(3), 
              ieee8021pTag2(4), 
              ieee8021pTag3(5), 
              ieee8021pTag4(6), 
              ieee8021pTag5(7), 
              ieee8021pTag6(8), 
              ieee8021pTag7(9) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "This indicates the tag to use on forwarded frames." 
    DEFVAL  { none } 
::= { a3ComQosCtrlEntry 7 } 
 
a3ComQosCtrlRateLimitType  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              none(1), 
              receivePort(2), 
              aggregate(3) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The rate limit type to use with this control. 
 
            A value of none(1) indicates that no rate limit is set for  
            this control.  
 
            A value of receivePort(2) indicates that the configured rate  
            limit is applied on a per-port basis.  
 
            A value of aggregate(3) indicates that the configured rate  
            limit is aggregated across the set of ports that are configured 
            for the rate limit. 
 
            For values other than none(1), the rate limit entries are  
            created via the a3ComQosCtrlRateLimitTable." 
    DEFVAL  { none } 
::= { a3ComQosCtrlEntry 8 } 
 
a3ComQosCtrlRowStatus  OBJECT-TYPE 
    SYNTAX  RowStatus 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The status column for this control entry. This object can 
            be set to: 
            createAndGo(4) 
            destroy(6) 
 
            The following value may be read: 
            active(1) 
 
            Setting this object to createAndGo(4) creates a row in this  
            table. 
             
            Setting this object to destroy(6) will remove this entry. 
            Note that a control can only be deleted if it is not 
            attached to a flow or a non-flow classifier. 
            A side effect of deleting a control in this table 
            is the deletion of the corresponding rate limit entries in  
            the a3ComQosCtrlRateLimitTable." 
::= { a3ComQosCtrlEntry 9 } 
     
 
        -- 
        -- The QoS Control Rate Limit Table.  
        -- 
 
a3ComQosCtrlRateLimitTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosCtrlRateLimitEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "A list of QoS control rate limits defined on a given  
            system." 
::= { a3ComQosCtrl 2 } 
 
a3ComQosCtrlRateLimitEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosCtrlRateLimitEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry describing a single QoS control rate limit."  
    INDEX  { a3ComQosCtrlRateLimitCtrlIndex, a3ComQosCtrlRateLimitIndex } 
::= { a3ComQosCtrlRateLimitTable 1 } 
 
        A3ComQosCtrlRateLimitEntry ::= 
    SEQUENCE { 
      a3ComQosCtrlRateLimitCtrlIndex    
       INTEGER,   
      a3ComQosCtrlRateLimitIndex    
       INTEGER,   
      a3ComQosCtrlRateLimitPercent    
       INTEGER,   
      a3ComQosCtrlRateLimitKbps    
       INTEGER,   
      a3ComQosCtrlRateLimitPorts    
       OCTET STRING,  
      a3ComQosCtrlRateLimitRowStatus    
      RowStatus    
    } 
 
a3ComQosCtrlRateLimitCtrlIndex  OBJECT-TYPE 
    SYNTAX  INTEGER (1..65532) 
    ACCESS  read-only  
    STATUS  mandatory 
    DESCRIPTION   
            "The control index for which this entry is valid." 
::= { a3ComQosCtrlRateLimitEntry 1 } 
 
a3ComQosCtrlRateLimitIndex  OBJECT-TYPE 
    SYNTAX  INTEGER (1..24) 
    ACCESS  read-only  
    STATUS  mandatory 
    DESCRIPTION   
            "The rate limit for which this entry is valid." 
::= { a3ComQosCtrlRateLimitEntry 2 } 
 
a3ComQosCtrlRateLimitPercent  OBJECT-TYPE 
    SYNTAX  INTEGER (0..101) 
    ACCESS  read-write  
    STATUS  mandatory 
    DESCRIPTION   
            "The rate limit as a percentage of input port bandwidth.  
            Packets received in excess of specified rate limit will receive 
            the service defined by value of a3ComQosCtrlExcessPktsServiceLevel 
            object.  
 
            A value of 0 indicates no rate limit. A value of 101 indicates  
            that this object is not being used and the value of the 
            a3ComQosCtrlRateLimitKbps object will determine the rate 
            limit (if any)." 
    DEFVAL  { 0 } 
::= { a3ComQosCtrlRateLimitEntry 3 } 
 
a3ComQosCtrlRateLimitKbps  OBJECT-TYPE 
    SYNTAX  INTEGER  
    ACCESS  read-write  
    STATUS  mandatory 
    DESCRIPTION   
            "The rate limit in kilobits per second of input port bandwidth.  
            Packets received in excess of specified rate limit will receive 
            the service defined by value of a3ComQosCtrlExcessPktsServiceLevel 
            object. Note that the requested rate may be rounded up to the  
            next 1/16th chunk bandwidth. 
 
            Note that the user can specify the rate limit either as a  
            percentage (via the a3ComQosCtrlRateLimitPercent object) or 
            as kilobits per second (via this object) but not both. 
 
            If the value of the a3ComQosCtrlRateLimitPercent object is 
            101, then the setting of this object determines the rate 
            limit. A value of -1 for this object indicates no rate limit. 
            Any other value indicates the desired rate limit." 
    DEFVAL  { -1 } 
::= { a3ComQosCtrlRateLimitEntry 4 } 
 
a3ComQosCtrlRateLimitPorts  OBJECT-TYPE 
    SYNTAX  OCTET STRING (SIZE(1..4)) 
    ACCESS  read-write  
    STATUS  mandatory 
    DESCRIPTION   
            "A bit mask of interfaces that support the defined rate limit. 
            Each interface is represented by a single bit. If that bit 
            is set then the corresponding interface is a member of this  
            control. The bits are assigned with the least significant bit  
            of the first byte corresponding to ifIndex 1, the next 
            bit corresponding to ifIndex 2 and so on.  
 
            Note that each port can only be associated with a single rate  
            limit per control. An error will be returned if the user tries  
            to assign a port that already has a rate limit associated with  
            it." 
    DEFVAL  { '00'H } 
::= { a3ComQosCtrlRateLimitEntry 5 } 
 
a3ComQosCtrlRateLimitRowStatus  OBJECT-TYPE 
    SYNTAX  RowStatus 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The status column for this rate limit entry. This object can 
            be set to: 
            createAndGo(4) 
            destroy(6) 
 
            The following value may be read: 
            active(1) 
 
            Setting this object to createAndGo(4) creates a row in this  
            table. Note that a request to create a new entry must use 
            the next sequential available a3ComQosCtrlRateLimitIndex value. 
             
            Setting this object to destroy(6) will remove this entry." 
::= { a3ComQosCtrlRateLimitEntry 6 } 
     
 
        -- 
        -- The QoS RSVP Group.  
        -- 
     
a3ComQosRsvpStatus  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              rsvpEnabled(1), 
              rsvpDisabled(2) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The status of the RSVP protocol." 
::= { a3ComQosRsvp 1 } 
 
a3ComQosRsvpMaxTotalResvdBandwidth  OBJECT-TYPE 
    SYNTAX  INTEGER(0..200) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The maximum total reservable bandwidth of the output link." 
::= { a3ComQosRsvp 2 } 
     
a3ComQosRsvpMaxPerResvBandwidth  OBJECT-TYPE 
    SYNTAX  INTEGER(0..100) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The maximum per-reservation bandwidth of the output link." 
::= { a3ComQosRsvp 3 } 
     
a3ComQosRsvpPolicy  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              edge(1), 
              always(2), 
              never(3) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The indication of a policing option that shows when excess  
            packets are dropped." 
::= { a3ComQosRsvp 4 } 
 
a3ComQosRsvpExcessTrafficPolicy  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              bestEffort(1), 
              lowPriority(2) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The indication of service for excess packets." 
::= { a3ComQosRsvp 5 } 
 
a3ComQosRsvpExcessPktsLossEligible  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              true(1), 
              false(2) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "This object indicates if excess packets are loss eligible." 
::= { a3ComQosRsvp 6 } 
 
a3ComQosRsvpAuthentication  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              enabled(1), 
              disabled(2) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "This object indicates the status of RSVP authentication." 
::= { a3ComQosRsvp 7 } 
     
a3ComQosRsvpMd5Key  OBJECT-TYPE 
    SYNTAX  OCTET STRING (SIZE(0..10))  
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The MD5 encryption key. This value is used if the 
            a3ComQosRsvpAuthStatus object is set to enabled(1)." 
::= { a3ComQosRsvp 8 } 
 
 
        -- 
        -- The QoS stats rate interval. 
        --  
         
a3ComQosStatsInterval  OBJECT-TYPE 
    SYNTAX  INTEGER  
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The time interval, in seconds, over which rate statistics  
            are collected. A value of zero implies absolute (i.e. raw) 
            statistics." 
    DEFVAL  { 1 }     
::= { a3ComQosStats 1 } 
 
        -- 
        -- The QoS Transmit Stats Table. 
        --  
         
a3ComQosXmtStatsTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosXmtStatsEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "This table contains QoS transmit rate statistics. 
            The interval over which the rate is calculated is determined  
            by the value of a3ComQosStatsInterval object." 
::= { a3ComQosStats 2 } 
 
a3ComQosXmtStatsEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosXmtStatsEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry containing transmit rate statistics." 
    INDEX  { ifIndex, a3ComQosXmtStatsQindex } 
::= { a3ComQosXmtStatsTable 1 } 
 
        A3ComQosXmtStatsEntry ::= 
    SEQUENCE { 
      a3ComQosXmtStatsQindex    
       INTEGER,   
      a3ComQosXmtStatsLowLossPkts    
       Gauge,   
      a3ComQosXmtStatsLowLossDelayedPkts    
       Gauge,   
      a3ComQosXmtStatsLowLossDiscardedPkts    
       Gauge,   
      a3ComQosXmtStatsHighLossPkts    
       Gauge,   
      a3ComQosXmtStatsHighLossDiscardedPkts    
      Gauge    
    } 
         
a3ComQosXmtStatsQindex  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              reserved(1), 
              highPriority(2), 
              bestEffort(3), 
              lowPriority(4) 
            } 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The type of transmit queue for which this entry is valid." 
::= { a3ComQosXmtStatsEntry 1 } 
 
a3ComQosXmtStatsLowLossPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The rate of low loss packets. Low loss packets are packets  
            that are not marked as loss eligible  
            (a3ComQosCtrlConformPktLossEligible object) and are under the  
            threshold. The rate is specified in packets per second."  
::= { a3ComQosXmtStatsEntry 2 } 
    
a3ComQosXmtStatsLowLossDelayedPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The rate of low loss delayed packets. Low loss delayed  
            packets are packets that are not marked as loss eligible 
            (a3ComQosCtrlConformPktLossEligible object) and are over 
            the threshold. The rate is specified in packets per second."  
::= { a3ComQosXmtStatsEntry 3 } 
    
a3ComQosXmtStatsLowLossDiscardedPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The rate of low loss discarded packets. Low loss discarded 
            packets are packets that are discarded due to the queue 
            being full. The rate is specified in packets per second."  
::= { a3ComQosXmtStatsEntry 4 } 
 
a3ComQosXmtStatsHighLossPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The rate of high loss packets. High loss packets are  
            packets that are marked as loss eligible 
            (a3ComQosCtrlConformPktLossEligible object) and are under 
            the threshold. The rate is specified in packets per second."  
::= { a3ComQosXmtStatsEntry 5 } 
 
a3ComQosXmtStatsHighLossDiscardedPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The rate of high loss discarded packets. High loss  
            discarded packets are packets that are marked as loss eligible 
            (a3ComQosCtrlConformPktLossEligible object) and are over 
            the threshold. The rate is specified in packets per second."  
::= { a3ComQosXmtStatsEntry 6 } 
 
     
        -- 
        -- The QoS Transmit High Water Mark Statistics Table. 
        --  
         
a3ComQosXmtHmStatsTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosXmtHmStatsEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "This table contains QoS transmit high water mark rate  
            statistics. The interval over which the rate is calculated 
            is determined by the value of a3ComQosStatsInterval object." 
::= { a3ComQosStats 3 } 
 
a3ComQosXmtHmStatsEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosXmtHmStatsEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry containing transmit high water mark rate statistics." 
    INDEX  { ifIndex, a3ComQosXmtHmStatsQindex } 
::= { a3ComQosXmtHmStatsTable 1 } 
 
        A3ComQosXmtHmStatsEntry ::= 
    SEQUENCE { 
      a3ComQosXmtHmStatsQindex    
       INTEGER,   
      a3ComQosXmtHmStatsLowLossPkts    
       Gauge,   
      a3ComQosXmtHmStatsLowLossDelayedPkts    
       Gauge,   
      a3ComQosXmtHmStatsLowLossDiscardedPkts    
       Gauge,   
      a3ComQosXmtHmStatsHighLossPkts    
       Gauge,   
      a3ComQosXmtHmStatsHighLossDiscardedPkts    
      Gauge    
    } 
         
a3ComQosXmtHmStatsQindex  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              reserved(1), 
              highPriority(2), 
              bestEffort(3), 
              lowPriority(4) 
            } 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The type of queue for which this entry is valid." 
::= { a3ComQosXmtHmStatsEntry 1 } 
 
a3ComQosXmtHmStatsLowLossPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The high mark for low loss packets." 
::= { a3ComQosXmtHmStatsEntry 2 } 
 
a3ComQosXmtHmStatsLowLossDelayedPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The high mark for low loss delayed packets." 
::= { a3ComQosXmtHmStatsEntry 3 } 
 
a3ComQosXmtHmStatsLowLossDiscardedPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The high mark for low loss discarded packets." 
::= { a3ComQosXmtHmStatsEntry 4 } 
    
a3ComQosXmtHmStatsHighLossPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The high mark for high loss packets." 
::= { a3ComQosXmtHmStatsEntry 5 } 
 
a3ComQosXmtHmStatsHighLossDiscardedPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The high mark for high loss discarded packets." 
::= { a3ComQosXmtHmStatsEntry 6 } 
 
 
        -- 
        -- The QoS Receive Statistics Table. 
        --  
         
a3ComQosRcvStatsTable  OBJECT-TYPE 
    SYNTAX  SEQUENCE OF A3ComQosRcvStatsEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "A table containing QoS receive rate statistics. 
            The interval over which the rate is calculated is determined  
            by the value of a3ComQosStatsInterval object." 
::= { a3ComQosStats 4 } 
 
a3ComQosRcvStatsEntry  OBJECT-TYPE 
    SYNTAX  A3ComQosRcvStatsEntry 
    ACCESS  not-accessible 
    STATUS  mandatory 
    DESCRIPTION   
            "An entry containing receive rate statistics for a  
            particular port." 
    INDEX  { ifIndex } 
::= { a3ComQosRcvStatsTable 1 } 
 
        A3ComQosRcvStatsEntry ::= 
    SEQUENCE { 
      a3ComQosRcvStatsConformBytesTotal    
       Gauge,   
      a3ComQosRcvStatsNonConformBytesForFlows    
       Gauge,   
      a3ComQosRcvStatsNonConformBytesForNonFlows    
       Gauge,   
      a3ComQosRcvStatsDroppedPkts    
      Gauge    
    } 
         
a3ComQosRcvStatsConformBytesTotal  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The total conforming bytes receive rate.  
            The rate is in bytes per second."  
::= { a3ComQosRcvStatsEntry 1 } 
 
a3ComQosRcvStatsNonConformBytesForFlows  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The non-conforming bytes receive rate for flows. 
            The rate is in bytes per second."  
::= { a3ComQosRcvStatsEntry 2 } 
 
a3ComQosRcvStatsNonConformBytesForNonFlows  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The non-conforming bytes receive rate for non-flows. 
            The rate is in bytes per second."  
::= { a3ComQosRcvStatsEntry 3 } 
     
a3ComQosRcvStatsDroppedPkts  OBJECT-TYPE 
    SYNTAX  Gauge 
    ACCESS  read-only 
    STATUS  mandatory 
    DESCRIPTION   
            "The number of packets dropped. The rate is specified in  
            packets per second."  
::= { a3ComQosRcvStatsEntry 4 } 
     
     
        -- 
        -- QoS Misc. Group. 
        --  
     
a3ComQosBandwidthRatio  OBJECT-TYPE 
    SYNTAX  INTEGER (0..100) 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "The bandwidth ratio of HighPriority/(HighPriority+BestEffort) 
            that is allocated for each output port on a given system. 
            The value is represented as a percentage." 
::= { a3ComQosMisc 1 } 
  
a3ComQosExcessTrafficClassTag  OBJECT-TYPE 
    SYNTAX  INTEGER { 
              none(1), 
              ieee8021pTag0(2), 
              ieee8021pTag1(3), 
              ieee8021pTag2(4), 
              ieee8021pTag3(5), 
              ieee8021pTag4(6), 
              ieee8021pTag5(7), 
              ieee8021pTag6(8), 
              ieee8021pTag7(9) 
            } 
    ACCESS  read-write 
    STATUS  mandatory 
    DESCRIPTION   
            "This object indicates the IEEE802.1p traffic class value  
            to use to retag excess packets." 
::= { a3ComQosMisc 2 } 
  

a3ComQosFlowClassIntrudingEvent TRAP-TYPE
	ENTERPRISE 	a3ComSwitchingSystemsMib 
	VARIABLES   {
		a3ComQosFlowClassIndex,
		a3ComQosFlowClassIpProtoType,
		a3ComQosFlowClassSrcAddr,
		a3ComQosFlowClassDestAddr	
	}
	DESCRIPTION
		"The trap that is generated when a intruder 
		tries to enter a classified network"
::= 88


END 
