From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Taht Subject: Re: [PATCH net-next v6] Add Common Applications Kept Enhanced (cake) qdisc Date: Mon, 30 Apr 2018 14:27:44 -0700 Message-ID: References: <20180429213439.7389-1-toke@toke.dk> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Cc: =?UTF-8?B?VG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2Vu?= , Linux Kernel Network Developers , Cake List To: Cong Wang Return-path: Received: from mail-qt0-f169.google.com ([209.85.216.169]:34487 "EHLO mail-qt0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754903AbeD3V1p (ORCPT ); Mon, 30 Apr 2018 17:27:45 -0400 Received: by mail-qt0-f169.google.com with SMTP id m5-v6so12670966qti.1 for ; Mon, 30 Apr 2018 14:27:45 -0700 (PDT) In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: On Mon, Apr 30, 2018 at 2:21 PM, Cong Wang wrote= : > On Sun, Apr 29, 2018 at 2:34 PM, Toke H=C3=B8iland-J=C3=B8rgensen wrote: >> 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 20Mbit nat docsis ack-filter >> >> To shape a cable download link (ifb and tc-mirred setup elided) >> >> tc qdisc add dev ifb0 cake bandwidth 200mbit nat docsis ingress wash >> >> CAKE is filled with: >> >> * A hybrid Codel/Blue AQM algorithm, "Cobalt", tied to an FQ_Codel >> derived Flow Queuing system, which autoconfigures based on the bandwid= th. >> * A novel "triple-isolate" mode (the default) which balances per-host >> and per-flow FQ even through NAT. >> * An deficit based shaper, that can also be used in an unlimited mode. >> * 8 way set associative hashing to reduce flow collisions to a minimum. >> * A reasonable interpretation of various diffserv latency/loss tradeoffs= . >> * Support for zeroing diffserv markings for entering and exiting traffic= . >> * Support for interacting well with Docsis 3.0 shaper framing. >> * Extensive support for DSL framing types. >> * Support for ack filtering. > > Why this TCP ACK filtering has to be built into CAKE qdisc rather than > an independent TC filter? Why other qdisc's can't use it? I actually have a tc - bpf based ack filter, during the development of cake's ack-thinner, that I should submit one of these days. It proved to be of limited use. Probably the biggest mistake we made is by calling this cake feature a filter. It isn't. Maybe we should have called it a "thinner" or something like that? In order to properly "thin" or "reduce" an ack stream you have to have a queue to look at and some related state. TC filters do not operate on queues, qdiscs do. Thus the "ack-filter" here is deeply embedded into cake's flow isolation and queue structures. > > >> * Extensive statistics for measuring, loss, ecn markings, latency >> variation. >> >> A paper describing the design of CAKE is available at >> https://arxiv.org/abs/1804.07617 >> > > Thanks. --=20 Dave T=C3=A4ht CEO, TekLibre, LLC http://www.teklibre.com Tel: 1-669-226-2619