欢迎光临散文网 会员登陆 & 注册

【太阁干货】大厂面试会问到的必备知识点

2021-04-20 13:07 作者:太阁网络  | 我要投稿

流量监管和流量整形通过监督进入网络的流量速率,用来限制流量及其资源的使用,保证更好的为用户提供服务。


如果报文的发送速率大于接收速率,或者下游设备的接口速率小于上游设备的接口速率,就会引起网络拥塞。如果不限制用户发送的业务流量,大量用户不断突发的业务数据会使网络更加拥挤。为了使有限的网络资源能够更好地发挥效用,更好地为更多的用户服务,必须对用户的业务流量加以限制。


流量监管和流量整形就是一种通过对流量规格的监督,来限制流量及其资源使用的流控策略。


监管和整形的区别:


1. 应用方式:监管可以同时应用在接口的出入方向。整形值能用在接口的出方向。

2. 监管可以实现报文的重标记。整形不支持报文的重标记。

3. 监管针对超出的流量采用直接丢弃的方式。整形针对超出的流量不直接丢弃,而是放入缓存(shaping queue(默认使用WFQ队列机制))中并等待后续发送,如果缓存占满后执行Tail-Drop,丢弃方式可以更改为wred.

4. 监管比较适合用于对延时要求较高的业务,例如:语音。但是会带来数据的重传。整形比较适合用于对可靠性要求较高的业务,但是不适合对延时要求较高的业务,因为缓存的数据会造成延时的增大。

5. 流量监管:Car(Committed Access Rate)约定访问速度、CB policing、Line rate流量整形:GenericTraffic Shaping(通用流量整形,简称GTS、FRTS、DTS、CB Shapping、物理接口总速率限制,简称LR。


流量监管的原理:


流量监管由三部分组成:

· Meter:通过令牌桶机制对网络流量进行度量,向Marker输出度量结果。

· Marker:根据Meter的度量结果对报文进行染色,报文会被染成green、yellow、red三种颜色。

· Action:根据Marker对报文的染色结果,对报文进行一些动作,动作包括:

· pass:对测量结果为“符合”的报文继续转发。

· remark + pass:修改报文内部优先级后再转发。

· discard:对测量结果为“不符合”的报文进行丢弃。

· 默认情况下,green报文、yellow报文进行转发,red报文丢弃。


经过流量监管,如果某流量速率超过标准,设备可以选择降低报文优先级再进行转发或者直接丢弃。默认情况下,此类报文被丢弃。


流量整形:


流量整形是一种主动调整流量输出速率的措施,其作用是限制流量与突发,使这类报文以比较均匀的速率向外发送。流量整形通常使用缓冲区和令牌桶来完成,当报文的发送速度过快时,首先在缓冲区进行缓存,在令牌桶的控制下,再均匀地发送这些被缓冲的报文。


当下游设备的接口速率小于上游设备的接口速率或发生突发流量,在下游设备接口处可能出现流量拥塞的情况,此时用户可以通过在上游设备的接口出方向配置流量整形,将上游不规整的流量进行削峰填谷,输出一条比较平整的流量,从而解决下游设备的拥塞问题。


处理流程:


流量整形是一种应用于接口、子接口或队列的流量控制技术,可以对从接口上经过的所有报文或某类报文进行速率限制。


具体处理流程如下:

1. 当报文到来的时候,首先对报文进行分类,使报文进入不同的队列。

2. 若报文进入的队列没有配置队列整形功能,则直接发送该队列的报文;否则,进入下一步处理。

3. 按用户设定的队列整形速率向令牌桶中放置令牌:

· 如果令牌桶中有足够的令牌可以用来发送报文,则报文直接被发送,在报文被发送的同时,令牌做相应的减少。

· 如果令牌桶中没有足够的令牌,则将报文放入缓存队列,如果报文放入缓存队列时,缓存队列已满,则丢弃报文。

4. 缓存队列中有报文的时候,系统按一定的周期从缓存队列中取出报文进行发送,每次发送都会与令牌桶中的令牌数作比较,直到令牌桶中的令牌数减少到缓存队列中的报文不能再发送或缓存队列中的报文全部发送完毕为止。


队列整形后,如果该接口和子接口同时配置了接口整形,则系统还要逐级按照子接口整形速率、接口整形速率对报文流进行速率控制。其处理流程与队列整形相似,但不需要步骤1和步骤2.


自适应流量整形:


流量整形主要是为了解决下游设备的接口速率小于上游设备的接口速率,从而导致下游设备接口入方向丢包的问题。但有些场景下,下游设备的接口速率是不确定的,上游设备无法确定应该把整形参数设置为多少。此时可以配置自适应模板来实现自适应流量整形,通过在上游设备和下游设备间开启NQA检测,根据NQA检测到的下游设备丢包率动态调整整形参数。


自适应模板规定了:

· NQA测试例:通过此测试例检测下游设备接口入方向丢包率,根据检测结果调整整形参数。

· 整形速率范围:上游设备接口出方向的整形速率上下限,整形速率在此范围内动态调整。

· 整形速率调整步长:动态调整整形速率时,每次调整的速率大小。

· 丢包率范围:下游设备接口入方向允许的丢包率范围。当丢包率在此范围之内时,不调整整形速率;当丢包率过大,减小上游设备整形速率;当丢包率过小,且上游设备发生拥塞,增大上游设备整形速率。

· 整形速率增大的时间间隔:当丢包率在阈值附近频繁变化时,就需要频繁调整整形速率,用户可以通过设置此参数,限制增大整形速率的时间间隔,避免频繁更新。


系统根据NQA检测结果中的丢包率等调整整形速率:


触发条件(必须同时满足所有条件)

动作

NQA检测到丢包率大于自适应模板配置的丢包率上限

减小整形速率

NQA检测到丢包率小于自适应模板配置的丢包率下限。上游发送端接口拥塞。距离上次增大整形速率的时间间隔超过自适应模板配置的速率增大时间间隔

增大整形速率

NQA检测到丢包率小于自适应模板配置的丢包率下限上游发送端接口不拥塞

保持当前整形速率

丢包率在自适应模板配置的丢包率范围内

保持当前整形速率

检测失败

自适应模板配置的整形速率上限


【太阁干货】大厂面试会问到的必备知识点的评论 (共 条)

分享到微博请遵守国家法律