On Fri, 2011-09-23 at 08:02 +0200, Eric Dumazet wrote:
While playing with a new ADSL box at home, I discovered that ECN
blackhole can trigger suboptimal quickack mode on linux : We send one
ACK for each incoming data frame, without any delay and eventual
piggyback.
This is because TCP_ECN_check_ce() considers that if no ECT is seen on a
segment, this is because this segment was a retransmit.
If you have Linux as the sender, that assumption is legit (i.e we never
set ECT on retransmits).
Refine this heuristic and apply it only if we seen ECT in a previous
segment, to detect ECN blackhole at IP level.
So small confusion for me, Eric:
Is theres some middlebox clearing the ECT but allowing the TCP header
ECN flags to be set during SYN echange? If yes, why would not allowing
quickack help?
cheers,
jamal