+ Responder ao Tópico



  1. #1

    Padrão Ajuda com o HTB e TBF

    Eu tenho o seguinte controle de upload por htb:

    tc qdisc add dev eth0 root handle 1: htb default 15
    tc class add dev eth0 parent 1: classid 1:1 htb rate 100kbit ceil 100kbit
    tc class add dev eth0 parent 1:1 classid 1:10 htb rate 60kbit ceil 100kbit prio 0
    tc class add dev eth0 parent 1:1 classid 1:11 htb rate 20kbit ceil 100kbit prio 1
    tc class add dev eth0 parent 1:1 classid 1:12 htb rate 10kbit ceil 100kbit prio 3
    tc class add dev eth0 parent 1:1 classid 1:13 htb rate 10kbit ceil 100kbit prio 2


    tc filter add dev eth0 parent 1:0 protocol ip prio 1 handle 14 fw classid 1:10
    tc filter add dev eth0 parent 1:0 protocol ip prio 2 handle 15 fw classid 1:11
    tc filter add dev eth0 parent 1:0 protocol ip prio 3 handle 13 fw classid 1:12
    tc filter add dev eth0 parent 1:0 protocol ip prio 3 handle 16 fw classid 1:13

    Com isso, os pacotes que eu marco com 13, 14, 15 e 16 vão ficar limitados
    O que eu quero eh colocar o tbf para funcionar e controlar a latencia. Eu tentei o seguinte comando:

    tc qdisc add dev eth0 root tbf rate 100kbit latency 50ms burst 1540

    ai eu tenho a seguinte mensagem de erro:
    RTNETLINK answers: File exists
    Entao eu cheguei a seguinte conclusao: como já criei um root com o HTB (tc qdisc add dev eth0 root handle 1: htb default 15) não vou conseguir criar outro root com o TBF.

    Entao como eu faco para inserir o TBF (latency 50ms burst 1540) nas regras que já tenho com o HTB?
    Valeu!
    Fabrício

  2. #2

    Padrão controle de banda

    Olá amigo,

    voce tem que atentar pra uma regras:

    1 - voce só pode criar uma classe root e de um tipo apenas, o erro se dá pelo fato de voce tentar criar uma classe root onde já tinha uma.
    2 - depois de criar classes filhas, faça a hierarquia:
    qdisc -> classe [ -> classes filhas ] -> qdisc de handle filha

    voce pode tornar uma classe filha, um handle menor, e nele criar filhas com algoritmos diferentes.

  3. #3
    Visitante

    Padrão Ajuda com o HTB e TBF

    Entao quer dizer que seu eu criei um root HTB nao tenho como controlar a banda pelo TBF?

    Valeu!
    Fabricio

  4. #4

    Padrão controle de banda

    Tem sim, mas nao na root. Voce pode dar para uma classe filha, um handle (diferente do numero usado no root) e nesse handle criar qdisc's e classes filhas que usem outros algoritmos.