(57)【要約】【課題】オブジェクトサーバはリストに基づき次のオブジェクトサーバにリクエスト転送が可能かを問い合わせるので、負荷分散に時間がかかる。オブジェクトサーバの全てがリクエスト受け入れを拒否した場合、リクエストの受け入れ先を決定する方法がない。レプリカを保持しているオブジェクトサーバの変更があった場合、レプリカを保持している全てのオブジェクトサーバのリストを別々に更新しなければならない。【解決手段】本発明の負荷分散アクセスシステムは、オブジェクトマッピング情報管理手段と、負荷値評価手段と、負荷値比較手段とを備え、クライアントがリクエストをオブジェクトサーバに送信する際に、レプリカを保持しているすべてのオブジェクトサーバの位置情報をリクエストに格納し、オブジェクトサーバがリクエストを転送する場合は負荷値をリクエストに格納して他のオブジェクトサーバに転送する。【選択図】図１
2010152783.tif 000002
【特許請求の範囲】
【請求項１】
負荷値を算出する負荷評価手段と、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、
を備えたことを特徴とするオブジェクト保持装置。
【請求項２】
位置情報を提供する位置情報提供手段
をさらに備えることを特徴とする請求項１に記載のオブジェクト保持装置。
【請求項３】
負荷値からオブジェクト読み出し時間を算出する負荷評価手段と、
前記オブジェクト読み出し時間とデッドライン時間とを比較し、該比較結果に基づいてリクエストを受入れるか否かを判断し、受入れない場合は前記リクエストの中でまだリクエストを受信していないオブジェクト保持装置にリクエストを転送し、受入れ不可能な前記リクエストと判断した場合、前記リクエストを破棄してクライアント装置に該破棄したことを通知する負荷値比較手段と、
を備えたことを特徴とするオブジェクト保持装置。
【請求項４】
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、
前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報をリクエストに格納して送信するクライアントアプリケーション実行手段と、
を備えたことを特徴とするクライアント装置。
【請求項５】
要求オブジェクトのデッドライン時間を算出するデッドライン時間算出手段
をさらに備えたことを特徴とする請求項４に記載のクライアント装置。
【請求項６】
位置情報を提供する位置情報提供手段
をさらに備えたことを特徴とする請求項４のクライアント装置。
【請求項７】
オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムであって、
前記オブジェクト保持装置が、
負荷値を算出する負荷評価手段と、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、を備え、
前記クライアント装置が、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、
前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段と、
を備えたことを特徴とする負荷分散アクセスシステム。
【請求項８】
オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムであって、
前記オブジェクト保持装置が、
負荷値からオブジェクト読み出し時間を算出する負荷評価手段と、
前記オブジェクト読み出し時間とデッドライン時間とを比較し、該比較結果に基づいてリクエストを受入れるか否かを判断し、受入れない場合は前記リクエストの中でまだリクエストを受信していないオブジェクト保持装置にリクエストを転送し、受入れ不可能な前記リクエストと判断した場合、前記リクエストを破棄してクライアント装置に該破棄したことを通知する負荷値比較手段と、を備え、
前記クライアント装置が、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、
前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段と、
要求オブジェクトのデッドライン時間を算出するデッドライン時間算出手段と、
を備えたことを特徴とする負荷分散アクセスシステム。
【請求項９】
オブジェクト保持装置とクライアント装置とメタデータ保持装置とを備えた負荷分散アクセスシステムであって、
前記オブジェクト保持装置が、
負荷値を算出する負荷評価手段と、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、を備え、
前記メタデータ保持装置が、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置の対応情報を保持するオブジェクトマッピング情報保持手段を備え、
前記クライアント装置が、
前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段を備えた
ことを特徴とする負荷分散アクセスシステム。
【請求項１０】
オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムであって、
前記オブジェクト保持装置が、
負荷値を算出する負荷評価手段と、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、
位置情報を提供する位置情報提供手段と、を備え、
前記クライアント装置が、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、
前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段と、
位置情報を提供する位置情報提供手段と、
を備えたことを特徴とする負荷分散アクセスシステム。
【請求項１１】
負荷値を算出するステップと、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するステップと、
全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する処理と、前記リクエストを破棄する処理とのいずれかの処理を実行するステップと、
オブジェクト保持装置が一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れるステップと、
を有することを特徴とするオブジェクト保持方法。
【請求項１２】
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するステップと、
前記保持するステップを使用して得られたオブジェクト保持装置情報をリクエストに格納して送信するステップと、
を有することを特徴とするクライアント装置の動作制御方法。
【請求項１３】
オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムにおいて使用される負荷分散アクセス方法であって、
前記オブジェクト保持装置が、
負荷値を算出するステップと、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するステップと、
全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送するステップと、前記リクエストを破棄するステップとのいずれかを実行するステップと、
一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れるステップと、を実行し、
前記クライアント装置が、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するステップと、
前記保持するステップを使用して得られたオブジェクト保持装置情報を前記リクエストに格納して送信するステップと、
を実行することを特徴とする負荷分散アクセス方法。
【請求項１４】
オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムにおいて使用される負荷分散アクセス方法であって、
前記オブジェクト保持装置が、
負荷値からオブジェクト読み出し時間を算出するステップと、
前記オブジェクト読み出し時間とデッドライン時間とを比較し、該比較結果に基づいてリクエストを受入れるか否かを判断し、受入れない場合は前記リクエストの中でまだリクエストを受信していないオブジェクト保持装置にリクエストを転送し、受入れ不可能な前記リクエストと判断した場合、前記リクエストを破棄してクライアント装置に該破棄したことを通知するステップと、を実行し、
前記クライアント装置が、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するステップと、
前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するステップと、
要求オブジェクトのデッドライン時間を算出するステップと、
を実行することを特徴とする負荷分散アクセス方法。
【請求項１５】
負荷値を算出する処理と、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送する処理と、
全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する処理と、前記リクエストを破棄する処理とのいずれかの処理を実行する処理と、
オブジェクト保持装置が一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる処理と、
をコンピュータに実行させるプログラム。
【請求項１６】
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持する処理と、
前記保持する処理を使用して得られたオブジェクト保持装置情報をリクエストに格納して送信する処理と、
をコンピュータに実行させるプログラム。
【請求項１７】
オブジェクト保持装置とクライアント装置との動作を制御する負荷分散アクセスシステムのコンピュータに実行させるプログラムであって、
前記オブジェクト保持装置に、
負荷値を算出する処理と、
前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送する処理と、
全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する処理と、前記リクエストを破棄する処理とのいずれかを実行する処理と、
一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる処理と、を実行させ、
前記クライアント装置に、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持する処理と、
前記保持するステップを使用して得られたオブジェクト保持装置情報を前記リクエストに格納して送信する処理と、
を実行させるプログラム。
【請求項１８】
オブジェクト保持装置とクライアント装置との動作を制御する負荷分散アクセスシステムのコンピュータに実行させるプログラムであって、
前記オブジェクト保持装置に、
負荷値からオブジェクト読み出し時間を算出する処理と、
前記オブジェクト読み出し時間とデッドライン時間とを比較し、該比較結果に基づいてリクエストを受入れるか否かを判断し、受入れない場合は前記リクエストの中でまだリクエストを受信していないオブジェクト保持装置にリクエストを転送し、受入れ不可能な前記リクエストと判断した場合、前記リクエストを破棄してクライアント装置に該破棄したことを通知する処理と、を実行させ、
前記クライアント装置に、
オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持する処理と、
前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信する処理と、
要求オブジェクトのデッドライン時間を算出する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散ファイルシステムにおける負荷分散アクセスシステム、オブジェクト保持装置、クライアント装置およびその方法並びにそのプログラムに関するものである。特に、本発明は、アクセス負荷を一極集中で管理することなく、さらに高速に最適なサーバにリクエストを転送することができる負荷分散アクセスシステム、オブジェクト保持装置、クライアント装置およびその方法並びにそのプログラムに関するものである。
【背景技術】
【０００２】
ファイルを分散して格納するシステムの一例としては、非特許文献１および非特許文献２に記載されているものがある。非特許文献１および非特許文献２に記載されている分散ファイルシステムは、クライアント装置と、名前解決手段（メタサーバ装置）と、データ格納手段（ストレージ装置）とから構成されている。
【０００３】
ファイルは、そのままデータ格納手段に格納される場合もあれば、データを分割したものを複数のデータ格納手段にオブジェクトとして格納される場合もある。名前解決手段はファイルシステムのメタデータ以外に、ファイルとファイルを構成するオブジェクト、およびオブジェクトとストレージ装置とのマッピング情報を保持している。ファイル単位で格納されている場合には、ファイルとストレージ装置とのマッピング情報を保持している。クライアント装置がデータをアクセスする際には、アクセスするデータの部分に対応するオブジェクトの情報を名前解決手段に問い合わせる必要がある。
【０００４】
さらに、データの信頼性を向上させる方法の１つとして、オブジェクトのレプリカ（コピー）を複数のストレージ装置に格納する手段がある。クライアント装置がオブジェクトを読み出すときには、どれか１つのオブジェクトから読み出せばよい。このとき、データ格納手段の読み込み負荷を分散させる方法としては、名前解決手段などでデータ格納手段へのアクセス状況を一極集中で管理する方法が考えられる。
【０００５】
しかし、この方法では、アクセス状況を管理している部分がSPOF（Single-Point-Of-Failure）になり性能のボトルネックになる、またデータ格納手段のソフトウェアやハードウェア環境の条件を考慮した負荷分散ができないという問題があった。
【０００６】
この問題を解決する方法が特許文献１に記載されている。この特許文献１に記載の技術では、各オブジェクトサーバ（ストレージ装置）で負荷を監視し、クライアント装置からの読み出しリクエスト（以下、リクエストは読み出しリクエストを意味する）を受け付けるかどうかを判断する。リクエストを受け付けないと判断した場合、別のオブジェクトサーバにリクエストを転送する。このとき転送する先のオブジェクトサーバリストは各サーバが保持している。リストから次のオブジェクトサーバを選択したらそのオブジェクトサーバにリクエストを転送してもよいかをまず問い合わせ、可能であると返事があればリクエストを転送する。このような方法で、一極集中管理方法による問題を解決している。
【０００７】
しかしながらこの方法では、オブジェクトサーバはリストから次のオブジェクトサーバを検索し、さらに次のオブジェクトサーバにリクエスト転送が可能かを問い合わせしてからリクエストを転送するので、負荷の分散に時間がかかるという問題がある。
【０００８】
さらに、転送候補オブジェクトサーバのすべてがリクエスト受け入れを拒否した場合、どのオブジェクトサーバが最終的にリクエストを受け入れるか否かを決定する方法がないため、リクエストは転送されることなく、転送可能かの問い合わせがされ続ける問題がある。さらにレプリカを保持しているオブジェクオサーバの変更があった場合、レプリカを保持しているすべてのオブジェクトサーバのリストを別々に更新しなければならず、オーバヘッドが大きいという問題がある。
【特許文献１】特開２００３−２５６３９０号公報
【非特許文献１】D. Nagle, et al., “The Panasas ActiveScale Storage Cluster: Delivering Scalable High Bandwidth Storage”, In Proceedings of SC2004, November 2004, Pittsburgh, Pennsylvania.
【非特許文献２】Sage A. Weil et al., “Ceph: A Scalable, High-Performance distributed File System”, In Proceedings of 7th OSDI06, November 2006, Boston, Massachusetts.
【発明の開示】
【発明が解決しようとする課題】
【０００９】
第１の問題点は、負荷分散に時間がかかるということである。その理由は、各オブジェクトサーバのリストから転送候補オブジェクトサーバを検索し、さらにそのオブジェクトサーバがリクエストを受付可能であるかを確認してから転送するためである。保持するオブジェクト数が増大するにつれ、リストサイズも増大することになり、検索の時間も増大する。
【００１０】
第２の問題点は、転送候補オブジェクトサーバのすべてがリクエスト受け入れを拒否した場合、どのオブジェクトサーバが最終的にリクエストを受け入れるか否かを決定する方法がないということである。その理由は、転送候補オブジェクトサーバにリクエスト受付可能かを問い合わせる際に、負荷の大きさを表す指標を知る手段が無いためである。特許文献１および非特許文献１，２では、全ての転送候補オブジェクトサーバがリクエスト受付を拒否した場合の処理方法が記載されておらず、いずれかのオブジェクトサーバの負荷が低くなって受け入れ可能になるまで転送可能かの問い合わせをし続けることになる。
【００１１】
第３の問題点は、レプリカ保持情報変更に伴うリスト更新オーバヘッドが大きいということである。その理由は、同じレプリカを保持しているオブジェクトサーバの位置情報リストを各オブジェクトサーバそれぞれが保持しているためである。オブジェクト数およびレプリカ数が増大すればするほど、更新オーバヘッドが大きくなる。
【００１２】
［発明の目的］
本発明の目的は、高速に負荷分散できる負荷分散アクセスシステムおよびその方法並びにそのプログラムを提供することにある。
【００１３】
本発明の他の目的は、どの転送候補オブジェクトサーバも高負荷である場合に、最も負荷が小さいオブジェクトサーバにリクエストを転送する、またはリクエストを破棄する負荷分散アクセスシステムおよびその方法並びにそのプログラムを提供することにある。
【００１４】
本発明のさらに他の目的は、同じレプリカを保持しているオブジェクトサーバの情報が更新されるときの処理オーバヘッドを削減できる負荷分散アクセスシステムおよびその方法並びにそのプログラムを提供することにある。
【課題を解決するための手段】
【００１５】
本発明のオブジェクト保持装置は、負荷値を算出する負荷評価手段と、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、を備えたことを特徴とする。
【００１６】
本発明のクライアント装置は、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報をリクエストに格納して送信するクライアントアプリケーション実行手段と、を備えたことを特徴とする。
【００１７】
本発明の負荷分散アクセスシステムは、オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムであって、前記オブジェクト保持装置が、負荷値を算出する負荷評価手段と、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、を備え、前記クライアント装置が、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段と、を備えたことを特徴とする。
【００１８】
また、本発明の負荷分散アクセスシステムは、オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムであって、前記オブジェクト保持装置が、負荷値からオブジェクト読み出し時間を算出する負荷評価手段と、前記オブジェクト読み出し時間とデッドライン時間とを比較し、該比較結果に基づいてリクエストを受入れるか否かを判断し、受入れない場合は前記リクエストの中でまだリクエストを受信していないオブジェクト保持装置にリクエストを転送し、受入れ不可能な前記リクエストと判断した場合、前記リクエストを破棄してクライアント装置に該破棄したことを通知する負荷値比較手段と、を備え、前記クライアント装置が、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段と、要求オブジェクトのデッドライン時間を算出するデッドライン時間算出手段と、を備えたことを特徴とする。
【００１９】
また、本発明の負荷分散アクセスシステムは、オブジェクト保持装置とクライアント装置とメタデータ保持装置とを備えた負荷分散アクセスシステムであって、前記オブジェクト保持装置が、負荷値を算出する負荷評価手段と、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、を備え、前記メタデータ保持装置が、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置の対応情報を保持するオブジェクトマッピング情報保持手段を備え、前記クライアント装置が、前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段を備えたことを特徴とする。
【００２０】
また、本発明の負荷分散アクセスシステムは、オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムであって、前記オブジェクト保持装置が、負荷値を算出する負荷評価手段と、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するものであって、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する動作と、前記リクエストを破棄する動作とのいずれかの動作を実行し、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる負荷値比較手段と、位置情報を提供する位置情報提供手段と、を備え、前記クライアント装置が、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するオブジェクトマッピング情報保持手段と、前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するクライアントアプリケーション実行手段と、位置情報を提供する位置情報提供手段と、を備えたことを特徴とする。
【００２１】
本発明のオブジェクト保持方法は、負荷値を算出するステップと、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するステップと、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する処理と、前記リクエストを破棄する処理とのいずれかの処理を実行するステップと、オブジェクト保持装置が一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れるステップと、を有することを特徴とする。
【００２２】
本発明のクライアント装置の動作制御方法は、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するステップと、前記保持するステップを使用して得られたオブジェクト保持装置情報をリクエストに格納して送信するステップと、を有することを特徴とする。
【００２３】
本発明の負荷分散アクセス方法は、オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムにおいて使用される負荷分散アクセス方法であって、前記オブジェクト保持装置が、負荷値を算出するステップと、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送するステップと、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送するステップと、前記リクエストを破棄するステップとのいずれかを実行するステップと、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れるステップと、を実行し、前記クライアント装置が、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するステップと、前記保持するステップを使用して得られたオブジェクト保持装置情報を前記リクエストに格納して送信するステップと、を実行することを特徴とする。
【００２４】
また、本発明の負荷分散アクセス方法は、オブジェクト保持装置とクライアント装置とを備えた負荷分散アクセスシステムにおいて使用される負荷分散アクセス方法であって、前記オブジェクト保持装置が、負荷値からオブジェクト読み出し時間を算出するステップと、前記オブジェクト読み出し時間とデッドライン時間とを比較し、該比較結果に基づいてリクエストを受入れるか否かを判断し、受入れない場合は前記リクエストの中でまだリクエストを受信していないオブジェクト保持装置にリクエストを転送し、受入れ不可能な前記リクエストと判断した場合、前記リクエストを破棄してクライアント装置に該破棄したことを通知するステップと、を実行し、前記クライアント装置が、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持するステップと、前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信するステップと、要求オブジェクトのデッドライン時間を算出するステップと、を実行することを特徴とする。
【００２５】
本発明のプログラムは、負荷値を算出する処理と、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送する処理と、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する処理と、前記リクエストを破棄する処理とのいずれかの処理を実行する処理と、オブジェクト保持装置が一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる処理と、をコンピュータに実行させることを特徴とする。
【００２６】
また、本発明のプログラムは、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持する処理と、前記保持する処理を使用して得られたオブジェクト保持装置情報をリクエストに格納して送信する処理と、をコンピュータに実行させることを特徴とする。
【００２７】
また、本発明のプログラムは、オブジェクト保持装置とクライアント装置との動作を制御する負荷分散アクセスシステムのコンピュータに実行させるプログラムであって、前記オブジェクト保持装置に、負荷値を算出する処理と、前記負荷値に基づいてリクエストを受け入れるか否かを判断し、受け入れない場合は前記リクエストに前記負荷値を格納して、前記リクエストに格納されている別のオブジェクト保持装置の情報に基づいて、前記リクエストを転送する処理と、全てのオブジェクト保持装置で前記リクエストが受け入れられない場合、前記リクエストの中で最も負荷値が低いオブジェクト保持装置に前記リクエストを転送する処理と、前記リクエストを破棄する処理とのいずれかを実行する処理と、一度受信した前記リクエストを再び受信した場合は前記リクエストを受け入れる処理と、を実行させ、前記クライアント装置に、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持する処理と、前記保持するステップを使用して得られたオブジェクト保持装置情報を前記リクエストに格納して送信する処理と、を実行させることを特徴とする。
【００２８】
また、本発明のプログラムは、オブジェクト保持装置とクライアント装置との動作を制御する負荷分散アクセスシステムのコンピュータに実行させるプログラムであって、前記オブジェクト保持装置に、負荷値からオブジェクト読み出し時間を算出する処理と、前記オブジェクト読み出し時間とデッドライン時間とを比較し、該比較結果に基づいてリクエストを受入れるか否かを判断し、受入れない場合は前記リクエストの中でまだリクエストを受信していないオブジェクト保持装置にリクエストを転送し、受入れ不可能な前記リクエストと判断した場合、前記リクエストを破棄してクライアント装置に該破棄したことを通知する処理と、を実行させ、前記クライアント装置に、オブジェクトと前記オブジェクトを格納しているオブジェクト保持装置との対応情報を保持する処理と、前記オブジェクトマッピング情報保持手段から得られたオブジェクト保持装置情報を前記リクエストに格納して送信する処理と、要求オブジェクトのデッドライン時間を算出する処理と、を実行させることを特徴とする。
【発明の効果】
【００２９】
第１の効果は、本発明によれば高速に負荷分散できることにある。その理由は、本発明ではリクエストにレプリカを保持しているオブジェクトサーバの位置情報が格納されているため、オブジェクトサーバが転送する際に転送候補オブジェクトサーバを検索するのはリクエストに格納されている最小限の情報でよいためである。また別の理由は、本発明では転送先オブジェクトサーバが受付可能かを判断せずにリクエストを転送するためである。
【００３０】
第２の効果は、本発明によれば転送候補オブジェクトサーバのすべてで負荷が高い場合でも、最も負荷が小さいオブジェクトサーバにリクエストを転送することができることにある。その理由は、本発明ではオブジェクトサーバがリクエストに各オブジェクトサーバの負荷の大きさを表す情報を格納して転送するためである。したがって、本発明は、全てのオブジェクトサーバで受け入れ不可能な負荷であってもリクエストの負荷値を比較して、最も負荷値が小さいオブジェクトサーバにリクエストを転送する、また、リクエストを破棄することができる。
【００３１】
第３の効果は、本発明によればレプリカ保持情報変更に伴うリスト更新オーバヘッドが小さいことにある。その理由は、本発明ではオブジェクトおよびそのレプリカが格納されているオブジェクトサーバ情報をクライアント側で管理しているためである。
【発明を実施するための最良の形態】
【００３２】
オブジェクトとは、各オブジェクトサーバが保持しているデータである。オブジェクトは、クライアントがアクセスするデータそのものである場合もあるし、クライアントがアクセスするデータを分割したものである場合もある。各オブジェクトは、信頼性向上のために複数のオブジェクトサーバにレプリカ（コピー）を保持している。
【００３３】
次に、発明を実施するための最良の形態について図面を参照して詳細に説明する。
図１を参照すると、本発明の第１実施形態は、アプリケーションが動作しているクライアント１００と、オブジェクトを保持するオブジェクトサーバ１０１ａおよび１０１ｂと、クライアントとオブジェクトサーバを繋ぐ伝送路１０２から構成されている。
【００３４】
クライアント１００は、クライアントアプリケーション１０とオブジェクトマッピング情報管理部１１とリクエスト送受信部（図示せず）を含む。
【００３５】
オブジェクトサーバ１０１ａおよび１０１ｂは、負荷値比較部２０ａおよび２０ｂ、オブジェクトアクセス処理部２１ａおよび２１ｂ、負荷評価部２２ａおよび２２ｂ、オブジェクト保持部２３ａおよび２３ｂを含む。
【００３６】
これらの手段はそれぞれ概略つぎのように動作する。
クライアントアプリケーション１０は、クライアント１００で動作し、必要なデータをオブジェクトサーバから読み出す。
【００３７】
オブジェクトマッピング情報管理部１１は、オブジェクトとオブジェクトが格納されているオブジェクトサーバの対応情報を保持し、クライアントアプリケーション１０からの要求に対し、該当する部分のオブジェクトが格納されているオブジェクトサーバの位置情報を返す。
【００３８】
リクエスト送受信部は、クライアントアプリケーション１０からのリクエストを、クライアントアプリケーション１０によって指定されたオブジェクトサーバに対して送信する。
【００３９】
負荷値比較部２０ａおよび２０ｂは、リクエストに格納された負荷値と自身のオブジェクトサーバの負荷値とを比較し、リクエストを受け入れるか否かを判断する。
【００４０】
オブジェクトアクセス処理部２１ａおよび２１ｂは、オブジェクトアクセスリクエストを受け取る。
【００４１】
負荷評価部２２ａおよび２２ｂは、オブジェクトアクセス処理部２１ａおよび２１ｂの負荷値を計算する。
【００４２】
オブジェクト保持部２３ａおよび２３ｂは、オブジェクトを保持する。
【００４３】
フローチャートや図を参照して本実施形態の全体的な動作について詳細に説明する。
【００４４】
まず、クライアントの動作について説明する。クライアントアプリケーション１０がオブジェクトサーバに格納されているオブジェクトにアクセスするとき、まずオブジェクトマッピング情報管理部１１に、アクセスしたいオブジェクトが格納されているオブジェクトサーバの位置情報を問い合わせる。オブジェクトマッピング情報管理部１１は、オブジェクトが格納されているオブジェクトサーバの位置情報のすべてを返す。クライアントアプリケーション１０は、図２に示すように、リクエストに、オブジェクト要求情報、自身のクライアント位置情報、および全てのオブジェクトサーバ位置情報を格納して、どれか１つのオブジェクトサーバにリクエストを送信する。
【００４５】
次に、図４のフローチャートを参照してオブジェクトサーバ１０１ａおよび１０１ｂの動作について説明する。以後、リクエストを受信したオブジェクトサーバを自オブジェクトサーバ、それ以外のオブジェクトサーバを他オブジェクトサーバと表記する。
【００４６】
クライアントからのリクエストを受信する（ステップＳ１００）。リクエストに自オブジェクトサーバの負荷値が格納されているか否かを負荷評価部が判断する（ステップＳ１０１）。ｎｏの場合、受信したリクエストは初めてのものなので、リクエストを受け入れるか否かを判断する処理に移行する。ｙｅｓの場合、すでにリクエストを受信して負荷値を格納し、転送されている。このリクエストは他オブジェクトサーバの処理ステップＳ１０８によって転送されてきたものであり、クライアントが要求するオブジェクトを保持しているオブジェクトサーバ群のなかで最も負荷値が低かったことを意味する。よって負荷値を判断せずにリクエストを受け入れる。負荷値の計算は負荷評価部が行う（ステップＳ１０２）。負荷評価部から得られた負荷値を基に、負荷値比較部がリクエストを受け入れるか否かを判断する（ステップＳ１０３）。
【００４７】
ステップＳ１０３での判断の結果、リクエストを受け入れない場合、図３に示すように、リクエストの自身の負荷値フィールドに負荷値を格納する（ステップＳ１０４）。負荷値をリクエストに格納したら、リクエストに全てのオブジェクトサーバの負荷値が格納されているかを確認する（ステップＳ１０５）。すべて格納されている場合（ステップＳ１０５のｙｅｓの場合）、最も負荷値が低いオブジェクトサーバを見つけ、それが自オブジェクトサーバであるか否かを確認する（ステップＳ１０７）。
【００４８】
ステップＳ１０５の処理において、リクエストにまだ負荷値が格納されていないオブジェクトサーバがある場合（ステップＳ１０５のｎｏの場合）、そのオブジェクトサーバにリクエストを転送する（ステップＳ１０６）。ステップＳ１０７の処理において、最も負荷値が低いのが自オブジェクトサーバであった場合（ステップＳ１０７のｙｅｓの場合）、自オブジェクトサーバでリクエストを受け付けると判断し、オブジェクトアクセス処理部にリクエストを渡す（ステップＳ１０９）。最も負荷値が低いのが他オブジェクトサーバであった場合（ステップＳ１０７のｎｏの場合）、他オブジェクトサーバにリクエストを送信する。ここで、オブジェクトのレプリカを保持しているオブジェクトサーバのすべての負荷が高い場合の最終的なリクエスト処理方法は、最も負荷が小さいオブジェクトサーバがリクエストを受け入れるとしているが、リクエストを破棄するといった処理に置換してもよい。
【００４９】
次に、本実施形態の効果について説明する。
本実施形態では、自オブジェクトサーバが高負荷の場合、自オブジェクトサーバへのリクエストを他オブジェクトサーバに転送するとき、リクエスト内の情報を参照してすぐに転送できるため、負荷分散を高速に実行することができる。
【００５０】
また、本実施形態では、さらに、転送リクエスト内に負荷値を格納することで、どのオブジェクトサーバも高負荷であった場合でも、最も低い負荷値のオブジェクトサーバがリクエストを受け入れる、またはリクエストを破棄する、などの処理を実行することができる。
【００５１】
また、本実施形態では、レプリカを保持しているオブジェクトサーバが変更になった場合、クライアントのオブジェクトマッピング情報管理部の情報のみを変更するだけでよい。よってレプリカ保持情報変更時の処理オーバヘッドを削減することができる。
【００５２】
［第２実施形態］
次に、本発明の第２実施形態について図面を参照して詳細に説明する。
【００５３】
図５を参照すると、本発明の第２実施形態は、第１実施形態と比較して、オブジェクトマッピング情報管理部がクライアント１００ではなく、メタサーバ１０３に保持されている点が異なる。
【００５４】
本発明の第２実施形態の処理手順は、クライアントアプリケーション１０がオブジェクトマッピング情報管理部１１に伝送路１０２を介して問い合わせる以外は、第１実施形態の処理手順と同じである。
【００５５】
次に、本発明の第２実施形態の効果について説明する。
オブジェクトマッピング情報をメタサーバ１０３で一極集中管理するので、オブジェクトマッピング情報変更時の処理オーバヘッドを削減することができる。
【００５６】
［第３実施形態］
次に、本発明の第３実施形態について図面を参照して詳細に説明する。
【００５７】
図６を参照すると、本発明の第３実施形態は、第１実施形態（図１）と比較して、クライアント１００にデッドライン算出部１２が追加されており、さらにオブジェクトサーバ１０１ａおよび１０１ｂの負荷値比較部２０ａおよび２０ｂがデッドライン判断部２４ａおよび２４ｂに置き換えられている点が異なる。
【００５８】
フローチャートおよび図を参照して、本実施形態の全体的な動作について詳細に説明する。
【００５９】
クライアントアプリケーション１０は、オブジェクト読み出しのデッドライン時間をデッドライン算出部１２で算出させて、リクエストに格納する。このときのリクエストは、図２の情報にデッドライン時間が追加されたものになる。
【００６０】
次にリクエストを受信したときのオブジェクトサーバ１０１ａおよび１０１ｂの処理手順を、図７を参照して説明する。まずクライアントからリクエストを受信する（ステップＳ２００）。次にオブジェクトサーバの負荷値からオブジェクト読み出しにかかる時間を算出し（ステップＳ２０１）、リクエストに格納されているデッドライン時間内にオブジェクトを提供できるか否かを判断する（ステップＳ２０２）。
【００６１】
可能である場合（ステップＳ２０２のｙｅｓ）、そのままリクエストを受け入れ、オブジェクトアクセス処理部にリクエストを渡す（ステップＳ２０７）。不可能である場合（ステップＳ２０２のｎｏ）、リクエストにオブジェクト受入不可能フラグをセットする（ステップＳ２０３）。このときの転送リクエストは、図３の負荷値の部分がオブジェクト受入不可能フラグに置換されたものになる。次いで、リクエストにすべてのオブジェクト受入不可能フラグがセットされているかを確認する（ステップＳ２０４）。
【００６２】
リクエストのすべてのオブジェクト受入不可能フラグに値がセットされている場合（ステップＳ２０４のｙｅｓ）、クライアントアプリケーションにリクエストの受入れができないことを通知し、リクエストを破棄する（ステップＳ２０６）。リクエストのすべてのオブジェクト受入不可能フラグに値がセットされていない場合（ステップＳ２０４のｎｏ）、フラグがセットされていないオブジェクトサーバにリクエストを転送する（ステップＳ２０５）。
【００６３】
次に、本実施形態の効果について説明する。
第１実施形態では、オブジェクトサーバの負荷が低ければクライアントが必要とする時間に間に合わないリクエストも受け入れて、無駄に負荷を高くしてしまうことが生じる。一方、第３実施形態によれば、オブジェクトサーバでリクエストに格納されたデッドライン時間を参照することにより、レプリカを保持しているオブジェクトサーバすべてでデッドライン時間に間に合わない場合はリクエストを破棄することができ、無駄にオブジェクトサーバの負荷が高くなることを回避することができる。
【００６４】
［第４実施形態］
次に、本発明の第４実施形態について図面を参照して詳細に説明する。
【００６５】
図８を参照すると、本発明の第４実施形態は、第１実施形態と比較して、位置情報提供部１３をクライアント１００が有している点と、位置情報提供部２５ａおよび２５ｂをオブジェクトサーバ１０１ａおよび１０１ｂが有している点とが異なる。ここで、位置情報とは、ネットワーク上の位置情報（ネットワーク座標）、または物理的な位置（ＧＰＳ）などである。したがって、本実施形態の位置情報は、図２に示すクライアント位置情報とは別のパラメータである。
【００６６】
次に、本発明の第４実施形態の処理手順について説明する。
クライアントは、リクエストに位置情報を一緒に格納する。このときのリクエストは、図２に示すリクエストの内容に位置情報が追加されたものになる。
【００６７】
リクエストを受信したオブジェクトサーバは、リクエストを受け入れるか否かを判断するときに、負荷値以外にクライアントと自オブジェクトサーバとの距離も考慮する。それ以外の処理手順は、第１実施形態の処理手順と同じである。
【００６８】
第４実施形態の効果は、より高速なレスポンスが可能になるオブジェクトサーバにリクエストを転送することができることである。
【００６９】
［実施例］
次に、具体的な実施例を用いて本発明を実施するための最良の形態の動作を説明する。
【００７０】
あるオブジェクトサーバがクライアントアプリケーションからリクエストを受信し、リクエストを転送して、最後に最も負荷値が低いオブジェクトサーバにリクエストを送信する動作について詳しく説明する。
【００７１】
オブジェクトサーバが３台（それぞれオブジェクトサーバＡ、Ｂ、Ｃとする）であるとし、クライアントアプリケーションがアクセスするファイルがオブジェクトであるとしてそれぞれ３台のオブジェクトサーバに格納されているものとする。ここではオブジェクトサーバを３台としているが、オブジェクトサーバが２台以上ある状況であれば本発明を適用することが可能である。また、クライアントの台数も制限は無い。伝送路は、ファイバーチャネル、インフィニバンドなどが考えられるが、ここではイーサネット（登録商標）とする。負荷の指標としては、ＣＰＵ使用率、ネットワーク帯域使用率、ディスクへのリクエストキュー長、電力消費などが考えられるが、ここではディスクのリクエストキュー長とする。また、リクエストを受け入れるか否かの判断基準は、ディスクのリクエストキュー長が１０以上であるか否かとする。負荷の基準の他の例としては、ＣＰＵ、ディスク、ネットワークなどの負荷を総合して負荷値を出力する評価式を用いるなどしてもよい。この評価式では、それぞれの負荷割合に重みを付けて足し合わせることがあってもよい。
【００７２】
クライアントアプリケーションは、ファイルにアクセスするために、まずオブジェクトマッピング情報管理部にファイルをオブジェクトとして保持しているオブジェクトサーバの位置情報を問い合わせる。ファイルはオブジェクトサーバＡ、Ｂ、Ｃに格納されているので、クライアントアプリケーションはオブジェクトマッピング情報管理部からそれぞれのオブジェクトサーバのＩＰアドレスを得る。クライアントアプリケーションは、オブジェクト要求情報（ファイルＩＤやファイルオフセット値など）と、クライアントのアドレスと、オブジェクトサーバそれぞれのアドレスとをリクエストに格納して、そのリクエストをオブジェクトサーバに送信する。ここでは、ランダムにオブジェクトサーバＡを選択したものとする。
【００７３】
オブジェクトサーバＡがリクエストを受信して負荷値を計算したところ、１５であったとする。その場合、オブジェクトサーバＡは、リクエストを受け入れずに、自身の負荷値をリクエストに格納し、まだ負荷値が格納されていないオブジェクトサーバに転送する。ここではランダムにオブジェクトサーバＣに転送したものとする。
【００７４】
オブジェクトサーバＣがリクエストを受信して負荷値を計算したところ、３０であったとする。オブジェクトサーバＣもオブジェクトサーバＡと同様、リクエストに自身の負荷値を格納してオブジェクトサーバＢに転送する。
【００７５】
オブジェクトサーバＢがリクエストを受信して負荷値を計算したところ、２０であったとする。この場合、すべてのオブジェクトサーバで負荷値の閾値を超えているので、Ｃはもっとも負荷値が小さいＡにリクエストを転送する。
【００７６】
オブジェクトサーバＡは再びリクエストを受信する。しかし、リクエストに自身の負荷値が格納されているので、レプリカを保持しているオブジェクトサーバ群の中で最も負荷値が低いと判断し、リクエストを受け入れる。
【００７７】
上記の場合はもっとも負荷分散に時間がかかるケースである。もし負荷値が閾値より小さいオブジェクトサーバが存在すれば、より高速に負荷が分散される。
【産業上の利用可能性】
【００７８】
本発明は、複数のオブジェクトサーバ、複数のクライアントから構成される分散ファイルシステムにおいて、特にオブジェクトのレプリカを複数格納する分散ファイルシステムにおけるアクセス負荷分散の用途に適応できる。
【図面の簡単な説明】
【００７９】
【図１】本発明の第１実施形態の構成を示すブロック図である。
【図２】第１実施形態においてクライアントがオブジェクトサーバに送信するリクエストの属性フィールドを示す図である。
【図３】第１実施形態においてオブジェクトサーバが他オブジェクトサーバにリクエストを転送する際のリクエストの属性フィールドを示す図である。
【図４】第１実施形態の動作を示すフローチャートである。
【図５】本発明の第２実施形態の構成を示すブロック図である。
【図６】本発明の第３実施形態の構成を示すブロック図である。
【図７】第３実施形態の動作を示すフローチャートである。
【図８】本発明の第４実施形態の構成を示すブロック図である。
【符号の説明】
【００８０】
１０                クライアントアプリケーション
１１                オブジェクトマッピング情報管理部
１２                デッドライン算出部
１３                位置情報提供部
２０ａ，２０ｂ      負荷値比較部 
２１ａ，２１ｂ      オブジェクトアクセス処理部
２２ａ，２２ｂ      負荷評価部
２３ａ，２３ｂ      オブジェクト保持部
２４ａ，２４ｂ      デッドライン判断部
２５ａ，２５ｂ      位置情報提供部
１００              クライアント
１０１ａ，１０１ｂ  オブジェクトサーバ
１０２              伝送路
１０３              メタサーバ
【図１】
2010152783.tif 000003
【図２】
2010152783.tif 000004
【図３】
2010152783.tif 000005
【図４】
2010152783.tif 000006
【図５】
2010152783.tif 000007
【図６】
2010152783.tif 000008
【図７】
2010152783.tif 000009
【図８】
2010152783.tif 000010