I'm trying to set up PCQ to divide available bandwidth equally between a number of clients. I'm applying the queue to my pppoe-client interface so that only WAN traffic will be queued, and LAN traffic won't. I've set it up as follows:
Since it's applied to a WAN port, download and upload are reversed, so the download queue has the type pcq-upload-default, and the upload queue has the type pcq-download-default.
/queue simple add comment="WorkingHours queue" max-limit=670k/670k name=Internet queue=\ pcq-download-default/pcq-upload-default target=pppoe-west
It works in that the overall bandwidth of the connection is limited to 670kbps up and down, but that bandwidth isn't being evenly shared between clients - which is what I thought PCQ was supposed to achieve. An example:
The green and purple are two test clients trying to download a large file simultaneously - but as you can see it's not consistent, and every client sees a different speed. Any ideas what I might be doing wrong?
I had also previously tried marking packets to and from the internet based on src and dst address:
And also tried marking based on interface:
/ip firewall mangle add chain=postrouting action=mark-packet new-packet-mark=Internet_upload passthrough=no dst-address=!192.168.2.0/23 log=no log-prefix="" add chain=prerouting action=mark-packet new-packet-mark=Internet_download passthrough=no src-address=!192.168.2.0/23 log=no log-prefix=""
Then applying the queue based on the packet marks:
/ip firewall mangle add action=mark-packet chain=postrouting comment=\ "Traffic destined for internet (to apply QoS)" disabled=yes \ new-packet-mark=Internet_upload out-interface=pppoe-west passthrough=no add action=mark-packet chain=prerouting comment=\ "Traffic coming from internet (to apply QoS)" disabled=yes in-interface=\ pppoe-west new-packet-mark=Internet_download passthrough=no
...but the effect was much the same. Any help would be very much appreciated!
/queue simple add comment="Upload queue"max-limit=670k/0 name=Upload \ packet-marks=Internet_upload queue=\ pcq-upload-default/pcq-download-default target=192.168.2.0/23 total-queue=pcq-upload-default add comment="Download queue" max-limit=0/670k name=Download \ packet-marks=Internet_download queue=\ pcq-upload-default/pcq-download-default target=192.168.2.0/23 total-queue=pcq-download-default