I’m not pro in QoS I’ll post my rules maybe someone can find mistake and make it right please
/queue tree
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0
max-limit=0 name=Total_Download packet-mark=“” parent=global-in priority=
8
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0
max-limit=0 name=Total_Upload parent=global-out priority=8
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Upload_10M packet-mark=Business_Upload_10M
parent=Total_Upload priority=8 queue=PCQ_up_10M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0
max-limit=0 name=Standart_Download_100M packet-mark=
Standart_Download_100M parent=Total_Download priority=1 queue=
PCQ_down_100M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Download_100M packet-mark=
Business_Download_100M parent=Total_Download priority=1 queue=
PCQ_down_100M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Standart_Upload_10M packet-mark=Standart_Upload_10M
parent=Total_Upload priority=8 queue=PCQ_up_10M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Download_75M packet-mark=Business_Download_75M
parent=Total_Download priority=2 queue=PCQ_down_75M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Download_50M packet-mark=Business_Download_50M
parent=Total_Download priority=6 queue=PCQ_down_50M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Download_25M packet-mark=Business_Download_25M
parent=Total_Download priority=8 queue=PCQ_down_25M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Standart_Download_75M packet-mark=Standart_Download_75M
parent=Total_Download priority=2 queue=PCQ_down_75M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Standart_Download_50M packet-mark=Standart_Download_50M
parent=Total_Download priority=6 queue=PCQ_down_50M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Standart_Download_25M packet-mark=Standart_Download_25M
parent=Total_Download priority=1 queue=PCQ_down_25M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Upload_20M packet-mark=Business_Upload_20M
parent=Total_Upload priority=6 queue=PCQ_up_20M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Upload_30M packet-mark=Business_Upload_30M
parent=Total_Upload priority=4 queue=PCQ_up_30M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Business_Upload_40M packet-mark=Business_Upload_40M
parent=Total_Upload priority=2 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Standart_Upload_20M packet-mark=Standart_Upload_20M
parent=Total_Upload priority=6 queue=PCQ_up_20M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0
max-limit=0 name=Standart_Upload_30M packet-mark=Standart_Upload_30M
parent=Total_Upload priority=2 queue=PCQ_up_30M
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0
max-limit=0 name=Standart_Upload_40M packet-mark=Standart_Upload_40M
parent=Total_Upload priority=1 queue=PCQ_up_40M
/queue type
add kind=pcq name=PCQ_down_50M pcq-classifier=dst-address pcq-limit=20 pcq-rate=50000000 pcq-total-limit=500
add kind=pcq name=PCQ_up_30M pcq-classifier=src-address pcq-limit=20 pcq-rate=30000000 pcq-total-limit=500
add kind=pcq name=PCQ_down_25M pcq-classifier=dst-address pcq-limit=30 pcq-rate=25000000 pcq-total-limit=1000
add kind=pcq name=PCQ_down_75M pcq-classifier=dst-address pcq-limit=30 pcq-rate=75000000 pcq-total-limit=1000
add kind=pcq name=PCQ_up_20M pcq-classifier=src-address pcq-limit=30 pcq-rate=20000000 pcq-total-limit=1000
add kind=pcq name=PCQ_up_10M pcq-classifier=src-address pcq-limit=30 pcq-rate=10000000 pcq-total-limit=1000
add kind=pcq name=PCQ_down_100M pcq-classifier=dst-address pcq-limit=50 pcq-rate=100000000 pcq-total-limit=2000
add kind=pcq name=PCQ_up_40M pcq-classifier=src-address pcq-limit=50 pcq-rate=40000000 pcq-total-limit=2000
/ip firewall mangle
add action=mark-connection chain=prerouting comment=“Mark Business_Download_100M__________________________________________________________”
disabled=yes new-connection-mark=Business_con_down_100M passthrough=yes src-address-list=Business_class_100M&40M
add action=mark-packet chain=prerouting comment=“” connection-mark=Business_con_down_100M disabled=yes new-packet-mark=Business_Download_100M
passthrough=yes
add action=mark-connection chain=postrouting comment=“Mark Business_Upload_40M” disabled=yes new-connection-mark=Business_con_up_40M
passthrough=yes src-address-list=Business_class_100M&40M
add action=mark-packet chain=postrouting comment=“” connection-mark=Business_con_up_40M disabled=yes new-packet-mark=Business_Upload_40M
passthrough=yes
add action=mark-connection chain=prerouting comment=“Mark Business_Download_75M” disabled=yes new-connection-mark=Business_con_down_75M
passthrough=yes src-address-list=Business_class_75M&30M
add action=mark-packet chain=prerouting comment=“” connection-mark=Business_con_down_75M disabled=yes new-packet-mark=Business_Download_75M
passthrough=yes
add action=mark-connection chain=forward comment=“Mark Business_Upload_30M” disabled=yes new-connection-mark=Business_con_up_30M passthrough=
yes src-address-list=Business_class_75M&30M
add action=mark-packet chain=forward comment=“” connection-mark=Business_con_up_30M disabled=yes new-packet-mark=Business_Upload_30M
passthrough=yes
add action=mark-connection chain=prerouting comment=“Mark Business_Download_50M” disabled=yes new-connection-mark=Business_con_down_50M
passthrough=yes src-address-list=Business_class_50M&20M
add action=mark-packet chain=prerouting comment=“” connection-mark=Business_con_down_50M disabled=yes new-packet-mark=Business_Download_50M
passthrough=yes
add action=mark-connection chain=forward comment=“Mark Business_Upload_20M” disabled=yes new-connection-mark=Business_con_up_20M passthrough=
yes src-address-list=Business_class_50M&20M
add action=mark-packet chain=forward comment=“” connection-mark=Business_con_up_20M disabled=yes new-packet-mark=Business_Upload_20M
passthrough=yes
add action=mark-connection chain=prerouting comment=“Mark Business_Download_25M” disabled=yes new-connection-mark=Business_con_down_25M
passthrough=yes src-address-list=Business_class_25M&10M
add action=mark-packet chain=prerouting comment=“” connection-mark=Business_con_down_25M disabled=yes new-packet-mark=Business_Download_25M
passthrough=yes
add action=mark-connection chain=forward comment=“Mark Business_Upload_10M” disabled=yes new-connection-mark=Business_con_up_10M passthrough=
yes src-address-list=Business_class_25M&10M
add action=mark-packet chain=forward comment=“” connection-mark=Business_con_up_10M disabled=yes new-packet-mark=Business_Upload_10M
passthrough=yes
add action=mark-connection chain=prerouting comment=“Mark
Standart_Download_100M_______________________________________________________”
disabled=no dst-address-list=Standart_class_100M&40M new-connection-mark=Standart_con_down_100M passthrough=yes
add action=mark-packet chain=postrouting comment=“” connection-mark=Standart_con_down_100M disabled=no dst-address-list=
Standart_class_100M&40M new-packet-mark=Standart_Download_100M passthrough=no
add action=mark-connection chain=postrouting comment=“Mark Standart_Upload_40M___________________________________________________________”
disabled=no new-connection-mark=Standart_con_up_40M passthrough=yes src-address-list=Standart_class_100M&40M
add action=mark-packet chain=postrouting comment=“” connection-mark=Standart_con_up_40M disabled=no new-packet-mark=Standart_Upload_40M
passthrough=no src-address-list=Standart_class_100M&40M
add action=mark-connection chain=prerouting comment=“Mark Standart_Download_75M” disabled=yes new-connection-mark=Standart_con_down_75M
passthrough=yes src-address-list=Standart_class_75M&30M
add action=mark-packet chain=prerouting comment=“” connection-mark=Standart_con_down_75M disabled=yes new-packet-mark=Standart_Download_75M
passthrough=yes
add action=mark-connection chain=forward comment=“Mark Standart_Upload_30M” disabled=yes new-connection-mark=Standart_con_up_30M passthrough=
yes src-address-list=Standart_class_75M&30M
add action=mark-packet chain=forward comment=“” connection-mark=Standart_con_up_30M disabled=yes new-packet-mark=Standart_Upload_30M
passthrough=yes
add action=mark-connection chain=prerouting comment=“Mark Standart_Download_50M” disabled=yes new-connection-mark=Standart_con_down_50M
passthrough=yes src-address-list=Standart_class_50M&20M
add action=mark-packet chain=prerouting comment=“” connection-mark=Standart_con_down_50M disabled=yes new-packet-mark=Standart_Download_50M
passthrough=yes
add action=mark-connection chain=forward comment=“Mark Standart_Upload_20M” disabled=yes new-connection-mark=Standart_con_up_20M passthrough=
yes src-address-list=Standart_class_50M&20M
add action=mark-packet chain=forward comment=“” connection-mark=Standart_con_up_20M disabled=yes new-packet-mark=Standart_Upload_20M
passthrough=yes
add action=mark-connection chain=prerouting comment=“Mark Standart_Download_25M” disabled=yes new-connection-mark=Standart_con_down_25M
passthrough=yes src-address-list=Standart_class_25M&10M
add action=mark-packet chain=prerouting comment=“” connection-mark=Standart_con_down_25M disabled=yes new-packet-mark=Standart_Download_25M
passthrough=yes
add action=mark-connection chain=forward comment=“Mark Standart_Upload_10M” disabled=yes new-connection-mark=Standart_con_up_10M passthrough=
yes src-address-list=Standart_class_25M&10M
add action=mark-packet chain=forward comment=“” connection-mark=Standart_con_up_10M disabled=yes new-packet-mark=Standart_Upload_10M
passthrough=yes
add action=log chain=forward comment=“Check for unmarked traffic” disabled=yes log-prefix=“”
/ip firewall nat
add action=masquerade chain=srcnat comment=“” disabled=no