This article goes with Marking Traffic for Queueing.
I did use the new queue type (mq-pfifo {multi-queue packets-first-in-first-out) in this setup and it worked fine. I also had it setup with the default and it worked fine as well.
You will setup your trees per WAN connection. One for each global-in (download) and global-out (upload) for each WAN.
Make sure to send the correct packet marks from each WAN to each queue tree.
Queue Tree Example:
/queue tree add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=2M name=CoNN2-Down parent=global-in \ priority=1 add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=300k name=CoNN1-Up parent=global-out \ priority=2 add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS2-C2 packet-mark=\ qos2_conn2_download parent=CoNN2-Down priority=2 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS2-C1-Up packet-mark=\ qos2_conn1_upload parent=CoNN1-Up priority=2 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS7-C2 packet-mark=\ qos7_conn2_download parent=CoNN2-Down priority=7 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS7-C1-Up packet-mark=\ qos7_conn1_upload parent=CoNN1-Up priority=7 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS5-C2 packet-mark=\ qos5_conn2_download parent=CoNN2-Down priority=5 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS5-C1-Up packet-mark=\ qos5_conn1_upload parent=CoNN1-Up priority=5 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS6-C2 packet-mark=\ qos6_conn2_download parent=CoNN2-Down priority=6 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS6-C1-Up packet-mark=\ qos6_conn1_upload parent=CoNN1-Up priority=6 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS1-C2 packet-mark=\ qos1_conn2_download parent=CoNN2-Down priority=1 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS1-C1-Up packet-mark=\ qos1_conn1_upload parent=CoNN1-Up priority=1 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS8-C1-Up packet-mark=\ qos8_conn1_upload parent=CoNN1-Up priority=8 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS8-C2 packet-mark=\ qos8_conn2_download parent=CoNN2-Down priority=8 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS4-C2 packet-mark=\ qos4_conn2_download parent=CoNN2-Down priority=4 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS4-C1-Up packet-mark=\ qos4_conn1_upload parent=CoNN1-Up priority=4 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS3-C2 packet-mark=\ qos3_conn2_download parent=CoNN2-Down priority=3 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS3-C1-Up packet-mark=\ qos3_conn1_upload parent=CoNN1-Up priority=3 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=2M name=CoNN1-Down parent=global-in \ priority=1 add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS4-C1 packet-mark=\ qos4_conn1_download parent=CoNN1-Down priority=4 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=300k name=CoNN2-Up parent=global-out \ priority=2 add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS1-C1 packet-mark=\ qos1_conn1_download parent=CoNN1-Down priority=1 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS1-C2-Up packet-mark=\ qos1_conn2_upload parent=CoNN2-Up priority=1 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS4-C2-Up packet-mark=\ qos4_conn2_upload parent=CoNN2-Up priority=4 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS2-C1 packet-mark=\ qos2_conn1_download parent=CoNN1-Down priority=2 queue=ethernet-default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS2-C2-Up packet-mark=\ qos2_conn2_upload parent=CoNN2-Up priority=2 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS3-C1 packet-mark=\ qos3_conn1_download parent=CoNN1-Down priority=3 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS3-C2-Up packet-mark=\ qos3_conn2_upload parent=CoNN2-Up priority=3 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS5-C1 packet-mark=\ qos5_conn1_download parent=CoNN1-Down priority=5 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS5-C2-Up packet-mark=\ qos5_conn2_upload parent=CoNN2-Up priority=5 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS6-C1 packet-mark=\ qos6_conn1_download parent=CoNN1-Down priority=6 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS6-C2-Up packet-mark=\ qos6_conn2_upload parent=CoNN2-Up priority=6 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS7-C1 packet-mark=\ qos7_conn1_download parent=CoNN1-Down priority=7 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS7-C2-Up packet-mark=\ qos7_conn2_upload parent=CoNN2-Up priority=7 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS8-C1 packet-mark=\ qos8_conn1_download parent=CoNN1-Down priority=8 queue=default add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=QoS8-C2-Up packet-mark=\ qos8_conn2_upload parent=CoNN2-Up priority=8 queue=default