Table Of Contents
Packet Classification Based on Layer 3 Packet Length
Prerequisites for Packet Classification Based on Layer 3 Packet Length
Restrictions for Packet Classification Based on Layer 3 Packet Length
Information About Packet Classification Based on Layer 3 Packet Length
Modular Quality of Service Command-Line Interface
How to Configure Packet Classification Based on Layer 3 Packet Length
Configuring the Class Map to Match on Layer 3 Packet Length
Attaching the Policy Map to an Interface
Configuration Examples for Packet Classification Based on Layer 3 Packet Length
Configuring the Packet Length As a Match Criterion Example
Verifying the Packet Length Setting Example
match packet length (class-map)
Packet Classification Based on Layer 3 Packet Length
This feature provides the added capability of matching and classifying traffic on the basis of the Layer 3 length in the IP packet header. The Layer 3 length is the IP datagram plus the IP header. This new match criterion is in addition to the other match criteria, such as the IP precedence, differentiated services code point (DSCP) value, class of service (CoS), currently available.
Feature Specifications for Packet Classification Based on Layer 3 Packet Length
Feature History Release Modification12.2(13)T
This feature was introduced.
12.2(18)SXE
This feature was integrated into Cisco IOS Release 12.2(18)SXE.
Contents
•
Prerequisites for Packet Classification Based on Layer 3 Packet Length
•
Restrictions for Packet Classification Based on Layer 3 Packet Length
•
Information About Packet Classification Based on Layer 3 Packet Length
•
How to Configure Packet Classification Based on Layer 3 Packet Length
•
Configuration Examples for Packet Classification Based on Layer 3 Packet Length
Prerequisites for Packet Classification Based on Layer 3 Packet Length
When configuring this feature, you must first create a policy map (sometimes referred to as a service policy or a traffic policy) using the Modular QoS Command-Line Interface (CLI) (MQC). Therefore, you should be familiar with the procedure for creating a policy map using the MQC.
For more information about creating a policy map (traffic policy) using the MQC, refer to the "Configuring the Modular Quality of Service Command-Line Interface" chapter of the Cisco IOS Quality of Service Solutions Configuration Guide, Release 12.2.
Restrictions for Packet Classification Based on Layer 3 Packet Length
•
This feature is intended for use with IP packets only.
•
This feature considers only the Layer 3 packet length in the IP header. It does not consider the Layer 2 overhead.
Information About Packet Classification Based on Layer 3 Packet Length
To configure Packet Classification Based on Layer 3 Packet Length, you need to understand the following concept:
•
Modular Quality of Service Command-Line Interface
Modular Quality of Service Command-Line Interface
The MQC is a command-line interface (CLI) that allows you to create traffic policies and attach these policies to interfaces.
In the MQC, the class-map command is used to define a traffic class (which is then associated with a traffic policy). The purpose of a traffic class is to classify traffic.
The Modular QoS CLI consists of the following three processes:
•
Defining a traffic class with the class-map command.
•
Creating a traffic policy by associating the traffic class with one or more QoS features (using the policy-map command).
•
Attaching the traffic policy to the interface with the service-policy command.
A traffic class contains three major elements: a name, a series of match commands, and, if more than one match command exists in the traffic class, an instruction on how to evaluate these match commands. The traffic class is named in the class-map command line; for example, if you enter the class-map cisco command while configuring the traffic class in the CLI, the traffic class would be named "cisco".
The match commands are used to specify various criteria for classifying packets. Packets are checked to determine whether they match the criteria specified in the match commands. If a packet matches the specified criteria, that packet is considered a member of the class and is forwarded according to the QoS specifications set in the traffic policy. Packets that fail to meet any of the matching criteria are classified as members of the default traffic class.
How to Configure Packet Classification Based on Layer 3 Packet Length
This section contains the following procedures. Each procedure is identified as either required or optional.
•
Configuring the Class Map to Match on Layer 3 Packet Length (required)
•
Creating a Policy Map (required)
•
Attaching the Policy Map to an Interface (required)
•
Verifying the Configuration (optional)
Configuring the Class Map to Match on Layer 3 Packet Length
Class maps can be used to classify packets into groups that can then receive specific QoS features. For example, class maps can be configured to match packets on the basis of one or more user-specified criterion (for example, the DSCP value or access list number). In this case, the class map is configured to match on the Layer 3 packet length.
To configure the class map to match on the Layer 3 packet length, use the following commands:
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
class-map class-map-name
4.
match packet length {max maximum-length-value [min minimum-length-value] | min minimum-length-value [max maximum-length-value]}
5.
exit
DETAILED STEPS
Creating a Policy Map
A policy map (traffic policy) is created using the MQC. To create a policy map using the MQC, refer to the instructions in the "Configuring the Modular Quality of Service Command-Line Interface" chapter of the Cisco IOS Quality of Service Solutions Configuration Guide, Release 12.2.
Attaching the Policy Map to an Interface
After a policy map is created, the next step is to attach the policy map to an interface. Policy maps can be attached to either the input or output direction of the interface.
Depending on the needs of your network, you may need to attach the policy map to a subinterface, an ATM permanent virtual circuit (PVC), a Frame Relay data-link connection identifier (DLCI), or other type of interface.
To attach the policy map, use the following commands:
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
interface type number
4.
pvc [name] vpi/vci [ilmi | qsaal | smds]
5.
service-policy {input | output} policy-map-name
6.
exit
DETAILED STEPS
Command or Action PurposeStep 1
enable
Example:Router> enable
Enables higher privilege levels, such as privileged EXEC mode.
•
Enter your password if prompted.
Step 2
configure terminal
Example:Router# configure terminal
Enters global configuration mode.
Step 3
interface type number
Example:Router(config)# interface s4/0
Configures an interface (or subinterface) type and enters interface configuration mode
•
Enter the interface type number.
Step 4
pvc [name] vpi/vci [ilmi | qsaal | smds]
Example:Router(config-if)# pvc cisco 0/16 ilmi
(Optional) Creates or assigns a name to an ATM PVC, specifies the encapsulation type on an ATM PVC, and enters ATM VC configuration mode.
Note
This step is required only if you are attaching the policy map to an ATM PVC. If you are not attaching the policy map to an ATM PVC, skip this step and proceed with Step 5.
Step 5
service-policy {input | output} policy-map-name
Example:Router(config-if)# service-policy input policy1
Specifies the name of the policy map to be attached to either the input or output direction of the interface.
Note
Policy maps can be configured on ingress or egress routers. They can also be attached in the input or output direction of an interface. The direction (input or output) and the router (ingress or egress) to which the policy map should be attached varies according your network configuration. When using the service-policy command to attach the policy map to an interface, be sure to choose the router and the interface direction that are appropriate for your network configuration.
•
Enter the policy map name.
Step 6
exit
Example:Router(config-if)# exit
(Optional) Exits interface configuration mode.
Verifying the Configuration
This task allows you to verify that you created the configuration you intended, and that the feature is functioning correctly.
To verify the configuration, use the following commands:
SUMMARY STEPS
1.
enable
2.
show class-map [class-map-name]
or
show policy-map interface interface-name [vc [vpi/] vci][dlci dlci] [input | output]
3.
exit
DETAILED STEPS
Troubleshooting Tips
The commands in the "Verifying the Configuration" section allow you to verify that you achieved the intended configuration and that the feature is functioning correctly. If, after using the show commands listed above, you find that the configuration is not correct or the feature is not functioning as expected, perform these operations:
If the configuration is not the one you intended, complete the following procedures:
•
Use the show running-config command and analyze the output of the command.
•
If the policy map does not appear in the output of the show running-config command, enable the logging console command.
•
Attach the policy map to the interface again.
If the packets are not being matched correctly (for example, the packet counters are not incrementing correctly), complete the following procedures:
•
Run the show policy-map command and analyze the output of the command.
•
Run the show running-config command and analyze the output of the command.
•
Use the show policy-map interface command and analyze the output of the command. Check the the following findings:
–
If a policy map applies queueing, and the packets are matching the correct class, but you see unexpected results, compare the number of the packets in the queue with the number of the packets matched.
–
If the interface is congested, and only a small number of the packets are being matched, check the tuning of the tx ring and evaluate whether the queueing is happening on the tx ring. To do this, use the show controllers command and look at the value of the tx count in the output of the command.
Configuration Examples for Packet Classification Based on Layer 3 Packet Length
This section provides the following configuration examples:
•
Configuring the Packet Length As a Match Criterion Example
•
Verifying the Packet Length Setting Example
Configuring the Packet Length As a Match Criterion Example
In the following example, a class map called "class 1" has been created, and the Layer 3 packet length has been specified as a match criterion. In this example, packets with a minimum Layer 3 packet length of 100 and a maximum Layer 3 packet length of 300 are viewed as meeting the match criterion. Packets matching this criterion are placed in class1.
Router(config)# class map match-all class1Router(config-cmap)# match packet length min 100 max 300Verifying the Packet Length Setting Example
Use either the show class-map command or the show policy-map interface command to verify the setting of the Layer 3 packet length value used as a match criterion for the class map and the policy map. The following section begins with a sample output of the show class-map command and concludes with a sample output of the show policy-map interface command.
The sample output of the show class-map command shows the defined class map and the specified match criterion. In the following example, a class map called "class1" is defined. The Layer 3 packet length has been specified as a match criterion for the class. Packets with a Layer 3 length of between 100 bytes and 300 bytes belong to class1.
Router# show class-mapclass-map match-all class1match packet length min 100 max 300The sample output of the show policy-map interface command displays the statistics for the Ethernet4/1 interface, to which a service policy called "mypolicy" is attached. The configuration for the policy map called "mypolicy" is given below.
Router(config)# policy-map mypolicyRouter(config-pmap)# class class1Router(config-pmap-c)# set qos-group 20Router(config-if)# service-policy input mypolicyThe following are the statistics for the policy-map called "mypolicy" attached to the Ethernet4/1 interface. These statistics confirm that matching on the Layer 3 packet length has been configured as a match criterion.
Router# show policy-map interface Ethernet4/1Ethernet4/1Service-policy input: mypolicyClass-map: class1 (match-all)500 packets, 125000 bytes5 minute offered rate 4000 bps, drop rate 0 bpsMatch: packet length min 100 max 300QoS Setqos-group 20Packets marked 500Additional References
The following sections provide additional references related to Packet Classification Based on Layer 3 Packet Length.
Related Documents
Standards
Standards TitleNo new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.
—
MIBs
MIBs MIBs Link•
CISCO-CLASS-BASED-QOS-CAPABILITY-MIB
•
CISCO-CLASS-BASED-QOS-MIB1
To obtain lists of supported MIBs by platform and Cisco IOS release, and to download MIB modules, go to the Cisco MIB website on Cisco.com at the following URL:
http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml
RFCs
RFCs TitleNo new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.
—
Technical Assistance
Command Reference
This section documents new and modified commands only.
•
match packet length (class-map)
match packet length (class-map)
To specify the Layer 3 packet length in the IP header as a match criterion in a class map, use the match packet length command in class-map configuration mode. To remove a previously specified Layer 3 packet length as a match criterion, use the no form of this command.
match packet length {max maximum-length-value [min minimum-length-value] | min minimum-length-value [max maximum-length-value]}
no match packet length {max maximum-length-value [min minimum-length-value] | min minimum-length-value [max maximum-length-value]}
Syntax Description
Defaults
If only the minimum value is specified, a packet with a Layer 3 length greater than the minimum is viewed as matching the criterion.
If only the maximum value is specified, a packet with a Layer 3 length less than the maximum is viewed as matching the criterion.
Command Modes
Class-map configuration
Command History
Release Modification12.2(13)T
This command was introduced.
12.2(18)SXE
This command was integrated into Cisco IOS Release 12.2(18)SXE.
Usage Guidelines
This command considers only the Layer 3 packet length in the IP header. It does not consider the Layer 2 packet length in the IP header.
When using this command, you must at least specify the maximum or minimum value. However, you do have the option of entering both values.
Examples
In the following example a class map called "class 1" has been created, and the Layer 3 packet length has been specified as a match criterion. In this example, packets with a minimum Layer 3 packet length of 100 and a maximum Layer 3 packet length of 300 are viewed as meeting the match criteria.
Router(config)# class map match-all class1Router(config-cmap)# match packet length min 100 max 300Related Commands
show class-map
To display all class maps and their matching criteria, use the show class-map command in EXEC mode.
show class-map [class-map-name]
Syntax Description
class-map-name
(Optional) Name of the class map. The class map name can be a maximum of 40 alphanumeric characters.
Command Modes
EXEC
Command History
Usage Guidelines
You can use the show class-map command to display all class maps and their matching criteria. If you enter the optional class-map-name argument, the specified class map and its matching criteria will be displayed.
Examples
In the following example, three class maps are defined. Packets that match access list 103 belong to class c3, IP packets belong to class c2, and packets that come through input Ethernet interface 1/0 belong to class c1. The output from the show class-map command shows the three defined class maps.
Router# show class-mapClass Map c3Match access-group 103Class Map c2Match protocol ipClass Map c1Match input-interface Ethernet1/0In the following example, a class map called "c1" has been defined, and the Frame Relay DLCI number of 500 has been specified as a match criterion:
Router# show class-mapclass map match-all c1match fr-dlci 500Table 1 describes the significant fields shown in the display.
Table 1 show class-map Field Descriptions1
Field DescriptionClass-map
Class of traffic being displayed. Output is displayed for each configured class map in the policy. The choice for implementing class matches (for example, match-all or match-any) can also appear next to the traffic class.
Match
Match criteria specified for the class map. Choices include criteria such as the Frame Relay DLCI number, Layer 3 packet length, IP precedence, IP differentiated services code point (DSCP) value, Multiprotocol Label Switching (MPLS) experimental value, access groups, and quality of service (QoS) groups.
1 A number in parentheses may appear next to the class-map name, and match criteria information. The number is for Cisco internal use only and can be disregarded.
Related Commands
show policy-map interface
To display the packet statistics of all classes that are configured for all service policies either on the specified interface or subinterface or on a specific permanent virtual circuit (PVC) on the interface, use the show policy-map interface command in EXEC mode.
show policy-map interface interface-name [vc [vpi/] vci][dlci dlci] [input | output]
Syntax Description
Defaults
The absence of both the forward slash (/) and a vpi value causes the vpi value to default to 0. If this value is omitted, information for all virtual circuits (VCs) on the specified ATM interface or subinterface is displayed.
Command Modes
EXEC
Command History
Usage Guidelines
The show policy-map interface command displays the packet statistics for classes on the specified interface or the specified PVC only if a service policy has been attached to either the interface or the PVC.
Examples
The following sample output of the show policy-map interface command displays the packet statistics for the Ethernet4/1 interface, to which a service policy called "mypolicy" is attached. The Layer 3 packet length has been specified as a match criterion for the traffic in the class called "class1".
Router# show policy-map interface Ethernet4/1Ethernet4/1Service-policy input: mypolicyClass-map: class1 (match-all)500 packets, 125000 bytes5 minute offered rate 4000 bps, drop rate 0 bpsMatch: packet length min 100 max 300QoS Setqos-group 20Packets marked 500Table 2 describes the significant fields shown in the display.
Table 2 show policy-map interface Field Descriptions1
Field DescriptionService-policy input
Name of the input service policy applied to the specified interface or VC.
Class-map
Class of traffic being displayed. Output is displayed for each configured class in the policy. The choice for implementing class matches (for example, match-all or match-any) can also appear next to the traffic class.
packets, bytes
Number of packets (also shown in bytes) identified as belonging to the class of traffic being displayed.
offered rate
Rate, in kbps, of packets coming into the class.
drop rate
Rate, in kbps, at which packets are dropped from the class. The drop rate is calculated by subtracting the number of successfully transmitted packets from the offered rate.
Match
Match criteria specified for the class of traffic. Choices include criteria such as the Layer 3 packet length, IP precedence, IP differentiated services code point (DSCP) value, Multiprotocol Label Switching (MPLS) experimental value, access groups, and QoS groups.
QoS Set, qos-group, Packets marked
Indicates that class-based packet marking based on the QoS group has been configured. Includes the qos-group number and the number of packets marked.
1 A number in parentheses may appear next to the service-policy input name, class-map name, and match criteria information. The number is for Cisco internal use only and can be disregarded.
Related Commands
Copyright © 2005 Cisco Systems, Inc. All rights reserved.

