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 恢复不变
- burst-limit (整型) :能被 burst 允许达到的最大上传和下载数据
- burst-time (时间) :一段时间,单位秒,用于平均速率的计算 (并非实际的 burst 时间长度)
- burst-threshold (整型):这个参数是通过计算后比对,并开关 burst 功能
- average-rate (隐含只读参数) :路由器计算平均速率根据 burst-time 划分为 16 份,每份都会计算出一个平均速率进行比对
- actual-rate (隐含只读参数) : 队列的实际传输带宽
Burst 事例
我们设置的 Queue 速率参数: limit-at=1M , max-limit=2M , burst-threshold=1500k , burst-limit=4M Burst-time=16s
客户将会下载一个4MByte( 32Mbit,队列单位是bit)数据,下载将从0秒开始,第二次下载将开始于第17秒, 最后一分钟传输将停止。
%E5%8E%9F%E7%90%86/img1959.jpg)
如同我们看到的客户要求的带宽 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
%E5%8E%9F%E7%90%86/img1963.jpg)
如果我们减少 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) |