[Cake] triple flow isolation

Jonathan Morton chromatix99 at gmail.com
Mon Jan 18 06:39:22 EST 2016


>> Hence I think it’s reasonable to simply switch on triple isolation by
>> default, in the near future.  It does approximately the right thing, without
>> further configuration, in the great majority of practical cases (that I can
>> think of), and to a greater extent than the existing “flows” mode does.
> 
> A question from complete ignorance of this feature:
> 
> Do you prioritize by app ("traffic class") before imposing host
> fairness, or vice versa?

It’s a fair question.  There are arguments for doing it either way.

> We have these rules that voice, or video, can get special treatment in
> order to survive (but aren't allowed to monopolize the connection).
> If two local hosts simply cut the connection in half, we kind of lose
> that prioritization.
> 
> E.g. when I was sharing with 4 other students - I want my house-mates
> bittorrenting to stay firmly in the scavenger class when I want to use
> the internet :).  (And vice-versa; I want to be able to leave my
> bittorrent on and not get shouted at because netflix cuts out and
> downgrades to standard definition).

You’ll be pleased to hear that Cake does it the way you want.  Diffserv priority queuing takes precedence over everything else bar the shaper itself.  Flow and host isolation occur within each priority tin, and AQM occurs within each flow queue.

It is entirely possible to do it the other way around.  For a wifi-specific qdisc, we might well do, in order to enforce airtime fairness between stations and then permit each station to prioritise packets within their own traffic.  This makes very different assumptions than are valid for a last-mile link.

 - Jonathan Morton



More information about the Cake mailing list