The MQC-Based Frame Relay Traffic Shaping feature provides users with the ability to configure Frame Relay traffic shaping (FRTS) using modular quality of service (QoS) command-line interface (CLI) commands. Modular QoS CLI is known as MQC.
Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the Feature Information Table at the end of this document.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to
www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for MQC-Based Frame Relay Traffic Shaping
Every permanent virtual circuit (PVC) to which FRTS using MQC is applied must have Frame Relay encapsulation enabled on the associated interface with the encapsulationframe-relay command.
Note
For FRTS using MQC for the routers specified in the Prerequisites for MQC-Based Frame Relay Traffic Shaping section, distributed Cisco Express Forwarding is not required. For FRTS using MQC for routers in the Cisco 7500 and above product range, distributed Cisco Express Forwarding is required.
Restrictions for MQC-Based Frame Relay Traffic Shaping
You must create a default class for the service policy as specified with the classclass-default command to configure FRTS using MQC on a Frame Relay PVC. The default class will have all the FRTS parameters applied to it. Refer to the Creating a Policy Map and Entering CBWFQ Parameters for the Class Map section for more information on creating a default class structure for a service policy.
If FRTS and fragmentation are applied to a PVC using MQC, the interface queue will change to dual first-in, first-out (FIFO) queueing. The two queues will consist of a high-priority queue to carry VoIP and certain control packets, and a low-priority queue to carry all other packets.
Note
In configurations created by using traditional FRTS commands, the minimum acceptable outgoing committed information rate (minCIR) will be used as the total available bandwidth for a policy map that has class-based weighted fair queueing (CBWFQ) attached to the map class for the PVC.
If the MQC-Based Frame Relay Traffic Shaping feature is used to configure FRTS, the shaping rate that was configured in the parent policy map using MQC will be used as the total available bandwidth for the child policy map, if CBWFQ is configured. If both the shapeaverage and shapeadaptive commands are used for traffic shaping, the available bandwidth will be based on the parameters specified by the shapeadaptive command
Information About MQC-Based Frame Relay Traffic Shaping
MQC is used to configure FRTS. MQC is a framework that provides a clear separation between a classification policy and the specification of other parameters that act on the results of that applied classification policy.
Before this feature was introduced in Cisco IOS Release 12.2(13)T, FRTS for the Cisco routers specified in the
MQC Overview section could be configured only by using traditional FRTS commands (refer to the
How to Configure MQC-Based Frame Relay Traffic Shaping section for more information). With the addition of the MQC-Based Frame Relay Traffic Shaping feature, FRTS can be configured on routers throughout the Cisco router product line by using MQC.
Broadly, MQC is configured and implemented as follows:
Define a traffic class with the
class-map command.
Create a service policy by associating the traffic class with one or more QoS features (using the
policy-map command).
Attach the service policy to the interface with the
service-policy command.
For more detailed information on MQC, refer to the document Modular Quality of Service Command-Line Interface. MQC commands used for FRTS are further explained in the
How to Configure MQC-Based Frame Relay Traffic Shaping section of this document.
FRTS Overview
FRTS allows you to control the traffic going out through a PVC in order to match its flow to the speed of the remote target interface and to ensure that the traffic conforms to the parameters that have been set for it. Traffic that matches a particular profile can be shaped to meet downstream requirements, thereby eliminating the bottlenecks that occur in topologies that have data-rate mismatches.
The primary reasons you would use FRTS are the following:
To allow high-priority packets to take precedence over other packets as they are encapsulated and forwarded over the Frame Relay network. FRTS is useful for applications such as VoIP and streaming video, which require a low latency to be effective.
To control access to available bandwidth.
To ensure that traffic conforms to the parameters established for it.
To regulate the flow of traffic in order to avoid congestion that can occur when the sent traffic exceeds the access speed of its remote target interface.
To eliminate bottlenecks in Frame Relay networks that have high-speed connections at the central site and low-speed connections at branch sites by configuring rate enforcement to limit the rate at which data is sent on the virtual circuit (VC) at the central site. Rate enforcement is a peak rate configured to limit outbound traffic.
Feature Design of MQC-Based Frame Relay Traffic Shaping
The MQC-Based Frame Relay Traffic Shaping feature allows the Cisco routers specified in the Feature Design of MQC-Based Frame Relay Traffic Shaping section to have FRTS configured using MQC instead of traditional FRTS commands.
Before this feature was introduced in Cisco IOS Release 12.2(13)T, FRTS for the Cisco routers specified in the Feature Design of MQC-Based Frame Relay Traffic Shaping section could be configured only by using traditional FRTS commands (for example, the frame-relaytraffic-shaping command). For traditional FRTS, all traffic shaping and fragmentation values are entered under the map class. Traffic shaping is defined by entering the map-classframe-relay command, then entering the traffic shaping and, optionally, fragmentation values.
For routers in the Cisco 7500 and above product range, Distributed Traffic Shaping (DTS) is used for traffic shaping. With DTS, the traffic-shaping values are configured by entering the policy-mapcommand, then entering the traffic-shaping values. However, fragmentation values are still entered under the map class--the map-classframe-relay command is still used before any fragmentation values are entered.
CBWFQ can also be configured under the policy map by entering the policy-mapcommand and then entering the traffic-shaping CBWFQ values.
Note
Configuring traffic shaping using MQC and configuring traffic shaping using traditional FRTS commands are mutually exclusive. Traffic shaping cannot be configured on the same interface using both methods.
MQC allows users to specify a traffic class independently of QoS parameters.
The MQC-Based Frame Relay Traffic Shaping feature allows users to apply FRTS parameters using MQC across the entire Cisco router product line.
This feature ensures that FRTS is defined in the same manner for routers across the Cisco router product line, rather than only for routers in the Cisco 7500 and above product range.
Before this feature was introduced in Cisco IOS Release 12.2(13)T, FRTS for the Cisco routers specified in the Benefits of MQC-Based Frame Relay Traffic Shaping section could be defined only by using traditional FRTS commands. Using different methods to define FRTS for different routers can introduce inconsistency and complexity when FRTS is being implemented on different router platforms.
How to Configure MQC-Based Frame Relay Traffic Shaping
Creating a Class Map and Specifying Match Criteria for CBWFQ
To create a class map and specify match criteria for CBWFQ, use the following commands.
SUMMARY STEPS
1.enable
2.configureterminal
3.class-mapclass-map-name
4.matchmatch-criteria
5.end
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
configureterminal
Example:
Router# configure terminal
Enters global configuration mode.
Step 3
class-mapclass-map-name
Example:
Router(config)# class-map voice
Creates a class map to be used for matching packets to a specified class and enters class-map configuration mode.
The example command creates a class map named "voice".
Step 4
matchmatch-criteria
Example:
Router(config-cmap)# match ip dscp ef
Identifies packets that will belong to the class map.
The example command identifies an IP differentiated service code point (DSCP) value of EF (101110) as a match criterion for the class map named "voice".
Step 5
end
Example:
Router(config-cmap)# end
(Optional) Exits class-map configuration mode and returns to privileged EXEC mode.
Creating a Policy Map and Entering CBWFQ Parameters for the Class Map
To create a policy map and enter CBWFQ parameters for the class map, use the following commands.
(Optional) Gives priority to a class of traffic belonging to a policy map.
The example command provides a guaranteed allowed bandwidth of 32 kbps and a guaranteed low latency for up to 32 kbps to the traffic class "voice" that was created in Step 4
.
Step 6
end
Example:
Router(config-pmap-c)# end
(Optional) Exits policy-map class configuration mode and returns to privileged EXEC mode.
Creating a Shaping Policy Map and Entering FRTS Values for the Default Class Map
To create a shaping policy map and enter FRTS values for the default class map, use the following commands.
Creates a policy map that can be attached to one or more interfaces to specify a service policy and enters policy-map configuration mode.
The example command creates a policy map named shape-policy-map.
Step 4
classclass-default
Example:
Router(config-pmap)# class class-default
Specifies the default class (commonly known as the class-default class) before you configure its policy and enters policy-map class configuration mode.
The class-default class is the class to which traffic is directed if that traffic does not satisfy the match criteria of other classes whose policy is defined in the policy map.
Only one class is defined with this command (the class-default class); therefore, it will match all traffic.
(Optional) Configures a Frame Relay PVC to estimate the available bandwidth by backward explicit congestion notification (BECN) integration while traffic shaping is enabled.
The example command sets the lower bound CIR to 32,000 bps when BECNs are received.
Step 7
shapefecn-adapt
Example:
Router(config-pmap-c)# shape fecn-adapt
(Optional) Configures a Frame Relay interface to reflect received forward explicit congestion notification (FECN) bits as BECN bits in Q.922 "Test Response" messages.
The example command adapts the Frame Relay message with FECN to BECN.
Step 8
end
Example:
Router(config-pmap-c)# end
(Optional) Exits policy-map class configuration mode and returns to privileged EXEC mode.
Attaching the Class-Based Weighted Fair Queueing Policy Map to the Shaping Policy Map
To attach the CBWFQ policy map to the shaping policy map, use the following commands.
SUMMARY STEPS
1.enable
2.configureterminal
3.policy-mappolicy-map-name
4.classclass-default
5.service-policypolicy-map-name
6.end
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
configureterminal
Example:
Router# configure terminal
Enters global configuration mode.
Step 3
policy-mappolicy-map-name
Example:
Router(config)# policy-map shape-policy-map
Creates a policy map that can be attached to one or more interfaces to specify a service policy and enters policy-map configuration mode.
The example command creates a policy map named shape-policy-map.
Step 4
classclass-default
Example:
Router(config-pmap)# class class-default
Specifies the default class (commonly known as the class-default class) before you configure its policy and enters policy-map class configuration mode.
The class-default class is the class to which traffic is directed if that traffic does not satisfy the match criteria of other classes whose policy is defined in the policy map.
Only one class is defined with this command (the class-default class); therefore, it will match all traffic.
Step 5
service-policypolicy-map-name
Example:
Router(config-pmap-c)# service-policy llq
Attaches a service policy as a traffic shaping policy within a policy map.
This parent-child service policy association is called a hierarchical service policy.
The example command creates a hierarchical service policy with the parent policy map being "shape-policy-map", and the child policy map being "llq".
Step 6
end
Example:
Router(config-pmap-c)# end
(Optional) Exits policy-map class configuration mode and returns to privileged EXEC mode.
Specifying a Map Class and Attaching a Service Policy for the PVC
To specify a map class and attach a service policy for the PVC, use the following commands.
Specifies a map class to define fragmentation parameters for both a PVC and an MQC policy map attachment and enters static map class configuration mode.
The example command specifies a map class named shape-map-class.
Step 4
frame-relayfragmentfragment-size [switched]
Example:
Router(config-map-class)# frame-relay fragment 80
(Optional) Enables fragmentation of Frame Relay frames for a Frame Relay map class.
The example command specifies that 80 payload bytes from the original Frame Relay frame will go into each fragment.
Step 5
end
Example:
Router(config-map-class)# end
(Optional) Exits static maps class configuration mode and returns to privileged EXEC mode.
Adding the Policy Map to the Map Class
To add the policy map to the map class, use the following commands.
SUMMARY STEPS
1.enable
2.configureterminal
3.policy-mappolicy-map-name
4.classclass-default
5.service-policypolicy-map
6.end
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Router> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
configureterminal
Example:
Router# configure terminal
Enters global configuration mode.
Step 3
policy-mappolicy-map-name
Example:
Router(config)# policy-map shape-policy-map
Creates a policy map that can be attached to one or more interfaces to specify a service policy and enters policy-map configuration mode.
The example command creates a policy map named shape-policy-map.
Step 4
classclass-default
Example:
Router(config-pmap)# class class-default
Specifies the default class (commonly known as the class-default class) before you configure its policy and enters policy-map class configuration mode.
The class-default class is the class to which traffic is directed if that traffic does not satisfy the match criteria of other classes whose policy is defined in the policy map.
Only one class is defined with this command (the class-default class); therefore, it will match all traffic.
Adds a policy map to a map class and enters policy-map class configuration mode.
The example command attaches the policy map named shape-policy-map. This command will also attach the policy map shape to any other PVCs that are using the map class.
Step 6
end
Example:
Router(config-pmap-c)# end
(Optional) Exits policy-map class configuration mode and returns to privileged EXEC mode.
Configuration Examples for MQC-Based Frame Relay Traffic Shaping
Example Configuring Class-Based Weighted Fair Queueing
The following example provides a sample configuration for Class-Based Weighted Fair Queueing (CBWFQ) with FRTS:
class-map voice
match ip dscp ef
policy-map llq
class voice
priority 32
policy-map shape-policy-map
class class-default
shape average 64000
shape adaptive 32000
service-policy llq
map-class frame-relay shape-map-class
service-policy output shape-policy-map
interface serial 0/0
encapsulation frame-relay
interface serial 0/0.1 point-to-point
ip address 192.168.1.1 255.255.255.0
frame-relay interface-dlci 100
class shape-map-class
Example Configuring Class-Based Weighted Fair Queueing with Fragmentation
The following example provides a sample configuration for CBWFQ and fragmentation with FRTS. This configuration example is exactly the same as the example shown in the Example Configuring Class-Based Weighted Fair Queueing section, with the addition of the
frame-relay
fragment command to configure fragmentation.
class-map voice
match ip dscp ef
policy-map llq
class voice
priority 32
policy-map shape-policy-map
class class-default
shape average 64000
shape adaptive 32000
service-policy llq
map-class frame-relay shape-map-class
frame-relay fragment 80
service-policy output shape-policy-map
interface serial 0/0
encapsulation frame-relay
interface serial 0/0.1 point-to-point
ip address 192.168.1.1 255.255.255.0
frame-relay interface-dlci 100
class shape-map-class
The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.
To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.
Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.
Feature Information for MQC-Based Frame Relay Traffic Shaping
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to
www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1
Feature Information for MQC-Based Frame Relay Traffic Shaping
Feature Name
Releases
Feature Information
MQC-Based Frame Relay Traffic Shaping
12.2(13)T
The MQC-Based Frame Relay Traffic Shaping feature provides users with the ability to configure Frame Relay traffic shaping (FRTS) using modular quality of service (QoS) command-line interface (CLI) commands. Modular QoS CLI is known as MQC.
The following commands were introduced or modified:
shapeadaptive,shapefecn-adapt.
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL:
www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.