David Lang wrote:
On Fri, 28 Apr 2017, xnor wrote:

As I understand it, increase in RTT due to queueing of packets is the main feedback mechanism for BBR. So dropping packets, which I already consider harmful, is really harmful with BBR because
you're not telling the sender to slow down.

If BBR does not slow down when packets are dropped, it's too hostile to use on a public network. The only way for a public network to respond to a flood of traffic higher than what it can handle is to drop packets (with a possible warning via ECN shortly before packets get dropped). If BBR doesn't slow down, it's just going to be
wasting bandwidth.

Instead, with a controlled delay qdisc like cake or codel, you're telling the sender to keep sending the data faster because the qdisc keeps the increase in RTT minimal. To make things worse, you're throwing away perfectly good packets with no effect other than wasting bandwidth.

you are mistaking how cake and codel work. They are working at the link endpoint adjacent to where the bandwidth is most limited. They drop packets before they get send over the most contrained link. The fact that the packets eat up some bandwidth on the non-constrained link prior to the bottleneck doesn't matter, the bandwidth is available by definition (otherwise it would be a constrained link to the endpoint before it)

Well cake may be used on ingress, OK so that is a "hack" but it's better
than nothing. The ingress parameter does help a bit - but not much.

Reducing bufferbloat is a good ideal, but it seems sometimes being too
aggressive can hurt (I've also needed to increase rtt somewhat higher
than the actual latency to get upstream tests to fill bandwidth).

If target is supposed to work 5-10% of rtt value, then maybe cake could
let users choose 10% rather than hard code 5% - to avoid the need to set
excessive rtt values just to raise target.
_______________________________________________
Cake mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/cake

Reply via email to