FS#52565 - [linux] Please enable BBR as default congestion control algorithm in linux kernel.

Attached to Project: Arch Linux
Opened by Eric Wang (enihcam) - Monday, 16 January 2017, 05:08 GMT
Last edited by Doug Newgard (Scimmia) - Tuesday, 06 February 2018, 15:29 GMT
Task Type Feature Request
Category Packages: Testing
Status Closed
Assigned To Tobias Powalowski (tpowa)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 20
Private No

Details

Description:
Google’s new TCP BBR congestion controller has been merged into kernel 4.9. The algorithm is proven to improve WAN/LAN/Wifi/Cell network throughput.

For details please refer to:
http://blog.cerowrt.org/post/bbrs_basic_beauty/
http://queue.acm.org/detail.cfm?id=3022184
https://github.com/google/bbr/blob/master/Documentation/bbr-quick-start.md

Other distros also got requests for enabling BBR, for example:
https://github.com/raspberrypi/linux/issues/1784

Additional info:
* package version(s)
4.9.x

* config and/or log files etc.


Steps to reproduce:
This task depends upon

Closed by  Doug Newgard (Scimmia)
Tuesday, 06 February 2018, 15:29 GMT
Reason for closing:  Implemented
Additional comments about closing:  linux 4.15-1
Comment by Eric Wang (enihcam) - Monday, 16 January 2017, 06:08 GMT Comment by Michal Zuber (michalzuber) - Sunday, 23 July 2017, 06:56 GMT Comment by Eric R. (eric87) - Wednesday, 26 July 2017, 15:22 GMT
LWN article about it https://lwn.net/Articles/701165/
Looks like a noticeable improvement without downsides. Even hosting companies are writing how to switch https://www.vultr.com/docs/how-to-deploy-google-bbr-on-centos-7
Comment by Jan Alexander Steffens (heftig) - Tuesday, 22 August 2017, 18:05 GMT
The biggest problem I see is that BBR requires the use of the "fq" scheduler. However, if you try to set that via the default_qdisc sysctl, it won't work right for multi-queue devices (e.g. Intel WiFi cards) which get an instance of fq for every hardware queue.

Running multiple instances of BBR/fq on the same link destroys the fairness guarantees: http://blog.cerowrt.org/post/birthday_problem/
Comment by Eric Wang (enihcam) - Tuesday, 22 August 2017, 22:41 GMT
@Jan BBR starts supporting fq_codel since 4.13.
Comment by Jan Alexander Steffens (heftig) - Tuesday, 22 August 2017, 22:59 GMT
Replacing 'fq' with 'fq_codel' doesn't solve the problem of unfair hardware queues.
Comment by Eric Wang (enihcam) - Tuesday, 22 August 2017, 23:26 GMT
@Jan I don't understand. 'fq_codel' is the default and current qdisc in Archlinux, right?
Comment by Eric Wang (enihcam) - Wednesday, 23 August 2017, 01:45 GMT

Loading...