[dpdk-users] rte_eth_tx_burst reliability

Amedeo Sapio amedeo.sapio at polito.it
Tue Oct 16 17:38:23 CEST 2018

Dear all,

while using rte_eth_tx_burst() to send packets in batches, I see that,
sometimes, the amount of packets that the function says are sent, are not
actually sent.

I am accumulating the return value of rte_eth_tx_burst() in a variable and,
at the end of the job, the value of the accumulator is greater than the
value of  "opackets"  in the device "eth_stats".
I see the same number of transmitted packets in eth_stats, eth_xstats and
on the other side of the cable, and this number is less than the sum of the
values returned by rte_eth_tx_burst().

So, my question is: in what case the rte_eth_tx_burst() function returns a
value that does not correspond to the real number of transmitted packets?
According to the documentation, the function is returning only the number
of packets that have been successfully inserted in the ring, so I assumed
the return value was reliable.

NIC: Intel 82599ES
DPDK driver: igb_uio
DPDK version: 18.05
Traffic: UDP packets, sized 174B, with IP and UDP checksum offload



More information about the users mailing list