7. DPDK-based vRouter on virtual function (VF)

7.1. Description

This guide describes how to run DPDK-based vRouter on virtual functions (VF). DPDK on VF depends on Enable SR-IOV and DPDK-based vRouter features. This feature shares a physical interface for DPDK and SR-IOV usage.

7.2. Prerequisites

  • Installed Fuel 9.1
  • Installed Fuel Contrail Plugin Installation Guide
  • Environment must be created with “KVM” for compute virtualization and “Contrail” for networking
  • Network card must support DPDK. List of compatible adapters can be found on DPDK website
  • Network card must support SRIOV.

7.3. How to enable DPDK on VF

  1. Enable DPDK feature DPDK-based vRouter.

  2. Enable DPDK on VF in Fuel UI settings:

    _images/enable_dpdk_on_vf.png
  3. Assign Compute, DPDK, and DPDK-on-VF roles to the host where you want to enable DPDK on VF feature:

    _images/compute_dpdk_sriov_roles.png
  4. Add intel_iommu=on iommu=pt to kernel parameters:

    _images/kernel_params.png
  5. Deploy environment

If DPDK on VF is enabled in plugin settings, it will be deployed on computes with DPDK and DPDK-on-VF roles. During deploy following configurations will be made on compute nodes with DPDK and SR-IOV roles:

  1. Virtual functions will be allocated on private interface.
  2. First VF will be used for DPDK-based vRouter.
  3. Rest of the VFs will be added to pci_passthrough_whitelist setting in nova.conf for SR-IOV usage.