NBAR Protocol Pack Auto Update Deployment
Deployment Overview
To deploy Protocol Pack Auto Update in a network, set up an Auto Update server, download the Protocol Pack files for your routers, and create a configuration file customized to your needs. Then simply enable Auto Update on any number of routers within your network as described below.
Elements of Protocol Pack Auto Update
-
Protocol Pack Auto Update server:
-
Downloaded Protocol Pack installation files for routers using Auto Update
-
Configuration file (NBAR_PROTOCOL_PACK_DETAILS.json)
-
Protocol Pack Auto Update log files
-
-
Routers: One or more routers with Protocol Pack Auto Update enabled.
Deployment Steps
-
Set up a Protocol Pack Auto Update server in a location reachable by all routers using Auto Update. (Some CLI commands and output refer to this as the "source-server.")
-
On participating routers, enable Protocol Pack Auto Update.
See Enabling Protocol Pack Auto Update.
Example:
Device#configure terminal Device(config)#ip nbar protocol-pack-auto-update Device(config-pp-auto-update)#source-server tftp://10.20.300.400/NbarAutoUpdate Device(config-pp-auto-update)#exit
-
(Optional) By default, each router using Auto Update uses the settings provided in the configuration file on the Auto Update server. If required, use Protocol Pack Auto Update CLI commands on an individual router to override the default settings.
See Configuring Local Protocol Pack Auto Update Settings on a Router.
Setting Up a Server for Protocol Pack Auto Update
The Protocol Pack Auto Update server contains the configuration file that controls the feature functionality, and stores the Protocol Pack installation files. To set up the server, use the following procedure.
-
Set up a server in a network location reachable by all participating routers. Make note of the server IP address, to include it in the configuration file.
-
On the server, create the parent directory for storing the configuration file and Protocol Pack installation files.
/NbarAutoUpdate/pp_server/
-
Within the parent directory, /NbarAutoUpdate/pp_server/, create the subdirectories for storing Protocol Pack installation files, organized by platform type.
/NbarAutoUpdate/pp_server/asr /NbarAutoUpdate/pp_server/csr /NbarAutoUpdate/pp_server/isr /NbarAutoUpdate/pp_server/isr4k /NbarAutoUpdate/pp_server/other
-
Download the latest Protocol Pack installation files that will be required for the routers using Auto Update. See NBAR2 Protocol Pack Library for information about Protocol Packs, including supported platforms. Download the files using the Download Software tool.
-
Store the Protocol Pack files on the server, in subdirectories of /NbarAutoUpdate/pp_server/.
-
ASR directory – Protocol Pack files for Cisco ASR Series devices.
-
CSR directory – Protocol Pack files for Cisco CSR Cloud Services Routers.
-
ISR directory – Protocol Pack files for Cisco ISR Generation 2 (ISRG2) devices operating with Cisco IOS 15.x releases (not IOS XE).
-
ISR4K directory – Protocol Pack files for Cisco ISR4000 Series routers.
-
OTHER directory – Protocol Pack files for devices not included in more specific categories.
-
-
Create the Auto Update JSON-format configuration file, as described in Protocol Pack Auto Update Configuration File and store the file in the Auto Update parent directory:
/NbarAutoUpdate/pp_server/NBAR_PROTOCOL_PACK_DETAILS.json
Multiple Servers Option
It is strongly recommended to use a single server for the Auto Update configuration file and Protocol Pack installation files. However, it is possible to store the Protocol Pack files on a separate server. If doing this, specify the separate server location in the configuration file, where the path to Protocol Pack files is configured.
Protocol Pack Auto Update Configuration File
The Protocol Pack Auto Update configuration file is a JSON-format file, with the required filename NBAR_PROTOCOL_PACK_DETAILS.json. It is stored on the Protocol Pack Auto Update server in the Auto Update parent directory:
/NbarAutoUpdate/pp_server/NBAR_PROTOCOL_PACK_DETAILS.json
The configuration file specifies:
-
Server address
-
Locations of the downloaded Protocol Pack files
-
NBAR software version for each Protocol Pack file
-
Schedule for routers using Auto Update to check the server for updates
Protocol Pack File Locations
The configuration file provides the path for each downloaded Protocol Pack file stored on the server. Routers using Auto Update download the Protocol Pack files from these locations and install them automatically.
The location of each Protocol Pack file is specified by combining the server address, base directory, and specific file path.
-
The "protocol-pack-server" section of the configuration file provides the address and base directory.
-
The "nbar_pp_files" section provides the paths to individual Protocol Pack installation files.
tftp://10.20.200.1/NbarAutoUpdate/pp_server/
...and the Protocol Pack file location is:asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack
...then the complete path to the file is:tftp://10.20.200.1/NbarAutoUpdate/pp_server/asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack
A router using Auto Update would use this complete path to download the file from the server.
Organization of the Protocol Pack Locations
The "nbar_pp_files" section of the configuration file lists the Protocol Pack files available on the server. Subsections correspond to the directories in which Protocol Packs are stored on the Protocol Pack Auto Update server. Typical subsections include.
-
ASR – Protocol Pack files for Cisco ASR Series devices.
-
CSR – Protocol Pack files for Cisco CSR Cloud Services Routers.
-
ISR – Protocol Pack files for Cisco ISR Generation 2 (ISRG2) devices operating with Cisco IOS 15.x releases (not IOS XE).
-
ISR4K – Protocol Pack files for Cisco ISR4000 Series routers.
-
OTHER – Protocol Pack files for devices not included in more specific categories.
Example of the nbar_pp_files section of a configuration file:
"nbar_pp_files": {
"ASR": {
"23":"asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack"
},
"ISR": {
"23":"isr/pp-adv-isrg2-155-3.M2-23-19.1.0.pack"
},
"ISR4K": {
"23":"pp-adv-isr4000-155-3.Sa4-23-32.1.0.pack",
"27":"pp-adv-isr4000-163.2-27-35.0.0.pack",
"31":"pp-adv-isr4000-166.2-31-35.0.0.pack"
},
"OTHER": {
"23":"other/pp-adv-isr4000-155-3.Sa4-23-32.1.0.pack"
}
}
NBAR Software Version Specified for Each Protocol Pack File
Each Protocol Pack installation file is compatible with a specific NBAR software version. The version number typically appears in the filename of the Protocol Pack installation file. For example, the following Protocol Pack 20.0.0 installation file works with NBAR version 23:
pp-adv-asr1k-155-3.S2-23-20.0.0.pack
In the configuration file, each line that specifies a Protocol Pack installation file location also indicates the matching NBAR software version. When adding Protocol Pack installation file locations, be sure to specifiy the correct NBAR software version for the file. Example:
"23":"asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack"
Tip |
Use the show ip nbar version command on a router to display the current NBAR software version of the installed OS.
|
Same Router Type, Different Versions of NBAR2
Identical routers running different OS versions may have different versions of NBAR2 and therefore require different Protocol Pack versions—for example, two Cisco ISR 4451 routers, one operating with Cisco IOS XE 3.13 and the other with 3.16. Download the correct Protocol Pack files for both and store them on the Auto Update server.
Configuration File Parameters
The following configuration file parameters provide the default Protocol Pack Auto Update behavior. Individual routers using Auto Update may override these parameters using local CLI commands.
Parameter |
Description |
---|---|
protocol-pack-server |
(Mandatory) Location of protocol pack server. Example: tftp://10.20.200.1/NbarAutoUpdate/pp_server/ |
nbar_pp_files |
(Mandatory) Provides file locations for protocol pack files for various platforms and NBAR versions, identified by NBAR software version number. |
schedule {daily | weekly : | monthly :} [day ] {hh : hh , mm : mm } |
Schedule for the Auto Update upgrade interval. Routers using Auto Update check regularly for updates at the scheduled time.
The actual run time depends on the update-window option. Default: Daily at 00:00 |
update-window |
Maintenance window (in minutes) for NBAR protocol pack auto-update to operate within. The maintenance window is scheduled according to the time configured by the schedule parameters. Default: 60 |
clear-previous |
true: Causes unneeded Protocol Pack files to be removed after a cool-down period. false: Configures the feature to not remove any files. Default: enable |
force-upgrade |
true: New Protocol Pack updates will be applied with the force flag. false: New Protocol Pack updates will not be applied with the force flag. Default: disable |
Configuration File: Minimal Example
This example of a minimal configuration file contains only the top-level nbar_auto_update_config section, and mandatory fields.
Because no schedule is configured, routers use the default schedule of checking daily at 00:00. The example specifies one Protocol Pack file for each of four platform types.
{
"nbar_auto_update_config":{
"protocol-pack-server":"tftp://10.20.200.1/NbarAutoUpdate/pp_server/"
},
"nbar_pp_files":{
"ASR":{"23":"asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack"},
"CSR":{"23":"csr/pp-adv-csr1000v-155-3.S2-23-21.0.0.pack"},
"ISR":{"23":"isr/pp-adv-isrg2-155-3.M2-23-19.1.0.pack"},
"ISR4K":{"31":"pp-adv-isr4000-166.2-31-35.0.0.pack"}
}
}
Configuration Files: Typical Example
This example of a typical configuration file contains the top-level nbar_auto_update_config section, plus mandatory and optional fields.
-
The Protocol Pack Auto Update server address is 10.20.200.1.
-
The schedule section specifies the update schedule as weekly on Saturdays at 2:30 AM. Routers using Auto Update check at this scheduled time for any available updates.
Saturday is indicated by the weekly value of 6. The numbering system for days of the week is 0-6, where 0=Sunday and 6=Saturday.
hh and mm specify an update time of 2:30 AM .
-
In the nbar_pp_files section, the NBAR version number (for example, 23) at the beginning of a line must match the NBAR version number that appears in the Protocol Pack filename.
{
"nbar_auto_update_config": {
"protocol-pack-server": "tftp://10.20.200.1/NbarAutoUpdate/pp_server/",
"update-window":0,
"force-upgrade":true,
"clear-previous":true,
"schedule": {
"weekly": 6,
"hh": 02,
"mm": 30
},
},
"nbar_pp_files": {
"ASR": {
"23":"asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack",
},
"CSR": {
"23":"csr/pp-adv-csr1000v-155-3.S2-23-21.0.0.pack"
},
"ISR": {
"23":"isr/pp-adv-isrg2-155-3.M2-23-18.0.0.pack",
"23":"isr/pp-adv-isrg2-155-3.M2-23-19.1.0.pack"
},
"ISR4K":{
"31":"pp-adv-isr4000-166.2-31-35.0.0.pack"
}
}
}
Keeping Protocol Packs Up-to-Date
New Protocol Pack Releases
When new Protocol Pack releases become available:
-
Download the new Protocol Pack installation files for the router models in the network using Auto Update.
-
Store the Protocol Pack files in the correct directories on the server.
-
Update the configuration file to include the new Protocol Pack files.
When Upgrading a Router OS
Protocol Pack installation files typically are compatible with a specific platform type running a specific Cisco IOS release.
After upgrading the OS of a router that is using Protocol Pack Auto Update:
-
Use the show ip nbar version command to display the NBAR software version. In the following example, the NBAR software version is 23.
Device#show ip nbar version NBAR software version: 23 NBAR minimum backward compatible version: 21 Loaded Protocol Pack(s): Name: Advanced Protocol Pack Version: 14.0 Publisher: Cisco Systems Inc. NBAR Engine Version: 23 State: Active
-
If the NBAR software version has changed, check whether a more up-to-date compatible Protocol Pack is available for the release. (See the NBAR2 Protocol Library page for information about Protocol Pack release compatibility.)
-
If so, download the new Protocol Pack installation file to provide to routers using Auto Update.
-
Store the Protocol Pack file in the correct directory on the server.
-
Update the configuration file to include the new Protocol Pack file.
Ensure that the new line in the configuration file is in the correct location, and that the specified NBAR2 version number matches the version number in the Protocol Pack filename.
"23":"asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack"