On Mon, 08 Dec 2025 01:51:48 -0700
Max Chernoff
Hi Stefano,
On Mon, 2025-12-08 at 09:25 +0100, Stefano Brivio wrote:
but, in general, I don't think things can work reliably with the values you shared for tcp_notsent_lowat.
Ok, that works for me. I know very little about TCP, so I just blindly copied that value for tcp_notsent_lowat from
https://blog.cloudflare.com/http-2-prioritization-with-nginx/
Right, I guess you mentioned it already. I still need to find some time to actually look into it in better detail and understand what's still true now (note that that article is from 2018 and there have been very relevant kernel changes against "bufferbloat" in between). At that point:
but if that's incompatible with pasta, then I have no problem resetting tcp_notsent_lowat back to the kernel default.
A random web search makes it look like changing tcp_notsent_lowat is somewhat common
https://www.google.com/search?q=tcp_notsent_lowat%3D131072
https://github.com/search?q=tcp_notsent_lowat%3D131072+NOT+is%3Afork&type=code
so maybe it would be a good idea for pasta to either use setsockopt to override it, or to print a warning on startup if the sysctl is set too low?
...I would also get an opinion on this. I should be able to get back to you in a few days.
Does this (upload now taking longer/timing out with 50 ms RTT) also happen without "custom" values for tcp_notsent_lowat?
I tested things quite extensively in that RTT region (without custom sysctl values) and the improvement looks rather consistent to me.
Ok, with tcp_notsent_lowat reset to the Fedora defaults, the upload speeds with large RTTs do indeed look *much* better
Ok, great, thanks for confirming. That's all I'm trying to fix for the moment. :) -- Stefano