checksum_offload Test Suite

DPDK checksum offload testing suite.

This suite verifies L3/L4 checksum offload features of the Poll Mode Driver. On the Rx side, IPv4 and UDP/TCP checksum by hardware is checked to ensure checksum flags match expected flags. On the Tx side, IPv4/UDP, IPv4/TCP, IPv6/UDP, and IPv6/TCP insertion by hardware is checked to checksum flags match expected flags.

class TestChecksumOffload

Bases: TestSuite

Checksum offload test suite.

This suite consists of 7 test cases: 1. Insert checksum on transmit packet 2. Do not insert checksum on transmit packet 3. Hardware checksum check L4 Rx 4. Hardware checksum check L3 Rx 5. Validate Rx checksum valid flags 6. Checksum offload with VLAN 7. Checksum offload with SCTP

insert_checksums() None

Enable checksum offload insertion and verify packet reception.

Steps:
  • Create a list of packets to send.

  • Launch testpmd with the necessary configuration.

  • Enable checksum hardware offload.

  • Send list of packets.

Verify:
  • Packets are received.

  • Packet checksums match the expected flags.

no_insert_checksums() None

Disable checksum offload insertion and verify packet reception.

Steps:
  • Create a list of packets to send.

  • Launch testpmd with the necessary configuration.

  • Send list of packets.

Verify:
  • Packets are received.

  • Packet checksums match the expected flags.

l4_rx_checksum() None

Tests L4 Rx checksum in a variety of scenarios.

Steps:
  • Create a list of packets to send with UDP/TCP fields.

  • Launch testpmd with the necessary configuration.

  • Enable checksum hardware offload.

  • Send list of packets.

Verify:
  • Packet checksums match the expected flags.

l3_rx_checksum() None

Tests L3 Rx checksum hardware offload.

Steps:
  • Create a list of packets to send with IP fields.

  • Launch testpmd with the necessary configuration.

  • Enable checksum hardware offload.

  • Send list of packets.

Verify:
  • Packet checksums match the expected flags.

validate_rx_checksum() None

Verify verbose output of Rx packets matches expected behavior.

Steps:
  • Create a list of packets to send.

  • Launch testpmd with the necessary configuration.

  • Enable checksum hardware offload.

  • Send list of packets.

Verify:
  • Packet checksums match the expected flags.

vlan_checksum() None

Test VLAN Rx checksum hardware offload and verify packet reception.

Steps:
  • Create a list of packets to send with VLAN fields.

  • Launch testpmd with the necessary configuration.

  • Enable checksum hardware offload.

  • Send list of packets.

Verify:
  • Packet checksums match the expected flags.

validate_sctp_checksum() None

Test SCTP Rx checksum hardware offload and verify packet reception.

Steps:
  • Create a list of packets to send with SCTP fields.

  • Launch testpmd with the necessary configuration.

  • Enable checksum hardware offload.

  • Send list of packets.

Verify:
  • Packet checksums match the expected flags.

required_capabilities: ClassVar[set[Capability]] = {2, 3, 4}

The capabilities the test case or suite requires in order to be executed.