How can i limit http downloading to 64k and allow web browsing to have 256k or more , both using port 80.
Can this be done?
How can i limit http downloading to 64k and allow web browsing to have 256k or more , both using port 80.
Can this be done?
This can be achieved by using the burst feature of RouterOS queueing. This lets you give your users lets say 256 kbit/s for the first 20 seconds of a http session, and then limits them down to 64 kbit/s after that.
That way web surfing (where a request should be done in 20 seconds, or whatever time your configure) is fast, and longer downloads start fast (like surfing) for the first 20 seconds, but is then slowed down to 64 kbit/s.
I think there are examples for this in the forum and/or the manual.
Best regards,
Christian Meis
cmit!
can you please a simple example about bursting… this feature is gonna blow my mind off !!! I’ve tried millions of examples n nothing seems to work fine :S
thank you
Regards,
Not an example, but a page that explains how it works.
hi butche,
thank you for your rapid reply, looked at your article(s), all are fruitfull except the bursting thing! couldn’t understand it well (i’m sorry). can you go more in bried and especially with examples.
let’s say I want my clients at first to start downloading 256kbps and after 8 seconds the bandwidth get down to 96kbps. how can I do that with bursting?
made some simple queues for my clients and their limit-at= 32k/128 & max-limit= 48k/128K and I want to enable the bursting so their internet explorers get 256 when they first browse … thank u in advance
Regards,
Well if limit-at is set, and max-limit is set, it won’t burst. limit-at will be increased to max-limit if bandwidth is available, i think.
You need to set limit-at, burst-time (How long do they burst before the slowdown starts), and burst-limit (Maximum speed they can get during burst-time).
This is all explained, with a example and a complete description of how it works, at http://www.mikrotik.com/docs/ros/2.9/root/queue (256k is burst to 512k).
For your specific example, you need to do something like this on a queue:
max-limit=128k burst-time=8 burst-limit=256k
Bursting will obviously also only happen if there is bandwidth available in whatever parent queue is being used.
This is not correct.
limit-at is the same as CIR
max-limit is the same as MIR
In other words, limit-at is a “guaranteed minimum” speed made available to a queue. max-limit is the maximum speed allowed for a queue (unless bursting is in effect).
Bursting will obviously also only happen if there is bandwidth available in whatever parent queue is being used.
This is true.
Here is a (2.9.x) example:
/ queue simple
add name=“test” target-addresses=192.168.5.146/32
direction=both priority=8 limit-at=0/0
max-limit=128000/128000 burst-limit=1000000/1000000
burst-threshold=256000/256000
burst-time=10s/10s
Using this example, here is what will happen:
Assume that the past 10 seconds (burst-time) there is no traffic that hits this queue. We will look only at download speed (upload is the same in this case). During the 1st second, the user will be able to burst since the average speed (during the last 10 seconds) is currently 0. The average speed is then calculated as (1Mib+0+0+0+0+0+0+0+0+0)/10=100k. The average is compared against the burst threshold and is less that this threshold, so the user can burst for another second. See the chart below:
TIME SPEED AVERAGE BURST
1 1M 100k yes
2 1M 200k yes
3 1M 300k no
4 128k 313k no
5 128k 325k no
6 128k 338K no
7 128k 351k no
As you can see, at some point, the average will drop below the 256k burst-threshold and the user will be able to burst again during the same download. If you set the burst-threshold lower than max-limit, the average will never drop below this threshold during the same download, so user will only be able to burst 1 time. Also, if you make the burst-time for a longer period, the user can burst for a longer period. This is a crazy mathematical equation, and will take some time to figure out the balance that works best for your specific circumstance.
Hope this helps.