[nsd-users] NSD TCP performance
Colm MacCarthaigh
colm at stdlib.net
Fri Nov 9 03:46:39 UTC 2007
On Thu, Nov 08, 2007 at 06:30:56PM -0800, Aaron Hopkins wrote:
> On Thu, 8 Nov 2007, nsd at dclg.ca wrote:
>
> > NSD always sends the two byte response size as a separate TCP packet
> > (causing the requestor to send a separate ACK) to the main body of the
> > request.
>
> I reported this in May 2006. Found in nsd-3.0.6/doc/TODO:
>
> - From Aaron Hopkins: write tcp length and tcp data in one write operation,
> instead of multiple calls to write. Avoids Nagle algo delay in this case.
> preallocate 2 bytes in front of buffer to put them into.
>
> There are a few other performance-related things I reported at the same time
> still in the TODO that you might be interested in.
A quick and simple, not very portable, fix in the meantime might be to use the
TCP_CORK/TCP_NOPUSH socket option (depending on platform) on the socket.
--
Colm MacCárthaigh Public Key: colm+pgp at stdlib.net
More information about the nsd-users
mailing list