On 17 Dec 2006, at 02:22, Ross Boylan wrote:
An earlier report on this list said
sysctl -w net.inet.tcp.delayed_ack=0
worked wonders. There does not seem to be such a setting in my Linux
2.6.18 kernel.
I don't recall if Linux has ever had that sysctl. Mac OS X does.
This option globally disables Nagel's Algorithm. You can also
disable it on a per-socket basis:
int zero = 0;
if (( proto = getprotobyname( "tcp" )) == NULL ) {
syslog( LOG_ERR, "getprotobyname: %m" );
return( -1 );
}
if ( setsockopt( socket_fd, proto->p_proto, TCP_NODELAY,
&zero, sizeof( zero )) != 0 ) {
syslog( LOG_ERR, "snet_setopt: %m" );
return( -1 );
}
For protocols (or implementations of protocols in the case of IMAP)
with a lot of small back & forth chatter, it does in fact do wonders.
:wes
----
Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html