Controle de downloads por usuário
Bom dia galera do under,
estou se batendo a dias para tentar resolver esse meu problema, vamos ver se alguém me da uma luz ai.
Preciso criar um controle de download para os "comedores de banda" q ficam baixando arquivos ou torrent dia e noite.
ex: cliente com plano de 1m conseguir fazer download no máximo a 600k, cliente com 2m conseguir download com 1200k e assim sucessivamente.
Citação:
add action=mark-packet chain=postrouting comment=\
"Controle do Trafego download UDP/P2P/ > 50Mb 1mb #################" disabled=no \
dst-address-list=1Mbps new-packet-mark=udp_Down_rede1Mb passthrough=no port=!53 protocol=udp
add action=mark-packet chain=postrouting disabled=no dst-address-list=1Mbps new-packet-mark=udp_Down_rede1Mb p2p=\
all-p2p passthrough=no
add action=mark-packet chain=postrouting connection-bytes=50000000-4294967295 disabled=no dst-address-list=1Mbps \
new-packet-mark=udp_Down_rede1Mb passthrough=no protocol=tcp
aqui marco os pacotes UDP (para controlar torrent), p2p, e aquivos com mais de 50mb
Citação:
add kind=pcq name=udp_p2p_down_1MB pcq-burst-rate=0 pcq-burst-threshold=0 pcq-burst-time=10s pcq-classifier=dst-address pcq-dst-address-mask=32 \
pcq-dst-address6-mask=64 pcq-limit=50 pcq-rate=600k pcq-src-address-mask=32 pcq-src-address6-mask=64 pcq-total-limit=2000
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0 max-limit=0 name=udp_p2p_Down_1MB packet-mark=udp_Down_rede1Mb parent=\
global-out priority=8 queue=udp_p2p_down_1MB
aqui crie uma queue type com limite de 600k para limitar por cliente de 1mb.
o problema é quando o cliente está fazendo um download e/ou torrent e continua usando a internet, por ex um video do youtube,
o cliente acaba recebendo os 600k q entrou no controle + 1m do controle de banda, tornando um tiro no pé essa tentativa de limitar esse downloads.
eu poderia fazer esse controle no roteador de borda por ip, mas como forneço ip valido (dinâmico ou fixo) para todos os cliente nao saberei se tal cliente que esta conectado com tal ip usa plano de 1mb ou de 10mb e a unica maneira que se qual ip esta conectado no plano é pelo address lists no concentrador.
a rede esta assim:
Roteador Borda
V
Concentrador PPPoE
V
Rbs fazendo ospf + mpls
todos os cliente se autenticam num único concentrador central.
desde já agradeço a atença de todos.
Re: Controle de downloads por usuário
Re: Controle de downloads por usuário
Obrigado Andrio, ótimo tópico.
Mas o meu cenário muda um pouco, no seu tutorial quando vc aplica o controle no router1 vc sabe a faixa de ip do cliente q esta autenticado no router2.
no meu caso, os cliente q estão autenticado no Router2 estão com ips validos e dinâmicos, e eu só consigo identificar o plano do cliente pelo address list do router2.
então se eu fizer um controle para o ip 191.xx.xx.001 no router1, no router2 as vezes vai logar 1 cliente com plano de 1mb com esse ip e as vezes vai logar um cliente de 10mb com o mesmo.
a forma mais fácil seria importar o address list do router2 para o router1, mas isso tem q ser dinamicamente..
Alguma ideia ?
Re: Controle de downloads por usuário
Re: Controle de downloads por usuário
Opa Deson00, obrigado pela dica.
mas já tinha testado o burst aqui, mas nao tive o resultado esperado.
ex: plano de 1mb com burst para 2mb
o cliente começa a fazer um donwload, começa com 2mb logo cai para 1mb, ate ai tudo bem, mas se ele tentar navegar fazendo o download a velocidade vai continuar 1mb, e so ter outro pico de 2mb quando terminar o download.
o q estou tentado fazer é, limitar esse download a 1mb, mas quando o cliente for navegar ou assistir um video fazendo o download ele possa ter os 2mb do plano, assim a navegacao nao fica lenta e nao utiliza toda a banda para download.
será q o burst faz isso e eu nao estou sabendo configurar ?
é meio complicado .... mas a ideia é boa! eheheh