QoS-拥塞管理与拥塞避免(上)

拥塞管理与拥塞避免
--------------------------------前言------------------------------------
·在企业网络中,我们可能带宽没那么充分的前提下,但是有些数据非常重要的,例如我们的VoIP、视频流等等,并且有其他的FTP/HTTP甚至是BT的服务存在的前提下,都需要去使用部分带宽,如果存在贪婪的业务,就会导致带宽全部占满,那么敏感性流量就会导致延迟较高的情况发生,甚至出现大规模丢包,即使把带宽占满了,那么我们为了保证敏感性流量或者说是重要的业务,那么我们就可以实施拥塞管理
·拥塞管理实际上就是学习队列机制,就是让数据排队,某些队列进去以后,相当于是银行VIP待遇,只要你有数据包立马就能走,那么延迟就会相应较低;但是对于部分流量可能能被限制,例如把BT、迅雷的流量全部引入队列里,所以对于拥塞管理来说,是各种各样的管理机制。
·为了保障重要业务,例如VoIP等等,那么我们可以采用不形成拥塞的方法,不形成拥塞就不会有大规模丢包,因此就会采用拥塞避免
·拥塞避免:通过监视网络资源的使用情况,例如队列的情况,比如队列是否满了,或者内存、缓存区是否满了,在拥塞发生或者是有拥塞发生的趋势的时候,就会将不重要的报文主动丢弃,调整网络流量来接触网络过载。

拥塞现象的产生
QoS-拥塞管理与拥塞避免(上)_第1张图片

  • 拥塞现象的产生可能有几种情况
    ①速率不匹配,例如RTA去往因特网的链路带宽是1Mbps,而左边的交换机到达RTA的链路带宽是100Mbps,那么就会导致我们发送的流量远远大于出口的流量,在这种情况下,可能会发生拥塞的情况
    ②汇聚问题:例如RTA,现在有多个设备向它发送流量,超过了它的链路带宽,也会导致拥塞现象的发生

  • 如果发生拥塞,那么就会引发如下问题
    ①增加了报文传输的时延和抖动。
    ②过高的延迟会引起报文重传。
    ③使网络的有效吞吐率降低,造成网络资源的损害。
    ④加剧耗费大量的网络资源(特别是存储资源),不合理的资源分配甚至可能导致系统陷入资源死锁而崩溃。

  • 拥塞会导致我们的数据在队列里面,如果用FIFO的方式进行传输,肯定会导致流量不能及时获得资源,会导致我们服务质量下降,以及服务性能也会下降,因此我们需要考虑怎么做才能够让我们服务质量达到优化。

  • 在上面提到的速率不匹配设备达到拥塞,实际上要让我设备了解发生拥塞了,因为原先这种情况不一定会导致拥塞,比如
    在这里插入图片描述
    左边是1Gbps,右边是10Mbps,但是没有流量,实际上也不会造成拥塞。

  • 拥塞出现的情况:
    QoS-拥塞管理与拥塞避免(上)_第2张图片
    了解概念:
    在这里插入图片描述
    -如果发生了拥塞,代表硬件队列已经满了

  • 当有数据传送给路由器的时候,实际上会将数据处理后发送给硬件队列,对于硬件队列来说,队列的排序方式就是FIFO,没有优先级之分,按照包到达硬件队列的次序进行发送,硬件队列实际上是有一定的长度的,不是无限的,如果流量来的很多很快,就会导致硬件队列满了。原因就是转发的速率并没有进入的速率快,因此就会拥塞。因此拥塞的体现是硬件队列满了,没有办法容纳数据包,会将数据放入软件队列中,如果没有软件队列就会直接丢包

队列的概念:
QoS-拥塞管理与拥塞避免(上)_第3张图片

  • 硬件队列是存在固定长度的,当然有些设备是可以进行硬件队列长度修改的,但是不建议进行修改,因为设置长了设置短了都会出现问题
  • 有时候我们在接口配置了QoS以后,设备自动会把QoS队列伸长或者缩短,因此不需要去管理
    ·我们操作的时候实际上都是操作软件队列

硬件队列的总结:
QoS-拥塞管理与拥塞避免(上)_第4张图片

拥塞管理实现的第二步

  • 对于不同类型的数据我们放入了不同的队列中,实际上在硬件队列没有满的情况下,我们的数据都是能够FIFO进行发送的,但是如果现在发生了拥塞,那么我们就需要考虑,在拥塞发生时有限转发哪个队列里面的数据,因此需要了解队列的调度机制

队列调度机制:(软件队列)
QoS-拥塞管理与拥塞避免(上)_第5张图片

  • CBQ(Class-based Queueing)基于类的加权公平队列

  • 软件队列默认情况下也是FIFO,实际上如果不去调整的话,那么对于设备来说,软件队列的出现实际上就是硬件队列的加长版

  • 实际上RR和WRR是一种调度的算法,并没有一种队列叫做RR或者WRR队列,但是对于FIFO肯定是个队列

  • 对于PQ实际上也是真正的队列,存在PQ队列,CQ也是队列,WFQ也是队列

  • 在我们本章节主要是介绍FIFO、PQ、WRR、WFQ、PQ+WFQ、CBQ(增强版WFQ)

  • 接下来我们讲的队列全部都是软件队列,硬件队列已经讲完了
    -可以查看QoS拥塞管理与拥塞避免(下)博客

你可能感兴趣的:(QoS)