(57)【特許請求の範囲】
【請求項１】
サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置に接続されたサービスマネージャ装置と、前記サービスマネージャ装置に通信可能な複数のノード装置とを備えたサービス提供システムであって、
前記サービスマネージャ装置は、
前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め記憶するサービス評価値記憶手段と、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて記憶するモジュール識別情報記憶手段と、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて記憶する配置記憶手段と、
前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信するサービス要求送信手段と、
前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する第１の評価値計測手段と、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算手段と、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信するペナルティ送信手段と、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する配置更新手段と、
を備え、
前記各ノード装置は、
自ノード装置に前記エージェント手段が配置される場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なＣＰＵを含むプログラム実行手段と、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて記憶するリソース配分記憶手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新するリソース配分更新手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第１のリソース配分削除手段と、
前記エージェント削除メッセージを受けると、前記第１のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除するプログラム削除手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第２のリソース配分削除手段と、
前記エージェント移動メッセージを受けると、前記第２のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除するプログラム移動手段と、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する別ノード問合せ手段と、
を備え、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する上下限値記憶手段と、
いずれかの前記サービス提供モジュール手段と、
このサービス提供モジュール手段に対して前記評価値を計測する第２の評価値計測手段と、
前記第２の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する比較手段と、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定手段と、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第２のリソース配分削除手段及び前記プログラム移動手段に送出する移動メッセージ送出手段と、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定手段と、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第１のリソース配分削除手段及び前記プログラム削除手段に送出する削除メッセージ送出手段と、
を備えたことを特徴とするサービス提供システム。
【請求項２】
請求項１に記載のサービス提供システムにおいて、
前記移動メッセージ送出手段は、
前記別ノード問合せ手段から応答された前記別ノード装置のリソース配分記憶手段の記憶内容のうち、移動対象のエージェント手段が必要とするリソース配分以上の空きリソース配分であって、当該必要とするリソース配分に最も近い前記空きリソース配分を示す記憶内容をもつ別ノード装置を移動先のノード装置として選択する手段と、
当該移動対象のエージェント手段を識別するエージェント識別情報と当該選択したノード装置を示すノード識別情報とを指定した前記エージェント移動メッセージを作成し、このエージェント移動メッセージを前記第２のリソース配分削除手段及び前記プログラム移動手段に送出する手段と、
を備えたことを特徴とするサービス提供システム。
【請求項３】
サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置と、前記サービス要求を受けるとサービスの各段階を実行して実行結果又は前記サービス応答を送信する複数のノード装置との間の通信に介在するサービスマネージャ装置であって、
前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め記憶するサービス評価値記憶手段と、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて記憶するモジュール識別情報記憶手段と、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて記憶する配置記憶手段と、
前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信するサービス要求送信手段と、
前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する第１の評価値計測手段と、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算手段と、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信するペナルティ送信手段と、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する配置更新手段と、
を備え、
前記各ノード装置は、
自ノード装置に前記エージェント手段が配置される場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なＣＰＵを含み、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けてリソース配分記憶手段に記憶し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答し、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて上下限値記憶手段に記憶し、
いずれかの前記サービス提供モジュール手段を有して当該サービス提供モジュール手段に対して前記評価値を計測し、
当該計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較し、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定し、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを送出し、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを送出し、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定し、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを送出し、
前記減少可能か否かの判定の結果、否の場合には前記問合せメッセージを送出し、当該送出に対して応答された記憶内容に基づいて前記エージェント削除メッセージを送出することを特徴とするサービスマネージャ装置。
【請求項４】
サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置と、前記サービス要求を受けるとサービスの各段階を実行して実行結果又は前記サービス応答を送信する複数のノード装置との間の通信に介在してサービス評価値記憶手段、モジュール識別情報記憶手段及び配置記憶手段を備えたサービスマネージャ装置に用いられるサービスマネージャ装置用プログラムであって、
前記サービスマネージャ装置を、
前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め前記サービス評価値記憶手段に書込む手段、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて前記モジュール識別情報記憶手段に書込む手段、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて前記配置記憶手段に書込む手段、
前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信するサービス要求送信手段、
前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する第１の評価値計測手段、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算手段、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信するペナルティ送信手段、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する配置更新手段、
として機能させ、
前記各ノード装置は、
自ノード装置に前記エージェント手段が配置された場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なＣＰＵを含み、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けてリソース配分記憶手段に記憶し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答し、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて上下限値記憶手段に記憶し、
いずれかの前記サービス提供モジュール手段を有して当該サービス提供モジュール手段に対して前記評価値を計測し、
当該計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較し、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定し、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを送出し、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを送出し、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定し、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを送出し、
前記減少可能か否かの判定の結果、否の場合には前記問合せメッセージを送出し、当該送出に対して応答された記憶内容に基づいて前記エージェント削除メッセージを送出するサービスマネージャ装置用プログラム。
【請求項５】
サービスを識別するサービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス要求に対するサービス応答との間で計測可能な評価値とを関連付けて予めサービス評価値記憶手段に記憶し、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けてモジュール識別情報記憶手段に記憶し、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて配置記憶手段に記憶し、
前記サービス要求を送信して前記サービス応答を受信するユーザ端末に通信可能なゲートウェイ装置から前記サービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信し、
当該送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測し、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算し、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信し、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新するサービスマネージャ装置に通信可能な各々のノード装置であって、
自ノード装置に前記エージェント手段が配置された場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なＣＰＵを含むプログラム実行手段と、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて記憶するリソース配分記憶手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新するリソース配分更新手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第１のリソース配分削除手段、
前記エージェント削除メッセージを受けると、前記第１のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除するプログラム削除手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第２のリソース配分削除手段、
前記エージェント移動メッセージを受けると、前記第２のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除するプログラム移動手段と、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する別ノード問合せ手段と、
を備え、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する上下限値記憶手段と、
いずれかの前記サービス提供モジュール手段と、
このサービス提供モジュール手段に対して前記評価値を計測する第２の評価値計測手段と、
前記第２の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する比較手段と、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定手段と、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第２のリソース配分削除手段及び前記プログラム移動手段に送出する移動メッセージ送出手段と、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定手段と、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第１のリソース配分削除手段及び前記プログラム削除手段に送出する削除メッセージ送出手段と、
を備えたことを特徴とするノード装置。
【請求項６】
サービスを識別するサービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス要求に対するサービス応答との間で計測可能な評価値とを関連付けて予めサービス評価値記憶手段に記憶し、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けてモジュール識別情報記憶手段に記憶し、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて配置記憶手段に記憶し、
前記サービス要求を送信して前記サービス応答を受信するユーザ端末に通信可能なゲートウェイ装置から前記サービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信し、
当該送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測し、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算し、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信し、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新するサービスマネージャ装置に通信可能な各々のノード装置であって、自ノード装置に前記エージェント手段が配置された場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なＣＰＵを含むプログラム実行手段と、リソース配分記憶手段とを備えた前記ノード装置に用いられるノード装置用プログラムであって、
前記ノード装置を、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて前記リソース配分記憶手段に書込む手段、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新するリソース配分更新手段、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第１のリソース配分削除手段、
前記エージェント削除メッセージを受けると、前記第１のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除するプログラム削除手段、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第２のリソース配分削除手段、
前記エージェント移動メッセージを受けると、前記第２のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除するプログラム移動手段、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する別ノード問合せ手段、
として機能させ、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて、当該エージェント手段が配置された自ノード装置内の上下限値記憶手段に書込む手段、
いずれかの前記サービス提供モジュール手段、
このサービス提供モジュール手段に対して前記評価値を計測する第２の評価値計測手段、
前記第２の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する比較手段、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定手段、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第２のリソース配分削除手段及び前記プログラム移動手段に送出する移動メッセージ送出手段、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定手段、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、
前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第１のリソース配分削除手段及び前記プログラム削除手段に送出する削除メッセージ送出手段、
を含んでいるノード装置用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、サービス提供システム、装置及びプログラムに関する。
【背景技術】
【０００２】
計算機システムからなるサービス提供システムは、ユーザから要求されるレスポンスタイムや稼働率などの値を満たすように、サービスを提供する。但し、レスポンスタイム等のユーザの要求はサービス毎に異なる。そのため、システム設計者は、サービス毎に異なる要求に基づき、提供するサービスに特化してシステム構成やリソース配分を設計し、システム構築をする。
【０００３】
また、同一のサービスにおいても、サービスの利用量は時とともに変化する。このため、設計時のシステム構成やリソース配分は、システム構築後、経時変化により過度に要求を満たすようになった場合、計算機資源に無駄を生じさせてしまう。なお、この無駄は、最大のサービスの利用量の見積もりに合わせたシステム構成やリソース配分を設計し、システム構築をした場合でも、利用量の最大値と最小値との差分だけ生じることになる。
【０００４】
一方、このような無駄を抑制する観点から、システム構成やリソース配分を動的に変化させるシステムを用い、変化後のサービスの利用量に合わせたシステム構成やリソース配分を再設計し、最適なシステム構成やリソース配分を再構築する手法が考えられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−４３３７号公報
【特許文献２】特開２００５−１８２７９６号公報
【特許文献３】特開２００１−６７３３４号公報
【特許文献４】特表２００８−５１９３２２号公報
【特許文献５】特表２００６−５２００２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、以上のようなサービス提供システムは、サービス毎に異なる要求に基づき、システム構成やリソース配分の設計をする労力がかかる。例えば、新規サービスにより、新たな設計の手間が生じる。
【０００７】
また、システム構成やリソース配分を動的に変化させる場合、サービスの利用量に合わせて再設計を繰り返す必要がある。
【０００８】
本発明が解決しようとする課題は、サービス毎に異なる要求や、同一サービスの利用量の変化に対し、システム構成やリソース配分を設計する労力を低減し得るサービス提供システム、装置及びプログラムを提供することである。
【課題を解決するための手段】
【０００９】
実施形態のサービス提供システムは、サービスマネージャ装置と、複数のノード装置とを備えている。前記サービスマネージャ装置は、サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置に接続されている。前記各ノード装置は、前記サービスマネージャ装置に通信可能となっている。
【００１０】
前記サービスマネージャ装置は、サービス評価値記憶手段、モジュール識別情報記憶手段、配置記憶手段、サービス要求送信手段、第１の評価値計測手段、ペナルティ計算手段、ペナルティ送信手段及び配置更新手段を備えている。
【００１１】
前記サービス評価値記憶手段は、前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め記憶する。
【００１２】
前記モジュール識別情報記憶手段は、前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて記憶する。
【００１３】
前記配置記憶手段は、前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて記憶する。
【００１４】
前記サービス要求送信手段は、前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信する。
【００１５】
前記第１の評価値計測手段は、前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する。
【００１６】
前記ペナルティ計算手段は、前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算する。
【００１７】
前記ペナルティ送信手段は、前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信する。
【００１８】
前記配置更新手段は、前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する。
【００１９】
前記各ノード装置は、プログラム実行手段、リソース配分記憶手段、リソース配分更新手段、第１のリソース配分削除手段、プログラム削除手段、第２のリソース配分削除手段、プログラム移動手段及び別ノード問合せ手段を備えている。
【００２０】
前記プログラム実行手段は、自ノード装置に前記エージェント手段が配置される場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なＣＰＵを含んでいる。
【００２１】
前記リソース配分記憶手段は、前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて記憶する。
【００２２】
前記リソース配分更新手段は、前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新する。
【００２３】
前記第１のリソース配分削除手段は、前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する。
【００２４】
前記プログラム削除手段は、前記エージェント削除メッセージを受けると、前記第１のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除する。
【００２５】
前記第２のリソース配分削除手段は、前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する。
【００２６】
前記プログラム移動手段は、前記エージェント移動メッセージを受けると、前記第２のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除する。
【００２７】
前記別ノード問合せ手段は、前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する。
【００２８】
前記エージェント手段は、上下限値記憶手段、いずれかの前記サービス提供モジュール手段、第２の評価値計測手段、比較手段、リソース増加判定手段、この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、移動メッセージ送出手段、リソース減少判定手段、この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、削除メッセージ送出手段を備えている。
【００２９】
前記上下限値記憶手段は、前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する。
【００３０】
前記第２の評価値計測手段は、このサービス提供モジュール手段に対して前記評価値を計測する。
【００３１】
前記比較手段は、前記第２の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する。
【００３２】
前記リソース増加判定手段は、前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定する。
【００３３】
前記エージェント手段は、この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する。
【００３４】
前記移動メッセージ送出手段は、前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第２のリソース配分削除手段及び前記プログラム移動手段に送出する。
【００３５】
前記リソース減少判定手段は、前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定する。
【００３６】
前記エージェント手段は、この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する。
【００３７】
前記削除メッセージ送出手段は、前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第１のリソース配分削除手段及び前記プログラム削除手段に送出する。
【図面の簡単な説明】
【００３８】
【図１】一実施形態に係るサービス提供システムの構成の一例を示す模式図である。
【図２】同実施形態におけるサービスマネージャ装置及び第１ノード装置の構成の一例を示す模式図である。
【図３】同実施形態におけるＳＬＡ記憶部を説明するための模式図である。
【図４】同実施形態におけるサービス処理フロー記憶部を説明するための模式図である。
【図５】同実施形態におけるサービス配置記憶部を説明するための模式図である。
【図６】同実施形態における第１及び第２ノード装置の構成の一例を示す模式図である。
【図７】同実施形態におけるサービスマネージャ装置及び第３ノード装置の構成の一例を示す模式図である。
【図８】同実施形態における第３及び第４ノード装置の構成の一例を示す模式図である。
【図９】同実施形態におけるリソース配分記憶部を説明するための模式図である。
【図１０】同実施形態におけるペナルティ上下限値記憶部を説明するための模式図である。
【図１１】同実施形態におけるサービス提供システムの全体動作を説明するためのフローチャートである。
【図１２】同実施形態におけるステップＳＴ２００又はＳＴ３００の動作を詳細に説明するためのフローチャートである。
【発明を実施するための形態】
【００３９】
以下、本発明の一実施形態について図面を用いて説明する。なお、以下の各装置は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
【００４０】
図１は一実施形態に係るサービス提供システムの構成の一例を示す模式図である。サービス提供システムは、ゲートウェイ装置１０に接続されたサービスマネージャ装置２０と、このサービスマネージャ装置２０に通信可能な複数のノード装置Ｎ１〜Ｎ４とを備えている。各ノード装置Ｎ１〜Ｎ４は、１つのエージェントマネージャ部３０１〜３０４を静的に備えており、０個以上４個以下のエージェント部Ａ〜Ｄが動的（且つ自律的）に配置される。なお、このサービス提供システムにおいては、エージェント部Ａ〜Ｄの配置が動的に変化するため、システム構成とリソース配分が動的に変化する。また、エージェント部Ａ〜Ｄの配置が同じでもリソース配分を変化させる場合がある。
【００４１】
図１に示す構成例では、第１ノード装置Ｎ１は、第１エージェント部Ａ及び第１エージェントマネージャ部３０１を備えている。第２ノード装置Ｎ２は、第２エージェント部Ｂ及び第２エージェントマネージャ部３０２を備えている。第３ノード装置Ｎ３は、複製の第１エージェント部Ａ’、第３エージェント部Ｃ及び第３エージェントマネージャ部３０３を備えている。第４ノード装置Ｎ４は、第４エージェント部Ｄ及び第４エージェントマネージャ部３０４を備えている。
【００４２】
全てのノード装置Ｎ１〜Ｎ４は互いに接続されているが、図面を見やすくする観点から、図１では一部の接続線の記載を省略している。また、ノード装置Ｎ１，…の台数と、エージェント部Ａ，…の個数とは、４台と４個に限らず、それぞれ独立に任意の台数と個数とを使用可能となっている。
【００４３】
ここで、ゲートウェイ装置１０は、外部のコンピュータネットワークへの出入り口となるネットワーク拠点である。全てのサービス要求は、ゲートウェイ装置１０からサービスマネージャ装置２０に送信される。全てのサービス応答は、サービスマネージャ装置２０からゲートウェイ装置１０に受信される。例えば、ゲートウェイ装置１０は、サービスを識別するサービス識別情報を含むサービス要求をユーザ端末（図示せず）から受信すると、このサービス要求をサービスマネージャ装置２０に送信する。また、ゲートウェイ装置１０は、このサービス要求に対するサービス応答をサービスマネージャ装置２０から受信すると、このサービス応答をユーザ端末に送信する。
【００４４】
サービスマネージャ装置２０は、内部のコンピュータネットワークに存在するノード装置Ｎ１〜Ｎ４上のエージェント部Ａ〜Ｄが提供するサービスを管理する。サービスマネージャ装置２０は、各ノード装置Ｎ１〜Ｎ４とゲートウェイ装置１０との間に配置されている。なお、全てのサービス要求は、ゲートウェイ装置１０及びサービスマネージャ装置２０を通っていずれかのノード装置Ｎ１〜Ｎ４に受信される。同様に、全てのサービス応答は、いずれかのノード装置Ｎ１〜Ｎ４から送信され、サービスマネージャ装置２０及びゲートウェイ装置１０を通ってユーザ端末に受信される。
【００４５】
具体的には、サービスマネージャ装置２０は、例えば図２に示すように、ＳＬＡ（Service Level Agreement）記憶部２１、サービス処理フロー記憶部２２、サービス配置記憶部２３、サービス評価部２４、サービスペナルティ計算部２５及び配置更新部２６を備えている。
【００４６】
ＳＬＡ記憶部（サービス評価値記憶手段）２１は、予め内容を書込可能で各部２４〜２５から読出可能なメモリであり、サービスごとのＳＬＡ（サービス内容合意書に記載された合意内容のうち、計測可能な評価値）が設定される。例えば、ＳＬＡ記憶部２１は、図３に示すように、サービスを識別するサービス識別情報Ｓ１，Ｓ２と、当該サービス識別情報Ｓ１，Ｓ２を含むサービス要求とサービス応答との間で計測可能な評価値（例、レスポンスタイム、スループット、稼働率など）とを関連付けて予め記憶している。このように、ＳＬＡの評価値としては、レスポンスタイム、スループット、稼働率など、さまざまなバリエーションが考えられる。ＳＬＡの評価値は単一のみで設定してもよく、複数設定してもよい。
【００４７】
サービス処理フロー記憶部（モジュール識別情報記憶手段）２２は、予め内容を書込可能で各部２４〜２５から読出可能なメモリであり、どの種類のサービス提供モジュール部ＭＡ〜ＭＤがどの順序で処理することによってサービスを提供するかを記憶する。例えば、サービス処理フロー記憶部２２は、図４に示すように、サービス識別情報Ｓ１，Ｓ２と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール部ＭＡ〜ＭＤを個別に識別するモジュール識別情報とを関連付けて記憶する。
【００４８】
この例では、第１及び第２サービス提供モジュール部ＭＡ，ＭＢにより第１サービスＳ１を提供する。同様に、第３及び第４サービス提供モジュール部ＭＣ，ＭＤにより第２サービスＳ２を提供する。
【００４９】
サービス配置記憶部（配置記憶手段）２３は、予め内容を書込可能で各部２４〜２６から読出／書込可能なメモリであり、どの種類のエージェント部Ａ〜Ｄ及びその複製が、どのノード装置Ｎ１〜Ｎ４に配置されたかを記憶する。例えば、サービス配置記憶部２３は、図５に示すように、各ノード装置Ｎ１〜Ｎ４を識別する各ノード識別情報と、各ノード装置Ｎ１〜Ｎ４に配置されたエージェント部Ａ〜Ｄ，Ａ’を識別するエージェント識別情報と、エージェント部Ａ〜Ｄ，Ａ’に含まれるサービス提供モジュール部ＭＡ〜ＭＤを識別するモジュール識別情報とを関連付けて記憶する。
【００５０】
なお、複製の第１エージェント部Ａ’は、第１エージェント部Ａが多重化された、第１エージェント部Ａと同じ種類のエージェントである。また、サービス配置記憶部２３の記憶内容としては、それぞれのエージェント部Ａ〜Ｄのリソース配分も同時に記憶しておくバリエーションも考えられる。
【００５１】
サービス評価部２４は、ゲートウェイ装置１０とサービス提供モジュール部ＭＡ〜ＭＤの間のサービスの要求と応答を伝達し、ＳＬＡ記憶部２１に設定したＳＬＡの評価値と同じ種類の評価値を計測する。評価値の一例としては、性能の観点から、サービス要求とサービス要求結果の時間からレスポンスタイム（または、スループットなど）を計測する。なお、サービス配置記憶部２３とサービス処理フロー記憶部２２の情報を元に、要求を伝達するエージェント部Ａ〜Ｄを選択する。評価値としては、単一の種類を計測してもよく、複数の種類を計測してもよい。
【００５２】
このようなサービス評価部２４は、具体的には以下の機能(f24-1)〜(f24-2)をもっている。
【００５３】
(f24-1)  ゲートウェイ装置１０からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいてサービス処理フロー記憶部２２からモジュール識別情報を読出した後、このモジュール識別情報に基づいてサービス配置記憶部２３からノード識別情報を読出し、このノード識別情報に基づいて、サービス要求を当該ノード識別情報に識別されるノード装置Ｎ１，Ｎ２，Ｎ３又はＮ４に送信するサービス要求送信機能。
【００５４】
(f24-2)  サービス要求送信機能により送信したサービス要求に対するサービス応答をいずれかのノード装置Ｎ１〜Ｎ４から受けると、当該サービス応答をゲートウェイ装置１０に送信すると共に、当該サービス要求と当該サービス応答との間で評価値を計測する第１の評価値計測機能。
【００５５】
サービスペナルティ計算部２５は、例えば、以下の機能(f25-1)〜(f25-2)をもっている。
【００５６】
(f25-1)  サービス評価部２４により計測された評価値がＳＬＡ記憶部２１内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、当該計測された評価値がＳＬＡ記憶部２１内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算機能。なお、満たしている度合いが「過度」か否かは、計測された評価値とＳＬＡ記憶部２１内の評価値との差分の絶対値が基準値以上か否かにより判定可能である。
【００５７】
(f25-2)  当該計算されたサービスペナルティ値及び当該計測された評価値を、サービス要求の送信先のノード装置Ｎ１，Ｎ２，Ｎ３又はＮ４及びサービス応答の送信元のノード装置Ｎ１，Ｎ２，Ｎ３又はＮ４に送信するペナルティ送信機能。
【００５８】
ここで、サービスペナルティ値とは、サービスがどれくらいＳＬＡを満たしているかを示す情報である。なお、サービスペナルティ値はＳＬＡの評価値ごとに計算してもよく、ＳＬＡの複数の評価値に基づいて１つのサービスペナルティ値を計算してもよい。
【００５９】
サービスペナルティ値の計算方法の一例として、次式の通り、計測されたレスポンスタイムからサービスペナルティ値を計算する場合を説明する。
【００６０】
（サービスペナルティ値）＝（（計測したレスポンスタイム）−（ＳＬＡ記憶部２１内のレスポンスタイム））×（レスポンスタイム重み）
なお、「…重み」は、ユーザが重要視している要求に高い値を設定しておく。また、このようなサービスペナルティ値は、モジュールペナルティ積算部４３１，４３２又は４３３，４３４において、サービスを構成する各サービス提供モジュール部ＭＡ，ＭＢ又はＭＣ，ＭＤにおけるモジュールペナルティ値に分割される。
【００６１】
分割する割合は、以下の（１）又は（２）のように定める。
【００６２】
例えば、モジュールペナルティ積算部４３１は、モジュール評価部４２１により計測されたサービス提供モジュール部ＭＡの処理時間に基づき、（１）又は（２）に示す割合でサービスペナルティ値を分割する。
【００６３】
（１）サービスのレスポンスタイム中のサービス提供モジュール部ＭＡの処理時間の割合
（２）「そのサービス提供モジュール部ＭＡの現在の処理時間と、そのサービス提供モジュール部ＭＡのその前の時点における処理時間との差分」と「現在のレスポンスタイムと、その前の時点におけるレスポンスタイムの差分」の割合。なお、「その前の時点」は「前の周期」と読み替えてもよい。また、第１エージェント部Ａにサービス提供モジュール部ＭＡ，…が複数存在する場合、サービス要求の種類で処理を区別する。
【００６４】
配置更新部２６は、エージェント部Ａ，Ｂ，Ｃ又はＤを削除、移動又は複製するように更新したノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をいずれかのノード装置Ｎ１〜Ｎ４から受けると、当該配置更新情報に基づいてサービス配置記憶部２３を更新する配置更新機能をもっている。
【００６５】
一方、ノード装置Ｎ１〜Ｎ４は仮想マシン（エージェント部Ａ〜Ｄ）を動作させる物理的なコンピュータであり、図２，図６〜図８に示すように、エージェントマネージャ部３０１〜３０４と、図示しないプログラム実行手段とを備えている。このプログラム実行手段は、自ノード装置Ｎ１〜Ｎ４にエージェント手段（エージェント部Ａ〜Ｄ）が配置される場合に用いられ、自ノード装置Ｎ１〜Ｎ４を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なＣＰＵを含んでいる。
【００６６】
ここで、ノード装置Ｎ１〜Ｎ４内のエージェントマネージャ装置３０１〜３０４は、互いに同一構成であるので、ここでは第１ノード装置Ｎ１内の第１エージェントマネージャ部３０１を例に挙げて説明する。
【００６７】
第１エージェントマネージャ部３０１は、第１ノード装置Ｎ１内に配置された全てのエージェント部Ａ，…を管理するものであり、例えば、エージェント部Ａ，…のリソース配分の管理や、エージェント部Ａ，…の配置の管理を行なう。リソース配分の管理としては、エージェント部Ａ，…のリソース配分の記憶と、エージェント部Ａ，…のリソース配分の変更をする。エージェント部Ａ，…の配置の管理としては、別のノード装置Ｎ２，…にリソース配分を問合せ、その問合せ結果に基づくエージェント部Ａ，…の移動、複製を行なう。また、エージェント部Ａ，…が不要になった場合の削除も行なう。
【００６８】
具体的には、エージェントマネージャ部３０１は、リソース配分記憶部３１１、リソース配分部３２１、別ノード問合せ部３３１及びエージェント再配置部３４１を備えている。
【００６９】
リソース配分記憶部３１１は、各部３２１〜３４１，４４１から読出／書込可能なメモリであり、自ノード装置Ｎ１に配置されたエージェント部Ａ，…を識別するエージェント識別情報と、自ノード装置Ｎ１のリソースの配分を示すリソース配分とを関連付けて記憶する。例えば、第３ノード装置Ｎ３のリソース配分記憶部３１３は、図９に示すように、自ノード装置Ｎ３に配置された第１及び第３エージェント部Ａ’，Ｃを識別するエージェント識別情報と、自ノード装置Ｎ３のリソースの配分を示すリソース配分４０％，２０％とを関連付けて記憶している。補足すると、本実施形態では、各エージェント部Ａ，…の単位でリソース配分やシステム構成を変化させる。ここでいうリソース配分とは、そのエージェント部Ａ，…が使用できるプロセッサ、ハードディスク（補助記憶装置）、主記憶装置、ネットワークなどの計算機資源の割当を意味する。
【００７０】
リソース配分部３２１は、リソース配分を変化させ、リソース配分をリソース配分記憶部３１１に記録する。また、エージェント部Ａ，…の削除又は移動に伴ってエージェント識別情報及びリソース配分を削除した後には、当該削除後のリソース配分記憶部３１１のエージェント識別情報を含むメッセージをエージェント再配置部３４１に送る。
【００７１】
例えばリソース配分部３２１は、以下の機能(f32-1)〜(f32-3)をもっている。
【００７２】
(f32-1)  自ノード装置Ｎ１に配置されたエージェント部Ａ，…から当該エージェント部Ａ，…を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいてリソース配分記憶部３１１内のリソース配分を更新するリソース配分更新機能。
【００７３】
(f32-2)  自ノード装置Ｎ１に配置されたエージェント部Ａ，…から当該エージェント部Ａ，…を識別するエージェント識別情報を指定して当該エージェントＡ，…を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいてリソース配分記憶部３１１内の当該エージェント識別情報及びリソース配分を削除する第１のリソース配分削除機能。
【００７４】
(f32-3)  自ノード装置Ｎ１に配置されたエージェント部Ａ，…から当該エージェント部Ａ，…を識別するエージェント識別情報と移動先のノード装置Ｎ２，…を示すノード識別情報とを指定して当該エージェント部Ａ，…を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいてリソース配分記憶部３１１内の当該エージェント識別情報及びリソース配分を削除する第２のリソース配分削除機能。
【００７５】
別ノード問合せ部３３１は、他のノード装置Ｎ２〜Ｎ４にブロードキャスト又はマルチキャストによって別ノード装置Ｎ２〜Ｎ４のリソース配分を問い合わせる。問合せ結果は、エージェント再配置のあて先などを決定するための元とする情報とする。なお、サービス配置記憶部２３にリソース配分の情報を持たせる場合は、別ノード問合せ部３３１は、配置更新部２６にリソース配分を問合せる。
【００７６】
具体的には、別ノード問合せ部３３１は、自ノード装置Ｎ１に配置されたエージェント部Ａ，…から、自ノード装置Ｎ１以外の別ノード装置Ｎ２，Ｎ３，Ｎ４のリソース配分を問合せる問合せメッセージを受けると、別ノード装置Ｎ２，Ｎ３，Ｎ４のリソース配分記憶部３１２，３１３，３１４の記憶内容を別ノード装置Ｎ２，Ｎ３，Ｎ４に問合せると共に、別ノード装置Ｎ２，Ｎ３，Ｎ４から応答された当該記憶内容を当該エージェント部Ａ，…に応答する別ノード問合せ機能をもっている。
【００７７】
エージェント再配置部３４１は、エージェント意思決定部４４１からのメッセージを受け取り、内容に応じて、エージェント部Ａが現在存在するノード装置Ｎ１から他のノード装置Ｎ２〜Ｎ４への移動、複製、もしくは削除を行なう。エージェント部Ａの移動または、複製を行なう場合は別ノード問合せ部３３１から、別ノード装置Ｎ２〜Ｎ４へのリソース配分を問い合わせて、そのノード装置Ｎ２〜Ｎ４にエージェント部Ａを配置可能かどうか調べる。その結果を踏まえて、どのノード装置Ｎ２〜Ｎ４にエージェント部Ａの移動または複製を行なうべきかを決定する。
【００７８】
エージェント部Ａの削除を行なう場合、エージェント再配置部３４１は、別ノード装置Ｎ２，Ｎ３，Ｎ４のリソース配分記憶部３１２，３１３，３１４の記憶内容を確認し、他に同じサービス提供モジュール部ＭＡを含む複製のエージェント部Ａ’が存在するかを確認する。もし他に同じサービス提供モジュール部ＭＡを含む複製のエージェント部Ａ’が存在しない場合は、エージェント部Ａを削除しない。理由は、サービス提供システムがサービスを提供するためには、各サービス提供モジュール部ＭＡ，ＭＢ，ＭＣ，ＭＤが少なくとも１つずつ必要なためである。
【００７９】
エージェント部Ａの移動、複製、削除を行う場合、エージェント再配置部３４１は、配置更新部２６を介してサービス配置記憶部２３の情報を修正する。また、エージェント部Ａ〜Ｄの配置の変更に合わせて、変更されたエージェント部Ａ〜Ｄ内のサービス提供モジュール部ＭＡ〜ＭＤへのサービス要求のあて先の設定と、そのサービス提供モジュール部ＭＡ〜ＭＤに対してサービス要求を送るサービス提供モジュール部ＭＡ〜ＭＤのサービス要求のあて先の設定を修正する。
【００８０】
具体的には、エージェント再配置部３４１は、以下の機能(f34-1)〜(f34-2)をもっている。
【００８１】
(f34-1)  エージェント意思決定部４４１からエージェント削除メッセージを受けると、リソース配分部３２１により削除された後の自ノード装置Ｎ１に関するノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をサービスマネージャ装置２０に送信し、当該エージェント部Ａ，…のエージェントプログラムをメモリから削除するプログラム削除機能。
【００８２】
(f34-2)  エージェント意思決定部４４１からエージェント移動メッセージを受けると、リソース配分部３２１により削除された後の自ノード装置Ｎ１に関するノード識別情報、エージェント識別情報及びモジュール識別情報と、移動先のノード装置Ｎ２，Ｎ３又はＮ４に関するノード識別情報、エージェント識別情報及びモジュール識別情報との両者を含む配置更新情報をサービスマネージャ装置２０に送信し、当該エージェント部Ａ，…のエージェントプログラムを移動先のノード装置Ｎ２，Ｎ３又はＮ４に送信すると共に、当該エージェントプログラムをメモリから削除するプログラム移動機能。
【００８３】
一方、エージェント部Ａ〜Ｄは、物理的なコンピュータの上で動作する仮想マシンである。なお、エージェント部Ａ〜Ｄは、サービスを提供するための部品となるサービス提供モジュール部ＭＡ〜ＭＤを個別に含んでいる。複数のエージェント部Ａ，Ｂ又はＣ，Ｄが１つのサービスＳ１又はＳ２を連携して処理する。エージェント部Ａ，Ｂ，Ｃ，Ｄは、任意のノード装置Ｎ１〜Ｎ４に移動させることができ、可用性を向上させる多重化のために同じ種類のエージェント部Ａ，Ｂ，Ｃ，Ｄを複数配置させることもできる。
【００８４】
この例では、第１エージェント部Ａ、複製の第１エージェント部Ａ’及び第２エージェント部Ｂにより第１サービスＳ１を提供し、第３エージェント部Ｃ及び第４エージェント部Ｄにより第２サービスＳ２を提供する。なお、複製の第１エージェント部Ａ’は第１エージェント部Ａを多重化した、第１エージェント部Ａと同じ種類のエージェントである。
【００８５】
エージェント部Ａ〜Ｄは、ノード装置Ｎ１〜Ｎ４の間で移動、複製が行なわれ、必要が無くなると削除される。
【００８６】
なお、各エージェント部Ａ〜Ｄは、サービス提供モジュール部ＭＡ〜ＭＤによるサービス処理内容を除き、互いに同一の機能構成であるので、ここでは、第１エージェント部Ａを例に挙げて詳細に説明する。
【００８７】
第１エージェント部Ａは、サービス提供モジュール部ＭＡ、ペナルティ上下限値記憶部４１１、モジュール評価部４２１、モジュールペナルティ積算部４３１及びエージェント意思決定部４４１を備えている。
【００８８】
サービス提供モジュール部ＭＡは、サービスの提供を行なうための部品の１つであり、サービス識別情報により識別されるサービスの各段階を個別に実行するものであって、他のサービス提供モジュール部ＭＢと連携して、サービスを提供する。補足すると、サービス提供システムが提供するサービスは、一般的なＷｅｂシステムで用いられるＷｅｂサーバ、アプリケーションサーバ及びデータベースサーバの三層構造のようなサービス提供モジュールのように、複数のサービス提供モジュールが連携して処理することを想定している。
【００８９】
ペナルティ上下限値記憶部４１１は、同じエージェント部Ａ内のサービス提供モジュール部ＭＡに対するペナルティ積算値の上限値と下限値を記憶する。具体的には、ペナルティ上下限値記憶部４１１は、図１０の下から４行目に示すように、サービス識別情報と、モジュール識別情報と、サービスペナルティ値をサービス提供モジュール部ＭＡに割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する。なお、図１０の下から１行目〜３行目に示すデータは、ノード装置Ｎ１には配置されていないエージェント部Ｂ〜Ｄに関するデータであるが、参考のために記載した。
【００９０】
モジュール評価部４２１は、提供するサービスの中で、例えば第１エージェント部Ａにある第１サービス提供モジュール部ＭＡがどれくらいペナルティを請け負うべきかを決定するために第１サービス提供モジュール部ＭＡの評価をする。具体的には、モジュール評価部４２１は、この第１サービス提供モジュール部ＭＡに対して、前述した評価値を計測する第２の評価値計測機能をもっている。
【００９１】
モジュールペナルティ積算部４３１は、モジュール評価部４２１で計測された評価値と、サービスマネージャ装置２０から受けたサービスペナルティ値及び評価値とに基づいて、モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の積算値を計算する機能をもっている。なお、モジュールペナルティ値の計算は、前述した通り、例えば、モジュール評価部４２１により計測された第１サービス提供モジュール部ＭＡの処理時間に基づく割合でサービスペナルティ値を分割することにより行う。また、積算値の計算は、モジュールペナルティ値を一定時間の間積算することにより行う。また、モジュールペナルティ値の積算値は一定時間ごとにリセットされる。なお、モジュールペナルティ値とは、エージェントのリソース配分を変更するか、移動、複製、削除するかを決定するための判断材料とする情報である。
【００９２】
また、モジュールペナルティ積算部４３１は、計算した積算値と、ペナルティ上下限値記憶部４１１内の上限値及び下限値とを比較し、比較結果を示すメッセージをエージェント意思決定部４４１に送出する機能をもっている。
【００９３】
エージェント意思決定部４４１は、モジュールペナルティ積算部４３１からのメッセージに応じて、リソース配分記憶部３１１と別ノード問合せ部３３１から情報を得て、エージェント部Ａ，…のリソース配分を変更するか、エージェント部Ａ，…を再配置するかを決定し、リソース配分記憶部３１１やサービス配置記憶部２３を更新して、リソース配分部３１１にリソース配分の変更を行なうようにメッセージを送るか、もしくはエージェント再配置部３４１にエージェント部Ａ，…の移動、複製、削除を行なうようにメッセージを送る。ここでいうエージェント部Ａ，…の再配置とは、エージェント部Ａ，…の移動、複製、削除のことである。
【００９４】
具体的には、エージェント意思決定部４４１は、以下の機能(f44-1)〜(f44-5)をもっている。
【００９５】
(f44-1)  モジュールペナルティ積算部４３１による比較の結果、積算値が上限値より大きいとき、当該エージェント部Ａ，…が配置された自ノード装置Ｎ１内のリソース配分記憶部３１１を参照し、当該エージェント部Ａ，…を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定機能。
【００９６】
(f44-2)  この判定の結果、増加可能な場合にはリソース配分を増加させるように更新するリソース配分更新メッセージをリソース配分部３２１に送出する機能。
【００９７】
(f44-3)  リソース増加判定機能による判定の結果、否の場合には問合せメッセージを別ノード問合せ部３３１に送出し、当該別ノード問合せ部３３１から応答された記憶内容に基づいてエージェント移動メッセージをリソース配分部３２１及びエージェント再配置部３４１に送出する移動メッセージ送出機能。
【００９８】
(f44-4)  モジュールペナルティ積算部４３１による比較の結果、積算値が下限値より小さいとき、当該エージェント部Ａ，…が配置された自ノード装置Ｎ１内のリソース配分記憶部３１１を参照し、当該エージェント部Ａ，…を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定機能。
【００９９】
(f44-5)  この判定の結果、減少可能な場合にはリソース配分を減少させるように更新するリソース配分更新メッセージをリソース配分部３２１に送出する機能。
【０１００】
(f44-6)  リソース減少判定機能による判定の結果、否の場合には問合せメッセージを別ノード問合せ部３３１に送出し、当該別ノード問合せ部３３１から応答された記憶内容に基づいてエージェント削除メッセージをリソース配分部３２１及びエージェント再配置部３４１に送出する削除メッセージ送出機能。
【０１０１】
次に、以上のように構成されたサービス提供システムの動作を図１１及び図１２のフローチャートを用いて説明する。
【０１０２】
図１１はサービス提供システムの全体動作を説明するためのフローチャートである。図示するように、業務要件を分析し、ＳＬＡ記憶部２１、サービス処理フロー記憶部２２、サービス配置記憶部２３、リソース配分記憶部３１１〜３１４及びペナルティ上下限値記憶部４１１〜４１４の初期値を設定する（ＳＴ１００）。
【０１０３】
ここで、リソース配分記憶部３１１〜３１４の初期値は、ノード装置Ｎ１〜Ｎ４の各々が提供可能なリソース配分を、各ノード装置Ｎ１〜Ｎ４におけるリソース配分の初期値の合計が上回らなければ、任意で良い。
【０１０４】
次に、サービスの業務要件に見合った量の利用を行なう試験的運用を行い、サービスの業務要件に見合ったシステム構成とリソース配分の再構成を行なう（ＳＴ２００）。
【０１０５】
しかる後、再構成されたサービス提供システムを本番運用する（ＳＴ３００）。運用中にＳＬＡが変化した場合、ＳＬＡ記憶部２１の設定とペナルティ上下限値記憶部４１１〜４１４の上限値及び下限値を再設定して、サービスの業務要件に見合ったシステムに再構成する。
【０１０６】
図１２はサービス提供システムの全体動作のうち、ステップＳＴ２００又はＳＴ３００におけるシステム構成とリソース配分の再構成を行なう動作を詳細に説明するためのフローチャートである。すなわち、ステップＳＴ番号の２００番台を３００番台に読み替えてもよい。また、ノード装置Ｎ１〜Ｎ４内の各部の下付添字１，２等は、各部が属するノード装置Ｎ１〜Ｎ４を表している。このため、下付添字１，２等をもつ各部は、ノード装置Ｎ１，Ｎ２等の中でそれぞれ並列に処理を実行している。
【０１０７】
ステップＳＴ２０１においては、図示しないユーザ端末から第１サービスＳ１を識別するサービス識別情報を含むサービス要求をゲートウェイ装置１０が受信すると、ゲートウェイ装置１０からサービスマネージャ装置２０にサービス要求が送信される。
【０１０８】
サービスマネージャ装置２０においては、サービス評価部２４がサービス処理フロー記憶部２２からサービスの処理を行なう第１及び第２サービス提供モジュール部ＭＡ，ＭＢを確認し、サービス配置記憶部２３から、要求されたサービスの処理を行なう第１及び第２サービス提供モジュール部ＭＡ，ＭＢの配置された各ノード装置Ｎ１〜Ｎ３を確認する。ここで確認した情報を元に、サービス評価部２４は、第１サービス提供モジュール部ＭＡを含む第１又は第３ノード装置Ｎ１又はＮ３にサービス要求を送信する。
【０１０９】
いずれかのノード装置Ｎ１又はＮ３の第１エージェント部Ａ内の第１サービス提供モジュール部ＭＡ内で処理が行なわれ、第２ノード装置Ｎ２内の第２エージェント部Ｂにサービス要求を送信する。第２エージェント部Ｂの第２サービス提供モジュール部ＭＢはサービス要求に対するサービス応答を第１エージェント部Ａに返信する。第１エージェント部Ａの第１サービス提供モジュール部ＭＡはこのサービス応答をサービスマネージャ装置２０内のサービス評価部２４に返信する。
【０１１０】
これらサービス要求の送信からサービス応答の受信までの処理において、サービス評価部２４がサービスの評価値を計測する一方、各エージェント部Ａ，Ｂ内のモジュール評価部４２１，４２２が各サービス提供モジュール部ＭＡ，ＭＢの評価値を計測する。
【０１１１】
サービス評価部２４の評価方法は任意であるが、例えばレスポンスタイムを評価する。
【０１１２】
サービス提供モジュール部ＭＡ，ＭＢの評価方法は任意であるが、例えばレスポンスタイムの割合を求める。例えば、評価対象のサービス提供モジュール部ＭＡが、サービスマネージャ装置２０からサービス要求を受けてから連携する他のサービス提供モジュール部ＭＢにサービス要求を送信するまでの処理時間と、連携する他のサービス提供モジュール部ＭＢからのサービス応答を受信してからサービス応答をサービスマネージャ装置２０に返すまでの処理時間とを合計した処理時間のうち、サービス提供モジュール部ＭＡの処理時間が占める割合を評価する。
【０１１３】
ステップＳＴ２０２においては、サービスペナルティ計算部２５は、サービス評価部２４により計測された評価値と、ＳＬＡ記憶部２１の評価値とに基づいて、サービスペナルティ値を計算する。
【０１１４】
サービスペナルティ値の計算方法は任意であるが、この例では、サービス評価部２４により計測された評価値がＳＬＡ記憶部２１内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、当該計測された評価値がＳＬＡ記憶部２１内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算する。
【０１１５】
ステップＳＴ２０３においては、サービスペナルティ計算部２５は、計算されたサービスペナルティ値及び当該計測された評価値を、サービス要求の送信先のノード装置Ｎ１及びサービス応答の送信元のノード装置Ｎ２に送信する。
【０１１６】
モジュールペナルティ積算部４３１，４３２は、モジュール評価部４２１，４２２で計測された評価値と、サービスマネージャ装置２０から受けたサービスペナルティ値及び評価値とに基づいて、モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の積算値を計算する。
【０１１７】
ステップＳＴ２０４以降のフローでは、さまざまなバリエーションが考えられるが、以下はＳＬＡ記憶部２１内の評価値をレスポンスタイムとしたときの一例である。
【０１１８】
ステップＳＴ２０４においては、モジュールペナルティ積算部４３１，４３２は、計算した積算値と、ペナルティ上下限値記憶部４１１，４１２内の上限値とを比較し、比較結果を示すメッセージをエージェント意思決定部４４１，４４２に送出する。これにより、エージェント部Ａ，Ｂのリソース配分の変更、エージェント部Ａ，Ｂの移動、複製、削除を行なう。
【０１１９】
ステップＳＴ２０５においては、エージェント意思決定部４４１，４４２は、モジュールペナルティ積算部４３１，４３２による比較の結果、積算値が上限値より大きいとき、リソース配分記憶部３１１，３１２を参照し、リソース配分が増加可能か否かを判定する。この判定は、例えば、自ノード装置Ｎ１が提供可能なリソース配分に比べ、リソース配分記憶部３１１内のリソース配分の合計が余裕分（例、１０％分）よりも低ければ増加可能とすればよい。
【０１２０】
ステップＳＴ２０６においては、エージェント意思決定部４４１，４４２は、ステップＳＴ２０６の判定の結果、増加可能な場合にはリソース配分を増加させるように更新するリソース配分更新メッセージをリソース配分部３２１，３２２に送出する。
【０１２１】
リソース配分部３２１，３２２は、自ノード装置Ｎ１，Ｎ２に配置されたエージェント部Ａ，Ｂから当該エージェント部Ａ，Ｂを識別するエージェント識別情報に関連付けたリソース配分を増加させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいてリソース配分記憶部３１１，３１２内のリソース配分を更新する。
【０１２２】
ステップＳＴ２０７においては、エージェント意思決定部４４１，４４２は、ステップＳＴ２０６による判定の結果、増加が否の場合には問合せメッセージを別ノード問合せ部３３１，３３２に送出し、当該別ノード問合せ部３３１，３３２から応答された記憶内容に基づいて、別ノードのリソース配分を確認して移動先のノード装置Ｎ４を決定する。
【０１２３】
このとき、エージェント意思決定部４４１，４４２は、例えば、別ノード問合せ部３３１，３３２から応答された別ノード装置Ｎ２〜Ｎ４、Ｎ１とＮ３〜Ｎ４のリソース配分記憶部３１２〜３１４、３１１と３１３〜３１４の記憶内容のうち、移動対象のエージェント部Ａ，Ｂが必要とするリソース配分以上の空きリソース配分であって、当該必要とするリソース配分に最も近い空きリソース配分を示す記憶内容をもつ別ノード装置Ｎ４を移動先のノード装置Ｎ４として選択する。これは、可能な限り大きな空きリソースを残しておき、他のエージェント部の移動又は複製ができる可能性を高めるためである。なお、移動後のノード装置Ｎ１，…に１つのエージェント部Ａ，…も存在しなくなった場合には、省電力のために自動的に電源を落とす。
【０１２４】
また、エージェント意思決定部４４１，４４２は、この移動を検討するとき、サービス提供モジュール部ＭＡ，ＭＢの細分化をしすぎてしまっている場合には、細分化したサービス提供モジュール部ＭＡ，ＭＢのリソース配分をまとめて、統合した上で移動を行なえるかを判定する。
【０１２５】
もし、必要とする配分リソースに見合う空きリソースが一つのノード装置Ｎ２〜Ｎ４、Ｎ１とＮ３〜Ｎ４になく移動ができない場合は、エージェント意思決定部４４１，４４２は、複製を行なう。この場合、必要とするリソース配分に足りない分だけのリソースを複製先のエージェント部Ａ，Ｂに配分することとし、複製先のエージェント部Ａ，Ｂが必要とするリソース配分以上の（ノード装置内のエージェント部の全てが安定して動作するのに十分な余力を残して）できるだけ近い空きリソース量のノード装置を複製先ノード装置として選択する。なお、移動又は複製ができるノード装置がない場合、エージェント意思決定部４４１，４４２は、電源が落ちているノード装置（エージェント部がなく、空きリソース量が多いノード装置）を起動し、そのノード装置に移動をするようにすればよい。
【０１２６】
しかしながら、この例では、前述した通り、別ノード装置Ｎ４を選択したので、エージェント意思決定部４４１，４４２は、当該移動対象のエージェント部Ａ，Ｂを識別するエージェント識別情報と当該選択したノード装置Ｎ４を示すノード識別情報とを指定したエージェント移動メッセージを作成し、このエージェント移動メッセージをリソース配分部３２１，３２２及びエージェント再配置部３４１，３４２に送出する。
【０１２７】
リソース配分部３２１，３２２は、自ノード装置Ｎ１に配置されたエージェント部Ａ，Ｂから当該エージェント部Ａ，Ｂを識別するエージェント識別情報と移動先のノード装置Ｎ４を示すノード識別情報とを指定して当該エージェント部Ａ，Ｂを移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいてリソース配分記憶部３１１，３１２内の当該エージェント識別情報及びリソース配分を削除する。
【０１２８】
エージェント再配置部３４１，３４２は、エージェント意思決定部４４１からエージェント移動メッセージを受けると、リソース配分部３２１，３２２により削除された後の自ノード装置Ｎ１，Ｎ２に関するノード識別情報、エージェント識別情報及びモジュール識別情報と、移動先のノード装置Ｎ４に関するノード識別情報、エージェント識別情報及びモジュール識別情報との両者を含む配置更新情報をサービスマネージャ装置２０に送信し、当該エージェント部Ａ，Ｂのエージェントプログラムを移動先のノード装置Ｎ４に送信すると共に、当該エージェントプログラムをメモリから削除する。
【０１２９】
サービスマネージャ装置２０においては、配置更新部２６が、エージェント部Ａ，Ｂを移動するように更新したノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をノード装置Ｎ１，Ｎ２から受けると、当該配置更新情報に基づいてサービス配置記憶部２３を更新する。
【０１３０】
ステップＳＴ２０８においては、ステップＳＴ２０４での比較の結果、積算値が上限値以下のとき、モジュールペナルティ積算部４３１，４３２は、計算した積算値と、ペナルティ上下限値記憶部４１１，４１２内の下限値とを比較し、比較結果を示すメッセージをエージェント意思決定部４４１，４４２に送出する。
【０１３１】
ステップＳＴ２０９においては、エージェント意思決定部４４１，４４２は、モジュールペナルティ積算部４３１，４３２による比較の結果、積算値が下限値より過度に小さいとき、リソース配分記憶部３１１，３１２を参照し、リソース配分が減少可能か否かを判定する。
【０１３２】
ステップＳＴ２１０においては、エージェント意思決定部４４１，４４２は、ステップＳＴ２０９の判定の結果、減少可能な場合にはリソース配分を減少させるように更新するリソース配分更新メッセージをリソース配分部３２１，３２２に送出する。
【０１３３】
リソース配分部３２１，３２２は、自ノード装置Ｎ１，Ｎ２に配置されたエージェント部Ａ，Ｂから当該エージェント部Ａ，Ｂを識別するエージェント識別情報に関連付けたリソース配分を減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいてリソース配分記憶部３１１，３１２内のリソース配分を更新する。
【０１３４】
ステップＳＴ２１１においては、エージェント意思決定部４４１，４４２は、ステップＳＴ２０９による判定の結果、減少が否の場合には問合せメッセージを別ノード問合せ部３３１，３３２に送出し、当該別ノード問合せ部３３１，３３２から応答された記憶内容に基づいて、別ノード装置Ｎ２〜Ｎ４，Ｎ１とＮ３〜Ｎ４に複製のエージェント部Ａ，Ｂが存在するならば、エージェント削除メッセージをリソース配分部３２１，３２２及びエージェント再配置部３４１，３４２に送出する。
【０１３５】
この例では、第１エージェント部Ａの複製のエージェント部Ａ’が第３ノード装置Ｎ３に存在する。よって、エージェント意思決定部４４１は、エージェント削除メッセージをリソース配分部３２１及びエージェント再配置部３４１に送出する。
【０１３６】
リソース配分部３２１は、エージェント意思決定部４４１からエージェント部Ａを識別するエージェント識別情報を指定して当該エージェントＡを削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいてリソース配分記憶部３１１内の当該エージェント識別情報及びリソース配分を削除する。
【０１３７】
エージェント再配置部３４１は、エージェント意思決定部４４１から当該エージェント削除メッセージを受けると、リソース配分部３２１により削除された後の自ノード装置Ｎ１に関するノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をサービスマネージャ装置２０に送信し、当該エージェント部Ａ，…のエージェントプログラムをメモリから削除する。
【０１３８】
サービスマネージャ装置２０においては、配置更新部２６が、エージェント部Ａを削除するように更新したノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をノード装置Ｎ１から受けると、当該配置更新情報に基づいてサービス配置記憶部２３を更新する。
【０１３９】
次に、エージェント意思決定部４４１，４４２は、ステップＳＴ２０８で、ペナルティ積算したモジュールペナルティが下限値より大きい場合と、ステップＳＴ２０６，ＳＴ２０７，ＳＴ２１０，ＳＴ２１１の後には、ある一定時間が経過しているかどうかを確認する。一定時間が経っている場合はモジュールペナルティ値の積算値をクリア（ＳＴ２１２）し、ステップＳＴ２０１に戻る。一定時間が経っていない場合は、そのままステップＳＴ２０１に戻る。
【０１４０】
上述したように本実施形態によれば、サービス要求の送信からサービス応答の受信までの処理において、サービス評価部２４により計測された評価値と、ＳＬＡ記憶部２１の評価値とに基づいて、サービスペナルティ値を計算し、モジュール評価部４２１，４２２で計測された評価値と、サービスマネージャ装置２０から受けたサービスペナルティ値及び評価値とに基づいて、モジュールペナルティ値及びその積算値を計算し、計算した積算値と、ペナルティ上下限値記憶部４１１，４１２内の上限値及び下限値とを比較し、比較結果に応じてリソース配分を増加若しくは変更し、又はエージェント部Ａ，…を削除、移動若しくは複製する構成により、サービス毎に異なる要求や、同一サービスの利用量の変化に対し、システム構成やリソース配分を設計する労力を低減させることができる。
【０１４１】
補足すると、本実施形態によれば、新しいサービスに対してもシステム構成やリソース配分の設計をすることなく、そのサービスに要求されるＳＬＡの評価値を設定するだけで、各エージェント部Ａ〜Ｄが自律的にリソース配分を増加若しくは変更するか、又はエージェント部Ａ，…を削除、移動若しくは複製するかを判断する構成により、ＳＬＡの評価値を満たすシステム構成やリソース配分を自律的に設計し、システムを自律的に構成する。
【０１４２】
また時とともに変化するサービスの利用量に対しては、各エージェント部Ａ〜Ｄが自律的にＳＬＡの評価値を満たしているかを評価し、満たしていない場合は、システム構成やリソース配分を自律的に再設計し、システム構成やリソース配分を自律的に変化させる。
【０１４３】
これらによって、新しいサービスのためのサービスに特化したシステムの設計・構築の手間を無くし、さらには、サービスの要求の変化に応じた再設計・再構成の手間無く、計算機資源を効率的に使用することができる。このような本実施形態は、例えばクラウドコンピューティングにおけるプライベートクラウド又はパブリッククラウドのシステムを構成する場合に適用することもできる。
【０１４４】
また、本実施形態は、各エージェント部Ａ〜Ｄが自律的にリソース配分を増加若しくは変更するか、又はエージェント部Ａ，…を削除、移動若しくは複製するかを判断する構成により、例えば特許文献３に記載のマスターエージェントのような特定の機能部への負荷の集中といった事態を防ぐことができる。
【０１４５】
また、本実施形態は、以下の（ｉ）〜（ｉｉｉ）等に示すように変形してもよい。
【０１４６】
（ｉ）移動又は複製のいずれを行なうかの選択方法には、さまざまなバリエーションが考えられ、ＳＬＡの評価値によっても異なる。ＳＬＡの評価値の種類（ＳＬＡの指標）がレスポンスタイムの場合、例えば、モジュールペナルティ値の積算値が上限値を上回った場合には移動を優先的に行ない、移動しきれない大きさのリソース配分（例、４０％）が必要な場合のみ、複製を行なう（例、２０％ずつ２つのエージェント部Ａ，Ａ’とする）。
【０１４７】
（ｉｉ）ＳＬＡの評価値の種類が稼働率の場合、ステップＳＴ２０４〜ＳＴ２１０において、モジュールペナルティ値の積算値がある一定時間内に上限値を上回った場合、多重化をして可用性を上げるために、そのエージェント部Ａ，…の複製をするエージェント複製メッセージをエージェント再配置部３４１に送って、エージェント部Ａ，…を複製する。モジュールペナルティ値の積算値がある一定時間内に下限値を下回った場合、そのエージェント部Ａ，…を削除するモジュール削除メッセージをエージェント再配置部３４１に送り、多重化されたエージェント部Ａ，…を削除する。
【０１４８】
（ｉｉｉ）可用性の観点からＳＬＡの評価値であるレスポンスタイムを年間停止時間などに置き換え、同様のアプローチを行なう。但し、可用性を満たす複製の最低数を記憶しておき、エージェント部Ａ，…の削除の際には、サービスを構成するサービス提供モジュール部ＭＡ，…がこの最低数以下にならないようにする。
【０１４９】
なお、上記の各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０１５０】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０１５１】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【０１５２】
さらに、各実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０１５３】
また、記憶媒体は１つに限らず、複数の媒体から上記の各実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０１５４】
なお、各実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記の各実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０１５５】
また、各実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０１５６】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１５７】
１０…ゲートウェイ装置、２０…サービスマネージャ装置、２１…ＳＬＡ記憶部、２２…サービス処理フロー記憶部、２３…サービス配置記憶部、２４…サービス評価部、２５…サービスペナルティ計算部、２６…配置更新部、３０１〜３０４…エージェントマネージャ部、３１１〜３１４…リソース配分記憶部、３２１〜３２４…リソース配分部、３３１〜３３４…別ノード問合せ部、３４１〜３４４…エージェント再配置部、４１１〜４１４…ペナルティ上下限値記憶部、４２１〜４２４…モジュール評価部、４３１〜４３４…モジュールペナルティ積算部、４４１〜４４４…エージェント意思決定部、Ｎ１〜Ｎ４…ノード装置、Ａ〜Ｄ…エージェント部、ＭＡ〜ＭＤ…サービス提供モジュール部。
【図１】
0005414663.tif 000002
【図２】
0005414663.tif 000003
【図３】
0005414663.tif 000004
【図４】
0005414663.tif 000005
【図５】
0005414663.tif 000006
【図６】
0005414663.tif 000007
【図７】
0005414663.tif 000008
【図８】
0005414663.tif 000009
【図９】
0005414663.tif 000010
【図１０】
0005414663.tif 000011
【図１１】
0005414663.tif 000012
【図１２】
0005414663.tif 000013