MikroTik 101: QoS – How to prioritise your network traffic!

This week we’ll be focusing on MikroTik’s RouterOS Quality of Service (QoS)! 

Let’s get the terms down:

QoS: Quality of Service (QoS) means that the router can prioritise and shape network traffic. This means that you can prioritise network traffic for video, VoIP and data, limiting peer-to-peer traffic.

 

Some features of the MikroTik RouterOS traffic control mechanism:

  • limit data rate for certain IP addresses, subnets, protocols, ports, and other parameters
  • limit peer-to-peer traffic
  • prioritise some packet flows over others
  • use queue bursts for faster web browsing
  • apply queues on fixed time intervals
  • share available traffic among users equally, or depending on the load of the channel
  • set speed based on any granularity (32/16/8/4/2/1kbps or other)

 

 Prioritization Plan

 

Bandwidth Control: Bandwidth Control is a set of mechanisms that control data rate allocation, delay variability, timely delivery, and delivery reliability.

 

Mangle: The mangle facility allows you to mark IP packets with special marks. These marks are used by other router facilities like routing and bandwidth control to identify the packets. Additionally, the mangle facility is used to modify some fields in the IP header, like TOS (DSCP) and TTL fields.

 

QoS

 

Double QoS: It is possible to mark and shape traffic twice in the same router:

  • Mangle chain Pre-routing – for first marking
  • Global-in HTB – for first shaping
  • Mangle chain Forward or Post-routing for second marking
  • Global-out or Out-interface HTB for second marking

Double QoS is only possible with Queue Tree.

 

Queue Tree: Queue Tree is one directional only and can be placed in any of the available HTBs. Queue Tree queues don’t have any order – all traffic is processed simultaneously. All child queues must have packet marks from “/IP firewall mangle” facility assigned to them. If placed in the same HTB, Simple queue will take all the traffic away from the Queue Tree queue

 

HTB: RouterOS supports Hierarchical Token Bucket (HTB) QoS system with CIR, MIR, burst and priority support, and provides both advanced queuing and easy solutions for basic QoS implementation.

 

Simple Queues

 

PCQ: Per Connection Queue (PCQ) was introduced to optimise massive QoS systems, where most of the queues are exactly the same for different sub-streams. For example, a sub-stream can be downloaded or upload for one particular client (IP) or connection to a server. The PCQ algorithm is very simple – at first, it uses selected classifiers to distinguish one sub-stream from another, then applies individual FIFO queue size and limitation on every sub-stream, then groups all sub-streams together and applies global FIFO queue size and limitation.

 

PCQ

 

Address Lists: Address lists were introduced to assign multiple IP addresses/ranges to the same firewall rule, in this way reducing the total number of firewall rules and increasing router performance. Address lists can be created:

  • Manually
  • Automatically from PPP profile – just specify address list option and as soon as the client connects it will be added to the proper address list
  • Automatically from RADIUS – attribute “Mikrotik:19”

Address Lists

Product added to wishlist

We use cookies to optimise site functionality and give you the best possible experience. Learn more.