Linux 内核 QoS 实现机制
1. QoS 介绍
QoS(Quality of Service)即服务质量。对于网络业务,服务质量包括传输的带宽、传
送的时延、数据的丢包率等。在网络中可以通过保证传输的带宽、降低传送的时延、降低
数据的丢包率以及时延抖动等措施来提高服务质量。
网络资源总是有限的,只要存在抢夺网络资源的情况,就会出现服务质量的要求。服
务质量是相对网络业务而言的,在保证某类业务的服务质量的同时,可能就是在损害其它
业务的服务质量。例如,在网络总带宽固定的情况下,如果某类业务占用的带宽越多,那
么其他业务能使用的带宽就越少,可能会影响其他业务的使用。因此,网络管理者需要根
据各种业务的特点来对网络资源进行合理的规划和分配,从而使网络资源得到高效利用。
流量控制包括以下几种方式:
SHAPING(限制)
当流量被限制,它的传输速率就被控制在某个值以下。限制值可以大大小于有效带宽,
这样可以平滑突发数据流量,使网络更为稳定。shaping(限制)只适用于向外的流量。
SCHEDULING(调度)
通 过 调 度 数 据 包 的 传 输 , 可 以 在 带 宽 范 围 内 , 按 照 优 先 级 分 配 带 宽 。
SCHEDULING(调度)也只适于向外的流量。
POLICING(策略)
SHAPING 用于处理向外的流量,而 POLICIING(策略)用于处理接收到的数据。
DROPPING(丢弃)
如果流量超过某个设定的带宽,就丢弃数据包,不管是向内还是向外。
1