BBR congestion control kills SMB transfer speeds!


In the place where I live, networks get heavily congested during peak hours. Using kmod-bbr with fq_codel setting makes a huge difference in speeds to VPN's etc during these peak hours.

I've noticed an annoying problem though. If you try to do any SMB samba transfers over this VPN connection while BBR-fq_codel is enabled the samba speeds are capped at like 100-300kB/s. (The SMB server is a windows machine)

When I remove the kmod-bbr package, the samba speeds go back to max. BUT when the net gets congested, I get much worse VPN speeds.

I'm using Softether VPN on the OpenWRT router. CPU isn't the problem. Traffic other than SMB can go full speed over the VPN.

I'm running 19.07.8 and 19.07.7 builds. I've tried kmod-bbr on three routers, two kinds, and I get similar results on all three. It works great as long as I don't need to do any SMB transfers.

Thank you for reading and commenting. I really appreciate it.

First of all. Thank you so much for writing. I'm sorry I didn't specify the hardware.

I've got many devices. The one in question is a Xiaomi R3Gv1. MT7621A dual core 880MHz with 128MB rom and 256MB ram. It's a gigabit device, both on the wan and lan side.

As I also wrote. The router isn't acting as an SMB server.

I have the package kmod-bbr running on a much weaker device and it's running beautifully at speeds much higher than those mentioned. I don't initiate SMB transfers through this device though.

The load numbers don't change to 2.xx or 3.xx when transferring via SMB. They all remain below 1.00.

good bug title. Not enough information. A packet capture of a good result vs a bad one would help.

May I suggest to switch to an UDP VPN? Doing TCP inside TCP is known to be problematic in general? That is however somewhat orthogonal to the question why BBR apparently makes things worse.

Thanks! I can enable UDP for the vpn connection. I'll try it and report back.