如何改变 classid 的 HTB 率?

如何改变 classid 的 HTB 率?

我有 tc htb qdisc 设置,如下所示

     1:0
      |
     1:1
    /   \
 1:10   1:11

# tc -s -d class show dev br0

显示等级 1:10,速率为 1024kbit,上限为:

class htb 1:10 parent 1:1 prio quantum rate 1024Kbit ceil 1024Kbit linklayer ethernet burst 15Kb/1 mpu 0b cburst 1599b/1 mpu 0b level 0 
 Sent 3271331 bytes 3482 pkt (dropped 0, overlimits 2132 requeues 0) 
 backlog 0b 0p requeues 0
 lended: 3482 borrowed: 0 giants: 0
 tokens: 1866943 ctokens: 187255

我想将类的速率/上限改为 1:10。我尝试了以下方法:

# tc class change dev br0 classid 1:10 rate 1kbit

# tc class change dev br0 parent 1:0 classid 1:10 rate 1kbit prio 1

我在网上找不到任何使用 tc 的 change 命令的示例。我记得在 lartc 文档的某个地方有一个示例,但我再也找不到了。TC 手册页说它具有与 add 相同的命令语法,但我无法使其工作。错误显示:

 Error: Qdisc "rate" is classless.

答案1

也许你可以尝试这样的事情:

 sudo tc class change dev br0 parent 1:1 classid 1:10 htb rate 1kbit ceil 5kbit burst 16b

答案2

我最终删除了该类,并添加了一个具有相同类 ID 的新类定义

#tc class del dev br0 classid 1:10
#tc class add dev br0 parent 1:1 classid 1:10 rate 1kbit

相关内容