This document clarifies when Cisco Express Forwarding (CEF) is required to implement a Quality of Service (QoS) feature.
This document also covers QoS features configured via the Modular QoS Command Line Interface. The MQC is a CLI structure used to create traffic policies and to attach these policies to interfaces. A traffic policy contains a traffic class and one or more QoS features. A traffic class is used to classify traffic, while the QoS features in the traffic policy determine how to treat the classified traffic. Refer to the Modular Quality of Service Command-Line Interface Overview for more information.
Readers of this document should have knowledge of how to configure QoS on Cisco Routers with and without the help of the Modular QoS Command Line Interface.
This document is not restricted to specific software and hardware versions.
Refer to Cisco Technical Tips Conventions for more information on document conventions.
CEF is an advanced, Layer 3 switching technology inside a router. It defines the fastest method by which a Cisco router forwards packets from ingress to egress interfaces. The ip cef command enables CEF globally, and the ip route-cache cef command enables CEF on an interface. Refer to Configuring Cisco Express Forwarding for more information.
These class-based QoS features are supported only on routers that run CEF. More information about the bugs mentioned in this section can be found in the Bug Toolkit (registered customers only) .
Network Based Application Recognition (NBAR) provides intelligent network classification. For more information, refer to Network Based Application Recognition.
Class-Based Packet Marking changes values in a packet header with the set command. Cisco IOS confirms that your router runs CEF before you attach a service policy with the set command. For more information, refer to Class-Based Marking. Cisco bug ID CSCdu63627 (registered customers only) provides more information. Note these caveats with CEF and class-based marks:
A service policy with the set command may be lost after a reboot (Cisco bug ID CSCdw00333 (registered customers only) ). The problem occurs because the service policy attachment to the interface happens before the CEF structures are built on the interface. Therefore, the set action on the service policy fails, and the service policy is not attached to the interface.
Originally, only CEF-switched packets could be marked. Support for class-based marking of packets generated by the router and go through the process-switched path is introduced via Cisco bug ID CSCdt74738 (registered customers only) .
The Cisco Catalyst 4500 series switches generate CEF switching is required for 'set' command messages whenever the policy map has commands to set DSCP values or IP precedence, and IP routing and/or CEF is not enabled on the switch. If routing is enabled on the switch, it is recommended to enable CEF, with the use of the command ip cef, on the device and then apply the service policy. If the switch acts as a pure Layer 2 device, IP routing (and hence CEF) cannot be enabled. In order to resolve the issue, upgrade the Cisco IOSĀ® software to Cisco IOS Software Release 12.2(31)SG or later. The issue is documented in Cisco bug ID CSCsc83023 (registered customers only) .
Class-Based Policing on the Cisco 7500 series requires CEF on both the interface that receives the packet and the interface that sends the packet to support class-based traffic policing. Since class-based policing monitors only CEF-switched packets, this feature cannot be applied to process-switched packets. This includes packets originated from or destined to a router. For more information, refer to Traffic Policing.
IP to ATM Class of Service (CoS) adds fancy queueing and other QoS features to ATM router interfaces that include the PA-A3 and NM-1A. Refer to IP to ATM Class of Service to see the prerequisites for the IP to ATM CoS feature. For more information, refer to IP to ATM Class of Service Overview and ATM Technology Support Pages.
The AutoQoS -VoIP feature simplifies and speeds up the implementation and provisioning of QoS for VoIP traffic. This feature is enabled with the help of the auto qos voip command. CEF must be enabled at the interface or ATM PVC before the auto qos command can be used. For more information about this feature and its prerequisites, refer to AutoQoS - VoIP.
The Frame Relay PVC Bundles with IP and MPLS QoS Support feature requires that CEF be enabled on routers between which Frame Relay PVC bundles are to be implemented. For more information about this feature and its prerequisites, refer to Frame Relay PVC Bundles with IP and MPLS QoS Support.
The MPLS QoS Multi-VC Mode for PA-A3 feature enhances the MPLS QoS capabilities in the Enhanced Asynchronous Transfer Mode (ATM) Port Adapter (ATM PA-A3). CEF must be enabled for this feature to be configured. For more information about this feature and its prerequisites, refer to MPLS QoS Multi-VC Mode for PA-A3.
The MQC-Based Frame Relay Traffic Shaping feature allows the configuration of FRTS with the help of Modular QoS CLI commands. CEF must be enabled for this feature to be configured (for routers in the Cisco 7500 and later product range, dCEF is required). For more information about this feature and its prerequisites, refer to MQC-Based Frame Relay Traffic Shaping.
The VRF and MQC Hierarchical Shaping in PXF feature enables service providers to run VRF and MQC Hierarchical Shaping in PXF, concurrently with other features in the PXF path, without significant performance degradation. CEF must be enabled to use the PXF processing. For more information about this feature and its prerequisites, refer to VRF and MQC Hierarchical Shaping in PXF.
The Auto QoS for the Enterprise feature simplifies and speeds up the implementation and provisioning of QoS technology over a Cisco network. For Auto QoS to work, the auto discovery qos command is used to analyze the network traffic, based on which Auto QoS templates are built. CEF must be enabled before the auto discovery qos command can be used. For more information about this feature and its prerequisites, refer to Auto QoS for the Enterprise.
The RSVP-ATM QoS Interworking feature provides support for Controlled Load Service using RSVP over an ATM core network. Before the RSVP-ATM QoS Interworking feature is enabled, CEF must be enabled (dCEF is required for per-SVC DWRED). For more information about this feature and its prerequisites, refer to RSVP-ATM QoS Interworking.
The MPLS Quality of Service (QoS) feature enables network administrators to provide differentiated services across an MPLS network. For this feature to be configured, CEF must be enabled. For more information about this feature and its prerequisites, refer to MPLS Quality of Service (QoS).
Class-Based Weighted Random Early Detection requires that CEF be enabled on an interface. For more information about this feature and its prerequisites, refer to Class-Based Weighted Fair Queueing and Weighted Random Early Detection.
Distributed CEF (dCEF) enables distributed forwarding on versatile interface processors (VIPs) in the Cisco 7500 series and high-performance line cards in the Cisco 12000 series. The ip cef distributed command enables dCEF globally and the ip route-cache cef command enables dCEF on an interface.
The Cisco 7500 series has supported QoS features that run on the route switch processor (RSP) in central or shared mode and QoS features that run on VIPs in distributed mode. As of Cisco IOSĀ® Software Release 12.1(5)T, only the distributed version is supported on VIP interfaces. You must enable dCEF to apply a service-policy to a VIP interface.
dCEF is required for these QoS features configured outside the MQC on the Cisco 7500 series:
Distributed weighted random early detection (DWRED) ensures that high-precedence traffic has lower loss rates than other traffic during times of congestion. For more information, refer to the DWRED Configuration Task List.
Distributed weighted fair queuing (DWFQ) defines a special high-speed version of WFQ that runs on the VIP. For more information, refer to the VIP-Distributed Weighted Fair Queueing Configuration Task List.