Hello, I am trying to write a simple UDP-based client server application starting from the load-balancer example shipped with the dpdk libs. I have setup the server basically copying the code of the example, and both I/O and application threads seem to be up and running.
As a first step, I wrote the client side using standard socket programming. I manage to send a packet (I see it using tpcdump), but the dpdk i/o thread seems to be unaware of it. Note that client and server are on the same machine, even though the client sends the packet from another interface. Also, I use a mlx4 driver, so I did not explicitly bind the NIC to dpdk using the proper script: as a result, while running my server, I can ping the server. Still, tcpdump does not acknowledge the reception of the message I send. My environment is the following DPDK: v 2.2 MLNX_OFED_LINUX-3.1-1.0.3-ubuntu14.04-x86_64 My NIC : 05:00.0 Ethernet controller: Mellanox Technologies MT27520 Family [ConnectX-3 Pro] My machine runs a 3.19.0-47-generic on Ubuntu 14.04. CPU is Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz 2x8 cores My questions are the following 1) Do you have any idea of what I can be doing wrong? Most likely it is a rookie mistake. I am even starting to suspect that a DPDK server needs a DPDK client, but this puzzles me. 2) Eventually, I am going to write a dpdk client as well. Is there any good tutorial-like example I can refer to to see how to properly build eth->ipv4->udp packets to be exchanged between my client and server? Thank you for your kind help. Kind regards, Harold
