[FUG-BR] Squid - (Longo)
João Luiz Pedrosa Viana
jviana em vespanet.com.br
Terça Julho 31 17:09:09 BRT 2007
OK, vou comentar as linhas do delay polls, mas mesmo antes delas o problema
acontecia...
----- Original Message -----
From: "Lutieri G." <lutierigbtrabalho em gmail.com>
To: "Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)"
<freebsd em fug.com.br>
Sent: Tuesday, July 31, 2007 5:05 PM
Subject: Re: [FUG-BR] Squid - (Longo)
Não sei o que é falhas no download para vc. Mas uma vez que eu tinha
delay pools ativado no squid e limitava a velocidade demais,
inesperadamente terminava o download sem realmente ter chegado ao fim.
Por que o delay pools usa um recurso de negar o pacote, assim causando
atraso e conseguindo chegar a velocidade desejada. Primeiro verifica
se não é só com esses usuários que tem a banda de internet limitada
que tá dando problema... depois, caso seja, tenta aumentar a
velocidade mínima ... senão não sei..
Em 31/07/07, João Luiz Pedrosa Viana<jviana em vespanet.com.br> escreveu:
> Boa tarde,
>
>
> tenho a seguinte situação aqui e gostaria de ajuda de vocês, verifiquei no
> historio da lista, que o assunto do squid dando falhas no download de
> arquivos foi discutido por varias vezes, creio que todas as soluções
> propostas que achei relevante eu cheguei a ativar. Porem ainda continua
> dando erro quando o usuario vai fazer um download. Conversando com algumas
> pessoas, me informaram que o proprio projeto squid não tem suporte para
> processdores de nucleo duplo, gostaria se possivel confirmar essa
> informação
> e pediria a ajuda de vocês para tentar visualizar uma solução para o
> problema.
>
> Gostaria desde já agradecer a atenção, e me desculpar pelo e-mail tão
> longo,
> mas julgo que as informações abaixo se fazem necessárias.
>
> Bom ai vai uma breve descrição da maquina que é meu proxy
>
> Pentium D935 (intel box)
> Placa mãe ASUS
> Placa de rede 3Com
> HD sata 160gb
> 2GB de memoria RAM
>
>
> Freebsd versão 6.2 stable
>
> está particionada da seguinte forma
>
> Filesystem 1K-blocks Used Avail Capacity
> Mounted on
> /dev/ad6s1a 2026030 64086 1799862 3%
> /
> devfs 1 1 0
> 100% /dev
> /dev/ad6s1d 2026030 12 1863936 0%
> /tmp
> /dev/ad6s1e 19834638 4286504 13961364 23%
> /usr
> /dev/ad6s1f 29749036 203908 27165206 1%
> /var
> /dev/ad6s1g 180825888 1409616 164950202 1%
> /var/cache
> devfs 1 1 0
> 100% /var/named/dev
>
> Nessa maquina tenho um DNS secundario rodando.
>
> abaixo segue o arquivo ipfw.rules que estou usando para fazer o proxy
> transparente
>
> ipfw.rules
>
> #
> #!/bin/sh
> #
>
> fwcmd=/sbin/ipfw
> ife=rl0
> porta_squid=9090
>
> ${fwcmd} -f flush
> ${fwcmd} -f pipe flush
>
> # nao passa pelo squid (Caixa Economica Federal e afins)
> nosquid="{ 121.128.133.0/24 or 68.178.224.35/32 or 195.122.131.0/24 or
> 67.15.2.43/32 or 200.201.128.0/17 or 161.148.185.46/32 or
> 200.209.70.130/32
> or 207.44.142.6/32 }"
>
> # redes Liberadas (redes do provedor)
> redes="{ xxx.xxx.xxx.xxx/xx }"
>
> proxy() {
> # Squid (proxy) Transparente
> ${fwcmd} add set 20 allow tcp from ${redes} to me dst-port
> ${porta_squid} in via ${ife}
> ${fwcmd} add set 20 allow tcp from me to any dst-port 80 out via
> ${ife} keep-state
> ${fwcmd} add set 20 allow tcp from ${redes} to ${nosquid} dst-port
> 80 in via ${ife}
> ${fwcmd} add set 20 forward 127.0.0.1,${porta_squid} tcp from
> ${redes} to any dst-port 80 in via ${ife}
> ${fwcmd} add set 20 deny log tcp from any to me ${porta_squid} not
> layer2
> }
>
> # Start das regras do firewall
>
> proxy
>
>
> meu squid.conf estou usando a versão 2.6.13
>
> cache_dir diskd /var/cache 140000 64 64 Q1=64 Q2=72
>
> cache_swap_high 98
> cache_swap_low 90
>
> half_closed_clients on
>
> cache_mem 250 MB
>
> memory_pools off
> quick_abort_pct 85
> debug_options ALL,0
> log_fqdn off
>
> ftp_user anonymous em anonymous.com
>
> refresh_pattern ^ftp: 1440 20% 10080
> refresh_pattern ^gopher: 1440 0% 1440
> refresh_pattern . 0 20% 4320
>
>
> # The cache can be configured to continue downloading aborted requests.
> # This may be undesirable on slow (e.g. SLIP) links and/or very busy
> caches.
> # Impatient users may tie up file descriptors and bandwidth by repeatedly
> # requesting and immediately aborting downloads.
>
> # When the user aborts a request, Squid will check the quick_abort
> # values to the amount of data transferred until then.
>
> # If the transfer has less than 'quick_abort_min' KB remaining,
> # it will finish the retrieval. Setting 'quick_abort_min' to .1
> # will disable the quick_abort feature.
>
> # If the transfer has more than 'quick_abort_max' KB remaining,
> # it will abort the retrieval.
> # If more than 'quick_abort_pct' of the transfer has completed,
> # it will finish the retrieval.
>
> quick_abort_min 16 KB
> quick_abort_max 16 KB
> quick_abort_pct 95
>
> dead_peer_timeout 10 seconds
> hierarchy_stoplist cgi-bin ?
>
> acl all src 0.0.0.0/0.0.0.0
> acl manager proto cache_object
> acl localhost src 127.0.0.1/255.255.255.255
> acl SSL_ports port 443 563
> acl Safe_ports port 80
> #acl Safe_ports port 20
> #acl Safe_ports port 21
> acl Safe_ports port 443 563
> acl Safe_ports port 70
> acl Safe_ports port 210
> acl Safe_ports port 1025-65535
> acl Safe_ports port 280
> acl Safe_ports port 488
> acl Safe_ports port 591
> acl Safe_ports port 777
> acl CONNECT method CONNECT
> acl QUERY urlpath_regex cgi-bin \?
> acl iplivres src xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx
>
> http_access allow manager localhost
> http_access deny manager
> http_access deny !Safe_ports
> http_access deny CONNECT !SSL_ports
> http_access allow iplivres
> http_access allow localhost
> http_access deny all
> icp_access allow all
> miss_access allow all
>
> # Comentarios sobre o Delay pools do squid
>
> # Cria 2 delay-pools
> delay_pools 2
>
> # Cria o pool 1 class 3 -> Agregate, Network e Individual
> # A classe 3 indica que o pool vai controlar o total da banda (agregate),
> por rede e por usuario
> delay_class 1 3
>
> # Cria o pool 2 class 2 -> Agregate, Network
> # A classe 2 indica que o pool vai controlar o total da banda (agregate) e
> por rede
> delay_class 2 2
>
> # A quem se aplica o delay-pools 1
> # A todos os clientes que não seja Vespanet (iplivres)
> delay_access 1 allow all !iplivres
> delay_access 1 deny all
>
> # A todos os clientes que são vespanet (iplivres)
> delay_access 2 allow iplivres
> delay_access 2 deny all
>
> # Qual a velocidade será usada
> # Para o pool 1 :
> # Velocidade total que o squid poderá usar
> # - 600000/600000 (bits) -> 600.000 * 8 => 4800Kbits/s ==>
> 4.6Mbits/s
> #
> # -1/-1 -> sem limites por redes
> #
> # 24000/32000 -> 24.000 * 8 => 192Kbits/s / 32.000 * 8 =>
> 256Kbits/s
>
> delay_parameters 1 300000/300000 -1/-1 24000/32000
>
> # A explicação do pool 1 se aplica ao pool 2
> delay_parameters 2 -1/-1 56000/64000
>
> http_port 9090 transparent
>
> forwarded_for on
>
> ie_refresh on
> buffered_logs on
> reload_into_ims on
> hierarchy_stoplist cgi-bin ?
> no_cache deny QUERY
> fqdncache_size 2048 bytes
> dns_nameservers xxx.xxx.xxx.xxx
> cache_access_log /var/log/squid_access.log
> cache_log /dev/null
> cache_store_log none
> hierarchy_stoplist hotmail.com
> visible_hostname proxy.provedor.com
>
> cache_replacement_policy heap LFUDA
> memory_replacement_policy heap LFUDA
>
>
>
> no meu kernel tenho as seguintes costumizações feitas sobre o kernel
> GENERIC
>
> options SMP # Symmetric MultiProcessor Kernel
>
> options IPFIREWALL
> options IPFIREWALL_VERBOSE
> options IPFIREWALL_VERBOSE_LIMIT=500
> options IPFIREWALL_FORWARD
> #options IPFIREWALL_FORWARD_EXTENDED
> options IPDIVERT
> options DUMMYNET
> options HZ=1000
> options IPFIREWALL_DEFAULT_TO_ACCEPT
>
>
> #
> # Cache
> #
> options SYSVMSG
> options MSGMNB=16384
> options MSGMNI=41
> options MSGSEG=2049
> options MSGSSZ=64
> options MSGTQL=512
> options SHMSEG=16
> options SHMMNI=32
> options SHMMAX=2097152
> options SHMALL=3096
>
> # Dados retirados da FUG.com.br
> #
> # O squid configurado com 70 GB de cache em disco e 64 MB em memória,
> # com mais de 5 milhões de ítens no cache, estoura os 512 MB de memória.
> # O Sintoma típico disto é o squid caindo muitas vezes seguidas, e os
> # downloads sendo interrompidos.
>
> # O limit da csh, e ulimit da sh, não excedem um limite "hard" setado
> # pelo sistema no boot, que no meu caso eram estes 512 MB.
>
> # Existem 2 meios de aumentar este limite. Um é compilando o kernel
> # com a opção aumentando o tamanho máximo da área de dados e a
> # outra é colocando uma opção para isto no /boot/loader.conf.
>
> options MAXDSIZ=(1024UL*1024*1024)
> options MAXSSIZ=(128UL*1024*1024)
> options DFLDSIZ=(1024UL*1024*1024)
>
>
> João Luiz P. Viana
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
--
Att.
Lutieri G. B.
-------------------------
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