under a very specific circomstance, Linux's TCP implementation exhibits a nasty BUG: it fast retransmits spuriously.
I have first noticed the BUG working with a Microsoft "smart phone" (it turns out they are not so smart after all).
These devices spend a lot of ressources on their display. Beeing so buisy all the time, they become too slow for the network and are not able to read octets fast enough.
Because of this, the advertised window starts to drop. And, here is the interesting part: it seems that Microsoft's TCP sends window updates every time the window starts to grow (that is a lot of window updates), not just after the window has been 0.
The problem is that Linux (2.4) doesn't seem to be able to make the diffrence between a window update and a DUPACK, and fast retransmits spuriously. (Microsoft's stack does the same.)
I could have investigated the source code and fixed the BUG myself, but it seems that somebody more familiar with it could address this issue in a more productive way.
Thank you for your time.
Get your free email from http://www.uymail.com
Powered by Outblaze
> I could have investigated the source code and fixed the BUG myself,
Please, send tcpdump of a bad session.