From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mail.toke.dk; dkim=pass header.d=toke.dk; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=toke.dk policy.dmarc=reject From: Toke =?utf-8?Q?H=C3=B8iland-J=C3=B8rgensen?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=toke.dk; s=20161023; t=1771345965; bh=gxodG1cdWw9xOVsJpIPKXxiEuYReKothYgJj3m3e5U8=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=xM/G5cpYSL+oN3sAXnKkflEqNr6N1IO9K6kXWrQrw702fH10wdfgyE5vivXJ8itl2 f8tGnnq61/nEJPyjdsjWo2NKTjGOR0noLATUj6IEi8u92dqXdAYX0XhgD0Nqvuaiiw vmlRRnNx/bEauHqiFhnhmLU3pfVimXXk4UXyfauqatWqVgxSzBHQPvia9L9/JoOSWR erioxRGpz0enKkOesndy+BMsYGhTDqmNORpNkWv+n/DxYsqs4a1XG5U5sxN6KsbmEu cc6SlExBrscQXc4YrXE6EAX+pnClOPux7JA2xOFTm7pqIhtnTlxWSIFlFUnx296lC7 CD+86lz557cIA== To: Stephen Hemminger Cc: dave seddon , Frantisek Borsik , codel@lists.bufferbloat.net, bloat , Jeremy Austin via Rpm , Make-Wifi-fast , ryan@rkhtech.org In-Reply-To: <20260217063410.47b59cd8@phoenix.local> References: <87ecmjpkpj.fsf@toke.dk> <20260217063410.47b59cd8@phoenix.local> Date: Tue, 17 Feb 2026 17:32:46 +0100 X-Clacks-Overhead: GNU Terry Pratchett Message-ID: <878qcrpbyp.fsf@toke.dk> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Message-ID-Hash: HG5KPWXM5PAQXWN5NA5GRYMLTG7Q5EQX X-Message-ID-Hash: HG5KPWXM5PAQXWN5NA5GRYMLTG7Q5EQX X-MailFrom: toke@toke.dk X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list Subject: [Codel] Re: [Cake] Re: [Bloat] Re: CAKE-MQ merged to OpenWrt 25.12 today (February 15) List-Id: CoDel AQM discussions Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Stephen Hemminger writes: > On Tue, 17 Feb 2026 14:23:52 +0100 > Toke H=C3=B8iland-J=C3=B8rgensen via Cake wr= ote: > >> dave seddon writes: >>=20 >> > =3D=3D=3D Pre-flight Complete =3D=3D=3D >> > Running 6 test points >> > >> > [1/6] qdisc=3Dfq_codel flows=3D1 tool=3Diperf2 >> > Switching qdisc to fq_codel... >> > Throughput: 9.41 Gbps >> > [2/6] qdisc=3Dfq_codel flows=3D10 tool=3Diperf2 >> > Throughput: 9.43 Gbps >> > [3/6] qdisc=3Dcake flows=3D1 tool=3Diperf2 >> > Switching qdisc to cake... >> > Throughput: 6.93 Gbps >> > [4/6] qdisc=3Dcake flows=3D10 tool=3Diperf2 >> > Throughput: 4.37 Gbps <---- cake >> > [5/6] qdisc=3Dmq-cake flows=3D1 tool=3Diperf2 >> > Switching qdisc to mq-cake... >> > Throughput: 7.17 Gbps >> > [6/6] qdisc=3Dmq-cake flows=3D10 tool=3Diperf2 >> > Throughput: 9.44 Gbps <----- >> > mq-cake ... Actually, that's interesting. higher than fq_codel=20=20 >>=20 >> Are you running fq_codel as the root qdisc? Because in that case you're >> running through the single qdisc lock, which could explain the >> difference. Try running separate fq_codel instances beneath an 'mq' >> qdisc as the root. >>=20 >> Also, if you're not setting a shaping rate, cake_mq is basically the >> same as just installing an mq qdisc at the root and having separate cake >> instances beneath that. So to test the multi-core shaper algorithm >> you'll need to set a rate ('bandwidth' parameter). >>=20 > > This is what the OpenWrt SQM scripts seem to favor. > I probably need to tune the adaption overhead > > # tc qdisc show dev wan > qdisc htb 1: root refcnt 2 r2q 10 default 0x12 direct_packets_stat 0 dire= ct_qlen 1000 > qdisc fq_codel 120: parent 1:12 limit 1001p flows 1024 quantum 300 target= 5ms interval 100ms memory_limit 4Mb drop_batch 64=20 > qdisc fq_codel 130: parent 1:13 limit 1001p flows 1024 quantum 300 target= 5ms interval 100ms memory_limit 4Mb drop_batch 64=20 > qdisc fq_codel 110: parent 1:11 limit 1001p flows 1024 quantum 300 > target 5ms interval 100ms memory_limit 4Mb drop_batch 64 If you set 'script' to 'layer_cake.qos' or 'piece_of_cake.qos' in the config, you'll get a CAKE setup instead. On OpenWrt 25.12 (still in -rc) this will automatically select cake_mq where the system supports it. > It is dumb that in US it is standard to offer 1G down and 10M up! Yes, very. Don't think it's actually possible to use that 1G link with TCP without ACK thinning of some kind. The full-MTU-to-ACK ratio is ~47 (1500/32; this is assuming one 64-byte ACK for every two 1500-byte packets), so you can only use ~470 Mbps downstream with 10M up. CAKE's ACK thinning should help here, but you need to turn that on explicitly by adding 'ack-filter' to eqdisc_opts in the config. -Toke