não sei se é possivel essa configuração, mais irei pesquisa, será otimo se for possivel fazer ....
Versão Imprimível
Bom, acredito que eu não tenha me feito entender plenamente até agora, pois vou continuar tentando. Independente de o Squid estar ou não na mesma máquina que faço shape/traffic control, tenho que direcionar todas as requisições à porta 80 para ele, então ele mesmo faz a requisição ao destino, sendo assim quem está recebendo os dados do destino é o Squid e não o cliente. Ah sim! Mas o Squid repassa direto ao cliente, tudo bem, mas é como se o Squid tivesse feito o download também, até por isto ele consegue gravar em disco o que ainda não possui.
Dito isto agora acredito que eu tenha entendido algo que nem era pra ser complicado e eu já deveria ter entendido antes.
Exemplo. Meu cliente está baixando um ISO do Debian a 256k e meu servidor não tem proxy. Tranquilo, meu servidor recebe os pacotes e repassa ao cliente ao limite estabelecido, ou seja, 256k. Não sei exatamente qual o tamanho dos pacotes e nem qual a quantidade exata deles, acredito que isto seja variável, então o servidor vai equilibrando o recebimento conforme entrega ao cliente.
Já se meu servidor tem proxy, acredito que a sistemática seja a mesma, ou seja, o Squid faz o último papel, de fazer a solicitação e devolver ao servidor para este entregar ao cliente.
Sendo assim, acredito que o problema de sensível demora que o Squid tenha apresentado em minha estrutura deva-se ao meu hardware não ter a performance exigida para não causar latências perceptíveis.
Meu servidor, na época em que tinha o Squid habilitado, era um Atlhon 64 3200+ com 512M de RAM e disco rígido de 80GB de 7200RPM, onde tinha definido 30GB para cache (há dois anos atrás muito pouco youtube ou outros vídeos ocupavam o link), para um link de 2M e 150clientes de 1288 a 256k.
Como pretendo utilizar novamente Squid (por causa do ZpH, ainda não sei se vou utilizar algo como o Thundercache por não saber como evitar que este não balanceie as requisições), adquiri um novo servidor com Processor Atlhon II 7750 de 2,7GHz, 4GB de RAM e 320GB de HD (pretendo colocar outro HD de 320G e fazer RAID 0 para tentar agilizar I/O), isto para um dois links de 2M e 200 clientes em média a 300k).
Dentro de algumas dias já terei-o pronto para por em produção e então relato aos amigos a experiência.
discursão a parte, vamos a solução do seu problema, e para isso iremos usar o proprio squid para se uma idéia da versatilidade de expecional proxy/cache que modesta a parte acreido domino o bastante paras as minhas necessidades.
primeira solução o recurso delay_pools
#controle de banda
acl extensoes url_regex -i .zip .exe .mp3 .gz .rar .avi .wmv .mpeg .mpg .gt .ram .rm .rmj .iso .raw .wav .mov .flv
acl rede1 src "/etc/squid/rede1"
acl estacao1 src "/etc/squid/estacao1"
#aqui se informa a quantidade de dalays seria o equivalente as classe do HTB ou CBQ
#nosso exemplo vamos usar 4 para fins didatiicos
delay_pools 4
#youtube bandlimit
acl downsites url_regex youtube
delay_class 1 1
delay_access 1 allow downsites
delay_parameters 1 20000/20000 # 20000 x 8/1024 = 156,25kbps
#nesse casso todos os acessos ao dominio do youtube estaramo limitadas a 156,25kbps
delay_class 2 3
delay_parameters 2 -1/-1 7000/7000 7000/7000 # 7000*8/1024= 54,60 kbps
delay_access 2 allow rede1
#ja no segundo exemplo os ips contantes da rede1 estarao limitado a 54,60 kbps
delay_class 3 3
delay_parameters 3 -1/-1 -1/-1 7000/7000
delay_access 2 allow estacao1
# no terceiiro exemplo os ips contantes da classe estação1 estarao limitado a 54,60 kbps
delay_class 3 4
delay_parameters 4 -1/-1 -1/-1 7000/7000
delay_access 4 allow extensoes
# nesteo exemplo apenas os arquivos coms a extenções .exe .zip .iso .... estarao limitado a 54,60 kbps
delay_access 3 allow cliente2
#obs crie os arquivos rede1 e estacao1, dentro do diretorio /etc/squid, de permissao de leitura e escrita
e dentro dele coloque os ips que serao controlados.
ok
em caso de duvida é so postar que estou aqui para ajudar.
Aki eu não deixo meu thunder mandando a full,... ai os arquivos que estao no proxy (thunder) vem na velocidade contratada pelo cliente.Quando o thunder baixa pela primeira vez,ele Puxa a cravados 680kbps.Por isso deixo um link de 8MB destinado a receber todos os plugins usados pelo thunder.... Fazendo assim,numca tive problemas de gargalo de link por causa do thunder...
Outro detalhe,uso o squid para ter uma otima navegação...os arquivos cacheados pelo mesmo, ficam setados em no max 3MB.... assim ele trabalha mais com paginas mesmo e arquivos muito pequenos... outro detalhe, uso HD em Raid0 de 32MB de buffer,causando assim um cache grande de paginas nesses 32MB de buffer,ocasionando assim uma grande velocidade na abertura das paginas... Outra coisa é que alem de marcar os pacotes do squid no mangle,deixo setado 3MB de Down e 3MB de UP no queue tree,pode nao parecer,mas faz as paginas cacheadas voar... Nos clientes uso apenas AP (APRouter6.1) e faço um pre-controle de banda nos radios,seto no max 1MB de down e 128k de up... Assim as requisições chegam pré-filtradas até meu servidor....