Table Of Contents
Low Latency Queueing (LLQ) for IPsec Encryption Engines
Feature Overview
Benefits of the Low Latency Queueing (LLQ) for Encryption Engines
Restrictions
Related Documents
Supported Standards, MIBs, and RFCs
Prerequisites
Configuration Tasks
Defining Class Maps
Configuring Class Policy in the Policy Map
Configuring Class Policy for a Priority Queue
Configuring Class Policy Using a Specified Bandwidth
Configuring the Class-Default Class Policy
Attaching the Service Policy
Verifying Configuration of Policy Maps and Their Classes
Monitoring and Maintaining LLQ for IPsec Encryption Engines
Configuration Examples
LLQ for IPsec Encryption Engines Example
Low Latency Queueing (LLQ) for IPsec Encryption Engines
Feature History
Release
|
Modification
|
Cisco IOS XE Release 2.1
|
This feature was introduced on Cisco ASR 1000 Series Routers.
|
This feature module describes the Low Latency Queueing (LLQ) for IPsec encryption engines feature and includes the following sections:
•
Feature Overview
•
Supported Standards, MIBs, and RFCs
•
Prerequisites
•
Configuration Tasks
•
Monitoring and Maintaining LLQ for IPsec Encryption Engines
•
Configuration Examples
Feature Overview
Low Latency Queueing (LLQ) for IPsec encryption engines helps reduce packet latency by introducing the concept of queueing before crypto engines. Prior to this, the crypto processing engine gave data traffic and voice traffic equal status. Administrators now designate voice traffic as priority. Data packets arriving at a router interface are directed into a data packet inbound queue for crypto engine processing. This queue is called the best effort queue. Voice packets arriving on a router interface are directed into a priority packet inbound queue for crypto engine processing. This queue is called the priority queue. The crypto engine undertakes packet processing in a favorable ratio for voice packets. Voice packets are guaranteed a minimum processing bandwidth on the crypto engine.
Benefits of the Low Latency Queueing (LLQ) for Encryption Engines
The Low Latency Queueing (LLQ) for IPsec encryption engines feature guarantees a certain level of crypto engine processing time for priority designated traffic.
Better Voice Performance
Voice packets can be identified as priority, allowing the crypto engine to guarantee a certain percentage of processing bandwidth. This feature impacts the end user experience by assuring voice quality if voice traffic is directed onto a congested network.
Improved Latency and Jitters
Predictability is a critical component of network performance. The Low Latency Queueing (LLQ) for IPsec encryption engines feature delivers network traffic predictability relating to VPN. With this feature disabled, an end user employing an IP phone over VPN might experience jitter or latency, both symptoms of overall network latency and congestion. With this feature enabled, these undesirable characteristics are dissipated.
Restrictions
•
No per-tunnel QoS policy. An interface QoS policy represents all tunnels.
•
Assume the same IP precedence/DSCP marking for inbound and outbound voice packets.
•
Assume that the IP precedence/DSCP marking for voice packets is done at the source.
•
Limited match criteria for voice traffic in the interface QoS policy.
•
Assume that call admission control is enforced within the enterprise.
•
No strict error checking when aggregate policy's bandwidth exceeds crypto engine bandwidth. Only a warning is displayed, but configuration is allowed.
•
Assume that voice packets are either all encrypted or unencrypted.
Related Documents
•
Cisco IOS Quality of Service Solutions Command Reference
•
"Applying QoS Features Using the MQC" module
Supported Standards, MIBs, and RFCs
Standards
No new or modified standards are supported by this feature.
MIBs
No new or modified standards are supported by this feature.
To locate and download MIBs for selected platforms, Cisco IOS XE Software releases, and feature sets, use Cisco MIB Locator found at the following URL:
http://www.cisco.com/go/mibs
RFCs
No new or modified RFCs are supported by this feature.
Prerequisites
To use this feature, you should be familiar with the following:
•
Access control lists
•
Bandwidth management
•
CBWFQ
Configuration Tasks
To configure LLQ for IPsec encryption engines, perform the tasks described in the following sections.
•
Defining Class Maps (required)
•
Configuring Class Policy in the Policy Map (required)
•
Configuring Class Policy for a Priority Queue (required)
•
Configuring Class Policy Using a Specified Bandwidth (optional)
•
Configuring the Class-Default Class Policy (optional)
•
Attaching the Service Policy (required)
•
Verifying Configuration of Policy Maps and Their Classes (optional)
Note
See the "Applying QoS Features Using the MQC" module to learn more about configuring policy maps on interfaces.
Defining Class Maps
To create a class map containing match criteria against which a packet is checked to determine if it belongs to a class, use the following commands beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# class-map class-map-name
|
Specifies the name of the class map to be created.
|
Step 2
|
Router(config-cmap)# match access-group
{access-group | name access-group-name}
or
Router(config-cmap)# match
input-interface interface-name
or
Router(config-cmap)# match protocol
protocol
|
Specifies the name of the access control list (ACL) against whose contents packets are checked to determine if they belong to the class.
Specifies the name of the input interface used as a match criterion against which packets are checked to determine if they belong to the class.
Specifies the name of the protocol used as a match criterion against which packets are checked to determine if they belong to the class.
|
Configuring Class Policy in the Policy Map
To configure a policy map and create class policies that make up the service policy, begin with the policy-map command to specify the policy map name. Then use one or more of the following commands to configure the policy for a standard class or the default class:
•
priority
•
bandwidth
•
queue-limit or random-detect
•
fair-queue (for class-default class only)
For each class that you define, you can use one or more of the commands listed to configure the class policy. For example, you might specify bandwidth for one class and both bandwidth and queue limit for another class.
The default class of the policy map (commonly known as the class-default class) is the class to which traffic is directed if that traffic does not satisfy the match criteria of the other classes defined in the policy map.
You can configure class policies for as many classes as are defined on the router, up to the maximum of 64. However, the total amount of bandwidth allocated for all classes in a policy map must not exceed the minimum committed information rate (CIR) configured for the virtual circuit (VC) minus any bandwidth reserved by the frame-relay voice bandwidth and frame-relay ip rtp priority commands. If the minimum CIR is not configured, the bandwidth defaults to one half of the CIR. If all of the bandwidth is not allocated, the remaining bandwidth is allocated proportionally among the classes on the basis of their configured bandwidth.
To configure class policies in a policy map, perform the tasks described in the following sections. The task in the first section is required; the tasks in the remaining sections are optional.
Configuring Class Policy for a Priority Queue
To configure a policy map and give priority to a class within the policy map, use the following commands beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# policy-map policy-map
|
Specifies the name of the policy map to be created or modified.
|
Step 2
|
Router(config-cmap)# class class-name
|
Specifies the name of a class to be created and included in the service policy.
|
Step 3
|
Router(config-pmap-c)# priority
bandwidth-kbps
|
Creates a strict priority class and specifies the amount of bandwidth, in kbps, to be assigned to the class.
|
Configuring Class Policy Using a Specified Bandwidth
To configure a policy map and create class policies that make up the service policy, use the following commands beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# policy-map policy-map
|
Specifies the name of the policy map to be created or modified.
|
Step 2
|
Router(config-cmap)# class class-name
|
Specifies the name of a class to be created and included in the service policy.
|
Step 3
|
Router(config-pmap-c)# bandwidth
bandwidth-kbps
|
Specifies the amount of bandwidth to be assigned to the class, in kbps, or as a percentage of the available bandwidth. Bandwidth must be specified in kbps or as a percentage consistently across classes. (Bandwidth of the priority queue must be specified in kbps.)
|
To configure more than one class in the same policy map, repeat Step 2 and Step 3.
Configuring the Class-Default Class Policy
The class-default class is used to classify traffic that does not fall into one of the defined classes. Even though the class-default class is predefined when you create the policy map, you still have to configure it. If a default class is not configured, then traffic that does not match any of the configured classes is given best-effort treatment, which means that the network will deliver the traffic if it can, without any assurance of reliability, delay prevention, or throughput.
To configure a policy map and the class-default class, use the following commands beginning in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# policy-map policy-map
|
Specifies the name of the policy map to be created or modified.
|
Step 2
|
Router(config-cmap)# class class-default
default-class-name
|
Specifies the default class so that you can configure or modify its policy.
|
Step 3
|
Router(config-pmap-c)# bandwidth
bandwidth-kbps
or
Router(config-pmap-c)# fair-queue
[number-of-dynamic-queues]
|
Specifies the amount of bandwidth, in kbps, to be assigned to the class.
Specifies the number of dynamic queues to be reserved for use by flow-based WFQ running on the default class. The number of dynamic queues is derived from the bandwidth of the interface.
|
Attaching the Service Policy
To attach a service policy to the output interface and enable LLQ for IPsec encryption engines, use the following command in global configuration mode:
| |
Command
|
Purpose
|
Step 1
|
Router(config)# interface type number
|
Specifies the interface using the LLQ for IPsec encryption engines.
|
Step 2
|
Router(config-if)# service-policy output
policy-map
|
Attaches the specified service policy map to the output interface and enables LLQ for IPsec encryption engines.
|
Verifying Configuration of Policy Maps and Their Classes
To display the contents of a specific policy map or all policy maps configured on an interface, use the following commands in EXEC mode, as needed:
| |
Command
|
Purpose
|
Step 1
|
Router# show frame-relay pvc dlci
|
Displays statistics about the PVC and the configuration of classes for the policy map on the specified data-link connection identifier (DLCI).
|
Step 2
|
Router# show policy-map interface type
number
|
When LLQ is configured, displays the configuration of classes for all policy maps.
|
Step 3
|
Router# show policy-map interface
interface-name dlci dlci
|
When LLQ is configured, displays the configuration of classes for the policy map on the specified DLCI.
|
Monitoring and Maintaining LLQ for IPsec Encryption Engines
To monitor and maintain LLQ for IPsec encryption engines, use the following command in EXEC mode:
| |
Command
|
Purpose
|
Step 1
|
Router# show crypto eng qos
|
Displays quality of service queueing statistics for LLQ for IPsec encryption engines.
|
For a more detailed list of commands that can be used to monitor LLQ for IPsec encryption engines, see the "Verifying Configuration of Policy Maps and Their Classes" section.
Configuration Examples
This section provides the following configuration example:
•
LLQ for IPsec Encryption Engines Example
LLQ for IPsec Encryption Engines Example
In the following example, a strict priority queue with a guaranteed allowed bandwidth of 50 kbps is reserved for traffic that is sent from the source address 10.10.10.10 to the destination address 10.10.10.20, in the range of ports 16384 through 20000 and 53000 through 56000.
First, the following commands configure access list 102 to match the desired voice traffic:
Router(config)# access-list 102 permit udp host 10.10.10.10 host 10.10.10.20 range 16384
20000
Router(config)# access-list 102 permit udp host 10.10.10.10 host 10.10.10.20 range 53000
56000
Next, the class map voice is defined, and the policy map called policy1 is created; a strict priority queue for the class voice is reserved, a bandwidth of 20 kbps is configured for the class bar, and the default class is configured for WFQ. The service-policy command then attaches the policy map to the fas0/0.
Router(config)# class-map voice
Router(config-cmap)# match access-group 102
Router(config-cmap)# exit
Router(config)# policy-map policy1
Router(config-pmap)# class voice
Router(config-pmap-c)# priority 50
Router (config-cmap-c)# exit
Router(config-pmap)# class bar
Router(config-pmap-c)# bandwidth 20
Router(config-cmap-c)# exit
Router(config-pmap)# class class-default
Router(config-pmap-c)# fair-queue
Router(config-cmap-c)# exit
Router(config-cmap)# exit
Router(config)# interface fastethernet0/0/0
Router(config-if)# service-policy output policy1
CCDE, CCENT, Cisco Eos, Cisco HealthPresence, the Cisco logo, Cisco Lumin, Cisco Nexus, Cisco StadiumVision, Cisco TelePresence, Cisco WebEx, DCE, and Welcome to the Human Network are trademarks; Changing the Way We Work, Live, Play, and Learn and Cisco Store are service marks; and Access Registrar, Aironet, AsyncOS, Bringing the Meeting To You, Catalyst, CCDA, CCDP, CCIE, CCIP, CCNA, CCNP, CCSP, CCVP, Cisco, the Cisco Certified Internetwork Expert logo, Cisco IOS, Cisco Press, Cisco Systems, Cisco Systems Capital, the Cisco Systems logo, Cisco Unity, Collaboration Without Limitation, EtherFast, EtherSwitch, Event Center, Fast Step, Follow Me Browsing, FormShare, GigaDrive, HomeLink, Internet Quotient, IOS, iPhone, iQuick Study, IronPort, the IronPort logo, LightStream, Linksys, MediaTone, MeetingPlace, MeetingPlace Chime Sound, MGX, Networkers, Networking Academy, Network Registrar, PCNow, PIX, PowerPanels, ProConnect, ScriptShare, SenderBase, SMARTnet, Spectrum Expert, StackWise, The Fastest Way to Increase Your Internet Quotient, TransPath, WebEx, and the WebEx logo are registered trademarks of Cisco Systems, Inc. and/or its affiliates in the United States and certain other countries.
All other trademarks mentioned in this document or website 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. (0812R)
Any Internet Protocol (IP) addresses used in this document are not intended to be actual addresses. Any examples, command display output, and figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses in illustrative content is unintentional and coincidental.
© 2007-2009 Cisco Systems, Inc. All rights reserved.