[Cake] Stranger target behaviour
Sebastian Moeller
moeller0 at gmx.de
Sun Nov 1 04:47:24 EST 2015
Hi there,
On Oct 31, 2015, at 21:29 , Dave Taht <dave.taht at gmail.com> wrote:
> The second one is from the interval >> 4, which equates to 6.2ms. I
> note I picked that because some early data (2012) we had showed that
> target slightly greater than cable media acquision (6ms) time was a
> slight win, and it did not hurt to use a number more evenly divisible
> in binary than the arbitrary 5%.
Well, but should it not be 6.2ms even if no rtt is explicitly requested? Currently cake has a lot of corer-cases that are not too well documented either.
>
> Also there was somewhere else in the original code where I'd stopped
> using the target variable entirely and just used the shifted interval,
> but given low rates where we have to account for the MTU, that
> approach does not work. (otherwise anytime I can replace a memory
> access with a mere shift, I'd do it)
Why? We could take the initial target, calculate the adjusted target, multiply that by 16 to get the adjusted interval/rtt; at that point target = interval >> 4 is true again ;)
>
> As for the first 5ms sample below, I am really behind on keeping up
> with the code. After next weekend I would hope to have time, but I do
> hope someone can step through all the permutations upon which init and
> change can be called to nail it.
I believe while we are at it we should reconsider the BUG_ONs; I believe it is going to be a hard sell for the kernel community to hose a whole system because a qdisc was a bit unhappy ;) I also want to repeat my conviction that the buffer limit needs to be exposed to the user and actually honored as a hard limit. I believe cake is aimed at non-expert users and having rtt and bandwidth settings have un-obviuos side effects on the worst case memory consumption does not seem suitable for non-experts...
>
> Somewhere on these threads someone suggested moving the target
> calculation into userspace, which does not work well, IMHO, when cake
> is the default qdisc,
I believe before that happens cake will need to acquire pfifo_fast priority bands as default ;); regarding the default qdisc issue, I hess the challenge is that nothing passes anything into sch_cake if it is the default, then obviously it should default to rtt 100ms target 6.2ms… So I should include cake as default qdisc in the cursory testing I do.
> and we somehow get a means to actually get the
> actual line rate.
But we are far away from that, no?
Best Regards
Sebastian
> Dave Täht
> I just invested five years of my life to making wifi better. And,
> now... the FCC wants to make my work, illegal for people to install.
> https://www.gofundme.com/savewifi
>
>
> On Sat, Oct 31, 2015 at 3:35 PM, Kevin Darbyshire-Bryant
> <kevin at darbyshire-bryant.me.uk> wrote:
>> Playing with latest JM authed commits on sch-cake & tc-adv. Look at the
>> target values:
>>
>> root at Router:~# tc -s qdisc change dev ifb4eth0 root cake internet
>> root at Router:~# tc -s qdisc show dev ifb4eth0
>> qdisc cake 8008: root refcnt 2 bandwidth 39300Kbit diffserv4 flows rtt
>> 100.0ms noatm overhead 12
>> Sent 285837 bytes 1240 pkt (dropped 0, overlimits 144 requeues 0)
>> backlog 0b 0p requeues 0
>> capacity estimate: 10511Kbit
>> Tin 0 Tin 1 Tin 2 Tin 3
>> thresh 39300Kbit 36843Kbit 29475Kbit 9825Kbit
>> target 5.0ms 5.0ms 5.0ms 5.0ms
>> interval 100.0ms 100.0ms 100.0ms 100.0ms
>> Pk-delay 0us 22us 0us 0us
>> Av-delay 0us 6us 0us 0us
>> Sp-delay 0us 2us 0us 0us
>> pkts 0 1240 0 0
>> bytes 0 285837 0 0
>> way-inds 0 0 0 0
>> way-miss 0 125 0 0
>> way-cols 0 0 0 0
>> drops 0 0 0 0
>> marks 0 0 0 0
>> Sp-flows 0 0 0 0
>> Bk-flows 0 2 0 0
>> last-len 0 82 0 0
>> max-len 0 1514 0 0
>>
>> root at Router:~# tc -s qdisc change dev ifb4eth0 root cake rtt 100ms
>> root at Router:~# tc -s qdisc show dev ifb4eth0
>> qdisc cake 8008: root refcnt 2 bandwidth 39300Kbit diffserv4 flows rtt
>> 100.0ms noatm overhead 12
>> Sent 757689 bytes 2374 pkt (dropped 0, overlimits 464 requeues 0)
>> backlog 0b 0p requeues 0
>> capacity estimate: 5964Kbit
>> Tin 0 Tin 1 Tin 2 Tin 3
>> thresh 39300Kbit 36843Kbit 29475Kbit 9825Kbit
>> target 6.2ms 6.2ms 6.2ms 6.2ms
>> interval 100.0ms 100.0ms 100.0ms 100.0ms
>> Pk-delay 0us 286us 0us 0us
>> Av-delay 0us 70us 0us 0us
>> Sp-delay 0us 2us 0us 0us
>> pkts 0 2374 0 0
>> bytes 0 757689 0 0
>> way-inds 0 0 0 0
>> way-miss 0 157 0 0
>> way-cols 0 0 0 0
>> drops 0 0 0 0
>> marks 0 0 0 0
>> Sp-flows 0 0 0 0
>> Bk-flows 0 2 0 0
>> last-len 0 82 0 0
>> max-len 0 1514 0 0
>>
>> Colour me confused :-)
>>
>> Kevin
>>
>>
>> _______________________________________________
>> Cake mailing list
>> Cake at lists.bufferbloat.net
>> https://lists.bufferbloat.net/listinfo/cake
>>
> _______________________________________________
> Cake mailing list
> Cake at lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cake
More information about the Cake
mailing list