解决方案
令牌桶:使用令牌桶对流量进行评估,是否满足报文转发的条件;
其原理是:以特定的速度,来向桶中投放令牌。在数据转发前中,需要从桶中获取令牌。仅当获取到令牌,数据才能得以转发。通过令牌的投放速度,来控制流量的转发速度。
概念术语
CIR,承诺信息速率,unit: kbps:表示向令牌桶中投放令牌的速率
CBS:承诺突发尺寸,unit: byte:用来定义在部分流量超过 CIR 之前的最大突发流量,即为令牌桶的容量
EBS:峰值突发尺寸,unit: byte:用来定义每次突发所允许的最大的流量尺寸
PIR:峰值信息速率,unit: kbps:表示端口允许的突发流量的最大速率,表示向令牌桶中投放令牌的速率,大于 CIR
PBS:峰值突发尺寸,unit: byte:用来定义每次突发所允许的最大的流量尺寸,即为令牌桶的容量,大于 CBS
单桶单速双色标记法
特新特征
单桶单速双色标记法,不允许突发流量,只有承诺流量
原理简述
为方便用 Tc 和 Te 表示桶中的令牌数量,Tc 和 Te 初始化等于 CBS 和 EBS;
当报文到来后,直接与桶中的令牌数相比较:
1)如果有足够的令牌,就转发(通常用一个令牌关联一个比特的转发权限),
2)如果没有足够的令牌,则丢弃或缓存;
在色盲模式下,对于单速单桶:
1)如果报文长度不超过 C 桶中的令牌数 Tc,则报文被标记为绿色,且 Tc=Tc-B,
2)如果报文长度超过 C 桶中的令牌数 Tc,报文被标记为红色,Tc 值不变;
双桶单速三色标记法
特性特征
双桶单速三色标记法,允许短暂的突发流量
原理简述
当报文到来后,直接与桶中的令牌数相比较:
1)如果有足够的令牌,就转发(通常用一个令牌关联一个比特的转发权限)
2)如果没有足够的令牌则丢弃或缓存;
为方便,用 Tc 和 Te 表示桶中的令牌数量,Tc 和 Te 初始化等于 CBS 和 EBS;
在色盲模式下,对于双桶单速:
1)如果报文长度不超过 C 桶中的令牌数 Tc,则报文被标记为绿色,且 Tc=Tc-B,
2)如果报文长度超过 C 桶中的令牌数 Tc 但不超过 E 桶中的令牌数 Te,则报文被标记为黄色,且 Te=Te-B,
3)如果报文长度超过 E 桶中的令牌数 Te,报文被标记为红色,但 Tc 和 Te 不变;
双桶双速三色标记法
特性特征
双桶双速三色标记法,允许长期的突发流量
原理简述
为方便,用 Tc 和 Tp 表示桶中的令牌数量,Tc 和 Tp 初始化等于 CBS 和 PBS;
针对双速率三色标记算法,其关注的是速率的突发:
1)首先评估的是数据流的速率是否符合规定的突发要求,其规则是先比较 P 桶,再比较 C 桶;
在色盲模式下,在对到达报文(假设数据包大小为 B)进行评估时,遵循以下规则:
如果报文长度超过 P 桶中的令牌数 Tp,则报文被标记为红色,且 Tc 和 Tp 保持不变;
如果报文长度不超过 P 桶中的令牌数 Tp 但超过 C 桶中的令牌数 Tc,则报文被标记为黄色,且 Tp=Tp-B;
如果报文长度不超过 C 桶中的令牌数 Tc,报文被标记为绿色,且 Tp=Tp-B,Tc=Tc-B;