Hi Ivan Malov 😊

Use Case:
I'm currently using the DPDK-Burst-Replay tool to replay captured PCAP files at 
specific data rates (e.g., 150–200 Mbps).

Response to your feedback:
Point 1: "Port 0 is not on the good NUMA ID (-1)"
I’m aware that this message is printed due to the NUMA ID being returned as -1.
I've just started diving into the source code and found that the call to 
rte_eth_dev_socket_id() returns -1, which typically indicates an error.
However, the current implementation does not output the rte_errno, which could 
help identify the root cause. I'm working on modifying the code to print the 
error code for better debugging.

Point 2: "NIC Link is UP"
Yes, on the NIC side, the link is up. I'm also able to transmit packets 
successfully using the testpmd application.

Question:
Could you please confirm if the current version of the DPDK-Burst-Replay tool 
supports replaying Ethernet frames larger than 64 bytes (e.g., up to 1500 
bytes)? Or has the tool been enhanced to support this use case?

Thanks for your time and support!

Best regards,
Gokul K.R





-----Original Message-----
From: Ivan Malov <ivan.ma...@arknetworks.am>
Sent: Friday, July 18, 2025 5:29 PM
To: Gokul K R (MS/ETA7-ETAS) <kr.go...@in.bosch.com>
Cc: us...@dpdk.org; dev@dpdk.org
Subject: Re: Issue with DPDK-Burst Replay – No Frame Transmission Observed 
Despite Successful Replay

Hi,

(please see below)

On Fri, 18 Jul 2025, Gokul K R (MS/ETA7-ETAS) wrote:

>
> Hi Team,
>
> I’m currently working with the dpdk-burst-replay tool and encountered an 
> issue during execution. Below are the details:
>
>
> ______________________________________________________________________
> ______________________________________________________________________
> ______________________________________________
>
>
> Observation:
> During replay, we received the following informational message:
>
> port 0 is not on the good numa id (-1)

Which API was used to check this? Was API [1] used? If not, what does it show 
in the absence of 'numactl' command?

[1] 
https://doc.dpdk.org/api-25.03/rte__ethdev_8h.html#ad032e25f712e6ffeb0c19eab1ec1fd2e

>
> As per the DPDK mailing list discussions, this warning is typically 
> benign—often seen on NICs like Intel I225/I210, which do not report NUMA 
> affinity. Hence, we proceeded with execution.
>
>
> ______________________________________________________________________
> ______________________________________________________________________
> ______________________________________________
>
>
> Command Used:
>
> sudo numactl --cpunodebind=0 --membind=0 ./src/dpdk-replay
> Original_MAC.pcap 0000:01:00.1
>
> Execution Output:
>
> preloading Original_MAC.pcap file (of size: 143959 bytes)
>
> file read at 100.00%
>
> read 675 pkts (for a total of 143959 bytes). max packet length = 1518 bytes.
>
> -> Needed MBUF size: 1648
>
> -> Needed number of MBUFs: 675
>
> -> Needed Memory = 1.061 MB
>
> -> Needed Hugepages of 1 GB = 1
>
> -> Needed CPUs: 1
>
> -> Create mempool of 675 mbufs of 1648 octets.
>
> -> Will cache 675 pkts on 1 caches.

What does this 'cache' stand for? Does it refer to the mempool per-lcore cache?
If so, please note that, according to API [2] documentation, cache size "must 
be lower or equal to RTE_MEMPOOL_CACHE_MAX_SIZE and n / 1.5", where 'n' stands 
for the number of mbufs. Also, documentation says it is advised to choose 
cache_size to have "n modulo cache_size == 0". Does your code meet these 
requirements?

By the looks of it, it doesn't (cache_size = n = 675). Consider to double-check.

[2] 
https://doc.dpdk.org/api-25.03/rte__mempool_8h.html#a0b64d611bc140a4d2a0c94911580efd5

>
>
> ______________________________________________________________________
> ______________________________________________________________________
> ______________________________________________
>
>
> Issue:
> Despite successful parsing of the pcap file and proper initialization, no 
> frames were transmitted or received on either the sender or receiver sides.

Is this observation based solely on watching APIs [3] and [4] return 0 all the 
time? If yes, one can consider to introduce invocations of APIs [5], [6] and 
[7] in order to periodically poll and print statistics (may be with 1-second 
delay), which may, for example, shed light on mbuf allocation errors (extended 
stats).

Do statistics display any interesting figures to be discussed?

[3] 
https://doc.dpdk.org/api-25.03/rte__ethdev_8h.html#a3e7d76a451b46348686ea97d6367f102
[4] 
https://doc.dpdk.org/api-25.03/rte__ethdev_8h.html#a83e56cabbd31637efd648e3fc010392b

[5] 
https://doc.dpdk.org/api-25.03/rte__ethdev_8h.html#adec226574c53ae413252c9b15f6f4bab
[6] 
https://doc.dpdk.org/api-25.03/rte__ethdev_8h.html#a418ad970673eb171673185e36044fd79
[7] 
https://doc.dpdk.org/api-25.03/rte__ethdev_8h.html#a300d75b583c1f5acfe5b162a5d8c0ac1

>
>
> ______________________________________________________________________
> ______________________________________________________________________
> ______________________________________________
>
>
> Environment Details:
>
>  *  NIC used: Intel I225/I210
>  *  Hugepages configured: 1 GB
>  *  NUMA binding: --cpunodebind=0 --membind=0
>  *  OS: [Your Linux distribution, e.g., Ubuntu 20.04]
>  *  DPDK version: [Mention if known]
>
> ______________________________________________________________________
> ______________________________________________________________________
> ______________________________________________
>
>
> Could you please advise if any additional setup, configuration, or known 
> limitations may be impacting the packet transmission?

This may be a wild suggestion from my side, but it pays to check whether link 
status is "up" upon port start on both ends. One can use API [8] to do that.

[8] 
https://doc.dpdk.org/api-25.03/rte__ethdev_8h.html#ac05878578e4fd9ef3551d2c1c175ebe7

Thank you.


>
> Thank you in advance for your support!
>
>
> Best regards,
> Gokul K R
>
>
>
>
>

Reply via email to