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.
You might want to cut them some slack, their code
needs to be
cross-platform. TCP/IP is available on every platform they support,
otherwise a browser doesn't make much sense :-)
Yes, but shared memory is also available on every platform ;)
No, it is our job to make ReactOS behave like Windows,
not the job of the
app vendors to change their code to suite ReactOS.
Yes, that is true, but mozilla is still poorly behaved so it would be
nice to let them know so they can improve on it eventually. Correctly
implementing TCP_NODELAY should provide a decent work around to this
poor behavior, but it would be much better if they would send the whole
block of data at once instead of one byte at a time.
My test program does not set that flag and still works ok on Windows.
It may still be slow, just not AS slow due to the lower timeout. If
that is the case then you should see a significant speed up by enabling
TCP_NODELAY. You should also see that behavior on bsd or linux systems.
Lowering the timeout will reduce the effects, but it will only be
hiding the real problems.