Limitando banda com o CBQ

Este artigo mostra todos os passos necessários para a implementação do recurso de limitação de banda no Linux, utilizando o recurso "CBQ" do Kernel. Confira este excelente artigo disponibilizado na íntegra com todos os scripts necessários.

[ Hits: 104.788 ]

Por: Romulo em 23/09/2003


Introdução



No Slackware é necessário fazer algumas modificações no script, mas no restante é a mesma coisa.

No Red Hat 7.1, por padrão o script já funciona.

No diretório /etc/sysconfig/cbq/ ficam as regras de limitação (classes).

O arquivo de regra funciona assim:
  1. cada arquivo é uma regra;
  2. o nome do arquivo segue o padrão cbq-XXXX.nomedaregra (cbq-0002.fulano), onde XXXX é o numero da regra simples, eu associo XXX ao número do ip do cliente, este número tem obrigatoriamente 4 dígitos, tem que ser 0002 ou maior e pode ser Hexadecimal;

    Onde: "nomedaregra" é um nome na qual você possa associar a regra eu utilizo o login dos usuários.
Arquivo de exemplo cbq-0002.fulano_in64k:

DEVICE=eth0,10Mbit,1Mbit
RATE=64K
WEIGHT=6Kbit
PRIO=5
RULE=192.168.0.2
BOUNDED=yes
ISOLATED=yes

Arquivo de exemplo cbq-0002.fulano_out64k:

DEVICE=eth1,10Mbit,1Mbit
RATE=64K
WEIGHT=6Kbit
PRIO=5
RULE=192.168.0.2,
BOUNDED=yes
ISOLATED=yes

Onde:

DEVICE="nome da interface que vai para o cliente","banda","banda/10"
RATE="velocidade"
WEITH="velocidade/10"
PRIO="prioridade (5 é um valor excelente)"
RULE="ip ou rede a ser controlado"


Exemplos :

192.168.0.2 controla o ip
192.168.0.0/24 controla a rede
192.168.0.2:80 controla o ip utilizando a porta 80
192.168.0.0/24:80

Qualquer destas opções seguidos de "," ex. 192.168.0.2, controla o tráfego de saída da sua rede (upload), sendo importante lembrar que todo tráfego de saída deve ser controlado na interface oposta do cliente.

BOUNDED=yes/no se setado para yes o usuário estará limitado mesmo que o link esteja com folga.

ISOLATED=yes/no se setado para yes indica que o cliente não poderá emprestar banda pra ninguém.

Apesar de não utilizar, vou comentar sobre a opção TIME. Esta opção serve para limitar o acesso em horários predeterminados.

Exemplo:

TIME="hora inicial"-"hora final";"velocidade"/"velocidade/10"

Exemplo prático:

TIME=18:00-06:00;256Kbit/25Kbit

Opções do Kernel necessárias para o funcionamento do CBQ:

Code Matury Level Options ---> 
	[*] Prompt for development and/or incomplete code/drivers

Networking Options --->
	<*> Packet socket
	[*] Routing Messages
	<*> Unix domain sockets
	[*] TCP/IP networking
	[*] IP advanced router
	[*] IP Policy routing 
	[*] IP equal cost multipath
	[*] IP use TOS value as route key
	[*] IP verbose route monitoring
	[*] IP large routing tables
	[*] IP fast network address translation
	[*] optimize as houte not host

QoS and/or fair queueing --->
	[*] QoS and/or fair queueing
	 CBQ packet sheduler
	 CSZ packet sheduler
	 The simplest PRIO pseudosheduler
	 RED queue
	 SFQ queue
	 TEQL queue
	 TBF queue
	[*] QoS support
	[*] Rate estimator
	[*] Packet classifier API
	 Routing table based classifier
	 Firewall based classifier
	 U32 classifier
	 Special RSVP classifier
	 Special RSVP classifier for IPv6
	[*] Ingress traffic policing
OBS: o RedHat 7.1 por default já vem preparado para o CBQ.

Segue abaixo o link para o script de inicialização: Caso alguém necessite de mais informações estou a disposição para maiores esclarecimentos.

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Configurando e-Gen + Tomcat + JSDK

Leitura recomendada

Vodafone Mobile Connect Card driver - Um excelente software para modems 3G

Porque o Linux é difícil

FreeRADIUS - Noções básicas - Parte III

Impressoras/scanners e multifuncionais Insigne GNU/Linux

Instalando o Debian (ilustrado)

  
Comentários
[1] Comentário enviado por gustavo_marcon em 25/09/2003 - 17:36h

Quando eu limito a banda p/ alguns usuarios e compartilho a conexão via algum proxy (se é que precisa de proxy neste caso) o micro que estará servindo de gateway perderá algum desempenho na conexão??

[2] Comentário enviado por _m0dpr0b3_ em 26/09/2003 - 00:29h

Caro Gustavo
Acho que não perderá nenhum rendimento , pq vc irá controlar a bandas das estações e não do gateway .. vc podera ter uma perca nas estações.

Muito Obrigado

[3] Comentário enviado por linko em 26/09/2003 - 16:19h

Segui esses passos, ... mas quando dou start, ele dá um erro:
Illegal "rate"
O que pode ser ??
distro:RH7.1

[4] Comentário enviado por gustavo_marcon em 04/11/2003 - 17:42h

Digamos que eu queira limitar a nos planos de conexões vendidos, mas meu servidor use DHCP, ou seja, cada cliente não terá um IP específico mas sim o IP que o servidor der no momento, então como eu devo fazer p/ dar regras por exemplo p/ que um cliente acessa a 64k e outro a 128k???

[5] Comentário enviado por cmarcelo em 15/01/2004 - 17:58h

Gustavo,
Uma dica seria o seguinte, pelo dhcpd você pode setar ip fixo aos seus clientes:

host cliente {
hardware ethernet MA:C:AD:DR:ES:S!;
fixed-address 192.168.100.123;
}

[6] Comentário enviado por cmarcelo em 15/01/2004 - 18:01h

Eu tenho uma pergunta a fazer,
Eu tenho a uma rede 192.168.1.0/24 e eu quero que cada computador nessa rede use no máximo 64k, se eu criar uma regra tendo como RULE=192.168.1.0/24, todos os computadores juntos só poderão usar no máximo 64k, como que eu faço para limitar em cada computador?
Terei que criar uma regra para cada IP?

Desde já agradecido,
Carlos Marcelo

[7] Comentário enviado por talesntc em 18/01/2004 - 23:28h

Estou utilizando o CBQ para controlar a bande vários clientes, dentro de uma das regras tenho

DEVICE=eth1,10Mbit,1Mbit
RATE=256Kbit
WEIGHT=25Kbit
PRIO=5
RULE=192.168.0.1
RULE=192.168.0.15
RULE=192.168.0.30
BOUNDED=yes
ISOLATED=no

Mesmo com esta regra os ips aqui listados estão navegando na internet mais rápido do que os 256k definidos.
Alguém sabe me dizer o porque?

Tales

[8] Comentário enviado por azariasf em 18/02/2004 - 22:33h

caro amigos quando inicializo o cbq a seguinte menssagem aparece
" tc qdisc del dev eth1 root
tc qdisc add dev eth1 root handle 1 cbq bandwidth 10Mbit avpkt 1000 cell 8
tc class change dev eth1 root cbq weight 1Mbit allot 1514

**CBQ: class ID of cbq-001.rl_1K must be in range <0002-FFFF>!
tc qdisc del dev lo root
tc qdisc del dev eth0 root
tc qdisc del dev eth1 root
tc qdisc del dev ppp0 root
" .
Gostaria de saber o que esta de errado???????

[9] Comentário enviado por gustavo_marcon em 05/03/2004 - 18:38h

saberia me dizer onde encontro os arquivos de instalação do CBQ?

[10] Comentário enviado por gilmol em 09/03/2004 - 12:24h

Estou começando no Linux e queria saber, passo a passo, como eu faço faço a configuração e compilação do CBQ e do QoS no Kernel. Quais são comandos e opções utilizados para fazer a compilação do kernel.

Gilmol

[11] Comentário enviado por djgel em 29/03/2004 - 09:47h

Preciso de Ajuda,
Gostaria de fazer um controle de Banda ( Seja com o TC ou CBQ) que fizesse o seguinte modo ...

Banda Link = 1Mb/1Mb
Banda TOTAL Clientes = 400Kb/200Kb
Banda Garantida a Cada Cliente = 64Kb/64Kb

Queria colocar uma Banda minima de 64Kb/64Kb para cada cliente, onde defini-se como BOUNDED = no .... Logo se tivesse dos 400Kb Banda disponivel, eles poderiam ultrapassar, senão, iam ficar com os 64Kb mesmo como uma garantia ... Enfim, garantiria 64Kb, mas poderia chegar até a 400Kb ...
Montei um CBQ para isto, mas não sobe os Valores das Filas Pais ... com isto ... eles usam quando posto BOUNDED = no até a 1 Mb ... segue os Arquivos em Anexo.

######################################
[root@qos cbq]# cat cbq-0002.in-geral
DEVICE=eth1,400Kbit,40Kbit
RATE=400Kbit
WEIGHT=40Kbit
PRIO=5
BOUNDED=yes

######################################
[root@qos cbq]# cat cbq-0003
cat: cbq-0003: No such file or directory
[root@qos cbq]# cat cbq-0003.in-total
DEVICE=eth1
RATE=400Kbit
WEIGHT=40Kbit
PRIO=5
PARENT=0002
BOUNDED=yes
ISOLATED=no
######################################
[root@qos cbq]# cat cbq-0004.in-Res01
DEVICE=eth1
RATE=64Kbit
WEIGHT=6Kbit
PRIO=3
PARENT=0003
LEAF=none
BOUNDED=no
MARK=1
######################################
[root@qos cbq]# cat cbq-0005.in-Res02
DEVICE=eth1
RATE=64Kbit
WEIGHT=6Kbit
PRIO=3
PARENT=0003
LEAF=sqf
BOUNDED=yes
MARK=2

######################################

E por ai vai

[12] Comentário enviado por viacomp em 03/04/2004 - 18:10h

Caros amigos, sou novato no linux, e a pergunta que faço a voces deve ser um tanto obvia para quem conhece o CBQ:
1) Depois de criar as limitações, como faço para iniciar o serviço do CBQ?
2) O Script que esta disponivel para download deve ficar em que pasta? Junto com as contas?
3) O próprio CBQ ja é também quem vai distribuir a internet na rede ou terei que instalar um outro programa de compartilhamento?
Aguardo!!!

[13] Comentário enviado por diorgenes em 05/05/2004 - 19:14h

olá, utilizo o cbq a tempo, mas estou com um problema, utilizo ips falsos na rede e nas maquina com ip acima do 192.168.22.2 navegam com apenas 64k e o cbq nao funciona, pq isso acontece ? muito obrigado!

[14] Comentário enviado por removido em 08/06/2004 - 12:39h

Olá! Muito bom o artigo, mas eu fiquei com dúvidas. Utilizo o Slackware 9.1... como eu faço para "instalar" o CBQ?? Onde baixo os pacotes, os binários, etc?? Sem falar nas configurações do Kernel.

[15] Comentário enviado por conexao_cefet em 13/06/2004 - 13:34h

Bem glr é +- o seguinte, vamos supor um provedor de internet a radio, eu preciso ter um link "X" e quando eu for compartilhar links com meus clientes terá q ser da seguinte maneira: o cliente 1 e 2 compartilham sozinhos 256k de link. os clientes 3, 4, 5, 6, 7 e 8 compartilham mais 256k, um grupo sem interferir no outro independentes. teria os 512k no servidor. RESUMINDO preciso limitar banda nao por usuarios mais sim por grupos de usuario e obviamente adicionar usuarios nos grupos. devera funcionar na rede um servidor dhcp. as autorizações serao feitas por MAC, so o MAC tal tem acesso, e obviamente dentro do grupo x os usuarios sao MAC 11:11:11:11:11:11 e 22:22:22:22:22:22 e assim por diante. Usuario novato em linux.

[16] Comentário enviado por removido em 09/07/2004 - 17:31h

Eu possuo 3 placas de rede, sendo 2(eth1 e eth2) gateways para redes locais e 1(eth0) recebendo link adsl, alguem poderia me dar uma luz de como eu bloquear uma das placas que servem para rede local e liberar totalmente a outra ? Tudo bem, que posso bloquear a interface de entrada (eth1), mas e quando eu for especificar a de saida ? Vai ou nao entrar em conflito em vista que a de saida é a recebe adsl (eth0) ?
Obrigado!

[17] Comentário enviado por pcnmota em 16/07/2004 - 11:25h

Belissimo artigo companheiro, ja elogiei o script e agora lhe dou os meus parabens pelo artigo, juntamente com o script do cbq me livrou de uma dor de cabeca tremenda por aqui.
Valeu !!!

[18] Comentário enviado por rodrigorojaru em 06/08/2004 - 01:10h

OLA MIGO SOU DE RONDONIA E GOSTARIA DE SABER COMO UTILIZAR CBQ E COMO COLOCAR IP VIRTUAL PARA CONTROLAR BANDA DE UM SISTEMA DE INTERNET VIA RADIO NÃO SEI MUITO DE LINUX SI POSSIVEL GOSTARIA DE TER DETALHES SOBRE A PERGUNTA EU TRABALHO COM O CL9 NO MEU PROVEDOR E ESTOU ESTUDANDO RED HAT POIS ME FALARAM QUE ELE E MELHOR PARA APRENDER

[19] Comentário enviado por mzanetti11 em 06/08/2004 - 10:55h

(URGENTE) sou estudante e estou implementando CBQ, como testo para ver se esta funcionando, implementei com um router, e duas maquinas uma configurada para CBQ e outra normal, como testo da maquina normal para a que tem limitacao de banda??? obs. Nenhuma das maquinas esta ligadas na internet. ME AJUDEM POR FAVOR..
OBRIGADO

[20] Comentário enviado por wesleicoutinho em 13/08/2004 - 17:04h

Eu estou entrando na era do linux e ainda sou um pouco leigo em relação ao pinguim mais graças a vc e seu artigo hoje está tudo blz.

Cara, que espetáculo de artigo, eu já estava ficando louco pois não conseguia controlar minha banda e graças ao seu artigo hoje está tudo muito bem controlado. Obrigado.

[21] Comentário enviado por OpenLine em 16/02/2005 - 15:52h

Ola! o CBQ roda no kurumin? tem como eu colocar mac no lugar do ip para o cliente nao mudar seu ip e pegar um ip que nao esteja controlado?

[22] Comentário enviado por cristiannunes em 08/11/2005 - 11:39h

Como eu poderia controlar a banda em todas as portas menos na 80?
já tentei de tudo e nao estou conseguindo.
Obrigado!

[23] Comentário enviado por fchevitarese em 18/11/2005 - 09:39h

powWwW! Vlws!! tava procurando um tuto para fazer isso!!1


Abraços


fchevitarese

[24] Comentário enviado por demagermani_big em 18/12/2005 - 10:05h

Olá Romulo, parabéns pelo seu artigo !

Montei uma VPN entre Matriz e Filial usando o OpenVpn:
Matriz = 2Mb e 512kb de up, na matriz tenho um servidor de banco de dados e todas as impressoras estão cadastradas (matriz e filial).
Filial = 1Mb e 512Kb de up, com 3 terminais.

Problemas:
- algumas vezes quando o usuario pede impressão não sai nada. (a impressão é gerada na matriz pelo servidor principal e enviada pela vpn até o terminal).
- o software usado é instalado no terminal buscando dados remotamente, e os usuários da filial estão reclamando na "lentidão" na abertura do sistema.

Dúvida/Solução:

- Andei Pesquisando e me disseram para instalar alguma software de QoS (CBQ), para definir banda para a VPN e para impressoras...

- Para definir Banda para VPN é só criar uma regra de down e up com o ip do roteador e a porta udp que estou usando? ex. (192.168.1.1:5000 ou 10.0.0.1:5000)
- Se existe e como definir banda somente para as impressoras?

Gostaria muito de uma ajuda sua ou de quem estivesse lendo esse arquivo.

Desde Já Agradeço!

Demetrius Germani
demagermani@yahoo.com.br

[25] Comentário enviado por oxroll em 01/05/2006 - 20:00h

Caros amigos, eu uso o Debain 3.1 como server e fiz as classes e quando coloco para rodar o CBQ.. o IP que controlei passa a não funcionar, ou seja qual quer ip que for criado uma classe de controle para ele, ao invés de controlar a banda, ele para de navegar.
Estou colocando as classes no diretorio /etc/shaper...sou novato no Linux, gostaria de saber se alguém pode me ajudar a descobrir o que estou fazendo de errado??? Desde já agradeço!!

[26] Comentário enviado por reinaldo_rda em 25/05/2006 - 09:56h

Help ?
uso o Debian 3.1, criei as classes no diretório /etc/chaper

DEVICE=eth1,10Mbit,1Mbit
RATE=64Kbit
WEIGHT=6Kbit
PRIO=5
RULE=:22,192.168.1.2

p/ rodar o CBQ informo /etc/init.d/shaper restart porem esta retornando a seguinte mensagem de erro:
Stopping CBQ traffic shaping: shaper.
Starting CBQ traffic shaping: RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory

Alguem sabe como resolver esse tipo de erro ??????????

[27] Comentário enviado por Wesllay em 07/06/2006 - 22:37h

E ai blz? eu uso suse e no meu aqui na hora de executar o cbq apareceu a seguinte mensagem:
**CBQ: ip-route2 utilities not installed or executable!

Sendo que o iproute2 já está instalado corretamente.

Alguem pode me ajudar?

[28] Comentário enviado por rod.smello em 11/09/2006 - 17:49h

Olá Pessoal !!
Sou iniciante com o Linux e gostaria de saber se existe alguma forma de verificar se a regra do CBQ aplicada esta configurada e funcionando corretamente ...
Realizei os passos do artigo e funcionaram sem problemas ... porém gostaria de verificar se a regra esta sendo aplicada realmente.

Fiz apenas um dos arquivos de regra, cbq-0002.maq-out, usando a eth0 q. é a placa q. esta para as maquinas da minha rede e o outra interface é um roteador, pois uso um LP.
Como devo configurar a regra cbq-0002.maq-in ??

Alguém pode me ajudar ??

Vlw

[29] Comentário enviado por pdjailton em 25/10/2006 - 15:41h

quando vc deu o exemplo para conrolar uma rede:

ex.: 192.168.0.0/24 controla a rede

o "/24" significa o q? seria que alguem poderia me dar um aforcinha, to em duvida nisso...

[30] Comentário enviado por peterpan em 24/01/2007 - 11:29h

pdjailton, /24 é a mascara de rede (255.255.255.0)

[31] Comentário enviado por lavoie em 30/01/2007 - 15:15h

quando dou o start aparece essa mensagem , sabe algma coisa , uso debian 3.1


lavoie:/etc/init.d# ./cbq start
RTNETLINK answers: File exists
RTNETLINK answers: File exists
lavoie:/etc/init.d#

se alguem souber algo


[32] Comentário enviado por piramideinfo em 02/06/2007 - 13:31h

Boa,
Configurei o CBQ no Fedora Core 5 , mas dá uma mensagem de erro, gostaria de saber se alguem já viu ou si sabe qual erro é esse.
"find:warning: you have specified the - maxdepth option after a non-option argument (, but options are not positional (-maxdepth affets tests spedified before it as well as those specified after it). Please specify options before other arguments."
abraços,
André Luiz

[33] Comentário enviado por calaff2 em 12/06/2007 - 19:13h

Man eu ja uso o cbq agora quero saber se tem como eu criar algo como data ! tipow final de semana a danda vai ser controlada ha 64k e dia normal 128k! tem como fazer isso ou tem algum programa ?

[34] Comentário enviado por daurio em 15/06/2007 - 05:25h

ola pessoal, sou novo no linux e quero saber como instalar o cbq no kurumim e como configurar p controlar a banda p clientes. vlew.

[35] Comentário enviado por marceloespindola em 12/07/2007 - 00:34h

Depois de instalar qualquer controlador de banda é bom ter uma ferramenta de teste eu tenho um velocimetro em flash com os arquivos fontes abertos no seguinte endereço: http://marcelolinux.blogspot.com/2007/07/tenha-seu-prprio-velocmetro-em-flash.html

[36] Comentário enviado por emersonwifi em 16/07/2007 - 12:06h

?comentario=carao amigo gostaria de saber como faço para utilizar esse controle de banda no debian

[37] Comentário enviado por animetaldeath em 02/09/2007 - 14:08h

Olá pessoal, tenho duvidas de como fazer o CBQ funcionar em Kurumin 7.0, naum sei colocar pra rodar o script alguém pode me dar uma luz, obrigado pessoal! ^^

[38] Comentário enviado por odiar06 em 02/09/2007 - 15:32h

ola pessoal preciso de ajuda pra configura o cbq
alguen se desponibiliza a me ajuda
meu msn angell_odair@hotmail.com

[39] Comentário enviado por rndrama em 04/03/2008 - 18:51h

Galera, uso o cbq aqui no server da empresa que trabalho, e ele roda tranquilo, limitando a banda dos clientes. Só que, o msn cai constantemente.
Alguém ja passou por isso e poderia mim ajudar?

[40] Comentário enviado por j_bonetti em 01/04/2008 - 12:39h

o meu da o seguinte erro
CBQ: ip-route2 utilities not installed or executable!

[41] Comentário enviado por cyprius em 02/04/2008 - 15:46h

iptables: No chain/target/match by that name
Stopping CBQ traffic shaping: shaper.
Starting CBQ traffic shaping: find: warning: you have specified the -maxdepth option after a non-option argument (, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments.

find: warning: you have specified the -maxdepth option after a non-option argument (, but options are not positional (-maxdepth affects tests specified before it as well as those specified after it). Please specify options before other arguments.

RTNETLINK answers: No such file or directory
RTNETLINK answers: No such file or directory
RTNETLINK answers: File exists
We have an error talking to the kernel
shaper.


alguém já viu isso?
pode me ajudar?

uso o Ubuntu Desktop 7.10

[42] Comentário enviado por alcaponefelippe em 07/01/2009 - 11:01h

Então, o funcionamento parece tudo ok. Controlo upload e download. Mas o grande problema enfrentado é:
Servidor 192.168.254.254 Clientes 192.168.254.X
Se falo que todos os clientes terão no maximo banda de 300Kbps e tenho um banco de dados no servidor 192.168.254.254 fica horrível a transmissão desses dados, pois ele controla a saída da placa de rede para o ip, independentemente de qualquer coisa.

Um amigo postou acima a mesma questão que reclamam de lentidão no software da empresa dele.. e é por esta questão. Então, pergunto se existe uma alternativa?

A questão seria, como controlar somente a internet e liberar o trafego a essas pastas do Banco de Dados?

Obg.

[43] Comentário enviado por pardalz em 06/10/2009 - 10:27h

Ae kra.. artigo interessante, porem eu tentei fazer aqui mas nao deu muito certo, segue meu arquivo:

"cbq-0002.estacoes-in"
DEVICE=eth0,1000Mbit,100Mbit
RATE=800Kbit
WEIGHT=54Kbit
PRIO=5
RULE=10.0.0.3/255.0.0.0
BOUNDED=yes
ISOLATED=yes

"cbq-0003.estacoes-out"
DEVICE=eth0,1000Mbit,100Mbit
RATE=320Kbit
WEIGHT=32Kbit
PRIO=5
RULE=10.0.0.3/255.0.0.0,
BOUNDED=yes
ISOLATED=yes

o que acontece é o seguinte, quando eu limito o download dessa maquina para 54kbit,
a taxa de download cai para 10kbit automaticamente... =/ nao sei o que pode ser.

quando eu compilo:
> /etc/init.d/shaper compile
/sbin/tc qdisc del dev eth0 root
/sbin/tc qdisc add dev eth0 root handle 1 cbq bandwidth 1000Mbit avpkt 1000 cell 8
/sbin/tc class change dev eth0 root cbq weight 100Mbit allot 1514

/sbin/tc class add dev eth0 parent 1: classid 1:2 cbq bandwidth 1000Mbit rate 800Kbit weight 54Kbit prio 5 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded isolated
/sbin/tc qdisc add dev eth0 parent 1:2 handle 2 tbf rate 800Kbit buffer 10Kb/8 limit 15Kb mtu 1500
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dst 10.0.0.3/255.0.0.0 classid 1:2

/sbin/tc class add dev eth0 parent 1: classid 1:3 cbq bandwidth 1000Mbit rate 320Kbit weight 32Kbit prio 5 allot 1514 cell 8 maxburst 20 avpkt 1000 bounded isolated
/sbin/tc qdisc add dev eth0 parent 1:3 handle 3 tbf rate 320Kbit buffer 10Kb/8 limit 15Kb mtu 1500
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip src 10.0.0.3/255.0.0.0 classid 1:3

echo "shaper."

Quando Starto:
> /etc/init.d/shaper start
Starting CBQ traffic shaping: RTNETLINK answers: No such file or directory
shaper.

A distro é Debian 5 lenny

qualquer ajuda será bem vinda.
[]'s e parabens pelo artigo

[44] Comentário enviado por and_web em 15/11/2009 - 12:07h

nao consigo encontrar todas essas opções descritas mais a baixo, na versão do meu kernel para poder compilar com suporte a cbq, pessoal ja meses que venho tentando limitar banda no slackware e nao tenho obtido sucesso quem poder me ajudar fico grato?

dados: versao do meu kernel 2.6.29.6-smp slakware 13

ja tenteni baixar um kernel mais antigo, mas dá kernel panic ou entao um erro na compilação, pois eu utilizo hd sata! e outras versões do skacware nao chega nem a instalar!
--------------------------------------------------------------------------------------------------------
Code Matury Level Options --->
[*] Prompt for development and/or incomplete code/drivers

Networking Options --->
<*> Packet socket
[*] Routing Messages
<*> Unix domain sockets
[*] TCP/IP networking
[*] IP advanced router
[*] IP Policy routing
[*] IP equal cost multipath
[*] IP use TOS value as route key
[*] IP verbose route monitoring
[*] IP large routing tables
[*] IP fast network address translation
[*] optimize as houte not host

QoS and/or fair queueing --->
[*] QoS and/or fair queueing
CBQ packet sheduler
CSZ packet sheduler
The simplest PRIO pseudosheduler
RED queue
SFQ queue
TEQL queue
TBF queue
[*] QoS support
[*] Rate estimator
[*] Packet classifier API
Routing table based classifier
Firewall based classifier
U32 classifier
Special RSVP classifier
Special RSVP classifier for IPv6
[*] Ingress traffic policing

[45] Comentário enviado por and_web em 15/11/2009 - 12:09h

no kernel deveria ter alguma opção de localizar cada opção dessas do cbq, pois seria mais facil ao inves de ficar procurando uma agulha no palheiro, este arquivo do kernel é imenso!

[46] Comentário enviado por rio78 em 27/01/2010 - 11:33h

Tenho uma pergunta bem simples e gostaria que se alguém pudesse me respondesse.
Como faço para limitar para todas as portas, menos para algumas específicas? seria o inverso do que foi demonstrado no artigo aonde pode se limitar para uma determinada porta, pois no meu caso, quero limitar tudo e só deixar sem regra para 3 portas específicas.

Desde já agradeço!

[47] Comentário enviado por FireBird em 20/04/2010 - 20:52h

Fala galera do VOL... Saudações... Muito tempo que não apareço por aqui...rs...Mas, vamo la...

Recentemente recebi o encargo de uma rede corporativa e resolvi implantar o cbq ao invés do controle pelo squid ou htb. Fiz as configurações de sempre e estava tudo OK até eu perceber, de repente, uma coisa: Minha banda, não somente a da Internet, mas, a comunicação da rede Interna estava limitada àquela configurada nos arquivos de configuração do cbq. Procurando na Internet, não encontrei solução. Há alguma forma de eu bloquear somente o tráfego para a Internet? Ou, quem sabe, estou fazendo algo errado(se for o caso, por favor me digam se não possuem o mesmo problema).

Agradeço desde já.

[48] Comentário enviado por thimor em 23/05/2010 - 10:11h

Ola,

Criei as regras e esta tudo funcionando quase 100% o unico problema é:
O servidor de internet tambem é servidor de arquivos e banco de dados. Quando habilito o CBQ ele limita a velocidade da rede local. Como faz para ele limitar so a internet?

[49] Comentário enviado por cleuber.cardoso em 01/04/2014 - 14:42h

No caso eu preciso que funcione da seguinte maneira:
Tenho uma vpn (DADOS) hoje a operadora disponibiliza apenas 8Mb de trafego no geral
Gostaria que a rede 192.168.0.10 que e a rede de dados usasse 5Mb para o sistema
e o restante na outra rede apenas 3Mb e possivel?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts