Turning on QoS on traffic from a system is relatively painless. There will be an option in the operating system to enable either CoS or ToS.
In Linux, you can see how traffic is being prioritized using the ip link list
command, where it will show you what queuing discipline or qdisc
you are using:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 74:d4:35:86:74:e6 brd ff:ff:ff:ff:ff:ff
Here we can see that qdisc
is set to pfifo_fast
; First In, First Out (FIFO). The pfifo_fast
queuing discipline will honor some CoS/ToS tags, but this is not guaranteed. In order to utilize QoS, we will need to change the qdisc
to something that can be configured, such as Hierarchical Token Bucket (HTB) disc.
HTB utilizes the token bucket algorithm, which does not need to know about outgoing interface characteristics, such as bandwidth. A fundamental part of HTB is borrowing tokens from parent...