- A through C
- D through F
- identity policy (policy-map) through ip rsvp pq-profile
- ip rsvp precedence through load protocol
- match access-group through mls ip pbr
- mls qos (global configuration mode) through mpls experimental
- N through P
- Q through R
- send qdm message through show atm bundle svc statistics
- show auto discovery qos through show ip rsvp hello client lsp detail
- show ip rsvp hello client lsp summary through show lane qos database
- show mls qos through wrr-queue threshold
- mac packet-classify
- mac packet-classify use vlan
- map ip
- map ipv6
- map mpls
- match access-group
- match any
- match atm-clp
- match atm oam
- match atm-vci
- match class-map
- match cos
- match cos inner
- match destination-address mac
- match discard-class
- match dscp
- match field
- match flow pdp
- match fr-dlci
- match input vlan
- match input-interface
- match ip dscp
- match ip precedence
- match ip rtp
- match mpls experimental
- match mpls experimental topmost
- match not
- match packet length (class-map)
- match port-type
- match precedence
- match protocol
- match protocol (NBAR)
- match protocol citrix
- match protocol fasttrack
- match protocol gnutella
- match protocol http
- match protocol pppoe-discovery
- match protocol rtp
- match qos-group
- match source-address mac
- match start
- match tag (class-map)
- match vlan (QoS)
- match vlan inner
- maximum (local policy)
- maximum bandwidth ingress
- maximum bandwidth percent
- maximum header
- max-reserved-bandwidth
- mls ip pbr
mac packet-classify
To classify Layer 3 packets as Layer 2 packets, use the mac packet-classify command in interface configuration mode. To return to the default settings, use the no form of this command.
mac packet-classify [bpdu]
no mac packet-classify [bpdu]
Syntax Description
bpdu |
(Optional) Specifies Layer 2 policy enforcement for BPDU packets. |
Command Default
Layer 3 packets are not classified as Layer 2 packets.
Command Modes
Interface configuration (config-if)
Command History
Usage Guidelines
This command is not supported on Cisco 7600 series routers that are configured with a Supervisor Engine 2.
You can configure these interface types for multilayer MAC access control list (ACL) quality of service (QoS) filtering:
•VLAN interfaces without Layer 3 addresses
•Physical LAN ports that are configured to support Ethernet over Multiprotocol Label Switching (EoMPLS)
•Logical LAN subinterfaces that are configured to support EoMPLS
The ingress traffic that is permitted or denied by a MAC ACL on an interface configured for multilayer MAC ACL QoS filtering is processed by egress interfaces as MAC-layer traffic. You cannot apply egress IP ACLs to traffic that was permitted or denied by a MAC ACL on an interface configured for multilayer MAC ACL QoS filtering.
Microflow policing does not work on interfaces that have the mac packet-classify command enabled.
The mac packet-classify command causes the Layer 3 packets to be classified as Layer 2 packets and disables IP classification.
Traffic is classified based on 802.1Q class of service (CoS), trunk VLAN, EtherType, and MAC addresses.
Examples
This example shows how to classify incoming and outgoing Layer 3 packets as Layer 2 packets:
Router(config-if)# mac packet-classify
Router(config-if)#
This example shows how to disable the classification of incoming and outgoing Layer 3 packets as Layer 2 packets:
Router(config-if)# no mac packet-classify
Router(config-if)#
This example shows how to enforce Layer 2 policies on BPDU packets:
Router(config-if)# mac packet-classify bpdu
Router(config-if)#
This example shows how to disable Layer 2 policies on BPDU packets:
Router(config-if)# no mac packet-classify bpdu
Router(config-if)#
Related Commands
|
|
---|---|
mac packet-classify use vlan |
Enables VLAN-based QoS filtering in the MAC ACLs. |
mac packet-classify use vlan
To enable VLAN-based quality of service (QoS) filtering in the MAC access control lists (ACLs), use the mac packet-classify use vlan command in global configuration mode. To return to the default settings, use the no form of this command.
mac packet-classify use vlan
no mac packet-classify use vlan
Syntax Description
This command has no arguments or keywords.
Command Default
VLAN-based QoS filtering in the MAC ACLs is disabled.
Command Modes
Global configuration (config)
Command History
Usage Guidelines
This command is supported in PFC3BXL or PFC3B mode only.
This command is not supported on Cisco 7600 series routers that are configured with a Supervisor Engine 2.
You must use the no mac packet-classify use vlan command to disable the VLAN field in the Layer 2 key if you want to apply QoS to the Layer 2 Service Advertising Protocol (SAP)-encoded packets (for example, Intermediate System-to-Intermediate System [IS-IS] and Internet Packet Exchange [IPX]).
QoS does not allow policing of non-Advanced Research Projects Agency (non-ARPA) Layer 2 packets (for example, IS-IS and IPX) if the VLAN field is enabled.
Examples
This example shows how to enable Layer 2 classification of IP packets:
Router(config)# mac packet-classify use vlan
Router(config)
This example shows how to disable Layer 2 classification of IP packets:
Router(config)# no mac packet-classify use vlan
Router(config)
Related Commands
|
|
---|---|
mac packet-classify |
Classifies Layer 3 packets as Layer 2 packets. |
map ip
To classify either all the IPv4 packets, or the IPv4 packets based on either differentiated service code point (DSCP) values or precedence values into high priority or low priority for POS, channelized, and clear-channel SPAs, use the following forms of the map ip command in ingress-class-map configuration mode. Use the no forms of this command to remove the IPv4 settings.
Command to Classify all the IPv4 Packets
map ip all queue {strict-priority | 0}
no map ip all queue {strict-priority | 0}
Command to Classify IPv4 Packets Based on DSCP Values
map ip {dscp-based | dscp {dscp-value | dscp-range} queue {strict-priority | 0}}
no map ip {dscp-based | dscp {dscp-value | dscp-range} queue {strict-priority | 0}}
Command to Classify IPv4 Packets Based on Precedence Values
map ip {precedence-based | precedence {precedence-value | precedence-range} queue strict-priority | 0}
no map ip {precedence-based | precedence {precedence-value | precedence-range} queue strict-priority | 0}
Syntax Description
Defaults
If there is no configuration of IPv4 DSCP value or precedence values map to high priority specified, the system treats packets with DSCP range EF as high priority and precedence range 6-7 as high priority.
Command Modes
Ingress-class-map configuration mode (config-ing-class-map)
Command History
|
|
---|---|
Cisco IOS XE Release 3.1S |
This command was introduced. |
Usage Guidelines
To classify all IPv4 packets as high or low for POS, channelized, or clear-channel SPA, use the map ip all queue command,
To classify IPv4 packets with specific DSCP values, enable the DSCP classification using the map ip dscp-based command. To classify IPV4 packets with specific DSCP values as high or low, use the map ip dscp {{dscp-value | dscp-range} queue {strict-priority | 0}} command.
To classify IPv4 packets with specific precedence values, enable the precedence classification using the map ip precedence-based command. To classify IPv4 packets with specific precedence values as high or low, use the map ip precedence {{precedence-value | precedence-range} queue {strict-priority | 0}} command.
Examples
The following example shows how to classify all the IPv4 Packets as high priority using the map ip all queue strict-priority command:
Router# config
Router(config)# ingress-class-map 1
Router(config-ing-class-map)# map ip all queue strict-priority
The following example shows how to classify IPv4 Packets with DSCP value of cs1 as high priority:
Router# config
Router(config)# ingress-class-map 1
Router(config-ing-class-map)# map ip dscp-based
Router(config-ing-class-map)# map ip dscp cs1 queue strict-priority
The following example shows how to classify IPv4 Packets with a precedence value 3 and 5 as high priority:
Router# config
Router(config)# ingress-class-map 1
Router(config-ing-class-map)# map ip precedence-based
Router(config-ing-class-map)# map ip precedence 3 5 queue strict-priority
Related Commands
|
|
---|---|
plim qos input class-map |
Attaches the classification template to an interface. |
map ipv6
To classify either all the IPv6 packets, or IPv6 packets based on specific traffic class (TC) values as high priority or low priority in the context of POS, channelized, and clear-channel SPAs use the following forms of map ipv6 commands in ingress-class-map mode. Use the no forms of this command listed here to remove the IPv6 settings.
Command to Classify all the IPv6 Packets
map ipv6 all queue {strict-priority | 0}
no map ipv6 all queue {strict-priority | 0}
Command to Classify IPv6 Traffic-Class values as High Priority or Low Priority
map ipv6 {tc {tc-value | tc-range} queue {strict-priority | 0}}
no map ipv6 {tc {tc-value | tc-range} queue {strict-priority | 0}}
Syntax Description
Defaults
If you do not configure which IPv6 traffic class values map to high priority, the system treats packets the packets with traffic class EF as high priority.
Command Modes
Ingress-class-map configuration mode (config-ing-class-map)
Command History
|
|
---|---|
Cisco IOS XE Release 3.1S |
This command was introduced. |
Usage Guidelines
To classify all the IPv6 packets as high priority or low priority in the context of POS, channelized, or clear-channel SPAs, use the map ipv6 all queue command.
To classify the IPv6 packets with specific traffic class values, use the map ipv6 tc cs2 queue strict-priority command.
Examples
The following example shows how to classify all the IPv6 packets as high priority using the map ipv6 all queue strict-priority command:
Router# config
Router(config)# ingress-class-map 1
Router(config-ing-class-map)# map ipv6 all queue strict-priority
The following example shows how to classify the IPv6 packets with traffic-class values cs2 as high priority:
Router# config
Router(config)# ingress-class-map 1
Router(config-ing-class-map)# map ip tc cs2 queue strict-priority
Related Commands
|
|
---|---|
plim qos input class-map |
Attaches the classification template to an interface. |
map mpls
To classify either all the Multiprotocol Label Switching (MPLS) packets or MPLS packets with specified EXP values or range as high priority or low priority for POS, channelized, and clear-channel SPAs the following forms of the map mpls command are used in ingress-class-map configuration mode. Use the no forms of this command listed here to remove the MPLS settings.
Command to Classify all the MPLS EXP Values as High Priority or Low Priority
map mpls all queue {strict-priority | 0}
no map mpls all queue
Command to Classify the MPLS EXP Values as High Priority or Low Priority
map mpls exp {{exp-value | exp-range} queue {strict-priority | 0}}
no map mpls exp {{exp-value | exp-range} queue {strict-priority | 0}}
Syntax Description
Defaults
If you do not configure which MPLS EXP values map to high priority, the system treats packets with an EXP value of 6-7 as high priority.
Command Modes
Ingress-class-map configuration mode (config-ing-class-map)
Command History
|
|
---|---|
Cisco IOS XE |
This command was introduced. |
Usage Guidelines
To classify all the MPLS packets as high priority or low priority for POS, channelized, or clear-channel SPA, use the map mpls all queue command.
To classify the MPLS packets with specific EXP values, use the map mpls exp {exp-value | exp-range} queue {strict-priority | 0} command.
Examples
The following example shows how to classify all the MPLS packets as high priority using the map mpls all queue strict-priority command:
Router# config
Router(config)# ingress-class-map 1
Router(config-ing-class-map)# map mpls all queue strict-priority
The following example shows how to classify the MPLS packets with EXP value of 4 as high priority:
Router# config
Router(config)# ingress-class-map 1
Router(config-ing-class-map)# map mpls exp 4 queue strict-priority
Related Commands
|
|
---|---|
plim qos input class-map |
Attaches the classification template to an interface. |
match access-group
To configure the match criteria for a class map on the basis of the specified access control list (ACL), use the match access-group command in class-map configuration mode. To remove ACL match criteria from a class map, use the no form of this command.
match access-group {access-group | name access-group-name}
no match access-group access-group
Syntax Description
Command Default
No match criteria are configured.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
For class-based weighted fair queueing (CBWFQ), you define traffic classes based on match criteria including ACLs, protocols, input interfaces, quality of service (QoS) labels, and EXP field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
Note For Zone-Based Policy Firewall, this command is not applicable to CBWFQ.
The match access-group command specifies a numbered or named ACL whose contents are used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
Supported Platforms Other than Cisco 10000 Series Routers
To use the match access-group command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. After you identify the class, you can use one of the following commands to configure its match criteria:
•match access-group
•match input-interface
•match mpls experimental
•match protocol
Note Zone-Based Policy Firewall supports only the match access-group, match protocol, and match class-map commands.
If you specify more than one command in a class map, only the last command entered applies. The last command overrides the previously entered commands.
Note The match access-group command specifies the numbered access list against whose contents packets are checked to determine if they match the criteria specified in the class map. Access lists configured with the optional log keyword of the access-list command are not supported when you configure match criteria. For more information about the access-list command, refer to the Cisco IOS IP Application Services Command Reference.
Cisco 10000 Series Routers
To use the match access-group command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish.
Note The match access-group command specifies the numbered access list against whose contents packets are checked to determine if they match the criteria specified in the class map. Access lists configured with the optional log keyword of the access-list command are not supported when you configure match criteria.
Examples
The following example specifies a class map called acl144 and configures the ACL numbered 144 to be used as the match criterion for that class:
class-map acl144
match access-group 144
The following example pertains to Zone-Based Policy Firewall. The example defines a class map called c1 and configures the ACL numbered 144 to be used as the match criterion for that class.
class-map type inspect match-all c1
match access-group 144
Related Commands
match any
To configure the match criteria for a class map to be successful match criteria for all packets, use the match any command in class-map configuration mode. To remove all criteria as successful match criteria, use the no form of this command.
match any
no match any
Syntax Description
This command has no arguments or keywords.
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Examples
In the following configuration, all packets leaving Ethernet interface 1/1 will be policed based on the parameters specified in policy-map class configuration mode:
Router(config)# class-map matchany
Router(config-cmap)# match any
Router(config-cmap)# exit
Router(config)# policy-map policy1
Router(config-pmap)# class class4
Router(config-pmap-c)# police 8100 1500 2504 conform-action transmit exceed-action set-qos-transmit 4
Router(config-pmap-c)# exit
Router(config)# interface ethernet1/1
Router(config-if)# service-policy output policy1
Related Commands
match atm-clp
To enable packet matching on the basis of the ATM cell loss priority (CLP), use the match atm-clp command in class-map configuration mode. To disable packet matching on the basis of the ATM CLP, use the no form of this command.
match atm-clp
no match atm-clp
Syntax Description
This command has no arguments or keywords.
Command Default
Packets are not matched on the basis of the ATM CLP.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
This command is supported on policy maps that are attached to ATM main interfaces, ATM subinterfaces, or ATM permanent virtual circuits (PVCs). However, policy maps (containing the match atm-clp command) that are attached to these types of ATM interfaces can be input policy maps only.
This command is supported on the PA-A3 adapter only.
Examples
The following example shows how to create a class called "class-c1" using the class-map command, and the match atm-clp command has been configured inside that class. Therefore, packets are matched on the basis of the ATM CLP and are placed into this class:
Router> enable
Router# configure terminal
Router(config)# class-map class-c1
Router(config-cmap)# match atm-clp
Router(config-cmap)# end
Related Commands
match atm oam
To enable the control traffic classification on an ATM interface, use the match atm oam command in class-map configuration mode. To disable the control traffic classification, use the no form of this command.
match atm oam
no match atm oam
Syntax Description
This command has no arguments or keywords.
Command Default
No default behavior or values
Command Modes
Class-map configuration (config-cmap)
Command History
|
|
---|---|
12.0(30)S |
This command was introduced. |
Usage Guidelines
Use this command for policy maps attached to ATM interfaces or ATM permanent virtual circuits (PVCs). Policy maps containing the match atm oam command attached to ATM interfaces or ATM PVCs can be input policy maps only.
Examples
The following example shows the control traffic classification being configured as the match criterion in a class map. The policy map containing this class map is then applied to the ATM interface.
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# class-map class-oam
Router(config-cmap)# match atm oam
Router(config-cmap)# exit
Related Commands
match atm-vci
To enable packet matching on the basis of the ATM virtual circuit interface (VCI), use the match atm-vci command in class map configuration mode. To disable packet matching on the basis of the ATM VCI, use the no form of this command.
match atm-vci vc-id [-vc-id]
no match atm-vci
Syntax Description
Command Default
No match criteria are configured.
Command Modes
Class map configuration (config-cmap)
Command History
|
|
---|---|
Cisco IOS XE |
This command was introduced. |
12.2(33)SRE |
This command was modified. This command was integrated into Cisco IOS Release 12.2(33)SRE. |
Usage Guidelines
When you configure the match atm-vci command in class map configuration mode, you can add this class map to a policy map that can be attached only to an ATM permanent virtual path (PVP).
Note On the Cisco 7600 series router, the match atm-vci command is supported only in the ingress direction on an ATM VP.
You can use the match not command to match any VC except those you specify in the command.
Examples
The following example shows how to enable matching on VC ID 50:
Router(config)# class-map map1
Router(config-cmap)# match atm-vci 50
Related Commands
|
|
---|---|
class-map |
Creates a class map to be used for matching packets to a specified class. |
match not |
Specifies a single match criterion value to use as an unsuccessful match criterion. |
match class-map
To use a traffic class as a classification policy, use the match class-map command in class-map or policy inline configuration mode. To remove a specific traffic class as a match criterion, use the no form of this command.
match class-map class-map-name
no match class-map class-map-name
Syntax Description
class-map-name |
Name of the traffic class to use as a match criterion. |
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
The only method of including both match-any and match-all characteristics in a single traffic class is to use the match class-map command. To combine match-any and match-all characteristics into a single class, do one of the following:
•Create a traffic class with the match-any instruction and use a class configured with the match-all instruction as a match criterion (using the match class-map command).
•Create a traffic class with the match-all instruction and use a class configured with the match-any instruction as a match criterion (using the match class-map command).
You can also use the match class-map command to nest traffic classes within one another, saving users the overhead of re-creating a new traffic class when most of the information exists in a previously configured traffic class.
When packets are matched to a class map, a traffic rate is generated for these packets. In a zone-based firewall policy, only the first packet that creates a session matches the policy. Subsequent packets in this flow do not match the filters in the configured policy, but instead match the session directly. The statistics related to subsequent packets are shown as part of the 'inspect' action.
Examples
Non-Zone-Based Policy Firewall Examples
In the following example, the traffic class called class1 has the same characteristics as traffic class called class2, with the exception that traffic class class1 has added a destination address as a match criterion. Rather than configuring traffic class class1 line by line, you can enter the match class-map class2 command. This command allows all of the characteristics in the traffic class called class2 to be included in the traffic class called class1, and you can simply add the new destination address match criterion without reconfiguring the entire traffic class.
Router(config)# class-map match-any class2
Router(config-cmap)# match protocol ip
Router(config-cmap)# match qos-group 3
Router(config-cmap)# match access-group 2
Router(config-cmap)# exit
Router(config)# class-map match-all class1
Router(config-cmap)# match class-map class2
Router(config-cmap)# match destination-address mac 1.1.1
Router(config-cmap)# exit
The following example shows how to combine the characteristics of two traffic classes, one with match-any and one with match-all characteristics, into one traffic class with the match class-map command. The result of traffic class called class4 requires a packet to match one of the following three match criteria to be considered a member of traffic class called class 4: IP protocol and QoS group 4, destination MAC address 1.1.1, or access group 2. Match criteria IP protocol and QoS group 4 are required in the definition of the traffic class named class3 and included as a possible match in the definition of the traffic class named class4 with the match class-map class3 command.
In this example, only the traffic class called class4 is used with the service policy called policy1.
Router(config)# class-map match-all class3
Router(config-cmap)# match protocol ip
Router(config-cmap)# match qos-group 4
Router(config-cmap)# exit
Router(config)# class-map match-any class4
Router(config-cmap)# match class-map class3
Router(config-cmap)# match destination-address mac 1.1.1
Router(config-cmap)# match access-group 2
Router(config-cmap)# exit
Router(config)# policy-map policy1
Router(config-pmap)# class class4
Router(config-pmap-c)# police 8100 1500 2504 conform-action transmit exceed-action set-qos-transmit 4
Router(config-pmap-c)# exit
Related Commands
|
|
class-map |
Creates a class map to be used for matching packets to a specified class. |
match cos
To match a packet on the basis of a Layer 2 class of service (CoS)/Inter-Switch Link (ISL) marking, use the match cos command in class-map configuration mode. To remove a specific Layer 2 CoS/ISL marking as a match criterion, use the no form of this command.
match cos cos-value [cos-value [cos-value [cos-value]]]
no match cos cos-value [cos-value [cos-value [cos-value]]]
Syntax Description
Command Default
Packets are not matched on the basis of a Layer 2 CoS/ISL marking.
Command Modes
Class-map configuration (config-cmap)
Command History
Examples
In the following example, the CoS values of 1, 2, and 3 are successful match criteria for the interface that contains the classification policy called cos:
Router(config)# class-map cos
Router(config-cmap)# match cos 1 2 3
In the following example, classes called voice and video-n-data are created to classify traffic based on the CoS values. QoS treatment is then given to the appropriate packets in the CoS-based-treatment policy map (in this case, the QoS treatment is priority 64 and bandwidth 512). The service policy configured in this example is attached to all packets leaving Fast Ethernet interface 0/0.1. The service policy can be attached to any interface that supports service policies:
Router(config)# class-map voice
Router(config-cmap)# match cos 7
Router(config)# class-map video-n-data
Router(config-cmap)# match cos 5
Router(config)# policy-map cos-based-treatment
Router(config-pmap)# class voice
Router(config-pmap-c)# priority 64
Router(config-pmap-c)# exit
Router(config-pmap)# class video-n-data
Router(config-pmap-c)# bandwidth 512
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# interface fastethernet0/0.1
Router(config-if)# service-policy output cos-based-treatment
Related Commands
match cos inner
To match the inner cos of QinQ packets on a Layer 2 class of service (CoS) marking, use the match cos inner command in class-map configuration mode. To remove a specific Layer 2 CoS inner tag marking, use the no form of this command.
match cos cos-value
no match cos cos-value
Syntax Description
cos-value |
Specific IEEE 802.1Q/ISL CoS value. The cos-value is from 0 to 7; up to four CoS values can be specified in one match cos statement. |
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
|
|
---|---|
12.2(18)SXE |
This command was introduced. |
12.2(33)SRB |
This command was integrated into Cisco IOS Release 12.2(33)SRB. |
Examples
In the following example, the inner CoS-values of 1, 2, and 3 are successful match criteria for the interface that contains the classification policy called cos:
Router(config)# class-map cos Router(config-cmap)# match cos inner 1 2 3
Related Commands
match destination-address mac
To use the destination MAC address as a match criterion, use the match destination-address mac command in class-map configuration mode. To remove a previously specified destination MAC address as a match criterion, use the no form of this command.
match destination-address mac address
no match destination-address mac address
Syntax Description
address |
Destination MAC address to be used as a match criterion. |
Command Default
No destination MAC address is specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Examples
The following example specifies a class map called macaddress and specifies the destination MAC address to be used as the match criterion for this class:
class-map macaddress
match destination-address mac 00:00:00:00:00:00
Related Commands
|
|
class-map |
Creates a class map to be used for matching packets to a specified class. |
match discard-class
To specify a discard class as a match criterion, use the match discard-class command in class-map configuration mode. To remove a previously specified discard class as a match criterion, use the no form of this command.
match discard-class class-number
no match discard-class class-number
Syntax Description
class-number |
Number of the discard class being matched. Valid values are 0 to 7. |
Command Default
Packets will not be classified as expected.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
A discard-class value has no mathematical significance. For example, the discard-class value 2 is not greater than 1. The value simply indicates that a packet marked with discard-class 2 should be treated differently than a packet marked with discard-class 1.
Packets that match the specified discard-class value are treated differently from packets marked with other discard-class values. The discard-class is a matching criterion only, used in defining per hop behavior (PHB) for dropping traffic.
Examples
The following example shows that packets in discard class 2 are matched:
Router(config-cmap)# match discard-class 2
Related Commands
|
|
---|---|
set discard-class |
Marks a packet with a discard-class value. |
match dscp
To identify one or more differentiated service code point (DSCP), Assured Forwarding (AF), and Certificate Server (CS) values as a match criterion, use the match dscp command in class-map configuration mode. To remove a specific DSCP value from a class map, use the no form of this command.
match [ip] dscp dscp-value [dscp-value dscp-value dscp-value dscp-value dscp-value dscp-value dscp-value]
no match [ip] dscp dscp-value
Syntax Description
Command Default
No match criteria is configured.
If you do not enter the ip keyword, matching occurs on both IPv4 and IPv6 packets.
Command Modes
Class-map configuration
Command History
Usage Guidelines
DSCP Values
You must enter one or more differentiated service code point (DSCP) values. The command may include any combination of the following:
•numbers (0 to 63) representing differentiated services code point values
•af numbers (for example, af11) identifying specific AF DSCPs
•cs numbers (for example, cs1) identifying specific CS DSCPs
•default—Matches packets with the default DSCP.
•ef—Matches packets with EF DSCP.
For example, if you wanted the DCSP values of 0, 1, 2, 3, 4, 5, 6, or 7 (note that only one of the IP DSCP values must be a successful match criterion, not all of the specified DSCP values), enter the match dscp 0 1 2 3 4 5 6 7 command.
This command is used by the class map to identify a specific DSCP value marking on a packet. In this context, dscp-value arguments are used as markings only and have no mathematical significance. For instance, the dscp-value of 2 is not greater than 1. The value simply indicates that a packet marked with the dscp-value of 2 is different than a packet marked with the dscp-value of 1. The treatment of these marked packets is defined by the user through the setting of Quality of Service (QoS) policies in policy-map class configuration mode.
Match Packets on DSCP Values
To match DSCP values for IPv6 packets only, the match protocol ipv6 command must also be used. Without that command, the DSCP match defaults to match both IPv4 and IPv6 packets.
To match DSCP values for IPv4 packets only, use the ip keyword. Without the ip keyword the match occurs on both IPv4 and IPv6 packets. Alternatively, the match protocol ip command may be used with match dscp to classify only IPv4 packets.
After the DSCP bit is set, other QoS features can then operate on the bit settings.
The network can give priority (or some type of expedited handling) to marked traffic. Typically, you set the precedence value at the edge of the network (or administrative domain); data is then queued according to the precedence. Weighted fair queueing (WFQ) can speed up handling for high-precedence traffic at congestion points. Weighted Random Early Detection (WRED) can ensure that high-precedence traffic has lower loss rates than other traffic during times of congestion.
Cisco 10000 Series Router
The Cisco 10000 series router supports DSCP matching of IPv4 packets only. You must include the ip keyword when specifying the DSCP values to use as match criterion.
You cannot use the set ip dscp command with the set ip precedence command to mark the same packet. DSCP and precedence values are mutually exclusive. A packet can have one value or the other, but not both.
Examples
The following example shows how to set multiple match criteria. In this case, two IP DSCP value and one AF value.
Router(config)# class-map map1
Router(config-cmap)# match dscp 1 2 af11
Related Commands
match field
To configure the match criteria for a class map on the basis of the fields defined in the protocol header description files (PHDFs), use the match field command in class-map configuration mode. To remove the specified match criteria, use the no form of this command.
match field protocol protocol-field {eq [mask] | neq [mask] | gt | lt | range range | regex string} value [next next-protocol]
no match field protocol protocol-field {eq [mask] | neq [mask] | gt | lt | range range | regex string} value [next next-protocol]
Syntax Description
Command Default
No match criteria are configured.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
Before issuing the match-field command, you must load a PHDF onto the router via the load protocol command. Thereafter, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish.
Match criteria are defined via a start point, offset, size, value to match, and mask. A match can be defined on a pattern with any protocol field.
Examples
The following example shows how to configure FPM for blaster packets. The class map contains the following match criteria: TCP port 135, 4444 or UDP port 69; and pattern 0x0030 at 3 bytes from start of IP header.
load protocol disk2:ip.phdf
load protocol disk2:tcp.phdf
load protocol disk2:udp.phdf
class-map type stack match-all ip-tcp
match field ip protocol eq 0x6 next tcp
class-map type stack match-all ip-udp
match field ip protocol eq 0x11 next udp
class-map type access-control match-all blaster1
match field tcp dest-port eq 135
match start 13-start offset 3 size 2 eq 0x0030
class-map type access-control match-all blaster2
match field tcp dest-port eq 4444
match start 13-start offset 3 size 2 eq 0x0030
class-map type access-control match-all blaster3
match field udp dest-port eq 69
match start 13-start offset 3 size 2 eq 0x0030
policy-map type access-control fpm-tcp-policy
class blaster1
drop
class blaster2
drop
policy-map type access-control fpm-udp-policy
class blaster3
drop
policy-map type access-control fpm-policy
class ip-tcp
service-policy fpm-tcp-policy
class ip-udp
service-policy fpm-udp-policy
interface gigabitEthernet 0/1
service-policy type access-control input fpm-policy
Related Commands
match flow pdp
To specify a Packet Data Protocol (PDP) flow as a match criterion in a class map, use the match flow pdp command in class-map configuration mode. To remove a PDP flow as a match criterion, use the no form of this command.
match flow pdp
no match flow pdp
Syntax Description
This command has no arguments or keywords.
Command Default
A PDP flow is not specified as a match criterion.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
The match flow pdp command allows you to match and classify traffic on the basis of a PDP flow.
The match flow pdp command is included with the Flow-Based QoS for GGSN feature available with Cisco IOS Release 12.4(9)T. The Flow-Based QoS for GGSN feature is designed specifically for the Gateway General Packet Radio Service (GPRS) Support Node (GGSN).
Per-PDP Policing
The Flow-Based QoS for GGSN feature includes per-PDP policing (session-based policing).
The match flow pdp command (when used in conjunction with the class-map command, the policy-map command, the police rate pdp command, and the service-policy command) allows you to configure per-PDP policing (session-based policing) for downlink traffic on a GGSN.
Note the following points related to per-PDP policing:
•When using the class-map command to define a class map for PDP flow classification, do not use the match-any keyword.
•Per-PDP policing functionality requires that you configure Universal Mobile Telecommunications System (UMTS) quality of service (QoS). For information on configuring UMTS QoS, see the "Configuring QoS on the GGSN" section of the Cisco GGSN Release 6.0 Configuration Guide, Cisco IOS Release 12.4(2)XB.
•The policy map created to configure per-PDP policing cannot contain multiple classes within which only the match flow pdp command has been specified. In other words, if there are multiple classes in the policy map, the match flow pdp command must be used in conjunction with another match statement (for example, match precedence) in at least one class.
For More Information
For more information about the GGSN, along with the instructions for configuring the Flow-Based QoS for GGSN feature, see the Cisco GGSN Release 6.0 Configuration Guide, Cisco IOS Release 12.4(2)XB.
Note To configure the Flow-Based QoS for GGSN feature, follow the instructions in the section called "Configuring Per-PDP Policing."
For more information about the GGSN-specific commands, see the Cisco GGSN Release 6.0 Command Reference, Cisco IOS Release 12.4(2)XB.
Examples
The following example shows how to specify PDP flows as the match criterion in a class map named class-pdp:
class-map class-pdp
match flow pdp
Related Commands
match fr-dlci
To specify the Frame Relay data-link connection identifier (DLCI) number as a match criterion in a class map, use the match fr-dlci command in class-map configuration mode. To remove a previously specified DLCI number as a match criterion, use the no form of this command.
match fr-dlci dlci-number
no match fr-dlci dlci-number
Syntax Description
dlci-number |
Number of the DLCI associated with the packet. |
Command Default
No DLCI number is specified.
Command Modes
Class-map configuration (config-cmap)
Command History
|
|
---|---|
12.2(13)T |
This command was introduced. |
12.2(28)SB |
This command was integrated into Cisco IOS Release 12.2(28)SB. |
Usage Guidelines
This match criterion can be used in main interfaces and point-to-multipoint subinterfaces in Frame Relay networks, and it can also be used in hierarchical policy maps.
Examples
In the following example a class map called "class1" has been created and the Frame Relay DLCI number of 500 has been specified as a match criterion. Packets matching this criterion are placed in class1.
Router(config)# class-map class1
Router(config-cmap)# match fr-dlci 500
Router(config-cmap)#
end
Related Commands
match input vlan
To configure a class map to match incoming packets that have a specific virtual local area network (VLAN) ID, use the match input vlan command in class map configuration mode. To remove the matching of VLAN IDs, use the no form of this command.
match input vlan input-vlan-list
no match input vlan input-vlan-list
Syntax Description
Command Default
By default, no matching is done on VLAN IDs.
Command Modes
Class map configuration
Command History
Usage Guidelines
The match input vlan command allows you to create a class map that matches packets with one or more specific VLAN IDs, as they were received on the input (ingress) interface. This enables hierarchical Quality of Service (HQoS) for Ethernet over MPLS (EoMPLS) Virtual Circuits (VC), allowing parent and child relationships between QoS class maps and policy maps. This in turn enables service providers to easily classify and shape traffic for a particular EoMPLS network.
In EoMPLS applications, the parent class map typically specifies the maximum bandwidth for all of the VCs in a specific EoMPLS network. Then the child class maps perform other QoS operations, such as traffic shaping, on a subset of this traffic.
Do not confuse the match input vlan command with the match vlan command, which is also a class-map configuration command.
•The match vlan command matches the VLAN ID on packets for the particular interface at which the policy map is applied. Policy maps using the match vlan command can be applied to either ingress or egress interfaces on the router, using the service-policy {input | output} command.
•The match input vlan command matches the VLAN ID that was on packets when they were received on the ingress interface on the router. Typically, policy maps using the match input vlan command are applied to egress interfaces on the router, using the service-policy output command.
The match input vlan command can also be confused with the match input-interface vlan command, which matches packets being received on a logical VLAN interface that is used for inter-VLAN routing.
Tip Because class maps also support the match input-interface command, you cannot abbreviate the input keyword when giving the match input vlan command.
Note The match input vlan command cannot be used only on Layer 2 LAN ports on FlexWAN, Enhanced FlexWAN, and Optical Service Modules (OSM) line cards.
Restrictions
The following restrictions apply when using the match input vlan command:
•You cannot attach a policy with match input vlan to an interface if you have already attached a service policy to a VLAN interface (a logical interface that has been created with the interface vlan command).
•Class maps that use the match input vlan command support only the match-any option. You cannot use the match-all option in class maps that use the match input vlan command.
•If the parent class contains a class map with a match input vlan command, you cannot use a match exp command in a child class map.
Examples
The following example shows how to create a class map and policy map that matches packets with a VLAN ID of 1000. The policy map shapes this traffic to a committed information rate (CIR) value of 10 Mbps (10,000,000 bps). The final lines then apply this policy map to a specific gigabit Ethernet WAN interface:
Router# configure terminal
Router(config)# class-map match-any vlan1000
Router(config-cmap)# match input vlan 1000
Router(config-cmap)# exit
Router(config)# policy-map policy1000
Router(config-pmap)# class vlan1000
Router(config-pmap-c)# exit
Router(config-pmap)# shape average 10000000
Router(config-pmap)# interface GE-WAN 3/0
Router(config-if)# service-policy output policy1000
Router(config-if)#
The following example shows how to configure a class map to match VLAN IDs 100, 200, and 300:
Router# configure terminal
Router(config)# class-map match-any hundreds
Router(config-cmap)# match input vlan 100 200 300
Router(config-cmap)#
The following example shows how to configure a class map to match all VLAN IDs from 2000 to 2999 inclusive:
Router# configure terminal
Router(config)# class-map match-any vlan2000s
Router(config-cmap)# match input vlan 2000-2999
Router(config-cmap)#
The following example shows how to configure a class map to match both a range of VLAN IDs, as well as specific VLAN IDs:
Router# configure terminal
Router(config)# class-map match-any misc
Router(config-cmap)# match input vlan 1 5 10-99 2000-2499
Router(config-cmap)#
Related Commands
match input-interface
To configure a class map to use the specified input interface as a match criterion, use the match input-interface command in class-map configuration mode. To remove the input interface match criterion from a class map, use the no form of this command.
match input-interface interface-name
no match input-interface interface-name
Syntax Description
interface-name |
Name of the input interface to be used as match criteria. |
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
Supported Platforms Other Than Cisco 10000 Series Routers
For class-based weighted fair queueing (CBWFQ), you define traffic classes based on match criteria including input interfaces, access control lists (ACLs), protocols, quality of service (QoS) labels, and experimental (EXP) field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
The match input-interface command specifies the name of an input interface to be used as the match criterion against which packets are checked to determine if they belong to the class specified by the class map.
To use the match input-interface command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. After you identify the class, you can use one of the following commands to configure its match criteria:
•match access-group
•match input-interface
•match mpls experimental
•match protocol
If you specify more than one command in a class map, only the last command entered applies. The last command overrides the previously entered commands.
Cisco 10000 Series Routers
For CBWFQ, you define traffic classes based on match criteria including input interfaces, ACLs, protocols, QoS labels, and EXP field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
To use the match input-interface command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish.
Examples
The following example specifies a class map called ethernet1 and configures the input interface named ethernet1 to be used as the match criterion for this class:
class-map ethernet1
match input-interface ethernet1
Related Commands
match ip dscp
The match ip dscp command is replaced by the match dscp command. See the match dscp command for more information.
match ip precedence
The match ip precedence command is replaced by the match precedence command. See the match precedence command for more information.
match ip rtp
To configure a class map to use the Real-Time Protocol (RTP) port as the match criterion, use the match ip rtp command in class-map configuration mode. To remove the RTP port match criterion, use the no form of this command.
match ip rtp starting-port-number port-range
no match ip rtp
Syntax Description
starting-port-number |
The starting RTP port number. Values range from 2000 to 65535. |
port-range |
The RTP port number range. Values range from 0 to 16383. |
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
This command is used to match IP RTP packets that fall within the specified port range. It matches packets destined to all even User Datagram Port (UDP) port numbers in the range from the starting-port-number argument to the starting-port-number plus the port-range argument.
Use of an RTP port range as the match criterion is particularly effective for applications that use RTP, such as voice or video.
Examples
The following example specifies a class map called ethernet1 and configures the RTP port number 2024 and range 1000 to be used as the match criteria for this class:
class-map ethernet1
match ip rtp 2024 1000
Related Commands
match mpls experimental
To configure a class map to use the specified value or values of the experimental (EXP) field as a match criteria, use the match mpls experimental command in class-map configuration mode. To remove the EXP field match criteria from a class map, use the no form of this command.
match mpls experimental number
no match mpls experimental number
Syntax Description
number |
EXP field value (any number from 0 through 7) to be used as a match criterion. You can specify multiple values, separated by a space (for example, 3 4 7). |
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
Supported Platforms Other Than the Cisco 10000 Series
For class-based weighted fair queueing (CBWFQ), you define traffic classes based on match criteria such as input interfaces, access control lists (ACLs), protocols, quality of service (QoS) labels, and experimental (EXP) field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
The match mpls experimental command specifies the name of an EXP field value to be used as the match criterion against which packets are compared to determine if they belong to the class specified by the class map.
To use the match mpls experimental command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. After you identify the class, you can use one of the following commands to configure its match criteria:
•match access-group
•match input-interface
•match mpls experimental
•match protocol
If you specify more than one command in a class map, only the last command entered applies. The last command overrides the previously entered commands.
Cisco 10000 Series
This command is available only on the ESR-PRE1 module.
For CBWFQ, you define traffic classes based on match criteria such as input interfaces, ACLs, protocols, QoS labels, and EXP field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
To use the match mpls experimental command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish.
Examples
The following example specifies a class map called ethernet1 and configures the Multiprotocol Label Switching (MPLS) experimental values of 1 and 2 to be used as the match criteria for this class:
Router(config)# class-map ethernet1
Router(config-cmap)# match mpls experimental 1 2
Related Commands
match mpls experimental topmost
To match the experimental (EXP) value in the topmost label header, use the match mpls experimental topmost command in class-map configuration mode. To remove the EXP match criterion, use the no form of this command.
match mpls experimental topmost number
no match mpls experimental topmost number
Syntax Description
number |
Multiprotocol Label Switching (MPLS) EXP field in the topmost label header. Valid values are 0 to 7. |
Command Default
No EXP match criterion is configured for the topmost label header.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
You can enter this command on the input interfaces and the output interfaces. It will match only on MPLS packets.
Examples
The following example shows that the EXP value 3 in the topmost label header is matched:
Router(config-cmap)# match mpls experimental topmost 3
Related Commands
|
|
---|---|
set mpls experimental topmost |
Sets the MPLS EXP field value in the topmost MPLS label header at the input or output interfaces. |
match not
To specify the single match criterion value to use as an unsuccessful match criterion, use the match not command in QoS class-map configuration mode. To remove a previously specified source value to not use as a match criterion, use the no form of this command.
match not match-criterion
no match not match-criterion
Syntax Description
match-criterion |
The match criterion value that is an unsuccessful match criterion. All other values of the specified match criterion will be considered successful match criteria. |
Command Default
No default behavior or values
Command Modes
QoS class-map configuration (config-cmap)
Command History
Usage Guidelines
The match not command is used to specify a quality of service (QoS) policy value that is not used as a match criterion. When the match not command is used, all other values of that QoS policy become successful match criteria.
For instance, if the match not qos-group 4 command is issued in QoS class-map configuration mode, the specified class will accept all QoS group values except 4 as successful match criteria.
Examples
The following example shows a traffic class in which all protocols except IP are considered successful match criteria:
Router(config)# class-map noip
Router(config-cmap)# match not protocol ip
Router(config-cmap)# exit
Related Commands
|
|
class-map |
Creates a class map to be used for matching packets to a specified class. |
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
Command Default
The Layer 3 packet length in the IP header is not used as a match criterion.
Command Modes
Class-map configuration (config-cmap)
Command History
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.
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.
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 bytes and a maximum Layer 3 packet length of 300 bytes are viewed as meeting the match criteria.
Router> enable
Router# configure terminal
Router(config)# class-map match-all class1
Router(config-cmap)# match packet length min 100 max 300
Router(config-cmap)# end
Related Commands
match port-type
To match the access policy on the basis of the port for a class map, use the match port-type command in class-map configuration mode. To delete the port type, use the no form of this command.
match port-type {routed | switched}
no match port-type {routed | switched}
Syntax Description
Command Default
Access policy is not matched.
Command Modes
Class-map configuration (config-cmap)
Command History
|
|
---|---|
12.4(6)T |
This command was introduced. |
Usage Guidelines
This command is used because, on the basis of the port on which a user is connecting, the access policies that are applied to it can be different.
Examples
The following example shows that an access policy has been matched on the basis of the port for a class map:
Router(config-cmap)# match port-type routed
Related Commands
|
|
---|---|
class-map |
Creates a class map to be used for matching packets to a specified class. |
match tag (class-map) |
Specifies the tag to be matched for a tag type of class map. |
match precedence
To identify IP precedence values to use as the match criterion, use the match precedence command in class-map configuration mode. To remove IP precedence values from a class map, use the no form of this command.
match [ip] precedence {precedence-criteria1 | precedence-criteria2 | precedence-criteria3 | precedence-criteria4}
no match [ip] precedence {precedence-criteria1 | precedence-criteria2 | precedence-criteria3 | precedence-criteria4}
Syntax Description
Command Default
No match criterion is configured.
If you do not enter the ip keyword, matching occurs on both IPv4 and IPv6 packets.
Command Modes
Class-map configuration mode (config-cmap)
Command History
Usage Guidelines
You can enter up to four matching criteria, as number abbreviation (0 to 7) or criteria names (critical, flash, and so on), in a single match statement. For example, if you wanted the precedence values of 0, 1, 2, or 3 (note that only one of the precedence values must be a successful match criterion, not all of the specified precedence values), enter the match ip precedence 0 1 2 3 command. The precedence-criteria numbers are not mathematically significant; that is, the precedence-criteria of 2 is not greater than 1. The way that these different packets are treated depends upon quality of service (QoS) policies, set in the policy-map configuration mode.
You can configure a QoS policy to include IP precedence marking for packets entering the network. Devices within your network can then use the newly marked IP precedence values to determine how to treat the packets. For example, class-based weighted random early detection (WRED) uses IP precedence values to determine the probability that a packet is dropped. You can also mark voice packets with a particular precedence. You can then configure low-latency queueing (LLQ) to place all packets of that precedence into the priority queue.
Matching Precedence for IPv6 and IPv4 Packets on the Cisco 10000 and 7600 Series Routers
On the Cisco 7600 Series and 10000 Series Routers, you set matching criteria based on precedence values for only IPv6 packets using the match protocol command with the ipv6 keyword. Without that keyword, the precedence match defaults to match both IPv4 and IPv6 packets. You set matching criteria based on precedence values for IPv4 packets only, use the ip keyword. Without the ip keyword the match occurs on both IPv4 and IPv6 packets.
Precedence Values and Names
The following table lists all criteria conditions by value, name, binary value, and recommended use. You may enter up to four criteria, each separated by a space. Only one of the precedence values must be a successful match criterion. Table 9 lists the IP precedence values.
Do not use IP precedence 6 or 7 to mark packets, unless you are marking control packets.
Examples
IPv4-Specific Traffic Match
The following example shows how to configure the service policy called "priority50" and attach service policy "priority50" to an interface, matching for IPv4 traffic only. In a network where both IPv4 and IPv6 are running, you might find it necessary to distinguish between the protocols for matching and traffic segregation. In this example, the class map called "ipprec5" will evaluate all IPv4 packets entering Fast Ethernet interface 1/0/0 for a precedence value of 5. If the incoming IPv4 packet has been marked with the precedence value of 5, the packet will be treated as priority traffic and will be allocated with bandwidth of 50 kbps.
Router(config)# class-map ipprec5
Router(config-cmap)# match ip precedence 5
Router(config)# exit
Router(config)# policy-map priority50
Router(config-pmap)# class ipprec5
Router(config-pmap-c)# priority 50
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# interface fa1/0/0
Router(config-if)# service-policy input priority50
IPv6-Specific Traffic Match
The following example shows the same service policy matching on precedence for IPv6 traffic only. Notice that the match protocol command with the ipv6 keyword precedes the match precedence command. The match protocol command is required to perform matches on IPv6 traffic alone.
Router(config)# class-map ipprec5
Router(config-cmap)# match protocol ipv6
Router(config-cmap)# match precedence 5
Router(config)# exit
Router(config)# policy-map priority50
Router(config-pmap)# class ipprec5
Router(config-pmap-c)# priority 50
Router(config-pmap-c)# exit
Router(config-pmap)# exit
Router(config)# interface fa1/0/0
Router(config-if)# service-policy input priority50
Related Commands
match protocol
To configure the match criterion for a class map on the basis of a specified protocol, use the match protocol command in class-map configuration mode. To remove the protocol-based match criterion from the class map, use the no form of this command.
match protocol protocol-name
no match protocol protocol-name
Syntax Description
protocol-name |
Name of the protocol (for example, bgp) used as a matching criterion. See the "Usage Guidelines" for a list of protocols supported by most routers. |
Command Default
No match criterion is configured.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
Supported Platforms Other Than Cisco 7600 Routers and Cisco 10000 Series Routers
For class-based weighted fair queueing (CBWFQ), you define traffic classes based on match criteria protocols, access control lists (ACLs), input interfaces, quality of service (QoS) labels, and Experimental (EXP) field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
The match protocol command specifies the name of a protocol to be used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
The match protocol ipx command matches packets in the output direction only.
To use the match protocol command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. After you identify the class, you can use one of the following commands to configure its match criteria:
•match access-group
•match input-interface
•match mpls experimental
If you specify more than one command in a class map, only the last command entered applies. The last command overrides the previously entered commands.
To configure NBAR to match protocol types that are supported by NBAR traffic, use the match protocol (NBAR) command.
Cisco 7600 Routers
The match protocol command in QoS class-map configuration configures NBAR and sends all traffic on the port, both ingress and egress, to be processed in the software on the Multilayer Switch Feature Card 2 (MSFC2).
For CBWFQ, you define traffic classes based on match criteria like protocols, ACLs, input interfaces, QoS labels, and Multiprotocol Label Switching (MPLS) EXP field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
The match protocol command specifies the name of a protocol to be used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
If you want to use the match protocol command, you must first enter the class-map command to specify the name of the class to which you want to establish the match criteria.
If you specify more than one command in a class map, only the last command entered applies. The last command overrides the previously entered commands.
This command can be used to match protocols that are known to the NBAR feature. For a list of protocols supported by NBAR, see the "Classification" part of the Cisco IOS Quality of Service Solutions Configuration Guide.
Cisco 10000 Series Routers
For CBWFQ, you define traffic classes based on match criteria including protocols, ACLs, input interfaces, QoS labels, and EXP field values. Packets satisfying the match criteria for a class constitute the traffic for that class.
The match protocol command specifies the name of a protocol to be used as the match criteria against which packets are checked to determine if they belong to the class specified by the class map.
The match protocol ipx command matches packets in the output direction only.
To use the match protocol command, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish.
If you are matching NBAR protocols, use the match protocol (NBAR) command.
Match Protocol Command Restrictions (Catalyst 6500 Series Switches Only)
Policy maps contain traffic classes. Traffic classes contain one or more match commands that can be used to match packets (and organize them into groups) on the basis of a protocol type or application. You can create as many traffic classes as needed.
Cisco IOS Release 12.2(18)ZY includes software intended for use on the Catalyst 6500 series switch that is equipped with a Supervisor 32/PISA engine. For this release and platform, note the following restrictions for using policy maps and match protocol commands:
•A single traffic class can be configured to match a maximum of 8 protocols or applications.
•Multiple traffic classes can be configured to match a cumulative maximum of 95 protocols or applications.
Supported Protocols
Table 10 lists the protocols supported by most routers. Some routers support a few additional protocols. For example, the Cisco 7600 router supports the aarp and decnet protocols, while the Cisco 7200 router supports the directconnect and pppoe protocols. For a complete list of supported protocols, see the online help for the match protocol command on the router that you are using.
Examples
The following example shows how to specify a class map called ftp and configures the ftp protocol as a match criterion:
Router(config)# class-map ftp
Router(config-cmap)# match protocol ftp
Related Commands
match protocol (NBAR)
To configure Network-Based Application Recognition (NBAR) to match traffic by a protocol type that is known to NBAR, use the match protocol command in class map configuration mode. To disable NBAR from matching traffic by a known protocol type, use the no form of this command.
match protocol protocol-name [variable-field-name value]
no match protocol protocol-name [variable-field-name value]
Syntax Description
protocol-name |
Particular protocol type that is known to NBAR. These known protocol types can be used to match traffic. For a list of protocol types that are known to NBAR, see Table 11 in "Usage Guidelines." |
variable-field-name |
(Optional and usable only with custom protocols) Predefined variable that was created when you created a custom protocol. The value for the variable-field-name argument will match the field-name variable entered when you created the custom protocol using the ip nbar custom command. |
value |
(Optional and usable only with custom protocols) Specific value in the custom payload to match. A value can be entered along with a value for the variable-field-name argument only. The value can be expressed in decimal or hexadecimal format. |
Command Default
Traffic is not matched by a protocol type that is known to NBAR.
Command Modes
Class map configuration (config-cmap)
Command History
|
|
---|---|
12.0(5)XE2 |
This command was introduced. |
12.1(1)E |
This command was integrated into Cisco IOS Release 12.1(1)E, and the variable-field-name value argument was added. |
12.1(5)T |
This command was integrated into Cisco IOS Release 12.1(5)T. |
12.1(13)T |
This command was implemented on Catalyst 6000 family switches without FlexWAN modules. |
12.2(14)S |
This command was integrated into Cisco IOS Release 12.2(14)S. |
12.2(17a)SX1 |
This command was integrated into Cisco IOS Release 12.2(17a)SX1. |
12.4(2)T |
This command was modified to include support for additional protocols, such as the BitTorrent protocol. |
12.4(4)T |
This command was modified to include support for additional protocols, such as the Skype and DirectConnect protocols. |
12.2(33)SRA |
This command was integrated into Cisco IOS Release 12.2(33)SRA. |
12.2(18)ZY |
This command was integrated into Cisco IOS Release 12.2(18)ZY. This command was modified to enhance NBAR functionality on the Catalyst 6500 series switch that is equipped with the Supervisor 32/programmable intelligent services accelerator (PISA) engine. |
12.2(18)ZYA |
This command was modified to integrate NBAR and Firewall Service Module (FWSM) functionality on the Catalyst 6500 series switch that is equipped with a Supervisor 32/PISA engine and to recognize additional protocols as noted in Table 11 in "Usage Guidelines." |
Cisco IOS XE Release 2.1 |
This command was integrated into Cisco IOS XE Release 2.1 and implemented on Cisco ASR 1000 Series Aggregation Services Routers. |
12.2(18)ZYA1 |
This command was modified to recognize additional protocols as noted in Table 11 in "Usage Guidelines." |
Cisco IOS XE Release 2.3 |
This command was modified to recognize additional protocols as noted in Table 11 in "Usage Guidelines." |
12.2(18)ZYA2 |
This command was modified to recognize additional protocols, such as the TelePresence protocol. |
Cisco IOS XE Release 2.5 |
This command was modified to recognize additional protocols as noted in Table 11 in "Usage Guidelines." |
12.2XN |
This command was modified to recognize additional protocols as noted in Table 11 in "Usage Guidelines." |
Usage Guidelines
Use the match protocol (NBAR) command to match protocol types that are known to NBAR. NBAR is capable of classifying the following types of protocols:
•Non-User Datagram Protocol (UDP) and non-TCP IP protocols
•TCP and UDP protocols that use statically assigned port numbers
•TCP and UDP protocols that use statically assigned port numbers but still require stateful inspection
•TCP and UDP protocols that dynamically assign port numbers and therefore require stateful inspection
Table 11 lists the NBAR-supported protocols available in Cisco IOS software, sorted by category. The table also provides information about the protocol type, the well-known port numbers (if applicable), and the syntax for entering the protocol in NBAR. The table is modified as new protocols are added or supported by different releases.
Note Table 11 includes the NBAR-supported protocols available with the 12.2(18)ZY and 12.2(18)ZYA releases. Protocols included in the 12.2(18)ZY and 12.2(18)ZYA releases are supported on the Catalyst 6500 series switch that is equipped with a Supervisor 32/PISA engine.
|
|
|
|
|
|
|
---|---|---|---|---|---|---|
Enterprise Application |
Citrix ICA |
TCP/ |
TCP: 1494, 2512, 2513, 2598 |
Citrix ICA traffic |
citrix |
12.1(2)E |
Exchange1 |
TCP |
135 |
MS-RPC for Exchange |
exchange |
12.0(5)XE2 |
|
MAPI |
TCP |
135 |
Messaging Application Programming Interface |
mapi |
12.2(18)ZYA |
|
Novadigm |
TCP/ UDP |
3460-3465 |
Novadigm Enterprise Desktop Manager (EDM) |
novadigm |
12.1(2)E |
|
Oracle |
TCP |
1525 |
Oracle |
ora-serv |
Cisco IOS XE Release 2.3 |
|
PCAnywhere |
TCP/UDP |
TCP: 5631, 65301 |
Symantic PCAnywhere |
pcanywhere |
12.0(5)XE2 |
|
SAP |
TCP |
3300-3315 (sap-pgm. pdlm) |
Application server to application server traffic (sap-pgm.pdlm) Client to application server traffic (sap-app.pdlm) Client to message server traffic (sap-msg.pdlm) |
sap |
12.1E |
|
Routing Protocol |
BGP |
TCP/ UDP |
179 |
Border Gateway Protocol |
bgp |
12.0(5)XE2 |
EGP |
IP |
8 |
Exterior Gateway Protocol |
egp |
12.0(5)XE2 |
|
EIGRP |
IP |
88 |
Enhanced Interior Gateway Routing Protocol |
eigrp |
12.0(5)XE2 |
|
OSPF |
IP |
89 |
Open Shortest Path First |
ospf |
12.3(8)T |
|
RIP |
UDP |
520 |
Routing Information Protocol |
rip |
12.0(5)XE2 |
|
Database |
CIFS |
TCP |
139, 445 |
Common Internet File System |
cifs |
12.2(18)ZYA |
MS-SQLServer |
TCP |
1433 |
Microsoft SQL Server Desktop Videoconferencing |
sqlserver |
12.0(5)XE2 |
|
SQL-exec |
TCP/UDP |
9088 |
SQL Exec |
sqlexec |
Cisco IOS XE Release 2.3 |
|
SQL*NET |
TCP/ UDP |
1521 |
SQL*NET for Oracle |
sqlnet |
12.0(5)XE2 |
|
Health |
DiCom |
TCP |
Dynamically assigned |
Digital Imaging and Communications in Medicine |
dicom |
12.2(18)ZYA |
HL7 |
TCP |
Dynamically assigned |
Health Level Seven |
hl7 |
12.2(18)ZYA |
|
Financial |
FIX |
TCP |
Dynamically assigned |
Financial Information Exchange |
fix |
12.2(18)ZYA |
Security and Tunneling |
GRE |
IP |
47 |
Generic Routing Encapsulation |
gre |
12.0(5)XE2 |
IPINIP |
IP |
4 |
IP in IP |
ipinip |
12.0(5)XE2 |
|
IPsec |
IP |
50, 51 |
IP Encapsulating Security Payload/ |
ipsec |
12.0(5)XE2 |
|
L2TP |
UDP |
1701 |
L2F/L2TP Tunnel |
l2tp |
12.0(5)XE2 |
|
PPTP |
TCP |
1723 |
Point-to-Point Tunneling Protocol for VPN |
pptp |
12.0(5)XE2 |
|
SFTP |
TCP |
990 |
Secure FTP |
secure-ftp |
12.0(5)XE2 |
|
Security and Tunneling (continued) |
SHTTP |
TCP |
443 |
Secure HTTP |
secure-http |
12.0(5)XE2 |
SIMAP |
TCP/ |
585, 993 |
Secure IMAP |
secure-imap |
12.0(5)XE2 |
|
SIRC |
TCP/ |
994 |
Secure IRC |
secure-irc |
12.0(5)XE2 |
|
SLDAP |
TCP/ |
636 |
Secure LDAP |
secure-ldap |
12.0(5)XE2 |
|
SNNTP |
TCP/ |
563 |
Secure NNTP |
secure-nntp |
12.0(5)XE2 |
|
SOCKS |
TCP |
1080 |
Firewall Security Protocol |
socks |
12.0(5)XE2 |
|
SPOP3 |
TCP/ |
995 |
Secure POP3 |
secure-pop3 |
12.0(5)XE2 |
|
Security and Tunneling (continued) |
SSH |
TCP |
22 |
Secured Shell |
ssh |
12.0(5)XE2 |
STELNET |
TCP |
992 |
Secure Telnet |
secure-telnet |
12.0(5)XE2 |
|
Network Management |
ICMP |
IP |
1 |
Internet Control Message Protocol |
icmp |
12.0(5)XE2 |
SNMP |
TCP/ |
161, 162 |
Simple Network Management Protocol |
snmp |
12.0(5)XE2 |
|
Syslog |
UDP |
514 |
System Logging Utility |
syslog |
12.0(5)XE2 |
|
Network Mail Services |
IMAP |
TCP/ |
143, 220 |
Internet Message Access Protocol |
imap |
12.0(5)XE2 |
Notes |
TCP/ |
1352 |
Lotus Notes |
notes |
12.0(5)XE2 |
|
POP3 |
TCP/ |
110 |
Post Office Protocol |
pop3 |
12.0(5)XE2 |
|
SMTP |
TCP |
25 |
Simple Mail Transfer Protocol |
smtp |
12.0(5)XE2 |
|
Directory |
DHCP/ |
UDP |
67, 68 |
Dynamic Host Configuration Protocol/Bootstrap Protocol |
dhcp |
12.0(5)XE2 |
DNS |
TCP/ |
53 |
Domain Name System |
dns |
12.0(5)XE2 |
|
Finger |
TCP |
79 |
Finger User Information Protocol |
finger |
12.0(5)XE2 |
|
Kerberos |
TCP/ |
88, 749 |
Kerberos Network Authentication Service |
kerberos |
12.0(5)XE2 |
|
LDAP |
TCP/ |
389 |
Lightweight Directory Access Protocol |
ldap |
12.0(5)XE2 |
|
Streaming Media |
CU-SeeMe |
TCP/ |
TCP: 7648, 7649 |
Desktop Video Conferencing |
cuseeme |
12.0(5)XE2 |
MGCP |
TCP/ UDP |
2427, 2428, 2727 |
Media Gateway Control Protocol |
mgcp |
12.2(18)ZYA1 |
|
Netshow |
TCP/ UDP |
Dynamically assigned |
Microsoft Netshow |
netshow |
12.0(5)XE2 |
|
RealAudio |
TCP/ UDP |
Dynamically assigned |
RealAudio Streaming Protocol |
realaudio |
12.0(5)XE2 |
|
RTSP |
TCP/ UDP |
Dynamically assigned |
Real Time Streaming Protocol |
rtsp |
12.2(18)ZYA1 |
|
StreamWorks |
UDP |
Dynamically assigned |
Xing Technology Stream Works Audio and Video |
streamwork |
12.0(5)XE2 |
|
VDOLive |
TCP/ UDP |
Static (7000) with inspection |
VDOLive Streaming Video |
vdolive |
12.0(5)XE2 |
|
YouTube2 |
TCP |
Both static (80) and dynamically assigned |
Online Video-Sharing Website |
youtube |
12.2(18)ZYA |
|
Internet |
FTP |
TCP |
Dynamically assigned |
File Transfer Protocol |
ftp |
12.0(5)XE2 |
Gopher |
TCP/ UDP |
70 |
Internet Gopher Protocol |
gopher |
12.0(5)XE2 |
|
HTTP |
TCP |
803 |
Hypertext Transfer Protocol |
http |
12.0(5)XE2 |
|
IRC |
TCP/ UDP |
194 |
Internet Relay Chat |
irc |
12.0(5)XE2 |
|
NNTP |
TCP/ UDP |
119 |
Network News Transfer Protocol |
nntp |
12.0(5)XE2 |
|
Telnet |
TCP |
23 |
Telnet Protocol |
telnet |
12.0(5)XE2 |
|
TFTP |
UDP |
Static (69) with inspection |
Trivial File Transfer Protocol |
tftp |
12.0(5)XE2 |
|
Signaling |
AppleQTC |
TCP/UDP |
458 |
Apple Quick Time |
appleqtc |
12.2(18)ZYA |
Chargen |
TCP/UDP |
19 |
Character Generator |
chargen |
12.2(18)ZYA |
|
ClearCase |
TCP/UDP |
371 |
Clear Case Protocol Software Informer |
clearcase |
12.2(18)ZYA |
|
Corba |
TCP/UDP |
683, 684 |
Corba Internet Inter-Orb Protocol (IIOP) |
corba-iiop |
12.2(18)ZYA |
|
Daytime |
TCP/UDP |
13 |
Daytime Protocol |
daytime |
12.2(18)ZYA |
|
Doom |
TCP/UDP |
666 |
Doom |
doom |
12.2(18)ZYA |
|
Echo |
TCP/UDP |
7 |
Echo Protocol |
echo |
12.2(18)ZYA |
|
IBM DB2 |
TCP/UDP |
523 |
IBM Information Management |
ibm-db2 |
12.2(18)ZYA |
|
IPX |
TCP/UDP |
213 |
Internet Packet Exchange |
server-ipx |
12.2(18)ZYA |
|
ISAKMP |
TCP/UDP |
500 |
Internet Security Association and Key Management Protocol |
isakmp |
12.2(18)ZYA |
|
Signaling (continued) |
ISI-GL |
TCP/UDP |
55 |
Interoperable Self Installation Graphics Language |
isi-gl |
12.2(18)ZYA |
KLogin |
TCP |
543 |
KLogin |
klogin |
12.2(18)ZYA |
|
KShell |
TCP |
544 |
KShell |
kshell |
12.2(18)ZYA |
|
LockD |
TCP/UDP |
4045 |
LockD |
lockd |
12.2(18)ZYA |
|
MSSQL |
TCP |
1433 |
Microsoft Structured Query Language (SQL) Server |
mssql |
Cisco IOS XE Release 2.3 |
|
RSVP |
UDP |
1698, 1699 |
Resource Reservation Protocol |
rsvp |
12.0(5)XE2 |
|
RPC |
AOL-messenger |
TCP |
5190, 443 |
AOL Instant Messenger Chat Messages |
aol-messenger |
12.2(18)ZYA |
MSN-messenger |
TCP |
1863 |
MSN Messenger Chat Messages4 |
msn-messenger |
12.2(18)ZYA |
|
NFS |
TCP/ UDP |
2049 |
Network File System |
nfs |
12.0(5)XE2 |
|
Sunrpc |
TCP/ UDP |
Dynamically assigned |
Sun Remote Procedure Call |
sunrpc |
12.0(5)XE2 |
|
Yahoo-messenger |
TCP |
5050, 5101 |
Yahoo Messenger Chat Messages |
yahoo-messenger |
12.2(18)ZYA |
|
Non-IP and LAN/ |
Microsoft-DS |
TCP/UDP |
445 |
Microsoft Directory Services |
microsoftds |
12.2(18)ZYA |
NetBIOS |
TCP/ UDP |
137, 138, 139 |
NetBIOS over IP (MS Windows) |
netbios |
12.0(5)XE2 |
|
Nickname |
TCP/UDP |
43 |
Nickname |
nickname |
12.2(18)ZYA |
|
NPP |
TCP/UDP |
92 |
Network Payment Protocol |
npp |
12.2(18)ZY |
|
Miscellaneous |
Cisco-phone5 |
UDP |
5060 |
Cisco IP Phones and PC-Based Unified Communicators |
cisco-phone |
12.2(18)ZYA |
NTP |
TCP/ UDP |
123 |
Network Time Protocol |
ntp |
12.0(5)XE2 |
|
ORASRV |
TCP |
1525 |
ORASRV |
ora-srv |
12.2(18)ZYA |
|
Printer |
TCP/ UDP |
515 |
Printer |
printer |
12.1(2)E |
|
r-commands |
TCP |
Dynamically assigned |
rsh, rlogin, rexec |
rcmd |
12.0(5)XE2 |
|
Miscellaneous (continued) |
RCP |
TCP/UDP |
469 |
Rate Control Protocol |
rcp |
12.2(18)ZYA |
RTelnet |
TCP/UDP |
107 |
Remote Telnet Service |
rtelnet |
12.2(18)ZYA |
|
SQLExec |
TCP/UDP |
9088 |
SQL Exec |
sqlexec |
12.2(18)ZYA |
|
Systat |
TCP/UDP |
11 |
System Statistics |
systat |
12.2(18)ZYA |
|
TACACS |
TCP/UDP |
49, 65 |
Terminal Access Controller Access Control System |
tacacs |
12.2(18)ZYA |
|
Time |
TCP/UDP |
37 |
Time |
time |
12.2(18)ZYA |
|
VNC |
UDP |
5800, 5900, 5901 |
Virtual Network Computing |
vnc |
12.2(18)ZYA |
|
Whois++ |
TCP/UDP |
63 |
Whois++ |
whois++ |
12.2(18)ZYA |
|
XDMCP |
UDP |
177 |
X Display Manager Control Protocol |
xdmcp |
12.2(18)ZYA |
|
X Windows |
TCP |
6000-6003 |
X11, X Windows |
xwindows |
12.0(5)XE2 |
|
Voice |
Google Talk VoIP |
TCP/UDP |
Dynamically assigned |
Google Talk VoIP Protocol |
gtalk-voip |
12.2XN |
H.323 |
TCP |
Dynamically assigned |
H.323 Teleconferencing Protocol |
h323 |
12.3(7)T |
|
MSN VoIP |
UDP |
Dynamically assigned |
MSN Messenger Protocol |
msn-voip |
12.4(24)T |
|
RTCP |
TCP/ UDP |
Dynamically assigned |
Real-Time Control Protocol |
rtcp |
12.1E |
|
RTP |
TCP/ UDP |
Dynamically assigned |
Real-Time Transport Protocol Payload Classification |
rtp |
12.2(8)T |
|
SCCP/Skinny |
TCP |
2000, 2001, 2002 |
Skinny Client Control Protocol |
skinny |
12.2(18)ZYA1 |
|
SIP |
TCP/UPD |
5060 |
Session Initiation Protocol |
sip |
12.3(7)T |
|
STUN |
UDP |
Dynamically assigned |
Simple Traversal of UDP through NAT (STUN) |
stun-nat |
12.4(24)T |
|
Skype6 |
TCP/UDP |
Dynamically assigned |
Peer-to-Peer VoIP Client Software |
skype |
12.2(18)ZYA1 |
|
TelePresence |
TCP/UDP |
Dynamically assigned |
Cisco TelePresence System |
telepresence-media telepresence-control |
12.2(18)ZYA2 |
|
Yahoo VoIP |
TCP/UDP |
Dynamically assigned |
Yahoo Messenger VoIP Protocol |
yahoo-voip |
12.4(24)T |
|
Peer-to-Peer File-Sharing Applications |
BitTorrent |
TCP |
Dynamically Assigned or |
BitTorrent File Transfer Traffic |
bittorrent |
12.2(18)ZYA1 |
Direct Connect |
TCP/ UDP |
411 |
Direct Connect File Transfer Traffic |
directconnect |
12.2(18)ZYA1 |
|
eDonkey/eMule |
TCP |
4662 |
eDonkey File-Sharing Application eMule traffic is also classified as eDonkey traffic in NBAR. |
edonkey |
12.2(18)ZYA1 |
|
FastTrack |
N/A |
Dynamically Assigned |
FastTrack |
fasttrack |
12.1(12c)E |
|
Gnutella |
TCP |
Dynamically Assigned |
Gnutella |
gnutella |
12.1(12c)E |
|
KaZaA |
TCP/ UPD |
Dynamically Assigned |
KaZaA Note that earlier KaZaA version 1 traffic can be classified using FastTrack. |
kazaa2 |
12.2(8)T |
|
WinMX |
TCP |
6699 |
WinMX Traffic |
winmx |
12.2(18)ZYA1 |
1 For Release 12.2(18)ZYA and Cisco IOS XE Release 2.5 Cisco supports Exchange 03 and 07 only. MS client access is recognized, but web client access is not recognized. 2 For Release 12.2(18)ZYA, access to YouTube via HTTP only is recognized. 3 In Release 12.3(4)T, the NBAR Extended Inspection for HTTP Traffic feature was introduced. This feature allows NBAR to scan TCP ports that are not well known and to identify HTTP traffic that is traversing these ports. For Cisco IOS XE Release 2.1, classification of HTTP traffic by URL or hostname is not supported. Cisco IOS XE Release 2.5 supports classification of HTTP traffic by URL or hostname. 4 For Release 12.2(18)ZYA, messages ("chat") from Yahoo, MSN, and AOL are recognized. Messages from Lotus and SameTime are not recognized. Video and voice from Instant Messaging are not recognized. 5 For Release 12.2(18)ZYA, only SIP and Skinny telephone connections (cisco-phone traffic connections) are recognized. H.323 telephone connections are not recognized. 6 Skype was introduced in Cisco IOS Release 12.4(4)T. As a result of this introduction, Skype is native in (included with) the Cisco IOS software and uses the NBAR infrastructure new to Cisco IOS Release 12.4(4)T. Cisco software supports Skype 1.0, 2.5, and 3.0. For Cisco IOS XE Release 2.1, Skype is supported in the TCP type only. Note that certain hardware platforms do not support Skype. For instance, Skype is not supported on the Catalyst 6500 series switch that is equipped with a Supervisor/PISA engine. Cisco IOS XE Release 2.5 supports Skype in the TCP and UDP type. |
Custom Protocols Created with the ip nbar custom Command
The variable-field-name argument is used in conjunction with the variable field-name field-length options that are entered when you create a custom protocol using the ip nbar custom command. The variable option allows NBAR to match traffic on the basis of a specific value of a custom protocol. For instance, if ip nbar custom ftdd 125 variable scid 2 tcp range 5001 5005 is entered to create a custom protocol, and then a class map using the match protocol ftdd scid 804 is created, the created class map will match all traffic that has the value "804" at byte 125 entering or leaving TCP ports 5001 to 5000.
Up to 24 variable values per custom protocol can be expressed in class maps. For instance, in the following configuration, 4 variables are used and 20 more "scid" values could be used.
Router(config)# ip nbar custom ftdd field scid 125 variable 1 tcp range 5001 5005
Router(config)# class-map active-craft
Router(config-cmap)# match protocol ftdd scid 0x15
Router(config-cmap)# match protocol ftdd scid 0x21
Router(config)# class-map passive-craft
Router(config-cmap)# match protocol ftdd scid 0x11
Router(config-cmap)# match protocol ftdd scid 0x22
match protocol Command Restrictions (Catalyst 6500 Series Switches Only)
Policy maps contain traffic classes. Traffic classes contain one or more match commands that can be used to match packets (and organize them into groups) on the basis of a protocol type or application. You can create as many traffic classes as needed.
Cisco IOS Release 12.2(18)ZY includes software intended for use on the Catalyst 6500 series switch that is equipped with a Supervisor 32/PISA engine. For this release and platform, note the following restrictions for using policy maps and match protocol commands:
•A single traffic class can be configured to match a maximum of eight protocols or applications.
•Multiple traffic classes can be configured to match a cumulative maximum of 95 protocols or applications.
Examples
The following example shows how to configure NBAR to match FTP traffic:
Router(config-cmap)# match protocol ftp
The following example shows how to create a custom protocol called ftdd by using a variable. A class map matching this custom protocol based on the variable is also created. In this example, class map matchscidinftdd will match all traffic that has the value "804" at byte 125 entering or leaving TCP ports 5001 to 5005. The variable scid is 2 bytes in length:
Router(config)# ip nbar custom ftdd 125 variable scid 2 tcp range 5001 5005
Router(config)# class-map matchscidinftdd
Router(config-cmap)# match protocol ftdd scid 804
The following example shows that the command can also be written using hexadecimal values in the class map:
Router(config)#
ip nbar custom ftdd 125 variable scid 2 tcp range 5001 5005
Router(config)# class-map matchscidinftdd
Router(config-cmap)# match protocol ftdd scid 0x324
The following example shows how to use the variable keyword while you create a custom protocol, and class maps are configured to classify different values within the variable field into different traffic classes. Specifically, in the example below, variable scid values 0x15, 0x21, and 0x27 will be classified into class map active-craft, while scid values 0x11, 0x22, and 0x25 will be classified into class map passive-craft:
Router(config)# ip nbar custom ftdd field scid 125 variable 1 tcp range 5001 5005
Router(config)# class-map active-craft
Router(config-cmap)# match protocol ftdd scid 0x15
Router(config-cmap)# match protocol ftdd scid 0x21
Router(config-cmap)# match protocol ftdd scid 0x27
Router(config)# class-map passive-craft
Router(config-cmap)# match protocol ftdd scid 0x11
Router(config-cmap)# match protocol ftdd scid 0x22
Router(config-cmap)# match protocol ftdd scid 0x25
Related Commands
match protocol citrix
To configure network-based application recognition (NBAR) to match Citrix traffic, use the match protocol citrix command in class-map configuration mode. To disable NBAR from matching Citrix traffic, use the no form of this command.
match protocol citrix [app application-name-string] [ica-tag ica-tag-value]
no match protocol citrix [app application-name-string] [ica-tag ica-tag-value]
Syntax Description
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
Entering the match protocol citrix command without the app keyword establishes all Citrix traffic as successful match criteria.
Entering the match protocol citrix command with the ica-tag keyword prioritizes Citrix ICA traffic. The priority tag values can be a number from 0 to 3, with 0 having the highest priority and 3 the lowest.
Examples
The following example shows how to configure NBAR to match all Citrix traffic:
match protocol citrix
The following example shows how to configure NBAR to match Citrix traffic with the application name of packet1:
match protocol citrix app packet1
The following example shows how to configure NBAR to give Citrix ICA traffic a priority of 1:
match protocol citrix ica-tag-1
match protocol fasttrack
To configure network-based application recognition (NBAR) to match FastTrack peer-to-peer traffic, use the match protocol fasttrack command in class-map configuration mode. To disable NBAR from matching FastTrack traffic, use the no form of this command.
match protocol fasttrack file-transfer "regular-expression"
no match protocol fasttrack file-transfer "regular-expression"
Syntax Description
Command Default
NBAR is not configured to match FastTrack peer-to-peer traffic.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
To specify that all FastTrack traffic be identified by the traffic class, use "*" as the regular expression.
Applications that use FastTrack include KaZaA, Grokster, and Morpheus (although newer versions of Morpheus use Gnutella).
Examples
The following example shows how to configure NBAR to match all FastTrack traffic:
match protocol fasttrack file-transfer "*"
The following example shows how to classify all FastTrack files that have the ".mpeg" extension into class map nbar:
class-map match-all nbar
match protocol fasttrack file-transfer "*.mpeg"
The following example shows how to configure NBAR to match FastTrack traffic that contains the string "cisco":
match protocol fasttrack file-transfer "*cisco*"
match protocol gnutella
To configure network-based application recognition (NBAR) to match Gnutella peer-to-peer traffic, use the match protocol gnutella command in class-map configuration mode. To disable NBAR from matching Gnutella traffic, use the no form of this command.
match protocol gnutella file-transfer "regular-expression"
no match protocol gnutella file-transfer "regular-expression"
Syntax Description
Command Default
No behavior or values are predefined.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
To specify that all Gnutella traffic be identified by the traffic class, use "*" as the regular expression.
Applications that use Gnutella include the following:
•BearShare
•Gnewtellium
•Gnucleus
•Gtk-Gnutella
•JTella
•LimeWire
•Morpheus
•Mutella
•Phex
•Qtella
•Swapper
•XoloX
•XCache
Examples
The following example shows how to configure NBAR to match all Gnutella traffic:
match protocol gnutella file-transfer "*"
The following example shows how to classify all Gnutella files that have the ".mpeg" extension into class map nbar:
class-map match-all nbar
match protocol gnutella file-transfer "*.mpeg"
The following example shows how to classify only Gnutella traffic that contains the characters "cisco":
class-map match-all nbar
match protocol gnutella file-transfer "*cisco*"
match protocol http
To configure Network-Based Application Recognition (NBAR) to match HTTP traffic by URL, host, Multipurpose Internet Mail Extension (MIME) type, or fields in HTTP packet headers, use the match protocol http command in class-map configuration mode. To disable NBAR from matching HTTP traffic by URL, host, or MIME type, or fields in HTTP packet headers, use the no form of this command.
Cisco IOS Release 12.4(24)T and Earlier Releases, Cisco IOS Release 12.2(33)SRA, Cisco IOS Release 12.2(14)S and Later Releases
match protocol http [url url-string | host hostname-string | mime MIME-type | c-header-field c-header-field-string | s-header-field s-header-field-string]
no match protocol http [url url-string | host hostname-string | mime MIME-type | c-header-field c-header-field-string | s-header-field s-header-field-string]
Cisco IOS Release 15.1(2)T, Cisco IOS XE Release 3.1S and Later Releases and Catalyst 6500 Series Switch Equipped with the Supervisor 32/PISA Engine
match protocol http [content-encoding content-encoding-name-string | from from-address-string | host hostname-string | location location-name-string | mime MIME-type | referer referer-address-string | server server-software-name-string | url url-string | user-agent user-agent-software-name-string]
no match protocol http [content-encoding content-encoding-name-string | from from-address-string | host hostname-string | location location-name-string | mime
MIME-type | referer referer-address-string | server server-software-name-string | url url-string | user-agent user-agent-software-name-string]
Syntax Description
Command Default
NBAR does not match HTTP traffic by URL, host, MIME type, or fields in HTTP packet headers.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
Classification of HTTP Traffic by Host, URL, or MIME
In Cisco IOS Release 12.3(4)T, the NBAR Extended Inspection for HTTP Traffic feature was introduced. This feature allows NBAR to scan TCP ports that are not well-known and that identify HTTP traffic traversing these ports. This feature is enabled automatically when a service policy containing the match protocol http command is attached to an interface.
When matching by MIME type, the MIME type can contain any user-specified text string. See the following web page for the IANA-registered MIME types:
http://www.iana.org/assignments/media-types/
When matching by MIME type, NBAR matches a packet containing the MIME type and all subsequent packets until the next HTTP transaction.
When matching by host, NBAR performs a regular expression match on the host field contents inside the HTTP packet and classifies all packets from that host.
HTTP client request matching supports GET, PUT, HEAD, POST, DELETE, OPTIONS, CONNECT, and TRACE. When matching by URL, NBAR recognizes the HTTP packets containing the URL and then matches all packets that are part of the HTTP request. When specifying a URL for classification, include only the portion of the URL that follows the www.hostname.domain in the match statement. For example, for the URL www.cisco.com/latest/whatsnew.html, include only /latest/whatsnew.html with the match statement (for instance, match protocol http url /latest/whatsnew.html).
Note For Cisco IOS Release 12.2(18)ZY2 (and later releases) on the Cisco Catalyst 6500 series switch that is equipped with a Supervisor 32/PISA, up to 56 parameters or subclassifications per protocol per router can be specified with the match protocol http command. These parameters or subclassifications can be a combination of any of the available match choices, such as host matches, MIME matches, server matches, and URL matches. For other Cisco IOS releases and platforms, the maximum is 24 parameters or subclassifications per protocol per router.
To match the www.anydomain.com portion, use the hostname matching feature. The parameter specification strings can take the form of a regular expression with the following options.
Classification of HTTP Header Fields
In Cisco IOS Release 12.3(11)T, NBAR introduced expanded ability for users to classify HTTP traffic using information in the HTTP Header Fields.
HTTP works using a client/server model: HTTP clients open connections by sending a request message to an HTTP server. The HTTP server then returns a response message to the HTTP client (this response message is typically the resource requested in the request message from the HTTP client). After delivering the response, the HTTP server closes the connection and the transaction is complete.
HTTP header fields are used to provide information about HTTP request and response messages. HTTP has numerous header fields. For additional information on HTTP headers, see section 14 of RFC 2616: Hypertext Transfer Protocol—HTTP/1.1. This document can be read at the following URL:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
For request messages (client to server), the following HTTP header fields can be identified by using NBAR:
•User-Agent
•Referer
For response messages (server to client), the following header fields can be identified by using NBAR:
•Server
•Location
•Content-Encoding
•Content-Base
Note Use of the Content-Base field has not been implemented by the HTTP community. (See RFC 2616 for details.) Therefore, the Content-Base field is not identified by NBAR on the Catalyst 6500 series switch that is equipped with a Supervisor 32/PISA engine.
Within NBAR, the match protocol http c-header-field command is used to specify request messages (the "c" in the c-header-field portion of the command is for client). The match protocol http s-header-field command is used to specify response messages (the "s" in the s-header-field portion of the command is for server).
It is important to note that combinations of URL, host, MIME type, and HTTP headers can be used during NBAR configuration. These combinations provide customers with more flexibility to classify specific HTTP traffic based on their network requirements.
Note For Cisco IOS Release 12.2(18)ZY2 and later releases on the Cisco Catalyst 6500 series switch that is equipped with a Supervisor 32/PISA, and for Cisco IOS Release 15.1(2)T and later releases, the c-header-field and s-header-field keywords and associated arguments in the match protocol http command are not available.
Examples
The following example shows how to classify, within class map class1, HTTP packets based on any URL containing the string whatsnew/latest followed by zero or more characters:
class-map class1
match protocol http url whatsnew/latest*
The following example shows how to classify, within class map class2, packets based on any hostname containing the string cisco followed by zero or more characters:
class-map class2
match protocol http host cisco*
The following example shows how to classify, within class map class3, packets based on the JPEG MIME type:
class-map class3
match protocol http mime "*jpeg"
In the following example, any response message that contains "gzip" in the Content-Base (if available), Content-Encoding, Location, or Server header fields will be classified by NBAR. Typically, the term "gzip" would be found in the Content-Encoding header field of the response message:
class-map class4
match protocol http s-header-field "gzip"
The following example shows how to combine HTTP header fields with a URL to classify traffic. In this example, traffic with a User-Agent field of "CERN-LineMode/3.0" and a Server field of "CERN/3.0", along with URL "www.cisco.com/routers", will be classified using NBAR:
class-map match-all c-http match protocol http c-header-field "CERN-LineMode/3.0" match protocol http s-header-field "CERN/3.0" match protocol http url "www.cisco.com/routers"
Catalyst 6500 Series Router Equipped with a Supervisor 32/PISA Engine Example
In the following two examples, the individual keywords and associated arguments are used to specify traffic (instead of the c-header-field and the s-header-field keywords).
In the first example, the user-agent, referrer, and from keywords are specified. In the second example, the server, location, content-encoding keywords are specified:
class-map match-all test1
match protocol http user-agent Mozilla
match protocol http referrer *10.0.10.50"
match protocol http from *example.com"
class-map match-all test2
match protocol http server Apache
match protocol http location *example.com"
match protocol http content-encoding compress
match protocol http match protocol http content-base *exmaple.com"
Related Commands
|
|
---|---|
show ip nbar protocol-discovery |
Displays the statistics gathered by the NBAR Protocol Discovery feature. |
match protocol pppoe-discovery
To match and classify PPP over Ethernet (PPPoE) control packets that are sent to the control plane, use the match protocol pppoe-discovery command in class-map configuration mode. To remove this match criterion, use the no form of this command.
match protocol pppoe-discovery
no match protocol pppoe-discovery
Syntax Description
This command has no arguments or keywords.
Command Default
PPPoE control packets sent to the control plane are not matched or classified.
Command Modes
Class-map configuration (config-cmap)
Command History
|
|
---|---|
Cisco IOS XE Release 2.3 |
This command was introduced on Cisco ASR 1000 Series Routers. |
Usage Guidelines
The match protocol pppoe-discovery command is associated with control-plane-related features such as Control Plane Policing (CoPP).
When used in a class map, the match protocol pppoe-discovery command can classify either ingress PPPoE control-plane packets or egress PPPoE control-plane packets and include them in a specified traffic class. That class can then be configured in a policy map and can receive the desired quality of service (QoS) feature (such as traffic policing).
Examples
The following is an example of the match protocol pppoe-discovery command configured in a class-map called copplass-pppoe-discovery. PPPoE control-plane traffic identified as meeting the match criterion is placed in a class called coppclass-pppoe-discovery.
The coppclass-pppoe-discovery class is then configured in a policy map called copp-policy-pppoe-discovery, and the QoS traffic policing feature is applied using the police command.
Router> enable
Router# configure terminal
Router(config)# class-map match-all coppclass-pppoe-discovery
Router(config-cmap)# match protocol pppoe-discovery
Router(config-cmap)# exit
Router(config)# class-map match-all coppclass-pppoe-discovery
Router(config-cmap)# exit
Router(config)# policy-map copp-policy-pppoe-discovery
Router(config-pmap)# class coppclass-pppoe-discovery
Router(config-pmap-c)# police rate 8000 bps conform-action transmit exceed-action drop
Router(config-pmap-c)# end
Related Commands
match protocol rtp
To configure network-based application recognition (NBAR) to match Real-Time Transfer Protocol (RTP) traffic, use the match protocol rtp command in class-map configuration mode. To disable NBAR from matching RTP traffic, use the no form of this command.
match protocol rtp [audio | video | payload-type payload-string]
no match protocol rtp [audio | video | payload-type payload-string]
Syntax Description
Command Default
No match criteria are specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
Entering the match protocol rtp command without any other keywords establishes all RTP traffic as successful match criteria.
RTP is a packet format for multimedia data streams. It can be used for media-on-demand as well as interactive services such as Internet telephony. RTP consists of a data and a control part. The control part is called Real-Time Transport Control Protocol (RTCP). It is important to note that the NBAR RTP Payload Classification feature does not identify RTCP packets and that RTCP packets run on odd-numbered ports while RTP packets run on even-numbered ports.
The payload type field of an RTP packet identifies the format of the RTP payload and is represented by a number. NBAR matches RTP traffic on the basis of this field in the RTP packet. A working knowledge of RTP and RTP payload types is helpful if you want to configure NBAR to match RTP traffic. For more information about RTP and RTP payload types, refer to RFC 1889, RTP: A Transport Protocol for Real-Time Applications.
Examples
The following example shows how to configure NBAR to match all RTP traffic:
class-map class1
match protocol rtp
The following example shows how to configure NBAR to match RTP traffic with the payload-types 0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, and 64:
class-map class2
match protocol rtp payload-type "0, 1, 4-0x10, 10001b-10010b, 64"
match qos-group
To identify a specific quality of service (QoS) group value as a match criterion, use the match qos-group command in class-map configuration mode. To remove a specific QoS group value from a class map, use the no form of this command.
match qos-group qos-group-value
no match qos-group qos-group-value
Syntax Description
qos-group-value |
The exact value from 0 to 99 used to identify a QoS group value. |
Command Default
No match criterion is specified.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
The match qos-group command is used by the class map to identify a specific QoS group value marking on a packet. This command can also be used to convey the received Multiprotocol Label Switching (MPLS) experimental (EXP) field value to the output interface.
The qos-group-value argument is used as a marking only. The QoS group values have no mathematical significance. For instance, the qos-group-value of 2 is not greater than 1. The value simply indicates that a packet marked with the qos-group-value of 2 is different than a packet marked with the qos-group-value of 1. The treatment of these packets is defined by the user through the setting of QoS policies in QoS policy-map class configuration mode.
The QoS group value is local to the router, meaning that the QoS group value that is marked on a packet does not leave the router when the packet leaves the router. If you need a marking that resides in the packet, use IP precedence setting, IP differentiated services code point (DSCP) setting, or another method of packet marking.
This command can be used with the random-detect discard-class-based command.
Examples
The following example shows how to configure the service policy called "priority50" and attach service policy "priority50" to an interface. In this example, the class map called "qosgroup5" will evaluate all packets entering Fast Ethernet interface 1/0/0 for a QoS group value of 5. If the incoming packet has been marked with the QoS group value of 5, the packet will be treated with a priority level of 50.
Router(config)#
class-map qosgroup5
Router(config-cmap)#
match qos-group 5
Router(config)#
exit
Router(config)#
policy-map priority50
Router(config-pmap)#
class qosgroup5
Router(config-pmap-c)#
priority 50
Router(config-pmap-c)#
exit
Router(config-pmap)#
exit
Router(config)#
interface fastethernet1/0/0
Router(config-if)#
service-policy output priority50
Related Commands
match source-address mac
To use the source MAC address as a match criterion, use the match source-address mac command in QoS class-map configuration mode. To remove a previously specified source MAC address as a match criterion, use the no form of this command.
match source-address mac address-destination
no match source-address mac address-destination
Syntax Description
address-destination |
The source destination MAC address to be used as a match criterion. |
Command Default
No default behavior or values
Command Modes
QoS class-map configuration
Command History
Usage Guidelines
This command can be used only on an input interface with a MAC address, for example, Fast Ethernet and Ethernet interfaces.
This command cannot be used on output interfaces with no MAC address, such as serial and ATM interfaces.
Examples
The following example uses the MAC address mac 0.0.0 as a match criterion:
Router(config)# class-map matchsrcmac
Router(config-cmap)#
match source-address mac 0.0.0
Related Commands
|
|
class-map |
Creates a class map to be used for matching packets to a specified class. |
match start
To configure the match criteria for a class map on the basis of the datagram header (Layer 2 ) or the network header (Layer 3), use the match start command in class-map configuration mode. To remove the specified match criteria, use the no form of this command.
match start {l2-start | l3-start} offset number size number
{eq | neq | gt | lt | range range | regex string} {value [value2] | [string]}
no match start {l2-start | l3-start} offset number size number
{eq | neq | gt | lt | range range | regex string} {value [value2] | [string]}
Syntax Description
Defaults
No match criteria are configured.
Command Modes
Class-map configuration (config-cmap)
Command History
Usage Guidelines
To the match criteria that is to be used for flexible packet matching, you must first enter the class-map command to specify the name of the class whose match criteria you want to establish. Thereafter, you can enter one of the following commands:
•match-field (which configures the match criteria for a class map on the basis of the fields defined in the protocol header description files [PHDFs])
•match-start (which can be used if a PHDF is not loaded onto the router)
Examples
The following example shows how to configure FPM for blaster packets. The class map contains the following match criteria: TCP port 135, 4444 or UDP port 69; and pattern 0x0030 at 3 bytes from start of IP header.
load protocol disk2:ip.phdf
load protocol disk2:tcp.phdf
load protocol disk2:udp.phdf
class-map type stack match-all ip-tcp
match field ip protocol eq 0x6 next tcp
class-map type stack match-all ip-udp
match field ip protocol eq 0x11 next udp
class-map type access-control match-all blaster1
match field tcp dest-port eq 135
match start 13-start offset 3 size 2 eq 0x0030
class-map type access-control match-all blaster2
match field tcp dest-port eq 4444
match start 13-start offset 3 size 2 eq 0x0030
class-map type access-control match-all blaster3
match field udp dest-port eq 69
match start 13-start offset 3 size 2 eq 0x0030
policy-map type access-control fpm-tcp-policy
class blaster1
drop
class blaster2
drop
policy-map type access-control fpm-udp-policy
class blaster3
drop
policy-map type access-control fpm-policy
class ip-tcp
service-policy fpm-tcp-policy
class ip-udp
service-policy fpm-udp-policy
interface gigabitEthernet 0/1
service-policy type access-control input fpm-policy
Related Commands
match tag (class-map)
To specify the tag to be matched for a tag type of class map, use the match tag command in class-map configuration mode. To delete the tag, use the no form of this command.
match tag tag-name
no match tag tag-name
Syntax Description
tag-name |
Name of the tag. |
Command Default
No match tags are defined.
Command Modes
Class-map configuration (config-cmap)
Command History
|
|
---|---|
12.4(6)T |
This command was introduced. |
Usage Guidelines
The access control server (ACS) sends the tag attribute to the network access device (NAD) using the Cisco attribute-value (AV) pair. (The tag attribute can also be sent to the NAD using the IETF attribute 88.)
Examples
The following example shows that the tag to be matched is named "healthy":
Router(config)# class-map type tag healthy_class
Router(config-cmap)# match tag healthy
Router(config-cmap)# end
Related Commands
|
|
---|---|
class-map |
Creates a class map to be used for matching packets to a specified class. |
match vlan (QoS)
To match and classify traffic on the basis of the virtual local-area network (VLAN) identification number, use the match vlan command in class-map configuration mode. To remove a previously specified VLAN identification number as a match criterion, use the no form of this command.
match vlan vlan-id-number
no match vlan vlan-id-number
Syntax Description
vlan-id-number |
VLAN identification number, numbers, or range of numbers. Valid VLAN identification numbers must be in the range of 1 to 4095. |
Command Default
Traffic is not matched on the basis of the VLAN identification number.
Command Modes
Class-map configuration (config-cmap)
Command History
|
|
---|---|
12.2(31)SB2 |
This command was introduced for use on Cisco 10000 series routers only. |
Usage Guidelines
Specifying VLAN Identification Numbers
You can specify a single VLAN identification number, multiple VLAN identification numbers separated by spaces (for example, 2 5 7), or a range of VLAN identification numbers separated by a hyphen (for example, 25-35).
Support Restrictions
The following restrictions apply to the match vlan command:
•The match vlan command is supported for IEEE 802.1q and Inter-Switch Link (ISL) VLAN encapsulations only.
•As of Cisco IOS Release 12.2(31)SB2, the match vlan command is supported on Cisco 10000 series routers only.
Examples
In the following sample configuration, the match vlan command is enabled to classify and match traffic on the basis of a range of VLAN identification numbers. Packets with VLAN identification numbers in the range of 25 to 50 are placed in the class called class1.
Router> enable
Router# configure terminal
Router(config)# class-map class1
Router(config-cmap)# match vlan 25-50
Router(config-cmap)# end
Note Typically, the next step would be to configure class1 in a policy map, enable a quality of service (QoS) feature (for example, class-based weighted fair queueing [CBWFQ]) in the policy map, and attach the policy map to an interface. To configure a policy map, use the policy-map command. To enable CBWFQ, use the bandwidth command (or use the command for the QoS feature that you want to enable). To attach the policy map to an interface, use the service-policy command. For more information about classifying network traffic on the basis of a match criterion, see the "Classification" part of the Cisco IOS Quality of Service Solutions Configuration Guide, Release 12.4T.
Related Commands
match vlan inner
To configure a class map to match the innermost VLAN ID in an 802.1q tagged frame, use the match vlan inner command in ATM interface configuration mode. To remove matching on the innermost VLAN ID of an 802.1q tagged frame, use the no form of this command.
match vlan inner vlan-ids
no match vlan inner vlan-ids
Syntax Description
Command Default
Packets are not matched on the basis of incoming dot1q VLAN inner IDs.
Command Modes
Class map configuration (config-cmap)
Command History
|
|
---|---|
12.2(33)SRA |
This command was integrated into Cisco IOS Release 12.2(33)SRA. |
12.2(18)SXF |
This command was implemented on Cisco 7600 series routers. |
Examples
The following example shows how to create a class map that matches packets with a VLAN IDs of 100 to 300.
Router(config)# class-map match-all vlan100
Router(config-cmap)# match vlan inner 100
Router(config-cmap)# exit
Router(config)# class-map match-all vlan200
Router(config-cmap)# match vlan inner 200
Router(config-cmap)# exit
Router(config)# class-map match-all vlan300
Router(config-cmap)# match vlan inner 300
Related Commands
maximum (local policy)
To set the limits for Resource Reservation Protocol (RSVP) resources, use the maximum command in local policy configuration mode. To delete the limits, use the no form of this command.
maximum [bandwidth [group | single] bandwidth | senders maximum-senders]
no maximum [bandwidth [group | single] | senders]
Syntax Description
Command Default
No maximum bandwidth limit is set and no RSVP senders are configured.
Command Modes
Local policy configuration (config-rsvp-local-if-policy)
Command History
Usage Guidelines
As part of the application ID enhancement, the maximum bandwidth command applies to RESV messages. This change has the following benefits:
•Allows the local policy bandwidth limit to be used by RSVP's admission control process for both shared and nonshared reservations. Releases that performed group bandwidth checks on PATH messages could not account for bandwidth sharing and, as a result, you had to account for sharing by creating a larger maximum group bandwidth for the policy.
•Allows a local policy to trigger preemption during the admission control function if there is insufficient policy bandwidth to meet the needs of an incoming RESV message.
Examples
The following example shows how to specify the maximum bandwidth for a group of reservations and for a single reservation, respectively:
Router> enable
Router# configure terminal
Router(config)# interface fastethernet 1/0
Router(config-if)# ip rsvp policy local identity video
Router(config-rsvp-local-policy)# maximum bandwidth group 500
Router(config-rsvp-local-policy)# maximum bandwidth single 50
Related Commands
|
|
---|---|
ip rsvp policy local |
Determines how to perform authorization on RSVP requests. |
maximum bandwidth ingress
To configure the bandwidth parameters for the ingress policy pool, use the maximum bandwidth ingress command in local policy configuration mode or local policy interface configuration mode. To disable the bandwidth configuration for the ingress policy pool, use the no form of this command.
Command Syntax in Local Policy Configuration Mode
maximum bandwidth ingress {group | single} bandwidth
no maximum bandwidth ingress {group | single}
Command Syntax in Local Policy Interface Configuration Mode
maximum bandwidth ingress {group bandwidth | percent {group | single} percent | single bandwidth}
no maximum bandwidth ingress {group | percent {group | single} | single}
Syntax Description
Command Default
RSVP is disabled by default; therefore, maximum bandwidth limit is not set.
Command Modes
Local policy configuration (config-rsvp-local-policy)
Local policy interface configuration (config-rsvp-local-if-policy)
Command History
|
|
---|---|
15.1(3)T |
This command was introduced. |
15.1(1)S |
This command was integrated into Cisco IOS Release 15.1(1)S. |
Usage Guidelines
You can use the maximum bandwidth ingress command to configure the maximum bandwidth for a given policy. You can also configure a percentage of the RSVP ingress bandwidth of an interface as the maximum bandwidth available to a group of flows, or a single flow matching the policy. The percentages of the RSVP bandwidth to be configured as the maximum bandwidth are not available for global-based RSVP policies, but are available for interface RSVP policies.
The maximum bandwidth ingress percent command is mutually exclusive with the maximum bandwidth ingress group and maximum bandwidth ingress single commands. That is, if you configure the maximum percentage of RSVP ingress bandwidth using the maximum bandwidth ingress percent command, any configurations made using the maximum bandwidth ingress group and maximum bandwidth ingress single commands are removed.
Examples
The following example shows how to configure the maximum ingress bandwidth for a group of reservations and for a single reservation respectively, in a global-based RSVP policy:
Router> enable
Router# configure terminal
Router(config)# ip rsvp policy local identity rsvp-video
Router(config-rsvp-local-policy)# maximum bandwidth ingress group 200
Router(config-rsvp-local-policy)# maximum bandwidth ingress single 100
The following example shows how to configure the maximum percentage of RSVP ingress bandwidth of an interface for a group of reservations and for a single reservation, respectively:
Router> enable
Router# configure terminal
Router(config)# interface tunnel 0
Router(config-if)# ip rsvp policy local identity rsvp-video
Router(config-rsvp-local-if-policy)# maximum bandwidth ingress percent group 50
Router(config-rsvp-local-if-policy)# maximum bandwidth ingress single 50
Related Commands
|
|
---|---|
show ip rsvp ingress |
Displays information about the RSVP ingress bandwidth configured on interfaces. |
maximum bandwidth percent
To configure the percentage of the Resource Reservation Protocol (RSVP) bandwidth of an interface as the maximum bandwidth available to a group of flows or a single flow, use the maximum bandiwidth percent command in local policy configuration mode. To disable this configuration, use the no form of this command.
maximum bandwidth percent {group | single} bandwidth-percentage
no maximum bandwidth percent {group | single}
Syntax Description
Command Default
RSVP is disabled by default; therefore, no percentage bandwidth is set.
Command Modes
Local policy configuration (config-rsvp-local-if-policy)
Command History
|
|
---|---|
15.1(2)T |
This command was introduced. |
Usage Guidelines
The maximum bandwidth percent command is mutually exclusive with the maximum bandwidth group and maximum bandwidth single commands. That is, if you configure the maximum percentage of RSVP using the maximum bandwidth percent command, any configurations made using the maximum bandwidth group and maximum bandwidth single commands are removed. The maximum bandwidth percent command is not present in the global RSVP policy.
This maximum percentage of RSVP bandwidth configured for a group of flows is used to do RSVP Call Admission Control (CAC) for the flows matching with the policy. The maximum bandwidth percent command allows oversubscription. That is, you can configure more than 100 percent of the RSVP bandwidth as the maximum bandwidth for group reservations or as the maximum bandwidth for a single reservation.
Examples
The following example shows how to conifgure the maximum percentage of RSVP bandwidth of an interface for a group of reservations and for a single reservation, respectively:
Router> enable
Router# configure terminal
Router(config)# interface fastethernet 1/0
Router(config-if)# ip rsvp policy local identity video
Router(config-rsvp-local-policy)# maximum bandwidth percent group 50
Router(config-rsvp-local-policy)# maximum bandwidth single 50
Related Commands
|
|
---|---|
ip rsvp policy local |
Determines how to perform authorization on RSVP requests. |
maximum (local policy) |
Sets the limits for RSVP resources. |
maximum header
To specify the maximum size of the compressed IP header, use the maximum header command in IPHC-profile configuration mode. To return the maximum size of the compressed IP header to the default size, use the no form of this command.
maximum header number-of-bytes
no maximum header
Syntax Description
number-of-bytes |
The maximum header size, in bytes. Valid entries are numbers from 20 to 168. Default is 168. |
Command Default
The maximum size of the compressed IP header is 168 bytes.
Command Modes
IPHC-profile configuration
Command History
|
|
---|---|
12.4(9)T |
This command was introduced. |
Usage Guidelines
The maximum header command allows you to define the maximum size of the IP header of a packet to be compressed. Any packet with an IP header that exceeds the maximum size is sent uncompressed.
Use the number-of-bytes argument of the maximum header command to restrict the size of the IP header to be compressed.
Intended for Use with IPHC Profiles
The maximum header command is intended for use as part of an IPHC profile. An IPHC profile is used to enable and configure header compression on your network. For more information about using IPHC profiles to configure header compression, see the "Header Compression" module and the "Configuring Header Compression Using IPHC Profiles" module of the Cisco IOS Quality of Service Solutions Configuration Guide, Release 12.4T.
Prerequisite
Before using the maximum header command, you must enable either TCP header compression or non-TCP header compression. To enable TCP header compression, use the tcp command. To enable non-TCP header compression, use the non-tcp command.
Examples
The following is an example of an IPHC profile called profile2. In this example, the maximum size of the compressed IP header is set to 75 bytes.
Router> enable
Router# configure terminal
Router(config)# iphc-profile profile2 ietf
Router(config-iphcp)# non-tcp
Router(config-iphcp)# maximum header 75
Router(config-iphcp)# end
Related Commands
|
|
---|---|
iphc-profile |
Creates an IPHC profile. |
non-tcp |
Enables non-TCP header compression within an IPHC profile. |
tcp |
Enables TCP header compression within an IPHC profile. |
max-reserved-bandwidth
Note Effective with Cisco IOS XE Release 2.6, Cisco IOS Release 15.0(1)S, and Cisco IOS Release 15.1(3)T, the max-reserved bandwidth command is hidden. Although this command is still available in Cisco IOS software, the CLI interactive Help does not display it if you attempt to view it by entering a question mark at the command line.
This command will be completely removed in a future release, which means that you will need to use the appropriate replacement command (or sequence of commands). For more information (including a list of replacement commands), see the Legacy QoS Command Deprecation feature document in the Cisco IOS XE Quality of Service Solutions Configuration Guide or the Legacy QoS Command Deprecation feature document in the Cisco IOS Quality of Service Solutions Configuration Guide.
Note Effective with Cisco IOS XE Release 3.2S, the max-reserved bandwidth command is replaced by a modular QoS CLI (MQC) command (or sequence of MQC commands). For the appropriate replacement command (or sequence of commands), see the Legacy QoS Command Deprecation feature document in the Cisco IOS XE Quality of Service Solutions Configuration Guide.
To change the percent of interface bandwidth allocated for Resource Reservation Protocol (RSVP), class-based weighted fair queueing (CBWFQ), low latency queueing (LLQ), IP RTP Priority, Frame Relay IP RTP Priority, Frame Relay PVC Interface Priority Queueing (PIPQ), or hierarchical queueing framework (HQF), use the max-reserved bandwidth command in interface configuration mode. To restore the default value, use the no form of this command.
max-reserved-bandwidth percent
no max-reserved-bandwidth
Syntax Description
percent |
Amount of interface bandwidth allocated for RSVP, CBWFQ, LLQ, IP RTP Priority, Frame Relay IP RTP Priority, Frame Relay PIPQ, and HQF. |
Command Default
75 percent on all supported platforms except the Cisco 7500 series routers, which do not have this restriction.
Command Modes
Interface configuration (config-if)
Command History
Usage Guidelines
The max-reserved-bandwidth command is not supported in Cisco IOS Release 12.2SR or in 12.2SX. It is supported in 12.4T, but only up to the 12.4(20)T release in which HQF functionality was integrated.
The sum of all bandwidth allocation on an interface should not exceed 75 percent of the available bandwidth on an interface. The remaining 25 percent of bandwidth is used for overhead, including Layer 2 overhead, control traffic, and best-effort traffic.
If you need to allocate more than 75 percent for RSVP, CBWFQ, LLQ, IP RTP Priority, Frame Relay IP RTP Priority, Frame Relay PIPQ, or HQF, you can use the max-reserved-bandwidth command. The percent argument specifies the maximum percentage of the total interface bandwidth that can be used.
If you do use the max-reserved-bandwidth command, make sure that not too much bandwidth is taken away from best-effort and control traffic.
Examples
In the following example, the policy map called policy1 is configured for three classes with a total of 8 Mbps configured bandwidth, as shown in the output from the show policy-map command:
Router# show policy-map policy1
Policy Map policy1
Weighted Fair Queueing
Class class1
Bandwidth 2500 (kbps) Max Threshold 64 (packets)
Class class2
Bandwidth 2500 (kbps) Max Threshold 64 (packets)
Class class3
Bandwidth 3000 (kbps) Max Threshold 64 (packets)
When you enter the service-policy command in an attempt to attach the policy map on a 10-Mbps Ethernet interface, an error message such as the following is produced:
I/f Ethernet1/1 class class3 requested bandwidth 3000 (kbps) Available only 2500 (kbps)
The error message is produced because the default maximum configurable bandwidth is 75 percent of the available interface bandwidth, which in this example is 7.5 Mbps. To change the maximum configurable bandwidth to 80 percent, use the max-reserved-bandwidth command in interface configuration mode, as follows:
max-reserved-bandwidth 80
service output policy1
end
To verify that the policy map was attached, enter the show policy-map interface command:
Router# show policy-map interface e1/1
Ethernet1/1 output :policy1
Weighted Fair Queueing
Class class1
Output Queue:Conversation 265
Bandwidth 2500 (kbps) Packets Matched 0 Max Threshold 64 (packets)
(discards/tail drops) 0/0
Class class2
Output Queue:Conversation 266
Bandwidth 2500 (kbps) Packets Matched 0 Max Threshold 64 (packets)
(discards/tail drops) 0/0
Class class3
Output Queue:Conversation 267
Bandwidth 3000 (kbps) Packets Matched 0 Max Threshold 64 (packets)
(discards/tail drops) 0/0
Virtual Template Configuration Example
The following example configures a strict priority queue in a virtual template configuration with CBWFQ. The max-reserved-bandwidth command changes the maximum bandwidth allocated between CBWFQ and IP RTP Priority from the default (75 percent) to 80 percent.
multilink virtual-template 1
interface virtual-template 1
ip address 172.16.1.1 255.255.255.0
no ip directed-broadcast
ip rtp priority 16384 16383 25
service-policy output policy1
ppp multilink
ppp multilink fragment-delay 20
ppp multilink interleave
max-reserved-bandwidth 80
end
interface Serial0/1
bandwidth 64
ip address 10.1.1.2 255.255.255.0
no ip directed-broadcast
encapsulation ppp
ppp multilink
end
Note To make the virtual access interface function properly, do not configure the bandwidth command on the virtual template. Configure it on the actual interface, as shown in the example.
Related Commands
mls ip pbr
To enable the multilayer switching (MLS) support for policy-routed packets, use the mls ip pbr command in global configuration mode. To disable the MLS support for policy-routed packets, use the no form of this command.
mls ip pbr [null0]
no mls ip pbr
Syntax Description
null0 |
(Optional) Enables the hardware support for the interface null0 in the route-maps. |
Command Default
MLS support for policy-routed packets is disabled.
Command Modes
Global configuration (config)
Command History
Usage Guidelines
This command is not supported on Cisco 7600 series routers that are configured with a Supervisor Engine 720.
Note Do not enable PBR and SLB on the same interface; PBR-based packets are not forwarded correctly.
When you enable the hardware-policy routing by entering the mls ip pbr command, all policy routing occurs in the hardware and is applied to all interfaces, regardless of which interface was configured for policy routing.
Use the null0 keyword when you have routed traffic only to enable the hardware support for the set interface null0 in the route maps.
Examples
This example shows how to enable the MLS support for policy-routed packets:
Router(config)#
mls ip pbr
Related Commands
|
|
---|---|
show tcam interface vlan acl |
Displays information about the interface-based TCAM. |