The network, heart of any modern business, serves business applications and their users. Cisco IOS® Quality of Service (QoS) facilitates the management of network performance with respect to bandwidth, delay, jitter, and packet loss, which are critical to optimizing application performance and meeting Service Level Agreements (SLAs).
Customers have clear QoS requirements:
• Standard Command Line Interface (CLI) and semantics for QoS features across all platforms supported by Cisco IOS Software
• Simple and accurate configurations
• QoS provisioning within the context of an extensible language
These reduce training and deployment costs and time. Most critically, realization of these requirements ensures a seamless, end-to-end implementation of QoS that offers predictable treatment to traffic and fulfills the desired network policies.
Cisco Modular QoS CLI (MQC) framework is the Cisco IOS QoS* user language that makes these stringent requirements possible.
CISCO MQC-DEFINING A USER LANGUAGE FOR CISCO IOS QOS
Cisco MQC provides a modular and highly extensible framework for deploying QoS, by standardizing the CLI and semantics for QoS features across all platforms that are supported by Cisco IOS Software.
A standardized language for QoS provides three primary benefits:
1. Minimizes the learning curve, number of provisioning errors, and the time and cost of deployment by giving customers a consistent, clear, and modular QoS configuration across all Cisco platforms.
2. Ensures consistent behavior from all hardware, which conforms to the MQC specification, regardless of the hardware environment. This allows customers to configure QoS in consistency on all hardware, from the smallest Cisco platforms to the most powerful core routers. This also enables the seamless transition of QoS configurations between platforms, making it easy to transport QoS policies during hardware upgrades.
3. Enables rapid insertion of new features and technology innovations (ie: new classification techniques, hierarchical QoS structures) on any platform, because of the extensible framework. This framework also leverages the existing knowledge and methodology of the user.
Cisco MQC was first introduced as a framework for Class-Based Weighed Fair Queuing (CBWFQ) in Cisco IOS Software Release 12.0(5)T. It has evolved to support the majority of the QoS features. Using MQC requires a three-step process (see Figure 1):
1. Define a class-map. The first step in QoS deployment is to identify the interesting traffic (ie: classify the packets). This step defines a grouping of network traffic-a class-map in MQC terminology-with various classification tools: Access Control Lists (ACLs), IP addresses, IP precedence, IP Differentiated Services Code Point (DSCP), IEEE 802.1p, MPLS EXP, and Cisco Network Based Application Recognition (NBAR).
2. Define a policy-map. Decide what to do with a group once its traffic has been identified. This step can be considered the actual construction of a QoS policy-a policy-map in MQC terminology-by choosing the group of traffic (ie: class-map) on which to perform QoS functions. Examples of QoS functions are queuing, dropping, policing, shaping, and marking.
3. Apply the policy-map. Apply the appropriate policy-map to the desired interfaces, sub-interfaces, or Asynchronous Transfer Mode (ATM) or Frame Relay Permanent Virtual Circuits (PVCs).
Figure 1. A Sample Application of MQC
The classification step is modular and independent of what is done to the packet after it is classified. For example, a defined policy-map contains various class-maps and the configuration within a policy-map can be changed independently from the configuration of a defined class-map (and vice versa). Further, use of the no policy-map command can disable an entire QoS policy.
CISCO MQC-SUMMARY
Cisco MQC standardizes the CLI and semantics for configuring QoS features. The following are advantages of the Cisco MQC:
• Standardizes QoS provisioning across all Cisco IOS Software platforms, while hiding and abstracting the underlying hardware architecture. Customers can upgrade to the next generation of Cisco hardware, and copy existing MQC configurations, regardless of the deployment platforms.
• Isolates classification changes from policy changes, and disables a QoS policy with a single command, via a modular configuration. In addition, a well-constructed QoS policy can be applied to multiple interfaces or Permanent Virtual Connections (PVCs), implementing the "build once, use many" paradigm.
• Supports the concept of hierarchical policies to deliver an extremely powerful QoS solution.
Example: enforce a sub-rate (ie: 10Mbps virtual pipe on a 1Gbps link) on a particular link, while offering minimum bandwidth guarantees to applications such as voice, mission critical applications, and video within that virtual pipe:
• Voice: 1 Mbps
• Mission critical applications traffic: 2 Mbps
• Video: 5 Mbps
• Remaining bandwidth allocated to best-effort traffic within the defined 10 Mbps pipe
Below is the sample configuration.
Router(config)# policy-map CHILD
Router(config-pmap)# class VOICE
Router(config-pmap-c)# priority 1000
Router(config-pmap-c)# class MCA
Router(config-pmap-c)# bandwidth 2000
Router(config-pmap-c)# class VIDEO
Router(config-pmap-c)# bandwidth 5000
Router(config)# policy-map PARENT
Router(config-pmap)# class class-default
Router(config-pmap-c)# shape average 10000000
Router(config-pmap-c)# service-policy CHILD
Note: If a particular application does not use the bandwidth, it can be shared among the active applications, therefore no bandwidth is wasted.
• Incorporates new QoS policy and classification functionality easily, as an addition to the underlying infrastructure.
• Supports the Cisco CBQoSMIB, which is one of the most flexible and feature-rich QoS MIBs in the world-both in terms of the amount of information it provides on traffic transiting a link or PVC (ie: bit-rate on a per class of service basis), and in terms of the information it provides about how the various features acted on the traffic (e.g. packet-drops, drop-rate, packets policed, shaped, etc.).
CISCO MQC-KEY QOS FEATURES AND VALUE PROPOSITIONS
Table 1 summarizes some of the key QoS features within the MQC framework, their benefits and applicability.
Table 1. MQC-Based QoS Features and Value Propositions
Cisco MQC Feature
Value Proposition
Enterprise Backbone
Enterprise Premise Edge
Service Provider Aggregation Edge
Service Provider Core
Comprehensive Layer 2 and Layer 3 Classification and Marking
Complete set of capabilities to classify and mark traffic based on any Layer 2 or Layer 3 QoS field (ie: IEEE 802.1p, MPLS EXP, IP DSCP, ATM CLP, FR DE).
X
X
X
Low Latency Queuing (LLQ)
Offers a complete queuing solution, with bandwidth-bounded priority queuing and CBWFQ.
X
X
X
X
Network Based Application Recognition (NBAR)
Intelligently classifies Layer 4 through Layer 7 protocols, including Citrix, HTTP-URLs, SAP
X
X
X
*
Single-Rate Policer
Highly versatile policer that allows for packet re-marking (Layer 2 and Layer 3) or dropping policies to control traffic at the network edges/aggregation points. Conforms to RFC-2697.
X
X
X
*
Two-Rate Policer
Extending the features of the single-rate policer, the two-rate policer makes the feature more intuitive to use by supporting both a Committed Information Rate (CIR) and Peak Information Rate (PIR) (average and peak rates), and allows duplication of the CIR/PIR service of Frame-Relay in the pure IP domain. Conforms to RFC-2698.
X
X
X
X
Weighted Random Early Detect (WRED)
Provides active queue management to optimize Transmission Control Protocol (TCP), and rate-adaptive flows. Can be used in conjunction with CBWFQ, while being DiffServ-Compliant. Using WRED aids in implementing the Assured Forwarding (AF) behavior and maximizes network throughput in congestion scenarios.
X
X
X
X
Explicit Congestion Notification (ECN)
A feature of WRED, ECN notifies TCP hosts about congestion in the network and requests a slow down. ECN offers a more efficient way to indicate congestion to end-systems, compared to packet drops.
X
X
X
X
Class-Based QoS MIB
For all features within the MQC feature, this MIB offers monitoring of various counters, and is the most comprehensive QoS monitoring infrastructure in the industry.
X
X
X
X
X Primary applicability
* Secondary applicability
CISCO MQC IN CISCO PRODUCTS
Currently, Cisco MQC is supported on the following platforms:
• Cisco 800, 1700, 1800, 2600-XM, 2800, 3600, 3700, 3800, 6500, 7300, 7400, 7500, and 7600 Series Routers
• Cisco 10000 and 12000 Series Internet Routers
CISCO MQC-NEW MQC FEATURES IN CISCO IOS SOFTWARE
This section outlines the latest QoS features within MQC, their benefits and applicability.
Table 2. MQC Features in Cisco IOS Software Release 12.3T
Cisco MQC Feature
Value Proposition
Enterprise Backbone
Enterprise Premise Edge
Service Provider Aggregation Edge
Service Provider Core
QoS Bandwidth Estimation
Elimination of operational overhead and guesswork in bandwidth provisioning and QoS configuration, WAN cost saving
X
X
X
*
AutoQoS for Enterprise
Customers can implement QoS for voice, video and data traffic without in-depth knowledge of QoS and the underlining technologies, simplifies QoS deployment
*
X
*
N/A
QoS: Classification, Policing, and Marking on L2TP Network Server (LNS)
Provides policing and marking on a per-session basis for the traffic forwarded into L2TP tunnels to the appropriate LNS and for traffic coming from an L2TP tunnel toward a customer edge router
N/A
X
X
*
Enhanced Voice and QoS for ADSL G.SHDSL
Allows service providers to increase revenue by building differentiated service options based on premium, standard, or best-effort service classes
N/A
*
X
N/A
Virtual Route Forwarding (VRF) and MQC Hierarchical Shaping in Parallel eXpress Forwarding (PXF)
Enables service providers to turn on VRF and MQC hierarchical shaping in PXF concurrently with other features in the PXF path without significant performance degradation