Hello,
I have a small ISP and recently installed a Microtic Cloud Core router and are trying to figure out an effective bandwidth control method.
Here is my scenario, I have all my subscribers divided into different IP ranges based on the bandwidth packages they are subscribed to. For example, basic customers are on IP range 192.168.100.1 to 192.168.100.254 while customers on the next speed package up are on 192.168.101.1 to 192.168.101.254.
What I’d like to do is apply a Basic Queue to provide a bandwidth burst to individual customers without having to replicate the queue per IP. If I set a simple queue to an IP range it seems to apply that individual rule to all IP’s which means all IP’s in that range share that rule. What I’d like is to set one rule per IP range and have the router replicate that rule to each individual IP.
I would so appreciate any help or advice anyone has.
/queue type
add kind=pcq name="3m per user down" pcq-classifier=dst-address pcq-dst-address6-mask=64 pcq-limit=35 pcq-rate=3M pcq-src-address6-mask=64 pcq-total-limit=10000
add kind=pcq name="1m per user up" pcq-classifier=src-address pcq-dst-address6-mask=64 pcq-limit=35 pcq-rate=1M pcq-src-address6-mask=64 pcq-total-limit=10000
set 7 pcq-limit=35 pcq-total-limit=10000
set 8 pcq-limit=35 pcq-total-limit=10000
/queue simple
add name="user limit" queue="1m per user up/3m per user down" target=10.0.0.0/22
I use PCQ types for this.
This is an example where ive used PCQ for everyone on the 10.0.0.0/22 to get 3m/1m. you can wash rince repeat for as many subnets as you like. Remember to make sure your queue limits dont exceed your ram. 5000 total limit = about 10.5MB. my examples have enough queue for 285 users using all 35 per user queue limits and ram usage would max out at 42MB.