Firebird News

Wednesday, April 13, 2005

TCP_NODELAY is now on (both superserver and classic)

Currently TcpNoNagle flag in firebird.conf is default on for classic and super servers.
The Nagle algorithm is described in rfc1122
and is better explained in Firebird's Closed Features:

Disabling the TCP/IP Nagle Algorithm typically
improves speed on slow networks.

The Nagle TCP/IP algorithm was designed to avoid
problems with small packets, called tinygrams, on slow
networks. The algorithm says that a TCP/IP connection
can have only one outstanding small segment that has
not yet been acknowledged. The definition of "small"
varies but usually it is defined as "less than the
segment size" which on ethernet is about 1500 bytes.

By default, the socket library will use an internal
algorithm known as Nagle's algorithm for buffering
bytes on write before actually sending the data in
order to minimise actual physical writes.

No comments: