P2Pファイル共有ネットワークを利用したフラッシュクラウド耐性のある協調型負荷分散手法

「P2Pファイル共有ネットワークを利用したフラッシュクラウド耐性のある協調型負荷分散手法」という内容で、COMPSACという国際会議で代理で発表してきました。(去年の国際会議では僕が色々あって、代理で先生に発表してもらったような形ですね)

今回は、著者の方が色々あって発表できないので、共著者の僕が代理で発表してきました。著者や先生と相談した結果、面白い内容なので公開しようということになり、僕のブログが一番手っ取り早いので、ここで紹介します。

研究の概要

研究の概要としては以下になります。

 世界のインターネット人口は年々増加を続けており,現在約22億人に達して いる.また新興国の発展に伴い,今後その数はさらに増加することが見込まれ る.このような状況で,近年,フラッシュクラウド (Flash Crowd) と呼ばれる Webサーバへの急激な負荷の増加によって,一時的にWebサイトが閲覧不能に なる現象が問題となっている.フラッシュクラウドは,典型的には有名な Web サイトやブログで当該の Web コンテンツが紹介されたことが契機で生じ,そ の発生も規模も予測が困難である.また,その負荷は平常時の数十倍から数百倍に及ぶ .しかし,従来の負荷分散方式では,事前に負荷の見積もりが必要であったり,負荷に応じて柔軟に設備を増強できないなどの問題からフラッシュ クラウドにうまく対処することができない.特に個人や非営利団体,SOHO 事 業者などの運営するWebサイトでは,現状においてフラッシュクラウドへの対 応まで想定した設備を導入することは困難であり,多くの場合フラッシュクラウドに対して無防備である.
本研究では,従来の負荷分散手法について考察し,フラッシュクラウドへの 対応における問題点を明らかにするとともに,個人などが運営するWebサーバ 同士を P2P ファイル共有ネットワークを通じてデータをやり取りできるように し,協調させることでフラッシュクラウドに対処する協調型の負荷分散手法を 提案する.本提案手法では,それぞれの持つWebサーバが遊休資源をお互いに 融通し合い,また P2P ファイル共有ネットワークを活用し,需要の高まりに応 じてデータの複製が自動的に増加することを利用して柔軟にフラッシュクラウドに対処する.そのため,金銭的な理由などによって,物理的,仮想的問わず, 新たに設備を増強することが出来ない個人や非営利団体,SOHO 事業者などの 運営するWebサイトでも,フラッシュクラウドのような短時間の急激な高負荷 に対処することが可能である.
また,本提案手法に基づいたシステムを設計,実装し,実験によってその性能を評価する.

今回は、とりあえず設計の部分だけを発表してきました。時期が来たら実装や評価、ソフトウェアも公開したいと思っています。

これは、P2P本来の互助精神を生かそうという研究で、古のインターネットにおいて、相互補助が働いていた事を知っている人達にはとても好評で、発表後も外国の方に素晴らしい!面白い!興味深い!と沢山声をかけて頂けました。

僕の英語力があれば、もっとコミュニケーションをとれたと思うのですが、そこはやはり残念だったのでもっと英語頑張ろうと思います。

対象としているコンテンツは静的コンテンツで、動的コンテンツ(CGIとか)やデータベースはまだ対象にしていません。また、実装においてはまだまだいくつか課題が残っているのですが、アイデアとしてはとても面白いと思っていますので、引き続き実装・評価をやっていきたいと考えています。

人気のコンテンツにクライアントがアクセスすればするほど、そのコンテンツのレプリカがクライアントやP2Pファイル共有ネットワークに作成され、負荷が分散される仕組みです。これによって、フラッシュクラウドになるようなコンテンツは、P2Pファイル共有ネットワーク上にたくさんレプリカが作成され、データはP2Pファイル共有ネットワークを介してダウンロードすることになるため、特定のサーバに負荷が集中せず、アクセスがあればるほど負荷が広範囲に自動で分散されていき、リソースがサーバ・クライアント問わず共有されていきます。

こういう相互補助や協調関係をうまく取り決められて、協調関係にあるものが増え、相互にアイドルリソースを補助し合えるWebサーバが機能する世界が来たら、きっとP2Pも新たなフェーズに行けるんじゃないかと思っています。

スライド(日本語・英語)

スライドは以下になります。英語と日本語両方用意しています。
 

この仕組みはかなり面白いと個人的に思っているので、どうにかこういう仕組みを小さいネットワークから進めてみたいと思います。

是非コメント頂けたらと思います!