[prev in list] [next in list] [prev in thread] [next in thread] 

List:       dpdk-users
Subject:    Re: [dpdk-users] Sequential UDP packets
From:       Pierre Laurent <pierre.laurent () emutex ! com>
Date:       2019-11-15 0:23:35
Message-ID: AM0P190MB06254D9E8C90047DA340560AE3700 () AM0P190MB0625 ! EURP190 ! PROD ! OUTLOOK ! COM
[Download RAW message or body]

HI

Without much information , it is very hard to imagine what you are doing an=
d what you are getting.

From the packet numbers you provide, it looks like you are seeing all packe=
ts, and it is not a packet loss problem.

DPDK itself does not reorder the packets.
But your DPDK setup might be built from multiple path and transmit packets =
from multiple threads and /or multiple queues , or both, or over multiple i=
nterfaces.


If you are sure to use one single TX thread, one single TX queue, one singl=
e TX interface to transmit your packets with DPDK, then this cannot be a DP=
DK problem.

The problem can be on the receive side where you are using wireshark with s=
ome standard OS and standard driver. It is very frequent in standard OS and=
 standard drivers to implement multiple RX queues (e.g. Windows, Ubuntu ...=
).  With such a config, packets with the same tuple5 (source IP, dest IP, s=
ource Port, dest Port, protocol  https://www.techopedia.com/definition/2819=
0/5-tuple ) are not reordered and assigned to the same RX queue.

If you number your packets by changing one of the elements of the tuple 5, =
e.g. the destination udp  port, then RX packets will be sent to different R=
X queues, this standard   feature is known as receive-side-scaling (RSS)   =
https://docs.microsoft.com/en-us/windows-hardware/drivers/network/introduct=
ion-to-receive-side-scaling  . Then Wireshark would get the packets in any =
order, depending on polling strategies and priorities, rates and packet dis=
tributions in the different queues. There are options in most OS to set the=
 number of queues, or disable RSS.

Alternatively, make sure your packets have all the same "tuple5", and if yo=
u want to put some sequential number, I suggest you do it in the UDP payloa=
d.

This response is a guess, because you provided NO information about your en=
vironment, your setup, any packet size, any packet rate, any packet dump no=
r investigations you already did.

Regards,

Pierre



________________________________
From: users <users-bounces@dpdk.org> on behalf of Sarvesh Verma <sarveshfwe=
cverma79@gmail.com>
Sent: Wednesday 13 November 2019 07:56
To: users@dpdk.org <users@dpdk.org>
Subject: [dpdk-users] Sequential UDP packets

Hey DPDK users,

Since last two months I'm struggling to generate my own sequential UDP
packets through DPDK. At receiving side my packets counts are matching but
are not in sequence in Wireshark.
Expected- 1,2,3,4,5,6,7,8,9,10.........
Getting-1,4,6,8,9,2,3,5,7,10........=85

Hope anyone will reply soon.

Thank you
Sarvesh Verma
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic