美文网首页
Linux的TC流量控制和QoS相关

Linux的TC流量控制和QoS相关

作者: XDgbh | 来源:发表于2018-03-20 10:14 被阅读60次
    qos规则有两个重要属性,分别是type和queues。
    • “tc”中,队列(queue)分为无类队列,有类队列。
      无类队列只有一条队列,只有一种队列规则(qdisc);而有类队列分为很多类(class),数据包到达时,根据不同的数据包类型,源目的ip,端口等等属性,被筛选器(filter)划分进不同的类中,不同的类可能有不同的队列规则,不同的类也可以继续划分,嵌套下去。
      type就相当于不同的队列,具有不同的队列规则;queues就相当于有类队列的不同类。

    • 这里的type值设置为”linux-htb”。
      linux-htb使用了”tc”的htb队列(hieratchical token bucket),分层次的令牌桶队列,属于有类队列。
      在无类队列中,最简单的是pfifo_fast队列,采取先入先出的算法,只能延迟数据包发送或丢弃数据包,不能对数据包进行调度,即改变数据包发送顺序。
      还有一种tbf队列(token bucket filter),采取上面提到的令牌桶的算法,而htb就是在tbf的基础上修改为了有类队列,其核心算法还是令牌桶算法。
      Open vSwitch的qos规则除了提供linux-htb类型,还提供了linux-hfsc类型,对应了”tc”中的hsfc队列(hieratchical fair service curve),分层次的公平服务曲线队列,它同时除了针对带宽,还针对延迟对数据包进行调度,其原理参考http://linux-ip.net/articles/hfsc.en

    • Open vSwitch和qos功能相关的命令和属性并不多,所以如果无法满足需求,只能直接使用linux的”tc”功能。

    相关文章

      网友评论

          本文标题:Linux的TC流量控制和QoS相关

          本文链接:https://www.haomeiwen.com/subject/plsvqftx.html