DPDK package

DPDKTools module

This module exists to provide the init DPDK.

class resources.libraries.python.DPDK.DPDKTools.DPDKTools

Bases: object

Test the DPDK l2fwd performance.

static cleanup_dpdk_environment(dut_node, dut_if1, dut_if2)

Cleanup the DPDK test environment on the DUT node. Unbind the NIC from the igb_uio and bind them to the kernel driver.

Parameters:
  • dut_node (dict) – Will cleanup the DPDK on this node.
  • dut_if1 (str) – DUT interface name.
  • dut_if2 (str) – DUT interface name.
Returns:

none

static initialize_dpdk_environment(dut_node, dut_if1, dut_if2)

Initialize the DPDK test environment on the dut_node. Load the module uio and igb_uio, then bind the test NIC to the igb_uio.

Parameters:
  • dut_node (dict) – Will init the DPDK on this node.
  • dut_if1 (str) – DUT interface name.
  • dut_if2 (str) – DUT interface name.
Returns:

none

L2fwdTest module

This module exists to provide the l2fwd test for DPDK on topology nodes.

class resources.libraries.python.DPDK.L2fwdTest.L2fwdTest

Bases: object

Test the DPDK l2fwd performance.

static start_the_l2fwd_test(dut_node, cpu_coremask, nb_cores, queue_nums, jumbo_frames)

Execute the l2fwd on the dut_node.

Parameters:
  • dut_node (dict) – Will execute the l2fwd on this node.
  • cpu_coremask (str) – The DPDK run core mask.
  • nb_cores (str) – The cores number for the forwarding.
  • queue_nums (str) – The queues number for the NIC.
  • jumbo_frames (str) – Is jumbo frames or not.
Returns:

none

SetupDPDKTest module

This module exists to provide setup utilities for the framework on topology nodes. All tasks required to be run before the actual tests are started is supposed to end up here.

class resources.libraries.python.DPDK.SetupDPDKTest.SetupDPDKTest

Bases: object

Setup suite run on topology nodes.

Many VAT/CLI based tests need the scripts at remote hosts before executing them. This class packs the whole testing directory and copies it over to all nodes in topology under /tmp/

static setup_dpdk_test(nodes)

Pack the whole directory and extract in temp on each node.