[dns-operations] DNS server benchmarking sanity check

Thomas Dupas Thomas.Dupas at eurid.eu
Fri Aug 19 06:17:16 UTC 2016

> On Aug 15, 2016, at 9:39 PM, Jared Mauch <jared at puck.nether.net > wrote:
> One thing I’m always reminding people is that most OS’es have optimized for TCP performance and not UDP.
>50Gb/s for TCP ~6Gb/s for UDP.  I’ve been frustrated by these defaults in Linux that result in such a performance difference as the outcome.
> puck:~$ iperf -c localhost
> ...
> Client connecting to localhost, UDP port 5001 Sending 1470 byte datagrams, IPG target: 0.24 us (kalman adjust) UDP buffer size:  208 KByte (default)
> ------------------------------------------------------------
> [  3] local port 43066 connected with port 5001
> [ ID] Interval       Transfer     Bandwidth
> [  3]  0.0-10.0 sec  6.78 GBytes  5.82 Gbits/sec [  3] Sent 4950578 datagrams [  3] Server Report:
> [  3]  0.0-10.0 sec  6.58 GBytes  5.66 Gbits/sec   0.000 ms 141142/4950578 (2.9%)

Only noticed this thread yesterday, but it seems Anand and me are doing something similar in parallel.
I already reached out to Anand to share/cooperate.

The UDP ~6Gb/s from Jared seems to correspond with my testing.
6Gb/s at 1470 byte datagrams is a bit north of 4M pps.
I can push/receive reliably up to 2,1M qps / pps . NSD is even able to answer 99,94% of the queries at that rate.
But once I push harder my sender starts to crash, or I get measurement inconsistencies (I have had some test runs up to 2,7M qps, but at those rates my test servers start to crash often. So I stopped at 2,1M for all the test daemons).

And like others on this thread have already said: Cloudflare shared many interesting reads / presentations about handling packets at such rates; which was a very useful source!



This email  and  any  attachment  hereto  is  intended  solely  for  the  person
to which  it  is  addressed  and  may  contain  confidential  and/or  privileged
information.  If you are not the intended recipient  or  if  you  have  received
this email in error, please delete it and  immediately  contact  the  sender  by
telephone or email, and destroy any copies  of  this  information.   You  should
not use or copy it, nor disclose  its  content  to  any  other  person  or  rely
upon this information.  Please note that any views presented in  the  email  and
any attachment hereto are solely those of the  author  and  do  not  necessarily
represent those of EURid.  While all care has been  taken  to  avoid  any  known
viruses, the recipient is advised to check this email  and  any  attachment  for
presence of viruses.


More information about the dns-operations mailing list