(57)【特許請求の範囲】
【請求項１】
複数のノード装置により生成されるオーバレイネットワークにより、前記複数のノード装置が相互に通信を行う情報通信システムであって、
前記複数のノード装置に含まれるノード装置は、
前記オーバレイネットワークに接続された前記複数のノード装置にメッセージを送信する送信先が登録されたルーティングテーブルであって、一以上の特定の前記ノード装置に対応する固有の識別情報が登録された前記ルーティングテーブルを記憶する記憶手段と、
前記記憶手段が記憶している前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置の存在を問い合わせる存在問合せ情報を、前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置に定期的に送信する存在問合せ手段と、
前記存在問合せ情報に対して返信されてきた回答を示す回答情報を受信する回答情報受信手段と、
前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記ルーティングテーブルを更新する更新手段と、
を有することを特徴とする情報通信システム。
【請求項２】
請求項１に記載の情報通信システムであって、
前記ノード装置は、
前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記存在問合せ情報を定期的に送信する間隔を変更する間隔制御手段をさらに備え、
前記存在問合せ手段は、さらに、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、
前記間隔制御手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記存在問合せ情報を定期的に送信する間隔を短くし、
前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属しない場合には、前記存在問合せ情報を定期的に送信する間隔を長くすることを特徴とする情報通信システム。
【請求項３】
複数のノード装置により生成されるオーバレイネットワークにより、前記複数のノード装置が相互に通信を行う情報通信システムにおける情報通信方法であって、
前記複数のノード装置に含まれるノード装置が、前記オーバレイネットワークに接続された前記複数のノード装置にメッセージを送信する送信先が登録されたルーティングテーブルであって、一以上の特定の前記ノード装置に対応する固有の識別情報が登録された前記ルーティングテーブルを記憶する記憶工程、
記憶されている前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置の存在を問い合わせる存在問合せ情報を、前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置に定期的に送信する存在問合せ工程、
前記存在問合せ情報に対して返信されてきた回答を示す回答情報を受信する回答情報受信工程、
前記ノード装置が、前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記ルーティングテーブルを更新する更新工程、
を有することを特徴とする情報通信方法。
【請求項４】
請求項３に記載の情報通信方法であって、
前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記存在問合せ情報を定期的に送信する間隔を変更する間隔制御工程、
をさらに有し、
前記存在問合せ工程は、さらに、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、
前記間隔制御工程は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記存在問合せ情報を定期的に送信する間隔を短くし、
前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属しない場合には、前記存在問合せ情報を定期的に送信する間隔を長くすることを特徴とする情報通信方法。
【請求項５】
複数のノード装置により生成されるオーバレイネットワークにより、前記複数のノード装置が相互に通信を行う情報通信システムに含まれるノード装置であって、
前記オーバレイネットワークに接続された前記複数のノード装置にメッセージを送信する送信先が登録されたルーティングテーブルであって、一以上の特定の前記ノード装置に対応する固有の識別情報が登録された前記ルーティングテーブルを記憶する記憶手段と、
前記記憶手段が記憶している前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置の存在を問い合わせる存在問合せ情報を、前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置に定期的に送信する存在問合せ手段と、
前記存在問合せ情報に対して返信されてきた回答を示す回答情報を受信する回答情報受信手段と、
前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記ルーティングテーブルを更新する更新手段と、
を有することを特徴とするノード装置。
【請求項６】
請求項５に記載のノード装置であって、
前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記存在問合せ情報を定期的に送信する間隔を変更する間隔制御手段をさらに有することを特徴とするノード装置。
【請求項７】
請求項６に記載のノード装置であって、
前記間隔制御手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合には、前記存在問合せ情報を定期的に送信する間隔を長くし、
前記回答情報を受信しない場合及び前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識した場合には、前記存在問合せ情報を定期的に送信する間隔を短くすることを特徴とするノード装置。
【請求項８】
請求項６に記載のノード装置であって、
前記回答情報を受信しない場合及び前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識した場合には、
前記更新手段は、前記回答情報に対応する前記ノード装置の前記識別情報を前記ルーティングテーブルから削除し、且つ、前記回答情報の送信元の前記ノード装置に対応する前記識別情報の属する領域に属する前記識別情報が前記ルーティングテーブルに登録されていない場合には、前記回答情報の送信元の前記ノード装置に対応する前記識別情報を前記ルーティングテーブルに登録することを特徴とするノード装置。
【請求項９】
請求項６乃至８のいずれか一項に記載のノード装置であって、
前記存在問合せ手段は、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、
前記回答情報を受信しない場合及び前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識した場合には、
前記更新手段は、前記回答情報に対応する前記ノード装置の前記識別情報を前記ルーティングテーブルから削除し、且つ、前記回答情報の送信元の前記ノード装置に対応する前記識別情報の属する領域に属する前記識別情報が前記ルーティングテーブルに登録されていない場合には、前記回答情報の送信元の前記ノード装置に対応する前記識別情報を前記ルーティングテーブルに登録することを特徴とするノード装置。
【請求項１０】
請求項６乃至９のいずれか一項に記載のノード装置であって、
前記存在問合せ手段は、前記識別情報の属する領域毎に前記存在問合せ情報を定期的に送信し、
前記間隔制御手段は、前記識別情報の属する領域毎に前記存在問合せ情報を定期的に送信する間隔を変更することを特徴とするノード装置。
【請求項１１】
請求項１０に記載のノード装置であって、
前記間隔制御手段は、前記識別情報の属する領域における前記識別情報が削除され又は新たに登録された場合には、当該識別情報の属する領域における前記存在問合せ情報を定期的に送信する間隔を短くすることを特徴とするノード装置。
【請求項１２】
請求項６乃至１１のいずれか一項に記載のノード装置において、
前記存在問合せ手段は、さらに、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、
前記間隔制御手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記存在問合せ情報を定期的に送信する間隔を短くし、
前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属しない場合には、前記存在問合せ情報を定期的に送信する間隔を長くすることを特徴とするノード装置。
【請求項１３】
請求項１２に記載のノード装置であって、
前記更新手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記回答情報の送信元の前記ノード装置に対応する前記識別情報を前記ルーティングテーブルに登録することを特徴とするノード装置。
【請求項１４】
請求項６乃至１３のいずれか一項に記載のノード装置であって、
前記存在問合せ情報を受信した場合には、前記存在問合せ情報に付された前記識別情報に基づいて、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近いか否かを判断する転送判断手段と、
前記転送判断手段が、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近いと判断した場合には、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近い旨の前記回答情報を送信する回答送信手段と、
前記転送判断手段が、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近くないと判断した場合には、前記存在問合せ情報に対応する前記ノード装置に向けて前記存在問い合わせ情報を送信する問合せ情報転送手段と、
前記回答情報受信手段が、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近い旨の前記回答情報を受信した場合には、当該回答情報の送信元の前記ノード装置が前記存在問合せ情報に対応する前記ノード装置か否かを判断する回答情報判断手段と、
をさらに有し、
前記存在問合せ手段は、問い合わせに係る前記ノード装置の前記識別情報を付して前記存在問合せ情報を送信し、
前記間隔制御手段は、前記回答情報判断手段により前記回答情報の送信元の前記ノード装置が前記存在問合せ情報に対応する前記ノード装置であると判断した場合には、前記存在問合せ情報に対応する前記ノード装置が存在することを認識し、前記回答情報判断手段により前記回答情報の送信元の前記ノード装置が前記存在問合せ情報に対応する前記ノード装置でないと判断した場合には、前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識することを特徴とするノード装置。
【請求項１５】
請求項６乃至１４のいずれか一項に記載のノード装置であって、
前記間隔制御手段は、前記存在問合せ情報を定期的に送信する間隔の値に所定数を掛けること、当該間隔の値を所定数で割ること、当該間隔の値に所定数を足すこと、又は、当該間隔の値から所定数を引くこと、の少なくともいずれか一により間隔の値を変更することを特徴とするノード装置。
【請求項１６】
請求項６乃至１５のいずれか一項に記載のノード装置であって、
前記間隔制御手段は、前記存在問合せ情報を定期的に送信する間隔の上限値又は下限値の少なくともいずれか一方を規定することを特徴とするノード装置。
【請求項１７】
コンピュータを、請求項５乃至１６のいずれか一項に記載のノード装置として機能させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに接続された複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））型の情報通信システム及び方法等の技術分野に関する。
【背景技術】
【０００２】
ピアツーピア型の情報通信システムにおいて、例えば、分散ハッシュテーブル（以下、ＤＨＴ（Distributed Hash Table）という）を利用して論理的に構築されたオーバレイネットワークでは、各ノード装置が、当該オーバレイネットワークに参加している全てのノード装置へのリンク情報（例えば、ＩＰアドレス）を認識しているわけではなく、参加の際などに得られる一部のノード装置へのリンク情報だけを保持しており、かかるリンク情報に基づき、データの問い合わせ等を行うようになっている。
【０００３】
このようなオーバレイネットワークにおいては、ノード装置の参加及び脱退（離脱）が頻繁に行われても、負荷分散が適切に行われる必要があり、非特許文献１には、オーバレイネットワークにおいて、参加及び脱退（離脱）が頻繁に行われる場合であっても、適切に負荷分散を行うための技術が開示されている。
【非特許文献１】「分散ハッシュテーブルの軽量な負荷分散手法の検討」  社団法人  電子情報通信学会  信学技報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述のように、ピアツーピア型の情報通信システムは、ノード装置の参加や脱退に柔軟に適応できる技術であるが、あるノード装置が保持している他のノード装置のリンク情報について、当該リンク情報に係る他のノード装置が存在しているか否かを確認するために、存在確認メッセージを当該ノード装置に送信する必要がある。
【０００５】
このような存在確認メッセージは、通常、定期的に送信されるが、必要以上に当該メッセージの送信数が多いとシステムにおける通信トラフィックが過大となる。また、当該メッセージの送信数がごく少ないと、リンク情報を記憶しているはずの他のノード装置が存在していないという状況が多くなり、情報の転送処理が滞ったり、正しくルーティングできなくなる場合があるため、システムにおいて急な障害が起こった場合に対応できなくなる可能性がある。
【０００６】
本発明は、以上の不都合に鑑みてなされたものであり、システムに含まれるノード装置の存在確認メッセージを送信するに際し、通信トラフィックが過大となることやシステムの障害に対応できないといった不都合を解消し、適切な間隔で存在確認メッセージを送信できる情報通信システム及び方法等を提供することを課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に記載の発明は、複数のノード装置により生成されるオーバレイネットワークにより、前記複数のノード装置が相互に通信を行う情報通信システムであって、前記複数のノード装置に含まれるノード装置は、前記オーバレイネットワークに接続された前記複数のノード装置にメッセージを送信する送信先が登録されたルーティングテーブルであって、一以上の特定の前記ノード装置に対応する固有の識別情報が登録された前記ルーティングテーブルを記憶する記憶手段と、前記記憶手段が記憶している前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置の存在を問い合わせる存在問合せ情報を、前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置に定期的に送信する存在問合せ手段と、前記存在問合せ情報に対して返信されてきた回答を示す回答情報を受信する回答情報受信手段と、前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記ルーティングテーブルを更新する更新手段と、を有することを特徴とする情報通信システムである。
これによれば、情報通信システムに含まれるノード装置が、ルーティングテーブルに識別情報が登録されたノード装置の存在の有無を確認することができる。
【０００８】
上記課題を解決するために、請求項２に記載の発明は、請求項１に記載の情報通信システムであって、前記ノード装置は、前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記存在問合せ情報を定期的に送信する間隔を変更する間隔制御手段をさらに備え、前記存在問合せ手段は、さらに、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、前記間隔制御手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記存在問合せ情報を定期的に送信する間隔を短くし、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属しない場合には、前記存在問合せ情報を定期的に送信する間隔を長くすることを特徴とする情報通信システムである。
これによれば、存在の問合せに係る識別情報のノード装置の存在の有無により、当該識別情報の領域のノード装置に対し、存在問合せ情報を定期的に送信する間隔を調整することができる。すなわち、その識別情報の領域におけるノード装置のシステムへの参加・脱退が多い場合には、送信間隔を短くしてできる限り高い割合でノード装置の存在を確認するようにできる。そのため、高い確率で各識別情報の領域のノード装置の所在を記憶しておくようにできるため、情報の転送処理が滞ったり、正しくルーティングできないという不都合が低減され、システム内における何らかの障害が起きたときに対応がしやすくなる。また、その識別情報の領域におけるノード装置が変わらずに長い間存在し、システムへの参加・脱退が少ない場合には、送信間隔を長くしてシステム内の通信トラフィックが過大となることを防止できる。このようにして、存在問合せ情報を定期的に送信する間隔を適切に調整することが可能となる。
また、ルーティングテーブルに識別情報が登録されていない識別情報の領域についても、存在問合せ情報を送信することにより、この識別情報の領域の情報に変更があったか否かに応じて、当該領域や次の領域に対する問合せ情報を定期的に送信する間隔を変更することができる。具体的に、ある識別情報の領域に含まれる仮に決めた識別情報に対して存在問合せ情報を送信した場合に、当該識別情報に対応するノード装置から回答情報を受信した場合、及び、当該識別情報に対応しないノード装置から回答情報を受信し、かつ、当該回答情報の送信元のノード装置が上述の識別情報の領域に含まれる場合には、情報がなかった状態から情報がある状態に変更されたと捉え、存在問合せ情報を定期的に送信する間隔を短くする。一方、ある識別情報の領域に含まれる仮に決めた識別情報に対して存在問合せ情報を送信した場合に、当該識別情報に対応しないノード装置から回答情報を受信し、かつ、当該回答情報の送信元のノード装置が上述の識別情報の領域に含まれない場合には、情報がなかった状態から変更がないと捉え、存在問合せ情報を定期的に送信する間隔を長くする。
【０００９】
上記課題を解決するために、請求項３に記載の発明は、複数のノード装置により生成されるオーバレイネットワークにより、前記複数のノード装置が相互に通信を行う情報通信システムにおける情報通信方法であって、前記複数のノード装置に含まれるノード装置が、前記オーバレイネットワークに接続された前記複数のノード装置にメッセージを送信する送信先が登録されたルーティングテーブルであって、一以上の特定の前記ノード装置に対応する固有の識別情報が登録された前記ルーティングテーブルを記憶する記憶工程、記憶されている前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置の存在を問い合わせる存在問合せ情報を、前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置に定期的に送信する存在問合せ工程、前記存在問合せ情報に対して返信されてきた回答を示す回答情報を受信する回答情報受信工程、前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記ルーティングテーブルを更新する更新工程、有することを特徴とする情報通信方法である。
上記課題を解決するために、請求項４に記載の発明は、請求項３に記載の情報通信方法であって、前記ノード装置が、前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記存在問合せ情報を定期的に送信する間隔を変更する間隔制御工程、をさらに有し、前記存在問合せ工程は、さらに、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、前記間隔制御工程は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記存在問合せ情報を定期的に送信する間隔を短くし、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属しない場合には、前記存在問合せ情報を定期的に送信する間隔を長くすることを特徴とする情報通信方法である。
【００１０】
上記課題を解決するために、請求項５に記載の発明は、複数のノード装置により生成されるオーバレイネットワークにより、前記複数のノード装置が相互に通信を行う情報通信システムに含まれるノード装置であって、前記オーバレイネットワークに接続された前記複数のノード装置にメッセージを送信する送信先が登録されたルーティングテーブルであって、一以上の特定の前記ノード装置に対応する固有の識別情報が登録された前記ルーティングテーブルを記憶する記憶手段と、前記記憶手段が記憶している前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置の存在を問い合わせる存在問合せ情報を、前記ルーティングテーブルに登録された前記識別情報に対応する前記ノード装置に定期的に送信する存在問合せ手段と、前記存在問合せ情報に対して返信されてきた回答を示す回答情報を受信する回答情報受信手段と、前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記ルーティングテーブルを更新する更新手段と、を有することを特徴とするノード装置である。
これによれば、情報通信システムに含まれるノード装置が、ルーティングテーブルに識別情報が登録されたノード装置の存在の有無を確認することができる。
【００１１】
上記課題を解決するために、請求項６に記載の発明は、請求項５に記載のノード装置であって、前記回答情報の受信成否又は前記回答情報の内容から認識される前記ノード装置の存在の有無に基づいて、前記存在問合せ情報を定期的に送信する間隔を変更する間隔制御手段をさらに有することを特徴とするノード装置である。
これによれば、情報通信システムに含まれるノード装置が存在問合せ情報を送信するに際し、システム内の通信トラフィックが過大となることや障害に対応できないといった不都合を解消し、適切な間隔で存在問合せ情報を送信することが可能となる。
【００１２】
上記課題を解決するために、請求項７に記載の発明は、請求項６に記載のノード装置であって、前記間隔制御手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合には、前記存在問合せ情報を定期的に送信する間隔を長くし、前記回答情報を受信しない場合及び前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識した場合には、前記存在問合せ情報を定期的に送信する間隔を短くすることを特徴とするノード装置である。
【００１３】
これによれば、問合せに係るノード装置が存在する場合には問合せ情報を定期的に送信する間隔を長くし、問合せに係るノード装置が存在しない場合には問合せ情報を定期的に送信する間隔を短くするため、システム内の通信トラフィックが過大となることや障害に対応できないといった不都合を解消し、適切な間隔で存在問合せ情報を送信することが可能となる。特に、存在の有無が変わりやすい識別情報の領域または時間帯に対しては徐々に間隔を短くし、長く存在し続ける識別情報の領域または時間帯に対しては徐々に間隔を長くすることができる。
【００１４】
上記課題を解決するために、請求項８に記載の発明は、請求項６に記載のノード装置であって、前記回答情報を受信しない場合及び前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識した場合には、前記更新手段は、前記回答情報に対応する前記ノード装置の前記識別情報を前記ルーティングテーブルから削除し、且つ、前記回答情報の送信元の前記ノード装置に対応する前記識別情報の属する領域に属する前記識別情報が前記ルーティングテーブルに登録されていない場合には、前記回答情報の送信元の前記ノード装置に対応する前記識別情報を前記ルーティングテーブルに登録することを特徴とするノード装置である。
【００１５】
これによれば、存在確認の問合せ間隔を適切に調整できる他、存在しないノード装置の識別情報を削除し、また、新たなノード装置の識別情報を登録することにより、ルーティングテーブルに登録される情報を更新していくことができる。そのため、各ノード装置は、現時点での可能な限り適切な他のノード装置の情報を記憶しておくことが可能となる。
【００１６】
上記課題を解決するために、請求項９に記載の発明は、請求項６乃至８のいずれか一項に記載のノード装置であって、前記存在問合せ手段は、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、前記回答情報を受信しない場合及び前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識した場合には、前記更新手段は、前記回答情報に対応する前記ノード装置の前記識別情報を前記ルーティングテーブルから削除し、且つ、前記回答情報の送信元の前記ノード装置に対応する前記識別情報の属する領域に属する前記識別情報が前記ルーティングテーブルに登録されていない場合には、前記回答情報の送信元の前記ノード装置に対応する前記識別情報を前記ルーティングテーブルに登録することを特徴とするノード装置である。
上記課題を解決するために、請求項１０に記載の発明は、請求項６乃至９のいずれか一項に記載のノード装置であって、前記存在問合せ手段は、前記識別情報の属する領域毎に前記存在問合せ情報を定期的に送信し、前記間隔制御手段は、前記識別情報の属する領域毎に前記存在問合せ情報を定期的に送信する間隔を変更することを特徴とするノード装置である。
【００１７】
これによれば、識別情報の属する領域毎に存在問合せ情報を定期的に送信し、当該領域毎に当該情報を定期的に送信する間隔を変更するので、上述のようにノード装置のシステムへの参加・脱退の頻度によって、領域毎に存在問合せ情報を定期的に送信する間隔を調整し、適切な間隔とすることができる。
【００１８】
上記課題を解決するために、請求項１１に記載の発明は、請求項１０に記載のノード装置であって、前記間隔制御手段は、前記識別情報の属する領域における前記識別情報が削除され又は新たに登録された場合には、当該識別情報の属する領域における前記存在問合せ情報を定期的に送信する間隔を短くすることを特徴とするノード装置である。
【００１９】
これによれば、識別情報の属する領域における識別情報が削除され、又は、新たに登録された場合には、当該領域における情報に変更があったと捉えて、存在問合せ情報を定期的に送信する間隔を短くする。そのため、当該領域の次に存在問合せ情報を送信するまでの時間が短くなり、当該領域のメンテナンス（削除された情報の代わりに新たな情報を登録すること）を早く行うことができる。よって、識別情報の属する領域に対応するノード装置が存在しているにもかかわらず、当該ノード装置の情報が登録されていないという不都合が低減される。また、情報が新たに登録された場合にも、当該領域はノード装置の変動が多い可能性があるため、問合せの間隔を短くして当該領域のノード装置に何らかの障害が起きた場合の対応をしやすくすることができる。
【００２０】
上記課題を解決するために、請求項１２に記載の発明は、請求項６乃至１１のいずれか一項に記載のノード装置において、前記存在問合せ手段は、さらに、前記ルーティングテーブルに前記識別情報が登録されていない前記識別情報の領域に属する前記識別情報に対応する前記ノード装置に向けてその存在を問い合わせる前記存在問合せ情報を送信し、前記間隔制御手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記存在問合せ情報を定期的に送信する間隔を短くし、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属しない場合には、前記存在問合せ情報を定期的に送信する間隔を長くすることを特徴とするノード装置である。
【００２１】
これによれば、ルーティングテーブルに識別情報が登録されていない識別情報の領域についても、存在問合せ情報を送信することにより、この識別情報の領域の情報に変更があったか否かに応じて、当該領域や次の領域に対する問合せ情報を定期的に送信する間隔を変更することができる。具体的に、ある識別情報の領域に含まれる仮に決めた識別情報に対して存在問合せ情報を送信した場合に、当該識別情報に対応するノード装置から回答情報を受信した場合、及び、当該識別情報に対応しないノード装置から回答情報を受信し、かつ、当該回答情報の送信元のノード装置が上述の識別情報の領域に含まれる場合には、情報がなかった状態から情報がある状態に変更されたと捉え、存在問合せ情報を定期的に送信する間隔を短くする。一方、ある識別情報の領域に含まれる仮に決めた識別情報に対して存在問合せ情報を送信した場合に、当該識別情報に対応しないノード装置から回答情報を受信し、かつ、当該回答情報の送信元のノード装置が上述の識別情報の領域に含まれない場合には、情報がなかった状態から変更がないと捉え、存在問合せ情報を定期的に送信する間隔を長くする。
【００２２】
上記課題を解決するために、請求項１３に記載の発明は、請求項１２に記載のノード装置であって、前記更新手段は、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在することを認識した場合、及び、前記回答情報により前記存在問合せ情報に対応する前記ノード装置が存在していないことを認識した場合であって前記回答情報の送信元の前記ノード装置に対応する前記識別情報が前記存在問合せ情報に対応する前記識別情報の属する領域に属する場合には、前記回答情報の送信元の前記ノード装置に対応する前記識別情報を前記ルーティングテーブルに登録することを特徴とするノード装置である。
【００２３】
これによれば、ルーティングテーブルに識別情報が登録されていない識別情報の領域についても、存在問合せ情報を送信することにより、当該領域に対応するノード装置が存在することを確認することができる場合があり、そのような場合には、ノード装置が記憶している情報のメンテナンスを行うことができる。
【００２４】
上記課題を解決するために、請求項１４に記載の発明は、請求項６乃至１３のいずれか一項に記載のノード装置であって、前記存在問合せ情報を受信した場合には、前記存在問合せ情報に付された前記識別情報に基づいて、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近いか否かを判断する転送判断手段と、前記転送判断手段が、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近いと判断した場合には、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近い旨の前記回答情報を送信する回答送信手段と、前記転送判断手段が、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近くないと判断した場合には、前記存在問合せ情報に対応する前記ノード装置に向けて前記存在問い合わせ情報を送信する問合せ情報転送手段と、前記回答情報受信手段が、前記存在問合せ情報に対応する前記ノード装置に自ノード装置が最も近い旨の前記回答情報を受信した場合には、当該回答情報の送信元の前記ノード装置が前記存在問合せ情報に対応する前記ノード装置か否かを判断する回答情報判断手段と、をさらに有し、前記存在問合せ手段は、問い合わせに係る前記ノード装置の前記識別情報を付して前記存在問合せ情報を送信し、前記間隔制御手段は、前記回答情報判断手段により前記回答情報の送信元の前記ノード装置が前記存在問合せ情報に対応する前記ノード装置であると判断した場合には、前記存在問合せ情報に対応する前記ノード装置が存在することを認識し、前記回答情報判断手段により前記回答情報の送信元の前記ノード装置が前記存在問合せ情報に対応する前記ノード装置でないと判断した場合には、前記存在問合せ情報に対応する前記ノード装置が存在しないことを認識することを特徴とするノード装置である。
【００２５】
これによれば、存在問合せ情報を受信したノード装置は、当該存在問合せ情報に対応するノード装置に最も近いか否かを判断し、最も近い場合にはその旨の回答情報を存在問合せ情報のノード装置に送ることとなる。よって、当該回答情報を受信したノード装置は、存在問合せ情報に対応するノード装置から回答情報が送信されたか否か、回答情報の送信元のノード装置を新たに記憶可能か、等を判断し、上述のように存在問合せ情報の送信間隔を変更したり、新たにノード装置の情報を記憶したりできる。また、存在問合せ情報に対応するノード装置に最も近くない場合には、通常の情報の転送処理を行うことにより、存在問合せ情報をより対応するノード装置に近い装置に届けることができる。
【００２６】
上記課題を解決するために、請求項１５に記載の発明は、請求項６乃至１４のいずれか一項に記載のノード装置であって、前記間隔制御手段は、前記存在問合せ情報を定期的に送信する間隔の値に所定数を掛けること、当該間隔の値を所定数で割ること、当該間隔の値に所定数を足すこと、又は、当該間隔の値から所定数を引くこと、の少なくともいずれか一により間隔の値を変更することを特徴とするノード装置である。
【００２７】
これによれば、存在問合せ情報を定期的に送信する間隔の変更の仕方を、上述のいずれかの方法とすることを決めておくことにより、間隔制御手段による管理がしやすくなる。
【００２８】
上記課題を解決するために、請求項１６に記載の発明は、請求項６乃至１５のいずれか一項に記載のノード装置であって、前記間隔制御手段は、前記存在問合せ情報を定期的に送信する間隔の上限値又は下限値の少なくともいずれか一方を規定することを特徴とするノード装置である。
【００２９】
これによれば、存在問合せ情報を定期的に送信する間隔の上限値を規定することにより、長期間にわたって脱退したノード装置を記憶し続けておき障害が生じること等が防止できる。また、当該間隔の下限値を規定することにより、ノード装置の参加・脱退が多い識別情報の領域であってもシステム内の通信トラフィックが過大になることを防止できる。
【００３０】
上記課題を解決するために、請求項１７に記載の発明は、コンピュータを、請求項５乃至１６のいずれか一項に記載のノード装置として機能させることを特徴とする情報処理プログラムである。
【発明の効果】
【００３１】
本発明によれば、情報通信システムに含まれるノード装置が、ルーティングテーブルに識別情報が登録されたノード装置の存在の有無を確認することができる。
【発明を実施するための最良の形態】
【００３２】
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、ＤＨＴ、識別情報としてのノードＩＤ及びノード情報としてのＩＰアドレスを利用して存在問合せ情報（存在確認メッセージ）を他のノード装置に送信する情報通信システムに本発明を適用した場合の実施形態である。
【００３３】
［１．情報通信システムの構成等］
始めに、図１を参照して、情報通信システムの概要構成等について説明する。
【００３４】
図１は、本実施形態に係る情報通信システムにおける各ノード装置の接続態様の一例を示す図である。
【００３５】
図１の下部枠１０１内に示すように、ＩＸ（Internet eＸchange）３、ＩＳＰ（Internet Service Provider）４、ＤＳＬ（Digital Subscriber Line）回線事業者（の装置）５、ＦＴＴＨ（Fiber To The Home）回線事業者（の装置）６、および通信回線（例えば、電話回線や光ケーブル等）７等によって、インターネット等のネットワーク（現実世界のネットワーク）８が構築されている。
【００３６】
情報通信システムＳは、このようなネットワーク８を介して相互に接続された複数のノード装置１ａ，１ｂ，１ｃ・・・１ｘ，１ｙ，１ｚ・・・を備えて構成されることになり、ピアツーピア方式のネットワークシステムとなっている。各ノード装置１ａ，１ｂ，１ｃ・・・１ｘ，１ｙ，１ｚ・・には、ノード装置を示す情報（本発明におけるノード情報）としての固有の製造番号およびＩＰ（Internet Protocol）アドレスが割り当てられている。なお、製造番号およびＩＰアドレスは、複数のノード装置１間で重複しないものである。なお、以下の説明において、ノード装置１ａ，１ｂ，１ｃ・・・１ｘ，１ｙ，１ｚ・・・のうち何れかのノード装置を示す場合には、便宜上、ノード装置１という場合がある。
【００３７】
［１．１．ＤＨＴの概要］
以下に、本実施形態に係る分散ハッシュテーブル（以下、ＤＨＴ（Distributed Hash Table）という）を利用したアルゴリズムについて説明する。
【００３８】
上述した情報通信システムＳにおいて、当該ノード装置１同士が、互いに情報をやり取りする際には、お互いのノード情報としてのＩＰアドレスを知っていなければならない。
【００３９】
例えば、コンテンツを互いに共有するシステムにおいては、ネットワーク８に参加している各ノード装置１が互いにネットワーク８に参加している全てのノード装置１のＩＰアドレスを知っておくのが単純な手法であるが、端末数が何万何十万と多数になると、その全てのノード装置１のＩＰアドレスを覚えておくのは現実的ではない。また、任意のノード装置の電源がＯＮ或いはＯＦＦとすると、各ノード装置１にて記憶している当該任意のノード装置のＩＰアドレスの更新が頻繁になり、運用上困難となる。
【００４０】
そこで、１台のノード装置１では、ネットワーク８に参加している全てのノード装置１のうち、必要最低限のノード装置１のＩＰアドレスだけを覚えて（記憶して）おいて、ＩＰアドレスを知らない（記憶していない）ノード装置１については、各ノード装置１間で互いに情報を転送し合って届けてもらうというシステムが考案されている。
【００４１】
このようなシステムの一例として、ＤＨＴを利用したアルゴリズムによって、図１の上部枠１００内に示すような、オーバレイネットワーク９が構築されることになる。つまり、このオーバレイネットワーク９は、既存のネットワーク８を用いて形成された仮想的なリンクを構成するネットワークを意味する。
【００４２】
本実施形態においては、ＤＨＴを利用したアルゴリズムによって構築されたオーバレイネットワーク９を前提としており、このオーバレイネットワーク９上に配置されたノード装置１を、情報通信システムＳに参加（言い換えれば、オーバレイネットワーク９に参加）しているノード装置１という。なお、情報通信システムＳへの参加は、未だ参加していないノード装置が、既に参加している任意のノード装置１に対して参加要求を送ることによって行われる。
【００４３】
情報通信システムＳに参加している各ノード装置１のノードＩＤ（識別情報）は、それぞれのノード装置毎にユニーク（固有）な番号を付与する。この番号は、ノード装置の最大運用台数を収容できるだけのｂｉｔ数を持たせる必要がある。例えば、１２８ｂｉｔの番号とすれば、2＾128≒340×10＾36台のノード装置を運用できる。
【００４４】
より具体的には、各ノード装置１のノードＩＤは、それぞれのノード装置のＩＰアドレスあるいは製造番号等のノード装置毎に固有の値を、共通のハッシュ関数（ハッシュアルゴリズム）によりハッシュ化して得たハッシュ値であり、一つのＩＤ空間に偏りなく分散して配置されることになる。このように共通のハッシュ関数により求められた（ハッシュ化された）ノードＩＤは、当該ＩＰアドレスあるいは製造番号が異なれば、同じ値になる確率が極めて低いものである。なお、ハッシュ関数については公知であるので詳しい説明を省略する。なお、本実施形態では、ＩＰアドレス（グローバルＩＰアドレス；ノード情報）を共通のハッシュ関数によりハッシュ化した値をノードＩＤとする。
【００４５】
［１．２．ルーティングテーブルの作成］
図２を参照して、ＤＨＴで用いるルーティングテーブルの作成手法の一例について説明する。図２は、ＤＨＴによってルーティングテーブルが作成される様子の一例を示す図である。
【００４６】
各ノード装置１に付与されたノードＩＤは、共通のハッシュ関数によって生成したため、図２（Ａ）乃至図２（Ｃ）に示す如く、同一のリング状のＩＤ空間上にさほど偏ることなく、散らばって存在するものとして考えることができる。同図は８ｂｉｔでノードＩＤを付与し、図示したものである。図中黒点はノードＩＤを示し、反時計回りでＩＤが増加するものとする。
【００４７】
まず、図２（Ａ）に示す如く、ＩＤ空間を幾つかのエリアに分割する。実際には、１６分割程度が良く用いられるが、説明を簡単にするためここでは４分割とし、ＩＤをビット長８Ｂｉｔの４進数で表すこととした。そして、ノード装置１ＮのノードＩＤを「1023」とし、このノード装置１Ｎのルーティングテーブルを作る例について説明する。
【００４８】
（レベル１のルーティング）
まず、ＩＤ空間を４分割とすると、それぞれのエリアは４進数で表すと最大桁が異なる４つのエリア「0XXX」「1XXX」、「2XXX」、「3XXX」（Ｘは０から３の自然数、以下同様。）で分けられる。ノード装置１Ｎは、当該ノード装置１Ｎ自身のノードＩＤが「1023」であるため、図中左下「1XXX」のエリアに存在することになる。そして、ノード装置１Ｎは、自分の存在するエリア（すなわち、「1XXX」のエリア）以外のエリアに存在するノード装置１を適当に選択し、当該ノードＩＤのＩＰアドレスをレベル１のテーブルに記憶する。図３（Ａ）がレベル１のテーブルの一例である。２列目はノード装置１Ｎ自身を示しているため、ＩＰアドレスを記憶する必要は無い。
【００４９】
（レベル２のルーティング）
次に、図２（Ｂ）に示す如く、上記ルーティングによって４分割したエリアのうち、自分の存在するエリアを更に４分割し、更に４つのエリア「10XX」「11XX」、「12XX」、「13XX」と分ける。そして、上記と同様に自分の存在するエリア以外のエリアに存在するノード装置１を適当に選択し、当該ノードＩＤのＩＰアドレスをレベル２のテーブルに記憶する。図３（Ｂ）がレベル２のテーブルの一例である。１列目はノード装置１Ｎ自身を示しているため、ＩＰアドレスを記憶する必要は無い。
【００５０】
（レベル３のルーティング）
さらに、図２（Ｃ）に示す如く、上記ルーティングによって４分割したエリアのうち、自分の存在するエリアを更に４分割し、更に４つのエリア「100X」「101X」、「102X」、「103X」と分ける。そして、上記と同様に自分の存在するエリア以外のエリアに存在するノード装置１を適当に選択し、当該ノードＩＤのＩＰアドレスをレベル１のテーブルに記憶する。図３（Ｃ）がレベル３のテーブルの一例である。３列目はノード装置１Ｎ自身を示しているため、ＩＰアドレスを記憶する必要は無く、２列目、４列目はそのエリアにノード装置が存在しないため空白となる。
【００５１】
このようにして、レベル４まで同様にルーティングテーブルを図３（Ｄ）に示す如く作成することにより、８ｂｉｔのＩＤ全てを網羅することができる。レベルが上がる毎にテーブルの中に空白が目立つようになる。
【００５２】
以上説明した手法に従って作成したルーティングテーブルを、全てのノード装置１が夫々作成して所有することになる。このように、ノード装置１は、他のノード装置１の宛先情報としてのＩＰアドレスと、グループ・グループ群としてのノードＩＤ空間のエリア、すなわちＤＨＴの各レベル及び各列と、を対応付けて記憶している。
【００５３】
なお、ノードＩＤの桁数に応じてレベルの数が決まり、進数の数に応じて図３（Ｄ）における各レベルの注目桁の数が決まる。具体的に、１６桁１６進数である場合には、６４ｂｉｔのＩＤとなり、レベル１６で注目桁の（英）数字は０〜ｆとなる。後述するルーティングテーブルの説明においては、各レベルの注目桁の数を示す部分を単に「列」ともいう。
【００５４】
［２．ノード装置の構成等］
次に、図４を参照して、ノード装置１の構成および機能について説明する。尚、各ノード装置１は、それぞれが行う処理によって初めに主情報を送信するノード装置１、受信した主情報を転送するノード装置１等として作用するが、その構成は同じである。
【００５５】
図４は、ノード装置１の概要構成例を示す図である。
【００５６】
各ノード装置１は、図４に示すように、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データおよびプログラムを記憶するＲＯＭ等から構成されたコンピュータとしての制御部１１と、コンテンツデータ、インデックス情報、上記ＤＨＴおよびプログラム等を記憶保存（格納）するためのＨＤ等から構成された記憶手段としての記憶部１２（上記コンテンツデータは、保存されていないノード装置１もある）と、受信されたコンテンツデータ等を一時蓄積するバッファメモリ１３と、コンテンツデータに含まれるエンコードされたビデオデータ（映像情報）およびオーディオデータ（音声情報）等をデコード（データ伸張や復号化等）するデコーダ部１４と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部１５と、当該映像処理部１５から出力されたビデオ信号に基づき映像表示するＣＲＴ，液晶ディスプレイ等の表示部１６と、上記デコードされたオーディオデータをアナログオーディオ信号にＤ（Digital）／Ａ（Analog）変換した後これをアンプにより増幅して出力する音声処理部１７と、当該音声処理部１７から出力されたオーディオ信号を音波として出力するスピーカ１８と、ネットワーク８を通じて他のノード装置１との間の情報の通信制御を行うための通信部２０と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部１１に対して与える入力部（例えば、キーボード、マウス、或いは、操作パネル等）２１と、を備えて構成され、制御部１１、記憶部１２、バッファメモリ１３、デコーダ部１４および通信部２０はバス２２を介して相互に接続されている。
【００５７】
そして、制御部１１におけるＣＰＵが記憶部１２等に記憶された各種プログラムを実行することにより、ノード装置１全体を統括制御するようになっており、また、入力部２１からの指示信号に応じて、コンテンツデータ登録処理等を行うようになっている。ノード装置１は、実行されるプログラムに応じて、元の主情報を送信するノード装置、主情報を受信して転送するノード装置等として機能する。具体的には、ノード装置１の制御部１１は、存在問合せ手段、回答情報受信手段、間隔制御手段、転送判断手段、回答送信手段、問合せ情報転送手段又は回答情報判断手段として機能する。
【００５８】
［３．情報通信システムの概略］
本実施形態の情報通信システムＳの概略を説明する。本実施形態の情報通信システムＳは、各ノード装置１がＩＰアドレスとノードＩＤとを対応付けたルーティングテーブルを記憶部１２に記憶しており、ノード装置１がＩＰアドレスを記憶している他のノード装置１に対して存在を問い合わせ、当該ノード装置１の存在の有無に基づいて存在を問い合わせる間隔を変更するものである。具体的には、問合せに係るノード装置１が存在しなくなった場合等のルーティングテーブルに変更があった場合には、問合せの間隔を短くし、問合せに係るノード装置１が存在し続けている場合等のルーティングテーブルに変更がない場合には、問合せの間隔を長くすることにより、ルーティングテーブルの対応するノードＩＤの領域に対して適切な間隔で存在を問い合わせることができることとなる。
【００５９】
［３．１情報通信システムの動作］
次に、情報通信システムＳの動作について図５乃至図９を用いて説明する。
【００６０】
［３．１．１．情報通信システム全体の動作］
以下に、図５及び図６を参照して、情報通信システム全体の動作について説明する。
【００６１】
（存在確認）
一のノード装置１をノードＺ（ノードＩＤ：２１３２）とし、本例においてはノードＺが図５（Ａ）に示す４桁４進数からなるルーティングテーブルを保持していることを前提とする。このルーティングテーブルに示すように、ノードＩＤ（本発明の識別情報）のレベルと各レベルの注目桁Ｙからなる各領域に分けて、他のノード装置（ノードＡ〜ノードＧ）のＩＰアドレス（本発明のノード情報）を、ノードＺが記憶している。
【００６２】
ノードＺは、ルーティングテーブルとして記憶されているＩＰアドレスが有効か否か、すなわち、当該ＩＰアドレスに対応するノード装置１が存在しているか否かを確認するために、記憶しているノードＡ〜ノードＧの各ＩＰアドレスに対して、順番に存在問合せ情報を送信する。当該存在問合せ情報にはノードＩＤを含ませて、該当するノード装置１のＩＰアドレスに向けて存在問合せ情報を送信する。
【００６３】
ノードＺがこの存在問合せ情報をノードＡ（ノードＩＤ：０１３２）に送信した際に、ノードＡが存在している場合、ノードＡは存在問合せ情報を受信し、ノードＡのルーティングテーブルの中で問合せに係るノードＩＤ「０１３２」に最も近いノード装置１を検索し、最も近いノード装置１がノードＡ自身と判断して、自ノード装置が最もノードＩＤ「０１３２」に近い旨の回答情報を存在問合せ情報の送信元のノードＺに送信する。
【００６４】
ノードＺは、当該回答情報を受け取ると、回答情報の送信元であるノードＡのノードＩＤ「０１３２」を確認し、問合せに係るノードＡが存在していることを認識し、ルーティングテーブルは変更しない。この場合、ルーティングテーブルには変更がないため、次に存在問合せ情報を送信する間隔を長くする。
【００６５】
一方、ノードＺがこの存在問合せ情報をノードＦ（ノードＩＤ：２３１２）に送信した際に、図５（Ｂ）に示すようにノードＦが存在しなくなっていると、ノードＺは予め定められた所定の時間を過ぎても回答情報が得られないこととなる。
【００６６】
そのため、ノードＺは、問合せに係るノードＦが存在していないことを認識し、ノードＦのＩＰアドレスを削除することによりルーティングテーブルを更新する。この場合、ルーティングテーブルに変更があったため、次に存在問合せ情報を送信する間隔を短くする。
【００６７】
（ルーティングテーブルのメンテナンス）
また、ノードＺは、ＩＰアドレスを記憶しているノード装置１のみならず、ノード装置１のＩＰアドレスを記憶しておらず、ルーティングテーブルにおける空欄となっている部分に対応するノード装置１が新たに参加しているか否かを確認する。
【００６８】
本例においてはノードＺが図５（Ｂ）に示す４桁４進数からなるルーティングテーブルを保持していることを前提とする。このルーティングテーブルに示すように、ノードＩＤ（本発明の識別情報）の各領域に分けて、他のノード装置（ノードＡ〜ノードＥ、ノードＧ）のＩＰアドレス（本発明のノード情報）を、ノードＺが記憶している。ノードＺは、記憶していないノードＩＤの領域、例えばレベル２の注目する桁数が３の列（破線で囲んだ領域）に対し、存在問合せ情報を送信する。当該存在問合せ情報には、上述の存在確認と同様にノードＩＤを含ませて、該当するノード装置１に最も近いＩＰアドレスに向けて存在問合せ情報を送信する。この場合には、図５（Ｃ）に示すように、ノードＥに対してノードＩＤを仮に「２３００」として存在問合せ情報を送信する。仮に決めたノードＩＤは、当該ノードＩＤの領域に相当する「２３００」〜「２３３３」のいずれかであればよく、特に限定されない。
【００６９】
ノードＺがノードＩＤを「２３００」とした存在問合せ情報をノードＥに送信すると、ノードＥが存在問合せ情報を受信し、ノードＥはノードＥのルーティングテーブルの中で最も２３００に近いノード装置１を検索し、最も近いノード装置１がノードＦと判断してノードＦ（ノードＩＤ：２３１２）に存在問合せ情報を転送する。
【００７０】
存在問合せ情報を受信したノードＦは、ノードＦのルーティングテーブルの中で最も２３００に近いノード装置１を検索し、最も近いノード装置１がノードＦ自身と判断して、自ノード装置が最も２３００に近い旨の回答情報を、存在問合せ情報の送信元のノードＺに送信する。
【００７１】
ノードＺは、当該回答情報を受け取ると、回答情報の送信元であるノードＦのノードＩＤ「２３１２」を確認し、記憶していないノードＩＤの領域に該当するノード装置１であるため、ノードＦのＩＰアドレスを新たに記憶し、ルーティングテーブルを更新する。この場合、ルーティングテーブルに変更があったため、次に存在問合せ情報を送信する間隔を短くする。
【００７２】
一方、ノードＺがこのような問合せ情報をノードＥに送信した際に、ノードＥのルーティングテーブルの中で最も２３００に近いノード装置１を検索し、最も近いノード装置１がノードＥ自身と判断した場合には、図５（Ｄ）に示すように、ノードＥは自ノード装置が最も２３００に近い旨の回答情報を、存在問合せ情報の送信元のノードＺに送信する。
【００７３】
ノードＺは、当該回答情報を受け取ると、回答情報の送信元であるノードＥのノードＩＤ「２２０２」を確認し、ノードＥが記憶していないノードＩＤの領域に該当するノード装置１でなく、既に他のノードＩＤの領域にノードＥのＩＰアドレスが記憶されているため、ルーティングテーブルを変更しない。このとき、存在問合せ情報に係るノードＩＤの領域は、依然として他のノード装置１の情報を記憶しない状態となるため、ルーティングテーブルに変更がなく、次に存在問合せ情報を送信する間隔を長くする。
【００７４】
また、図示しないが、ノードＥがノードＩＤ「２３００」に該当するノード装置１のＩＰアドレスを記憶している場合、ノードＺがノードＩＤを「２３００」とした存在問合せ情報をノードＥに送信すると、ノードＥが存在問合せ情報を受信し、ノードＥはノードＥのルーティングテーブルの中で最も２３００に近いノード装置１を検索し、最も近いノード装置１（ノードＩＤ：２３００）に存在問合せ情報を転送する。存在問合せ情報を受信したノード装置１は、当該ノード装置１のルーティングテーブルの中で最も２３００に近いノード装置１を検索し、最も近いノード装置１が自ノード装置であると判断して、自ノード装置が最も２３００に近い旨の回答情報を、存在問合せ情報の送信元のノードＺに送信する。
【００７５】
ノードＺは、当該回答情報を受け取ると、回答情報の送信元であるノード装置１のノードＩＤ「２３００」を確認し、問合せに係るノード装置が存在していたため、ノードＩＤが「２３００」であるノード装置１のＩＰアドレスを記憶し、ルーティングテーブルを更新する。この場合、ルーティングテーブルに変更があったため、新たに記憶したノード装置１に対応するノードＩＤの領域の次に存在問合せ情報を送信する時刻の間隔を短くする。
【００７６】
また、ノードＺは回答情報の送信元のノード装置１が存在問合せ情報に係るノードＩＤの領域に該当するノード装置１でない場合であって、当該送信元のノード装置１に対応するノードＩＤの領域に他のノード装置１のＩＰアドレス等が記憶されていない場合には、当該回答情報の送信元のノード装置１のＩＰアドレス等を記憶し、ルーティングテーブルを更新する。この場合、ルーティングテーブルに変更があったため、次に存在問合せ情報を送信する間隔を短くする。
【００７７】
さらに、ノードＺは、回答情報以外の情報を受信した場合、例えばコンテンツを要求するための要求情報等を受信した場合に、同様に当該情報の送信元のノード装置１のノードＩＤに対応する領域に他のノード装置の情報を記憶していない場合には、送信元のノード装置１の情報を記憶し、ルーティングテーブルを更新することができる。この場合、ルーティングテーブルに変更があったため、次に存在問合せ情報を送信する間隔を短くする。
【００７８】
このようにルーティングテーブルのメンテナンスを行うことにより、記憶されているノード装置１が多くなり、素早く確実にコンテンツを見つけられる等、情報通信システムＳ全体の動作が速やかに進むこととなる。
【００７９】
（存在問合せ情報送信間隔）
本実施形態においては、上述のように、ノード装置１の記憶するルーティングテーブルの変更の有無によって、ルーティングテーブルのレベルと列（各レベルの注目桁）によって分けられたノードＩＤの領域毎に、順に、存在問合せ情報を送信する間隔を変更している。
【００８０】
図６に存在問合せ情報を送信する間隔Ｘ（以下、存在問合せ間隔Ｘ、又は単に間隔Ｘという。）の変動の一例を示す。図６は、ルーティングテーブルに変更があった場合、存在問合せ間隔Ｘを１／２倍に短くし、ルーティングテーブルに変更がない場合、存在問合せ間隔Ｘを２倍に長くしている例である。また、存在問合せ間隔Ｘの最大値を２４時間としている。図６の横軸が存在問合せ回数（単位：回）を示し、縦軸が存在問合せ間隔Ｘ（単位：時間）を示す。なお、存在問合せ回数によって問い合わせるルーティングテーブルのノードＩＤの領域が異なっていくが、存在問合せ回数とノードＩＤの領域の関係については説明を省略する。
【００８１】
図６に示すように、存在問合せ間隔Ｘの初期値を２時間とすると、ルーティングテーブルに変更がない状態が二回続くことにより、間隔Ｘが８時間（３回）と長くなり、その後変更があると間隔Ｘが４時間（４回）と短くなる。さらにルーティングテーブルに変更がない状態が三回続くことにより、間隔Ｘが２４時間（７回）と長くなり、その後変更がなくても間隔Ｘが最大値の２４時間（８回）を維持し、変更があった場合には間隔Ｘが１２時間（９回）と短くなる。さらにルーティングテーブルに変更がない状態となることにより、間隔Ｘが２４時間（１０回）と長くなり、その後変更がなくても間隔Ｘが最大値の２４時間（１１〜１３回）で推移し、変更があった場合には間隔Ｘが１２時間（１４回）と短くなる。存在問合せ回数６回から１３回まではルーティングテーブルの変更が少なく、存在問合せ間隔Ｘが比較的長く、定常状態といえる。
【００８２】
次いで、ルーティングテーブルの変更が四回続けてあることにより、間隔Ｘが０．７５時間（１８回）と短くなり、その後変更がなく間隔Ｘが１．５時間（１９回）と長くなる。さらに変更あり、なしが不規則に続くため、存在問合せ間隔Ｘはごく短い時間のまま推移する。チェック回数１４回から２７回まではルーティングテーブルの変更が多く、存在問合せ間隔Ｘが比較的短いため、情報通信システムＳ内の当該ノードＩＤの領域において、一斉にノード装置１が参加したり、一斉にノード装置１が脱退するなど、大規模な変化があったと考えられる。
【００８３】
次いで、ルーティングテーブルに変更があり、間隔Ｘが３時間（２８回）と短くなり、その後二回は変更がなく、間隔Ｘが１２時間（３０回）と長くなる。さらに変更なし、あり、次いでしばらく変更がない状態が続くため、間隔Ｘが長くなり、３５回においてまた間隔Ｘが２４時間となる。さらに、３６回、３７回と、ルーティングテーブルに変更がないために存在問合せ間隔Ｘは最大値である２４時間のまま推移している。チェック回数２８回から３７回まではルーティングテーブルの変更が少なくなり、存在問合せ間隔Ｘが徐々に長くなるため、情報通信システムＳ内の当該ノードＩＤの領域における大規模な変化が落ち着き、定常状態に復旧したと考えられる。
【００８４】
［３．１．２．ノード装置の動作］
次に、（１）一のノード装置１（上述のノードＺ）がルーティングテーブルの各領域に対して存在問合せ情報を送信し、存在問合せ間隔Ｘを変更する処理（以下、存在問合せ間隔変更処理という。）、（２）（１）の処理におけるルートノード検索処理、及び、（３）当該ノードＺから存在問合せ情報を受信した他のノード装置１（例えば、上述のノードＡ、ノードＥ）で行われる処理（以下、存在問合せ対応処理という。）について図７乃至図９を用いて詳細に説明する。なお、ノード装置１の動作の説明において、ルーティングテーブルにＩＰアドレス及びノードＩＤを記憶することを「登録する」ともいう。
【００８５】
（１）存在問合せ間隔変更処理
図７を参照してノードＺの存在問合せ間隔変更処理について説明する。なお、ノードＺは、上述の一例のように、図５（Ｂ）に示すルーティングテーブルを保持（記憶）しているものとする。
【００８６】
ノードＺの制御部１１は、自ノード装置に電源が入れられ、当該ノードＺの各種設定を初期化すると、存在問合せ間隔変更処理を開始する（スタート）。
【００８７】
存在問合せ間隔変更処理が開始されると、制御部１１は、存在問合せ間隔Ｘを初期値、例えば２時間とし、次の存在問合せ時刻Ｔｍを現在時刻（例えば、２００５年８月１日１４時２０分００秒）とし、ターゲットとなるルーティングテーブルの位置［ｉ］［ｊ］を［０］［０］に決定する（ステップＳ１）。
【００８８】
ここで、ルーティングテーブルの位置について説明すると、領域［ｉ］［ｊ］における［ｉ］はレベル数に対応し、［ｊ］は各レベルにおける注目桁Ｙの列に対応する。本実施形態では、図５（Ｂ）のルーティングテーブルにおける最も上側で最も左側でありノードＡが記憶されている領域を［０］［０］とし、レベルが上がり下側の領域になるにつれて［ｉ］の値が増加し、注目桁の数が上がり右側の領域になるにつれて［ｊ］の値が増加する。本実施形態においては、ルーティングテーブルにおけるノードＩＤが４桁４進数で構成されるため、［ｉ］の最大値が［３］となり、［ｊ］の最大値も［３］となる。
【００８９】
具体的に、図５（Ｂ）のルーティングテーブルにおける最も下側で最も右側でありノードＩＤ「２１３３」に対応する領域を［３］［３］とする。後述するステップＳ１４にあるように、ｊの値が全列の値である４と同一となると、当該レベルの全ての領域について各処理が完了しているため次のレベルに移行する。また、後述するステップＳ１９にあるように、ｉの値が全レベルの値である４と同一となると、全ての領域について各処理が完了しているため、最初の［０］［０］の領域に移行する。
【００９０】
フローチャートに戻ると、次いで、制御部１１は、ルーティングテーブルの［ｉ］［ｊ］の位置、すなわち［０］［０］の位置に自ノード装置が登録されているか否かを判断する（ステップＳ２）。制御部１１は、図５（Ｂ）に示すルーティングテーブルを参照し、［０］［０］の位置にノードＡが登録されており、自ノード装置が登録されていないと判断すると（ステップＳ２：ＮＯ）、次の問合せ時刻Ｔｍを、それまでの問合せ時刻Ｔｍ＋Ｘの時刻とする（ステップＳ３）。具体的には、Ｔｍが２００５年８月１日１４時２０分００秒であり、間隔Ｘが２時間であるため、次の問合せ時刻Ｔｍは、２００５年８月１日１６時２０分００秒である。
【００９１】
ノードＺの制御部１１は、現在時刻が次の存在問合せ時刻Ｔｍ以降であるか否かを判断し（ステップＳ４）、現在時刻が次の存在問合せ時刻Ｔｍ以降でないと判断した場合には（ステップＳ４：ＮＯ）、電源がオフとなったか否か判断する（ステップＳ５）。具体的に、次の存在問合せ時刻Ｔｍである２００５年８月１日１６時２０分００秒の前である場合には現在時刻が次の存在問合せ時刻Ｔｍ以降でないと判断し、通常、すぐに電源オフとはならないため、電源がオフとなっていないと判断し（ステップＳ５：ＮＯ）、ステップＳ４に戻る。このようにして、現在時刻が次の存在問合せ時刻になるまでステップＳ４とＳ５とを繰り返す。実際には、次の存在問合せ時刻Ｔｍまで待って、次のステップＳ６が行われ、この間に電源が切れると存在問合せ間隔変更処理が終了することとなる。
【００９２】
現在時刻が次の存在問合せ時刻Ｔｍ以降となると、制御部１１は、現在時刻が次の存在問合せ時刻Ｔｍ以降であると判断し（ステップＳ４：ＹＥＳ）、ルーティングテーブルの［０］［０］に他のノード装置１が登録されているか否かを判断する（ステップＳ６）。具体的に、ルーティングテーブルの［０］［０］にはノードＡが登録されているため、そのように判断し（ステップＳ６：ＹＥＳ）、登録されているノード装置のノードＩＤを「ＩＤ１」と決めて記憶する（ステップＳ７）。具体的には、ルーティングテーブル［０］［０］の位置に登録されているノードＡのノードＩＤ「０１３２」を「ＩＤ１」と決めて記憶する。
【００９３】
制御部１１は、このとき、テーブル変更フラグをオフにする（ステップＳ８）。このテーブル変更フラグは、後述するように、存在問合せ間隔Ｘを変更する基準となるものである。テーブル変更フラグがオンであれば、ルーティングテーブルに変更があったことを示し、テーブル変更フラグがオフであれば、ルーティングテーブルに変更がなかったことを示す。
【００９４】
次いで、存在問合せ手段としての制御部１１は、「ＩＤ１」についてのルートノードを検索する処理を行い、回答情報の送信元となるノード装置（ルートノード；この例ではノードＡ）のノードＩＤを「ＩＤ２」と決めて記憶する（ステップＳ９）。このステップＳ９の処理は、図８の（２）ルートノード検索処理として後述する。なお、この処理において、テーブル変更フラグがオンになる場合がある。
【００９５】
次いで、回答情報判断手段としての制御部１１は、「ＩＤ２」が新たにルーティングテーブルに登録が可能か否かを判断する（ステップＳ１０）。ここで、「ＩＤ２」が存在しているノードＡに対応するものである場合は、「ＩＤ２」が「ＩＤ１」と同一であるため、新たに登録する必要がなく、制御部１１は、「ＩＤ２」は新たにルーティングテーブルに登録が可能でないと判断する（ステップＳ１０：ＮＯ）。このように、回答情報判断手段としての制御部１１は、回答情報の送信元のノード装置（「ＩＤ２」に対応）が存在問合せ情報に対応するノード装置（「ＩＤ１」に対応）か否かを判断し、この結果及びルーティングテーブルの登録状況に応じて「ＩＤ２」が新たに登録可能か否かを判断している。
【００９６】
次いで、間隔制御手段としての制御部１１は、上述のテーブル変更フラグがオンか否かを判断する（ステップＳ１１）。具体的に、この処理においてはテーブル変更フラグがオフのままであれば、制御部１１は、テーブル変更フラグがオンでないと判断し（ステップＳ１１：ＮＯ）、存在問合せ間隔Ｘを２倍の値にする（ステップＳ１２）。具体的には、存在問合せ間隔Ｘが２時間であったのを２倍の４時間とする。
【００９７】
次いで、制御部１１は、ターゲットとなるノードＩＤの領域［ｉ］［ｊ］の［ｊ］を［ｊ＋１］の値に変更する（ステップＳ１３）。具体的には、元のノードＡの領域［ｉ］［ｊ］が［０］［０］であったため、制御部１１は、［ｉ］［ｊ］を［０］［１］に変更する。次いで、制御部１１は、変更後の［ｊ］の値が全列の値と同一か否かを判断する（ステップＳ１４）。具体的には、変更後の［ｊ］の値、［１］が全列の値［４］と同一でないため、制御部１１は、変更後の［ｊ］の値が全列の値と同一でないと判断し（ステップＳ１４：ＮＯ）、ステップＳ２に戻る。このようにして、ルーティングテーブルの一のノードＩＤの領域［０］［０］における存在問合せ間隔変更処理が終了し、次の領域［０］［１］の処理に移る。
【００９８】
次いで、制御部１１は、ルーティングテーブルの［０］［１］の領域に記憶されているノードＢについて、ステップＳ２からの処理を行う。ルーティングテーブルの位置［０］［１］の領域に自ノード装置が登録されていないため（ステップＳ２：ＮＯ）、ステップＳ３に進む。
【００９９】
次いで、制御部１１は、次の存在問合せ時刻Ｔｍをそれまでの存在問合せ時刻Ｔｍに存在問合せ間隔Ｘを足した値とする（ステップＳ３）。具体的に、制御部１１は、次の存在問合せ現在時刻Ｔｍである２００５年８月１日１６時２０分００秒に、変更した存在問合せ間隔Ｘ４時間を足し、次の存在問合せ時刻Ｔｍを２００５年８月１日２０時２０分００秒とする。
【０１００】
ステップＳ４からＳ８を経て、２００５年８月１日２０時２０分００秒以降に、ノードＢのノードＩＤ「１００１」を「ＩＤ１」として記憶し、テーブル変更フラグをオフにする。ステップＳ９において、ノードＢがシステムＳから脱退している場合には、制御部１１はノードＢから回答情報を受信できない。また、ステップＳ９において、テーブル変更フラグがオンになり、ノードＢのノード情報が削除され、他のノード装置１からノードＢのノードＩＤのルートノードである旨の回答情報が送信されてくるため、当該回答情報の送信元のノード装置のノードＩＤを「ＩＤ２」として記憶する。
【０１０１】
次いで、制御部１１は、ステップＳ１０において、「ＩＤ２」が新たに登録可能であれば（ステップＳ１０：ＹＥＳ）、「ＩＤ２」のノード装置１のノード情報をルーティングテーブルに登録し（ステップＳ１５）、テーブル変更フラグをオンにする（ステップＳ１６）。なお、「ＩＤ２」が新たに登録可能とは、ルーティングテーブルにおける「ＩＤ２」に該当する領域に他のノード装置１が登録されていない場合をいう。
【０１０２】
次いで、制御部１１は、ステップＳ１１において、テーブル変更フラグがオンであると判断し（ステップＳ１１：ＹＥＳ）、存在問合せ間隔Ｘの値を１／２倍の値にする（ステップＳ１７）。具体的には、存在問合せ間隔Ｘが４時間であったのを１／２倍の２時間とする。なお、これ以降の図７の説明において、存在問合せ間隔Ｘ及び次の問合せ時刻Ｔｍの具体的数値は省略して説明するが、上述してきたのと同様に、ステップＳ１２またはＳ１７において存在問合せ間隔Ｘが変更され、これに基づいてステップＳ３において次の存在問合せ時刻Ｔｍが決定される。
【０１０３】
次いで、制御部１１は、ステップＳ１３において、元のノードＢの領域［ｉ］［ｊ］が［０］［１］であったため、制御部１１は、［ｉ］［ｊ］を［０］［２］に変更する。次いで、制御部１１は、ステップＳ１４において、変更後の［ｊ］の値、［２］が全列の値［４］と同一でないため、制御部１１は、変更後の［ｊ］の値が全列の値と同一でないと判断し（ステップＳ１４：ＮＯ）、ステップＳ２に戻る。このようにして、ルーティングテーブルの一のノードＩＤの領域［０］［１］における存在問合せ間隔変更処理が終了し、次の領域［０］［２］の処理に移る。
【０１０４】
次いで、制御部１１は、ルーティングテーブルの［０］［２］の領域に記憶されているノード装置について、ステップＳ２からの処理を行う。ここで、ルーティングテーブルの領域［０］［２］に自ノード装置が登録されているため（ステップＳ２：ＹＥＳ）、ステップＳ１３に進む。
【０１０５】
次いで、制御部１１は、ステップＳ１３において、自ノード装置が存在する領域［ｉ］［ｊ］が［０］［２］であったため、制御部１１は、［ｉ］［ｊ］を［０］［３］に変更する。次いで、制御部１１は、ステップＳ１４において、変更後の［ｊ］の値、［３］が全列の値［４］と同一でないため、制御部１１は、変更後の［ｊ］の値が全列の値と同一でないと判断し（ステップＳ１４：ＮＯ）、ステップＳ２に戻る。このようにして、ルーティングテーブルの一のノードＩＤの領域［０］［２］が自ノード装置の存在する領域であるため、当該領域の存在問合せ間隔変更処理は行わず、次の領域［０］［３］の処理に移る。
【０１０６】
次いで、制御部１１は、ルーティングテーブルの［０］［３］の領域に記憶されているノードＣについて、ステップＳ２からの処理を行う。ルーティングテーブルの位置［０］［３］の領域に自ノード装置が登録されていないため（ステップＳ２：ＮＯ）、ステップＳ３に進む。そして、ステップＳ３〜Ｓ１２またはＳ１５〜１７を経て、ステップＳ１３に進む。
【０１０７】
次いで、制御部１１は、ステップＳ１３において、元のノードＣが存在する領域［ｉ］［ｊ］が［０］［３］であったため、制御部１１は、［ｉ］［ｊ］を［０］［４］に変更する。次いで、制御部１１は、ステップＳ１４において、変更後の［ｊ］の値、［４］が全列の値［４］と同一であるため、制御部１１は、変更後の［ｊ］の値が全列の値と同一であると判断し（ステップＳ１４：ＹＥＳ）、ターゲットとなるノードＩＤの領域（ルーティングテーブルの位置）［ｉ］［ｊ］の［ｊ］を０、［ｉ］をｉ＋１の値にする（ステップＳ１８）。具体的には、元のノードＣが存在する領域［ｉ］［ｊ］が［０］［３］であったため、制御部１１は、［ｉ］［ｊ］を［１］［０］に変更する。
【０１０８】
次いで、制御部１１は、変更後の［ｉ］の値が全レベルの値と同一か否かを判断する（ステップＳ１９）。具体的には、変更後の［ｉ］の値、［１］が全レベルの値［４］と同一でないため、制御部１１は、変更後の［ｉ］の値が全レベルの値と同一でないと判断し（ステップＳ１９：ＮＯ）、ステップＳ２に戻る。このようにして、ルーティングテーブルのレベル１のノードＩＤ全ての領域［０］［−］における存在問合せ間隔変更処理が終了し、次の領域［１］［−］の処理に移る。
【０１０９】
次いで、ルーティングテーブルにおけるレベル２に登録されているノードＤ、ノードＥについても同様の各ステップにより処理が行われる。
【０１１０】
そして、ノードＩＤ［１］［３］のノード装置１の情報が登録（記憶）されていない領域についての処理を説明する。
【０１１１】
ステップＳ２からＳ６を経て、次の問合せ時刻Ｔｍ以降に、ルーティングテーブルの［１］［３］に他のノード装置１が登録されているか否かを判断する（ステップＳ６）。具体的に、ルーティングテーブルの［１］［３］には他のノード装置１が登録されていないため、そのように判断し（ステップＳ６：ＮＯ）、ルーティングテーブルの位置［１］［３］に登録できるノード装置の適当なノードＩＤを「ＩＤ１」と決めて記憶する（ステップＳ２０）。ここでは、図５（Ｃ）に示すように、ルーティングテーブルの位置［１］［３］に登録できるノードＩＤを「２３００」とする。なお、ルーティングテーブルの位置［１］［３］に登録できるノードＩＤは「２３００」〜「２３３３」であるため、この範囲内のノードＩＤを「ＩＤ１」として用いることができる。
【０１１２】
制御部１１は、このとき、テーブル変更フラグをオフにする（ステップＳ８）。そして、後述するステップＳ９を経て、ノードＩＤ「２３１２」のノードＦから回答情報が送信されてきた場合には、制御部１１は、当該ノードＩＤ「２３１２」を「ＩＤ２」として記憶する。
【０１１３】
次いで、制御部１１は、ステップＳ１０において、「ＩＤ２」が新たにルーティングテーブルに登録が可能であると判断する（ステップＳ１０：ＹＥＳ）。なお、「ＩＤ２」である「２３１２」は、ルーティングテーブルの空いている［１］［３］の領域（レベル２、各レベルの注目桁Ｙ＝３）に登録できるノードＩＤであるため、制御部１１は、上述のように判断する。
【０１１４】
次いで、制御部１１は、「ＩＤ２」に対応するノードＦのノード情報をルーティングテーブルに登録し（ステップＳ１５）、テーブル変更フラグをオンにする（ステップＳ１６）。
【０１１５】
次いで、制御部１１は、ステップＳ１１において、テーブル変更フラグがオンであると判断し（ステップＳ１１：ＹＥＳ）、存在問合せ間隔Ｘの値を１／２倍の値にする（ステップＳ１７）。
【０１１６】
次いで、制御部１１は、ステップＳ１３において、ノードＦの領域［ｉ］［ｊ］が［１］［３］であったため、制御部１１は、［ｉ］［ｊ］を［１］［４］に変更する。次いで、制御部１１は、ステップＳ１４において、変更後の［ｊ］の値、［４］が全列の値［４］と同一であると判断し（ステップＳ１４：ＹＥＳ）、ステップＳ１８において、ノードＦが存在する領域［ｉ］［ｊ］が［１］［３］であったため、領域［ｉ］［ｊ］を［２］［０］に変更する。
【０１１７】
次いで、制御部１１は、ステップＳ１９において、変更後の［ｉ］の値、［２］が全レベルの値［４］と同一でないと判断し（ステップＳ１９：ＮＯ）、ステップＳ２に戻る。このようにして、ルーティングテーブルのレベル２のノードＩＤ全ての領域［１］［−］における存在問合せ間隔変更処理が終了し、次の領域［２］［−］の処理に移る。
【０１１８】
次いで、ルーティングテーブルにおけるレベル３のノードＧ、他のノード装置１が登録されていない領域［２］［１］、［２］［２］についても同様の各ステップにより処理が行われる。さらに、ルーティングテーブルにおけるレベル４の他のノード装置１が登録されていない領域［３］［０］、［３］［１］、［３］［３］についても同様の各ステップにより処理が行われる。
【０１１９】
ルーティングテーブルの領域［３］［３］について、各ステップを経て、ステップＳ１９まで進むと、制御部１１は、ステップＳ１９において、変更後の［ｉ］の値、［４］が全レベルの値［４］と同一であると判断し（ステップＳ１９：ＹＥＳ）、ターゲットとなるノードＩＤの領域（ルーティングテーブルの位置）［ｉ］［ｊ］の［ｉ］を０にする（ステップＳ２１）。具体的には、領域［ｉ］［ｊ］が［０］［４］となっているため、制御部１１は、［ｉ］［ｊ］を［０］［０］に変更し、ステップＳ２に戻る。
【０１２０】
このようにして、存在問合せ間隔変更処理を行う領域がルーティングテーブルの最初の領域［０］［０］に戻り、当該ノード装置（ノードＺ）の電源がオンになっている間は、上述してきたように、各領域について順番に存在問合せ及び問合せ間隔の変更が行われる。そして、ノードＺの電源がオフになった場合には、ステップＳ５において、制御部１１は電源がオフであると判断し（ステップＳ５：ＹＥＳ）、当該存在問合せ間隔変更処理を終了する（エンド）。
【０１２１】
このようにして、ルーティングテーブルにおける各ノードＩＤの領域について、順番に存在問合せ情報を送信し、その存在の有無を確認することができ、ルーティングテーブルの変更の有無に基づいて存在問合せ間隔Ｘを変更することができる。なお、存在問合せを送信する順番は、ルーティングテーブルに記載された（並んでいる）順としたが、各領域に平等に存在問合せ情報を送信することができれば、この順番は限定されるものではない。
【０１２２】
（２）ルートノード検索処理
図８を参照して、ノードＺにおける上述のステップＳ９に対応するルートノード検索処理について説明する。以下においては、まず、ルーティングテーブルの領域［ｉ］［ｊ］が［０］［０］であるノードＡの領域を例に説明する。なお、ルートノードは、目的のノードＩＤに対し、ノードＩＤ空間において最も近いと判断されるノードＩＤに対応するノード装置１を示す。
【０１２３】
ノードＺの制御部１１は、上述の図７におけるステップＳ８によりノードＡの領域［０］［０］についてテーブル変更フラグをオフにすると（ステップＳ８）、図８のルートノード検索処理を開始する（ステップＳ９：スタート）。
【０１２４】
存在問合せ手段としての制御部１１は、ノードＩＤ空間において「ＩＤ１」のノードＩＤに最も近いノード装置のノードＩＤをテーブルから選択する（ステップＳ３１）。具体的には、図７を用いて説明したように、「ＩＤ１」が「０１３２」であるため、当該ノードＩＤ「０１３２」が「ＩＤ１」のノードＩＤに最も近いノードＩＤとして選択される。
【０１２５】
次いで、制御部１１は、選択したノードＩＤが自ノード装置のノードＩＤか否かを判断する（ステップＳ３２）。具体的には、選択したノードＩＤ「０１３２」は自ノード装置のノードＩＤ「２１３２」ではないため、制御部１１はそのように判断し（ステップＳ３２：ＮＯ）、存在問合せ手段としての制御部１１は、選択したノードＩＤに対応するノード装置１に「ＩＤ１」の存在問合せ情報を送信する（ステップＳ３３）。ここでは、選択したノードＩＤ「０１３２」に対応するノードＡに対し、「ＩＤ１」である「０１３２」のノード装置の存在の有無を問い合わせる。問い合わせられたノードＡの処理については、図９を用いて後述する。
【０１２６】
ノードＡが存在している場合には、ノードＡ自身が当該ノードＩＤのルートノードになるため、その旨の回答情報がノードＡからノードＺに送信される。そこで、回答情報受信手段としての制御部１１は、回答情報を受信したか否かを判断し（ステップＳ３４）、ここでは、回答情報を受信しているため（ステップＳ３４：ＹＥＳ）、回答情報の送信元のノードＩＤを「ＩＤ２」として記憶する（ステップＳ３５）。具体的に、制御部１１は、回答情報の送信元であるノードＡのノードＩＤ「０１３２」を「ＩＤ２」として記憶し、ルートノード検索処理を終了して（エンド）、図８のステップＳ１０に進む。
【０１２７】
次いで、ルーティングテーブルの領域［ｉ］［ｊ］が［０］［１］であるノードＢの領域を例に説明する。
【０１２８】
ノードＺの制御部１１は、上述の図７におけるステップＳ８によりノードＢの領域［０］［１］についてテーブル変更フラグをオフにすると（ステップＳ８）、図８のルートノード検索処理を開始する（ステップＳ９：スタート）。
【０１２９】
ノードＺの制御部１１は、ステップＳ３１において、ノードＢの領域についての「ＩＤ１」が「１００１」であるため、当該ノードＩＤ「１００１」が「ＩＤ１」のノードＩＤに最も近いノードＩＤとして選択する。
【０１３０】
次いで、制御部１１は、ステップＳ３２において、選択したノードＩＤ「１００１」は自ノード装置のノードＩＤ「２１３２」ではないと判断し（ステップＳ３２：ＮＯ）、ステップＳ３３において、選択したノードＩＤ「１００１」に対応するノードＢに対し、「ＩＤ１」である「１００１」のノード装置の存在の有無を問い合わせる。
【０１３１】
ノードＢが存在しなくなっている場合には、ノードＢから回答情報が得られないため、制御部１１は、ステップＳ３４において、回答情報を受信していないと判断し（ステップＳ３４：ＮＯ）、問い合わせてから、すなわち存在問合せ情報を送信してから所定の時間が経過したか否かを判断する（ステップＳ３６）。具体的には、所定の時間を例えば２分と設定しておき、存在問合せ情報を送信してから２分が経過していない場合には、そのように判断して（ステップＳ３６：ＮＯ）ステップＳ３４の判断に戻り、当該所定の時間が経過する（ステップＳ３６：ＹＥＳ）か、または、回答情報を受信する（ステップＳ３４：ＹＥＳ）までステップＳ３４：ＮＯ、ステップＳ３６：ＮＯを繰り返す。
【０１３２】
次いで、制御部１１は、問い合わせてから所定の時間が経過した場合（ステップＳ３６：ＹＥＳ）には、選択したノードＩＤに対応するノード装置がシステムＳから脱退したと判断されるため、選択したノードＩＤのノード情報をルーティングテーブルから削除する（ステップＳ３７）。具体的には、ノードＺの制御部１１は、ルーティングテーブルからノードＢのノード情報を削除する。
【０１３３】
次いで、制御部１１は、ルーティングテーブルに変更があったため、テーブル変更フラグをオンにし（ステップＳ３８）、ステップＳ３１に戻る。
【０１３４】
次いで、制御部１１は、ステップＳ３１において、ノードＢの領域についての「ＩＤ１」が「１００１」であるため、ノード情報が削除されたノードＢ以外で「ＩＤ１」のノードＩＤに最も近いノードＡのノードＩＤを選択する。
【０１３５】
そして、制御部１１は、ステップＳ３２：ＹＥＳ、Ｓ３３、Ｓ３４：ＹＥＳを経ると、ステップＳ３５において、回答情報を受信したあるノード装置１のノードＩＤを「ＩＤ２」とし、ルートノード検索処理を終了する（エンド）。なお、ノードＡは、図９を用いて後述するように、存在問合せ情報の転送処理を行う。
【０１３６】
また、詳述しないが、ステップＳ３１において、ルーティングテーブルにおける他のノード装置１が登録されていない領域であって、上述の［１］［３］の領域について存在問合せ情報を送信する場合には、「ＩＤ１」である「２３００」に最も近いノードＥのノードＩＤを選択し、ノードＥに対して存在問合せ情報を送信することとなる（ステップＳ３３）。
【０１３７】
また、ルーティングテーブルにおける他のノード装置１が登録されていない領域であって、上述の［３］［１］の領域について存在問合せ情報を送信する場合について説明する。この場合には、「ＩＤ１」は「２１３１」となるため、ステップＳ３１において、ノードＺの制御部１１は、「ＩＤ１」である「２１３１」に最も近いノード装置のノードＩＤとして、自ノード装置のノードＩＤ「２１３２」を選択する。次いで、制御部１１は、ステップＳ３２において、選択したノードＩＤは自ノード装置のノードＩＤ「２１３２」であると判断する（ステップＳ３２：ＹＥＳ）。次いで、制御部１１は、自ノード装置のノードＩＤ「２１３２」を「ＩＤ２」として記憶し（ステップＳ３９）、当該処理を終了する（エンド）。なお、自ノード装置のノードＩＤを「ＩＤ２」とした場合には、上述のステップＳ１０において、「ＩＤ２」は新たに登録が可能でない（ステップＳ１０：ＮＯ）と判断される。
【０１３８】
このように、（１）の存在問合せ間隔変更処理と、（２）のルートノード検索処理において、ルーティングテーブルに変更があった場合にテーブル変更フラグがオンにされ、ルーティングテーブルに変更がなかった場合にはテーブル変更フラグがオフのままであるため、このテーブル変更フラグに応じて（１）の処理におけるステップＳ１１、Ｓ１２、Ｓ１７で存在問合せ間隔Ｘが変更されることとなる。
【０１３９】
（３）存在問合せ対応処理
図９を参照してノードＺから存在問合せ情報を受信したノードＡ及びノードＥの存在問合せ対応処理について説明する。ノードＡ及びノードＥは、図８におけるステップＳ３３において、ノードＺが送信した存在問合せ情報を受信したことを前提とする。
【０１４０】
まず、ノードＡは、ノードＺから存在問合せ情報を受信すると、存在問合せ対応処理を開始する（スタート）。ノードＡの制御部１１は、自ノード装置のルーティングテーブルから、受信した存在問合せ情報に含まれるノードＩＤに最も近いノード装置のノードＩＤを選択する（ステップＳ４１）。具体的に、ノードＡは、受信した存在問合せ情報にノードＩＤ「０１３２」が含まれているため、このノードＩＤに最も近いノード装置１は自ノード装置であると判断し、自ノード装置のノードＩＤ「０１３２」を選択する。
【０１４１】
次いで、転送判断手段としての制御部１１は、選択したノードＩＤが自ノード装置のノードＩＤか否かを判断する（ステップＳ４２）。具体的には、制御部１１は、選択したノードＩＤ「０１３２」が自ノード装置のノードＩＤであるため、そのように判断し（ステップＳ４２：ＹＥＳ）、回答送信手段としての制御部１１は、自ノード装置が問合せに係るノード装置１のルートノードである旨の回答情報を存在問合せ情報の送信元のノード装置に送信し（ステップＳ４３）、存在問合せ対応処理を終了する。具体的には、ノードＡは、自己がルートノードである旨の回答情報をノードＺに送信する。なお、ステップＳ４３においてノードＡが回答情報を送信すると、ノードＺにおいて、図８におけるステップＳ３４：ＹＥＳの処理が開始される。なお、上述の処理は、存在問合せ情報の送信元であるノード装置１（ノードＺ）以外のノード装置１から転送されてきた場合にも同様である。
【０１４２】
また、図５（Ｃ）に示すように、ノードＥがノードＩＤ「２３００」に係る存在問合せ情報を受信した場合を例に存在問合せ対応処理について説明する。
【０１４３】
ノードＥは、ノードＺから存在問合せ情報を受信すると、存在問合せ対応処理を開始する（スタート）。ノードＥの制御部１１は、ステップＳ４１として、受信した存在問合せ情報にノードＩＤ「２３００」が含まれているため、ルーティングテーブルにおいてこのノードＩＤに最も近いノード装置１はノードＩＤ「２３１２」であるノードＦであると判断し、ノードＩＤ「２３１２」を選択する。
【０１４４】
次いで、転送判断手段としての制御部１１は、選択したノードＩＤ「２３１２」が自ノード装置のノードＩＤでないため、選択したノードＩＤが自ノード装置のノードＩＤでないと判断する（ステップＳ４２：ＮＯ）。そして、問合せ情報転送手段としての制御部１１は、選択したノードＩＤに対応するノード装置１に存在問合せ情報を送信（転送）する（ステップＳ４４）。具体的には、ノードＥは、選択したノードＩＤに対応するノードＦに存在問合せ情報を転送する。
【０１４５】
次いで、制御部１１は、存在問合せ情報の転送に成功したか否かを判断し（ステップＳ４５）、転送に成功した場合には（ステップＳ４５：ＹＥＳ）、存在問合せ対応処理を終了する（エンド）。
【０１４６】
なお、ステップＳ４５において、転送先のノード装置１が存在しなくなっており、転送に成功しなかった場合には（ステップＳ４５：ＮＯ）、制御部１１は、当該存在しなくなったノード装置１のノード情報をルーティングテーブルから削除し（ステップＳ４６）、ステップＳ４１に戻る。次いで、制御部１１は、ステップＳ４１、Ｓ４２を経て、転送可能なノード装置１に対して存在問合せ情報を送信し（ステップＳ４４）、又は、自ノード装置がルートノードである旨の回答情報を送信し（ステップＳ４３）、上述のような各処理が行われて、存在問い合わせ対応処理が終了する（エンド）。
【０１４７】
なお、ステップＳ４４においてノードＥが存在問合せ情報を転送すると、ノードＦにおいて、同様に、図９におけるステップＳ４１における処理が開始される。上述の処理は、存在問合せ情報の送信元のノード装置１（ノードＺ）以外のノード装置１から転送されてきた場合にも同様である。
【０１４８】
［４．変形形態］
上述の各実施形態においては、通信経路を介して互いに接続された複数のノード装置の参加により形成されたピアツーピア型の情報通信システムＳであって、分散ハッシュテーブル（ＤＨＴ）を利用したルーティングテーブルを各ノード装置１が記憶していることとして説明したが、本発明はこの形態に限定されない。具体的には、各ノード装置１が情報通信システムＳ内における他の一部のノード装置１の情報を記憶しており、記憶しているノード装置１の存在を問い合わせることによりノード装置の存在を確認する形態であれば、本発明を適用することができる。
【０１４９】
また、ノード装置１、ＤＨＴを利用したルーティングテーブルのように、他のノード装置１の識別情報が属する領域毎に各ノード装置１の情報を記憶している場合には、好ましく本発明を適用できる。この場合には、ノード装置１は、識別情報の属する領域毎に存在問合せ情報を送信し、識別情報の属する領域毎に存在問合せ情報を送信する間隔Ｘを変更する形態とすることができる。
【０１５０】
上述の実施形態に説明したように、ノード装置１は、少なくとも記憶部１２に記憶している識別情報（本実施形態のノードＩＤ）に対応するノード装置１の存在を問い合わせる存在問合せ情報を他のノード装置１に送信し、当該存在問合せ情報に対して返信されてきた回答を示す回答情報を受信し、回答情報の受信成否又は回答情報の内容から認識される他のノード装置１の存在の有無に基づいて存在問合せ情報を送信する間隔Ｘを変更することができればよい。
【０１５１】
本発明における存在問合せ情報を送信する間隔は、上述の実施形態における存在問合せ間隔Ｘに該当する。間隔制御手段がこの存在問合せ情報を送信する間隔を変更する場合には、上述の実施形態のように存在問合せ間隔Ｘを変更して次の問合せ時刻Ｔｍを決定してもよいし、存在問合せ間隔Ｘのパラメータを具体的に用いることなく間隔を変更して次の問合せ時刻Ｔｍを決定してもよい。
【０１５２】
なお、上述の実施形態において、問合せ時刻Ｔｍを設定していたが、問い合わせ時間を設定し、設定した直後からの時間をタイマにてカウントし、設定時間となったら、問い合わせを行うようにしても良い。
【０１５３】
上述の実施形態においては、図７を用いて説明したように、次の存在問合せ時刻Ｔｍは、以前の存在問合せ時刻Ｔｍに変更後の存在問合せ間隔Ｘを加えた時刻としているが、本発明において、次の存在問合せ時刻Ｔｍの決定の仕方はこれに限定されない。具体的には、ノード装置１が存在問合せに係る他のノード装置１以外のノード装置１から回答情報を受信した場合や、コンテンツ要求情報等の他の情報を受信した場合に、当該情報の送信元のノード装置１の情報を新たにルーティングテーブル等に登録できる場合には、当該情報をルーティングテーブル等に記憶し、存在問合せ間隔Ｘを短く変更することができる。
【０１５４】
このように存在問合せ間隔Ｘを短くした場合には、直前の存在問合せ時刻Ｔｍに変更後の間隔Ｘを加えた時刻Ｔｍを次の存在問合せ時刻Ｔｍとすることもできる。このように次の存在問合せ時刻Ｔｍを変更すると、変更した存在問合せ時刻Ｔｍが現在時刻以降となる場合には、現在時刻を存在問合せ時刻Ｔｍとして、それ以降の存在問合せ間隔Ｘを変更することもできる。
【０１５５】
上述の実施形態において、図７を用いて説明したノードＺの存在問合せ間隔変更処理においては、存在問合せ間隔Ｘを変更するに際し、所定数を掛けること、具体的には２倍又は１／２倍にすることにより変更しているが、この形態は特に限定されない。存在問合せ情報を送信する間隔（存在問合せ間隔）Ｘの値に所定数を掛けるほか、存在問合せ間隔Ｘの値を所定数で割ること、存在問合せ間隔Ｘの値に所定数を足すこと、又は、存在問合せ間隔Ｘの値から所定数を引くこと、の少なくともいずれか一により間隔の値を変更することができる。この所定数も特に限定されず、存在問合せ間隔Ｘが適切な範囲で変動していくようにすればよい。
【０１５６】
また、上述の実施形態において、図６を用いて存在問合せ間隔Ｘを説明した際には上限値を設ける形態としたが、この形態も特に限定されず、下限値を設けてもよいし、上限値、下限値を設けなくてもよい。しかしながら、存在問合せ間隔Ｘの上限値、下限値を設けることにより、存在問合せ間隔Ｘが長すぎたり、短すぎるために情報通信システムＳの通信状況が悪化することを防止できる。この上限値、下限値も特に限定されず、存在問合せ間隔Ｘが適切な範囲で変動していくように設定すればよい。また、図７のフローチャートにおいては、存在問合せ間隔Ｘの上限値や下限値を設定した形態となっていないが、上限値を設定する場合には、ステップＳ１２の後に存在問合せ間隔Ｘの値が上限値よりも大きい場合には存在問合せ間隔Ｘを上限値に変更する処理を加えればよい。存在問合せ間隔Ｘの下限値を設定する場合には、ステップＳ１７の後に存在問合せ間隔Ｘの値が下限値よりも小さい場合には存在問合せ間隔Ｘを下限値に変更する処理を加えればよい。
【０１５７】
上述の実施形態においては、ルーティングテーブルの変更の有無が明確になるように「テーブル変更フラグ」を利用して存在問合せ間隔変更処理を行ったが、この「テーブル変更フラグ」を用いずに当該処理を行うことも可能である。
【０１５８】
上述の実施形態において、図７を用いて説明した存在問合せ間隔変更処理は、一のルーティングテーブルについて、一の存在問合せ間隔Ｘと次の問合せ時刻Ｔｍの値を用い、ノードＩＤの各領域について順番に存在問合せ情報の送信と間隔Ｘの変更を行っている。存在問合せ間隔変更処理は、この形態に限定されず、ノードＩＤの各領域毎に存在問合せ間隔Ｘと次の問合せ時刻Ｔｍの値を設定し、存在問合せ情報の送信と間隔Ｘの変更を行ってもよい。また、存在問合せ間隔変更処理は、一のルーティングテーブルについて一の存在問合せ間隔Ｘと次の問合せ時刻Ｔｍの値を設定し、問合せ時刻Ｔｍになったら各領域のノードＩＤについて一斉に存在問合せ情報の送信を行い、この結果に応じて間隔Ｘの変更を行ってもよい。
【０１５９】
また、上述のノード装置１の各動作に対応するプログラムをフレキシブルディスク又はハードディスク等の情報記録媒体に記録しておき、或いはインターネット等のネットワークを介して取得して記録しておき、これをマイクロコンピュータ等により読み出して実行することにより、当該マイクロコンピュータを各実施形態に係る制御部１１として機能させることも可能である。
【図面の簡単な説明】
【０１６０】
【図１】本実施形態に係る情報通信システムにおける各ノード装置の接続態様の一例を示す図である。
【図２】ＤＨＴによるＩＤ空間及びルーティングテーブルが作成される様子の一例を示す図である。
【図３】（Ａ）レベル１のテーブルの一例である。（Ｂ）レベル２のテーブルの一例である。（Ｃ）レベル３のテーブルの一例である。（Ｄ）完成したルーティングテーブルの一例である。
【図４】ノード装置１の概要構成例を示す図である。
【図５】（Ａ）（Ｂ）は本実施形態においてノードＺが保持するルーティングテーブルの一例であり、（Ｃ）（Ｄ）はノードＺが他のノード装置の存在を問い合わせる際の様子を模式的に示す図である。
【図６】あるノードＩＤの領域について存在問合せ間隔が変動する様子の一例を示す図である。
【図７】本実施形態におけるノード装置１の存在問合せ間隔変更処理を示すフローチャートである。
【図８】本実施形態におけるノード装置１のルートノード検索処理を示すフローチャートである。
【図９】本実施形態におけるノード装置１の存在問合せ対応処理を示すフローチャートである。
【符号の説明】
【０１６１】
１  ノード装置
８  ネットワーク
９  オーバレイネットワーク
１１  制御部
１２  記憶部
１３  バッファメモリ
１４  デコーダ部
１５  映像処理部
１６  表示部
１７  音声処理部
１８  スピーカ
２０  通信部
２１  入力部
２２  バス
Ｓ  情報通信システム
【図１】
0004622755.tif 000002
【図２】
0004622755.tif 000003
【図３】
0004622755.tif 000004
【図４】
0004622755.tif 000005
【図５】
0004622755.tif 000006
【図６】
0004622755.tif 000007
【図７】
0004622755.tif 000008
【図８】
0004622755.tif 000009
【図９】
0004622755.tif 000010