From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com [IPv6:2a00:1450:4864:20::22a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 77FF83B2A4 for ; Fri, 19 Feb 2021 10:02:29 -0500 (EST) Received: by mail-lj1-x22a.google.com with SMTP id e17so22058121ljl.8 for ; Fri, 19 Feb 2021 07:02:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=O0hjxI/qlY/jc0m054S5NZpTJbUQ7uO+tFOjpXvKSSc=; b=k72tkp/DuZwgAu2uWeFhiJMzmQLpkcNu4kLi6JLJQbTf9M3E/CP8/90HNvcn3giR18 3kSZr8jeZ6JIpHu7hljsF0n1vIyKUqQG5lRIoQYwH1TPU5tvSasdK7tIgy/r+yraS7iH 5/JfUgqAhZ7uFtMLCvk6cCI7buWRVFWASXzAXAPRyalnKeEa9RNkYqcbbWyeiMxm6mxn uDtExIRfaZE8H62BBmaRGgZ0DF9GdQSbNAvq8xZjAfYs/ICQN4XO+OqybHnf+laLmr/q b6QPNXvkK6QScAwYrVy8DzYF6QeBOIM63mZOPqDo3aEuZqGP9ZYrICDnAUrPsYywtnSB vJBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=O0hjxI/qlY/jc0m054S5NZpTJbUQ7uO+tFOjpXvKSSc=; b=tJDqWjstMSoolczAmMHbFqhGsYprfdgyx2DfCzQSWuJKilrnaS7DteTU5rWToTGRQf wup5TJgUjaUv9Jo+Gumf7WM1e7uthDViOZlgUmlWSfMJzsCoY1DGyPJWwdmDc2fX2/FA MHGrdPYDpgspXw+BQWUFJORdAdWs0S+rm9ycD2Fay7kWMD8+KwHKwpd11hOGIb9mhwDw PSSz995EwGPq+jaARHlPg7oU8ZSi+uNjz8a6J8l7sS4Dyp/kKJvtjI0Ty0Li4Q+B5P1u kclcXuC1gwtR3CFYzbGJBCUqjJZtBleWbAYhByMoE+Q1Y3ogq8GhHd6LP7oXtEVjv1IH Xl3Q== X-Gm-Message-State: AOAM532PFpzRHxffN/5xm3Sa6wHjK7o8JDmOr44ZZWKHionZwvWFnfsm F2JHPMq/fpgCfKECLvnmbpCo5wqM9g9spgEpg4rA0Dk6zHs= X-Google-Smtp-Source: ABdhPJzwKNfgJ6uqoam0PT7Lngu9qzj1xTzgSTREygC/+YVFEB4Jw5qouI5dI4zDLEMs7rzvjg1AiWzJyifeJ/7V40A= X-Received: by 2002:ac2:42d3:: with SMTP id n19mr6099958lfl.447.1613746948015; Fri, 19 Feb 2021 07:02:28 -0800 (PST) MIME-Version: 1.0 References: <87mtw1kx9c.fsf@toke.dk> <87im6pkweq.fsf@toke.dk> <9a889d98-0fae-d1af-6dea-c534f0df854a@sager.me.uk> In-Reply-To: <9a889d98-0fae-d1af-6dea-c534f0df854a@sager.me.uk> From: Peter Lepeska Date: Fri, 19 Feb 2021 10:02:16 -0500 Message-ID: To: john@sager.me.uk Cc: cake@lists.bufferbloat.net Content-Type: multipart/alternative; boundary="000000000000980d5d05bbb1bd8d" Subject: Re: [Cake] Enforcing video quality question 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: Fri, 19 Feb 2021 15:02:29 -0000 --000000000000980d5d05bbb1bd8d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi John Does this result in the ability to set per internal host max ingress bandwidth? If so, any chance you can share a snippet of a script? I will be trying to reproduce your setup. Thank you! Peter On Fri, Feb 19, 2021 at 7:16 AM John Sager wrote: > That's basically what I do. I set marks on outgoing traffic in the mangle > table which are copied to connmark before egress. Then on ingress the > connmark is restored to the packet and punted to ifb0 using 'action > connmark > action mirred egress redirect dev $IFB' as an ingress filter on the > incoming > interface (ppp0 in my case). Then I have HTB classes on ifb0 which set > rate > limits for different traffic classes indicated by the marks. I have only = 6 > traffic classes (I bundle all video into one class), but as marks are 32 > bits wide there is lots of scope for classes for individual IP addresses. > > John > > On 18/02/2021 19:28, Toke H=C3=B8iland-J=C3=B8rgensen via Cake wrote: > > Peter Lepeska writes: > > > >> A user on the OpenWrt forum suggested hashlimit rules supported by > >> iptables. How does that idea sound to you? > > > > That will result in a cliff-edge policer (i.e., as soon as a device goe= s > > over its limits it will see every packet get dropped). This doesn't > > interact too well with the burstiness of TCP, so you'll likely get > > erratic behaviour of the traffic if you do that. Doing the same thing > > with HTB means the router will queue+shape each class (and with FQ-CoDe= l > > on the leaves, you'll get a nice AQM behaviour as well), so that will b= e > > smoother and less prone to bloat :) > > > > -Toke > > _______________________________________________ > > Cake mailing list > > Cake@lists.bufferbloat.net > > https://lists.bufferbloat.net/listinfo/cake > > > _______________________________________________ > Cake mailing list > Cake@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/cake > --000000000000980d5d05bbb1bd8d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi John

Does this=C2=A0result in the ab= ility to set per internal host max ingress bandwidth? If so, any chance you= can share a snippet of a script? I will be trying to reproduce your setup.=

Thank you!

Peter

On= Fri, Feb 19, 2021 at 7:16 AM John Sager <john@sager.me.uk> wrote:
That's basically what I do. I set marks on outgoi= ng traffic in the mangle
table which are copied to connmark before egress. Then on ingress the
connmark is restored to the packet and punted to ifb0 using 'action con= nmark
action mirred egress redirect dev $IFB' as an ingress filter on the inc= oming
interface (ppp0 in my case). Then I have HTB classes on ifb0 which set rate=
limits for different traffic classes indicated by the marks. I have only 6 =
traffic classes (I bundle all video into one class), but as marks are 32 bits wide there is lots of scope for classes for individual IP addresses.
John

On 18/02/2021 19:28, Toke H=C3=B8iland-J=C3=B8rgensen via Cake wrote:
> Peter Lepeska <bizzbyster@gmail.com> writes:
>
>> A user on the OpenWrt forum suggested hashlimit rules supported by=
>> iptables. How does that idea sound to you?
>
> That will result in a cliff-edge policer (i.e., as soon as a device go= es
> over its limits it will see every packet get dropped). This doesn'= t
> interact too well with the burstiness of TCP, so you'll likely get=
> erratic behaviour of the traffic if you do that. Doing the same thing<= br> > with HTB means the router will queue+shape each class (and with FQ-CoD= el
> on the leaves, you'll get a nice AQM behaviour as well), so that w= ill be
> smoother and less prone to bloat :)
>
> -Toke
> _______________________________________________
> Cake mailing list
> Cake@l= ists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cake
>
_______________________________________________
Cake mailing list
Cake@lists.= bufferbloat.net
https://lists.bufferbloat.net/listinfo/cake
--000000000000980d5d05bbb1bd8d--