[nsd-users] NSD TCP and UDP performance

Wouter Wijngaards wouter at NLnetLabs.nl
Tue Nov 11 09:08:52 UTC 2008

Hash: SHA1

Hi Aaron,

They are not included in 3.2.

Thanks for the optimisation suggestions.  They work.

However, the reason it is postponed (and still is being postponed), is
that the patch is not critical, and there are concerns that it may
elicit undefined behaviour from (old or poorly written) network stacks.

TCP performance is considered less pressing, as DNS mostly uses UDP.

I did implement your suggestions in unbound, by the way, although that
took some code, and needed stack sanity tests.  Matthijs has since
picked up the NSD maintainer role, and your suggestions are on his todo
list (he says) but just not as high as IXFR-fallback and port-selection

Best regards,

Aaron Hopkins wrote:
> On Fri, 16 Nov 2007, Wouter Wijngaards wrote:
>> After the discussion on the mailing-list the other week the development
>> team revisited the issues with respect to TCP-Nagle-algorithm and the
>> the UDP performance increase by implementing multiple reads after a
>> single select.
> [...]
>> You may expect these features to be available in 3.1.
>> From my quick examination of NSD 3.2.0, these optimizations aren't yet
> included.  Is there a revised timeline for implementing them?
> I also just noticed that NSD select()s on the ability to write() for every
> TCP reply.  In the common case, this is unnecessary and will lead to
> slightly increased CPU utilization and reply latency versus optimistically
> write()ing and falling back to select() if necessary.  Was this
> optimization
> considered and deemed unnecessarily complex?
>                                     -- Aaron

Version: GnuPG v1.4.9 (GNU/Linux)


More information about the nsd-users mailing list