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.
For example, if the address and base directory are: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. The ASR, CSR, and ISR subsections correspond to the asr, csr, and isr subdirectories where the Protocol Pack files are stored.
-
asr – Protocol Pack files for all Cisco IOS XE routers except the CSR Cloud Services Router. This includes the Cisco ISR 4000 Series routers.
-
csr – Protocol Pack files for Cisco CSR Cloud Services Routers.
-
isr – Protocol Pack files for all Cisco IOS (not IOS XE) routers.
Example of the "nbar_pp_files" section of a configuration file, showing Protocol Pack files stored in isr and asr directories:
"nbar_pp_files": {
"ISR": {
"23":"isr/pp-adv-isrg2-155-3.M2-23-19.1.0.pack"
},
"ASR": {
"23":"asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack",
"23":"asr/pp-adv-isr4000-155-3.S2-23-25.0.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.
ASR1004#show ip nbar version
NBAR software version: 23
NBAR minimum backward compatible version: 21
...
|
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 three platform types. In each case, the Protocol Pack works with NBAR software version 23, specified by the "23" before the filename in each line.
{
"nbar_auto_update_config":{
"protocol-pack-server":"tftp://10.20.200.1/NbarAutoUpdate/pp_server/"
},
"nbar_pp_files":{
"ISR":{"23":"isr/pp-adv-isrg2-155-3.M2-23-19.1.0.pack"},
"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"}
}
}
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.
-
Multiple Protocol Pack versions are provided for each platform—for example, Protocol Pack 19.1.0 and 20.0.0 for ASR platforms.
-
The Protocol Pack files are all for NBAR software version 23.
-
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 .
-
Two important issues are highlighted:
-
In the "nbar_pp_files" section, the NBAR version number (23 in the example) at the beginning of a line must match the NBAR version number that appears in the filename.
-
As described above, Protocol Pack files for Cisco ISR 4000 Series routers are stored in the asr directory because that router series operates with Cisco IOS XE.
{
"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": {
"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"
},
"ASR": {
"23":"asr/pp-adv-asr1k-155-3.S2-23-20.0.0.pack",
"23":"asr/pp-adv-isr4000-155-3.S2-23-25.0.0.pack"
},
"CSR": {
"23":["csr/pp-adv-csr1000v-155-3.S2-23-21.0.0.pack"]
},
}
}