I'll answer this way... The endpoints can use information to slow down as early 
as possible. That's the whole point of control loop tuning. The fundamental 
resonance of a control loop depends on its speed of draining and filling the 
storage element.

So you want to sample and deliver ASAP two things in a network that is trying 
to stay in a ballistic state. One is the aggregate instantaneous controlled (by 
TCP receiver windows and individual application demand) input rate affecting 
each switch and the other is the buffered amount on a path.

The two factors are not the same, and buffered amount wants to be minimized. 
For max throughput you need only be in ballistic-maximum buffering. Which is 
the phase when the bottleneck buffers always have a packet to send but no more 
(analogous to double buffering).

This is a phase in phase space. There can be waves of buffer expansion 
traveling in the medium at the critical phase boundary, but you don't want to 
allow a phase transition to backlogged because then the buffers begin to back 
up and the time to drain adds to the time to recover from sustained descent 
into colllapse.

All flow receivers ideally would be receiving the two sampled measures.

You are right that no action can be taken at a switch... but flow receivers can 
use earlier sampled measures to decide to take action more quickly to prevent 
incipient buffer growth.

Though the situation is different in a highway network, the phase when a jam 
has developed at an intersection is similar. You want a highway system to 
operate at the point where no sustained jams exist.

On May 15, 2014, David Lang <[email protected]> wrote:

Well, if the link isn't congested, why do you need to do anything to the 
traffic 
other than forward it? You have no way of knowing what paths the traffic is 
going to follow once it hits the next router, so you don't know which streams 
are independent of each other.

Now, if you are saying that fq_codel can be enhanced to gather stats even when 
there is no congestion so that it has a better idea of what to do once 
congestion starts, then you may have a point.

but fq_codel is very happy to run and do basically nothing if there is no 
congestion. It doesn't delay things to create a buffer.
_______________________________________________
Bloat mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/bloat

Reply via email to