Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
QOS com HTB
Colaboração: Rodrigo Klein Santos
Data de Publicação: 14 de Janeiro de 2005
Muito se fala sobre Controle de Banda, QOS, e quando se pensa em Linux, achamos muita documentação para o CBQ.
Mas poucos conhecem o HTB, que pelo menos pra mim foi mais facil que o CBQ.
Vamos entender um pouco como se configura o HTB
Abaixo tenho um exemplo de script, que foi retirado do site do HTB e estou dando uma breve explicação sobre o exemplo.
#!/bin/bash # Abaixo estou definindo a interface para o HTB utilizando o # comando 'tc', ou seja, estou dizendo que agora ela trabalhará # com o HTB e não mais com o PFIFO. tc qdisc add dev eth0 root handle 1: htb default 12 # Criando as classes com seus respectivos limites de banda... # # Essa é a classe mãe da interface, ou seja, é a classe com o # total de banda, o total do seu link ou da sua placa de rede, da # interface... # aqui estou dizendo que o nosso link é de 100kbps tc class add dev eth0 parent 1: classid 1:1 htb rate 100kbps ceil 100kbps # # Essas são as demais classes filhas... # esta primeira é a 1:10 que tem banda garantida de 30kbps ou # seja, nunca menos que isso.... E pode chegar a 100kbps se as # outras classes não tiverem usando o restante da banda do # link que colocamos acima com 100kbps.. # Por isso 30kbps (garantia) ceil 100kbps (maximo)... # Oque seria a banda garantida ? # Seria a banda que esta classe teria no momento em que o link # estivesse com trafego alto, ou seja, mesmo que outra classe # estivesse precisando de banda a classe em questão teria essa # "banda garantida" (claro se estivesse usando), se estiver # ociosa a banda da classe em questão, as outras usariam. tc class add dev eth0 parent 1:1 classid 1:10 htb rate 30kbps ceil 100kbps # Esta é a 1:11 que tem 10kbps de banda garantida e 100kbps # caso a classe mãe tenha banda ociosa... tc class add dev eth0 parent 1:1 classid 1:11 htb rate 10kbps ceil 100kbps # essa é a mesma coisa, 60kbps de banda garantida... tc class add dev eth0 parent 1:1 classid 1:12 htb rate 60kbps ceil 100kbps # # Aqui você coloca quem você quer na classe que você quizer.. # # Aqui você está colocando o IP source 1.2.3.4 com destino a # porta 80 na classe 1:10 que é a de "30kbps ceil 100kbps" tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 \ match ip src 1.2.3.4 match ip dport 80 0xffff flowid 1:10 tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 \ match ip src 1.2.3.4 flowid 1:11
E assim por diante...
É claro que o HTB tem diversas outras configurações avançadas, mas no momento queremos apenas colocar pra funcionar e esta serve bem ao proposito de controlar banda.
Você pode encontrar outras referências no proprio site do HTB
Referências Adicionais
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.




