I have a router connected to a 16Mbit ISP connection on ether1.
I need to split this bandwidth to 3 interfaces, let’s say to ether2, ether3, ether4, 4Mbit upload/download each.
Alternatively, limiting 3 local IP network ranges to 4Mbit up/down each would also get me to the same goal.
Could someone give me a simple copy/paste solution to start with?
How could I make sure that I am not dropping packets, but delaying them, as long as it is possible? Is there any rule of thumb for setting the queue size?
Should I change values for built-in queue types, or is it recommendable to create my own queue type if I want to use different values?
That isn’t how traffic shaping works. You can’t hold packets forever - what if the client sustains a 10 meg rate to the router for an hour? Do you save all those packets up when shaping to 4 megs? That’s several gigabytes worth of data. Also you’d introduce massive amounts of latency - which systems generally don’t deal well with. If a browser, for example, gives up after not hearing back after 2 seconds and you just held the data and serve it back after 5 seconds, what is the browser supposed to do with that information?
When you rate limit people you’re going to be dropping packets. That’s the whole point of it.
I see.
I was wondering if there is some kind of back-pressure which could be applied to the source of traffic we are trying to limit. I am not sure if dropping packets is the cleanest and nicest (possible) way to go …