Re: Weird tcp performance differences with 2.0 and 2.2 kernels

Andi Kleen (ak@muc.de)
12 Feb 1999 16:19:51 +0100


In article <199902112125.NAA06814@dancer.ca.sandia.gov>,
pw@dancer.ca.sandia.gov (Pete Wyckoff) writes:

>> remote client linux 2.2.1, 400mhz Pentium II, 3c905B Cyclone 100baseTx
>> 10 bytes 46.51 c/s
>> 723 bytes 47.68 c/s
>> 724 bytes 279.62 c/s
>> 1024 bytes 300.92 c/s

> Delayed acks are a good thing (see the RFCs), but linux tries to be clever
> during slow start to help ramp transfer rates up faster by using "quick
> ack mode". See tcp_delack_estimator(). But the function tcp_remember_ack()
> seems to be messing things up for small packets. It tries to speed up
> pending acknowledgements when it sees PSH and small packets, but in so
> doing, erases the "quick ack mode" bit.

The reasoning is simple: Quick ack mode is used to speed up bulk transfers,
and in bulk transfer you don't use small packets. In other situations we
want the full packet saving benefit of delayed acks. So artifically
using small packets is a bad idea.

"It hurts when I do this." "Then don't do this"

-Andi

-- 
This is like TV. I don't like TV.

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/