I have searched around the forums and found one or two things but I can’t get any of them to work so thought I’d just ask and see if anyone can help .
I am providing transit to customers using a new Cloud Core Router where each customer has an interface with a /30 on and then a routed network. In total I have 100Mb transit to provide between everyone, but I have split it up so that each customer has a guaranteed amount, say 10Mb for ether1, 20Mb for ether2. What I would like to do is guarantee this bandwidth for each interface/customer, but if there is spare bandwidth out of the 100Mb then they are able to use it.
I believe a queue tree is the right way to do it but I’m unable to get it working.
Would anyone be able to advise on how to do this best?
Whether it’s queue trees or simple queues, “limit-at” is the setting you use for guaranteed bandwidth. THOSE settings are satisfied first before RouterOS then divides the remaining bandwidth to cover the max-limits.
AFAIK, in 6.*, there’s pretty much no difference. At least not any that’s statistically significant. In earlier versions, queue trees were the significantly better option.
I’m not sure how queue trees work honestly, so I can’t really help you with those.
With simple queues, you just need one top queue in which you define your ISP’s bandwidth (make the target your local interface though), and then you make a new simple queue for each client (or group of clients, if you want them to share a bandwidth). Those new simple queues must specify the ISP queue as their parent, and have the src address as their target.