tc mostra a explicação da saída

3

Eu encontrei o run watch útil ao longo do tc, por exemplo:

[root@router ~]# watch  -dc  tc -p -s -d  qdisc show dev eth0

    Every 2,0s: tc -p -s -d qdisc show dev eth0                                             Sat Oct 19 21:22:26 2013

qdisc prio 1: root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 130714882 bytes 1107132 pkt (dropped 20379, overlimits 0 requeues 0)
 rate 0bit 0pps backlog 0b 0p requeues 0
qdisc sfq 30: parent 1:2 limit 127p quantum 1514b flows 127/1024
 Sent 775116 bytes 1466 pkt (dropped 0, overlimits 0 requeues 0)
 rate 0bit 0pps backlog 0b 0p requeues 0
qdisc tbf 20: parent 1:3 rate 100000bit burst 1600b/8 mpu 0b lat 70.0ms
 Sent 30679 bytes 119 pkt (dropped 170, overlimits 0 requeues 0)
 rate 0bit 0pps backlog 0b 0p requeues 0

Eu me pergunto por que a taxa em todos os casos é 0 .... por quê? Por favor, poderia me recomendar alguma documentação que explique tc show output?

Além disso, a saída do show é um pouco enigmática, por favor, você poderia me recomendar alguma documentação que explique algo como: backlog,

    
por sebelk 20.10.2013 / 02:30

2 respostas

3

Encontrei essa lista de recursos de controle de tráfego que podem ser úteis para você obter conhecimento de domínio suficiente sobre o tópico. O artigo intitula-se: Traffic Control .

Há também este excelente tutorial sobre QoS e Controle de Tráfego, intitulado: Journey to the Centro do Kernel Linux: Controle de Tráfego, Shaping e QoS .

Você também pode querer ter um pico nesta documentação do OpenWRT intitulada: Network Traffic Control . Especificamente, esta seção em Configuration . Eles discutem como o Traffic Control funciona, como configurá-lo e também fornecem uma boa base para a terminologia, juntamente com exemplos, que devem ser úteis para entender melhor como tudo funciona.

Por fim, também encontrei este artigo, intitulado: Manual de disciplina de enfileiramento HTB Linux - guia do usuário , que faz o seguinte comentário sobre a taxa. Aqui eles estavam falando sobre a taxa de aula, mas acho que os dois são semelhantes o suficiente:

trecho

$ tc -s -d class show dev eth0
class htb 1:1 root prio 0 rate 800Kbit ceil 800Kbit burst 2Kb/8 mpu 0b 
    cburst 2Kb/8 mpu 0b quantum 10240 level 3 
 Sent 5914000 bytes 11828 pkts (dropped 0, overlimits 0) 
 rate 70196bps 141pps 
 lended: 6872 borrowed: 0 giants: 0

class htb 1:2 parent 1:1 prio 0 rate 320Kbit ceil 4000Kbit burst 2Kb/8 mpu 0b 
    cburst 2Kb/8 mpu 0b quantum 4096 level 2 
 Sent 5914000 bytes 11828 pkts (dropped 0, overlimits 0) 
 rate 70196bps 141pps 
 lended: 1017 borrowed: 6872 giants: 0

class htb 1:10 parent 1:2 leaf 20: prio 1 rate 224Kbit ceil 800Kbit burst 2Kb/8 mpu 0b 
    cburst 2Kb/8 mpu 0b quantum 2867 level 0 
 Sent 2269000 bytes 4538 pkts (dropped 4400, overlimits 36358) 
 rate 14635bps 29pps 
 lended: 2939 borrowed: 1599 giants: 0

Eles então explicam taxa e pps da seguinte forma:

rate, pps tells you actual (10 sec averaged) rate going thru class. It is the same rate as used by gating.

Referências

por 20.10.2013 / 10:09
1

Parece que a partir da distribuição 12.04 do Ubuntu, as estatísticas de taxa e backlog em htb são sempre 0. Acredito que os estimadores de taxa nessas distros não estão habilitados por padrão porque, se você tiver muito classes htb, pode consumir muito Recursos da CPU.

Tente fazer como root uma vez que sch_htb module foi carregado

echo 1 > /sys/module/sch_htb/parameters/htb_rate_est

Depois de dar o comando acima, substitua a árvore htb . Isso funciona para mim.

    
por 20.03.2014 / 01:41

Tags