问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

令牌桶技术详解:网络流量控制的关键机制

创作时间:
作者:
@小白创作中心

令牌桶技术详解:网络流量控制的关键机制

引用
1
来源
1.
https://info.support.huawei.com/hedex/api/pages/EDOC1100331440/AZM10131/04/resources/dc/dc_fd_qos_0102.html

令牌桶可以看作是一个存放一定数量令牌的容器。系统按设定的速度向桶中放置令牌,当桶中令牌满时,多出的令牌溢出,桶中令牌不再增加。

在使用令牌桶对流量进行评估时,是以令牌桶中的令牌数量是否足够满足报文的转发为依据的。如果桶中存在足够的令牌可以用来转发报文,称流量遵守或符合约定值,否则称为流量超标或不符合约定值。

关于令牌桶处理报文的方式,RFC中定义了两种标记算法:

  • 单速率三色标记(single rate three color marker,srTCM,或称为单速双桶算法)算法,主要关注报文尺寸的突发。
  • 双速率三色标记(two rate three color marker,trTCM,或称为双速双桶算法)算法,主要关注报文速率的突发。

两种算法的评估结果都是为报文打上红、黄、绿三种颜色的标记,所以称为“三色标记”。QoS会根据报文的颜色做相应的处理,两种算法都可以工作于色盲模式和色敏模式下。以下以色盲模式为例对标记算法进行详细介绍。

单速双桶

单速双桶采用单速三色标记器srTCM(Single Rate Three Color Marker)算法对流量进行测评,根据评估结果为报文打颜色标记,即绿色、黄色和红色。

图1单速双桶示意图

如图1所示,为方便描述将两个令牌桶称为C桶和E桶,用Tc和Te表示桶中的令牌数量。单速双桶有3个参数:

  • CIR:承诺信息速率,表示向C桶中投放令牌的速率,即C桶允许传输或转发报文的平均速率;
  • CBS:承诺突发尺寸,表示C桶的容量,即C桶瞬间能够通过的承诺突发流量;
  • EBS(Excess Burst Size):超额突发尺寸,表示E桶的容量,即E桶瞬间能够通过的超出突发流量。

系统按照CIR速率向桶中投放令牌:

  • 若Tc<CBS,Tc增加;
  • 若Tc=CBS,Te<EBS,Te增加;
  • 若Tc=CBS,Te=EBS,则都不增加。

对于到达的报文,用B表示报文的大小:

  • 若B≤Tc,报文被标记为绿色,且Tc减少B;
  • 若Tc<B≤Te,报文被标记为黄色,且Te减少B;
  • 若Tc<B并且Te<B,报文被标记为红色,且Tc和Te都不减少。

双速双桶

双速双桶采用双速三色标记器trTCM(Two Rate Three Color Marker)算法对流量进行测评,根据评估结果为报文打颜色标记,即绿色、黄色和红色。

图2双速双桶示意图

如图2所示,为方便描述将两个令牌桶称为P桶和C桶,用Tp和Tc表示桶中的令牌数量。双速双桶有4个参数:

  • PIR(Peak information rate):峰值信息速率,表示向P桶中投放令牌的速率,即P桶允许传输或转发报文的峰值速率,PIR大于CIR;
  • CIR:承诺信息速率,表示向C桶中投放令牌的速率,即C桶允许传输或转发报文的平均速率;
  • PBS(Peak Burst Size):峰值突发尺寸,表示P桶的容量,即P桶瞬间能够通过的峰值突发流量;
  • CBS:承诺突发尺寸,表示C桶的容量,即C桶瞬间能够通过的承诺突发流量。

系统按照PIR速率向P桶中投放令牌,按照CIR速率向C桶中投放令牌:

  • 当Tp<PBS时,P桶中令牌数增加,否则不增加。
  • 当Tc<CBS时,C桶中令牌数增加,否则不增加。

对于到达的报文,用B表示报文的大小:

  • 若Tp<B,报文被标记为红色;
  • 若Tc<B≤Tp,报文被标记为黄色,且Tp减少B;
  • 若B≤Tp并且B≤Tc,报文被标记为绿色,且Tp和Tc都减少B。

色敏模式

色敏模式下,如果到达的报文本身已经被标记为红、黄、或者绿等颜色,令牌桶对流量的评估会参考报文已标记颜色,即报文本身已携带颜色会影响令牌桶的评估结果,评估机制简单的来说遵循以下原则:

  • 如果报文已被标记为绿色,则令牌桶的评估机制与色盲模式保持一致。
  • 如果报文已被标记为黄色,则令牌桶根据报文长度和令牌数的大小,为符合流量规定的报文标记为黄色,为不符合的报文标记为红色。
  • 如果报文已被标记为红色,则令牌桶直接将到达报文标记为红色。
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号