Hi, I’m trying to set up QoS with CAKE and it’s logical exercise I’m failing at…
I have two queues, one for download and one for upload, then I have two magle rules and I’m marking packets download/upload.
It is working fine for internet traffic and I’m getting very nice numbers from bufferbload test. Unfortunately it’s also limiting my LAN traffic and I can not wrap my head around it, when I can use only IN interfaces.
If I try to move things over LAN, the upload queue is active and limiting the transfer speed.
I won’t comment on your config from a general perspective as there may be other things to organize/cleanup but to answer your question directly. The following rules are not specific enough, you are marking all traffic that is coming in from the WAN interface to any destination (which can only be any other network, in your case this is LAN) as download. This may be fine for your situaiton but I would argue you want to add an “out-interface” filter to ensure you are only makring packets that are trully considered downloading. Similarly you are marking all packets that are originating from your LAN network (in-interface = LAN) to any destination as upload. This would be true in the case you never had LAN → LAN traffic (often called east - west traffic). This is why you are experiencing the issue you are facing, to fix it, simply do the below.
The question I have is why are you mangling or queueing at all…
You have nothing different in either direction… all incoming traffic goes to entire LAN, all outgoing traffic comes from entire LAN.
Okay! Its about bufferbloat.
For me I would have to weigh any advantage of bufferebloat over the loss in throughput due to losing fastrack ???
You only need Mangling for advanced queue tree menu is what I read, so SIMPLE queues should be possible without mangling!
I understand where is the issue, but couldn’t find way around it, maybe little bit of tunnel vision, because I was focused on OUT interfaces but you can not use OUT interfaces with prerouting.
Anyway I think that I found solution, I can use DST address list even with prerouting.
So I’d suggest attaching the tree to the interfaces and not on root. According to your interface list use the following WAN interfaces (egress) and to your bridge (ingress). Remove the mangle rules for your custom packet marks. Marking packets only works with fasttrack disabled!
IMHO you don’t need to attach a tree on pppoe-out1 as it goes through ether2 ultimately. Tune your egress queue according to your available bandwidth on lte1/ether2.
That’s what I’m thinking about, I have slow link 25/5 and fast CPU (hAP ax3) so It’s better for me to use queues? Because I don’t have any throughput anyway?
BTW, I knew that you will understand me:
Going to try that… LTE is just backup with FUP limit, normaly not in use, it’s mainly for smart home connectivity. And ether2 is there so I can connect to VDSL modem for configuration.
pppoe is fine, that’s what I need, ether2 itself is used only for modem interface.
Your setup is working fine for internet traffic, but now the LAN traffic is limited by download queue (bridge1). That’s probably why I ended up with magle rules.
BTW, is it possible to put another queue over that to prioritize VOIP?
A bit off topic, not specific to OPs question, but wouldn’t the best way to mangle for cake be to add DSCP marks, since cake supports various diffserv groups out of the box?
Below are some flent rrul tests.
First image is my standard cake setup using queue types with:
As you can see cake does a great job of queuing and prioritising traffic that has DSCP marks (which flent is adding in these examples).
I fall flat trying to set up mangling properly, but I’d love it if someone could provide some mangle rules to mark DSCP according to cakes diffserv buckets.
I tried similar setup on 1Gbe/100Mbe Internet connection. I had traffic shaping, prioritizing, fasttrack off. Otherwise, global queues don’t work. I did never find out how to manage QoS/prio with fasttrack. It seems to be impossible so far. There is a solution to get running only interface hw queues + DSCP/TOS, but who knows…queues get less traffic because it is fasttracked.
Sadly, my Chateau LTE 12 router manages only 100 Mbps with advanced firewall