Hello. I'm a technician operating a small WISP, and I'm currently trying to make some improvements to our infrastructure. The network we have currently has 40-50 clients. At present, our system is using simple queues for each user to set maximum upload/download speeds for each user. The limits for each client are not the same.
I would like to move away from this model, and have the following requirements for the new implementation:
- Distribution of available bandwidth through PCQ (or another mechanism)
- Different clients have different maximum download/upload rates (for example 256/128, 512/256, and 1024/512)
- Each client's traffic can still be viewed on the graphs page (as is the case with the simple queues we use presently)
- Queue limitations should only affect WAN traffic, and not limit traffic between clients
Caveat: our WAN connection is a VSAT satellite Internet connection. It is a 2Mbps/512kbps connection on a 10:1 contention ratio, which means that the available throughput at any given time varies (generally 400kbps to 2Mbps download).
I have read extensively the wiki and forum posts about queue trees, PCQ, connection/packet marks, etc. However, I am having problems understanding how to implement the proper queue tree. It is my understanding that I need one parent PCQ queue for upload, and another for download. Though, I'm not sure which settings to use in that queue since we don't have consistent bandwidth availability. I want the parent queue to evenly distribute whatever is available, and the individual queues to control maximum limits. If this is possible, how might the queue tree look?
I'm not sure I fully understand connection/packet tagging. Most sources say to tag the new WAN connection first, then use the connection tag as a criteria to tag packets. I understand that this will save resources over evaluating every single packet. However, I still have these questions:
What is the best criteria to use for connection marks? I imagine in-interface = Ether1 for would work for download, but maybe there's a better option.
What is the best way to mark WAN upload traffic for a masqueraded network?
Once a connection coming in on Ether1 is tagged with the download mark, will the upload component of that connection (ACK packets, for example) also be tagged with the download mark, therefor counting against the download queue limit (and vice versa)?
Thanks for your assistance!