[dns-operations] BIND performance difference between RHEL 6.4 and FreeBSD 7

Shawn Zhou shawnzhou00 at yahoo.com
Fri Apr 25 16:51:02 UTC 2014

Looks like BIND 9.9.4b1 has support for SO_REUSEPORT as test results I get from RHEL 6.5 look better than what I have from RHEL 6.4:


I have been wondering why the drop rate is higher in the lower range of QPS in FreeBSD (24 UDP BIND listeners) than RHEL 6.5 (16 UDP BIND listeners). Could it be that those 24 listeners are handing out queries too fast from the socket to worker threads on FreeBSD and those 16 listeners are emptying the receive queue at the right speed for worker threads until we hit the peak at ~200k QPS on RHEL6.5?

My tests show 16 listeners on RHEL 6.4/6.5 provides the best performance on hosts with 24 and 40 CPU threads. I am not sure why 16 is such a magic number ("Sweet 16", I guess).

Look at 9.10.0b2 release notes https://kb.isc.org/article/AA-01142/81/BIND-9.10.0b2-Release-Notes.html, ISC will be adjusting the default setting for the number of listeners: 
	* The default setting for the -U option (setting the number of UDP listeners per interface) has been adjusted to improve performance. [RT #35417]

Anyone knows what logic will be used?
On Thursday, April 24, 2014 5:51 AM, Ralf Weber <dns at fl1ger.de> wrote:
>On 23 Apr 2014, at 22:09, Jared Mauch <jared at puck.nether.net> wrote:
>> Despite using RHEL 6.4, I wonder if 6.5 or hand-building a 3.x series kernel might provide benefits not evident in the 2.6.3x series that RHEL ships.
>RHEL 6.5 has a kernel with SO_REUSEPORT support. which can improve UDP performance, but AFAIK needs support from the DNS server software. Not sure if bind supports that. Then of course you could use another DNS software.
>So long
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dns-oarc.net/pipermail/dns-operations/attachments/20140425/dde58415/attachment.html>

More information about the dns-operations mailing list