[FUG-BR] Controle de Upload PF + ALTQ

Leandro L J S freebsd em fastcars.com.br
Sexta Novembro 16 17:07:21 BRST 2007


Olá Alessandro hehehee
Me desculpe eu estava falando com um Fernando enquanto escrevia o email 
hehehehe.
Bom vou explicar
Imagine um provedor de internet assim

TELEMAR --------VR0 /FreeBSD/ RL0 ------AP/BRIDGE-----------CLIENTES FINAIS

Bom seguindo este raciocinio imagine que tenho 2MB de link da TELEMAR e 
tenho
200 clientes finais de 256K cada um, com isso eu teria 20 megas pra sair em 
2 megas
Por isso que eu nao coloquei na interface externa 2mb pois senao ele me 
diria que os queues
sao maiores que minha saida.

Imaginando este cenário o que você acha que posso estar errando?
Uma pergunta se eu fizer o controle de upload individual na interface 
externa ele vai reconhecer
o pacote vindo do ip inválido ?? já nao estaria este traduzido pelo nat ?

Fiz testes de upload aqui controlando up e down na mesma interface e 
aparentemente ele
controla o up sim, mas fiz testes usando programas como limewire e ares e 
eles conseguem
estourar o controle de banda, principalmente em upload.

Obrigado pela atenção


Em 16/11/07, Leandro L J S<freebsd em fastcars.com.br> escreveu:
> Olá Fernando
>
> Eu não uso este controle em somente um lugar, mas sim em vários servidores
> com isso a velocidade de saída varia muito, e nunca o servidor de controle
> de banda
> é ligado a saída do link e sim em minha rede interna.
>
> E outro problema é que tenho N queues e N ips para controlar banda, no 
> caso
> do exemplo
> mandei apenas um ip, por isso eu deixo a interface como se tivesse 1GB
>
> Estes controles são aplicados a clientes finais, sendo assim as 
> velocidades
> dos queues
> podem variar muito
>
> Obrigado
>
> ----- Original Message -----
> From: "Alessandro de Souza Rocha" <etherlinkii em gmail.com>
> To: "Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)"
> <freebsd em fug.com.br>
> Sent: Friday, November 16, 2007 3:07 PM
> Subject: Re: [FUG-BR] Controle de Upload PF + ALTQ
>
>
> 2007/11/16, Leandro L J S <freebsd em fastcars.com.br>:
> >    Olá
> >    Fiz um teste aqui e realmente não funcionou, veja se fiz certo por
> > favor
> >
> > Fiz assim:
> >
> > /root/pf.conf
> >
> > # Options: tune the behavior of pf, default values are given.
> > set timeout { interval 10, frag 30 }
> > set timeout { tcp.first 90, tcp.opening 30, tcp.established 86400 }
> > set timeout { tcp.closing 900, tcp.finwait 45, tcp.closed 90 }
> > set timeout { udp.first 60, udp.single 30, udp.multiple 60 }
> > set timeout { icmp.first 60, icmp.error 30 }
> > set timeout { other.first 60, other.single 30, other.multiple 60 }
> > set timeout { adaptive.start 0, adaptive.end 0 }
> > set limit { states 10000, frags 5000 }
> > set loginterface vr0
> > set optimization aggressive
> > set block-policy drop
> > set require-order yes
> > set fingerprints "/etc/pf.os"
> > set skip on lo0
> >
> > # Scrub para todas as interfaces para pacotes fragmentos perdidos
> > scrub in  all
> > scrub out  all
> >
> > #Queue Controle de Banda Upload
> > altq on vr0 bandwidth 1Gb cbq queue { \
> > defaultvr0, A002u }
> >
> > #Cliente João
> > queue A002u on vr0 bandwidth 256Kb cbq (red)
> >
> > #Queues do Sistema
> > queue defaultvr0 on vr0 bandwidth 512Kb cbq (default)
> >
> > #---------------------------------------------------------------
> >
> > #Queue Controle de Banda Download
> > altq on rl0 bandwidth 1Gb cbq queue { \
> > defaultrl0, A002d, proxy }
> >
> > #Cliente João
> > queue A002d on rl0 bandwidth 256Kb cbq (red)
> >
> > #Queues do Sistema
> > queue defaultrl0 on rl0 bandwidth 64Kb cbq (default)
> > queue proxy on rl0 bandwidth 512Kb cbq (red)
> >
> > #Cliente João
> > pass out quick on vr0 inet from 192.168.10.2 to any label A002u queue
> > A002u
> > pass out quick on rl0 inet from any to 192.168.10.2 tos 0x60 queue proxy
> > pass out quick on rl0 inet from any to 192.168.10.2 label A002d queue
> > A002d
> >
> >    Se possível me mandar os exemplos seus ficarei grato
> >
> > Obrigado8
> >
> > -------------------------
> > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >
> de quanto e seu link ai...
>
> altq on $int_if bandwidth 128Kb cbq queue  { dflt_in local_in}
> queue dflt_in bandwidth 50% cbq(default)
> queue local_in bandwidth 50%
>
> ## Queueing: rule-based bandwidth control.
> altq on $ext_if bandwidth 128Kb cbq queue  { dflt_out1, local1 }
> queue dflt_out bandwidth 50% cbq(default)
> queue local1 bandwidth 50%
>
> ass in on $int_if from 192.168.0.0/24 to any keep state queue  dflt_in
> pass in on $int_if from 100.100.100.0/24 to any keep state queue local_in
> pass in on $ext_if from 1192.168.0.0/24 to any keep state queue dflt_out1
> pass in on $iext_if from 100.100.100.0/24 to any keep state queue local1
>
>
> --
> Alessandro de Souza Rocha
> Administrador de Redes e Sistemas
> Freebsd-BR User #117
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>

Corrigindo meu nome nao e Fernando, isso vc pode contorna vai depender
como e sua rede ai...
-- 
Alessandro de Souza Rocha
Administrador de Redes e Sistemas
Freebsd-BR User #117
-------------------------
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



Mais detalhes sobre a lista de discussão freebsd