近年、従来のクライアント、サーバ型のアプリケーションに代わるモデルとしてP2Pアプリケーションの研究が盛んに行われている。しかし、P2P環境を前提としたアプリケーションの開発は従来型のネットワークアプリケーションに比べて、開発、テストに要する労力が非常に膨大になり、研究活動の場においても大きな問題となっている。そこで、本研究ではP2Pアプリケーション用統合開発環境を提案する。 提案環境におけるミドルウェアは分散デバッガからの遠隔操作機能を有し、開発者はデバッガ上の操作のみにより実験環境が含む全てのノードを画一的に操作できるようにする。提案システムには、プロトコルの動作を状態機械としてモデル化し、受信メッセージに対する処理を列挙することで簡潔に実装が行えるフレームワーク、提案ミドルウェアによりリアルタイムに接続関係を調査し、デバッガ上でノード間の接続関係がグラフィカルに観察できる機能、ノード間で交換される全てのメッセージのログを時系列で統合し、因果関係の調査を支援する機能、ミドルウェアにユーザインタフェースの機能も統合し、デバッガから遠隔操作機能やパケットロス、切断などの擬似的な発生を行う機能、などを提供し、実装実験の負担低減を目指す。 提案環境を、Java言語、および、スクリプト言語Rubyを用いて実装し、研究期間・企業などが互いに計算機を持ち寄ることで構築された、オープンな大規模実験用分散テストベッドであるPlanetLab上で試用し、数百ノード規模での分散アプリケーションの実験支援が行えることを確認した。
|