On 4/23/20 4:24 PM, Noah Meyerhans wrote:
On Thu, Apr 23, 2020 at 03:34:06PM -0700, Matt Taggart wrote:
fq_codel is better in every way than pfifo_fast and I am unaware of any
reason why it would not be a better default. (but don't trust me, ask the
kernel networking experts)
Isn't CAKE supposed to be even better than fq_codel, including better
handling of both large numbers of flows (e.g. busy routers) and small
systems with limited resources.
https://www.bufferbloat.net/projects/codel/wiki/Cake/
If we consider a change (which I think we should), is there a reason we
wouldn't go with CAKE?
In net/sched/Kconfig, the options for NET_SCH_DEFAULT are:
fq, codel, fq_codel, sfq, pfifo_fast
Also Documentation/admin-guide/sysctl/net.rst explains:
default_qdisc
-------------
The default queuing discipline to use for network devices. This allows
overriding the default of pfifo_fast with an alternative. Since the
default queuing discipline is created without additional parameters so
is best suited to queuing disciplines that work well without
configuration like stochastic fair queue (sfq), CoDel (codel) or fair
queue CoDel (fq_codel). Don't use queuing disciplines like
Hierarchical Token Bucket or Deficit Round Robin which require setting
up classes and bandwidths. Note that physical multiqueue interfaces
still use mq as root qdisc, which in turn uses this default for its
leaves. Virtual devices (like e.g. lo or veth) ignore this setting and
instead default to noqueue.
CAKE, while better for AQM, requires interface specific parameters and
so won't work for a default (and also is generally used in conjunction
with fq_codel)
--
Matt Taggart
tagg...@debian.org