the best method is to use queue trees for example (orginally from my atricle
http://www.cyberbajt.com.pl/cyber.php?get=raport,65,4 - sorry but only in polish now...) :
interfaces Lan & Internet are bridged
Packet mark for upload:
you'll need to copy these to system scripts and run them to generate rules
:for x from 2 to 254 do={ /ip firewall mangle add chain=prerouting
src-address=(192.168.0. . $x ) action=mark-packet
new-packet-mark=( $x . upload ) passthrough=no }
Packet mark for download:
:for x from 2 to 254 do={ /ip firewall mangle add chain=postrouting
dst-address=(192.168.0. . $x ) action=mark-packet
new-packet-mark=( $x . download ) passthrough=no }
New queue type
/queue type add name="sfq" kind=sfq sfq-perturb=5 sfq-allot=1514
Main parent queue 4 download (assuming that your LAN interface is named Lan):
/queue tree add name="Download" parent=Lan queue=sfq max-limit=1730k
... and for upload...
(assuming that your WAN interface is named Internet ):
/queue tree add name="Upload" parent=Internet queue=sfq max-limit=1730k
script for download queues
:for z from 2 to 254 do={ /queue tree add parent=Download
packet-mark=( $z . download ) limit-at=32000 queue=sfq
priority=7 max-limit=256000 }
script for upload queues
:for b from 2 to 254 do={ /queue tree add parent=Upload
packet-mark=( $b . upload ) limit-at=32000 queue=sfq
priority=7 max-limit=220000 }
And if you will copy&paste (removing non requied addional spaces) all you should have worinkg BM for 192.168.0.2 to 192.168.254 addresses
with 256Kbits MIR (maximum), 32Kbits CIR (guaranteed)
of course that the veeeeery simple BM, if you're interested with some more adv. configuration please email me m.burzynski @ cyberbajt.pl
Or write here ew can think something out