分散システムにおいて相互排除問題は最も基本的かつ重要な問題として知られている。分散相互排除機構にはトークン方式とコテリー方式があるが、信頼性の面で後者の方式が優れている。コテリーは交叉条件とよばれる条件をみたすプロセスの集合族であり、相互排除機構の信頼性は、機構が採用するコテリーに依存して決まる。 本研究では、コテリー方式の分散相互排除機構について、その信頼性が最大になるようなコテリーを求める方法を開発した。具体的には、まずプロセスの集合族がコテリーとなる条件を制約式で表現することによって、この問題を0-1整数計画法の問題として定式化した。そして、定式された問題を計算機を用いて解くためのプログラムを、良く知られた解析ソフトウェアLINDOを組み入れることで実装した。これにより、分散システムの形状、各構成要素(プロセス及び通信リンク)の信頼を入力として、信頼性最適なコテリーを求めることが可能になった。 次に、この提案手法が現実的にどの程度の規模のシステムに対して適用可能か、必要な計算時間やメモリ量に関する評価実験によって分析を行った。その結果、プロセス数が10程度の場合であれば、現実的な時間かつメモリ量で最適なコテリーが求められることが分かった。更に、新たな高速な相互排除機構の信頼性評価法を開発し、この評価法を利用して、提案法と既存のヒューリスティックによって得られたコテリーを用いた場合との比較評価を信頼性に関して行った。その結果、提案法によって得られるコテリーを採用することで、相互排除機構の故障確率を半減できることが分かった。
|