我试图暂时设置一个限速排队规则,稍后再删除它:
# /sbin/tc qdisc add dev eth1 root tbf rate 600kbit latency 50ms burst 1540 # /sbin/tc qdisc del dev eth1 root
不幸的是,这完全删除了队列纪律,并且在队列被删除后阻止了传出的数据传输工作。
我希望能够将队列规则重置为默认值:
qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
但是看起来不像pfifo_fast qdisc可以手动创build:
# /sbin/tc qdisc add dev eth1 root pfifo_fast qdisc 'pfifo_fast' does not support option parsing
我find的解决方法是创build一个新的简单的队列纪律:
# /sbin/tc qdisc add dev eth1 root prio
但是,我想知道如何重新设置为真正的默认值,而无需重新启动。
删除并添加一个新的队列纪律:
tc qdisc del dev eth1 root tc qdisc add dev eth1 root pfifo
或者如果队列规范已经到位,您可以直接replace它:
tc qdisc replace dev eth1 root pfifo
从http://www.knowplace.org/pages/howtos/traffic_shaping_with_linux/examples.php :
tc qdisc del dev eth1 root
pfifo_fast(man tc-pfifo_fast)的手册页说接口自动连接了pfifo_fast qdisc – 然后当你添加一个不同的qdisc然后删除这个qdisc时,pfifo_fast会自动回到服务状态。
这表明在OP的设置中有些事情已经被打破。
经testing:
$ uname -a Linux debian-testing-vm 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64 GNU/Linux