Manual:Queues - Burst: Difference between revisions

From MikroTik Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 2: Line 2:


==Theory==
==Theory==
To understand burst it is necessary to be aware of 5 concepts:
 
# '''burst-limit''' (NUMBER) : maximal upload/download data rate which can be reached while the burst is active
Burst is a feature that allows to satisfy queue requirement for additional bandwidth even if required rate is bigger that '''MIR''' ('''max-limit''') for a short period of time.
 
Burst can occur only if '''average-rate''' of the queue for the last '''burst-time''' seconds  is smaller that '''burst-threshold'''.
Burst must stop if '''average-rate''' of the queue for the last '''burst-time''' seconds  is bigger or equal to '''burst-threshold'''
 
Burst mechanism is simple - if burst is allowed '''max-limit''' value is replaced by '''burst-limit''' value. When burst is disallowed '''max-limit''' value remains unchanged.
 
 
# '''burst-limit''' (NUMBER) : maximal upload/download data rate which can be reached while the burst is allowed
# '''burst-time''' (TIME) : period of time, in seconds, over which the average data rate is calculated. (This is NOT the time of actual burst)
# '''burst-time''' (TIME) : period of time, in seconds, over which the average data rate is calculated. (This is NOT the time of actual burst)
# '''burst-threshold''' (NUMBER) : when average data rate is below this value - burst is allowed, as soon as average data rate reach this value - burst is denied. (basically this is burst on/off switch). For optimal burst behavior this value should above limit-at value and below max-limit value
# '''burst-threshold''' (NUMBER) : basically this is value of burst on/off switch.  
# '''average-rate''' (read-only) : Every 1/16 part of the '''burst-time''', the router calculates the average data rate of each class over the last '''burst-time''' seconds.
# '''average-rate''' (read-only) : Every 1/16 part of the '''burst-time''', the router calculates the average data rate of each class over the last '''burst-time''' seconds.
# '''actual-rate''' (read-only) : actual traffic transfer rate of the queue
# '''actual-rate''' (read-only) : actual traffic transfer rate of the queue


To simplify calculations for examples we will use limit-at=1M, max-limit=2M, burst-threshold=1500k, burst-limit=4M
==Example 1==
'''
Values:
limit-at=1M,  
max-limit=2M  
burst-threshold=1500k  
burst-limit=4M
burst-time=8s'''


Average rate is calculated every 1/16 of burst time, so in this case 0,5s


==Example Burst-time=8s==


Average rate is calculated every 1/16 of burst time, so in this case 0,5s
[[Image:Burst time.8.part1.JPG]]


[[Image:Burst time.8.part2.JPG]]


:Zero second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+0)/8=0Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
:Zero second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+0)/8=0Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
Line 65: Line 81:
:30,0 second - average-rate=(0+1+2+2+2+2+2+1+1+1+1+1+1+1+1+1)/8=2250Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps  (1Mb per 0,5sek)
:30,0 second - average-rate=(0+1+2+2+2+2+2+1+1+1+1+1+1+1+1+1)/8=2250Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps  (1Mb per 0,5sek)
:30,5 second - average-rate=(1+2+2+2+2+2+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps  (1Mb per 0,5sek)
:30,5 second - average-rate=(1+2+2+2+2+2+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps  (1Mb per 0,5sek)
:30,5 second - average-rate=(2+2+2+2+2+1+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps  (1Mb per 0,5sek)
:31,0 second - average-rate=(2+2+2+2+2+1+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps  (1Mb per 0,5sek)


[[Image:Burst time.8.part1.JPG]]
[[Image:Burst time.8.part2.JPG]]





Revision as of 09:59, 14 October 2008

Theory

Burst is a feature that allows to satisfy queue requirement for additional bandwidth even if required rate is bigger that MIR (max-limit) for a short period of time.

Burst can occur only if average-rate of the queue for the last burst-time seconds is smaller that burst-threshold. Burst must stop if average-rate of the queue for the last burst-time seconds is bigger or equal to burst-threshold

Burst mechanism is simple - if burst is allowed max-limit value is replaced by burst-limit value. When burst is disallowed max-limit value remains unchanged.


  1. burst-limit (NUMBER) : maximal upload/download data rate which can be reached while the burst is allowed
  2. burst-time (TIME) : period of time, in seconds, over which the average data rate is calculated. (This is NOT the time of actual burst)
  3. burst-threshold (NUMBER) : basically this is value of burst on/off switch.
  4. average-rate (read-only) : Every 1/16 part of the burst-time, the router calculates the average data rate of each class over the last burst-time seconds.
  5. actual-rate (read-only) : actual traffic transfer rate of the queue

Example 1

Values: limit-at=1M, max-limit=2M burst-threshold=1500k burst-limit=4M burst-time=8s

Average rate is calculated every 1/16 of burst time, so in this case 0,5s


Burst time.8.part1.JPG

Burst time.8.part2.JPG

Zero second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+0)/8=0Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
0,5 second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+0+0+0+0+2)/8=250Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
1,0 second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+0+0+0+2+2)/8=500Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
1,5 second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+0+0+2+2+2)/8=750Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
2,0 second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+0+2+2+2+2)/8=1000Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
2,5 second - average-rate=(0+0+0+0+0+0+0+0+0+0+0+2+2+2+2+2)/8=1250Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
3,0 second - average-rate=(0+0+0+0+0+0+0+0+0+0+2+2+2+2+2+2)/8=1500Kbps, average-rate = burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
3,5 second - average-rate=(0+0+0+0+0+0+0+0+0+2+2+2+2+2+2+1)/8=1625Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
4,0 second - average-rate=(0+0+0+0+0+0+0+0+2+2+2+2+2+2+1+1)/8=1750Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
4,5 second - average-rate=(0+0+0+0+0+0+0+2+2+2+2+2+2+1+1+1)/8=1875Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
5,0 second - average-rate=(0+0+0+0+0+0+2+2+2+2+2+2+1+1+1+1)/8=2000Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
5,5 second - average-rate=(0+0+0+0+0+2+2+2+2+2+2+1+1+1+1+1)/8=2125Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
6,0 second - average-rate=(0+0+0+0+2+2+2+2+2+2+1+1+1+1+1+1)/8=2250Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
6,5 second - average-rate=(0+0+0+2+2+2+2+2+2+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
7,0 second - average-rate=(0+0+2+2+2+2+2+2+1+1+1+1+1+1+1+1)/8=2500Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
7,5 second - average-rate=(0+2+2+2+2+2+2+1+1+1+1+1+1+1+1+1)/8=2625Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
8,0 second - average-rate=(2+2+2+2+2+2+1+1+1+1+1+1+1+1+1+1)/8=2750Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
8,5 second - average-rate=(2+2+2+2+2+1+1+1+1+1+1+1+1+1+1+1)/8=2625Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
9,0 second - average-rate=(2+2+2+2+1+1+1+1+1+1+1+1+1+1+1+1)/8=2500Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
9,5 second - average-rate=(2+2+2+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
10,0 second - average-rate=(2+2+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2250Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
10,5 second - average-rate=(2+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2125Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
11,0 second - average-rate=(1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)

19,0 second - average-rate=(1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1)/8=2000Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
19,5 second - average-rate=(1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+0)/8=1875Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
20,0 second - average-rate=(1+1+1+1+1+1+1+1+1+1+1+1+1+1+0+0)/8=1750Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
20,5 second - average-rate=(1+1+1+1+1+1+1+1+1+1+1+1+1+0+0+0)/8=1625Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
21,0 second - average-rate=(1+1+1+1+1+1+1+1+1+1+1+1+0+0+0+0)/8=1500Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
21,5 second - average-rate=(1+1+1+1+1+1+1+1+1+1+1+0+0+0+0+0)/8=1375Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
22,0 second - average-rate=(1+1+1+1+1+1+1+1+1+1+0+0+0+0+0+0)/8=1250Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
22,5 second - average-rate=(1+1+1+1+1+1+1+1+1+0+0+0+0+0+0+0)/8=1125Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=0Mbps (0Mb per 0,5sek)
23,0 second - average-rate=(1+1+1+1+1+1+1+1+0+0+0+0+0+0+0+0)/8=1000Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
23,5 second - average-rate=(1+1+1+1+1+1+1+0+0+0+0+0+0+0+0+1)/8=1000Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
24,0 second - average-rate=(1+1+1+1+1+1+0+0+0+0+0+0+0+0+1+2)/8=1125Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
24,5 second - average-rate=(1+1+1+1+1+0+0+0+0+0+0+0+0+1+2+2)/8=1250Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
25,0 second - average-rate=(1+1+1+1+0+0+0+0+0+0+0+0+1+2+2+2)/8=1375Kbps, average-rate < burst-threshold -> Burst is allowed -> Actual-rate=4Mbps (2Mb per 0,5sek)
25,5 second - average-rate=(1+1+1+0+0+0+0+0+0+0+1+2+2+2+2+2)/8=1500Kbps, average-rate = burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
26,0 second - average-rate=(1+1+0+0+0+0+0+0+0+1+2+2+2+2+2+1)/8=1500Kbps, average-rate = burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
26,5 second - average-rate=(1+0+0+0+0+0+0+0+1+2+2+2+2+2+1+1)/8=1500Kbps, average-rate = burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
27,0 second - average-rate=(0+0+0+0+0+0+0+1+2+2+2+2+2+1+1+1)/8=1500Kbps, average-rate = burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
27,5 second - average-rate=(0+0+0+0+0+0+1+2+2+2+2+2+1+1+1+1)/8=1625Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
28,0 second - average-rate=(0+0+0+0+0+1+2+2+2+2+2+1+1+1+1+1)/8=1750Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
28,5 second - average-rate=(0+0+0+0+1+2+2+2+2+2+1+1+1+1+1+1)/8=1875Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
29,0 second - average-rate=(0+0+0+1+2+2+2+2+2+1+1+1+1+1+1+1)/8=2000Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
29,5 second - average-rate=(0+0+1+2+2+2+2+2+1+1+1+1+1+1+1+1)/8=2125Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
30,0 second - average-rate=(0+1+2+2+2+2+2+1+1+1+1+1+1+1+1+1)/8=2250Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
30,5 second - average-rate=(1+2+2+2+2+2+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)
31,0 second - average-rate=(2+2+2+2+2+1+1+1+1+1+1+1+1+1+1+1)/8=2375Kbps, average-rate > burst-threshold -> Burst not allowed -> Actual-rate=2Mbps (1Mb per 0,5sek)


Example Burst-time=16s

Burst time.16.part1.JPG Burst time.16.part2.JPG