* [Cake] cake coding comments
@ 2015-11-19 8:55 Dave Taht
2015-11-19 10:23 ` Sebastian Moeller
2015-11-19 12:20 ` Kevin Darbyshire-Bryant
0 siblings, 2 replies; 4+ messages in thread
From: Dave Taht @ 2015-11-19 8:55 UTC (permalink / raw)
To: cake
I sat down to try and think outside the boxes we are in...
dropping: Dropping an 3+ packet TSO "superpacket" will cause a tcp
reset - would split and drop be possible/useful?
backports as far back as 3.2 seem to be needed.
- breaking out all the compatability cruft to a separate file
would be good
codel5.h - I've longed to clean this up to make the state machine more
clear and to fit in 80 columns for years now
- we also still use 64 bit time - which I'd intended for the
never started cake_drop monitor and also
- because 32 bit wraparound gave me a headache.
- some notes in the file about differences from this and
published codel would be good
- can't we use the skb->timestamp nowadays rather than the
control block?
hashing on the mac address seems to be possible in the new dissect
api? How? mpls?
What proof do we have that 8 way set associative hash is efficient?
Would 4 way be OK?
How correct is the dynamic quantum scaling?
What is an optimal trade-off between the total number of flows, the
size of the hash, and bandwidth?
At 1GigE? 10GigE and higher?
Autosizing the memory limit is good only when bandwidth is specified.
Does a bandwidth 100mbit exactly = ethernet at 100Mbit? Is it better than BQL?
Should we be able to increase or decrease the number of flows in the API?
Is there a way to get away from act_mirred for inbound shaping and
stick cake in there directly?
How low can we cut the interval to in a DC scenario?
VPNs vs the Tin system?
Dave Täht
Let's go make home routers and wifi faster! With better software!
https://www.gofundme.com/savewifi
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Cake] cake coding comments
2015-11-19 8:55 [Cake] cake coding comments Dave Taht
@ 2015-11-19 10:23 ` Sebastian Moeller
2015-11-19 12:20 ` Kevin Darbyshire-Bryant
1 sibling, 0 replies; 4+ messages in thread
From: Sebastian Moeller @ 2015-11-19 10:23 UTC (permalink / raw)
To: Dave Täht; +Cc: cake
Hi Dave,
On Nov 19, 2015, at 09:55 , Dave Taht <dave.taht@gmail.com> wrote:
> I sat down to try and think outside the boxes we are in...
>
> dropping: Dropping an 3+ packet TSO "superpacket" will cause a tcp
> reset - would split and drop be possible/useful?
>
> backports as far back as 3.2 seem to be needed.
>
> - breaking out all the compatability cruft to a separate file
> would be good
>
>
> codel5.h - I've longed to clean this up to make the state machine more
> clear and to fit in 80 columns for years now
>
> - we also still use 64 bit time - which I'd intended for the
> never started cake_drop monitor and also
>
> - because 32 bit wraparound gave me a headache.
>
> - some notes in the file about differences from this and
> published codel would be good
>
> - can't we use the skb->timestamp nowadays rather than the
> control block?
>
>
> hashing on the mac address seems to be possible in the new dissect
> api? How? mpls?
>
>
> What proof do we have that 8 way set associative hash is efficient?
> Would 4 way be OK?
>
>
> How correct is the dynamic quantum scaling?
>
>
> What is an optimal trade-off between the total number of flows, the
> size of the hash, and bandwidth?
>
> At 1GigE? 10GigE and higher?
>
>
> Autosizing the memory limit is good only when bandwidth is specified.
>
>
> Does a bandwidth 100mbit exactly = ethernet at 100Mbit? Is it better than BQL?
That one is easy: out of the box no "bandwidth 100mbit” will not work as well as it should, especially with smallish packets saturating the link. Close to actual line rate one needs to account for the real on wire size as accounted against the link’s brutto bandwidth, with fast ethernet the 14 Bytes the kernel ads just do not cut it… thanks to Kevin’s work we have keywords to request that cake accounts for the whole per packet overhead (see ether-all which still assumes that the kernel added the 14 bytes “mac-header”). BQL seems better in that it does not care about these details , but keeps the NICs buffer small when the buffer is serviced BQL will allow to re-fill it, so BQL should also work well for avian carriers in a simpler more efficient way than cake. I guess in the and cake does more and is hence better than pure BQL but on slow machines BQL alone should keep a line rate link well controlled.
>
>
> Should we be able to increase or decrease the number of flows in the API?
>
> Is there a way to get away from act_mirred for inbound shaping and
> stick cake in there directly?
>
> How low can we cut the interval to in a DC scenario?
>
> VPNs vs the Tin system?
A VPN by choice multiplexes flows over a smaller set of flows and hence will not efficiently use the different Tins. If we allow passing of the internal markings to the tunnel packet header we really really should squash these on exit from our DSCP domain not to divulge information about the encapsulated connection (ECN is different in that we collect this information from outside our domain anyway, and we really should pass ECN marking onto the packets after decapsulation, but I digress)
Best Regards
Sebastian
>
>
>
> Dave Täht
> Let's go make home routers and wifi faster! With better software!
> https://www.gofundme.com/savewifi
> _______________________________________________
> Cake mailing list
> Cake@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cake
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Cake] cake coding comments
2015-11-19 8:55 [Cake] cake coding comments Dave Taht
2015-11-19 10:23 ` Sebastian Moeller
@ 2015-11-19 12:20 ` Kevin Darbyshire-Bryant
2015-11-19 12:24 ` Dave Taht
1 sibling, 1 reply; 4+ messages in thread
From: Kevin Darbyshire-Bryant @ 2015-11-19 12:20 UTC (permalink / raw)
To: cake
[-- Attachment #1: Type: text/plain, Size: 328 bytes --]
On 19/11/15 08:55, Dave Taht wrote:
> I sat down to try and think outside the boxes we are in...
>
>
> How low can we cut the interval to in a DC scenario?
1usec floor. Specifying an rtt of 20usec would set interval to 20usec
and target to 1usec. 'datacentre' currently sets target to 5usec,
interval 100usec.
[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4816 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Cake] cake coding comments
2015-11-19 12:20 ` Kevin Darbyshire-Bryant
@ 2015-11-19 12:24 ` Dave Taht
0 siblings, 0 replies; 4+ messages in thread
From: Dave Taht @ 2015-11-19 12:24 UTC (permalink / raw)
To: Kevin Darbyshire-Bryant; +Cc: cake
In other news I just took a hack and slash through tc output. Which
could use more hacking and slashing.
http://pastebin.com/xWZViMDP for those of you with proportional fonts in email.
root@snapon:~/git/tc-adv/tc# ./tc -s qdisc show dev eno1
qdisc cake 8004: root refcnt 2 unlimited diffserv4 flows rtt 100.0ms raw
Sent 7274837008 bytes 4911119 pkt (dropped 0, overlimits 0 requeues 39977)
backlog 0b 0p requeues 39977
memory used: 625850b of 15140Kb
capacity estimate: 841462Kbit
Tin 0 Tin 1 Tin 2 Tin 3
thresh 0bit 0bit 0bit 0bit
target 5.0ms 5.0ms 5.0ms 5.0ms
interval 100.0ms 100.0ms 100.0ms 100.0ms
pk_delay 1.4ms 871us 0us 387us
av_delay 524us 369us 0us 203us
sp_delay 5us 13us 0us 1us
pkts 115935 177925 1 632990
bytes 171360140b 264615514b 1008b 953769597b
way_inds 0 0 0 0
way_miss 9 86 1 15
way_cols 0 0 0 0
drops 0 0 0 0
marks 10 1 0 0
sp_flows 0 1 1 0
bk_flows 3 2 0 1
last_len 66 66 1008 18168
max_len 68130 68130 1008 68130
On Thu, Nov 19, 2015 at 1:20 PM, Kevin Darbyshire-Bryant
<kevin@darbyshire-bryant.me.uk> wrote:
>
>
> On 19/11/15 08:55, Dave Taht wrote:
>> I sat down to try and think outside the boxes we are in...
>>
>>
>> How low can we cut the interval to in a DC scenario?
> 1usec floor. Specifying an rtt of 20usec would set interval to 20usec
> and target to 1usec. 'datacentre' currently sets target to 5usec,
> interval 100usec.
hmm.
>
>
> _______________________________________________
> Cake mailing list
> Cake@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cake
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-11-19 12:24 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-19 8:55 [Cake] cake coding comments Dave Taht
2015-11-19 10:23 ` Sebastian Moeller
2015-11-19 12:20 ` Kevin Darbyshire-Bryant
2015-11-19 12:24 ` Dave Taht
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox