BW Management with Guaranteed Bandwidth, Simple queues + Parents

Hello everybody, my name is Hugo and I’m an engineer.

I perform as a network engineer at a young WISP with about 70 clients. Currently, the bandwidth control is done on the CPE equipment with a simple queue. We’re about to deploy a centralized system for client control, so we want to centralize the BW management as well, so we acquired a CCR-1036 RB. Even though my first thought was to deploy using Queue Tree + Address List, I’ve watched some MUM presentations that recommend the avoidance of queue tree with CCR hardware for BW control (as there are better alternatives). This is one of them, by Alexander Vishnyakov: https://youtu.be/loaVBWq6cWA.

Janis Megis recommends simple queues for bandwidth control on CCR hardware, as they are optimized for such use. I have a few questions about it though:

  • Can you guarantee bandwidth using simple queues? With queue tree I can guarantee 50% of availability to my clients, so that I can sell 10 Mbps and actually have 5 Mbps assigned to a particular subnet (those are just ilustrative numbers). With PCQ the bandwidth is equally distributed between users. What I’ve heard is that since simple queues are sequential, you cannot guarantee the required bandwidth to the users. My guess is that you can, by using PCQ and assigning the queue type that you require. But I’d like to know if that would work.
  • How can I configure simple queues with parents? I haven’t heard too much about it. In queue tree I’d have a leaf for each plan and also address lists for each plan. In this case, would I have a parent queue for each plan? Would the children be each of the clients? I’m totally lost here. Sorry. What I know is that the parent queue needs to have the total bandwidth of the clients assigned.

Considering the few things I know, let’s suppose the following scenario: I have a 10 Mb/s contract with my ISP, and want to offer plans of 1 Mb/s and 2 Mb/s, with a 50% guaranteed bandwidth, so that I can actually sell 20 Mb/s. After I sell those, I end up with 10 Mb/s for each group of users (that would be 5 clients in the 2 Mb/s plan, and 10 clients for the 1 Mb/s plan).

I would have two parent queues: plan_1Mb with a max-limit of 10M, and the plan_2Mb with the same max-limit . Every client would have it’s own simple queue with the proper parent according to the plan, and the queue type would be PCQ to guarantee the limit-at. I’m totally unsure about this, so please help me.