2200 字详细讲解计算机网络的“流量管理员”:QoS 服务质量
你好,这里是网络技术联盟站。
在平时工作中,不管是软件开发者、还是运维实施者、还是网络工程师,都会遇到一个专业术语:QoS。像软件开发人员在对接 MQTT 的时候就会面临着 QoS 的设置,像网络工程师在设置流策略的时候,也会面临 QoS 的设置,那么这个 QoS 到底是个什么神器,能够受到多方 IT 技术人员的青睐呢?
本期瑞哥将带大家揭开 QoS 背后的原理,让我们直接开始!
本文介绍网络世界中的 QoS。
什么是 QoS?
英文全称:
Quality of Service
中文名称:服务质量
随着网络使用量增长、流量类型种类越来越多,网络拥塞变得越来越频繁,工程师们很快意识到需要一种方法来控制流量的优先级,并且保证流量的可靠性,这个时候 QoS 技术就应运而生。
QoS,顾名思义,服务质量,就是通过控制流量的走向、停留、速度等来保证服务的可靠运行,保证其质量。
官方一点说法就是:QoS 是一种流量控制过程,可根据特定时间敏感应用程序的要求调整其整体网络流量,减少了常见的质量下降问题,例如网络内的丢包、网络抖动和高延迟等。
举个生活中的例子
堵车的例子用来形容 QoS 再形象不过了,毕竟 QoS 的灵感就是来源于交通堵塞,在网络中叫做流量堵塞。
想象一个场景,在堵车的时候,我们最常看到一个身影:交警。
交警可以迅速起到红绿灯的效果,经过疏散,可以在有限的时间内缓解交通堵塞,那么至于交警如何疏散,这个疏散方法其实就是 QoS 策略。
QoS 为什么如此重要?
QoS 可以通过许多机制保证网络性能稳定性,而且随着物联网 (IoT) 的不断成熟,低延迟的网络需求是极其重要的,比如无人驾驶方面,你说无人汽车能有延迟吗?这个是拿生命开玩笑的,那么 QoS 就可以实现低延迟。
总的来说,QoS 有以下好处:
1、减少延迟
延迟是网络请求从发送方到接收方以及接收方处理它所需的时间,QoS 可以通过策略来减少延迟或加快网络请求的过程。
2、减少抖动
抖动是指由于信号脉冲偏差而导致的数据包速度不规则,QoS 通过相关策略可以极大地减少了抖动的发生。
3、预防丢包
当网络故障或者网络状态不佳时候,容易发生数据包丢失,QoS 可以通过优先处理高性能应用程序的带宽来避免丢包。
4、增强安全性
QoS 可以检测网络中的异常情况,设置特定的 QoS 安全策略来阻止恶意流量确保应用程序的可靠性。
5、降低成本
QoS 可以减少用户升级网络带宽和购买额外网络基础设施的费用,从而节省成本。
6、流量管理
可以通过 QoS 为不同类型的数据包设置不同的带宽,从而达到管理流量的效果,进而避免潜在的网络拥塞的风险。
QoS 的度量指标
一般来说,QoS 有以下四种度量指标:
带宽
带宽是在指定时间内通过网络通信系统传输的信息最大量,通常以兆字节每秒 (Mbps) 为单位,这里注意速度和带宽的区别,不能搞混。
QoS 可以根据时延来对数据包进行优先排序和分配资源,从而起到优化带宽的效果。
时延
时延是数据包从源 IP 地址传输到目标所需的总时间,在理想的计算机网络中,时延应该非常接近于零。
时延又分为好多种时延,最常见的就是单向时延和往返时延。
单向时延:数据包从源到达目的地所需的时间
往返时延:从源到目的地再返回所需的时间
除了这两种时延外,还有:
处理时延
排队时延
序列化时延
传播时延
在这里不做过多介绍。
抖动
抖动是指网络频段上数据包延迟的变化,一般都是因为网络拥塞、时间漂移和路线变化造成的,如果是在实时视频或语音通信网络中,过度的抖动可能会带来很大的问题。
丢包率
丢包就是通信期间数据包的丢失,这个一般就是网络过度拥挤时没有办法像往常一样传输所有数据包,也就是数据包超载了,这个时候会有一部分的数据包将被丢弃。
QoS 服务模型
QoS 服务一般有三种模型:
尽力而为
尽力而为是指所有数据包获得相同优先级的 QoS 模型,尽其所能将数据包发送到目的地,没有任何延迟、延迟、抖动等限制,如果不能送到就直接放,并且不会通知发送者或接收者。
预留资源
预留资源简单来说就是沿网络上的特定路径保留带宽,说白了就是应用程序请求网络进行资源预留,网络设备监控数据包的流向,来确保网络资源可以接收数据包。
差分服务
差分服务简单来说就是将服务的流量进行分类,每种分类都有其优先级,比如被标记为语音分类的流量优先级最高,那么它就最先被处理。
💡 我们在学习技术的时候,很多技术都是来源于生活,技术名词无非就披了一层术语外衣,我们不要被大量的陌生术语吓到,其实每个术语都是有它自己的道理的,仔细想想也真的佩服起名字的人,我们要学会用白话文解释这些术语,并且记忆的时候也直接就记这些白话文,这样才会利于你理解,好多朋友记不住,大多数都是这个门槛。
QoS 工作机制
QoS 工作机制一般就如下几个:
下面我们来分别介绍一下。
分类和标记
分类和标记的工作机制很明显包含两种过程:
分类
标记
如图所示,开始杂乱无章的流量经过分类后,分为视频流类、语音流类、HTTP 流类、FTP 流类,然后每个包都会进行标记。
拥塞管理
当网络流量比较多的情况,容易发生网络拥塞,这个时候我们用 QoS 创建不同优先级的队列,从而缓解拥塞。
拥塞避免
拥塞避免和拥塞管理很相似,我们可以使用 QoS 相关工具管理数据包丢失并减少拥塞。
流量整形和监管
流量监管使用预定义的流量策略来管理网络流量,使用这些配置的流量策略,在超出带宽期间,所需和期望的操作会根据流量种类进行排序,使用此策略,流量会被标记或通过预定义的操作被丢弃。
流量整形不像流量监管那么严格,使用流量整形,流量会受到控制,如果流量超额,它将会使用队列并使一些流量进入等待队列,而不是直接丢弃。
接口限速
接口限速也是流量整形和监管的范畴,接口限速,顾名思义就是针对进行流量的限速,这个没啥好解释的。
总结
QoS 在当今企业 IT 基础架构中越来越重要,QoS 不仅对于网络上的语音和视频流至关重要,而且还是支持新兴物联网 (IoT) 的重要因素。
本文主要从以下方面展开对 QoS 理论的讲解:
什么是 QoS?
QoS 为什么如此重要?
1、减少延迟
2、减少抖动
3、预防丢包
4、增强安全性
5、降低成本
6、流量管理
QoS 的度量指标
带宽
时延
抖动
丢包率
QoS 服务模型
尽力而为
预留资源
差分服务
QoS 工作机制
分类和标记
拥塞管理
拥塞避免
流量整形和监管
接口限速
版权声明: 本文为 InfoQ 作者【wljslmz】的原创文章。
原文链接:【http://xie.infoq.cn/article/cce3d7b5a5519347569791896】。未经作者许可,禁止转载。
评论