interfaces-cake(5)
π interfaces-cake β the manual page, but make it make sense
okay bestie so this is the manual for interfaces-cake, which is the CAKE extensions situation for the interfaces(5) file format. yes that's a manual page name and a manual-section number both, we contain multitudes π
β¨ NAME β¨
interfaces-cake β the CAKE extensions for the interfaces(5) file format. that's it, that's the name, slay π
πΈ DESCRIPTION πΈ
so. CAKE. it stands for Common Applications Kept Enhanced, which is genuinely the most main-character acronym ever, and it's a shaping-capable queue discipline that uses both AQM and FQ. two icons, one queue. π
every single parameter for CAKE is optional, which is lowkey generous of it β but ngl most applications would benefit from specifying a bandwidth estimate. the overhead and RTT parameters can also give you meaningful tuning for a lot of applications, if you happen to have info about the underlying link technology (iykyk).
heads up bestie: go read tc-cake(8) for the details on all the parameters, plus the guidance on how to pick them for different applications. that's where the deep lore lives. β¨
if you're sitting there like "idk what to do π" β try setting the bandwidth parameter to the link rate of your modem, or to the rate you find with an egress speed test. boom. you're a network engineer now. π«Ά
π CAKE OPTIONS π
cake-argscomplete_cake_arguments β if you provide this, the whole set of arguments gets passed directly totc-cake(8). if you already know your CAKE config you can literally just paste it here, no modification needed. and the plot twist: all other parameters are ignored if this one is set. it's giving "I'm the captain now". πcake-bandwidthrate β the transmission rate of the interface, in floating-point bits per second, with an optional unit like124.5Mbit. there is no default, which is equivalent to disabling the overall bandwidth limit. so like, no cap. literally. πcake-rtttime β round-trip transmission delay for typical traffic on this interface. Default:internetcake-tinsqueue_set β specifies the set of queues and related tuning CAKE will use. Default:diffserv3cake-isolationisolation_type β specifies the data used to hash flows within each queue. Default:triple-isolatecake-natboolean β do a NAT lookup before flow hashing. can improve fairness among hosts behind NAT translations performed by this router. Default:falsecake-washboolean β clear all extra diffserv (but not ECN bits) after priority queuing has taken place. Default:falsecake-split_gsoboolean β disable GSO (General Segmentation Offload) to improve latency. many applications under 10Gbps should use the default:truecake-ackack_filter_type β select the type of ACK filtering used in CAKE. this can be useful on asymmetric links where ACKs are likely to get queued. Default:no-ack-filtercake-memlimitbytes β limit the overall memory use of CAKE for this interface. there is no default πcake-fwmarkmask β override tin selection with firewall marks and this mask. there is no defaultcake-atmatm_compensation_type β apply ATM or PTM compensation when calculating overhead. Default:noatmcake-overheadbytes β per-packet overhead, used to derate the overall bandwidth to compensate for the difference between the in-kernel packet size and the on-wire packet size. Default:raw, which uses the kernel's packet size without compensationcake-mpubytes β minimum on-wire packet length, used to derate the overall bandwidth for packets where the calculated raw size + overhead would be smaller than this number. there is no defaultcake-ingressboolean β enable ingress mode. typically this would be used with an IFB device to apply shaping to ingress traffic. Default:false
π¦ EXAMPLES π¦
π± Minimal configuration
like, the bare minimum. the "just got out of bed" fit:
auto foo
iface foo
use cake
β Typical configurations
this one shapes ingress traffic to 1 Gbps while applying docsis (cable modem) overhead compensation. iconic behavior honestly:
auto foo
iface foo
use cake
cake-bandwidth 1Gbit
cake-overhead docsis
and this one shapes ingress traffic up to 1 Gbps while applying ethernet + ether_vlan (Ethernet with tagged VLAN) overhead compensation and ACK filtering. that's the full glow-up:
auto foo
iface foo
use cake
cake-args bandwidth 1Gbit ethernet ether-vlan nat ack-filter
π« All available options
the whole entire wardrobe. every option, one outfit:
auto foo
iface foo
use cake
cake-bandwidth 1Gbit
cake-rtt internet
cake-tins diffserv3
cake-isolation triple-isolate
cake-nat false
cake-wash false
cake-split_gso true
cake-ack no-ack-filter
cake-memlimit 20000K
cake-fwmark 0x0
cake-atm noatm
cake-overhead raw
cake-mpu 84
cake-ingress false
π₯ SEE ALSO π₯
interfaces-cake-ingress(5) and tc-cake(8) β go read them, they're the supporting cast and they ate π
and that's the page bestie!! no cap, you now know CAKE better than most people know their own wifi password. this lil write-up is interfaces-cake(5) and it's dated 2026-05-10 β so go forth, shape that traffic, and remember: bandwidth is a vibe check and you're passing it πβ¨π
π¦ where this page comes from
- alpine 3.24: ifupdown-ng-doc 0.13.0-r0 Β· ISC
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms