QoS MIB Implementation

This appendix provides information about QoS-based features that are implemented on Cisco ASR 1000 Series Router line cards and what tables and objects in the QoS MIB support these QoS features. The Cisco ASR 1000 Series Routers FlexWAN and OSM line card families each have a different QoS implementation. Do not assume that the QoS features across line card families are equivalent. Some of the QOS configuration is done at the PFC2 (policy feature card) level and others at the parallel express forwarding (PXF) processor level in each line card.

This appendix contain the following topics:


Note For detailed Cisco Quality of Service (QoS) information, Cisco IOS QoS features, and the technologies that implement them, go to the following URL
http://www.cisco.com/en/US/docs/ios/12_1/qos/configuration/guide/qcdintro.html


Implementing CISCO-CLASS-BASED-QOS-MIB

This section describes which objects from the CISCO-CLASS-BASED-QOS-MIB are implemented, which objects are relevant to the features available for Cisco ASR 1000 Series Routers line cards, and which QoS features are supported by each Cisco ASR 1000 Series Routers line card.

Table B-1 defines the expected values for Policy Actions.

 

Table B-1 QoS Policy Action Parameters

Policy Action
Definition
Notes

Bandwidth

A rate limiting function. The difference between the highest and lowest frequencies available for network signals. Bandwidth divides the link bandwidth among different traffic streams into multiple queues.

Must be set before you enable WRED.

Aggregate bandwidth rate limits match all of the packets on an interface or subinterface. Granular bandwidth rate limits match a particular type of traffic based on precedence, MAC address, or other parameters.

Priority

Priority queuing allows you to assign a guaranteed minimum bandwidth to one queue to minimize the packet delay variance for delay-sensitive traffic.

A routing feature in which frames in an output queue are prioritized based on various characteristics, such as packet size and interface type.

Shape

A shaper typically delays excess traffic using a buffer or queueing mechanism, to hold packets and shape the flow when the data rate of the source is higher than expected. (For example, GTS uses a weighted fair queue to delay packets to shape the flow, and FRTS uses either a priority queue (PQ), a custom queue (CQ), or a first-in, first-out (FIFO) queue for the same, depending on how you configure it.)

Shapers identify traffic descriptor violations.

Police

A policer typically drops traffic. (For example, CAR's rate-limiting policer either drops the packet or rewrites its IP precedence, resetting the packet header's type of service bits.)

Policing is the process by which the OSR limits the bandwidth consumed by a flow of traffic. Policing can mark or drop traffic.

Queue-limit

Parameter specifies the number of packets held by the queue. It operates on the default packet drop method of congestion management.

A Cisco queuing technique. A flow-based queuing algorithm that creates bit-wise fairness by allowing each queue to be serviced fairly in terms of byte count. For example, if queue 1 has 100-byte packets and queue 2 has 50-byte packets, the WFQ algorithm takes two packets from queue 2 for each one packet from queue 1. This makes service fair for each queue: 100 bytes each time the queue is serviced.

WFQ ensures that queues do not starve for bandwidth and that traffic gets predictable service. Low-volume traffic streams–which comprise the majority of traffic–receive increased service, transmitting the same number of bytes as high-volume streams. This behavior results in what appears to be preferential treatment for low-volume traffic, when in actuality it is creating fairness.

Fair-queue

Traffic shaping smooths traffic by storing traffic above the configured rate in a queue. When a packet arrives at the interface for transmission, the following happens:

  • If the queue is empty, the arriving packet is processed by the traffic shaper.
  • If possible, the traffic shaper sends the packet. Otherwise, the packet is placed in the queue.
  • If the queue is not empty, the packet is placed in the queue.

When there are packets in the queue, the traffic shaper removes the number of packets it can transmit from the queue at each time interval.

A Cisco queuing technique. A flow-based queuing algorithm that creates bit-wise fairness by allowing each queue to be serviced fairly in terms of byte count. For example, if queue 1 has 100-byte packets and queue 2 has 50-byte packets, the WFQ algorithm takes two packets from queue 2 for each one packet from queue 1. This makes service fair for each queue: 100 bytes each time the queue is serviced.

WRED—
weighted random early detection

Action that randomly discards packets during IP precedence settings congestion.

Precedence is a value of 0 to 7 where zero is low priority traffic and 7 represents high priority traffic.

Set (precedence)

The IP precedence (QoS) bits in the packet header are rewritten. The packet is then transmitted. You can use this action to either color (set precedence) or recolor (modify existing packet precedence) the packet.


NoteCongestion-management tools include priority queuing (PQ), custom queuing (CQ), weighted fair queuing (WFQ), and class-based weighted fair queuing (CBWFQ).



NotePolice and shape are traffic regulation mechanisms:

Shaping is used to create a traffic flow that limits the full bandwidth potential of the flows. This is used many times to prevent the overflow problem mentioned in the introduction. For instance, many network topologies use Frame Relay in a hub-and-spoke design. In this case, the central site normally has a high-bandwidth link (such as, T1), while remote sites have a low-bandwidth link in comparison (such as, 384 Kbps). In this case, it is possible for traffic from the central site to overflow the low bandwidth link at the other end. Shaping is a good way to pace traffic closer to 384 Kbps to avoid the overflow of the remote link. Traffic above the configured rate is buffered for transmission later to maintain the rate configured.

Policing is similar to shaping, but it differs in one important way; traffic that exceeds the configured rate is not buffered (and normally is discarded).


QoS MIB Policy Action Support Matrix

The tables in this section describe which objects from the CISCO-CLASS-BASED-QOS-MIB are implemented and which one are relevant to the different features available for Cisco ASR 1000 Series Routers line cards. The tables are divided into objects on the Cisco ASR 1000 Series Routers platform that are:

  • Supported, implemented, and instrumented (works as defined in the MIB)— Table B-3
  • Not supported or support is limited— Table B-4

Table B-2 lists the definitions of the values that are returned by objects listed in Table B-3 and Table B-4 . Policy actions are dependent on return values.

 

Table B-2 QoS Table Return Values

Definition
Identifier

Returns valid data.

Value is V.

Returns invalid data

Value is I. The object is not supported by this platform.

Not instantiated (Does not instantiate (return) any value for this object.)

Value is a dash ‘ ’.

Table B-3 lists QoS MIB table objects that are supported and implemented on the Cisco ASR 1000 Series Routers platform and the QoS policy actions that these objects support.

 

Table B-3 Supported QoS MIB Objects

MIB Tables and Objects
Policy Actions
Band-
width
Priority
Shape
Police
Queue Limit
Fair
Queue
WRED
Set
Notes

cbQosCMStatsTable

 

 

 

 

 

 

 

 

earl 6 (Sup2) only support packet counters and earl 7 (Sup3) only support byte counters.

cbQosCMPrePolicyPkt
Overflow

V

V

V

V

V

V

V

V

The objects listed with a value of V (valid) are supported and return valid data.

cbQosCMPrePolicyPkt

V

V

V

V

V

V

V

V

 

cbQosCMPrePolicyPkt64

V

V

V

V

V

V

V

V

 

cbQosCMPrePolicyByte
Overflow

V

V

V

V

V

V

V

V

 

cbQosCMPrePolicyByte

V

V

V

V

V

V

V

V

 

cbQosCMPrePolicyByte64

V

V

V

V

V

V

V

V

 

cbQosCMPrePolicyBitRate

V

V

V

V

V

V

V

V

 

cbQosCMPostPolicyByte
Overflow

V

V

V

V

V

V

V

V

 

cbQosCMPostPolicyByte

V

V

V

V

V

V

V

V

 

cbQosCMPostPolicy
Byte64

V

V

V

V

V

V

V

V

 

cbQosCMPostPolicyBit
Rate

V

V

V

V

V

V

V

V

 

cbQosCMDropPkt
Overflow

V

V

V

V

V

V

V

V

 

cbQosCMDropPkt

V

V

V

V

V

V

V

V

 

cbQosCMDropPkt64

V

V

V

V

V

V

V

V

 

cbQosCMDropByte
Overflow

V

V

V

V

V

V

V

V

 

cbQosCMDropByte

V

V

V

V

V

V

V

V

 

cbQosCMDropByte64

V

V

V

V

V

V

V

V

 

cbQosCMDropBitRate

V

V

V

V

V

V

V

V

 

cbQosMatchStmtStatsTable

 

 

 

 

 

 

 

 

earl 6 (Sup2) only support packet counters and earl 7 (Sup3) only support byte counters.

cbQosMatchPrePolicyPkt
Overflow

I

I

I

V

I

I

I

I

The objects listed with a value of I (invalid) are supported but return invalid data for all actions except for Police action (the return data is valid).

cbQosMatchPrePolicyPkt

I

I

I

V

I

I

I

I

 

cbQosMatchPrePolicy
Pkt64

I

I

I

V

I

I

I

I

 

cbQosMatchPrePolicyByte
Overflow

I

I

I

V

I

I

I

I

 

cbQosMatchPrePolicyByte

I

I

I

V

I

I

I

I

 

cbQosMatchPrePolicyBit
Rate

I

I

I

V

I

I

I

I

 

cbQosMatchPrePolicy
Byte64

I

I

I

V

I

I

I

I

 

cbQosPoliceStatsTable

 

 

 

 

 

 

 

 

earl 6 (Sup2) only support packet counters and earl 7 (Sup3) only support byte counters.

cbQosPoliceConformed
PktOverflow

V

The objects listed are supported but only return V (valid) data for Police action.

cbQosPoliceConformedPkt

V

 

cbQosPoliceConformed
Pkt64

V

The objects listed are supported but only return V (valid) data for Police action.

cbQosPoliceConformed
ByteOverflow

V

 

cbQosPoliceConformed
Byte

V

 

cbQosPoliceConformed
Byte64

V

 

cbQosPoliceConformed
BitRate

V

 

cbQosPoliceExceededPkt
Overflow

V

 

cbQosPoliceExceededPkt

V

 

cbQosPoliceExceeded
Pkt64

V

 

cbQosPoliceExceeded
ByteOverflow

V

 

cbQosPoliceExceededByte

V

 

cbQosPoliceExceeded
Byte64

V

 

cbQosPoliceExceeded
BitRate

V

 

cbQosQueueingCfgTable

 

 

 

 

 

 

 

 

 

cbQosQueueingCfgFlowEnabled

V

Not supported. Always false(2).

cbQosQueueingCfgIndividualQSize

Not supported. Always 0.

cbQosQueueingCfgDynamicQNumber

Not supported. Always 0.

cbQosQueueingStatsTable

 

 

 

 

 

 

 

 

 

cbQosQueueingCurrent
QDepth

V

V

V

V

The objects listed are supported but return valid data only for Bandwidth, Priority, Queue Limit, and Fair Queue.

cbQosQueueingMax
QDepth

V

V

V

V

 

cbQosQueueingDiscard
ByteOverflow

V

V

V

V

 

cbQosQueueingDiscard
Byte

V

V

V

V

 

cbQosQueueingDiscard
Byte64

V

V

V

V

 

cbQosQueueingDiscard
PktOverflow

V

V

V

V

 

cbQosQueueingDiscardPkt

V

V

V

V

 

cbQosQueueingDiscard
Pkt64

V

V

V

V

 

cbQosTSStatsTable

 

 

 

 

 

 

 

 

The objects listed are supported and return valid data for only Shape, Queue Limit, Fair Queue, and WRED.

cbQosTSStatsDropByte
Overflow

V

V

V

V

 

cbQosTSStatsDropByte

V

V

V

V

 

cbQosTSStatsDropByte64

V

V

V

V

 

cbQosTSStatsDropPkt
Overflow

V

V

V

V

 

cbQosTSStatsDropPkt

V

V

V

V

 

cbQosTSStatsDropPkt64

V

V

V

V

 

cbQosTSStatsCurrentQSize

V

V

V

V

 

cbQosREDClassStatsTable

 

 

 

 

 

 

 

 

Not instantiated for shape even though the CLI shows values for random and tail counters.

cbQosREDRandomDrop
PktOverflow

V

These objects are supported and return valid data for WRED action only.

cbQosREDRandomDropPkt

V

 

cbQosREDRandomDrop
Pkt64

V

 

cbQosREDRandom
DropByteOverflow

V

 

cbQosREDRandomDrop
Byte

V

 

cbQosREDRandomDrop
Byte64

V

 

cbQosREDTailDropPkt
Overflow

V

 

cbQosREDTailDropPkt

V

These objects are supported and return valid data for WRED action only.

cbQosREDTailDropPkt64

V

 

cbQosREDTailDropByte
Overflow

V

 

cbQosREDTailDropByte

V

 

cbQosREDTailDrop
Byte64

V

 

cbQosREDTransmitPkt
Overflow

V

 

cbQosREDTransmitPkt

V

 

cbQosREDTransmitPkt64

V

 

cbQosREDTransmitByte
Overflow

V

 

cbQosREDTransmitByte

V

 

cbQosREDTransmitByte64

V

 

Table B-4 lists QoS MIB table objects that are unsupported or have limited support on the Cisco ASR 1000 Series Routers platform and the QoS policy actions that these objects support.

 

Table B-4 QoS MIB Objects—Unsupported or Limited Support

MIB Tables and Objects
Policy Actions
Band-
width
Priority
Shape
Police
Queue Limit
Fair
Queue
WRED
Set
Notes

cbQosCMStatsTable

 

 

 

 

 

 

 

 

The objects listed are not supported but do return valid data which is always zero (0).

cbQosCMNoBufDropPkt
Overflow

V

V

V

V

V

V

V

V

 

cbQosCMNoBufDropPkt

V

V

V

V

V

V

V

V

 

cbQosCMNoBufDrop
Pkt64

V

V

V

V

V

V

V

V

 

cbQosPoliceStatsTable

 

 

 

 

 

 

 

 

The objects listed are not supported but do return valid data for Police action which is always zero (0).

cbQosPoliceViolatedPkt
Overflow

V

 

cbQosPoliceViolatedPkt

V

 

cbQosPoliceViolatedPkt64

V

 

cbQosPoliceViolated
ByteOverflow

V

 

cbQosPoliceViolatedByte

V

 

cbQosPoliceViolated
Byte64

V

 

cbQosPoliceViolated
BitRate

V

 

cbQosTSStatsTable

 

 

 

 

 

 

 

 

The objects listed are not supported but do return valid data which is always zero (0) for Shape, Queue Limit, Fair Queue, and WRED.

cbQosTSStatsDelayed
ByteOverflow

V

 

V

V

V

 

cbQosTSStatsDelayedByte

V

 

V

V

V

 

cbQosTSStatsDelayed
Byte64

V

 

V

V

V

 

cbQosTSStatsDelayed
PktOverflow

V

 

V

V

V

 

cbQosTSStatsDelayedPkt

V

 

V

V

V

 

cbQosTSStatsDelayed
Pkt64

V

 

V

V

V

 

cbQosTSStatsActive

I

 

I

I

I

This object is not supported and returns invalid data which is always zero (0) for a truthValue type.

cbQosREDClassStatsTable

 

 

 

 

 

 

 

 

The objects listed with a dash (-) are not supported.

cbQosREDECNMarkPkt
Overflow

 

cbQosREDECNMarkPkt

 

cbQosREDECNMarkPkt64

 

cbQosREDECNMarkByte
Overflow

 

cbQosREDECNMarkByte

 

cbQosREDECNMarkByte64

 

cbQosREDMeanQSizeUnits

V

 

cbQosREDMeanQSize

V

 

cbQosSetStatsTable

 

 

 

 

 

 

 

 

The objects listed with a dash (-) are not supported.

cbQosSetDscpPkt64

 

cbQosSetPrecedencePkt64

 

cbQosSetQosGroupPkt64

 

cbQosSetFrDePkt64

 

cbQosSetAtmClpPkt64

 

cbQosSetL2CosPkt64

 

cbQosSetMplsExpImposition
Pkt64

 

cbQosSetDiscardClassPkt64

 

cbQosSetMplsExpTopMost
Pkt64

 

cbQosSetSrpPriorityPkt64

 

cbQosSetFrFecnBecnPkt64

 

cbQosSetDscpTunnelPkt64

 

cbQosSetPrecedenceTunnel
Pkt64

 

cbQosPoliceColorStatsTable

 

 

 

 

 

 

 

 

The objects listed with a dash (-) are not supported.

cbQosPoliceCfmColorCfm
Pkt64

 

cbQosPoliceCfmColorCfm
Byte64

 

cbQosPoliceCfmColorExd
Pkt64

 

cbQosPoliceCfmColorExd
Byte64

 

cbQosPoliceCfmColorVlt
Pkt64

 

cbQosPoliceCfmColorVlt
Byte64

 

cbQosPoliceExdColorExd
Pkt64

 

cbQosPoliceExdColorExd
Byte64

 

cbQosPoliceExdColorVltPkt64

 

cbQosPoliceExdColorVlt
Byte64

 

cbQosPoliceVltColorVltPkt64

 

cbQosPoliceVltColorVlt
Byte64

 

cbQosPoliceCfgTable

 

 

 

 

 

 

 

 

 

cbQosPoliceCfgConformColor

 

 

 

 

 

 

 

 

Not Implemented

cbQosPoliceCfgExceedColor

 

 

 

 

 

 

 

 

Not Implemented