Phillip Susi wrote:
Ge van Geldorp wrote:
I'm not arguing that delayed ACK is incorrect, but 2.5 sec??? Searching the Internet, 200ms seems a much more accepted value. This is also the value used by the MS stack: http://www.microsoft.com/technet/itsolutions/network/deploy/depovg/tcpip2k.m
spx (under "Delayed Acknowledgements").
That does sound like a more reasonable value, but if nagling is disabled, it should not matter.
If an app is going to send one byte at a time, disabling the nagle algorithm is _exactly_ the _wrong_ thing to do!
The nagle algorithm exists precisely so that applications can send one byte at a time and not have sucky performance.
Now if an app is _always_ going to do
send(); recv();
(i.e., there is going to be one call to send followed by a call to recv, disabling nagle might be appropriate.)
But any app that does:
send(); send(); . . . send(); recv();
Should not disable the nagel algorithm except in rare (I can't think of any) circumstances.
Thanks,
Joseph