ayufan-rock64 / linux-build

Rock64 Linux build scripts, tools and instructions
MIT License
561 stars 98 forks source link

Please enable TCP: BBR congestion control algorithm in new kernel #175

Open shanghaix opened 6 years ago

shanghaix commented 6 years ago

tcp: BBR congestion control algorithm Please enable it as it can increase the network speed much.

About BBR : http://queue.acm.org/detail.cfm?id=3022184 https://lwn.net/Articles/701177/

from the kernel patch description:

This patch series implements a new TCP congestion control algorithm: BBR (Bottleneck Bandwidth and RTT). A paper with a detailed description of BBR will be published in ACM Queue, September-October 2016, as "BBR: Congestion-Based Congestion Control". BBR is widely deployed in production at Google.

ErikDeridder commented 6 years ago

Thats the reason why i needed to upgrade the kernel as well. You suceeded in upgrading the kernel to 4.16. Did you tried this : https://www.techrepublic.com/article/how-to-enable-tcp-bbr-to-improve-network-speed-on-linux/ ?

shanghaix commented 6 years ago

I managed to upgrade to kernel 4.16 hoping that BBR would be enabled in it but it wasn't supported. I used this tutorial https://www.linuxbabe.com/ubuntu/enable-google-tcp-bbr-ubuntu to check if BBR was available (don't follow the part where they tell you to upgrade to kernel 4.9). It's really unfortunate because right now my raspberry pi tcp speed is almost faster than the rock64. I really hope it will be enabled in the next kernel version; it's been out for at least one year on the raspberry pi https://github.com/raspberrypi/linux/issues/1784

ErikDeridder commented 6 years ago

In other words, BBR is not in Kernel? Does this link helps you : https://www.cyberciti.biz/cloud-computing/increase-your-linux-server-internet-speed-with-tcp-bbr-congestion-control/

ErikDeridder commented 6 years ago

I am a compleet noob in Linux, so i can't try it but i think it's describe here but i have no clue how to do this : This is a community project and you can and should add it on your own. It is prepared to be simple:

https://docs.armbian.com/Process_Contribute/#collaborate-on-the-project Edit this line: https://github.com/armbian/build/blob/master/config/kernel/linux-rockchip-next.config#L788

Wait up to a day for kernel automated build at beta.armbian.com repository.

shanghaix commented 6 years ago

BBR is not in the latest kernel available which is version 4.16. However you bring a very interesting point with the Arabian kernel, I will try to install it and see if BBR works but so far every time I try to upgrade the kernel with Armbian it fails and I can't boot the rock64... Obviously we could just compile the kernel ourselves and add BBR in it but I am not advanced enough to do this.. Will let you know if I find anything new!

ErikDeridder commented 6 years ago

I was trying to compile the kernel myself with BBR but as this is completely new to me, i realy had no idea what i was doing, meaning, i didn't succeeded :s Although testing shows the huge benefits from having BBR, so could some oneplease add this to the kernel?

shanghaix commented 6 years ago

+1

ErikDeridder commented 6 years ago

I just saw a 4.17 kernel version? Did someone tried this to see if it's enabled? I will try this tonight

ghost commented 6 years ago

+1

TheB1gG commented 6 years ago

Somebody knows why this isn't included? It is in mainline Linux, so it was removed for this kernel? Is it not compatible with the rock64? Some help to understand the situation would be nice :)