Messages in this thread | | | Date | Mon, 1 Mar 1999 20:45:18 -0800 | From | David Miller <> | Subject | Re: [patch] acks delayed and then merged in data-segment sent a bit after |
| |
Date: Tue, 2 Mar 1999 02:56:05 +0100 (CET) From: Andrea Arcangeli <andrea@e-mind.com>
Here a patch against 2.2.2. I did not tried the code yet. In the TCP_NODELAY case we probably want to do raw things (without caring about network load).
No way is this patch going in. You can not remove the immedate ack to the first data packet without considering the consequences deeply.
An RFC compliant stack will send one data packet (no matter how much is queued) because he (should) have a congestion window of 1, therefore he cannot send any more data until he gets an ACK back (at which point he is allowed to send 2 packets, and so on).
Your patch broke this.
There is a side note, many BSD stacks are not RFC compliant for congestion window calculations because they do the congestion window adjustments even for acks of SYN and SYN/ACK packets, this is wrong. This is what I think is really going on with the NT machines. However I will not accept a fix which doesn't handle broken BSD stacks _and_ properly functioning stacks satisfactorily. Your patch does not, it penalizes the correct implementation.
Later, David S. Miller davem@redhat.com
- 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/
| |