有人能解释一下令牌桶的概念吗?还需要帮助解决以下问题.
给定令牌桶大小,b字节; 令牌速率,r字节/秒; 最大输出速率M字节/秒,最大突发时间T 1是多少.
请详细说明如何解决这个问题
小智 7
你读过这个吗?http://en.wikipedia.org/wiki/Token_bucket
基本上,当您想要限制某些内容的速率时,可以使用令牌桶进行限制.以这种方式思考,有人每秒将1个糖果(r)放入桶中,然后每秒只能吃1个糖果.如果你的水桶可以容纳10(b)个糖果,如果你有一段时间没有吃过任何一个,那么你的水桶就会满了,那么你可以一次吃掉10个糖果(M).
我想你可以用这种方式计算关于最大突发时间T的问题的答案.重点是,当你以M率吃糖果时,它也会按照r率进行补充.
t = b/m;
while(1) {
T = (b + (t * r)) / m
if (T == t) return T;
t = T;
}
Run Code Online (Sandbox Code Playgroud)
因此,如果b = 10,则r = 1/sec,M = 2/sec,则T = 9.
| 归档时间: |
|
| 查看次数: |
1257 次 |
| 最近记录: |