Re: Possible TCP Problem with RH6.2 talking to Solaris2.6/2.7 (fwd)

From: James Sutherland (
Date: Thu May 04 2000 - 01:44:53 EST

On Wed, 3 May 2000, shane wrote:

> The Sun used a larger window (64K versus 32K).

Check that Networking options ... IP: Allow large windows is enabled in
your kernel build. This could be related to case 2?

Using a larger receive window on the Linux end could help, anyway. Any
ideas WHY those packets were dropped, BTW?

Case 1 looks likely to entail changing the kernel code, which is more

> Case 1)
> 5 packets were dropped by Linux and had to be re-transmitted. This
> contributed to about 30% of the elapsed time. Looking at the traces in
> detail, the receiver isn't using multiple ACKS to indicate a dropped
> packet. Instead, it stops ACKing new packets. The Sun has to timeout
> (100+ milliseconds), and then send the missing packets. When I've
> watched a Sun detect a missing packet, it does multiple ACKS of the
> last good packet to indicate a packet is missing. The Linux box
> doesn't do that. Delays were from 100 mseconds to 400 milliseconds in
> this condition. As I said, it happend 5 times (out of 14258 packets),
> but contributed to 30% of the total time..
> Case 2)
> The Sun had to slow down and wait for the Linux box to empty the
> receive window 4451 times. This accounted to about 20% of the elapsed
> time. It indicates the efficiency of the Linux TCP stack is poor when
> emptying data. A faster CPU would help.
> The Sun had a 320 microsecond delay between sending two packets with
> "P" bits set. The "P" bit (PUSH) bit) is usually set at the end of a
> buffer, so this is small, but it occured 9089 times, which contributed
> to a total of 2.9 seconds. (The max was 1 millisecond). Therefore the
> Sun could be faster. This is where the bottleneck is on the Sun side
> it. Maybe a faster CPU would perform better. This is 30% of the time,
> and 63% of the packets.
> To be brief, the time is broken down into 4 cases:
> 20% - transmitting
> 30% Speed of the Sun
> 20% speed of the Linux box
> 30% Linux acknowledgement of missing packets forces a timeout


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

This archive was generated by hypermail 2b29 : Sun May 07 2000 - 21:00:13 EST