Cake - FQ_codel the next generation
 help / color / mirror / Atom feed
From: John Sager <john@sager.me.uk>
To: Peter Lepeska <bizzbyster@gmail.com>
Cc: cake@lists.bufferbloat.net
Subject: Re: [Cake] Enforcing video quality question
Date: Fri, 19 Feb 2021 19:04:43 +0000	[thread overview]
Message-ID: <faa1600e-d040-2741-9335-fdf17e32f11b@sager.me.uk> (raw)
In-Reply-To: <CANmPAYF7SEwWUOpj7S3riHufHDm2QtqSjWq8F-+rGJnRk=3xZw@mail.gmail.com>

Yes. The marks are set on egress so you can select on inside IP address, 
port, protocol - in fact many characteristics that iptables rules can test 
for. I'll put together a toy iptables rules file and a toy script with the 
necessary tc commands. It'll take me a few days though as I'm busy with 
other stuff currently.

PS does the cake list allow attachments? It will be a small zip file.

John

On 19/02/2021 15:02, Peter Lepeska wrote:
> 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 <john@sager.me.uk 
> <mailto:john@sager.me.uk>> 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øiland-Jørgensen via Cake wrote:
>      > Peter Lepeska <bizzbyster@gmail.com <mailto: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 goes
>      > 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-CoDel
>      > on the leaves, you'll get a nice AQM behaviour as well), so that will be
>      > smoother and less prone to bloat :)
>      >
>      > -Toke
>      > _______________________________________________
>      > Cake mailing list
>      > Cake@lists.bufferbloat.net <mailto:Cake@lists.bufferbloat.net>
>      > https://lists.bufferbloat.net/listinfo/cake
>      >
>     _______________________________________________
>     Cake mailing list
>     Cake@lists.bufferbloat.net <mailto:Cake@lists.bufferbloat.net>
>     https://lists.bufferbloat.net/listinfo/cake
> 

  reply	other threads:[~2021-02-19 19:04 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-18 17:40 Peter Lepeska
2021-02-18 19:10 ` Toke Høiland-Jørgensen
2021-02-18 19:13   ` Peter Lepeska
2021-02-18 19:28     ` Toke Høiland-Jørgensen
2021-02-18 19:43       ` Peter Lepeska
2021-02-18 19:55         ` N0man Tech
2021-02-18 22:05           ` John Yates
2021-02-19 12:16       ` John Sager
2021-02-19 15:02         ` Peter Lepeska
2021-02-19 19:04           ` John Sager [this message]
2021-02-19 20:33             ` Peter Lepeska
2021-02-19 23:06               ` John Sager
2021-02-19 23:26                 ` Jeremy Marks
2021-02-20 11:53                 ` Toke Høiland-Jørgensen
2021-02-20 15:09                   ` John Sager
2021-02-20 11:54             ` Toke Høiland-Jørgensen
2021-02-23 11:15             ` John Sager
2021-02-23 20:37               ` Peter Lepeska
2021-02-23 20:52               ` Jeremy Marks

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.bufferbloat.net/postorius/lists/cake.lists.bufferbloat.net/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=faa1600e-d040-2741-9335-fdf17e32f11b@sager.me.uk \
    --to=john@sager.me.uk \
    --cc=bizzbyster@gmail.com \
    --cc=cake@lists.bufferbloat.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox