![mycroft](/assets/img/avatar_default.png)
I've found a problem with the TCP delayed ack algorithm. If the writer's buffer becomes full before sending an entire window, the writer will stop and the ack will be delayed and the transmission will be stalled pending a timeout on (and transmission of) the delayed ack. As an experiment, I've applied the following patch to my (NetBSD) kernel, and it alleviates the problem. The worst case for this change is that the writer sets the PSH bit on every outgoing packet, in which case delayed ack is effectively disabled. This is not an issue of correctness, however, and since most vendors use the PSH bit a bit more intelligently, it doesn't seem like a serious problem.
…
…
…
Description
No description provided
Languages
C
85.3%
Roff
7.2%
Assembly
3.1%
Shell
1.7%
Makefile
1.2%
Other
0.9%