view paper/introduction.tex @ 17:32ba010cf7da

slide
author fuchita
date Mon, 18 Feb 2008 05:05:25 +0900
parents 9bbcbcd1c3ec
children
line wrap: on
line source

\chapter{序論}
\pagenumbering{arabic} 

%% 問題提起
%% どのような解決案を提示するか(してきたか)
%% 研究の最終目標
%% 論文の各章の説明
\section{研究背景と目的}
多数の計算機をインターネット等の比較的遠いネットワークにより接続し
実現される分散システムは、接続されたそれぞれの計算機が膨大量の計算機能やリソースを
分担することにより、拡張性に優れた大規模システムを構築できる。

そのため、分散システム上で動作するプログラムの開発(分散プログラム開発)の重要性は
コンピュータにおけるプログラム開発草創期から依然として高く、
今日においてもさらなる改進を求められている。

分散プログラムの開発は単純に離れたホスト間で通信して動作するだけならば、
プログラム自体は難しくない。
ただ、逐次プログラムに通信プリミティブを導入すれば良いだけである。
分散プログラム開発において困難とされるのは、ネットワークの動的な変化、故障、性能の多様性
を吸収し、その上でスケーラビリティを確保することである。

スケーラビリティとは、リソースを増やしてサービス能力を直線的に (理想的には) 拡張できる能力のこと
であり、負荷の増加に対してはリソースの追加だけが必要で、アプリケーション自体を広範に変更する必要
はないという事を示す。

スケーラビリティ等を確保したまま、分散プログラムを正しく記述することやデバッグを行う為に、
これまで数多くの分散プログラミングモデルが開発されてきたが、それらは遂次プログ
ラムのプログラミングモデルの延長であったり、アプリケーション開発者が複雑で理解しにくい記述を
熟知しなければならなかった。
それらは真の分散プログラミングモデルとは言えない。

そこで本研究室では自然にスケールする分散プログラ厶が書けるようなプログラミ
ングモデルを提供することを目的として Federated Linda を開発した。
本研究の目標は、スケーラブルな分散プログラムを自然に記述できる、真の分散プログラミングモデル
を提供することである。

本論文では、本研究室で開発した分散プログラミングモデル Federated Linda を用いた
分散アルゴリズムの記述事例として、Compact Routingという、ルーティングテーブルの収束速度や
ネットワークのスケーラビリティに対して優位なアルゴリズムの実装例について紹介し、
その開発によって得られた知見から本モデルに必要な機能拡張を提案する。

本モデルへの機能拡張としてまず最初の段階で、Federated Lindaの実装プログラミング言語を
Java言語とし、Java言語のオブジェクト指向やリファクタリングを用いた開発の効率化を得た。
これをもって、Federated LindaによるCompact Routingの実装経験から必要と考える、
分散デバッグ環境について検討を行い、実際にデバッグインターフェースの拡張機能を実装する。
実装したデバッグインターフェースの評価として、Federated Lindaでの分散アルゴリズム
におけるバグの特定を行い、その有用性を示す。



\section{論文の構成}
第2章では提案する分散プログラミングモデル Federated Linda について説明する。
また、実装するにあたっての段階分けや現時点でFederated Lindaに実装されている機能についても述べる。

第3章では提案する分散プログラミングモデル Federated Linda を用いた分散アルゴリズム
の実装を、スケーラビリティに優れたアルゴリズムである``Compact Routing''による実装
を用いて紹介する。

第4章ではFederated Linda による分散アルゴリズムの実装の経験によって得られた知見を
もとに、Java言語によるタプルサーバーの実装と、
Java言語でFederated Lindaの開発を行う事による利点について述べる。

第5章ではFederated Lindaに必要と考える分散デバッグ機能の検討を行い、
デバッグインターフェース機能拡張の例として、
通信量のスケーラビリティを検証するデバッグインターフェースの開発と評価を行う。

第6章ではFederated Lindaと同じくタプルスペースをベースにしたアーキテクチャであるJiniとの
比較を述べ、7章においてまとめと今後の課題とする。