Search code examples
cnetworkingpacketdpdknic

dpdk-dumpcap not capturing incoming packets on the port


I have two nic cards with 2 QSFP28 ports, and internally port is configured to 4 so each nic card has 8 ports, i have a cable connected to nic card each other,

enter image description here

now i am transmitting packets from pcap file using tcpreplay on 2nd nic card where ports are binded to kernel driver

now on the other nic card i have binded two ports to dpdk and triggered the below commands to capture the packets, which i am not getting any, if i unbind from dpdk driver and put it back to kernel it works with tcpdump

  1. build/app/dpdk-testpmd -c 0xf0 -n 4 -- -i --port-topology=chained
  2. build/app/dpdk-dumpcap -w /tmp/capture.pcapng ice_set_rx_function(): Using AVX2 Vector Rx (port 0). ice_set_rx_function(): Using AVX2 Vector Rx (port 1). Capturing on '0000:0f:00.3' File: /tmp/capture.pcapng Packets captured: 0
  3. tcpreplay -i ens5f3 c2_15scs_4_ant_256_frame_128.pcap

Solution

  • There might be two options of how to fix this:

    • replace -i ("interactive mode") with --tx-first in the testpmd command;
    • in testpmd interactive prompt, type start tx_first, press Enter.