Hi Florin,
After fixing the UDP checksum offload issue and using the 64K tx buffer, I
am able to send 35Gbps ( half duplex) .
In DPDK code ( ./plugins/dpdk/device/init.c) , it was not setting the
DEV_TX_OFFLOAD_TCP_CKSUM and DEV_TX_OFFLOAD_UDP_CKSUM offload bit for MLNX5
PMD.
In the udp tx applica
Hi Raj,
Inline.
> On Jan 21, 2020, at 3:41 PM, Raj Kumar wrote:
>
> Hi Florin,
> There is no drop on the interfaces. It is 100G card.
> In UDP tx application, I am using 1460 bytes of buffer to send on select(). I
> am getting 5 Gbps throughput ,but if I start one more application then tota
Correction : -
Please read 17 Mbps as 17 Gbps and 13Mbps as 13Gbps in my previous mail.
thanks,
-Raj
On Tue, Jan 21, 2020 at 6:41 PM Raj Kumar wrote:
> Hi Florin,
> There is no drop on the interfaces. It is 100G card.
> In UDP tx application, I am using 1460 bytes of buffer to send on
> select(
Hi Florin,
There is no drop on the interfaces. It is 100G card.
In UDP tx application, I am using 1460 bytes of buffer to send on select().
I am getting 5 Gbps throughput ,but if I start one more application then
total throughput goes down to 4 Gbps as both the sessions are on the same
thread.
I i
Hi Raj,
Good to see progress. Check with “show int” the tx counters on the sender and
rx counters on the receiver as the interfaces might be dropping traffic. One
sender should be able to do more than 5Gbps.
How big are the writes to the tx fifo? Make sure the tx buffer is some tens of
kB.
Hi Florin,
I changed my application as you suggested. Now, I am able to achieve 5 Gbps
with a single UDP stream. Overall, I can get ~20Gbps with multiple host
application . Also, the TCP throughput is improved to ~28Gbps after tuning
as mentioned in [1].
On the similar topic; the UDP tx throughp
Hi Raj,
The function used for receiving datagrams is limited to reading at most the
length of a datagram from the rx fifo. UDP datagrams are mtu sized, so your
reads are probably limited to ~1.5kB. On each epoll rx event try reading from
the session handle in a while loop until you get an VPPCO
Hi Florin,
By using VCL library in an UDP receiver application, I am able to receive
only 2 Mbps traffic. On increasing the traffic, I see Rx FIFO full error
and application stopped receiving the traffic from the session layer.
Whereas, with TCP I can easily achieve 15Gbps throughput without tu
Hi Florin,
Yes, [2] patch resolved the IPv6/UDP receiver issue.
Thanks! for your help.
thanks,
-Raj
On Tue, Jan 14, 2020 at 9:35 PM Florin Coras wrote:
> Hi Raj,
>
> First of all, with this [1], the vcl test app/client can establish a udpc
> connection. Note that udp will most probably lose p
Hi Raj,
First of all, with this [1], the vcl test app/client can establish a udpc
connection. Note that udp will most probably lose packets, so large exchanges
with those apps may not work.
As for the second issue, does [2] solve it?
Regards,
Florin
[1] https://gerrit.fd.io/r/c/vpp/+/24332
Hi Florin,
Thanks! for the reply.
I realized the issue with the non-connected case. For receiving datagrams,
I was using recvfrom() with DONOT_WAIT flag because of
that vppcom_session_recvfrom() api was failing. It expects either 0 or
MSG_PEEK flag.
if (flags == 0)
rv = vppcom_session_read
Hi Raj,
Session layer does support connection-less transports but udp does not raise
accept notifications to vcl. UDPC might, but we haven’t tested udpc with vcl in
a long time so it might not work properly.
What was the problem you were hitting in the non-connected case?
Regards,
Florin
> O
Hi ,
I am trying some host application tests ( using LD_PRELOAD) . TCP rx and tx
both work fine. UDP tx also works fine.
The issue is only with UDP rx . In some discussion it was mentioned that
session layer does not support connection-less transports so protocols like udp
still need to accept
13 matches
Mail list logo