voip SIP/RTP prioritisation - where do queue trees go?

I have a wireless link between two sites using RB411s that is working well, but voip traffic over it degrades badly with other traffic on the link…I’m trying to configure QoS with it.

On the far side of the link, wlan1 is the WAN. On the near side of the link, ether1 is the WAN.

Snooping reveals that the VOIP RTP packets in both directions have 46 in their TOS (DSCP).

I’m trying to follow http://wiki.mikrotik.com/wiki/DSCP_based_QoS_with_HTB pretty much, but I’m confused as to where I should configure the queue trees in my scenario.

Should the queue trees go on wlan1 on each side of the wireless link?

What does the queue tree on the far side of the link control with respects to machines on that side of the link…does it control upload or download?

Below is what I’m presently setting up on both sides of the link, but I’m still hearing audio degradation on a VOIP call when for example viewing a youtube video.

:for x from 0 to 63 do={/ip firewall mangle add action=mark-packet chain=forward comment=("dscp_" . $x . "_wlan1") disabled=no dscp=$x new-packet-mark=("dscp_" . $x . "_wlan1") passthrough=no}

/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=250000 name=wlan1 parent=wlan1 queue=default

#prio8
:for z from 0 to 7 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=225000 name=("routine_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=8 queue=default}

#prio7
:for z from 8 to 15 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=225000 name=("priority_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=7 queue=default}

#prio 6
:for z from 16 to 23 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=225000 name=("immediate_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=6 queue=default}

#prio 5
:for z from 24 to 31 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=3000 name=("flash_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=5 queue=default}

#prio 4
:for z from 32 to 39 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=225000 name=("flash_override_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=4 queue=default}

#prio 3
:for z from 40 to 47 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=100000 name=("critical_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=3 queue=default}

#prio 2
:for z from 48 to 55 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=225000 name=("intercon_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=2 queue=default}

#prio 1
:for z from 56 to 63 do={/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=225000 name=("netcon_" . $z . "_wlan1") packet-mark=("dscp_" . $z . "_wlan1") parent=wlan1 priority=1 queue=default}