On Wed, 2015-04-22 at 23:07 +0200, Steinar H. Gunderson wrote: > On Wed, Apr 22, 2015 at 02:02:32PM -0700, Eric Dumazet wrote: > > Yeah, the real nice thing is TCP_NOTSENT_LOWAT added in linux-3.12 > > But this is only for when your data could change underway, right? > Like, not relevant for sending one big file, but might be relevant for e.g. > VNC (or someone mentioned the usecase of HTTP/2, where a high-priority > request might come in, which you don't want buried behind a megabyte of > stuff in the send queue).
Sorry, I do not understand you. The nice thing about TCP_NOTSENT_LOWAT is that you no longer have to care about choosing the 'right SO_SNDBUF' It is still CC responsibility to choose/set cwnd, but you hadn't set an artificial cap on cwnd. You control the amount of 'unsent data' per socket. If you set a low limit, application might have to issue more send() calls and get more EPOLLOUT events. This also means that if you get an abort / eof, you no longer have a huge unsent queue that TCP API does not allow to cancel. https://insouciant.org/tech/prioritization-only-works-when-theres-pending-data-to-prioritize/ _______________________________________________ Bloat mailing list [email protected] https://lists.bufferbloat.net/listinfo/bloat
