tc:一个 qdisc 对应两个类(多队列)

tc:一个 qdisc 对应两个类(多队列)

tc我的服务器上的默认配置是:

# tc class show dev ens5
class mq :1 root
class mq :2 root

# tc qdisc show dev ens5
qdisc mq 0: root
qdisc fq 0: parent :2 limit 10000p flow_limit 100p buckets 1024 orphan_mask 1023 quantum 18030 initial_quantum 90150 low_rate_threshold 550Kbit refill_delay 40.0ms
qdisc fq 0: parent :1 limit 10000p flow_limit 100p buckets 1024 orphan_mask 1023 quantum 18030 initial_quantum 90150 low_rate_threshold 550Kbit refill_delay 40.0ms

我正在尝试复制这个精确的配置,但值已经改变。

似乎我无法更改上面列出的内容,因此我尝试了以下操作:

tc qdisc add dev ens5 root mq

这会将设备的类别更改为以下内容:

# tc class show dev ens5
class mq 1:1 root
class mq 1:2 root

但是,我似乎无法创建两个fq具有相同句柄的 qdisc(0:在上面的例子中)

我正在尝试这个:

# tc qdisc add dev ens5 parent 1:1 handle 10: fq initial_quantum 48448 maxrate 200Mbit
# tc qdisc add dev ens5 parent 1:2 handle 10: fq initial_quantum 48448 maxrate 200Mbit
Error: Exclusivity flag on, cannot override.

有什么办法可以让我拥有qdisc一个两个都父类指向什么?

答案1

每个队列规则都必须具有唯一的句柄。此外,队列规则和类别的图表应该是非循环的:每个节点应该只有一个父节点。因此,没有办法实现您想要的。

相关内容