Prerequisites for Adding Application Recognition Modules
Before adding application recognition modules (or PDLMs), read the information in the "Classifying Network Traffic Using NBAR" module.
The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
Adding application recognition modules (also known as Packet Description Language Modules [PDLMs]) is an optional process. However, adding PDLMs extends the functionality of Network-Based Application Recognition (NBAR) by enabling NBAR to recognize additional protocols on your network.
This module contains concepts and tasks for adding application recognition modules (or PDLMs) to your network.
Before adding application recognition modules (or PDLMs), read the information in the "Classifying Network Traffic Using NBAR" module.
Before adding application recognition modules (or PDLMs), you should understand the following concepts:
A PDLM is a separate file available on Cisco.com. A PDLM is used to add support for a protocol that is currently not available as part of the Cisco IOS software.
A PDLM extends the list of protocols that NBAR can recognize. PDLMs also allow NBAR to recognize new protocols without requiring you to install a new Cisco IOS image or reconfigure your router.
New PDLMs are released by Cisco only and can be loaded from flash memory. Contact your local Cisco representative to request additions or changes to the set of protocols classified by NBAR.
To view a list of currently available PDLMs, go to the following URL:
A PDLM adds new protocols to the list of protocols that NBAR supports. Before you download a new PDLM, you need to be aware of the following concepts.
A native PDLM is a PDLM that is embedded within the Cisco IOS software. You receive it automatically along with the Cisco IOS software.
A nonnative PDLM is not embedded within the Cisco IOS software. You can download it individually from Cisco.com.
There are separate version numbers associated with the NBAR software and the Cisco IOS software. These version numbers are used together to maintain the PDLM version.
PDLM version--This is the version of the PDLM (either native or nonnative).
Cisco IOS NBAR software version--This is the version of NBAR that resides with the Cisco IOS software.
Note |
Each nonnative PDLM also contains the Cisco IOS NBAR software version in which the PDLM was created. |
Both the native and nonnative PDLMs contain internal module names. These internal module names are unique and independent. They are used to indicate the protocol that the PDLM module represents (for example, BitTorrent or DirectConnect), and they are used to control the module version number (for example, module version 3).
In order for a PDLM (either native or nonnative) to be downloaded or overridden, both of the following conditions much be met:
The module version of the PDLM being downloaded must be higher than the module version currently installed.
For example, if a PDLM called BitTorrent.pdlm (with the internal module name "bittorrent") is currently at version 3, the resident PDLM (either native or nonnative) with the same internal module name ("bittorrent) is overridden as long as the module version is either 1 or 2.
The Cisco IOS NBAR software version of the PDLM must be less than or equal to the Cisco IOS NBAR software version of the Cisco IOS image.
Note |
To display the Cisco IOS NBAR software version (of the Cisco IOS image), use the show ip nbar version command. For more information about the show ip nbar version command, see the Cisco IOS Quality of Service Solutions Command Reference. |
A PDLM is used to add support for a protocol that is currently not available as part of the Cisco IOS software. A PDLM extends the functionality of NBAR by enabling NBAR to recognize additional protocols on the network.
To download (install) a PDLM, perform the following steps.
Each PDLM has specific Cisco IOS release requirements and specific restrictions that you need to consider before you download a PDLM. These requirements and restrictions, and other helpful information for installing a particular PDLM, are described in a series of PDLM readme files.
To view a list of currently available PDLMs, or to view the readme files for each PDLM, go to the following URL (Cisco login required):
http://www.cisco.com/cgi-bin/tablebuild.pl/pdlm
Note |
Use the PDLM readme files in conjunction with the information included in this module. |
Protocols introduced when you download a PDLM are commonly added to subsequent Cisco IOS releases. Support for the protocol that you would like to add via a PDLM may already be in your Cisco IOS release. Therefore, before you load a PDLM, review the list of NBAR protocols currently supported by the Cisco IOS release that you are using. To check the list of NBAR protocols supported in your Cisco IOS release, enter the match protocol ? command and view the options that appear. The options correspond to the NBAR supported protocols.
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
Step 3 |
ip nbar pdlm pdlm-name Example:
|
Extends or enhances the list of protocols recognized by NBAR through a Cisco-provided PDLM.
|
Step 4 |
end Example:
|
(Optional) Exits global configuration mode. |
After you download the PDLM, you may want to verify that the PDLM is now on your network. You may also want to check if there are earlier versions of the PDLM already on your network.
To display information about the downloaded PDLMs, perform the following steps.
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
Step 2 |
show ip nbar pdlm Example:
|
Displays the PDLM in use by NBAR. |
Step 3 |
show ip nbar version [pdlm-name ] Example:
|
Displays information about the version of the NBAR software in your Cisco IOS release or the version of an NBAR PDLM on your Cisco IOS router.
|
Step 4 |
exit Example:
|
(Optional) Exits privileged EXEC mode. |
In the following example. the Citrix PDLM is downloaded to the router from flash memory:
Router> enable
Router# configure terminal
Router(config)# ip nbar pdlm flash://citrix.pdlm
Router(config)# end
You can use the output of the show ip nbar pdlm command and the show ip nbar version command to verify information about the downloaded PDLMs on your network.
In this example of the show ip nbar pdlm command, the Citrix PDLM has been loaded from flash memory:
Router# show ip nbar pdlm
The following PDLMs have been loaded:
flash://citrix.pdlm
The following is sample output from the show ip nbar version command:
Router# show ip nbar version
NBAR software version: 3
1 base Mv: 2
2 ftp Mv: 2
3 http Mv: 7, Nv: 3; slot1:http_vers.pdlm
4 static-port Mv: 6
5 tftp Mv: 1
6 exchange Mv: 1
7 vdolive Mv: 1
8 sqlnet Mv: 1
9 rcmd Mv: 1
10 netshow Mv: 1
11 sunrpc Mv: 2
12 streamwork Mv: 1
13 citrix Mv: 5
14 napster Mv: 2
15 fasttrack Mv: 2
16 gnutella Mv: 1
17 kazaa Mv: 6, Nv: 3; slot1:kazaa2_vers.pdlm
18 custom-protocols Mv: 1
19 rtsp Mv: 1
20 rtp Mv: 2
21 mgcp Mv: 1
22 skinny Mv: 1
23 h323 Mv: 1
24 sip Mv: 1
25 rtcp Mv: 1
The table below describes the fields shown in the display.
Field |
Description |
---|---|
NBAR software version |
NBAR software version that is running in the current Cisco IOS software. In this particular example, version 3 is shown. |
Mv |
Resident Module Version. The Resident Module Version is the version of the NBAR-supported PDLM protocol and, therefore, varies by protocol. The Resident Module Version of TFTP, for example, is 1. |
Nv |
Minimum version of the NBAR software that is required to load a nonnative PDLM. This number is available only for nonnative PDLMs that were loaded onto the router, such as the Kazaa PDLM (protocol 17); in that case, the Nv version is 3. |
To classify network traffic on the basis of a custom protocol, see the "Creating a Custom Protocol" module.
The following sections provide references related to adding application recognition modules.
Related Topic |
Document Title |
---|---|
QoS commands: complete command syntax, command modes, command history, defaults, usage guidelines, and examples |
Cisco IOS Quality of Service Solutions Command Reference |
Concepts and information about NBAR |
"Classifying Network Traffic Using NBAR" module |
Information about enabling Protocol Discovery |
"Enabling Protocol Discovery" module |
Configuring NBAR using the MQC |
"Configuring NBAR Using the MQC" module |
Creating a custom protocol |
"Creating a Custom Protocol" module |
Description |
Link |
---|---|
The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies. To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds. Access to most tools on the Cisco Support website requires a Cisco.com user ID and password. |
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Feature Name |
Releases |
Feature Information |
---|---|---|
QoS: DirectConnect PDLM |
12.4(4)T |
Provides support for the DirectConnect protocol and PDLM. The DirectConnect protocol can now be recognized when using the Modular Quality of Service (QoS) Command-Line Interface (CLI) (MQC) to classify traffic. The following sections provide information about the QoS: DirectConnect PDLM feature: |
NBAR - BitTorrent PDLM |
12.4(2)T |
Provides support for the BitTorrent PDLM and protocol. The BitTorrent protocol can now be recognized when using the MQC to classify traffic. The following sections provide information about the NBAR - BitTorrent PDLM feature: |
NBAR PDLM Versioning |
12.3(4)T |
Enables the ability to verify the Cisco IOS and NBAR PDLM versions for ensuring software compatibility. The following sections provide information about the NBAR PDLM Versioning feature:
|