Page 1 of 1

Is there a way to prioritize traffic without piping everything through queues?

Posted: Mon Apr 16, 2018 11:09 am
by ners
I want to be able to give a particular multicast stream higher priority from the rest of the traffic on a link so in case of congestion it would still get through without hiccups.
Everything I managed to find in the internet about prioritizing traffic on RouterOS deals with putting the traffic in queues:
1) Mark all traffic going on that link
2) Mark traffic that should be prioritized
3) Put all traffic for that link through a queue tree and make a sub-queue for the priority traffic and give that subqueue a higher priority.

But this method introduces unnecessary queuing and an increase in latency.

Does RouterOS have a simple prioritizing mechanism based on DSCP values? Something like:
1) Set a priority DSCP value to the priority multicast stream in /ip firewall mangle (prerouting)
2) RouterOS takes care of the rest and puts high priority packets on the outgoing interface first.

Re: Is there a way to prioritize traffic without piping everything through queues?

Posted: Mon Apr 16, 2018 12:01 pm
by rextended
I want to be able to give a particular multicast stream higher priority from the rest of the traffic on a link so in case of congestion it would still get through without hiccups.
Everything I managed to find in the internet about prioritizing traffic on RouterOS deals with putting the traffic in queues:
1) Mark all traffic going on that link
2) Mark traffic that should be prioritized
3) Put all traffic for that link through a queue tree and make a sub-queue for the priority traffic and give that subqueue a higher priority.

But this method introduces unnecessary queuing and an increase in latency.

Does RouterOS have a simple prioritizing mechanism based on DSCP values? Something like:
1) Set a priority DSCP value to the priority multicast stream in /ip firewall mangle (prerouting)
2) RouterOS takes care of the rest and puts high priority packets on the outgoing interface first.
Is there a way to prioritize traffic without piping everything through queues?
Simply: NO
I's impossible to prioritize something without inspecting it.

Re: Is there a way to prioritize traffic without piping everything through queues?

Posted: Mon Apr 16, 2018 12:09 pm
by ners

I's impossible to prioritize something without inspecting it.
So RouterOS is crippled in that regard? It can't do DSCP-based QoS?

Re: Is there a way to prioritize traffic without piping everything through queues?

Posted: Mon Apr 16, 2018 12:16 pm
by sindy
It can, using the queues. DSCP is just a way to convey the information about required priority. Any operating system works the same way - classifies the traffic based on some local criteria or accepts external classification received in L3/DSCP or L2/CoS fields, and then uses a queueing mechanism to let higher priority packets overtake the lower priority ones while forwarding them.

Re: Is there a way to prioritize traffic without piping everything through queues?

Posted: Mon Apr 16, 2018 12:23 pm
by ners
It can, using the queues. DSCP is just a way to convey the information about required priority. Any operating system works the same way - classifies the traffic based on some local criteria or accepts external classification received in L3/DSCP or L2/CoS fields, and then uses a queueing mechanism to let higher priority packets overtake the lower priority ones while forwarding them.
But with RouterOS queuing introduces noticeable latency and max-limit should be 80-90% of the ISP's cap so you'll basically be wasting 10-20% of your bandwidth. Not good.

Re: Is there a way to prioritize traffic without piping everything through queues?

Posted: Mon Apr 16, 2018 2:53 pm
by CZFan
... and max-limit should be 80-90% of the ISP's cap so you'll basically be wasting 10-20% of your bandwidth. Not good.
Doesn't have to be, but is the recommended way due to how your upstream ISP buffers things. This is also not just a Mikrotik thing, but any QoS best practice thing