você está aqui: Home  → Arquivo de Mensagens

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



 

 

Veja a relação completa dos artigos de Rodrigo Klein Santos

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script