(57)【要約】【課題】可変的なネットワークに適用したときでも、各オブジェクトによる協調処理を安定して行い、且つ、システム内のリソースの消費を抑制すること。【解決手段】システム１０は、複数のノード１２及びオブジェクト１３と、オブジェクト情報を分散管理する複数のネームサーバ１５とを備えている。オブジェクト１３は、オブジェクト１３を起動する度に、ネットワーク内から最適なネームサーバ１５を選択し、当該ネームサーバ１５に自己のオブジェクト情報の登録要求をする登録要求機能２１と、各ネームサーバ１５に対し、所望のオブジェクト１３に参照接続要求をする参照接続要求機能２２と、自己の稼働接続状態を検出する状態検出機能２５とを備えている。各ネームサーバ１５は、自己が管理するオブジェクト１３からの情報により、その稼働接続状態を管理して不要な情報を逐次削除するオブジェクト状態管理機能３０を備えている。【選択図】          図２
2009230388.tif 000002
【特許請求の範囲】
【請求項１】
複数のノードと、これらノードに分散配置され、当該各ノード間の通信により協調動作する複数のオブジェクトと、当該オブジェクトに関する情報であるオブジェクト情報を管理する複数のネームサーバとを備えた分散オブジェクト通信のネームサービスシステムにおいて、
前記オブジェクトは、前記各ネームサーバの中から選択した最適のネームサーバに対し、自己のオブジェクト情報の登録処理を状況に応じて繰り返し要求し、
前記各ネームサーバは、相互に非同期状態に設けられ、前記登録処理を繰り返し行って前記オブジェクト情報を可変的に登録することにより、当該各オブジェクト情報が前記各ネームサーバに分散した状態で可変的に管理されることを特徴とする分散オブジェクト通信のネームサービスシステム。
【請求項２】
前記オブジェクトは、自己の前記オブジェクト情報が未登録と判断した場合に、前記各ネームサーバに問い合わせ、その中から最適となるネームサーバに対し、自己のオブジェクト情報を登録する登録処理を要求することを特徴とする請求項１記載の分散オブジェクト通信のネームサービスシステム。
【請求項３】
前記オブジェクトは、自己の稼働状況に応じて、自己のオブジェクト情報の登録先の変更要求を行うことを特徴とする請求項１又は２記載の分散オブジェクト通信のネームサービスシステム。
【請求項４】
前記オブジェクトは、起動する度に前記登録処理を要求し、
前記ネームサーバは、自己が管理する前記オブジェクトにおける稼働接続状況を当該オブジェクトから定期的に取得し、当該オブジェクトが接続不可能な状態であると判断したときに、当該オブジェクトを起動し直すことを特徴とする請求項３記載の分散オブジェクト通信のネームサービスシステム。
【請求項５】
前記ネームサーバは、自己が管理する前記オブジェクトにおける稼働接続状況を当該オブジェクトから定期的に取得し、前記稼働接続状況により管理不要となる前記オブジェクト情報を定期的に削除することを特徴とする請求項１、２又は３記載の分散オブジェクト通信のネームサービスシステム。
【請求項６】
前記オブジェクトは、他のオブジェクトと通信する際に、接続元のオブジェクト情報が登録されたネームサーバに、接続先のオブジェクト情報が登録されていない場合、前記各ネームサーバに問い合わせて、前記接続先のオブジェクト情報を取得することを特徴とする請求項１〜５の何れかに記載の分散オブジェクト通信のネームサービスシステム。
【請求項７】
ネットワーク内のネーミンググラフを作成するネーミンググラフ作成手段を備え、
前記ネーミンググラフ作成手段は、前記各オブジェクトに対する参照と稼働接続状況の管理を繰り返し行うことで、前記ネーミンググラフをリアルタイムで更新することを特徴とする請求項１〜６の何れかに記載の分散オブジェクト通信のネームサービスシステム。
【請求項８】
複数のノードと、これらノードに分散配置され、当該各ノード間の通信により協調動作する複数のオブジェクトと、前記オブジェクトに関する情報であるオブジェクト情報を管理する複数のネームサーバとを備えた分散オブジェクト通信のネームサービスシステムを機能させるためのプログラムであって、
相互に非同期となる前記各ネームサーバに対して、前記各オブジェクトそれぞれに最適となるネームサーバを選択し、それぞれのネームサーバに前記オブジェクト情報の登録要求を行うとともに、前記オブジェクトの状況に応じて、前記オブジェクト情報の登録先の変更要求を行う登録処理をシステム内のコンピュータに実行させることを特徴とする分散オブジェクト通信のネームサービス用プログラム。
【請求項９】
複数のノードと、これらノードに分散配置され、当該各ノード間の通信により協調動作する複数のオブジェクトと、前記オブジェクトに関する情報であるオブジェクト情報を管理する複数のネームサーバとを備えた分散オブジェクト通信のネームサービスシステムを機能させるためのプログラムであって、
前記オブジェクト情報が登録されたオブジェクトの稼働接続状況を当該オブジェクトから定期的に取得し、前記稼働接続状況により管理不要となる前記オブジェクト情報を定期的に削除する処理をシステム内のコンピュータに実行させることを特徴とする分散オブジェクト通信のネームサービス用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散オブジェクト通信のネームサービスシステム及びネームサービス用プログラムに係り、更に詳しくは、並列した複数のネームサーバにオブジェクト情報を可変的に分散登録させるとともに、各ネームサーバでオブジェクト情報を周期的に自動メンテナンスすることにより、可変的なネットワークにおける分散オブジェクトシステムに好適となる分散オブジェクト通信のネームサービスシステム及びネームサービス用プログラムに関する。
【背景技術】
【０００２】
従来、ネットワーク上の複数のノード（端末）に分散して配置された複数のオブジェクトが、協調して同一の処理を行う分散オブジェクトシステムが知られている（例えば、特許文献１参照）。この分散オブジェクトシステムでは、各オブジェクトに関するオブジェクト情報（例えば、名前、ＩＰアドレス、ポート等）が登録、管理されるネームサーバを備えており、これら各オブジェクトとネームサーバで名前空間が構成される。この名前空間は、１つのネームサーバで固定的に管理されるようになっており、当該ネームサーバにオブジェクト情報が一旦登録されると、単一の名前空間で各オブジェクト情報が管理されることになる。
【０００３】
また、複数の下位ネームサーバと、これら下位ネームサーバを管理する複数の上位ネームサーバとを備えた情報管理システムも知られている（特許文献２参照）。この情報管理システムでは、複数のオブジェクトのうち一部のオブジェクトのオブジェクト情報が、ある下位ネームサーバに登録されると、当該オブジェクト情報が通信状態の最も良好な上位ネームサーバに登録されることになる。そして、各上位ネームサーバに登録されたオブジェクト情報は、各上位ネームサーバ間で同期され、各上位ネームサーバでは、ネットワーク内の全てのオブジェクト情報が重畳的に管理されることになる。すなわち、この情報管理システムは、名前管理上、階層化構造をなし、各上位ネームサーバ間でオブジェクト情報の共有化が図られる。
【特許文献１】特開２００５−２６７５４７号公報
【特許文献２】特開平１０−１８７５２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、前記特許文献１の分散オブジェクトシステムは、端末相互間のリンクが固定的となる通信環境に適用されるシステムであって、名前空間が１つに固定化されるため、以下のような問題を招来する。すなわち、ある名前空間を管理するネームサーバが、機器障害や通信障害等によるエラーでダウンしたときに、当該名前空間内のオブジェクトがネームサーバにアクセスできなくなり、当該オブジェクトがいわゆるゾンビ化することになる。このゾンビ化したオブジェクトは、協調動作する他のオブジェクトのオブジェクト情報を参照不能になり、これらオブジェクトによる協調処理（サービス）が行えなくなってしまう。また、ゾンビ化したオブジェクトは、協調動作するオブジェクトの情報を取得するために、ダウンしたネームサーバに他のオブジェクトの情報の参照要求をするが、ネームサーバにアクセスできないため、意味のない参照要求が何度も繰り返し行われることになり、システム内のリソースが消費され、処理上の負荷が増大する。
【０００５】
以上のようにオブジェクトが自らの名前空間を失った場合、通信状態が正常な他の代替ネームサーバ、或いは、エラーを復旧したネームサーバに対して、再度自己の名前情報を登録しなければならないが、この際、登録先のネームサーバの情報を知得し、当該情報を各オブジェクトに手作業で新たに登録しなければならず作業が煩雑となる。従って、前記分散オブジェクトシステムでは、オブジェクトとネームサーバの通信に支障を及ぼすエラーが発生すると、名前空間の復旧に多大な人的手間がかかることになる。
【０００６】
また、特許文献２の情報管理システムは、特許文献１と同様に固定的となる通信環境に適用されるシステムであり、複数の下位ネームサーバから複数の上位ネームサーバに対して名前情報を登録、参照する際に、最も通信状態の良好な上位ネームサーバを選択するものであるが、下位ネームサーバによって構成される名前空間内で当該下位ネームサーバがダウンした場合、当該名前空間内のオブジェクトが自己の名前空間の下位ネームサーバにアクセスできなくなり、ひいては、階層的な上位ネームサーバにもアクセスできず、前述と同様の問題を招来する。
【０００７】
以上の問題は、アドホックネットワークやユビキタスネットワーク等、ノード相互間のリンクが動的に変化する可変的な通信環境の下では、更に顕著となる。つまり、このような可変的な通信環境では、ノード間の接続状態が不安定になり易く、前述したオブジェクトのゾンビ化が一層発生し易くなる。また、仮に、特許文献２の情報管理システムを可変的な通信環境に適用した場合には、ネットワーク内の通信状況が時々刻々と変化するため、上位ネームサーバに記憶されるオブジェクト情報が累積して飛躍的に増加することになり、この点からもシステムのリソース消費が莫大になる。
【０００８】
本発明は、以上のような問題に着目して案出されたものであり、その目的は、ノード間の通信状態が適宜変化する可変的なネットワークに適用したときでも、各オブジェクトによる協調処理を安定して行えるようにする分散オブジェクト通信のネームサービスシステム及びネームサービス用プログラムを提供することにある。
【０００９】
また、本発明の他の目的は、システム内のリソースの消費を抑制することができる分散オブジェクト通信のネームサービスシステム及びネームサービス用プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
（１）前記目的を達成するため、本発明は、複数のノードと、これらノードに分散配置され、当該各ノード間の通信により協調動作する複数のオブジェクトと、当該オブジェクトに関する情報であるオブジェクト情報を管理する複数のネームサーバとを備えた分散オブジェクト通信のネームサービスシステムにおいて、
前記オブジェクトは、前記各ネームサーバの中から選択した最適のネームサーバに対し、自己のオブジェクト情報の登録処理を状況に応じて繰り返し要求し、
前記各ネームサーバは、相互に非同期状態に設けられ、前記登録処理を繰り返し行って前記オブジェクト情報を可変的に登録することにより、当該各オブジェクト情報が前記各ネームサーバに分散した状態で可変的に管理される、という構成を採っている。
【００１１】
（２）ここで、前記オブジェクトは、自己の前記オブジェクト情報が未登録と判断した場合に、前記各ネームサーバに問い合わせ、その中から最適となるネームサーバに対し、自己のオブジェクト情報を登録する登録処理を要求する、という構成を採ることができる。
【００１２】
（３）また、前記オブジェクトは、自己の稼働状況に応じて、自己のオブジェクト情報の登録先の変更要求を行う、という構成を採ることが好ましい。
【００１３】
（４）ここで、前記オブジェクトは、起動する度に前記登録処理を要求し、
前記ネームサーバは、自己が管理する前記オブジェクトにおける稼働接続状況を当該オブジェクトから定期的に取得し、当該オブジェクトが接続不可能な状態であると判断したときに、当該オブジェクトを起動し直す、という構成を採るとよい。
【００１４】
（５）また、前記ネームサーバは、自己が管理する前記オブジェクトにおける稼働接続状況を当該オブジェクトから定期的に取得し、前記稼働接続状況により管理不要となる前記オブジェクト情報を定期的に削除する、という構成を採ることが好ましい。
【００１５】
（６）更に、前記オブジェクトは、他のオブジェクトと通信する際に、接続元のオブジェクト情報が登録されたネームサーバに、接続先のオブジェクト情報が登録されていない場合、前記各ネームサーバに問い合わせて、前記接続先のオブジェクト情報を取得する、という構成を採ることができる。
【００１６】
（７）また、ネットワーク内のネーミンググラフを作成するネーミンググラフ作成手段を備え、
前記ネーミンググラフ作成手段は、前記各オブジェクトに対する参照と稼働接続状況の管理を繰り返し行うことで、前記ネーミンググラフをリアルタイムで更新する、という構成を併せて採用することもできる。
【００１７】
（８）更に、本発明は、複数のノードと、これらノードに分散配置され、当該各ノード間の通信により協調動作する複数のオブジェクトと、前記オブジェクトに関する情報であるオブジェクト情報を管理する複数のネームサーバとを備えた分散オブジェクト通信のネームサービスシステムを機能させるためのプログラムであって、
相互に非同期となる前記各ネームサーバに対して、前記各オブジェクトそれぞれに最適となるネームサーバを選択し、それぞれのネームサーバに前記オブジェクト情報の登録要求を行うとともに、前記オブジェクトの状況に応じて、前記オブジェクト情報の登録先の変更要求を行う登録処理をシステム内のコンピュータに実行させる、という構成を採っている。
【００１８】
（９）また、本発明は、複数のノードと、これらノードに分散配置され、当該各ノード間の通信により協調動作する複数のオブジェクトと、前記オブジェクトに関する情報であるオブジェクト情報を管理する複数のネームサーバとを備えた分散オブジェクト通信のネームサービスシステムを機能させるためのプログラムであって、
前記オブジェクト情報が登録されたオブジェクトの稼働接続状況を当該オブジェクトから定期的に取得し、前記稼働接続状況により管理不要となる前記オブジェクト情報を定期的に削除する処理をシステム内のコンピュータに実行させる、という構成を採っている。
【発明の効果】
【００１９】
前記（１）、（８）の構成により、複数のネームサーバが同時に複数のノードに存在し、各オブジェクトの名前空間が各ネームサーバに分散しながら協調して管理されることになるため、一のネームサーバのダウン或いはシステム内での機器故障や通信障害の発生等の各種トラブルにより、各オブジェクトからあるネームサーバに参照要求が行えなくなった場合でも、並列的に設けられた複数のネームサーバの何れかが機能して冗長性を持たせることができる。すなわち、各オブジェクト情報が複数のネームサーバに分散して登録されていることから、前記各種トラブルが発生しても、使用不能となったネームサーバを除くネームサーバに登録されたオブジェクト情報の参照要求には影響がない。加えて、複数のネームサーバへのオブジェクト情報の登録が可変的に行われるため、使用不能のネームサーバに登録されていたオブジェクト情報を他のネームサーバに代替的に自動登録することができ、オブジェクトのゾンビ化を阻止することができる。従って、本発明によれば、分散オブジェクト技術を可変的なネットワークに適用したときでも、透過的で安定した各オブジェクトの協調処理を行えることになる。
【００２０】
前記（２）のように構成することで、事前に各ネームサーバのＩＰアドレスやポート等の情報が分からなくても、ブロードキャストにより、最適となるネームサーバにオブジェクト情報を自動的に登録することができる。
【００２１】
前記（３）の構成によれば、オブジェクトの稼働状況からゾンビ化を察知し、登録先のネームサーバを他のネームサーバに切り替えて再登録することができ、オブジェクトのゾンビ化を防止することができる。
【００２２】
前記（４）の構成によれば、オブジェクト情報を一旦ネームサーバに登録してもその登録状態が固定されずに、オブジェクトの起動時に、通信状況等によって登録に最適となるネームサーバが選択されてオブジェクト情報が登録されることから、通信環境が常時変わる可変的なネットワークでのオブジェクトの協調処理を一層安定化させることができる。
【００２３】
前記（５）、（９）の構成により、可変的なネットワークの下、現在の通信状態で不要となるオブジェクト情報がネームサーバに蓄積されずに、必要なオブジェクト情報が常にネームサーバに登録された状態になるから、システム内のリソース消費を抑制することができる。
【００２４】
前記（６）の構成により、無駄なブロードキャスティングを防ぎ、効率良く他のオブジェクトのオブジェクト情報を得ることができる。
【００２５】
前記（７）の構成によれば、可変的なネットワークへの適用時に、常に最適なネームサービスが提供され、分散オブジェクト通信による処理を一層安定して行うことが可能になる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施形態について図面を参照しながら説明する。
【００２７】
図１には、本発明に係るネームサービスシステムが適用された分散オブジェクトネットワークシステムの概略構成図が示されている。この図において、分散オブジェクトネットワークシステム１０は、複数のノード１２と、これらノード１２に分散配置され、各ノード１２間の通信（リンク）により協調動作して所定の処理を行う複数のオブジェクト１３と、一部を除く各ノード１２に１つずつ設けられるとともに、オブジェクト１３に関する情報であるオブジェクト情報を分散して管理する複数のネームサーバ１５と、所定のノード１２に設けられ、ネットワーク内のネーミンググラフを作成するネーミンググラフ作成手段１７とを備えている。本システム１０は、アドホックネットワークやユビキタスネットワーク等、ノード１２間のリンクが動的に変化する可変的なネットワークの下で構成されている。なお、本実施形態は、ＣＯＲＢＡの仕様に基づく分散オブジェクト技術が適用されているが、本発明の本質ではないため、ここでは詳細な説明を省略する。
【００２８】
前記各オブジェクト１３は、特定機能を持つが単独では意味を持たないソフトウェア、ハードウェア、及びそれらの一部等からなり、１つのノードの中に１つ或いは複数配置されている。当該各オブジェクト１３は、図２に示されるように、前記特定機能１９の他に、オブジェクト１３を起動する度に、ネットワーク内の各ネームサーバ１５の中から最適なネームサーバ１５を選択し、当該ネームサーバ１５に自己のオブジェクト情報の登録要求をする登録要求機能２１と、各ネームサーバ１５に対し、登録されたオブジェクト情報の参照要求をし、所望のオブジェクト１３への接続要求をする参照接続要求機能２２と、自己の稼働接続状態を検出する状態検出機能２５とを備えている。ここで、オブジェクト１３には、前記各機能１９，２１，２２，２５を実現するためのプログラムがインストールされている。
【００２９】
前記各ネームサーバ１５は、ノード１２におけるネットワークのゲートウェイ部分Ｇに設けられており、相互に非同期状態となっている。当該各ネームサーバ１５は、オブジェクト１３から登録要求がなされたオブジェクト情報を記憶する記憶機能２８と、オブジェクト１３からのオブジェクト情報の参照要求に対して回答をする参照回答機能２９と、自己が管理するオブジェクト１３の状態検出機能２５からの情報により、当該オブジェクト１３の稼働接続状態を管理するオブジェクト状態管理機能３０とを備えている。ここで、ネームサーバ１５には、記憶機能２８、参照回答機能２９及びオブジェクト状態管理機能３０を実現するためのプログラムがインストールされている。
【００３０】
次に、前記登録要求機能２１によるオブジェクト情報の登録処理について、図１、図２、図３を用いながら以下に説明する。ここで、ネームサーバ１５に登録されるオブジェクト情報は、ネーム、ＩＰアドレス、ポートからなる名前情報である。
【００３１】
先ず、あるオブジェクト１３（以下、「対象オブジェクト」と称する。）が起動されたときに、対象オブジェクト１３が存在するノード１２内つまりローカルホスト内のネームサーバ１５（以下、「ローカルネームサーバ」と称する。）に対し、対象オブジェクト１３の名前情報が登録されているか否かが問い合わせられる（ステップＳ１０１）。
【００３２】
その結果、ローカルネームサーバ１５から、対象オブジェクト１３の名前情報が登録されているという回答があった場合には、起動した対象オブジェクト１３の名前情報が新たに登録されずに、ローカルネームサーバ１５に既に登録された名前情報がそのまま用いられる（ステップＳ１０２）。
【００３３】
一方、そうでない場合、すなわち、当該名前情報が登録されていないという回答があった場合、或いは、ローカルネームサーバ１５のダウンやローカルネームサーバ１５自体が存在しない等、有効なローカルネームサーバ１５がない場合には、次の処理がなされる。
【００３４】
すなわち、ローカルホスト内に有効なネームサーバ１５が存在するか否かが確認される（ステップＳ１０３）。そこで、有効なローカルネームサーバ１５が存在するが、そこに名前情報が登録されていない場合は、当該ローカルネームサーバ１５に対象オブジェクト１３の名前情報を登録するように要求されて、当該名前情報がローカルネームサーバ１５に登録される（ステップＳ１０４）。一方、ローカルホスト内に有効なローカルネームサーバ１５が存在しない場合には、ネットワーク全体に問い合わせ（ブロードキャスト）され、他のノード１２内に存在するネームサーバ１５のうち、通信可能な状態にあり、且つ、通信時間が最短となる最適な通信状態のネームサーバ１５に対し、対象オブジェクト１３の名前情報の登録要求がなされる（ステップＳ１０５）。
【００３５】
以上の登録処理は、オブジェクト１３を起動する度に、当該オブジェクト１３の名前情報の登録について行われる。
【００３６】
次に、前記参照接続要求機能２２によるオブジェクト１３間の接続処理について、図４をも用いながら、以下に説明する。なお、以下においては、説明の便宜上、接続要求を行うオブジェクト１３（クライアントオブジェクト）を「接続元オブジェクト１３」と称し、接続要求に応じて接続元オブジェクト１３に接続されるオブジェクト１３（サーバオブジェクト）を「接続先オブジェクト１３」と称する。
【００３７】
以下に詳述するように、本システム１０におけるオブジェクト１３の名前情報は、通信状況によって登録されるネームサーバ１５が変わる場合があるため、接続元オブジェクト１３と協調する接続先オブジェクト１３は、接続時点で、どのネームサーバ１５に名前情報が登録されているかが不明である。従って、先ず、接続元オブジェクト１３から接続先オブジェクト１３の名前情報の参照要求がなされ、接続先オブジェクト１３の名前情報がどのネームサーバ１５に登録管理されているかが確認される。すなわち、接続元オブジェクト１３が属するノード１２内のローカルネームサーバ１５に問い合わせがされ（ステップＳ２０１）、当該ローカルネームサーバ１５に、接続先オブジェクト１３の名前情報が登録されているか否かが確認される（ステップＳ２０２）。そこで、ローカルネームサーバ１５に、接続先オブジェクト１３の名前情報が登録されていれば、ローカルネームサーバ１５から回答された名前情報に基づいて接続先オブジェクト１３への接続要求がなされる（ステップＳ２０３）。一方、ローカルネームサーバ１５から、接続先オブジェクト１３の名前情報の回答を受領出来ない場合には、ネットワーク全体に問い合わせ（ブロードキャスト）し、通信可能な各ネームサーバ１５それそれに対し、接続先オブジェクト１３の名前情報の存否が問い合わせられる（ステップＳ２０４）。そして、当該名前情報が登録された他のネームサーバ１５からの名前情報に基づいて接続先オブジェクト１３への接続要求がなされる（ステップＳ２０５）。このとき、ネームサーバ１５の記憶機能２８により、接続元オブジェクト１３が属するノード１２内のローカルネームサーバ１５にも、接続先オブジェクト１３の名前情報が登録される。
【００３８】
次に、前記オブジェクト状態管理機能３０によるオブジェクト１３の状態管理に関する処理について、図５をも用いながら以下に説明する。
【００３９】
各ネームサーバ１５では、自己に名前情報が登録されたオブジェクト１３の稼働接続状況に関する状態情報が管理される。つまり、ネームサーバ１５から自己が登録管理するオブジェクト１３に対し、その状態検出機能２５により検出された状態情報の問い合わせが一定時間毎（例えば、１分毎）になされる（ステップＳ３０１）。ここで、状態検出機能２５では、オブジェクト１３の稼働状態が変化する度に状態情報を更新して記憶し（ステップＳ３０２）、各ネームサーバ１５では、自己が管理するオブジェクト１３の稼働接続状況が逐次取得される（ステップＳ３０３）。そして、オブジェクト１３が接続不可能になっていないかが確認される（ステップＳ３０４）。ここで、例えば、あるネームサーバ１５の不具合により、当該ネームサーバ１５に登録管理された接続先オブジェクト１３がゾンビ化し、接続元オブジェクト１３に対し接続不可能になった場合には、当該接続不可能状態であるという状態情報が、当該各オブジェクト１３の名前情報を管理するネームサーバ１５に送信され、当該ネームサーバ１５は、接続不可能となったオブジェクト１３の名前情報を削除し、当該各オブジェクト１３を起動し直す（ステップＳ３０５）。なお、ここでの起動としては、物理的な再起動やプログラム的なリスタート（再開）がある。
すると、前述したオブジェクト１３の登録要求機能２１によって、新たに起動したオブジェクト１３の名前情報が最適なネームサーバ１５に再登録されることになる（前記ステップＳ１０１〜Ｓ１０５参照）。つまり、不具合のあったネームサーバ１５に代替された新たなネームサーバ１５に、接続状態が悪化した接続先オブジェクト１３の名前情報が再登録され、当該名前情報を接続元オブジェクト１３から再びアクセスすることが可能になり、前記接続不可能状態が自動的に解消される。
【００４０】
また、各ネームサーバ１５では、各オブジェクト１３間の接続を変える度に各オブジェクト１３の名前情報が参照されるため、当該名前情報と、当該名前情報に付随した状態情報が累積して記憶されることになる。ところが、各ネームサーバ１５では、一定時間毎（例えば、１分毎）に、自己が管理するオブジェクト１３の中で、現在の接続に関係のない不要なオブジェクト１３の名前情報及び状態情報が削除される。
【００４１】
そして、前記ネーミンググラフ作成手段１７では、ネットワーク内の各オブジェクト１３に対する参照と稼働接続状況の管理とが繰り返し行われることで、ネーミンググラフがリアルタイムで更新される。なお、ネーミンググラフ作成手段１７は、同様の作用を奏する限りにおいて、図１のような配置に限らず、システム内の他の場所に存在させることもできる。
【００４２】
従って、このような実施形態によれば、各オブジェクト１３の名前情報が複数のネームサーバ１５に分散して登録され、あるオブジェクト１３の通信不可能になったときに、当該オブジェクト１３の名前情報を登録するネームサーバ１５が変更されることで、オブジェクト１３のゾンビ化を瞬時に解消させることができる。また、このようにゾンビ化が瞬時に解消される点と、現在の通信に関係のない不要なオブジェクト１３の名前情報がネームサーバ１５から削除される点とにより、システム内のリソースの消費を抑制することができる。
【００４３】
なお、前記実施形態では、本発明を可変的なネットワークに適用しているが、固定的なネットワークに適用することも可能である。
【００４４】
また、本実施形態では、ネームサーバが設けられていないノードも存在しているが、各ノード全てにネームサーバを設けてもよい。
【００４５】
その他、本発明における各部の構成は図示構成例に限定されるものではなく、実質的に同様の作用を奏する限りにおいて、種々の変更が可能である。
【産業上の利用可能性】
【００４６】
本発明は、ＲＴコンポーネントと呼ばれるロボット向けミドルウェア等、種々のミドルウェア、ソフトウェア、ハードウェアに実装可能である他、可変的なネットワーク下で、各ノードに分散配置されたオブジェクトの協調処理に好適となり、ロボット、インテリジェントスペース（空間知能化）、各種移動体等における次世代の情報通信分野で利用可能となる。
【図面の簡単な説明】
【００４７】
【図１】本実施形態に係る分散オブジェクトネットワークシステムの概略構成図。
【図２】オブジェクト及びネームサーバの各種機能の説明図。
【図３】オブジェクト情報の登録処理手順を説明するためのフローチャート。
【図４】オブジェクトにおける参照接続処理手順を説明するためのフローチャート。
【図５】オブジェクトの状態に基づく再登録処理手順を説明するためのフローチャート。
【符号の説明】
【００４８】
１０  分散オブジェクトネットワークシステム（ネームサービスシステム）
１２  ノード
１３  オブジェクト
１５  ネームサーバ
１７  ネーミンググラフ作成手段
【図１】
2009230388.tif 000003
【図２】
2009230388.tif 000004
【図３】
2009230388.tif 000005
【図４】
2009230388.tif 000006
【図５】
2009230388.tif 000007