[Cake] cake exploration

Jonathan Morton chromatix99 at gmail.com
Sun Apr 12 18:52:27 EDT 2015

> On 11 Apr, 2015, at 21:48, Dave Taht <dave.taht at gmail.com> wrote:
> 15) Needs to work so an ISP can create service classes for their customers
> DRR 1: cake bandwidth X
> DRR 2: cake bandwidth Y
> DRR 3:
> I have no idea whether this can work at all, last I tried it DRR would
> stall everytime fq_codel had no packets to deliver.

Sounds like a classful version of cake.  I may have mentioned the need for something like it before, myself.

Actually, I think the required algorithms were already in cake1.  The key point is that you must track the backlog per class, and only accept the bandwidth grant from a class if there’s a backlog to service with it.  Even then, I had to backtrack if Codel goes and drops the last packet in the class, so that I could either select another class or reschedule the timer.

Cake3 simplifies that slightly, in that the “reschedule the timer” option is taken care of before class selection begins.

- Jonathan Morton

More information about the Cake mailing list