CakeQOS CakeQoS-Merlin v2.1.1

DJones

Senior Member
Did this go anywhere? Looks like the github is just openwrt
He probably didn’t get any takers and abandoned Merlin specifically. Can always reach out if you need it. Starlink is starting to become more popular so people might be interested. I know one person here a few weeks ago that was asking for this exact feature for starlink and cake.
 

rlj2

Senior Member
He probably didn’t get any takers and abandoned Merlin specifically. Can always reach out if you need it. Starlink is starting to become more popular so people might be interested. I know one person here a few weeks ago that was asking for this exact feature for starlink and cake.
Ill hit him up on openwrt forum. I had tried to port the script long time ago.. Was way above my skill level, seems like a kernel module was needed that isnt available on asus, and openwrt uses veth
 

Lynx

Senior Member
Happy to help. Absolutely no reason that I can think of why this couldn't be made to work on Asus Merlin, and I can't imagine it even requiring that much alteration to be made to work.

Perhaps someone could try downloading the script and accompanying config file and seeing what happens when you run and we can go from there?


It doesn't require veth (it has just been made to work with that where it is used).
 

rlj2

Senior Member
Happy to help. Absolutely no reason that I can think of why this couldn't be made to work on Asus Merlin, and I can't imagine it even requiring that much alteration to be made to work.

Perhaps someone could try downloading the script and accompanying config file and seeing what happens when you run and we can go from there?


It doesn't require veth (it has just been made to work with that where it is used).
heres a start:
[email protected]:/jffs/scripts# ./cake-autorate.sh
./cake-autorate.sh: line 198: syntax error: unexpected "("
./cake-autorate.sh: line 1: can't create /var/run/cake-autorate/log_fifo: nonexistent directory
INFO; printf: %(%F-%H:%M:%S)T; %s; %s\n: invalid format
./cake-autorate.sh: line 1: can't create /var/run/cake-autorate/log_fifo: nonexistent directory
INFO; printf: %(%F-%H:%M:%S)T; %s; %s\n: invalid format

EDIT: I fixed the paths, changed bash to !/opt/bin/bash, put the config file in root/cake-autorate. Trying to figure out whats wrong with the config file:
[email protected]:/jffs/scripts# ./cake-autorate.sh
ERROR; 2022-10-25-14:48:10; 1666723690.752093; Config file error. Please check config file entries.
INFO; 2022-10-25-14:48:10; 1666723690.752491;
INFO; 2022-10-25-14:48:10; 1666723690.752671; Killing all background processes and cleaning up temporary files.
 
Last edited:

rlj2

Senior Member
Can you login on IRC (OpenWrt)? Can chat in real-time then.

That's getting triggered as per:


Can you post config to pastebin?
Im using the config on your github, seems ok, still checking. Im on irc (libera.chat)
 

rlj2

Senior Member

BoostOver

Regular Contributor
Difference between diffeserv4 and diffserv8
I don't mean it but I found this test:
Diffeserv4 vs diffserv8
Apart from the problems encountered, I have read that the latency is lower with diffserv8.
Have any of you tested this?
Thanks in advance for any response.
 

Morris

Very Senior Member
Difference between diffeserv4 and diffserv8
I don't mean it but I found this test:
Diffeserv4 vs diffserv8
Apart from the problems encountered, I have read that the latency is lower with diffserv8.
Have any of you tested this?
Thanks in advance for any response.
I don't believe in mixing QOS methods like this. The beauty of CAKE is that pone dose not need to worry about the type of traffic and set priorities. The nature of various type of traffic results in high bandwidth consumers automatically slowed allowing lower bandwidth Realtime applications such as voice, video and gaming to get the bandwidth and response needed. Introducing priorities introduces complexity and then requires tuning that will defeat the simple as cake method. If you have reached a point where cake dose not meet the demands of your applications the issue is insufficient bandwidth and the fix is to provision more. Prioritizing traffic will simply change pain points.
 

BoostOver

Regular Contributor
Taking into account that cake is very CPU intensive,
Why is the default option "tins besteffort" and "Wash DSCP Markings yes"?
Would "Wash DSCP Markings no" make more sense?
 

Morris

Very Senior Member
Taking into account that cake is very CPU intensive,
Why is the default option "tins besteffort" and "Wash DSCP Markings yes"?
Would "Wash DSCP Markings no" make more sense?
My saying why would be opinion. I agree with you and chose not to wash the DSCP markings. I don't think this has any effect on CPU yet it allows upstream routers to use the markings which might help. It is assuming that the markings are made by applications that respect the Propper use of DSCP markings.
 

dave14305

Part of the Furniture
Taking into account that cake is very CPU intensive,
Why is the default option "tins besteffort" and "Wash DSCP Markings yes"?
Would "Wash DSCP Markings no" make more sense?
These are the defaults for download direction only. Upload uses diffserv3 by default and does not wash DSCP.

These are the same defaults as Merlin’s CAKE implementation. Generally, you should not trust DSCP marks coming from the internet. Therefore there is no reason to select tins based on someone else’s DSCP marks, and no point passing them on to the WiFi stack where WME might be adversely affected.

For example, my ISP sends almost everything as CS1. CS1 often maps to WME background class.

 

Morris

Very Senior Member
These are the defaults for download direction only. Upload uses diffserv3 by default and does not wash DSCP.

These are the same defaults as Merlin’s CAKE implementation. Generally, you should not trust DSCP marks coming from the internet. Therefore there is no reason to select tins based on someone else’s DSCP marks, and no point passing them on to the WiFi stack where WME might be adversely affected.

For example, my ISP sends almost everything as CS1. CS1 often maps to WME background class.

Hi Dave,

You are making compelling argument for CAKE rather than teared queues. With CAKE implemented I see no reason to use teared queues which are based on DSCP marks that may or may not be appropriate. This is irrespective of direction.

When one uses CAKE, QOS just happens and it's a simple as cake. When one implement's teared queues they don't even know how to set the DSCP marks for there own traffic. For example take flows between a workstation playing a game and a gaming server. If one wants great response time they mark the flow high priority. Then the gaming server send an update and other high priority traffic suffers. Further more, services like YouTube obfuscate there traffic to protect content making this high priority traffic near impossible to identify and prioritize.

Morris
 

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top