Redefinindo uma disciplina de fila de volta para a padrão pfifo_fast?


13

Estou tentando definir temporariamente uma disciplina de fila com taxa limitada e removê-la um pouco mais tarde:

# /sbin/tc qdisc add dev eth1 root tbf rate 600kbit latency 50ms burst 1540
# /sbin/tc qdisc del dev eth1 root

Infelizmente, isso remove completamente a disciplina da fila e impede que as transferências de dados de saída funcionem após a exclusão da fila.

Eu esperava poder redefinir a disciplina da fila para a padrão:

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

No entanto, não parece que o qdisc pfifo_fast possa ser criado manualmente:

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

A solução alternativa que encontrei é criar uma nova disciplina simples de fila:

# /sbin/tc qdisc add dev eth1 root prio

No entanto, eu queria saber como redefinir isso de volta ao padrão real sem reiniciar.

Respostas:


11

para remover e adicionar uma nova disciplina de fila:

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

ou se uma disciplina de fila já estiver em vigor, você poderá substituí-la diretamente:

tc qdisc replace dev eth1 root pfifo

1
Isso não é redefinido para pfifo_fast, apenas pfifo, que é diferente. O comentário do OP sobre o que acontece se você tentar fazer isso com '_fast' é relevante.
Thomas Thorogood


2

A página de manual do pfifo_fast (man tc-pfifo_fast) diz que as interfaces têm o qdisc pfifo_fast anexado automaticamente - quando você adiciona um qdisc diferente e exclui esse qdisc, o pfifo_fast volta automaticamente ao serviço.

Isso sugere que algo quebrou na configuração do OP.

Testado com:

$ uname -a
Linux debian-testing-vm 3.2.0-4-amd64 #1 SMP Debian 3.2.41-2 x86_64 GNU/Linux
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.