[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:48691] Re: Debian Sarge 上の Squid を経由したインターネット接続が遅い
荒木田です.
[debian-users:48681] での投稿記事のエンコードが utf-8 になって
しまっていましたので,再送致します.
どうも,速度測定の部分をコピー・ペーストした際に
化けてしまったようです.申し訳ございません.
################## 以下再送 ##################
こちらには,初めて投稿いたします,荒木田と申します.
# 長くなってしまいますが,お許しください.
現在,Dell PowerEdge 830 に武藤さんの installer を用いて Sarge を
インストールしたサーバ (new-server とします) で squid を
動かしているのですが,クライアント PC から squid を経由して,ある
種のサイトへの接続に非常に時間がかかり,場合によっては接続が
Time Out してしまう状況に悩んでおります.
new-server のインストール時に使用したイメージは,
sarge-custom-1115.iso
で,現在,
% uname -a
Linux new-server 2.6.19-rc3-1-486 #1 Mon Oct 30 13:49:42 UTC 2006 i686 GNU/Linux
という環境です.
new-server のマシンスペックで関係しそうな部分は,
- CPU:Intel(R) Pentium(R) D CPU 2.80GHz
- Chip Set:Intel E7230
- メモリ:1GB
- Swap:2GB
- HDD:購入当初の 80GB + 増設した Maxtor MaxLine 250GB
- NIC:Intel Pro 1000 GT PCI (ドライバ e1000)
詳細は,若干の違いもありますが,概ね
http://www.dell.com/downloads/jp/products/pedge/poweredge830.pdf
にあるとおりだと思います.
squid のバージョンは 2.5.STABLE9 で,インストールは,
apt-get install squid
で行いました./etc/squid/squid.conf で有効になっている部分だけ
(コメントアウトされている部分だけ)抜き出しますと(IP 等一部置き換えます)
以下のとおりです:
http_port 8080
icp_port 0
cache_peer parent-proxy-server.foo.ac.jp parent 8080 7 no-query
# 階層 Proxy にしています
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 64 MB
cache_dir ufs /var/spool/squid 1500 16 256
ftp_user proxyuser@xxxxxxxxx
dns_nameservers 127.0.0.1 aaa.aaa.aaa.aaa bbb.bbb.bbb.bbb ccc.ccc.ccc.ccc
# 後ろ3つは本当は参照している DNS の IP です.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
auth_param basic program /usr/lib/squid/ldap_auth -b "ou=Users,dc=foo,dc=ac,dc=jp" -f "(&(uid=%s)(objectClass=posixAccount))" ddd.ddd.ddd.ddd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
acl user-auth proxy_auth REQUIRED
# 上の5行は LDAP 認証のためです
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 systemA src xxx.xxx.xxx.xxx
acl systemB src yyy.yyy.yyy.yyy/25
acl systemC src zzz.zzz.zzz.zzz/24
acl systemD src www.www.www.www/24
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563 # https, snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
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 Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
acl KINSHIURL1 dstdomain 2ch.net mixi.jp
acl KINSHIURL2 url_regex 2ch mixi
http_access deny KINSHIURL1
http_access deny KINSHIURL2
# 2ch と mixi への接続を切っています
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access allow sysytemA
http_access allow sysytemB
http_access allow systeemD user-auth
http_access deny all
http_reply_access allow all
icp_access allow all
visible_hostname foo.ac.jp
always_direct allow localhost
always_direct allow systemC
never_direct allow all
coredump_dir /var/spool/squid
このように設定した squid 経由の全てのサイトの閲覧が遅いという訳ではなく,
大きめの画像や JAVA アプレットがある海外のサイトでもスムーズに閲覧できる
場合もあります.
通信速度の著しい低下は,例えば flush を用いたサイトを閲覧した
場合に非常に顕著で,flush を使ったサイトが表示されるまでに
大体5分程かかってしまいました.swf ファイルの容量にはよらず,
flush が現れた途端に遅延に直面するといった具合です.
squid を再起動しても症状は変わりません.
例えば以下のサイト,
http://zx.sokudo.jp/
で new-server の squid を経由して通信速度を測定しますと,
速度.jpスピードテスト高機能版回線速度測定結果
http://zx.sokudo.jp/ v3.0.0
測定時刻 2007/05/1718:26:12
回線速度/経路長/OS 会社や大学など/-/Linux/東京都
サービス/ISP -/その他
サーバ1[N] 42.9Mbps
サーバ2[S] 44.1Mbps
下り受信速度: 44Mbps(44.1Mbps,5.52MByte/s)
上り送信速度: 43Mbps(43.1Mbps,5.3MByte/s)
という結果になります.
接続が遅くなっている時に log にエラーを示すメッセージは現れません.
例えば flush を使っている上記の速度測定サイトを閲覧している場合,
/var/log/squid/access.log には,
1179388512.642 3385 133.9.102.209 TCP_MISS/200 14162 GET http://sv12.sokudo.jp/41.swf? - FIRST_UP_PARENT/parent-proxy-server.foo.ac.jp application/x-shockwave-flash
1179388517.000 3382 133.9.102.209 TCP_MISS/200 20698 GET http://zx.sokudo.jp/41.swf? - FIRST_UP_PARENT/parent-proxy-server.foo.ac.jp application/x-shockwave-flash
1179388517.650 89 133.9.102.209 TCP_MISS/200 367 POST http://zx.sokudo.jp/cgi-bin/upload2.cgi - FIRST_UP_PAREN
最初 PowerEdge の Onboard の NIC がボトルネックになっているのかと思い,
Intel の NIC を導入したのですが改善されず,squid のコンパイルでも
改善しませんでした.
こういった状況で,squid 経由の通信遅延が何が原因で,どこで起こっているのか
掴みかねている状況です.
Squid の設定で見落としている点や,改善に繋がりそうな指針などありましたら,
ポインタでも構いませんので,ご教授頂ければと思います.
よろしくお願い致します.
--
荒木田 英禎