Make VOIP traffic a priority

Below is a simple example of how to use QOS for VOIP in ROS

/ip firewall mangle
add action=mark-connection chain=prerouting comment=\
“Mark Voip Connections SRC” new-connection-mark=voip_connections \
passthrough=yes src-address-list=voip
add action=mark-connection chain=prerouting comment=\
“Mark Voip Connections DST” dst-address-list=voip new-connection-mark=\
voip_connections passthrough=yes
add action=mark-packet chain=prerouting comment=”Mark Voip Packets SRC” \
connection-mark=voip_connections new-packet-mark=voip_packets \
passthrough=no src-address-list=voip
add action=mark-packet chain=prerouting comment=”Mark Voip Packets DST” \
connection-mark=voip_connections dst-address-list=voip new-packet-mark=\
voip_packets passthrough=no
add action=mark-connection chain=prerouting comment=\
“Mark non voip connections” new-connection-mark=non_voip_connections \
passthrough=yes
add action=mark-packet chain=prerouting comment=”Mark non voip packets” \
connection-mark=non_voip_connections new-packet-mark=non_voip_packets \
passthrough=no

/queue tree
add name=Download parent= queue=default
add name=Upload parent= queue=default
add limit-at=3M max-limit=3M name=voip_up packet-mark=voip_packets parent=\
Upload priority=1 queue=default
add limit-at=500M max-limit=500M name=other_up packet-mark=non_voip_packets \
parent=Upload queue=default
add limit-at=3M max-limit=3M name=voip_down packet-mark=voip_packets parent=\
Download priority=1 queue=default
add limit-at=900M max-limit=900M name=other_down packet-mark=non_voip_packets \
parent=Download queue=default