[Cake] More on 'target' corner cases - rate/target/interval confusion?

Jonathan Morton chromatix99 at gmail.com
Sun Nov 8 11:36:44 EST 2015

> On 8 Nov, 2015, at 12:19, Kevin Darbyshire-Bryant <kevin at darbyshire-bryant.me.uk> wrote:
> Whilst I was there I also subtly tweaked the diffserv4 video tin
> bandwidth allocation to 11/16ths rather than 3/4.  In combination with
> voice (1/4) it meant that (theoretically) best effort could be
> completely starved, let alone bulk - it doesn't seem to actually happen
> in real life, but setting video to 11/16th & voice to 4/16th means that
> there's 1/16th to be fought over between best effort and bulk - and best
> effort as a result does seem to get a little bit more of a look-in in
> the face of 'more important' competition.

Actually, the “threshold” mechanism doesn’t implement the priority queue at all, but only switches the underlying DRR weights between “priority balance” and “bandwidth balance”.  Since it’s fundamentally DRR, and the weights of the queues never go to zero, there is no possibility of starvation.  Additionally, the threshold mechanism itself “borrows” bandwidth from lower tins to serve higher ones - this is a holdover from an earlier version when there was indeed a separate hard shaper per tin.

It *is* possible that the per-tin choices of target and interval might want tweaking, but it’s probably best to have some hard data for the effects of doing that.  One possibility is that target should be tuned for the worst-case (minimum) bandwidth under maximally saturated conditions, rather than the raw threshold value.

 - Jonathan Morton

More information about the Cake mailing list