I recently found this on Reddit while looking into why jellyfin is effected so much by latency. I found that this worked and thought I would share it because it is generally applicable, takes five minutes to setup, and helps a lot with bandwidth on higher latency connections. I admit I am not sure of the technical stuff behind this, so if anyone would like to chime in that would be much appreciated.
Are there any downsides to this? Why isn’t it default if it is so drastically better?
https://en.wikipedia.org/wiki/TCP_congestion_control#TCP_BBR
List some issues, but only earlier version, not BBR3
BBR1:
researchers like Geoff Huston and Hock, Bless and Zitterbart found it unfair to other streams and not scalable.
Hock et al. also found “some severe inherent issues such as increased queuing delays, unfairness, and massive packet loss” in the BBR implementation of Linux 4.9.
Soheil Abbasloo et al. (authors of C2TCP) show that BBRv1 doesn’t perform well in dynamic environments such as cellular networks.
I believe it will result in like 10% additional overhead, which may be bad on metered connections, but I am not aware of any situation that results in decreased performance. I don’t really know much about this so if anyone would like to correct me, please do.