一、概述
QoS,英文全称quality of service,是网络通信协议的设计提供了理论基础。
QoS的度量指标
带宽
时延
指数据报文从发送端到接收端所需要的延迟时间。时延包括传输延迟、发送端处理延迟和接收端处理延迟。
抖动
描述延迟变化的程度,也就是最大延迟和最小延迟的时间差。
抖动对于实时性传输是一个重要参数,特别是语音和视频,抖动过大会造成音频的断续;另外,有些协议是按固定时间间隔发送交互性报文,抖动过大会导致协议振荡。
所有传输系统都有抖动,只要抖动在规定容差之内就不会影响服务质量。利用缓存可以克服过量的抖动,但这将增加时延。
丢包率
丢包率是指数据报文传输是,接收端接收报文是丢失的报文数量占发送端总报文数的比率。
QoS服务模型
QoS模型不是具体的功能,而是设备间QoS设计的方案。
Best-Effort service(尽力而为服务模型)
网络近可能大的带宽发送数据,对时延、丢包率不提供保证。
Integrated service(综合服务模型,简称IntServ)
IntServ模型是指应用程序在发送报文前,首先通过RSVP(Resource Reservation Protocol)信令向网络描述它的流量参数。
网络在流量参数描述的范围内,预留资源(如带宽、优先级)以承诺满足该请求。在收到确认信息,确定网络已经为这个应用程序的报文预留了资源后,应用程序才开始发送报文
Differentiated service(区分服务模型,简称DiffServ)
DiffServ服务模型,也叫差分服务模型,意思就是提供有差别的服务。网络中的流量可以根据多种条件被分成多个类,或者标记不同的优先级;当网络出现拥塞时,不同的类会享受不同的优先处理,从而实现差分服务。同一类的业务在网络中会被聚合起来统一发送,保证相同的延迟、抖动、丢包率等QoS指标。
DiffServ模型不像IntServ模型那样需要信令,也不需要预先向网络提出资源申请。
PCIe协议即采用该类型模型。
基于DiffServ的组成
== 注:图片来源于知乎作者onme0 ==
报文分类和标记
要实现差分服务,首先需要将报文分为不同的类别
流量监管、流量整形和接口限速
流量监管是将流量限制在特定的带宽内。当业务流量超过额定带宽时,超过的流量将被丢弃。
流量整形是一种主动调整流的输出速率的流控措施,使流量比较平稳地传送给下游设备,避免不必要的报文丢弃和拥塞
接口限速是对一个接口上发送或者接收全部报文的总速率进行限制。当不需要对报文类型进行进一步细化分类而要限制通过接口全部流量的速率时,接口限速功能可以简化配置。
拥塞管理
发生拥塞时,通过一定的调度算法安排报文的转发次序,保证网络可以尽快恢复正常
拥塞避免
在拥塞有加剧的趋势时,主动丢弃报文,避免网络拥塞继续加剧
参考文献
QoS服务质量-理论基础