Сброс дисциплины очереди обратно к стандартному pfifo_fast?

Я пытаюсь временно установить дисциплину очереди с ограниченной скоростью, а затем удалить ее чуть позже:

# /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 может быть создан вручную:

# /sbin/tc qdisc add dev eth1 root pfifo_fast
qdisc 'pfifo_fast' does not support option parsing

Обходной путь, который я нашел, состоит в создании новой простой дисциплины очереди:

# /sbin/tc qdisc add dev eth1 root prio

Тем не менее, мне было интересно, как сбросить это обратно до реального значения по умолчанию без перезагрузки.

3 ответа

Удалить и добавить новую дисциплину очереди:

tc qdisc del dev eth1 root
tc qdisc add dev eth1 root pfifo

или, если дисциплина очереди уже установлена, вы можете заменить ее напрямую:

tc qdisc replace dev eth1 root pfifo

Страница man для pfifo_fast (man tc-pfifo_fast) говорит, что к интерфейсам автоматически присоединяется qdisc pfifo_fast - когда вы затем добавляете другой qdisc и затем удаляете этот qdisc, pfifo_fast автоматически вернется в сервис.

Это говорит о том, что что-то сломалось в настройке OP.

Протестировано с:

$ uname -a
Linux debian-testing-vm 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64 GNU/Linux
Другие вопросы по тегам