-- extracted from draft-kanada-diffserv-qospifmib-00.txt -- at Mon Nov 15 17:11:30 1999 Qos-PIF-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, IpAddress, Integer32, Gauge32, Counter32, Gauge32 FROM SNMPv2-SMI mib-2 FROM RFC1213-MIB; qos MODULE-IDENTITY LAST-UPDATED "199910201500JST" ORGANIZATION "Hitachi Ltd." CONTACT-INFO "Yasusi Kanada and Mitsuru Ikezawa, Central Research Laboratory, Hitachi Ltd. 1-280, Higashi-Koigakubo, Kokubunji Tokyo 185-8601, Japan {kanada,ikezawa}@crl.hitachi.co.jp" DESCRIPTION "The router-architecture-independent MIB module for controlling the QoS function of a router." ::= { mib-2 xx } qosCapability OBJECT IDENTIFIER ::= { qos 1 } -- QoS capability of the router qosScheduleMethods OBJECT IDENTIFIER ::= { qos 2 } -- List of packet scheduling methods for the router qosDroppingMethods OBJECT IDENTIFIER ::= { qos 3 } -- List of packet dropping methods for the router qosPolicyRules OBJECT IDENTIFIER ::= { qos 4 } -- QoS policy rules for IP packets ------------------------------------------------- -- Textual conventions ------------------------------------------------- Dscp ::= TEXTUAL-CONVENTION SYNTAX INTEGER (0..63) STATUS current DESCTIPTION "The DiffServ code point." DscpOrUndef ::= TEXTUAL-CONVENTION SYNTAX INTEGER (-1 | 0..63) STATUS current DESCTIPTION "The DiffServ code point, or -1 when undefined." Gauge32OrUndef ::= TEXTUAL-CONVENTION SYNTAX INTEGER (-1 | 0..4294967295) STATUS current DESCTIPTION "Gage32 value, or -1 when undefined." PermilOrUndef ::= TEXTUAL-CONVENTION SYNTAX INTEGER (-1 | 0..1000) STATUS current DESCTIPTION "Permil value (1000 permil = 1), or -1 when undefined." ------------------------------------------------- -- QoS capability of the router ------------------------------------------------- -- This part defines the QoS capability of the router. -- [Note] This MIB does not contain information available from other -- MIBs, e.g., the interface MIB in RFC2233. To map this MIB to PIB, -- this type of information must be added. It includes -- 1. The maximum number of logical interfaces (ifNumber in the -- interface MIB). -- 2. The bandwidth of the interface. -- ... -- -- Capability table qosIfCapabilityTable OBJECT-TYPE SYNTAX SEQUENCE OF qosIfCapabilityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table that contains QoS-related capability of logical interfaces of the router. The interface index corresponds to ifIndex in the interface MIB in MIB-2. Is is asserted that each logical interface has a unique ifIndex. Phisical ports may have ifIndexes (which is different from any logical interface index)." ::= { qosCapability 1 } qosIfCapabilityEntry OBJECT-TYPE SYNTAX QosIfCapabilityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The QoS-related capability of an interface." INDEX { qosIfIndex } ::= { qosCapabilityTable 1 } QosIfCapabilityEntry ::= SEQUENCE { qosIfIndex Gauge32, qosIfPortNumber Gauge32, qosIfQueueSupported BITS, qosIfDropSupported BITS, qosIfStatus RowStatus } qosIfIndex OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "A logical interface index (identification number). This index corresponds to ifIndex in the interface MIB in MIB-2. There may be interfaces that no QoS information can be associated with." ::= { qosIfCapabilityEntry 1 } -- Logical interface and phisical port (interface) mapping: qosIfPortNumber OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-only STATUS current DESCRIPTION "The phisical port number that corresponds to the logical interface. This represents the correspondence between logical interfaces and phisical ports. Multiple logical interfaces may correspond to a single phisical port. All the resources defined in this MIB are asserted to be specified for each logical interface. The logical interface index corresponds to ifIndex in the interface MIB in MIB-2." ::= { qosIfCapabilityEntry 2 } -- Packet scheduling algorithm support: qosIfQueueSupported OBJECT-TYPE SYNTAX BITS { qosIfFifoSchedule(1), -- This flag is set when FIFO scheduling is supported -- (i.e., at least one queue is available.) qosIfPrioritySchedule(2), -- This flag is set when priority scheduling is -- supported. qosIfPacketFairSchedule(3), -- This flag is set when packet-fair scheduling -- function is supported. qosIfByteFairSchedule(4), -- This flag is set when byte-fair scheduling -- (fair queuing) function is supported. qosIfWeightedPacketFairSchedule(16), -- This flag is set when weights can be specified -- for weighted packet-fair scheduling. qosIfWeightedByteFairSchedule(17), -- This flag is set when weights can be specified -- for weighted byte-fair scheduling. qosIfBoundedByteFairSchedule(24) -- This flag is set when bandwidth limit can be -- specified for weighted byte-fair scheduling. } MAX-ACCESS read-only STATUS current DESCRIPTION "A bit list of supported packet scheduling algorithms." ::= { qosIfCapabilityEntry 3 } -- Packet dropping algorithm support qosIfDropSupported OBJECT-TYPE SYNTAX BITS { qosIfDropAll(1), -- This flag is set when function of dropping all -- packets is supported. qosIfEarlyDrop(3), -- This flag is set when (deterministic) early drop -- function is supported. qosIfRandomEarlyDropByPacket(4), -- This flag is set when random early drop (RED) -- function measured by packet is supported. qosIfRandomEarlyDropByByte(5), -- This flag is set when random early drop (RED) -- function measured by byte is supported. } MAX-ACCESS read-only STATUS current DESCRIPTION "A bit list of supported packet dropping algorithms." ::= { qosIfCapabilityEntry 4 } qosIfStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the interface capability table entry." DEFVAL { active } ::= { qosIfCapabilityEntry 5 } ------------------------------------------------- -- Scheduling methods for the router ------------------------------------------------- -- This part defines the packet scheduling and queuing methods -- for the router. qosSchedulingMethodTable OBJECT-TYPE SYNTAX SEQUENCE OF qosSchedulingMethodEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table of settings of the packet scheduling queues in logical interfaces. The logical interface index corresponds to ifIndex in the interface MIB in MIB-2." ::= { qosScheduleMethods 1 } qosSchedulingMethodEntry OBJECT-TYPE SYNTAX qosSchedulingMethodEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The settings of packet scheduling queues in a logical interface." INDEX { qosQueueIfIndex } ::= { qosSchedulingMethodTable 1 } qosSchedulingMethodEntry ::= SEQUENCE { qosSchedulingMethodIndex Gauge32, qosSchedulingAlgorithm INTEGER, qosSchedulingNumberQueues Gauge32, qosSchedulingQueueLength Gauge32, qosSchedulingQueueStatus RowStatus } qosSchedulingMethodIndex OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of the scheduling method." ::= { qosSchedulingMethodEntry 1 } qosSchedulingAlgorithm OBJECT-TYPE SYNTAX INTEGER { qosQueueNoQueue(0), qosQueueFifo(1), qosQueuePriority(2), qosQueuePacketFair(3), qosQueueByteFair(4), qosQueueBoundedByteFair(5) } MAX-ACCESS read-write STATUS current DESCRIPTION "A packet queuing algorithm. The default value is implementation-dependent." ::= { qosSchedulingMethodEntry 2 } qosSchedulingNumberQueues OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-write STATUS current DESCRIPTION "The number of (simulated) packet scheduling queues, in the abstracted router. If the number of queues in the real router is less than that in the abstracted router, the same queue may be used for different queue precedences. If the same precedenceis specified in two or more rules, packets that match to these rules are put into the same queue, and the order of the packets are preserved. The default value is implementation-dependent." ::= { qosSchedulingMethodEntry 3 } qosSchedulingQueueLength OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-write STATUS current DESCRIPTION "The length of the queue by number of packets. The default value is implementation-dependent." ::= { qosSchedulingMethodEntry 4 } qosSchedulingQueueStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the queue setting table entry." DEFVAL { active } ::= { qosSchedulingMethodEntry 5 } -- -- Queue settings for each QUEUE qosQueueSettingTable OBJECT-TYPE SYNTAX SEQUENCE OF qosQueueSettingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The settings of all the queues for all the scheduling methods. This is a two-dimensional conceptual table." ::= { qosScheduleMethods 2 } qosQueueSettingEntry OBJECT-TYPE SYNTAX qosQueueSettingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The settings of a queue for the This entry is associated with each queue in each logical interface." INDEX { qosQueueSchedulingMethodIndex, qosQueueIndex } ::= { qosQueueSettingTable 1 } qosQueueSettingEntry ::= SEQUENCE { qosQueueSchedulingMethodIndex Gauge32, qosQueueNumber Gauge32, qosQueueWeight Gauge32, qosQueueSettingStatus RowStatus } qosQueueSchedulingMethodIndex OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of the scheduling method." ::= { qosQueueSettingEntry 1} qosQueueNumber OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The queue number. The range is 1 to qosSchedulingNumberQueues in the corresponding qosSchedulingMethodEntry. If this value is larger, the precedence is higher, in the case of priority scheduling." ::= { qosQueueSettingEntry 2 } qosQueueWeight OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-write STATUS current DESCRIPTION "The weight of the abstracted router queue used for weighted round robin or other weighted queuing algorithms. The summation of weights of all the queues in a scheduler must not greater than 2^32-1." DEFVAL { 100 } ::= { qosQueueSettingEntry 3 } qosQueueSettingStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the queue interface setting table entry." DEFVAL { active } ::= { qosQueueSettingEntry 4 } ------------------------------------------------- -- Packet dropping methods ------------------------------------------------- qosDroppingMethodTable OBJECT-TYPE SYNTAX SEQUENCE OF qosDroppingMethodEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table that contains packet dropping methods." ::= { qosDroppingMethods 1 } qosDroppingMethodEntry OBJECT-TYPE SYNTAX QosDroppingMethodEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A packet dropping method. qosDropRatioPermil, qosDropMinThresholdPermil, and qosDropMaxThresholdPermil specify RED parameters." ::= { qosDroppingMethodTable 1 } QosDroppingMethodEntry ::= SEQUENCE { qosDropIndex Gauge32, qosDropAlgorithm INTEGER, qosDromSubAlgorithm Gauge32, qosDropRatioPermil PermilOrUndef, qosDropMinThresholdPermil PermilOrUndef, qosDropMaxThresholdPermil PermilOrUndef, qosDropStatus RowStatus } qosDropIndex OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "A packet dropping method identifier." ::= { qosDroppingMethodEntry 1 } qosDropAlgorithm OBJECT-TYPE SYNTAX INTEGER { qosDropAll(1), -- All the packets are dropped. qosNoEarlyDrop(2), -- The packet is dropped only when the queue is -- filled. qosEarlyDrop(3), -- The packet may (deterministically) dropped -- earlier than the queue is filled. qosRandomEarlyDropByPacket(4), -- Random early dropping measured by packet. qosRandomEarlyDropByByte(5), -- Random early dropping measured by byte. } MAX-ACCESS read-write STATUS current DESCRIPTION "The current queuing algorithm. The default value is implementation-dependent." DEFVAL { qosNoEarlyDrop } ::= { qosDroppingMethodEntry 2 } qosDropSubAlgorithm OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-write STATUS current DESCRIPTION "The subcode of queuing algorithm. If the router has two or more queuing algorithms that are categorized into the same value of qosDropAlgorithm, they will be distinguished using this object." DEFVAL { 0 } ::= { qosDroppingMethodEntry 3 } qosDropRatioPermil OBJECT-TYPE SYNTAX PermilOrUndef MAX-ACCESS read-only STATUS current DESCRIPTION "The ratio of packet drop when the queue is filled till qosDropMinThresholdPermil." DEFVAL { 1000 } ::= { qosDroppingMethodEntry 4 } qosDropMinThresholdPermil OBJECT-TYPE SYNTAX PermilOrUndef MAX-ACCESS read-only STATUS current DESCRIPTION "The permil of filled part of the queue when packets begin to drop." DEFVAL { 1000 } ::= { qosDroppingMethodEntry 5 } qosDropMaxThresholdPermil OBJECT-TYPE SYNTAX PermilOrUndef MAX-ACCESS read-only STATUS current DESCRIPTION "The minimum permil of filled part of the queue when all the packets drop. If this value is equal to qosDropMinThresholdPermil, either all packets are forwarded or dropped (no choice)." DEFVAL { 1000 } ::= { qosDroppingMethodEntry 6 } qosDropStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the packet dropping method table entry." DEFVAL { active } ::= { qosDroppingMethodEntry 7 } ------------------------------------------------- -- Classifiers, its subrules, and actions ------------------------------------------------- -- This part defines policy rules (both Multi-Field (MF) and Basic -- Aggregate (BA) classifiers. The rules are defined using the -- classifier table, aggregated, and assigned to logical interfaces -- using the policy and the policy-to-interface mapping table. -- -- Classifier table qosClassifierTable OBJECT-TYPE SYNTAX SEQUENCE OF qosClassifierEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of multi-field and basic aggregate classifiers." ::= { qosPolicyRules 1 } qosClassifierEntry OBJECT-TYPE SYNTAX QosClassifierEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A classifier entry." INDEX { qosClassifierId } ::= { qosRuleTable 1 } QosClassifierEntry ::= SEQUENCE { qosClassifierId Gauge32, -- Single packet conditions qosClassifierProtocol INTEGER (-1 | 0..255), qosClassifierIpPacketLengthMin Unsigned32OrUndef, qosClassifierIpPacketLengthMax Unsigned32OrUndef, qosClassifierSourceAddress IpAddress, qosClassifierSourceMasks IpAddress, qosClassifierDestAddress IpAddress, qosClassifierDestMasks IpAddress, qosClassifierSourcePortMin INTEGER (0..65535), qosClassifierSourcePortMax INTEGER (0..65535), qosClassifierDestPortMin INTEGER (0..65535), qosClassifierDestPortMax INTEGER (0..65535), qosClassifierDscp DscpOrUndef, -- Labeling action qosClassifierOutLabel Gauge32, qosClassifierStatus RowStatus } qosClassifierId OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The classifier ID." ::= { qosClassifierEntry 1 } qosClassifierProtocol OBJECT-TYPE SYNTAX INTEGER (-1 | 0..255) MAX-ACCESS read-write STATUS current DESCRIPTION "The protocol number of the IP packet." DEFVAL { -1 } ::= { qosClassifierEntry 2 } qosClassifierIpPacketLengthMin OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The lower bound of IP packet data length." DEFVAL { -1 } ::= { qosClassifierEntry 3 } qosClassifierIpPacketLengthMax OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The upper bound of IP packet data length." DEFVAL { -1 } ::= { qosClassifierEntry 4 } qosClassifierSourceAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-write STATUS current DESCRIPTION "The IP source address." DEFVAL { '00000000'H } ::= { qosClassifierEntry 5 } qosClassifierSourceMasks OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-write STATUS current DESCRIPTION "The source address mask." DEFVAL { '00000000'H } ::= { qosClassifierEntry 6 } qosClassifierDestAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-write STATUS current DESCRIPTION "The IP destination address." DEFVAL { '00000000'H } ::= { qosClassifierEntry 7 } qosClassifierDestMasks OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-write STATUS current DESCRIPTION "The destination address mask." DEFVAL { '00000000'H } ::= { qosClassifierEntry 8 } qosClassifierSourcePortMin OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS read-write STATUS current DESCRIPTION "The lower bound of the source port number." DEFVAL { 0 } ::= { qosClassifierEntry 9 } qosClassifierSourcePortMax OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS read-write STATUS current DESCRIPTION "The upper bound of the source port number." DEFVAL { 65535 } ::= { qosClassifierEntry 10 } qosClassifierDestPortMin OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS read-write STATUS current DESCRIPTION "The lower bound of the destination port number." DEFVAL { 0 } ::= { qosClassifierEntry 11 } qosClassifierDestPortMax OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS read-write STATUS current DESCRIPTION "The upper bound of the destination port number." DEFVAL { 65535 } ::= { qosClassifierEntry 12 } qosClassifierDscp OBJECT-TYPE SYNTAX DscpOrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The DSCP to be tested." DEFVAL { -1 } ::= { qosClassifierEntry 13 } qosClassifierOutLabel OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-write STATUS current DESCRIPTION "The virtual label to be put when the MF conditions meet." ::= { qosClassifierEntry 14 } qosClassifierStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the flow rule table entry." DEFVAL { active } ::= { qosClassifierEntry 15 } -- -- Metering subrule table qosMeteringRuleTable OBJECT-TYPE SYNTAX SEQUENCE OF qosMeteringRuleEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of policing rules." multi-field packet flow classifier rule." ::= { qosPolicyRules 2 } qosMeteringRuleEntry OBJECT-TYPE SYNTAX qosMeteringRuleEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A policing subrule that works on an (aggregated) flow with a specific virtual label value." INDEX { qosMeteringInLabel, qosMeteringRuleId } ::= { qosMeteringRuleTable 1 } QosMeteringRuleEntry ::= SEQUENCE { qosMeteringRuleId Gauge32, -- Leaky/token bucket metering conditions qosMeteringInLabel Gauge32, qosMeteringCommittedRateMin Unsigned32OrUndef, qosMeteringCommittedRateMax Unsigned32OrUndef, qosMeteringPeakRate Unsigned32OrUndef, qosMeteringBucketSize Unsigned32OrUndef, -- Labeling qosMeteringOutLabel Gauge32, qosMeteringSTATUS RowStatus } qosMeteringRuleId OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The rule ID." ::= { qosMeteringRuleEntry 1 } qosMeteringInLabel OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The virtual flow label for this rule." ::= { qosMeteringRuleEntry 2 } qosMeteringCommittedRateMin OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The minimum value of committed bit rate that causes the specified action." DEFVAL { -1 } ::= { qosMeteringRuleEntry 3 } qosMeteringCommittedRateMax OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum value of committed bit rate that causes the specified action." DEFVAL { -1 } ::= { qosMeteringRuleEntry 4 } qosMeteringPeakRate OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The peak bit rate that might not cause the specified action. If this value is not -1 nor the same as qosMeteringCommittedRateMin, a leaky bucket is used. If this value is larger than qosMeteringCommittedRateMin, a token bucket is used." DEFVAL { -1 } ::= { qosMeteringRuleEntry 5 } qosMeteringBucketSize OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The leaky/token bucket size." DEFVAL { -1 } ::= { qosMeteringRuleEntry 6 } qosMeteringOutLabel OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The virtual label to be put when the MF conditions meet." ::= { qosMeteringRuleEntry 7 } qosMeteringStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the policing rule table entry." DEFVAL { active } ::= { qosMeteringRuleEntry 8 } -- -- Action table qosActionTable OBJECT-TYPE SYNTAX SEQUENCE OF qosActionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of multi-field packet flow classification conditions." ::= { qosPolicyRules 3 } qosActionEntry OBJECT-TYPE SYNTAX QosActinEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A packet flow action entry." INDEX { qosActionInLabel } ::= { qosActionTable 1 } QosActionEntry ::= SEQUENCE { qosActionInLabel Gauge32, qosActionSchedulingMethod Unsigned32OrUndef, qosActionQueueNumber Unsigned32OrUndef, qosActionDroppingMethod Unsigned32OrUndef, qosActionOutDscp DscpOrUndef, qosActionOutIfIndex Unsigned32OrUndef, qosActionStatus RowStatus } qosActionInLabel OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The virtual flow label for this action." ::= { qosActionEntry 1 } qosActionSchedulingMethod OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "An index into the scheduling method table. This specifies the scheduling method to be taken. If this value is -1, no scheduling method is specified." DEFVAL { -1 } ::= { qosActionEntry 2 } qosActionQueueNumber OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The queue number to be selected when the conditions is satisfied. If the number of queues in the real router is less than that in the abstracted router, the same queue may be used for different queue numbers. However, if two rules in the same logical interface specifies the same queue number, the packet order is preserved between the rules. This value is effective only when qosActionSchedulingMethod is not -1." ::= { qosActionEntry 3 } qosActionDroppingMethod OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "An index into the packet dropping method table. This specifies the dropping method to be taken. If this value is -1, no dropping method is specified." DEFVAL { -1 } ::= { qosActionEntry 4 } qosActionOutDscp OBJECT-TYPE SYNTAX DscpOrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The new DSCP to be assigned when the single packet conditions are satisfied. If this value is -1, the DSCP is not updated." DEFVAL { -1 } ::= { qosActionEntry 5 } qosActionOutIfIndex OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The logical interface to be sent the packet. If this value is set, the action is a tag switching." ::= { qosActionEntry 6 } qosActionStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the action table entry." DEFVAL { active } ::= { qosActionEntry 7 } -- -- Policy table (rule list table) qosPolicyTable OBJECT-TYPE SYNTAX SEQUENCE OF qosPolicyEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains policies. A policy in this table may be assigned to only one logical interface, or to multiple interfaces. A policy table may correspond to a role combination, i.e., each policy table can be assigned to a role combination. The router resource shortage may be avoided by sharing a policy by multiple interfaces." INDEX { qosPolicyId, qosPolicyEntryIndex } ::= { qosPolicyRules 6 } qosPolicyEntry OBJECT-TYPE SYNTAX QosPolicyEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A policy (an ordered list of policy rules)." ::= { qosPolicyTable 1 } QosPolicyEntry ::= SEQUENCE { qosPolicyId Gauge32, qosPolicyEntryIndex Gauge32, qosPolicyClassifierId Gauge32, qosPolicyStatus RowStatus } qosPolicyId OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index into the policy table." ::= { qosPolicyEntry 1 } qosPolicyEntryIndex OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of the policy entry." ::= { qosPolicyEntry 2 } qosPolicyClassifierId OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-write STATUS current DESCRIPTION "An identification number of the classifier." ::= { qosPolicyEntry 3 } qosPolicyStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the policy table entry." DEFVAL { active } ::= { qosPolicyEntry 4 } -- -- Policy-to-interface mapping table qosPolicyIfTable OBJECT-TYPE SYNTAX SEQUENCE OF qosPolicyIfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table represents a mapping from the logical interfaces to policies, where each policy may corresponds to a role combination. The logical interface index (qosPolicyIfIndex) corresponds to ifIndex in the interface MIB in MIB-2." INDEX { qosPolicyIfIndex } ::= { qosPolicyRules 7 } qosPolicyIfEntry OBJECT-TYPE SYNTAX QosPolicyIfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A mapping table entry that assigns a policy to a logical interface." ::= { qosPolicyIfTable 1 } QosPolicyIfEntry ::= SEQUENCE { qosPolicyIfIndex Gauge32, qosPolicyIdInbound Unsigned32OrUndef, qosPolicyIdOutbound Unsigned32OrUndef, qosPolicyMappingStatus RowStatus } qosPolicyIfIndex OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "A logical interface index." ::= { qosPolicyIfEntry 1 } qosPolicyIdInbound OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The policy identification number for the in-bound port of the interface." DEFVAL { -1 } ::= { qosPolicyIfEntry 2 } qosPolicyIdOutbound OBJECT-TYPE SYNTAX Unsigned32OrUndef MAX-ACCESS read-write STATUS current DESCRIPTION "The policy identification number for the out-bound port of the interface." DEFVAL { -1 } ::= { qosPolicyIfEntry 3 } qosPolicyStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the role combination table entry." DEFVAL { active } ::= { qosPolicyIfEntry 4 } END