[Bloat] "BBR" TCP patches submitted to linux kernel
Eric Dumazet
eric.dumazet at gmail.com
Thu Oct 27 13:52:08 EDT 2016
On Thu, 2016-10-27 at 10:33 -0700, Dave Taht wrote:
> At the moment my biggest beef with BBR is that it ignores ECN entirely
> (and yet negotiates it).
Note that switching cubic to any other CC like BBR is allowed at any
time, way after ECN was negotiated.
So BBR can not solve the issue you mention in a reliable way.
There must be a reason sysctl_tcp_ecn default value is 2 on linux [1],
don't you think ???
_You_ chose to change this sysctl, do not blame BBR for being silly !
ECN was a nice attempt, but suffers from implementation bugs.
For a start, linux does not implement RFC 3540.
If someone cares enough of ECN, then it should cook linux patches to
implement RFC 3540. Hint hint hint.
Then you need to make sure all the nodes between your peers are not
messing with ECN.
BBR simply works, because it is a sender side thing.
You do not have to fix everything in the Internet.
[1]
Documentation/networking/ip-sysctl.txt
tcp_ecn - INTEGER
Control use of Explicit Congestion Notification (ECN) by TCP.
ECN is used only when both ends of the TCP connection indicate
support for it. This feature is useful in avoiding losses due
to congestion by allowing supporting routers to signal
congestion before having to drop packets.
Possible values are:
0 Disable ECN. Neither initiate nor accept ECN.
1 Enable ECN when requested by incoming connections and
also request ECN on outgoing connection attempts.
2 Enable ECN when requested by incoming connections
but do not request ECN on outgoing connections.
Default: 2
More information about the Bloat
mailing list