zoukankan      html  css  js  c++  java
  • Hierarchical Token Bucket

    例子一:

    image

    # tc qdisc add dev eth0 root handle 1: htb default 30
    
    # tc class add dev eth0 parent 1: classid 1:1 htb rate 6mbit burst 15k
    
    # tc class add dev eth0 parent 1:1 classid 1:10 htb rate 5mbit burst 15k
    # tc class add dev eth0 parent 1:1 classid 1:20 htb rate 3mbit ceil 6mbit burst 15k
    # tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1kbit ceil 6mbit burst 15k

    The author then recommends SFQ for beneath these classes:

    # tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
    # tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
    # tc qdisc add dev eth0 parent 1:30 handle 30: sfq perturb 10

    Add the filters which direct traffic to the right classes:

    # U32="tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32"
    # $U32 match ip dport 80 0xffff flowid 1:10
    # $U32 match ip sport 25 0xffff flowid 1:20 

    同一个root class下的子类可以相互借流量,如果直接不在qdisc下面创建一个root,而是直接创建三个class,他们之间是不能相互借流量的。

    例子二:

    image

    tc qdisc add dev eth0 root handle 1: htb default 12

    • This command attaches queue discipline HTB to eth0 and gives it the "handle" 1:.
    • This is just a name or identifier with which to refer to it below.
    • The default 12 means that any traffic that is not otherwise classified will be assigned to class 1:12.

    tc class add dev eth0 parent 1: classid 1:1 htb rate 100kbps ceil 100kbps
    tc class add dev eth0 parent 1:1 classid 1:10 htb rate 30kbps ceil 100kbps
    tc class add dev eth0 parent 1:1 classid 1:11 htb rate 10kbps ceil 100kbps
    tc class add dev eth0 parent 1:1 classid 1:12 htb rate 60kbps ceil 100kbps

    The first line creates a "root" class, 1:1 under the qdisc 1:. The definition of a root class is one with the htb qdisc as its parent.

    同一个root class下的子类可以相互借流量,如果直接不在qdisc下面创建一个root,而是直接创建三个class,他们之间是不能相互借流量的。

    tc qdisc add dev eth0 parent 1:10 handle 20: pfifo limit 5
    tc qdisc add dev eth0 parent 1:11 handle 30: pfifo limit 5
    tc qdisc add dev eth0 parent 1:12 handle 40: sfq perturb 10
    tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 1.2.3.4 match ip dport 80 0xffff flowid 1:10
    tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 1.2.3.4 flowid 1:11
  • 相关阅读:
    Apache并发相关的几个配置
    MPM:Multi-Processing Modules
    regsvr32是干什么的
    第一个子容器设置margin-top后和父容器发生外边距合并,解决办法是给父容器设置非0 padding-top或overflow:hidden
    li或dd 浮动后增加图片时高度多出3-5px的问题
    [Error: No platforms added to this project. Please use `cordova platform add <platform>`.]
    单链表的实现(python)
    python的顺序表(list,tuple)
    python装饰器
    梯度下降算法
  • 原文地址:https://www.cnblogs.com/CasonChan/p/4754651.html
Copyright © 2011-2022 走看看