Re: [Cake] Hopefully fixed ACK filter for v6

2018-05-04 Thread Jonathan Morton
>> I certainly am thankful for your work, and believe you deserve $CAKE >> and $BEVERAGE, I am also leaf to believe 'the cake is a lie' >> https://m.youtube.com/watch?v=qdrs3gr_GAs ;) > > Haha, yes, of course I am aware that the cake really is a lie. Which > makes us in league with GLADOS, I

Re: [Cake] [PATCH net-next v8 1/7] sched: Add Common Applications Kept Enhanced (cake) qdisc

2018-05-04 Thread Toke Høiland-Jørgensen
Thank you for the review! A few comments below, I'll fix the rest. > [...] > > So sch_cake doesn't accept normal tc filters? Is this intentional? > If so, why? For two reasons: - The two-level scheduling used in CAKE (tins / diffserv classes, and flow hashing) does not map in an obvious way

[Cake] [PATCH net-next v8 3/7] sch_cake: Add optional ACK filter

2018-05-04 Thread Toke Høiland-Jørgensen
The ACK filter is an optional feature of CAKE which is designed to improve performance on links with very asymmetrical rate limits. On such links (which are unfortunately quite prevalent, especially for DSL and cable subscribers), the downstream throughput can be limited by the number of ACKs

[Cake] [PATCH net-next v8 4/7] sch_cake: Add NAT awareness to packet classifier

2018-05-04 Thread Toke Høiland-Jørgensen
When CAKE is deployed on a gateway that also performs NAT (which is a common deployment mode), the host fairness mechanism cannot distinguish internal hosts from each other, and so fails to work correctly. To fix this, we add an optional NAT awareness mode, which will query the kernel conntrack

[Cake] [PATCH net-next v8 5/7] sch_cake: Add DiffServ handling

2018-05-04 Thread Toke Høiland-Jørgensen
This adds support for DiffServ-based priority queueing to CAKE. If the shaper is in use, each priority tier gets its own virtual clock, which limits that tier's rate to a fraction of the overall shaped rate, to discourage trying to game the priority mechanism. CAKE defaults to a simple,

[Cake] [PATCH net-next v8 1/7] sched: Add Common Applications Kept Enhanced (cake) qdisc

2018-05-04 Thread Toke Høiland-Jørgensen
sch_cake targets the home router use case and is intended to squeeze the most bandwidth and latency out of even the slowest ISP links and routers, while presenting an API simple enough that even an ISP can configure it. Example of use on a cable ISP uplink: tc qdisc add dev eth0 cake bandwidth

[Cake] [PATCH net-next v8 7/7] sch_cake: Conditionally split GSO segments

2018-05-04 Thread Toke Høiland-Jørgensen
At lower bandwidths, the transmission time of a single GSO segment can add an unacceptable amount of latency due to HOL blocking. Furthermore, with a software shaper, any tuning mechanism employed by the kernel to control the maximum size of GSO segments is thrown off by the artificial limit on

[Cake] [PATCH net-next v8 2/7] sch_cake: Add ingress mode

2018-05-04 Thread Toke Høiland-Jørgensen
The ingress mode is meant to be enabled when CAKE runs downlink of the actual bottleneck (such as on an IFB device). The mode changes the shaper to also account dropped packets to the shaped rate, as these have already traversed the bottleneck. Enabling ingress mode will also tune the AQM to

[Cake] Merged the simplified ACK filter...

2018-05-04 Thread Toke Høiland-Jørgensen
...since no one complained. If no one continues to complain, I'll resubmit to net-next with that version later today :) -Toke ___ Cake mailing list Cake@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/cake