From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.toke.dk (mail.toke.dk [52.28.52.200]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 276843BA8E for ; Sat, 28 Jul 2018 14:17:52 -0400 (EDT) Date: Sat, 28 Jul 2018 20:17:46 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=toke.dk; s=20161023; t=1532801870; bh=HXGXjUa8qMdDxZNZZ7vZXK+GCVu2gnQSWvxAAhoBYLc=; h=Date:In-Reply-To:References:Subject:To:CC:From:From; b=raEbQQ28mfmvgU84e21I9NTxyIFgbXrnw6gNpGOPfxltHGDbxkXVDhMIkRqHnA556 fc/oFeBzioHcUSp2uNXofJrOFW8OLTStvJQKoD60tJpfEE9EQ0UstqoFF1gyTMj+0V Q1T4IWS2bp3dkHxcdegRqbWf4IcmJS4lETXNrGWZdwVOLXsnxRUQmKkUZ8riNu0Nv9 NHlHU6usjNA+17eUFxJi9NrE6rarc5Rvk6/QPxOmgpFS8YeB/c67VnZM8AWwv1IN1I ULHwYcBmQZe89zZJAZE1+Mos/yRCHaGzNaWQgy75o8LJcLxpEnq0D5+1c7QHlxlwZv 0LeLPtaUVpbyA== In-Reply-To: References: <1357421162.31089.1531812291583@webmail.strato.de> <1c323544b3076c0ab31b887d6113f25f572e41ae.camel@coverfire.com> <87woth28rw.fsf@toke.dk> <87tvol1z6h.fsf@toke.dk> <87wotfzql8.fsf@toke.dk> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable To: Jonathan Morton ,Pete Heist CC: Cake List From: =?ISO-8859-1?Q?Toke_H=F8iland-J=F8rgensen?= X-Clacks-Overhead: GNU Terry Pratchett Message-ID: <5F8BDB55-E8D2-4815-89C3-4FA1B11988B6@toke.dk> Subject: Re: [Cake] =?utf-8?q?Using_cake_to_shape_1000=E2=80=99s_of_users=2E?= X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Jul 2018 18:17:52 -0000 On 28 July 2018 19:53:58 CEST, Jonathan Morton w= rote: >>> Note that with the existing tc classifier stuff we already added to >>> Cake, we basically have this already (eBPF can map traffic to tin >and >>> flow however it pleases)=2E >>=20 >> Sorry, this just jostled in my brain now that I may be able to >implement member fairness today, based on what you wrote earlier in a >thread that I entirely missed: >https://lists=2Ebufferbloat=2Enet/pipermail/cake/2018-May/003811=2Ehtml >>=20 >> George posted an example of assigning packets to a tin: >https://lists=2Ebufferbloat=2Enet/pipermail/cake/2018-May/003809=2Ehtml >>=20 >> How does one send packets to a specific flow / queue? > >The trouble here is that there's only 8 tins max in Cake=2E At that >level selection is done with a linear search, which doesn't scale up, >but is efficient for N=3D8=2E =20 Yeah, but replacing that with an rbtree should be straight forward=2E > The flow mapping is hardcoded for speed >with no override hook, because no consumer needs custom mapping of this >sort=2E Getting this to work is probably the most work, actually=2E I guess the 't= c class' config would be the obvious way to do express this, API-wise=2E >Fixing these problems to make them more ISP-friendly necessarily makes >it less consumer-friendly=2E Hence the new project=2E Much code can be >reused=2E If more features are needed, perhaps=2E=2E=2E But for just adding more cla= sses I don't actually think it has to impact the UX for the current use cas= es=2E The existing keywords could be retained and map to the same configs= =2E -Toke