Democratizing content publication with Coral

「Democratizing content publication with Coral」という論文のアブストラクトを読みました。

■著者
M. J. Freedman, E. Freudenthal, and D. Mazi`eres
■出典
In NSDI, Mar. 2004

以下、アブストラクト原文です。

CoralCDN is a peer-to-peer content distribution network that allows a user to run a web site that offers high performance and meets huge demand, all for the price of a cheap broadband Internet connection.
Volunteer sites that run CoralCDN automatically replicate content as a side effect of users accessing it.
Publishing through CoralCDN is as simple as making a small change to the hostname in an object’s URL; a peer-to-peer DNS layer transparently redirects browsers to nearby participating cache nodes, which in turn cooperate to minimize load on the origin web server.
One of the system’s key goals is to avoid creating hot spots that might dissuade volunteers and hurt performance.
It achieves this through Coral, a latency-optimized hierarchical indexing infrastructure based on a novel abstraction called a distributed sloppy hash table, or DSHT.

以下、僕による日本語訳です。関係代名詞難しい。。

CoralCDNは、安価なブロードバンド接続を用いて、多数のアクセスを処理できる高性能なWebサイトを稼働させるための、P2P CDNコンテンツ配信ネットワーク)である。
CoralCDNを稼働するボランティアサイトは、ユーザがコンテンツにアクセスした際に、副作用的にコンテンツを自動的に複製する。
CoralCDNを介したコンテンツの配信は、コンテンツのURLのホスト名を少し変更するだけで簡単に行われる。
P2P DNSレイヤーが、隣接するキャッシュノード群にブラウザを透過的にリダイレクトする。
キャッシュノード群はオリジナルのWebサーバに掛かる負荷を最小化するために協調動作する。
提案システムの主な目標の一つは、ボランティアサイトになることを思いとどまらせたり、性能に悪影響を及ぼすようなホットスポットが生成されるのを避けることである。
この目標は、DSHT(distributed sloppy hash table)と呼ばれる新しい概念に基づいた遅延最適化階層的インデックス基盤により達成される。

この論文アブストラクトを読んでわかったことは以下の通り。

  • コンテンツを保持するWebサーバに掛かる負荷を分散させることを目的として、CoralCDNというP2P CDNが存在する。
  • コンテンツの利用者は、利用したいコンテンツを示すURLのホスト名を少し変更するだけでCoralCDNを利用することが出来る。
  • CoralCDNはボランティアサイトと呼ばれるノードによって構成される。
  • ある特定のボランティアサイトに負荷を集中させないように、DSHTという技術を用いたインデックス手法を採用している。

わからなかった事は以下の通り。

  • DSHTの概要
  • ボランティアサイトはWebサーバがなるの?それともコンテンツの利用者がなるの?どうやってなるの?
  • 「latency-optimized hierarchical indexing infrastructure」の詳細

以下のサイトで紹介されているCoralというP2P Webキャッシュシステムに関する論文です。使い方なども以下のサイトに書かれているっぽいです。

URLを少し変更するだけでCoralの機能を利用することが出来るので、例えば、「ニュースサイトへのリンクをブログ等に載せる際に、Coral用に修正したURLを載せることで、Webサーバにかかる負荷を分散させることができる」と後輩が申しておりました。確かに便利!

DSHT(Distributed Sloppy Hash Table)という言葉を初めて目にしました。気になるので後ほど調べてみようと思います。