My test is almost same with Alexander. But we only use one rx queue.

Sent from Samsung Mobile



-------- Original message --------
From: Prashant Upadhyaya <prashant.upadhy...@aricent.com>
Date: 11/05/2013 6:41 AM (GMT-08:00)
To: Alexander Belyakov <abelyako at gmail.com>,Olivier MATZ <olivier.matz at 
6wind.com>
Cc: dev at dpdk.org
Subject: Re: [dpdk-dev] Surprisingly high TCP ACK packets drop counter


Hi Alexander,

I am also wondering like Olivier ? yours is a nice testcase and setup, hence 
requesting the information below instead of spending a lot of time reinventing 
the test case at my end.
If you have the time on your side, it would be interesting to know what is the 
number of packets per second received inside your application on each of your 4 
queues individually in both the usecases ? with and without RSC.

I am just wondering (since your throughput almost exactly goes down 50 %), that 
your apparent randomization of packets may not really be random enough and with 
RSC enabled the packets are coming on two queues only or there might be an 
uneven distribution.
Or it may well be that NIC gets overwhelmed with RSC processing and that brings 
down the throughput.

Either way, it would be very interesting to get stats for packets per second on 
each queue in both the usecases.

Regards
-Prashant


From: Alexander Belyakov [mailto:abely...@gmail.com]
Sent: Tuesday, November 05, 2013 5:29 PM
To: Olivier MATZ
Cc: Prashant Upadhyaya; dev at dpdk.org
Subject: Re: [dpdk-dev] Surprisingly high TCP ACK packets drop counter

Hello,

The role of RSC is to reassemble input TCP segments, so it is possible
that the number of TCP packets sent to the DPDK is lower but some
packets may contain more data. Can you confirm that?

I don't think out test case can answer your question, because all generated TCP 
ACK packets were as small as possible (no tcp payload at all). Source IPs and 
ports were picked at random for each packet, so most of (adjacent) packets 
belong to different TCP sessions.

In my opinion, this mechanism should be disabled by default because it
could break PMTU discovery on a router. However it could be useful for
somebody doing TCP termination only.

I was thinking about new rte_eth_rxmode structure option:

@@ -280,6 +280,7 @@ struct rte_eth_rxmode {
                hw_vlan_strip    : 1, /**< VLAN strip enable. */
                hw_vlan_extend   : 1, /**< Extended VLAN enable. */
                jumbo_frame      : 1, /**< Jumbo Frame Receipt enable. */
+               disable_rsc      : 1, /**< Disable RSC (receive side 
convalescing). */
                hw_strip_crc     : 1; /**< Enable CRC stripping by hardware. */
 };

Regards,
Alexander




===============================================================================
Please refer to http://www.aricent.com/legal/email_disclaimer.html
for important disclosures regarding this electronic communication.
===============================================================================

Reply via email to