Hi,

We are facing strange problem with disabling the Nagle's algorithm via setting 
the TCP_NODELAY flag on server socket (setsockopt), where server is 
communication with client via loopback.
After the first segment (of the response) is sent by server side, server is 
waiting for ACK instead of continuing sending next segments (as it should use 
sliding window principle). The client sends ACK after 40 ms, only then server 
sends the rest of responses packed into one segment. The 40 ms is a big delay 
and causes reponse processing to be 10 times slower.

The thing doesn't happen, if we move client to another host. In that case the 
server don't wait for ACK, don't pack responses and also response processing is 
much faster.

It seems, like on loopback the Nagle's alg. is still acting (citate from alg. 
description says:"a first segment is sent immediately, while further data on 
the sender side is buffered until either a full maximum segment can be sent or 
an acknowledgement for the first segment is received)

I found some descriptions of the same problem, but with no solution!
Is there a bug in setsockopt()? We are using 2.6.5 kernel.

Regards,
Mihal




-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to