Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have installed a bridge tproxy proxy in a fast server with 8GB ram. The traffic is around 60Mb/s.

When I start for first time the proxy (with the cache empty) the proxy works very well but when the cache becomes full (few hours later) the bridge goes very slow, the traffic goes below 10Mb/s and the proxy server becomes unusable.

Any hints of what may be happening?

I'm using:

  • linux-2.6.30.10
  • iptables-1.4.3.2
  • squid-3.1.1

compiled with these options:

./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --localstatedir=/var/lib --sysconfdir=/etc/squid --libexecdir=/usr/libexec/squid --localstatedir=/var --datadir=/usr/share/squid --enable-removal-policies=lru,heap --enable-icmp --disable-ident-lookups --enable-cache-digests --enable-delay-pools --enable-arp-acl --with-pthreads --with-large-files --enable-htcp --enable-carp --enable-follow-x-forwarded-for --enable-snmp --enable-ssl --enable-async-io=32 --enable-linux-netfilter --enable-epoll --disable-poll --with-maxfd=16384 --enable-err-languages=Spanish --enable-default-err-language=Spanish

My squid.conf:

cache_mem 100 MB
memory_pools off

acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl localhost src ::1/128
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl to_localhost dst ::1/128

acl localnet src 10.0.0.0/8     # RFC1918 possible internal network acl
localnet src 172.16.0.0/12  # RFC1918 possible internal network acl
localnet src 192.168.0.0/16 # RFC1918 possible internal network acl
localnet src fc00::/7   # RFC 4193 local private network range acl
localnet src fe80::/10  # RFC 4291 link-local (directly plugged) machines

acl net-g1 src xxx.xxx.xxx.xxx/24

acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

http_access allow net-g1

#from where browsing should be allowed
http_access allow localnet
http_access allow localhost

http_access deny all

http_port 3128
http_port 3129 tproxy

hierarchy_stoplist cgi-bin ?

cache_dir ufs /var/spool/squid 8000 16 256

access_log none

cache_log /var/log/squid/cache.log

coredump_dir /var/spool/squid

refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .

I have this issue when the cache is full, but do not really know if it is because of that.

Thanks in advance and sorry my english.

share|improve this question
    
Can you post the output of the first 5 lines of "top" when your cache server gets full and slows down? –  Hyppy Mar 23 '11 at 12:08
    
how many users do you have? –  diegows Mar 13 '13 at 12:14

2 Answers 2

Roberto, what is the size of this FS?

I can see that you use 8000.

cache_dir ufs /var/spool/squid 8000 16 256

Documentation states, that you have to subtract 20% from total space available for cache. Wiki is pointing that 10% should be left for OS accounting structures.

This way or another it is safe to leave some free space!

share|improve this answer

Are you hitting conntrack limits? cat /proc/sys/net/nf_conntrack_max vs. cat /proc/sys/net/netfilter/nf_conntrack_count - it is safe to increase the maximum, proxies often suffer from large conntrack tables because old stale connections hang about a fair while. These issues can manifest as a "gets slower over time" as it's only when the table fills that issues occur, and if it is filling only relatively slightly faster than it is emptying, that can take a few hours.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.