Re: TCP Stall

Richard B. Johnson (root@analogic.com)
Mon, 31 Mar 1997 08:26:28 -0500 (EST)


On Sun, 30 Mar 1997, David S. Miller wrote:

> Date: Sun, 30 Mar 1997 21:35:26 -0500 (EST)
> From: "Richard B. Johnson" <root@analogic.com>
[SNIPPED]
>
> You may be in for a surprise.
>
Yes! This is a very good surprise!
[SNIPPED]
> Please note that the actual developers expressed just as much grief
> about that unfortunate thread as you are.

You have reconfirmed my confidence.

>
> Now, how does the machine that received a window of zero
> know that buffers are available again? I watch the Sun
> send a SYN. It receives an ACK with the new window. I
> don't know if this is the correct thing to do according
> to the RFCs, but it works. It is likely that the routing
> machine, i.e., the one that has buffers loaded with data,
> trying to free them by getting the data squeezed into the
> PPP link, should be the machine to send a SYN when
> buffers are available again.
>
> There were two sets of bug reports for 2.0.29 and pre2.0.30, one dealt
> with the TCP logic incorrectly setting the window to zero when it
> should not have, the other was with incorrect Nagle and partial packet
> handling.
>
> I believe that Eric Schenk and myself have both addressed these issues
> in what will soon be released as the next pre-2.0.30 patch set. I
> would be interested if you can still reproduce your problems with that
> kernel when it is released.

Thanks. I haven't been using that kernel, I am glad that you have been
working on this.

>
> If you are referring in particular to 2.1.x kernels, Eric and myself
> both know that the queueing logic in the TCP stack there is completely
> fucked and we plan to work on it heavily, you will need to be a bit
> more patient for things to get fixed in 2.1.x's TCP.

I can be very patient as long as I know that something is being worked on.
If you have any patches that __might__ work (sort of) in 2.1.x, I can
contribute some time towards integrating them and testing. Patches that
fail in such a complete way that I can't understand what is happening are
not too useful. However, some that requre cuts and pastes to get the code
correct can be useful. I am familiar with the network code and expert in
'C'.

Cheers,
Dick Johnson
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Richard B. Johnson
Project Engineer
Analogic Corporation
Voice : (508) 977-3000 ext. 3754
Fax : (508) 532-6097
Modem : (508) 977-6870
Ftp : ftp@boneserver.analogic.com
Email : rjohnson@analogic.com, johnson@analogic.com
Penguin : Linux version 2.1.30 on an i586 machine (66.15 BogoMips).
Warning : I read unsolicited mail for $350.00 per hour. Supply billing address.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-