「QoS」- 流量整形(Traffic Shaping)

  CREATED BY JENKINSBOT

问题描述

当从高速链路向低速链路传输数据,或发生突发流量时,带宽会在低速链路出口处出现瓶颈,导致数据丢失严重;

解决方案

这种情况下,需要在进入高速链路的设备出口处进行流量整形;

流量整形,是一种主动调整流量输出速率的措施;

GTS:Generic Traffic Shaping 通用流量整形

原理简述

通过在上游设备的接口出方向配置流量整形,将上游不规整的流量进行削峰填谷,输出一条比较平整的流量,从而解决下游设备的瞬时拥塞问题;

相关技术

通常使用缓冲区和令牌桶来实现流量整型:
1)当报文的发送速度过快时,首先在缓冲区进行缓存,
2)在令牌桶的控制下再均匀地发送这些被缓冲的报文。可使用的令牌桶类型:单速单桶;评估结果只有两种:符合(Green);超标(Red);

基于队列的流量整形

对接口的每个队列进行流量整形,区分优先级;

对于需要进行整形的报文,则先进行令牌桶评估:
1)如果数据包速率符合要求,标记为绿色,并转发;
2)如果数据包速率超标,则当前正在出队的数据包仍然转发出去,同时,将该数据包所在队列的状态改为不可调度,等令牌桶填充了新的令牌时再调度此队列。队列的状态改为不可调度后,该队列允许报文继续入队,但入队满了的时候会丢弃报文。因此,虽然流量整形使超额的数据能够从接口平滑地输出,但并不表示流量整形永远不会丢包;

在出队的时候,不需要整形的报文,直接转发;

基于接口的流量整形

限制接口发送的所有报文的总速率,是对整个出接口进行流量整形,不区分优先级;

在出队的时候,对所有队列的数据包总和进行令牌桶评估:
如果数据包总速率符合要求,标记为绿色,并转发;
如果数据包总速率超标(即令牌桶中的令牌不足),标记为红色,接口暂停调度,等令牌足够时再继续调度;

特性特征

缓存超出策略 / 协定 SLA 规定的超额流量
需要内存去缓存超额流量,可能会带来延迟和抖动
较少的丢包,因而较少导致重传
不能重标记

应用场景

在企业网络中

总部与分支机构通过 ISP 网络使用专线相连。分支机构想要访问 Internet 必须通过总部;

如果所有分支机构同时访问 Internet,可能导致访问 Internet 的 Web 流量产生拥塞,从而被丢弃;

如图所示,为了防止 Web 流量的丢失,可以在企业分支机构的流量进入企业总部之前配置流量整形;

一般用于接口出方向,多用于流量限速,对于丢包敏感流量(如:上网、下载等),推荐使用;