我有 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