Skip to content

Avoid network traffic jam with BBR

Linux
2 2 766 1
  • From time to time, here or there, we see subjects flourish on an abnormally limited speed in FTP.
    To overcome this kind of slowdown, simply activate the TCP BBR protocol

    Without going into details, this protocol makes it possible to make better use of the bandwidth available during the exchange of TCP packets. Created by Google, you can find more information here.

    Integrated into the Linux Kernel since version 4.9, all you have to do to activate it is to edit the kernel parameters (/etc/sysctl.conf) and add :

    net.ipv4.tcp_congestion_control = bbr
    net.core.default_qdisc = fq
    

    A TCP command acting in both IPv4 and v6,

    save and load with :

    sudo sysctl -p
    

    And we go from a restricted FTP speed
    crazy 🙂

    If you are under Proxmox or ESXi, this must be done both on the host and in the VM/CT.

  • DownPWundefined DownPW marked this topic as a regular topic on
  • From time to time, here or there, we see subjects flourish on an abnormally limited speed in FTP.
    To overcome this kind of slowdown, simply activate the TCP BBR protocol

    Without going into details, this protocol makes it possible to make better use of the bandwidth available during the exchange of TCP packets. Created by Google, you can find more information here.

    Integrated into the Linux Kernel since version 4.9, all you have to do to activate it is to edit the kernel parameters (/etc/sysctl.conf) and add :

    net.ipv4.tcp_congestion_control = bbr
    net.core.default_qdisc = fq
    

    A TCP command acting in both IPv4 and v6,

    save and load with :

    sudo sysctl -p
    

    And we go from a restricted FTP speed
    crazy 🙂

    If you are under Proxmox or ESXi, this must be done both on the host and in the VM/CT.

    @DownPW interesting. Does this have any effect on data transfers over SCP


Related Topics
  • To the Window to the Linux . . .

    Pinned Linux arch linux windows endoflife
    18
    13 Votes
    18 Posts
    2k Views
    Just wanted to say that it has been fun making my mom learn Arch Linux by switching the church school computers over to it where she assists.
  • Arch Linux | Reflector

    Linux arch linux pacman reflector updates
    4
    4 Votes
    4 Posts
    1k Views
    I have another update for reflector that I just figured out. You will want to edit the following file and add details to make sure that every time it updates the mirror list, it is grabbing them from your country and I grab 10 and sort them by rate. This will ensure that your mirrorlist isn’t getting populated with links from other countries which can slow down you downloads. sudo nano /etc/xdg/reflector/reflector.conf This is what the file looks like. # Reflector configuration file for the systemd service. # # Empty lines and lines beginning with "#" are ignored. All other lines should # contain valid reflector command-line arguments. The lines are parsed with # Python's shlex modules so standard shell syntax should work. All arguments are # collected into a single argument list. # # See "reflector --help" for details. # Recommended Options # Set the output path where the mirrorlist will be saved (--save). --save /etc/pacman.d/mirrorlist # Select the transfer protocol (--protocol). --protocol https # Select the country (--country). # Consult the list of available countries with "reflector --list-countries" and # select the countries nearest to you or the ones that you trust. For example: --country US # Use only the most recently synchronized mirrors (--latest). --latest 10 # Sort the mirrors by synchronization time (--sort). --sort rate Here are the different flag options that you can change or add to this file. I found this on google by searching arch linux reflector flags. Filtering Options (What to find) --country <CODE/Name>: Selects mirrors from specific countries (e.g., US, France,Germany). Use {Link: reflector --list-countries https://archlinux.org/mirrors/status/}, for a full list. --protocol <http|https>: Filters for HTTP or HTTPS mirrors. --age <hours>: Only includes mirrors synced within the last X hours (e.g., --age 12). --delay <hours>: Limits to mirrors with a reported sync delay of X hours or less (e.g., --delay 0.25 for 15 mins). --latest <N>: Limits results to the top N newest mirrors. Sorting Options (How to order) --sort rate: Sorts by download speed (requires testing, can be slow). --sort age: Sorts by most recently synced. --sort score: Sorts by overall score. --sort country: Sorts by country, useful with multiple countries. Output Options (Where to put it) --save <path>: Writes the filtered/sorted list to a file (e.g., /etc/pacman.d/mirrorlist). --verbose or -v: Shows detailed progress and mirror info.
  • Linux on a Stick

    Linux linux usb arch
    29
    16 Votes
    29 Posts
    3k Views
    @DownPW I haven’t tried either of those, I am sure they run fast as well. Linux is so versatile it is awesome!
  • Linux Certification

    Linux linux certs
    4
    2 Votes
    4 Posts
    711 Views
    @Madchatthew You might be sorry you asked This is the mentoring category below. Presently, it’s unused, but we have a dedicated area for it. https://sudonix.org/category/8/mentoring Other services https://sudonix.org/services
  • Arch Linux + Me = Crazy

    Linux arch linux web server vps
    10
    0 Votes
    10 Posts
    1k Views
    @Madchatthew hmm, yes, that might be problematic.
  • 3 Votes
    30 Posts
    4k Views
    @DownPW any update?
  • Error certification on virtualmin/Nginx

    Solved Linux cert virtualmin nginx
    17
    2
    0 Votes
    17 Posts
    2k Views
    @DownPW anytime
  • Ubuntu Upgrade All Packages

    Solved Linux mangodb sudonix
    3
    3 Votes
    3 Posts
    801 Views
    @phenomlab Upgraded, everything works