[FUG-BR] Controle de Banda com PF

2007-10-26 Thread Marcelo/Porks
Pessoal,

Meu controle de banda com cbq não limita na velocidade que eu estou mandando
e o controle de banda com hfsc não limita absolutamente nada

Então... Alguém que use pf+cbq ou pf+hfsc poderia me mandar o resultado do:

# pfctl -s queue

***e os respectivos***
pass . queue xxx

Se alguém puder fazer isso para mim.. eu agradeço.

Tô quase largando o PF para controlar banda.. e usando o ipfw (só não
fiz isso ainda porque eu nunca mexi com o ipfw :S)

-
altq on $IF_Externa cbq bandwidth 60Kb queue { ce, resto }
queue resto bandwidth 40Kb cbq (default)
queue cebandwidth 5.6Kb cbq
...
pass in quick on $IF_Interna from 10.10.0.7 to any keep state queue ce

O download nessa máquina (10.10.0.7) vem a 72Kbits/s, enquanto deveria
vir a 5.6Kbits/s

# uname -a
FreeBSD xx.yyy.com.br 6.2-RELEASE-p7 FreeBSD 6.2-RELEASE-p7 #0: Wed
Sep 12 10:39:16 BRT 2007
[EMAIL PROTECTED]:/usr/obj/usr/src/sys/KERNEL.XX  i386


-- 
Marcelo Rossi
"This e-mail is provided "AS IS" with no warranties, and confers no rights."
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


[FUG-BR] Controle de Banda com PF

2010-06-18 Thread Rodrigo
Boa Tarde Pessoal.

Gostária de saber se alguem ai conhece algum site bom, onde eu possa 
encontrar informações concretas sobre controle de banda no PF.

Procurei bastante no Google, mas o que se encontra são poucas coisas..

Obrigado.
Att,

Rodrigo.
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2007-10-27 Thread Daniel Bristot de Oliveira
Tudo bem cara?

Olha só, deixa ver se entendi, vc ta fazendo o controle na interface wan certo?

O PF só controla o que está saindo de uma interface. Então, o controle
de banda do  download que "atravessa" o firewall deve ser feito na
interface interna, pois os dados entram na wan do firewall, e saem na
lan do firewall.

O PF é assim para que o controle de banda não acabe rejeitando pacotes
entrantes, fazendo isto na interface interna ele armazena o pacote em
uma fila, que por padrão tem tamanho 50, e segura este pacote até ter
banda pra ele, Isso normalmente acontece em momentos de criação de
conexões, e após um tempo o protocolo de transporte se ajusta a
velocidade disponível, sem que pacotes sejam descartados. O controle
de banda para o Upload sim é feito na interface externa.

Mude a interface na diretiva altq.

Att
-- 
Daniel Bristot de Oliveira
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Márcio Luciano Donada
Em 18/6/2010 13:18, Rodrigo escreveu:
> se alguem ai conhece algum site bom, onde eu possa 
> encontrar informações concretas sobre controle de banda no PF.
>
> Procurei bastante no Google, mas o que se encontra são poucas coisas..

Boa tarde,
www.openbsd.org/
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Rodrigo
Obrigado Márcio, vou dar uma olhada !

Att.
Rodrigo
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Matheus Weber da Conceição
2010/6/18 Rodrigo :
> Boa Tarde Pessoal.
>
> Gostária de saber se alguem ai conhece algum site bom, onde eu possa
> encontrar informações concretas sobre controle de banda no PF.
>
> Procurei bastante no Google, mas o que se encontra são poucas coisas..
>

http://www.openbsd.org/faq/pf/index.html

-- 

Matheus Weber da Conceição
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Renato Frederick
O próprio site do openbsd[1] mostra tudo.


Não tem mistério, PF é simples depois que entende-se a cara dele.

Faz-se as filas na interface, neste exemplo o link é de 100Mb e está 
conectado á xl0 e temos 2 clientes(e o "resto" que vai pro que não tem 
tráfego explicitamente detalhado):

altq on $ext_if bandwidth 100Mb queue { cliente1 cliente2 default_dmz }

define-se dos 100Mb quanto que cliente1 e cliente2 vai ter e o resto pra 
default_dmz:

queue cliente1 bandwidth 2Mb priority 4 qlimit 1000 cbq(red)
queue cliente2 bandwidth 8Mb priority 4 qlimit 1000 cbq(red)
queue default_dmz bandwidth 80Mb priority 4 qlimit 1000 cbq(default,borrow)

lembrando que a some dos queue nao pode passar o bandwitdh declarado acima.

note que estou usando o algorítimo RED para fazer o ALTQ, no link[1] você vê 
mais detalhes dos algorítimos disponíveis.

Também na DMZ eu joguei o borrow, ou seja, os 80Mb da DMZ pode "tomar" banda 
do cliente2 e cliente2, caso precise, seria como as prioridades que o IPFW 
tem.


Agora basta colocar uma linha no final de cada regra de pass out pra indica 
que esta regra vai ser associada  a uma destas queue:


Ex, uma regra que era assim, liberando o cliente1 a conectar a qq local:

pass out quick on $ext_if proto { tcp udp } from { $cliente1 }  port > 1023 
to any  keep state

fica assim:

pass out quick on $ext_if proto { tcp udp } from { $cliente1 }  port > 1023 
to any  queue cliente1 keep state

as regras que eu quero que compartilhem os 80Mb eu não declaro nenhum queue, 
ele vai pegar o que está como default acima:

pass out quick on $ext_if proto tcp from  port $ftp_ports to any 
port > 1023 keep state



Observe que isto faz o tráfego de output.

para fazer de input, repete-se a mesma coisa, só que a ext_if vai ser 
substituida pela int_if(ou o nome que você dá pra interface interna) no altq 
e o queue nao vai ser no pass out, vai ser no pass in e você não vai poder 
usar o keep state, vai ter que declarar uma regra de pass out e outra de 
pass in, senão o keep state cria  o retorno sem queue.





[1]http://openbsd.org/faq/pf/queueing.html


--
From: "Rodrigo" 
Sent: Friday, June 18, 2010 1:18 PM
To: 
Subject: [FUG-BR] Controle de Banda com PF

> Boa Tarde Pessoal.
>
> Gostária de saber se alguem ai conhece algum site bom, onde eu possa
> encontrar informações concretas sobre controle de banda no PF.
>
> Procurei bastante no Google, mas o que se encontra são poucas coisas..
>
> Obrigado.
> Att,
>
> Rodrigo.
> -
> 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


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Nenhum_de_Nos
>> Boa Tarde Pessoal.
>>
>> Gostária de saber se alguem ai conhece algum site bom, onde eu possa
>> encontrar informações concretas sobre controle de banda no PF.
>>
>> Procurei bastante no Google, mas o que se encontra são poucas
>> coisas..

https://calomel.org/pf_hfsc.html

matheus

-- 
We will call you cygnus,
The God of balance you shall be

A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?

http://en.wikipedia.org/wiki/Posting_style
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Rodrigo
Muito obrigado pela colaboração de todos, ler tudo o que me passaram...


Att,

Rodrigo
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Saulo Bozzi
Pegando a deixa, do exemplo tambem do renato.

queue cliente1 bandwidth 2Mb priority 4 qlimit 1000 cbq(red)

Tem como traduzir melhor esse comando acima?

Tipo, tem como fazer com que seja um minimo de down e maximo
unlimited. para ele poder consumir a banda toda quando possivel, e
dividir quando tiver mais gente em uso, duas pessoas dividirem com um
minimo de down?
Como seria?

Valeu pela infos, a faq do pf eu tenho impressa, vou da mais um vizu,
mas la em pt o material é pouco. Vale mais pesquisas na net, e pedir
ajudar a quem entende.

Valeu.

Em 18 de junho de 2010 13:44, Rodrigo
 escreveu:
> Muito obrigado pela colaboração de todos, ler tudo o que me passaram...
>
>
> Att,
>
> Rodrigo
> -
> 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


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread irado furioso com tudo
Em Fri, 18 Jun 2010 13:35:31 -0300
"Renato Frederick" , conhecido
consumidor/usuário de drogas (Windows e BigMac com Coke) escreveu:

> O próprio site do openbsd[1] mostra tudo.
> 
> 
> Não tem mistério, PF é simples depois que entende-se a cara dele.
> 
> Faz-se as filas na interface, neste exemplo o link é de 100Mb e está 
> conectado á xl0 e temos 2 clientes(e o "resto" que vai pro que não
> tem tráfego explicitamente detalhado):
> [1]http://openbsd.org/faq/pf/queueing.html


pôxa, a receita ("semi how-to") estó ótima. Não tem como vc elaborar
como artigo e postar lá no fug? eu vou fazer um link no meu quase-blog
pra não ficar perdido, enquanto isso.

parabéns, frederik.

-- 
 saudações,
 irado furioso com tudo
 Linux User 179402/FreeBSD BSD50853/FUG-BR 154
 Não uso drogas - 100% Miko$hit-free
Arqueólogo: alguém cuja carreira esta em ruínas.
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-18 Thread Renato Frederick
Opa Irado

Problema todo é tempo :-(

Mal mal tenho pra responder a lista, tem uma pancada de coisas q postei aqui
no passado que gostaria de divulgar lá.


--
From: "irado furioso com tudo" 
Sent: Friday, June 18, 2010 2:24 PM
To: 
Subject: Re: [FUG-BR] Controle de Banda com PF

> Em Fri, 18 Jun 2010 13:35:31 -0300
> "Renato Frederick" , conhecido
> consumidor/usuário de drogas (Windows e BigMac com Coke) escreveu:
>
>> O próprio site do openbsd[1] mostra tudo.
>>
>>
>> Não tem mistério, PF é simples depois que entende-se a cara dele.
>>
>> Faz-se as filas na interface, neste exemplo o link é de 100Mb e está
>> conectado á xl0 e temos 2 clientes(e o "resto" que vai pro que não
>> tem tráfego explicitamente detalhado):
>> [1]http://openbsd.org/faq/pf/queueing.html
>
>
> pôxa, a receita ("semi how-to") estó ótima. Não tem como vc elaborar
> como artigo e postar lá no fug? eu vou fazer um link no meu quase-blog
> pra não ficar perdido, enquanto isso.
>
> parabéns, frederik.
>
> -- 
> saudações,
> irado furioso com tudo
> Linux User 179402/FreeBSD BSD50853/FUG-BR 154
> Não uso drogas - 100% Miko$hit-free
> Arqueólogo: alguém cuja carreira esta em ruínas.
> -
> 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


Re: [FUG-BR] Controle de Banda com PF

2010-06-22 Thread Vinicius Abrahao
Oi pessoal, bom dia!

Essa thread de controle de banda com PF veio a calhar.

Estou tentando implementar algo que teoricamente deveria ser simples,
lá em casa, mas estou tendo uma dificuldade monstro!

A idéia para experiência é pegar meu speedy 100Kb/s (real) e criar um
controle de banda que
garanta para um determinado cliente (no meu caso uma rádio online do
PSP) uma banda de 20Kb/s e todo
o resto "para quem quiser" lá dentro de casa. Meu objetivo é garantir
a banda para a rádio e ainda assim conseguir
fazer alguns downloads/torrents.

Cheguei a criar as declarações das filas e as regras para fazer match
com o streaming mas até agora só vejo trafego
nas filas que são default.

Abaixo algumas coisas que estão no meu pf.conf que podem (ou não?)
estar interferindo.

-
table  {192.168.1.10}
table  const { 192.168.0.0/16, 172.16.0.0/12,  10.0.0.0/8 }


set loginterface $ext_if

set skip on lo
set block-policy return
scrub in all

scrub in on $int_if fragment reassemble
scrub in on $int_if no-df
scrub on $int_if reassemble tcp

altq on $int_if cbq  bandwidth 10Mb queue { q_radio_out , q_internet ,
q_default_out }
  queue q_radio_out  bandwidth 20Kb cbq
  queue q_internet   bandwidth 80Kb cbq
  queue q_default_outbandwidth  9Mb cbq(default)


pass out quick on $int_if proto tcp from  to any
queue q_radio_out
pass out quick on $int_if proto tcp from any to  
queue q_radio_out

Quando vi que o tráfego de rádio não estava indo pra fila que eu
queria, cheguei a apelar com as seguintes regras:

pass out quick on $int_if proto tcp from ! port 9106 to any
queue q_radio_out
pass out quick on $int_if proto tcp from ! to any port 9106
queue q_radio_out
pass out quick on $int_if proto tcp from ! to any
queue q_internet_default

Mas ainda sem sucesso.  :-(

-

Alguns podem estar achando estranho o fato da queue estar na interface
interna, mas conversando
com os amigos no ##freebsd-br @freenode (thanks Porks!) chegamos a
conclusão que o altq só agiria neste caso nas filas
de output, espero estarmos certos quanto a essa conclusão.

No meu primeiro teste (com a interface externa) as coisas estavam indo
por esse caminho:

altq on $ext_if cbq  bandwidth 100Kb queue { q_radio, q_default }
  queue q_radio   bandwidth 20Kb cbq
  queue q_default bandwidth 80Kb cbq(default)

pass in  quick on $ext_if proto tcp from any to any port $radio_port no state
pass out quick on $ext_if proto tcp from any to any port $radio_port
no state queue (r_radio)


-

Bom.. acho que já me prolonguei demais.
Vou dar uma estudada no HFSC, mas basicamente gostaria de saber se é
possível fazer isso que eu estou tentando com o CBQ, e como?
Teoricamente, pelo que li, dá sim, mas estou tendo dificuldades nas
implementações, poderiam me dar uma luz?


Obrigado pela ajuda,
Vinnix

[a.k.a. Vinícius Schmidt]



ANEXO 1: Diagrama do Fluxo (thanks again Porks!)

# -->  -->  --> 
--> 
# <--  <--  <-- 
<-- 
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-22 Thread Gabriel Fonseca
Em 22 de junho de 2010 08:55, Vinicius Abrahao escreveu:

> Oi pessoal, bom dia!
>
> Essa thread de controle de banda com PF veio a calhar.
>
> Estou tentando implementar algo que teoricamente deveria ser simples,
> lá em casa, mas estou tendo uma dificuldade monstro!
>
> A idéia para experiência é pegar meu speedy 100Kb/s (real) e criar um
> controle de banda que
> garanta para um determinado cliente (no meu caso uma rádio online do
> PSP) uma banda de 20Kb/s e todo
> o resto "para quem quiser" lá dentro de casa. Meu objetivo é garantir
> a banda para a rádio e ainda assim conseguir
> fazer alguns downloads/torrents.
>
> Cheguei a criar as declarações das filas e as regras para fazer match
> com o streaming mas até agora só vejo trafego
> nas filas que são default.
>
> Abaixo algumas coisas que estão no meu pf.conf que podem (ou não?)
> estar interferindo.
>
>
> -
> table  {192.168.1.10}
> table  const { 192.168.0.0/16, 172.16.0.0/12,  10.0.0.0/8 }
>
>
> set loginterface $ext_if
>
> set skip on lo
> set block-policy return
> scrub in all
>
> scrub in on $int_if fragment reassemble
> scrub in on $int_if no-df
> scrub on $int_if reassemble tcp
>
> altq on $int_if cbq  bandwidth 10Mb queue { q_radio_out , q_internet ,
> q_default_out }
>  queue q_radio_out  bandwidth 20Kb cbq
>  queue q_internet   bandwidth 80Kb cbq
>  queue q_default_outbandwidth  9Mb cbq(default)
>
>
> pass out quick on $int_if proto tcp from  to any
> queue q_radio_out
> pass out quick on $int_if proto tcp from any to  
> queue q_radio_out
>
> Quando vi que o tráfego de rádio não estava indo pra fila que eu
> queria, cheguei a apelar com as seguintes regras:
>
> pass out quick on $int_if proto tcp from ! port 9106 to any
> queue q_radio_out
> pass out quick on $int_if proto tcp from ! to any port 9106
> queue q_radio_out
> pass out quick on $int_if proto tcp from ! to any
> queue q_internet_default
>
> Mas ainda sem sucesso.  :-(
>
>
> -
>
> Alguns podem estar achando estranho o fato da queue estar na interface
> interna, mas conversando
> com os amigos no ##freebsd-br @freenode (thanks Porks!) chegamos a
> conclusão que o altq só agiria neste caso nas filas
> de output, espero estarmos certos quanto a essa conclusão.
>
> No meu primeiro teste (com a interface externa) as coisas estavam indo
> por esse caminho:
>
> altq on $ext_if cbq  bandwidth 100Kb queue { q_radio, q_default }
>  queue q_radio   bandwidth 20Kb cbq
>  queue q_default bandwidth 80Kb cbq(default)
>
> pass in  quick on $ext_if proto tcp from any to any port $radio_port no
> state
> pass out quick on $ext_if proto tcp from any to any port $radio_port
> no state queue (r_radio)
>
>
>
> -
>
> Bom.. acho que já me prolonguei demais.
> Vou dar uma estudada no HFSC, mas basicamente gostaria de saber se é
> possível fazer isso que eu estou tentando com o CBQ, e como?
> Teoricamente, pelo que li, dá sim, mas estou tendo dificuldades nas
> implementações, poderiam me dar uma luz?
>
>
> Obrigado pela ajuda,
> Vinnix
>
> [a.k.a. Vinícius Schmidt]
>
>
>
> ANEXO 1: Diagrama do Fluxo (thanks again Porks!)
>
> # -->  -->  --> 
> --> 
> # <--  <--  <-- 
> <-- 
> -
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>


Vinícius,

Aplique as filas nas regras de filtragem que confiram com entrada de
tráfego na interface interna.

No seu caso ficaria assim:

pass in quick on $int_if proto tcp from ! to port 9106 queue
q_radio_out
pass in quick on $int_if proto tcp from ! to any queue
q_internet_default

Isso no caso de você querer fazer o enfileiramento da fila q_radio_out
somente com destino any porta 9106.
Lembre-se que quando vc define as portas nas regras de saída da
interface interna vc está definindo a porta de origem do seu host na rede
interna.

Para verificar se o tráfego esta batendo com as filas utilize pfctl -vvs
q .

Espero ter ajudado.
Att.

> Gabriel "ethX" Fonseca <
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-22 Thread Vinicius Abrahao
2010/6/22 Gabriel Fonseca :
>
> Vinícius,
>
>    Aplique as filas nas regras de filtragem que confiram com entrada de
> tráfego na interface interna.
>
>    No seu caso ficaria assim:
>
> pass in quick on $int_if proto tcp from ! to port 9106 queue
> q_radio_out
> pass in quick on $int_if proto tcp from ! to any queue
> q_internet_default
>
>    Isso no caso de você querer fazer o enfileiramento da fila q_radio_out
> somente com destino any porta 9106.
>    Lembre-se que quando vc define as portas nas regras de saída da
> interface interna vc está definindo a porta de origem do seu host na rede
> interna.
>
>    Para verificar se o tráfego esta batendo com as filas utilize pfctl -vvs
> q .
>
> Espero ter ajudado.
> Att.
>
> Gabriel "ethX" Fonseca <


Olá Gabriel ethX,

Ajudou sim! Vou fazer os testes hoje a noite e posto o resultado.
Mas não sei se deixei claro, essa porta é da rádio que fica na internet.

Minha topologia é algo assim:

[PSP(client da rádio);192.168.1.10] <- [FreeBSD (NAT-PF) ]
<- [Nirvana Radio(rádio online): x.x.x.x:9106]

Coloco as setas, como 'recebendo' pois estou fazendo o download do stream.

Vamos ver se tenho mais sorte essa noite!


Obrigado mesmo!
[]s


PS: Tudo isso pra ter uma noite de sono com musiquinhas relaxantes e
conseguir aproveitar a banda! :-)

--
vi[nnix]
aka: Vinícius Abrahão Bazana Schmidt
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Controle de Banda com PF

2010-06-22 Thread Nenhum_de_Nos

On Tue, June 22, 2010 10:58, Gabriel Fonseca wrote:
> Em 22 de junho de 2010 08:55, Vinicius Abrahao
> escreveu:
>
>> Oi pessoal, bom dia!
>>
>> Essa thread de controle de banda com PF veio a calhar.
>>
>> Estou tentando implementar algo que teoricamente deveria ser simples,
>> lá em casa, mas estou tendo uma dificuldade monstro!
>>
>> A idéia para experiência é pegar meu speedy 100Kb/s (real) e criar um
>> controle de banda que
>> garanta para um determinado cliente (no meu caso uma rádio online do
>> PSP) uma banda de 20Kb/s e todo
>> o resto "para quem quiser" lá dentro de casa. Meu objetivo é garantir
>> a banda para a rádio e ainda assim conseguir
>> fazer alguns downloads/torrents.
>>
>> Cheguei a criar as declarações das filas e as regras para fazer match
>> com o streaming mas até agora só vejo trafego
>> nas filas que são default.
>>
>> Abaixo algumas coisas que estão no meu pf.conf que podem (ou não?)
>> estar interferindo.
>>
>>
>> -
>> table  {192.168.1.10}
>> table  const { 192.168.0.0/16, 172.16.0.0/12,  10.0.0.0/8 }
>>
>>
>> set loginterface $ext_if
>>
>> set skip on lo
>> set block-policy return
>> scrub in all
>>
>> scrub in on $int_if fragment reassemble
>> scrub in on $int_if no-df
>> scrub on $int_if reassemble tcp
>>
>> altq on $int_if cbq  bandwidth 10Mb queue { q_radio_out , q_internet ,
>> q_default_out }
>>  queue q_radio_out  bandwidth 20Kb cbq
>>  queue q_internet   bandwidth 80Kb cbq
>>  queue q_default_outbandwidth  9Mb cbq(default)
>>
>>
>> pass out quick on $int_if proto tcp from  to any
>> queue q_radio_out
>> pass out quick on $int_if proto tcp from any to  
>> queue q_radio_out
>>
>> Quando vi que o tráfego de rádio não estava indo pra fila que eu
>> queria, cheguei a apelar com as seguintes regras:
>>
>> pass out quick on $int_if proto tcp from ! port 9106 to any
>> queue q_radio_out
>> pass out quick on $int_if proto tcp from ! to any port 9106
>> queue q_radio_out
>> pass out quick on $int_if proto tcp from ! to any
>> queue q_internet_default
>>
>> Mas ainda sem sucesso.  :-(
>>
>>
>> -
>>
>> Alguns podem estar achando estranho o fato da queue estar na interface
>> interna, mas conversando
>> com os amigos no ##freebsd-br @freenode (thanks Porks!) chegamos a
>> conclusão que o altq só agiria neste caso nas filas
>> de output, espero estarmos certos quanto a essa conclusão.
>>
>> No meu primeiro teste (com a interface externa) as coisas estavam indo
>> por esse caminho:
>>
>> altq on $ext_if cbq  bandwidth 100Kb queue { q_radio, q_default }
>>  queue q_radio   bandwidth 20Kb cbq
>>  queue q_default bandwidth 80Kb cbq(default)
>>
>> pass in  quick on $ext_if proto tcp from any to any port $radio_port no
>> state
>> pass out quick on $ext_if proto tcp from any to any port $radio_port
>> no state queue (r_radio)
>>
>>
>>
>> -
>>
>> Bom.. acho que já me prolonguei demais.
>> Vou dar uma estudada no HFSC, mas basicamente gostaria de saber se é
>> possível fazer isso que eu estou tentando com o CBQ, e como?
>> Teoricamente, pelo que li, dá sim, mas estou tendo dificuldades nas
>> implementações, poderiam me dar uma luz?
>>
>>
>> Obrigado pela ajuda,
>> Vinnix
>>
>> [a.k.a. Vinícius Schmidt]
>>
>>
>>
>> ANEXO 1: Diagrama do Fluxo (thanks again Porks!)
>>
>> # -->  -->  --> 
>> --> 
>> # <--  <--  <-- 
>> <-- 
>> -
>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>
>
>
> Vinícius,
>
> Aplique as filas nas regras de filtragem que confiram com entrada de
> tráfego na interface interna.
>
> No seu caso ficaria assim:
>
> pass in quick on $int_if proto tcp from ! to port 9106 queue
> q_radio_out
> pass in quick on $int_if proto tcp from ! to any queue
> q_internet_default
>
> Isso no caso de você querer fazer o enfileiramento da fila q_radio_out
> somente com destino any porta 9106.
> Lembre-se que quando vc define as portas nas regras de saída da
> interface interna vc está definindo a porta de origem do seu host na rede
> interna.
>
> Para verificar se o tráfego esta batendo com as filas utilize pfctl
> -vvs
> q .
>
> Espero ter ajudado.
> Att.
>

você pode mudar a forma como o pf trata os estados das conexões. procure
pela seção:

set state-policy option

em http://www.openbsd.org/faq/pf/options.html

isto pode ser definido por regra ou de modo geral.

matheus

-- 
We will call you cygnus,
The God of balance you shall be

A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?

http://en.wikipedia.org/wiki/Posting_style
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https:

Re: [FUG-BR] Controle de Banda com PF

2010-06-22 Thread Enio Marconcini # www.Enio.Pro.Br
2010/6/22 Nenhum_de_Nos 

>
> On Tue, June 22, 2010 10:58, Gabriel Fonseca wrote:
> > Em 22 de junho de 2010 08:55, Vinicius Abrahao
> > escreveu:
> >
> >> Oi pessoal, bom dia!
> >>
> >> Essa thread de controle de banda com PF veio a calhar.
> >>
> >> Estou tentando implementar algo que teoricamente deveria ser simples,
> >> lá em casa, mas estou tendo uma dificuldade monstro!
> >>
> >> A idéia para experiência é pegar meu speedy 100Kb/s (real) e criar um
> >> controle de banda que
> >> garanta para um determinado cliente (no meu caso uma rádio online do
> >> PSP) uma banda de 20Kb/s e todo
> >> o resto "para quem quiser" lá dentro de casa. Meu objetivo é garantir
> >> a banda para a rádio e ainda assim conseguir
> >> fazer alguns downloads/torrents.
> >>
> >> Cheguei a criar as declarações das filas e as regras para fazer match
> >> com o streaming mas até agora só vejo trafego
> >> nas filas que são default.
> >>
> >> Abaixo algumas coisas que estão no meu pf.conf que podem (ou não?)
> >> estar interferindo.
> >>
> >>
> >>
> -
> >> table  {192.168.1.10}
> >> table  const { 192.168.0.0/16, 172.16.0.0/12,  10.0.0.0/8 }
> >>
> >>
> >> set loginterface $ext_if
> >>
> >> set skip on lo
> >> set block-policy return
> >> scrub in all
> >>
> >> scrub in on $int_if fragment reassemble
> >> scrub in on $int_if no-df
> >> scrub on $int_if reassemble tcp
> >>
> >> altq on $int_if cbq  bandwidth 10Mb queue { q_radio_out , q_internet ,
> >> q_default_out }
> >>  queue q_radio_out  bandwidth 20Kb cbq
> >>  queue q_internet   bandwidth 80Kb cbq
> >>  queue q_default_outbandwidth  9Mb cbq(default)
> >>
> >>
> >> pass out quick on $int_if proto tcp from  to any
> >> queue q_radio_out
> >> pass out quick on $int_if proto tcp from any to  
> >> queue q_radio_out
> >>
> >> Quando vi que o tráfego de rádio não estava indo pra fila que eu
> >> queria, cheguei a apelar com as seguintes regras:
> >>
> >> pass out quick on $int_if proto tcp from ! port 9106 to any
> >> queue q_radio_out
> >> pass out quick on $int_if proto tcp from ! to any port 9106
> >> queue q_radio_out
> >> pass out quick on $int_if proto tcp from ! to any
> >> queue q_internet_default
> >>
> >> Mas ainda sem sucesso.  :-(
> >>
> >>
> >>
> -
> >>
> >> Alguns podem estar achando estranho o fato da queue estar na interface
> >> interna, mas conversando
> >> com os amigos no ##freebsd-br @freenode (thanks Porks!) chegamos a
> >> conclusão que o altq só agiria neste caso nas filas
> >> de output, espero estarmos certos quanto a essa conclusão.
> >>
> >> No meu primeiro teste (com a interface externa) as coisas estavam indo
> >> por esse caminho:
> >>
> >> altq on $ext_if cbq  bandwidth 100Kb queue { q_radio, q_default }
> >>  queue q_radio   bandwidth 20Kb cbq
> >>  queue q_default bandwidth 80Kb cbq(default)
> >>
> >> pass in  quick on $ext_if proto tcp from any to any port $radio_port no
> >> state
> >> pass out quick on $ext_if proto tcp from any to any port $radio_port
> >> no state queue (r_radio)
> >>
> >>
> >>
> >>
> -
> >>
> >> Bom.. acho que já me prolonguei demais.
> >> Vou dar uma estudada no HFSC, mas basicamente gostaria de saber se é
> >> possível fazer isso que eu estou tentando com o CBQ, e como?
> >> Teoricamente, pelo que li, dá sim, mas estou tendo dificuldades nas
> >> implementações, poderiam me dar uma luz?
> >>
> >>
> >> Obrigado pela ajuda,
> >> Vinnix
> >>
> >> [a.k.a. Vinícius Schmidt]
> >>
> >>
> >>
> >> ANEXO 1: Diagrama do Fluxo (thanks again Porks!)
> >>
> >> # -->  -->  --> 
> >> --> 
> >> # <--  <--  <-- 
> >> <-- 
> >> -
> >> Histórico: http://www.fug.com.br/historico/html/freebsd/
> >> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >>
> >
> >
> > Vinícius,
> >
> > Aplique as filas nas regras de filtragem que confiram com entrada de
> > tráfego na interface interna.
> >
> > No seu caso ficaria assim:
> >
> > pass in quick on $int_if proto tcp from ! to port 9106 queue
> > q_radio_out
> > pass in quick on $int_if proto tcp from ! to any queue
> > q_internet_default
> >
> > Isso no caso de você querer fazer o enfileiramento da fila
> q_radio_out
> > somente com destino any porta 9106.
> > Lembre-se que quando vc define as portas nas regras de saída da
> > interface interna vc está definindo a porta de origem do seu host na rede
> > interna.
> >
> > Para verificar se o tráfego esta batendo com as filas utilize pfctl
> > -vvs
> > q .
> >
> > Espero ter ajudado.
> > Att.
> >
>
> você pode mudar a forma como o pf trata os estados das conexões. procure
> pela seção:
>
> set state-policy option
>
> em http://www.openbsd.org/faq/pf/options.html
>
> isto pode ser definido por regra ou de modo gera

Re: [FUG-BR] Controle de Banda com PF

2010-06-22 Thread Afranio Nunes
No squid utilizo o delay pools

Imagino que o mesmo funciona perfeitamente no lusca

Onde pode limitar as taxas de tudo o que passo pelo proxy.

Att
Afranio

Em 22/06/2010, às 15:46, Enio Marconcini # www.Enio.Pro.Br escreveu:

> 2010/6/22 Nenhum_de_Nos 
> 
>> 
>> On Tue, June 22, 2010 10:58, Gabriel Fonseca wrote:
>>> Em 22 de junho de 2010 08:55, Vinicius Abrahao
>>> escreveu:
>>> 
 Oi pessoal, bom dia!
 
 Essa thread de controle de banda com PF veio a calhar.
 
 Estou tentando implementar algo que teoricamente deveria ser simples,
 lá em casa, mas estou tendo uma dificuldade monstro!
 
 A idéia para experiência é pegar meu speedy 100Kb/s (real) e criar um
 controle de banda que
 garanta para um determinado cliente (no meu caso uma rádio online do
 PSP) uma banda de 20Kb/s e todo
 o resto "para quem quiser" lá dentro de casa. Meu objetivo é garantir
 a banda para a rádio e ainda assim conseguir
 fazer alguns downloads/torrents.
 
 Cheguei a criar as declarações das filas e as regras para fazer match
 com o streaming mas até agora só vejo trafego
 nas filas que são default.
 
 Abaixo algumas coisas que estão no meu pf.conf que podem (ou não?)
 estar interferindo.
 
 
 
>> -
 table  {192.168.1.10}
 table  const { 192.168.0.0/16, 172.16.0.0/12,  10.0.0.0/8 }
 
 
 set loginterface $ext_if
 
 set skip on lo
 set block-policy return
 scrub in all
 
 scrub in on $int_if fragment reassemble
 scrub in on $int_if no-df
 scrub on $int_if reassemble tcp
 
 altq on $int_if cbq  bandwidth 10Mb queue { q_radio_out , q_internet ,
 q_default_out }
 queue q_radio_out  bandwidth 20Kb cbq
 queue q_internet   bandwidth 80Kb cbq
 queue q_default_outbandwidth  9Mb cbq(default)
 
 
 pass out quick on $int_if proto tcp from  to any
 queue q_radio_out
 pass out quick on $int_if proto tcp from any to  
 queue q_radio_out
 
 Quando vi que o tráfego de rádio não estava indo pra fila que eu
 queria, cheguei a apelar com as seguintes regras:
 
 pass out quick on $int_if proto tcp from ! port 9106 to any
 queue q_radio_out
 pass out quick on $int_if proto tcp from ! to any port 9106
 queue q_radio_out
 pass out quick on $int_if proto tcp from ! to any
 queue q_internet_default
 
 Mas ainda sem sucesso.  :-(
 
 
 
>> -
 
 Alguns podem estar achando estranho o fato da queue estar na interface
 interna, mas conversando
 com os amigos no ##freebsd-br @freenode (thanks Porks!) chegamos a
 conclusão que o altq só agiria neste caso nas filas
 de output, espero estarmos certos quanto a essa conclusão.
 
 No meu primeiro teste (com a interface externa) as coisas estavam indo
 por esse caminho:
 
 altq on $ext_if cbq  bandwidth 100Kb queue { q_radio, q_default }
 queue q_radio   bandwidth 20Kb cbq
 queue q_default bandwidth 80Kb cbq(default)
 
 pass in  quick on $ext_if proto tcp from any to any port $radio_port no
 state
 pass out quick on $ext_if proto tcp from any to any port $radio_port
 no state queue (r_radio)
 
 
 
 
>> -
 
 Bom.. acho que já me prolonguei demais.
 Vou dar uma estudada no HFSC, mas basicamente gostaria de saber se é
 possível fazer isso que eu estou tentando com o CBQ, e como?
 Teoricamente, pelo que li, dá sim, mas estou tendo dificuldades nas
 implementações, poderiam me dar uma luz?
 
 
 Obrigado pela ajuda,
 Vinnix
 
 [a.k.a. Vinícius Schmidt]
 
 
 
 ANEXO 1: Diagrama do Fluxo (thanks again Porks!)
 
 # -->  -->  --> 
 --> 
 # <--  <--  <-- 
 <-- 
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
 
>>> 
>>> 
>>> Vinícius,
>>> 
>>>Aplique as filas nas regras de filtragem que confiram com entrada de
>>> tráfego na interface interna.
>>> 
>>>No seu caso ficaria assim:
>>> 
>>> pass in quick on $int_if proto tcp from ! to port 9106 queue
>>> q_radio_out
>>> pass in quick on $int_if proto tcp from ! to any queue
>>> q_internet_default
>>> 
>>>Isso no caso de você querer fazer o enfileiramento da fila
>> q_radio_out
>>> somente com destino any porta 9106.
>>>Lembre-se que quando vc define as portas nas regras de saída da
>>> interface interna vc está definindo a porta de origem do seu host na rede
>>> interna.
>>> 
>>>Para verificar se o tráfego esta batendo com as filas utilize pfctl
>>> 

Re: [FUG-BR] Controle de Banda com PF

2010-06-27 Thread Vinicius Abrahao
2010/6/22 Gabriel Fonseca :>
> Vinícius,
>
>    Aplique as filas nas regras de filtragem que confiram com entrada de
> tráfego na interface interna.
>
>    No seu caso ficaria assim:
>
> pass in quick on $int_if proto tcp from ! to port 9106 queue
> q_radio_out
> pass in quick on $int_if proto tcp from ! to any queue
> q_internet_default
>
>    Isso no caso de você querer fazer o enfileiramento da fila q_radio_out
> somente com destino any porta 9106.
>    Lembre-se que quando vc define as portas nas regras de saída da
> interface interna vc está definindo a porta de origem do seu host na rede
> interna.
>
>    Para verificar se o tráfego esta batendo com as filas utilize pfctl -vvs
> q .
>
> Espero ter ajudado.
> Att.
>
>> Gabriel "ethX" Fonseca <
> -


Olá Gabriel, olá lista!

Só para dar um feedback, consegui resolver o problema com ALTQ CBQ dessa forma:

pass in on $int_if from  to !  queue q_internet

Esse ao meu ver, foi o "jump of the cat", o resto é simples e puro match.
Assim posso manter a qualidade do trafego da rede internet, e seguimentar
o resto dos acessos!

Boa semana a todos!

--
vi[nnix]
aka: Vinícius Abrahão Bazana Schmidt
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


[FUG-BR] Controle de banda com PF+ALTQ: "alimento pras ideia"

2005-11-25 Thread Patrick Tracanelli
hehehe "alimento pras ideia" foi soh uma traducao livre a expressao em 
ingles; autor do PF tenta justificar pq PF/ALTQ soh controla banda de 
saida... e nao convence ninguem...

http://bsdnews.com/view_story.php3?story_id=5307

A ultima explicacao dele parecida sobre "porque sistemas BSD nao 
_querem_ ter filtro na camada 7" eu concordei =) Mas essa... o_O

enfim, vale a pena ser lido.


-- 
Patrick Tracanelli

FreeBSD Brasil LTDA.
(31) 3281-9633 / 3281-3547
[EMAIL PROTECTED]
http://www.freebsdbrasil.com.br
"Long live Hanin Elias, Kim Deal!"


___
Freebsd mailing list
Freebsd@fug.com.br
http://mail.fug.com.br/mailman/listinfo/freebsd_fug.com.br