[dns-operations] DNS server benchmarking sanity check
Robert Edmonds
edmonds at mycre.ws
Sat Aug 13 18:14:12 UTC 2016
Anand Buddhdev wrote:
> Now I know that there is a LOT more tweaking and tuning that can be
> done. For example the 10 GB NICs have lots of tunables. In addition,
> there are things like CPU affinity, IRQ affinity, etc that could be
> tweaked. But let's assume that we don't want to get into that level of
> tweaking and tuning, and just want to use the defaults of the OS with
> minimal adjustment, is this setup okay? Are there any other Linux kernel
> adjustments, especially on the DNS server, that should be adjusted for
> high packet rates?
There's the SO_REUSEPORT socket option, which has been in the kernel
since 3.9. See this presentation for details:
https://domsch.com/linux/lpc2010/Scaling_techniques_for_servers_with_high_connection%20rates.pdf
Unfortunately it's not a global kernel tunable that you can just turn
on; the daemon has to explicitly opt in by creating a separate socket
for each worker thread and turning on the SO_REUSEPORT option for each
socket.
Knot DNS has SO_REUSEPORT support built-in (I think it can be disabled
at compile time), BIND doesn't, not sure about Yadifa.
--
Robert Edmonds
More information about the dns-operations
mailing list