> On Jul 24, 2022, at 2:50 PM, Bless, Roland (TM) <[email protected]> wrote:
> 
> Hi Michael,
> 
> see below.
> 
> On 24.07.22 at 12:12 Michael Welzl wrote:
>>> On Jul 24, 2022, at 3:03 AM, Toerless Eckert <[email protected]> wrote:
>>> 
>>> Inline
>>> 
>>> On Sat, Jul 23, 2022 at 08:10:43PM -0400, Stuart Cheshire wrote:
>>>> I feel that in retrospect the name “congestion control” was a poor choice. 
>>>> Too often when I talk to people building their own home-grown transport 
>>>> protocol on top of UDP, and I ask them what congestion control algorithm 
>>>> they use, they smile smugly and say, “We don’t need congestion control.” 
>>>> They explain that their protocol won’t be used on congested networks.
>> I agree SO strongly !!!!!
>> The main problem of congestion control these days appears to be that 
>> networks are mostly underutilized (see the thread on ICCRG I started by 
>> pointing at our ComMag paper) - the issue is to increase the rate as quickly 
>> as possible, without producing congestion.
> 
> Now, what is congestion in this context? Packet loss or too high queuing 
> delay?

I’d say both, but -


>> It should really be called “rate control”.
>> It’s about a sending rate - whether that is indirectly achieved by 
>> controlling a window or explicitly by changing a rate in bits per second 
>> doesn’t really matter.
> 
> Yes, one would assume that, but technically it does matter.

- you seem to misunderstand. I wasn’t suggesting that “rate control is the only 
way, window control is just the same thing”. Not at all !
I’m saying that if you do it using a window, or an explicit send rate in 
bits/second or packets per whatever time unit …  either way, you’re always in 
fact controlling a rate, and hence “rate control” is a good term for it. Window 
based control is just tighter, because:


> Typically, you want to control the sending rate _and_ the amount of inflight 
> data. Window-based approaches have the advantage that they
> are kind of self-stabilizing due to the implicit rate feedback by
> the growing effective RTT (queueing delay induced).
> Moreover, if your congestion window is estimated too large, you just
> get a constant amount of excess data in the bottleneck queue, whereas if
> your sending rate is too large, you get a growing amount of inflight
> data over time and thus increasing excess data in the bottleneck queue.
> Even if a rate-based algorithm would know and pick the perfect rate
> it may result in instability at the bottleneck (c.f. queueing theory at
> \rho=1). Controlling the sending rate is thus harder and more fragile.
> Therefore, I'm a strong proponent of having a window-based
> approach that uses pacing in addition to avoid micro-bursts and
> cope with unsteady/distorted ACK feedback. The other way around
> would also work and that's how BBRv2 currently tries to approach the
> problem: using a rate-based sender that also controls the amount of
> inflight data.

….yes, yes, of course, all that!  But it’s not really what I meant though  :)

Cheers,
Michael

Reply via email to