SourceForge.JP: Open Source Software

LoginCreate AccountHelp

[RSS]OpenSource Downloads

(11,563) Cabos
(2,276) 7-Zip
(1,935) HandBrake Japanese Language Version
(1,753) Tera Term
(1,270) CrystalDiskInfo
(868) Tween - client software of Twitter
(681) ffdshow
(636) ギコナビ
(626) CrystalDiskMark
10  (624) Amateras
11  (601) VirtualDubMod-jp
12  (462) MergeDoc
13  (386) NNDD - ニコニコ動画DL&再生ソフト
14  (376) WordPress Plugins/JSeries
15  (376) えこでこツール
More >>

最近ブックマークされた記事

Magazine 最新特集記事

オープンソースソフトウェアで強化するWindowsデスクトップ

 「オープンソースソフトウェア」というと、Linux/UNIXの世界が中心というイメージがあるかもしれない。しかし、現在ではWindows向けのオープンソースソフトウェアも多数公開されている。そこで本特集では、システムカスタマイズツールやマルチメディア関連ソフトウェア、バックアップツールなど、有用なWindows向けオープンソースソフトウェアを紹介していく。

大幅なスペックアップで生まれ変わった超小型Linuxサーバー「OpenBlockS 600」徹底活用

 超小型のLinuxサーバーとして有名な「OpenBlockS」に、大幅なスペックアップが施された新モデル「OpenBlockS 600」が登場した。そこでOpenBlockS 600の仕様を紹介するとともに、ルータ・ブリッジとしての利用やネットワークの管理・監視への利用など、実運用に向けての利用例やセットアップ例を解説する。

セキュリティ

Squidの更新パターンでインターネットアクセスを高速化する

2008年11月26日 12:38PM 1 2 3 4
  • スラッシュドットにタレコむ
  • あとで読む

 帯域幅の制限は、インターネットに接続している多くの人にとって今なお残る問題の1つだ。しかし、プロキシキャッシュサーバSquidをネットワークにインストールし、設定パラメータを用いてバイトヒット率を上げれば、利用可能な帯域幅を3~6割近くも拡大できる。

 Squidは、きめ細かいチューニングによってさまざまなニーズに対応できる。現行の安定版には少なくとも249個のパラメータがあり、丁寧なコメントが付いた設定ファイル(通常は「/etc/squid.conf」)は4,600行以上もある。このボリュームには、経験豊かな管理者でも圧倒されるだろう。設定の変更はすべてこのファイル上で行う。

 1週間では一杯にならない(理想をいえば1か月以上持つような)大きなキャッシュがほしいところだ。実際に必要なサイズは、ネットワークのトラフィック量によって変わってくる。キャッシュのサイズが大きいほど、要求されたオブジェクトがキャッシュに保存されている可能性が高くなる。

 メモリ容量は、オペレーティングシステムおよびSquidの実行に必要な分に加え、キャッシュサイズの約1%をキャッシュのデータベース用に確保する必要がある。つまり、100GBのディスク領域をキャッシュにする場合は、そのデータベース用に約1GB、OSおよびSquid用に約100MBが必要になる。

 Squidでキャッシュ可能なオブジェクトの最大サイズは、デフォルトで4MBである。ただし、最近のメディアリッチなインターネットの環境を考えるとこれでは少なすぎる。クライアント側で多数の動画やソフトウェアパッケージをダウンロードするなら、日常的にダウンロードされるファイルの最大サイズを考慮して値を(たとえば100MBに)増やすとよい。

 キャッシュによる保存と提供が行われる対象は、更新パターン(refresh pattern)によって決まる。理想的には、コンテンツを提供するWebサーバの情報に従って、キャッシュ可能な対象と期間を決められるようにしたい。こうした情報は、Squidによって処理され理解されるHTTPヘッダに記されている。残念ながら、ほとんどのサーバによって与えられる情報はWebサーバのデフォルト設定であり、帯域幅の大幅な節約にはつながらない。

 更新パターンの形式を以下に示す。

refresh_pattern [-i] regex min percent max [options]

 ここで、minとmaxは時間を分単位で指定した値、percentはパーセント値である。optionsには次のものを指定できる。

  • override-expire:WebサーバからのExpires(有効期限)ヘッダを無視する。
  • override-lastmod:WebサーバからのLast-modified(最終更新日)ヘッダを無視する。
  • reload-into-ims:クライアントからのreload(再読み込み)要求をIf-Modified-Since(更新日による条件付き取得)要求に変換する。
  • ignore-reload:クライアントのno-cache(キャッシュを利用せず元のサーバからリロード)ディレクティブを無視する。よって、キャッシュから取得可能であればそれを利用して要求に応える。
  • ignore-no-cache:Webサーバからのno-cache(オブジェクトをキャッシュ不可にする)ディレクティブを無視する。
  • ignore-no-store:Webサーバからのno-store(やはりオブジェクトをキャッシュ不可にする)ディレクティブを無視する。
  • ignore-private:Webサーバからのprivate(同じくオブジェクトをキャッシュ不可にする)ディレクティブを無視する。
  • ignore-auth:権限の承認を要求するオブジェクトをキャッシュ不可するとの 制限を無視する。
  • refresh-ims:クライアントからのreflesh(更新)要求をIf-Modified-Since要求に変換する。

 これらのオプションのどれが利用できるかはSquidのバージョンによって異なるので、設定ファイルで確認すること。

Solomon Asare
2009年01月26日 05:07PM 更新