RouterOS限速设置里的Burst(突发值)原理

Burst 允许满足队列需要增加的带宽,甚至要求速率在有限的时间内大于 MIR( max-limit), Burst 发生仅当队列的 average-rate 在 burst-time 时间内小于 burst-threshold。 Burst 停止当队列的 average-rate 在 burst-time时间内大于或者等于 burst-threshlod


Burst 原理很简单,如果 burst 被允许 max-limit 被 burst-limit 代替,当 burst 被禁止 max-limit 恢复不变

  1. burst-limit (整型) :能被 burst 允许达到的最大上传和下载数据
  2. burst-time (时间) :一段时间,单位秒,用于平均速率的计算 (并非实际的 burst 时间长度)
  3. burst-threshold (整型):这个参数是通过计算后比对,并开关 burst 功能
  4. average-rate (隐含只读参数) :路由器计算平均速率根据 burst-time 划分为 16 份,每份都会计算出一个平均速率进行比对
  5. actual-rate (隐含只读参数) : 队列的实际传输带宽

Burst 事例

我们设置的 Queue 速率参数: limit-at=1M , max-limit=2M , burst-threshold=1500k , burst-limit=4M Burst-time=16s

客户将会下载一个4MByte( 32Mbit,队列单位是bit)数据,下载将从0秒开始,第二次下载将开始于第17秒, 最后一分钟传输将停止。


如同我们看到的客户要求的带宽 burst 在 6 秒钟能达到 4Mbps。这个最长的 burst 时间具有一个值( 最长突发时间 = burst-threshold * burst-time / burst-limit)。很快 burst 用完突发时间,剩下的数据下载将到 2Mbps。在 9秒钟后数据被下载完,一段时间没有流量, Burst 有 7 秒钟的空闲,并重新计算,第 16 秒开始将有新的下载开始。

注:从这个事例我们证明可以发生在下载的中间部分, Burst 持续了 4 秒钟。

每个 Average rate(平均速率)是根据 burst time 的 1/16,因此这个事例是 1 秒钟 计算一次平均速率

时间 average-rate burst 实际速率
0 (0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+0)/16=0Kbps average-rate < burst-threshold → Burst 开启 4Mbps
1 (0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+4)/16=250Kbps average-rate < burst-threshold → Burst 开启 4Mbps
2 (0+0+0+0+0+0+0+0+0+0+0+0+0+0+4+4)/16=500Kbps average-rate < burst-threshold → Burst 开启 4Mbps
3 (0+0+0+0+0+0+0+0+0+0+0+0+0+4+4+4)/16=750Kbps average-rate < burst-threshold → Burst 开启 4Mbps
4 (0+0+0+0+0+0+0+0+0+0+0+0+4+4+4+4)/16=1000Kbps average-rate < burst-threshold → Burst 开启 4Mbps
5 (0+0+0+0+0+0+0+0+0+0+0+4+4+4+4+4)/16=1250Kbps average-rate < burst-threshold → Burst 开启 4Mbps
6 (0+0+0+0+0+0+0+0+0+0+4+4+4+4+4+4)/16=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
7 (0+0+0+0+0+0+0+0+0+4+4+4+4+4+4+2)/16=1625Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
8 (0+0+0+0+0+0+0+0+4+4+4+4+4+4+2+2)/16=1750Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
9 (0+0+0+0+0+0+0+4+4+4+4+4+4+2+2+2)/16=1750Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
10 (0+0+0+0+0+0+4+4+4+4+4+4+2+2+2+2)/16=1875Kbps average-rate = burst-threshold → Burst 关闭 0Mbps
11 (0+0+0+0+0+4+4+4+4+4+4+2+2+2+2+0)/16=1875Kbps average-rate = burst-threshold → Burst 关闭 0Mbps
12 (0+0+0+0+4+4+4+4+4+4+2+2+2+2+0+0)/16=1875Kbps average-rate = burst-threshold → Burst 关闭 0Mbps
13 (0+0+0+4+4+4+4+4+4+2+2+2+2+0+0+0)/16=1875Kbps average-rate = burst-threshold → Burst 关闭 0Mbps
14 (0+0+4+4+4+4+4+4+2+2+2+2+0+0+0+0)/16=1875Kbps average-rate = burst-threshold → Burst 关闭 0Mbps
15 (0+4+4+4+4+4+4+2+2+2+2+0+0+0+0+0)/16=1875Kbps average-rate = burst-threshold → Burst 关闭 0Mbps
16 (4+4+4+4+4+4+2+2+2+2+0+0+0+0+0+0)/16=1875Kbps average-rate = burst-threshold → Burst 关闭 0Mbps
17 (4+4+4+4+4+2+2+2+2+0+0+0+0+0+0+0)/16=1625Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
18 (4+4+4+4+2+2+2+2+0+0+0+0+0+0+0+2)/16=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
19 (4+4+4+2+2+2+2+0+0+0+0+0+0+0+2+2)/16=1375Kbps average-rate < burst-threshold → Burst 开启 4Mbps
20 (4+4+2+2+2+2+0+0+0+0+0+0+0+2+2+4)/16=1375Kbps average-rate < burst-threshold → Burst 开启 4Mbps
21 (4+2+2+2+2+0+0+0+0+0+0+0+2+2+4+4)/16=1375Kbps average-rate < burst-threshold → Burst 开启 4Mbps
22 (2+2+2+2+0+0+0+0+0+0+0+2+2+4+4+4)/16=1375Kbps average-rate < burst-threshold → Burst 开启 4Mbps
23 (2+2+2+0+0+0+0+0+0+0+2+2+4+4+4+4)/16=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
24 (2+2+0+0+0+0+0+0+0+2+2+4+4+4+4+2)/16=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
25 (2+0+0+0+0+0+0+0+2+2+4+4+4+4+2+2)/16=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
26 (0+0+0+0+0+0+0+2+2+4+4+4+4+2+2+2)/16=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps
27 (0+0+0+0+0+0+2+2+4+4+4+4+2+2+2+2)/16=1625Kbps average-rate > burst-threshold → Burst 关闭 2Mbps
28 (0+0+0+0+0+2+2+4+4+4+4+2+2+2+2+2)/16=1750Kbps average-rate > burst-threshold → Burst 关闭 2Mbps
29 (0+0+0+0+2+2+4+4+4+4+2+2+2+2+2+2)/16=1875Kbps average-rate > burst-threshold → Burst 关闭 0Mbps
30 (0+0+0+2+2+4+4+4+4+2+2+2+2+2+2+0)/16=1875Kbps average-rate > burst-threshold → Burst 关闭 0Mbps
31 (0+0+2+2+4+4+4+4+2+2+2+2+2+2+0+0)/16=1875Kbps average-rate > burst-threshold → Burst 关闭 0Mbps

当 Burst-time=8s


如果我们减少 burst-time 为 8 秒,我们能看到在这个事例中 burst 仅在下载开始 每个 Average rate(平均速率)是根据 burst time 的 1/16,因此这个事例是 0.5 秒钟计算一次平均速

时间 average-rate burst 实际速率
0 (0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+0)/8=0Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
0.5 (0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+2)/8=250Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
1 (0+0+0+0+0+0+0+0+0+0+0+0+0+0+2+2)/8=500Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
1.5 (0+0+0+0+0+0+0+0+0+0+0+0+0+2+2+2)/8=750Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
2 (0+0+0+0+0+0+0+0+0+0+0+0+2+2+2+2)/8=1000Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
2.5 (0+0+0+0+0+0+0+0+0+0+0+2+2+2+2+2)/8=1250Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
3 (0+0+0+0+0+0+0+0+0+0+2+2+2+2+2+2)/8=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
3.5 (0+0+0+0+0+0+0+0+0+2+2+2+2+2+2+1)/8=1625Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
4 (0+0+0+0+0+0+0+0+2+2+2+2+2+2+1+1)/8=1750Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
4.5 (0+0+0+0+0+0+0+2+2+2+2+2+2+1+1+1)/8=1875Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
5 (0+0+0+0+0+0+2+2+2+2+2+2+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
5.5 (0+0+0+0+0+2+2+2+2+2+2+1+1+1+1+1)/8=2125Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
6 (0+0+0+0+2+2+2+2+2+2+1+1+1+1+1+1)/8=2250Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
6.5 (0+0+0+2+2+2+2+2+2+1+1+1+1+1+1+1)/8=2375Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
7 (0+0+2+2+2+2+2+2+1+1+1+1+1+1+1+1)/8=2500Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
7.5 (0+2+2+2+2+2+2+1+1+1+1+1+1+1+1+1)/8=2625Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
8 (2+2+2+2+2+2+1+1+1+1+1+1+1+1+1+1)/8=2750Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
8.5 (2+2+2+2+2+1+1+1+1+1+1+1+1+1+1+1)/8=2625Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
9 (2+2+2+2+1+1+1+1+1+1+1+1+1+1+1+1)/8=2500Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
9.5 (2+2+2+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
10 (2+2+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2250Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
10.5 (2+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2125Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
11 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
11.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
12 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
12.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
13 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 0Mbps (0Mb per 0,5sek)
13.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+0)/8=1875Kbps average-rate > burst-threshold → Burst 关闭 0Mbps (0Mb per 0,5sek)
14 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+0+0)/8=1750Kbps average-rate > burst-threshold → Burst 关闭 0Mbps (0Mb per 0,5sek)
14.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+0+0+0)/8=1625Kbps average-rate > burst-threshold → Burst 关闭 0Mbps (0Mb per 0,5sek)
15 (1+1+1+1+1+1+1+1+1+1+1+1+0+0+0+0)/8=1500Kbps average-rate > burst-threshold → Burst 关闭 0Mbps (0Mb per 0,5sek)
15.5 (1+1+1+1+1+1+1+1+1+1+1+0+0+0+0+0)/8=1375Kbps average-rate < burst-threshold → Burst 开启 0Mbps (0Mb per 0,5sek)
16 (1+1+1+1+1+1+1+1+1+1+0+0+0+0+0+0)/8=1250Kbps average-rate < burst-threshold → Burst 开启 0Mbps (0Mb per 0,5sek)
16.5 (1+1+1+1+1+1+1+1+1+0+0+0+0+0+0+0)/8=1125Kbps average-rate < burst-threshold → Burst 开启 0Mbps (0Mb per 0,5sek)
17 (1+1+1+1+1+1+1+1+0+0+0+0+0+0+0+0)/8=1000Kbps average-rate < burst-threshold → Burst 开启 2Mbps (1Mb per 0,5sek)
17.5 (1+1+1+1+1+1+1+0+0+0+0+0+0+0+0+1)/8=1000Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
18 (1+1+1+1+1+1+0+0+0+0+0+0+0+0+1+2)/8=1125Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
18.5 (1+1+1+1+1+0+0+0+0+0+0+0+0+1+2+2)/8=1250Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
19 (1+1+1+1+0+0+0+0+0+0+0+0+1+2+2+2)/8=1375Kbps average-rate < burst-threshold → Burst 开启 4Mbps (2Mb per 0,5sek)
19.5 (1+1+1+0+0+0+0+0+0+0+0+1+2+2+2+2)/8=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
20 (1+1+0+0+0+0+0+0+0+0+1+2+2+2+2+1)/8=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
20.5 (1+0+0+0+0+0+0+0+0+1+2+2+2+2+1+1)/8=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
21 (0+0+0+0+0+0+0+0+1+2+2+2+2+1+1+1)/8=1500Kbps average-rate = burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
21.5 (0+0+0+0+0+0+0+1+2+2+2+2+1+1+1+1)/8=1625Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
22 (0+0+0+0+0+0+1+2+2+2+2+1+1+1+1+1)/8=1750Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
22.5 (0+0+0+0+0+1+2+2+2+2+1+1+1+1+1+1)/8=1875Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
23 (0+0+0+0+1+2+2+2+2+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
23.5 (0+0+0+1+2+2+2+2+1+1+1+1+1+1+1+1)/8=2125Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
24 (0+0+1+2+2+2+2+1+1+1+1+1+1+1+1+1)/8=2250Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
24.5 (0+1+2+2+2+2+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
25 (1+2+2+2+2+1+1+1+1+1+1+1+1+1+1+1)/8=2500Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
25.5 (2+2+2+2+1+1+1+1+1+1+1+1+1+1+1+1)/8=2500Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
26 (2+2+2+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
26.5 (2+2+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2250Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
27 (2+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2125Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
27.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
28 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
28.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
29 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
29.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
30 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 2Mbps (1Mb per 0,5sek)
30.5 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps average-rate > burst-threshold → Burst 关闭 0Mbps (0Mb per 0,5sek)
31 (1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+0)/8=1875Kbps average-rate > burst-threshold → Burst 关闭 0Mbps (0Mb per 0,5sek)