Qosify: new package for DSCP marking + cake

Is anyone having an issue with dns based tagging? I don't believe it is working for me...
also, this is overriding the qos tag for me:

# HTTP/QUIC
tcp:80		+besteffort
tcp:443		+besteffort
udp:80		+besteffort
udp:443		+besteffort

hi @tiagogaspar8

do you have launch ubus call qosify dump

i see than dns is good

Capture d’écran 2022-02-11 à 16.33.48

1 Like

Yeah, the newest version was avaiable now. and is already installed :smiley:

2 Likes

@anon78773196
When I do a dump it shows as you can see:

root@router1:~# ubus call qosify dump
{
        "entries": [
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*aiv-cdn*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*aiv-delivery*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*disney*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*dssott*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "video",
                        "type": "dns",
                        "addr": "*googlevideo*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*hbo*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*hbomaxcdn*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*nflxvideo*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*pv-cdn*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "dns",
                        "addr": "*ttvnw*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+besteffort",
                        "type": "dns",
                        "addr": "*update.microsoft*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+besteffort",
                        "type": "dns",
                        "addr": "*windowsupdate*"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "voice",
                        "type": "udp_port",
                        "addr": "53"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+besteffort",
                        "type": "udp_port",
                        "addr": "80"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "voice",
                        "type": "udp_port",
                        "addr": "123"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+besteffort",
                        "type": "udp_port",
                        "addr": "443"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "voice",
                        "type": "udp_port",
                        "addr": "5353"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+video",
                        "type": "tcp_port",
                        "addr": "22"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "voice",
                        "type": "tcp_port",
                        "addr": "53"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+besteffort",
                        "type": "tcp_port",
                        "addr": "80"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "+besteffort",
                        "type": "tcp_port",
                        "addr": "443"
                },
                {
                        "file": true,
                        "user": false,
                        "dscp": "voice",
                        "type": "tcp_port",
                        "addr": "5353"
                }
        ]
}

But in wireshark I see that some websites that natively have dscp are overriden.

1 Like

On another note, for the dns issue, I have unboound installed instead of dnsmasq, may that be the issue?

1 Like

yes maybe but do you have the new firewall nftbales firewall4 I can't do mirroring under fw4 it may be that too my gaming class normally is in cs4 and it appears in CS0

1 Like

you create your own build to have the new qosify is it fair

because my snapshot version of the mt7622 is still at 10 February

btw: will qosify be integrated into the next big possible end of month release of openwrt 22.XX or will it only be in the snapshots?

1 Like

I am indeed using the new firewall4 + unbound... well this is sad... I'd love to use this dns priority scheduling....

1 Like

So, someone mentioned to me that there is a need to have dnsmasq.
Is there a way to forward requests to the localhost instead?

Also, I just found a major issue, IPv6 is broken in qosify.
I currently can see packets in IPv4 are tagged yet IPv6 ones aren't. This is with firewall4 but that shouldn't matter.

UPDATE: It seems that only udp ipv6 packets are not being tagged, tcp is. But the "+" still doesn't work as expected

thanks everybody for your work i test tonight qosify on my games with changed settings

i keep informed tomoroww

:wink:

1 Like

This would still be a very welcome enhancement, to let users abandon dnsmasq’s ipset function, since they won’t work with nftables, and Simon’s next release seems stalled while he moves to Ireland.

Qosify could take over the world!

New build is working great with no crashes.

3 Likes

Where in the "make menuconfig" menu can I find qosify? I want to include it in a self build image but can't find it ... :face_with_monocle:

You need to have the special llvm-bpf toolchain in the build dir.
(No need to compile it, just download it.)

Read

1 Like

@nbd
Could you please edit your first message in this thread and add advice about the easiest approaches to have qosify compiled in private builds.

See example in e.g. Qosify: new package for DSCP marking + cake - #207 by hnyman

2 Likes

hi everybody the wan status after reboot is down just after finish start

the qosify wan status is comeback automaticly

very good work :wink:


and my brother and me have played yesterday gaming is very power full

:pray: :pray: :stuck_out_tongue:

Edit : hello I have a vdsl2 line and my colleague has a 1 gigabit optical fiber we have both activated irq balance and packet steering, our main goal is video games like warzone call of duty, he tells me that he really has better sensations without irq balance and packet steering, we both use qosify do you think it works on the router or not? thanks in advance

@elan @hnyman @dave14305 the packet steering write across or not the cpu...

Edit 2 : Ok he has keep irq balance for test and disable packet steering and he tell me the game is more impressive :ok_hand::+1::wink:

1 Like

There are some information published in the net, affirming irqbalance its negative for the gaming. And not all routers really do correctly packet steering…

1 Like

I carried out several tests @di_niko

and I conclude that irq balance is better for gaming on the other hand packet steering degrades my performance in game

1 Like

In general, irqbalance should always be beneficial, but theory and practice may diverge (depending on the hardware) - there's no way around testing it.

--
On very fixed-purpose/ fixed-hardware (no hotpluggable devices), assigning IRQs manually could provide the best/ perfect results, but you really need to know what you're doing to get to this level - and as soon as hotplugging (hello USB) enters the picture, all odds are off (you don't want to touch your IRQ assignments every few hours).

2 Likes

@dave14305 @edwpat @nbd

Do you know how i should setup DNS regex? For example, i would like to set my Steam Downloads to bulk traffic without doing the whole cacheX-ams1.steamcontent.com or .steamcontent.com

For what i would like to achieve is

-ams1.steamcontent.com

So it reads

cache1-ams1.steamcontent.com
cache2-ams1.steamcontent.com

without giving

dns:*.steamcontent.com bulk

Have you just tried

dns:cache*-ams1.steamcontent.com bulk

I haven’t tried a regex yet, because I didn’t want to think about whether I had to escape the dots in the domain name.