Best way for bandwidth control

I’ve tried using Red and PCQ both to limit bandwidth down to 256k/128k only for specific IP addresses, actually we have 2 class c’s I setup simple queues for each IP which was 2 simple queue rules per IP which in the end is around 400 simple queue rules, this caused the load on the router to go to 100% so I removed them, was having trouble with them getting added anyway, PCQ was doing a set amount of bandwidth for example 256k and sharing it only for that class not IP based, I’m not sure what we should be using to limit bandwidth per IP and I don’t want the CPU load to be just 100% on a constant basis, if anyone has any ideas let me know, but here’s an example of one of my rules for the simple queue I was using.

add name=“10.104.4.11-D” target-address=10.104.4.11/32 dst-address=0.0.0.0/0 interface=C900
queue=Red priority=8 limit-at=256000/256000 max-limit=256000/256000
burst-limit=512000/512000 burst-threshold=126000/126000 burst-time=60/60 disabled=no
add name=“10.104.4.11-U” target-address=10.104.4.11/32 dst-address=0.0.0.0/0 interface=GW queue=Red
priority=8 limit-at=0/0 max-limit=128000/128000 disabled=no
add name=“10.104.4.12-D” target-address=10.104.4.12/32 dst-address=0.0.0.0/0 interface=C900
queue=Red priority=8 limit-at=256000/256000 max-limit=256000/256000
burst-limit=512000/512000 burst-threshold=126000/126000 burst-time=60/60 disabled=no
add name=“10.104.4.12-U” target-address=10.104.4.12/32 dst-address=0.0.0.0/0 interface=GW queue=Red
priority=8 limit-at=0/0 max-limit=128000/128000 disabled=no
add name=“10.104.4.13-D” target-address=10.104.4.13/32 dst-address=0.0.0.0/0 interface=C900
queue=Red priority=8 limit-at=256000/256000 max-limit=256000/256000
burst-limit=512000/512000 burst-threshold=126000/126000 burst-time=60/60 disabled=no
add name=“10.104.4.13-U” target-address=10.104.4.13/32 dst-address=0.0.0.0/0 interface=GW queue=Red
priority=8 limit-at=0/0 max-limit=128000/128000 disabled=no

^ above shows you 3 ip addresses simple queue rules

I’d be extremely appreciative of any ideas anyone has to fix this bandwidth control issue, what we have is 4 packages, a basic (256k/128k) , a bronze, a silver and a gold all have different speeds of bandwidth which need limited by IP address, most routers have 2 class c’s so their would be a great deal of rules, please help.

You can rate limit the tx/rx in the PPP profiles. (under limits)
for the 256kbps packages the limit will be 256000 bps for tx and rx. You may want to give the users just a bit more, say 270000bps to compensate for overheads so they really get 256kbps not 236kbps.
This is all we use. and works fine. Creat different profiles for different users and packages.

CPU Load for 80 users just browsing is approx 5-10%