> Can you remind me, what magic we used to perform in 2.0.x to help
> these people? ;-)))
2.0 had several advantages, which helped only a bit:
- it never retransmitted if packet did not leave the host yet,
but was sitting in device queue.
- it removed all the packets from device queues, when user
was tired to wait for result.
But it did not make any device based flow control yet.
I invented one solution: to create sk->congestion_notify
callback, and to set it for tcp to normal VJ { ss=cwnd/2; cwnd=1; }
and for dgrams to nothing. So that, when device is conjested,
it calls this callback, but does not drop packet, until a second
threshold (2*tx_queue_len?) is exceeded or until sk->ssthesh != 1.
Yesterday it looked very clever :-)
BTW about the problem under discussion: 2.0 did not make wake up,
when packet was sitting in tcp queue.
Alexey
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu