Traffic Processor is a software product installed either as a container on a Cisco NCS router or in the core of an operator’s network to optimize the delivery of large traffic flows to gain visibility of user traffic flows, mitigate network congestion and increase user throughput network‑wide.
Install Traffic Processor on Cisco NCS router
Install Traffic Processor on NCS540.
Note: Before proceeding, please ensure the correct RPM matching IOS-XR flavor (eXR/Lindt) is downloaded on SCP server
Copy the Traffic Processor ‘sensor’ rpm to the router and place it on disk1.
RP/0/RP0/CPU0:R1# scp <PathToRemoteFile>/rain-ni-sensor-0.5.6-XR_25.3.1.x86_64.rpm <Username: Passowrd>@<SCPIPAddress:/misc/disk1/Verify RPM has been copied successfully.
RP/0/RP0/CPU0:R1# dir harddisk:Install the package on router.
RP/0/RP0/CPU0:CSR#appmgr package install rpm /misc/disk1/rain-ni-sensor-0.5.6-XR_25.3.1.x86_64.rpmVerify application package has been installed.
RP/0/RP0/CPU0:CSR#show appmgr packages installed Mon May 27 23:22:09.341 PDT Sno Package ---------------------------------------------------------------------- 1 rain-ni-sensor-0.5.6-XR_25.3.1.x86_64Activate the docker application.
RP/0/RP0/CPU0:CSR(config)#appmgr RP/0/RP0/CPU0:CSR(config)#application sensor RP/0/RP0/CPU0:CSR (config-application)# activate type docker source rain-ni-sensor docker-run-opts "-it --restart always --cpuset-cpus 1 --net=host -e COLLECTOR_HOST=30.0.100.100 -e COLLECTOR_PORT=24224 -e SPAN_INTERFACE=span-opanga --cap-add SYS_ADMIN --cap-add NET_ADMIN”Verify configuration has been applied.
RP/0/RP0/CPU0:CSR#sh run appmgr Mon May 27 23:47:40.378 PDT appmgr application sensor activate type docker source rain-ni-sensor docker-run-opts "-it --restart always --cpuset-cpus 1 --net=host -e COLLECTOR_HOST=30.0.100.100 -e COLLECTOR_PORT=24224 -e SPAN_INTERFACE=span-opanga --cap-add SYS_ADMIN --cap-add NET_ADMIN" # Where COLLECTOR_HOST is the IP address of the Data Platform.Verify that the application is running.
RP/0/RP0/CPU0:CSR#show appmgr application-table Mon May 27 23:49:31.343 PDT Name Type Config State Status ---------------------------------------------------------------------- merlin Docker Activated Up About a minuteRP/0/RP0/CPU0:CSR#bash docker ps Mon May 27 23:51:26.019 PDT CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c67b43b3ec2e opanga/rain-ni-sensor "/docker-entrypoint...." 3 minutes ago Up 3 minutes rain-ni-sensor
For more information on how to enable the SPAN-to-Application on the NCS, see: Interface and Hardware Component Configuration Guide for Cisco NCS 540 Series Routers, IOS XR Release 25.1.x, 25.2.x, 25.3.x - Configuring Traffic Mirroring [Cisco Network Convergence System 540 Series Routers] - Cisco
Install Traffic Processor on Standalone Server
The Management System software must be installed prior to installing the Traffic Processor.
If the Platform Packages dependencies has not yet been installed on this server, it must be run before proceeding to the next section.
Mellanox Driver
Determine the type of NICs on the server by running:
sudo lshw -c network -businfo
If server has Mellanox NICs, the OFED driver needs to be installed, download the driver installer from software.cisco.com in the Provider Connectivity Assurance User Experience section. In the case your current management interface is a Mellanox NIC. Be cautious before running this driver installer, since it can delete IP assignment and initial re-configuration via iLo or iDRAC will be needed.
sudo rpm -Uvh opanga-mellanox-installer-VERSION.x86_64.rpm
sudo /opt/mellanox/install.sh
Install Fluentd
export PRIMARY_MS_IP={Management System public IP}
sudo -E rpm -Uvh fluent-{VERSION}.x86_64.rpm
Install Dependencies and Installer
sudo rpm -Uvh n2k-dependencies-VERSION.x86_64.rpm
sudo /opt/ncss/install.sh
sudo rpm -Uvh n2k-installer-VERSION.x86_64.rpm
Required Args
Use the provided default installer args as a template to fill in the values according to the following guide.
Arg | Description | Default |
|---|---|---|
primary_ms_addr | The management system public IP. Will use localhost if not given. | |
api_token | Ensures the security of the Traffic Processor connection to the Management Server. | |
use_interface_ip_addr | Mgmt interface name to scrape the IP address from. | |
interface_conf | Define pair NICs with PCI Address for uplink and downlink. | true |
boot_conf | Define parser mode and the size of memory for ECIs, eNodeBs, subscribers and more. | true |
startup_conf | Set configuration for VPP. | true |
control_plane_cpus | Number of allocated/reserved CPUs from the available CPUs after workers are assigned. After this, the main core is assigned. Be sure to leave a core or two for the OS at minimum. | 4 |
product_home_dir | Home directory for Traffic Processor | /opt/ncss |
product_logs_dir | Directory to store the log files of Traffic Processor | /var/log/ncss |
API Token
To get the API token can be done with management system UI:
To generate the API Token:
Log into the Management System.
From Platform, navigate to Accounts and choose Users.
In the actions column of a superadmin user and select the Generate API Token option.
The API Token will automatically be downloaded into your computer as a text file. Open the file in a text editor to obtain the actual API token.
Update the api_token in the default installer args with this API token
Interface Conf
Obtain Dataplane Interface PCI Address
Run the following command to determine the PCI address of the NICs present on the system:
sudo /opt/ncss/scripts/dpdk_devbind.py -sExamine the output to determine the PCI addresses of the Uplink and Downlink interfaces.
Note the exact PCI address and direction (uplink/downlink).
Create the following section in installer args:
interface_conf: rx_tx_descriptors: 4096 forwarding_pairs: - name: MLNX100GBE1 uplink_name: p1p1 dnlink_name: p1p2 uplink_pci_addr: "0000:00:04.0" dnlink_pci_addr: "0000:00:05.0" worker_count: 16 - name: MLNX100GBE2 uplink_name: p2p1 uplink_pci_addr: "0000:85:00.0" dnlink_name: p2p2 dnlink_pci_addr: "0000:85:00.1" worker_count: 16
Name: It should correspond to something unique, human readable, and descriptive regarding the interface’s brand or type, speed (if available).
Uplink/dnlink_name: Syntax like
p1p1, p1p2andp2p1, p2p2should be used to signify the NICs and their port pairs. For convention, prefer the uplink interface to be the first physical port of a NIC’s port pair.Worker Count: According to the rule of thumb of 5 Gbps capacity per worker (e.g. 100 GbE Mellanox can do 80 Gbps of IMIX traffic forwarding so 16 workers are necessary). Be sure to not exceed the machine’s physical CPUs per NUMA since workers may only be assigned from the same NUMA as the NIC.
Optional Args
Arg | Description | |
|---|---|---|
instance_hostname | Set manually or determined dynamically on the host. | |
instance_ip_address | Manually set IP address if known and statically assigned. | |
local_conf | VPP CLI commands to be ran on boot of the process. | |
mpc_mirror | If true configures traffic processor to mirror traffic to CTP/MPC | |
disable_port_based_directionality | If true configures traffic processor to use alternate directionality determination. | |
traffic_mirror | If true configures traffic processor drop all incoming traffic. |
Run Installer
sudo /opt/ncss/setup.sh --args n2k-{host}-installer-args.yml
Important: After installing Traffic Processor, the installation manifest, specified in its installer-args as product_install_manifest (e.g., /opt/ncss/conf/installer.conf), contains the configuration of cores and huge pages. This file must never be edited or renamed, as doing so could lead to runtime conflicts between Traffic Processor and CTP and affect upgrades of either program.
© 2026 Cisco and/or its affiliates. All rights reserved.
For more information about trademarks, please visit: Cisco trademarks
For more information about legal terms, please visit: Cisco legal terms
For legal information about Accedian Skylight products, please visit: Accedian legal terms and trademarks