[Cake] [PATCH 1/3] pkt_sched.h: add support for sch_cake API

Dave Taht dave at taht.net
Fri Nov 24 15:53:33 EST 2017


Marcelo Ricardo Leitner <marcelo.leitner at gmail.com> writes:

> On Tue, Nov 21, 2017 at 04:58:54PM -0800, Dave Taht wrote:
>> Stephen Hemminger <stephen at networkplumber.org> writes:
> ...
>> > Also, when I see multiple arrays of same size. It seems the API should
>> > be:
>> > 	struct tc_cake_tin_stats {
>> > 		__u32 threshold_rate;
>> > 		__u32 target_us;
>> > 		struct tc_cake_traffic_stats sent;
>> > ...
>> >
>> > What if you want to change number of TINS, the ABI shouldn't have to change.
>> 
>> It is hard to imagine ever wanting more than 8 tins. Using up 3, sanely,
>> has proven hard.
>
> Which means each stats dump will almost always dump 5 empty TINS,
> while if it were dynamic, it could dump only the 1, 2 or 3 in use and
> probably help with the stats dump performance. Smaller slab, less
> bytes to copy, ...

It is not a lot of data, and well under under a page in size, which is
the minimum for a userspace copy. (1080 bytes or so I think).

The existing API has proven easy to extend, and changing the mechanism
would require a flag day for the places where cake is used presently.

Part of my reluctance is that cake's current main use case (today) is on
a small home router which has - at most - two instances of cake running,
and people (aside from the flent folk) are not polling it madly.

Those that want to leverage it for traffic engineering in the data
center, for hundreds or thousands of sub qdiscs, should try to express
what their problems are now with existing qdiscs, and how cake could
evolve to help solve those. Certainly having hw mq support would help
there, among other things.


>
>   Marcelo


More information about the Cake mailing list