[Cake] Fresh from the bakery

Loganaden Velvindron loganaden at gmail.com
Fri Oct 16 05:39:58 EDT 2015


On Thu, Oct 15, 2015 at 3:55 PM, Kevin Darbyshire-Bryant <
kevin at darbyshire-bryant.me.uk> wrote:

> Hi list,
>
> Jonathan has been slaving over the oven (again) and produced a fresh
> batch of commits, this time for the iproute2/tc userland side of things
> (announced in another email on this list)  This means that the cake
> qdisc module & tc will talk to one another again with a few new whizzy
> features (and sprinkles!)
>
> I've just merged those changes into Dave's 'tc-adv' repo, compiled &
> run(ning) then here on an Archer C7.  I've not *yet* updated the
> ceropackages repo to point to the latest sch-cake & tc-adv so it's not
> 'openwrt' wide at this time.
>
> Warning:  Since the ABI/API changed, you'll likely need to update both
> the kernel module & userland tc - nothing should burst into flames but
> 'missing stats' output from tc is a sure sign that cake tray & tin are
> not in alignment.
>
>
> Note the new 'rtt' parameter:
>
> # tc qdisc change cake help
> Usage: ... cake [ bandwidth RATE | unlimited* ]
>                 [ rtt TIME | datacentre | lan | metro | regional |
> internet* | oceanic | satellite | interplanetary ]
>                 [ besteffort | squash | precedence | diffserv8 |
> diffserv4* ]
>                 [ flowblind | srchost | dsthost | hosts | flows* ]
>                 [ atm | noatm* ] [ overhead N | conservative | raw* ]
>     (* marks defaults)
>
>
> And the stats:
>
> # tc -s qdisc show dev eth0
> qdisc cake 800a: root refcnt 2 bandwidth 9800Kbit diffserv4 flows rtt
> 100.0ms noatm overhead 12
>  Sent 1580471 bytes 15158 pkt (dropped 0, overlimits 627 requeues 0)
>  backlog 0b 0p requeues 0
>              Tin 0       Tin 1       Tin 2       Tin 3
>   thresh    9800Kbit    9187Kbit    7350Kbit    2450Kbit
>   target       5.0ms       5.0ms       5.0ms       7.4ms
> interval     100.0ms     100.0ms     100.0ms     102.4ms
> Pk-delay         0us       381us         2us         1us
> Av-delay         0us        10us         0us         0us
> Sp-delay         0us         1us         0us         0us
>   pkts             0       15053          66          39
>   bytes            0     1565352        5940        9179
> way-inds           0          43           0           0
> way-miss           0         900          66          11
> way-cols           0           0           0           0
>   drops            0           0           0           0
>   marks            0           0           0           0
> Sp-flows           0           0           1           0
> Bk-flows           0           2           0           2
> last-len           0          82          90         225
> max-len            0        1514          90         485
>
> qdisc ingress ffff: parent ffff:fff1 ----------------
>  Sent 12901461 bytes 20356 pkt (dropped 0, overlimits 0 requeues 0)
>  backlog 0b 0p requeues 0
>
>
> Note how traffic is classified into Tins, not Classes or Bins :-)
>
> Enjoy!
>
>
>
Building the latest tc-adv causes issues with gcc.


gcc -Wall -Wstrict-prototypes  -Wmissing-prototypes -Wmissing-declarations
-Wold-style-definition -Wformat=2 -O2 -I../include -DRESOLVE_HOSTNAMES
-DLIBDIR=\"/usr/lib\" -DCONFDIR=\"/etc/iproute2\" -D_GNU_SOURCE
 -DHAVE_SETNS -DHAVE_ELF -DCONFIG_GACT -DCONFIG_GACT_PROB
-DIPT_LIB_DIR=\"/usr/lib/iptables\" -DYY_NO_INPUT   -c -o q_cake0.o
q_cake0.c
In file included from q_cake.c:48:0:
q_cake.c: In function ‘cake_print_xstats’:../include/utils.h:177:55: error:
expected expression before ‘)’ token # define offsetof(type, member) (
(size_t) & ( (type *) 0 )->member )
              ^q_cake.c:500:31: note: in expansion of macro ‘offsetof’
     && RTA_PAYLOAD(xstats) >= offsetof(*stnc, capacity_estimate))

GCC version:
gcc version 5.2.0 (GCC)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.bufferbloat.net/pipermail/cake/attachments/20151016/5df7000e/attachment-0002.html>


More information about the Cake mailing list