Install Link-Inline™ Software

Link-Inline™ Software User Guide

Platform
Napatech SmartNIC
Content Type
User Guide
Capture Software Version
Link-Inline™ Software 3.0

Set up your Linux environment and install the Napatech software.

Before you begin

Make sure that you have:
  • Enabled IOMMU and huge-page memory. See OS Preparation.
  • Installed the Napatech SmartNIC in a server. See Installing the Napatech SmartNIC.
  • Updated the SmartNIC with an appropriate FPGA image. See Updating the FPGA image.
  • Placed the Link-Inline™ Software package in the /opt/ directory. The package can be downloaded on the support portal: https://supportportal.napatech.com/ or https://www.napatech.com/downloads/.
  • A working Linux environment, with the following packages installed:
    • Linux kernel
      • 4.18 or newer for running applications in the bare-metal environment using the physical function only.
      • 5.7 or newer for running applications in the virtualized environment using virtual functions.
    • Python 2.7 or newer
    • coreutils
    • gcc 4.9 or newer
    • make (gnu)
    • numactl
    Note: Only Linux installations are supported.

About this task

This describes commands to build, install DPDK with Napatech PMD, configure the environment variable and activate the path to libraries.

Procedure

  1. Ensure that the required packages are installed.

    This is an example of the commands to install these prerequisites on CentOS Stream 8.

    dnf group install "Development Tools"
    dnf install numactl numactl-devel
    dnf install python3-pyelftools
    dnf --enablerepo=powertools install meson ninja-build libpcap-devel
    dnf install cmake ncurses-devel
  2. Extract the Napatech Link-Inline™ Software package.
    cd /opt/
    tar zxf ntinl_package-<version>-linux.tar.gz
    where:
    • version is the Link-Inline™ Software version identifier.

    This is an example command:

    tar zxf ntinl_package-3.0.0_linux.tar.gz
  3. Create a symlink to the unpacked package.
    ln -s ntinl_package-<version>-linux ntinl
  4. Compile and install DPDK.
    dnf install stow
    mkdir -p /usr/local/stow
    cd /opt/ntinl/dpdk_v<version>/dpdk_v<version>*
    ln -s ../../../examples_v<version>/examples/ examples/nt_examples
    sed -i "s/'vmdq_dcb',/'vmdq_dcb', \n\t'nt_examples\/inline_upf_demo',\
    \n\t'nt_examples\/ntmain',/" examples/meson.build
    meson setup --prefix /usr/local/stow/nt_dpdk_v<version> \
    -Dexamples=all build
    ninja -C build
    ninja -C build install
    cd /usr/local/stow/
    stow -S nt_dpdk_v<version>
    where:
    • version is the version identifier of the included DPDK package with the Napatech PMD.
    stow is used to manage installed DPDK files. nt_dpdk_v<version> should have been created inside the /usr/local/stow directory. And all the files and directories contained in the DPDK package have been symbolically linked in the /usr/local/ directory. The examples are installed in the following directory.
    /opt/ntinl/dpdk_v<version>/dpdk_v<version>-nt_<version>/build/examples
    Note: To delete a previously created symlink, use the -D option. For example:
    stow -D nt_dpdk_v<version>
  5. Compile and install Napatech tools.
    cd /opt/ntinl/tools/ntnic-tools
    export NT_DPDK_PATH=/opt/ntinl/dpdk_v<version>/dpdk_v<version>-nt_<version>/
    meson build
    ninja -C build
  6. Add /usr/local/lib and the path to the DPDK libraries to the /etc/ld.so.conf.d/dpdk.conf file.
    Note: This step applies only to some Linux distributions, such as CentOS, Fedora or RHEL where paths in /usr/local are not in the default path for the dynamic loader.
    For example:
    echo -e "/usr/local/lib64" >> /etc/ld.so.conf.d/dpdk.conf
    echo -e "/usr/local/lib64/dpdk" >> /etc/ld.so.conf.d/dpdk.conf
    
    ldconfig