(57)【特許請求の範囲】
【請求項１】
ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信システムであって、
前記ノード装置は、
前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツデータを受信する受信部と、
前記受信部により受信された前記制御メッセージ、または、前記コンテンツデータを、他の前記ノード装置へ中継する中継部と、
前記中継部に、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御部と、
前記中継部により中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定部と、を備え、
前記第１判定部により前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部が、前記中継部に前記コンテンツデータよりも前記制御メッセージの中継を優先させることを特徴とする情報通信システム。
【請求項２】
前記複数のノード装置は、情報を中継する中継機器を介して前記ネットワーク側からの通信が不可能な第１ノード装置と、前記ネットワーク側から送信された情報を前記第１ノード装置へ中継する中継ノード装置とを含み、
前記中継ノード装置は、
前記受信部と、
前記中継部と、
前記制御部と、 
前記第１判定部と、
を備え、
前記中継部は、前記受信部により受信された前記制御メッセージ、または、前記コンテンツデータを前記第１ノード装置へ中継することを特徴とする請求項１に記載の情報通信システム。
【請求項３】
前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を停止させることを特徴とする請求項１または請求項２に記載の情報通信システム。
【請求項４】
前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を遅延させることを特徴とする請求項１または請求項２に記載の情報通信システム。
【請求項５】
前記受信部が受信した情報のデータサイズに基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定する第２判定部を備え、
前記第２判定部により、前記コンテンツデータを受信したと判定されたとき、前記第１判定部が、前記総データサイズが所定のデータサイズより大きくなったかを判定し、
前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を停止させることを特徴とする請求項１から請求項４の何れか一項に記載の情報通信システム。
【請求項６】
前記コンテンツデータの最小データサイズは、前記制御メッセージのデータサイズよりも大きく、
前記第２判定部は、前記受信部が受信した情報のデータサイズに基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定することを特徴とする請求項５に記載の情報通信システム。
【請求項７】
前記コンテンツデータは、所定のデータサイズである１つ以上の分割コンテンツデータに分割され、
前記分割コンテンツデータのデータサイズは、前記制御メッセージのデータサイズよりも大きく、
前記第２判定部は、前記受信部が受信した情報のデータサイズに基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定することを特徴とする請求項５に記載の情報通信システム。
【請求項８】
前記受信部は、前記コンテンツデータまたは前記制御メッセージと、前記コンテンツデータまたは前記制御メッセージを夫々識別する識別情報とを受信し、
前記受信部は、前記受信部が受信した識別情報に基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定する第３判定部を備え、
前記第３判定部により、前記コンテンツデータを受信したと判定されたとき、前記第１判定部が、前記総データサイズが所定のデータサイズより大きくなったかを判定し、
前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を停止させることを特徴とする請求項１から請求項４の何れか一項に記載の情報通信システム。
【請求項９】
ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信システムの前記ノード装置であって、
前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツを受信する受信部と、
前記受信部により受信された前記制御メッセージ、または、前記コンテンツデータを、他の前記ノード装置へ中継する中継部と、
前記中継部に、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御部と、
前記中継部により中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定部と、を備え、
前記第１判定部により前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部が、前記中継部に前記コンテンツデータよりも前記制御メッセージの中継を優先させることを特徴とするノード装置。
【請求項１０】
ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信システムの前記ノード装置のコンピュータを動作させるプログラムであって、
前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツデータを受信する受信ステップと、
前記受信ステップにより受信された前記制御メッセージ、または、前記コンテンツデータを、他の前記ノード装置へ中継する中継ステップと、
前記中継ステップにより中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定ステップと、
前記第１判定部により前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記中継ステップにおいて、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御ステップと、
を前記ノード装置のコンピュータに実行させることを特徴とするプログラム。
【請求項１１】
ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信方法であって、
前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツデータを前記ノード装置に受信させる受信ステップと、
前記受信ステップにより受信された前記制御メッセージ、または、前記コンテンツデータを、前記ノード装置が他の前記ノード装置へ中継する中継ステップと、
前記中継ステップにより中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定ステップと、
前記第１判定ステップにより前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記中継ステップにおいて、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御ステップと、を含むことを特徴とする情報通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ（Ｐ２Ｐ））型の通信システムに関する。具体的には、ピアツーピア型の通信システムの運用効率を高める技術に関する。
【背景技術】
【０００２】
この種のピアツーピア型の通信システムは、複数のノード装置により構成される。各種コンテンツのコンテンツデータは、複数のコンテンツデータの複製データ（以下、「レプリカ」という）として複数のノード装置に分散して保存される。コンテンツデータは、映画及び音楽などのコンテンツデータである。一般的には、各ノード装置間でレプリカを利用可能とした情報通信システムが知られている。これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献１に開示されるような分散ハッシュテーブル（以下、ＤＨＴ（Ｄｉｓｔｒｉｂｕｔｅｄ  Ｈａｓｈ  Ｔａｂｌｅ）という）を利用して効率良く検索可能になっている。上述のピアツーピア型の通信システムでは、ノード装置間でコンテンツデータとは異なる各種制御メッセージを転送し、送受信し合うことでピアツーピア型の通信システムとして動作可能となる。
【０００３】
また、特許文献１には、ＮＡＴ越えを必要とする中継装置を介して、制御メッセージを転送する際に、メッセージを中継する中継ノード装置が開示されている。特許文献１に記載の中継ノード装置が、ＮＡＴ越えが不可能なノード装置から制御メッセージを受信した場合、メッセージの送信元のＩＰアドレスを中継ノード装置に置き換える。また、中継ノード装置がＮＡＴ越え可能ノード装置からメッセージを受信して、ＮＡＴ越え不可能なノード装置へ制御メッセージを転送する場合、中継ノード装置は、メッセージの送信先のＩＰアドレスを、中継ノード装置のＩＰアドレスから、ＮＡＴ越え不可能なノード装置のＩＰアドレスに置き換える。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２９４６２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載のノード装置または中継ノード装置が、ある情報を転送または中継している間は、他の情報の中継を待機させるまたは破棄する場合がある。例えば、制御メッセージよりもデータサイズの大きいコンテンツデータを中継している場合、コンテンツデータの中継が完了するまで中継ノードは、制御メッセージの中継を待機させるまたは破棄することとなってしまう。これは、データサイズの大きいコンテンツを中継するために、中継ノード装置の帯域幅が占有されるためである。ピアツーピア型の通信システムでは、コンテンツデータのデータサイズの方が、制御メッセージのデータサイズより大きいことが一般的である。そのため、制御メッセージの転送または中継が遅れるまたは制御メッセージが破棄されることで、転送先以降または中継ノード装置以降に制御メッセージを転送または中継することができず、ピアツーピア型の通信システムとしての動作効率が著しく低下してしまうという問題があった。
【０００６】
本発明は、上述した問題点を解決するためになされたものである。本発明の目的は、ノード装置または中継ノード装置が、制御メッセージを待機または破棄することなく、ピア
ツーピア型の通信システムの動作効率の低減を防ぐ情報通信方法を提供することである。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明によれば、ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信システムであって、前記ノード装置は、前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツデータを受信する受信部と、前記受信部により受信された前記制御メッセージ、または、前記コンテンツデータを、他の前記ノード装置へ中継する中継部と、前記中継部に、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御部と、を備えることを特徴とする情報通信システムである。
【０００８】
請求項２に記載の発明によれば、前記複数のノード装置は、情報を中継する中継機器を介して前記ネットワーク側からの通信が不可能な第１ノード装置と、前記ネットワーク側から送信された情報を前記第１ノード装置へ中継する中継ノード装置とを含み、前記中継ノード装置は、前記受信部と、前記中継部と、前記制御部と、前記第１判定部と、を備え、前記中継部は、前記受信部により受信された前記制御メッセージ、または、前記コンテンツを前記第１ノード装置へ中継することを特徴とする。
【０００９】
請求項１に記載の発明によれば、前記中継部により中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定部を備え、前記第１判定部により前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部が、前記中継部に前記コンテンツデータよりも前記制御メッセージの中継を優先させることを特徴とする。
【００１０】
請求項３に記載の発明によれば、前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を停止させることを特徴とする。
【００１１】
請求項４に記載の発明によれば、前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を遅延させることを特徴とする。
【００１２】
請求項５に記載の発明によれば、前記受信部が受信した情報のデータサイズに基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定する第２判定部を備え、前記第２判定部により、前記コンテンツデータを受信したと判定されたとき、前記第１判定部が、前記総データサイズが所定のデータサイズより大きくなったかを判定し、前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を停止させることを特徴とする。
【００１３】
請求項６に記載の発明によれば、前記コンテンツデータの最小データサイズは、前記制御メッセージのデータサイズよりも大きく、前記第２判定部は、前記受信部が受信した情報のデータサイズに基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定することを特徴とする。
【００１４】
請求項７に記載の発明によれば、前記コンテンツデータは、所定のデータサイズである１つ以上の分割コンテンツデータに分割され、前記分割コンテンツデータのデータサイズは、前記制御メッセージのデータサイズよりも大きく、前記第２判定部は、前記受信部が受信した情報のデータサイズに基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定することを特徴とする。
【００１５】
請求項８に記載の発明によれば、前記受信部は、前記コンテンツデータ、または、前記制御メッセージと、前記コンテンツデータまたは前記制御メッセージを夫々識別する識別情報とを受信し、前記受信部は、前記受信部が受信した識別情報に基づいて、受信した情報が前記制御メッセージか、前記コンテンツデータであるかを判定する第３判定部を備え、前記第３判定部により、前記コンテンツデータを受信したと判定されたとき、前記第１判定部が、前記総データサイズが所定のデータサイズより大きくなったかを判定し、前記第１判定部により、前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部は、前記中継部に前記コンテンツデータの中継を停止させることを特徴とする。
【００１６】
請求項９に記載の発明によれば、ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信システムの前記ノード装置であって、前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツデータを受信する受信部と、前記受信部により受信された前記制御メッセージ、または、前記コンテンツデータを、他の前記ノード装置へ中継する中継部と、前記中継部に、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御部と、を備えることを特徴とするノード装置である。請求項９に記載の発明によれば、さらに、前記中継部により中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定部を備え、前記第１判定部により前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記制御部が、前記中継部に前記コンテンツデータよりも前記制御メッセージの中継を優先させることを特徴とする。
【００１７】
請求項１０に記載の発明によれば、ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信システムの前記ノード装置のコンピュータを動作させるプログラムであって、前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツデータを受信する受信ステップと、前記受信ステップにより受信された前記制御メッセージ、または、前記コンテンツデータを、他の前記ノード装置へ中継する中継ステップと、前記中継ステップにより中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定ステップと、前記第１判定部により前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記中継ステップにおいて、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御ステップと、を前記ノード装置のコンピュータに実行させることを特徴とするプログラムである。
【００１８】
請求項１１に記載の発明によれば、ネットワークを介して複数のノード装置が接続されることで構成されるピアツーピア型の情報通信方法であって、前記ピアツーピア型の通信システムを制御する制御メッセージ、または、前記ピアツーピア型の通信システムで前記複数のノード装置間で送受信されるコンテンツデータを前記ノード装置に受信させる受信ステップと、前記受信ステップにより受信された前記制御メッセージ、または、前記コンテンツデータを、前記ノード装置が他の前記ノード装置へ中継する中継ステップと、前記中継ステップにより中継されている前記制御メッセージ、または、前記コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する第１判定ステップと、前記第１判定ステップにより前記総データサイズが所定のデータサイズより大きくなったと判定されたとき、前記中継ステップにおいて、前記コンテンツデータよりも前記制御メッセージの中継を優先させる制御ステップと、を含むことを特徴とする情報通信方法である。
【発明の効果】
【００１９】
請求項１に記載の発明によれば、中継部は、受信部により受信された制御メッセージ、または、コンテンツデータを、他のノード装置へ中継する。制御部は、中継部に、コンテンツデータよりも制御メッセージの中継を優先させる。この結果、メッセージ、または、コンテンツデータを転送するノード装置が、制御メッセージを待機、または、破棄することなく、ピアツーピア型の通信システムの動作効率の低減を防ぐことができる。
【００２０】
請求項２に記載の発明によれば、複数のノード装置は、情報を中継する中継機器を介してネットワーク側からの通信が不可能な第１ノード装置と、ネットワーク側から送信され
た情報を第１ノード装置へ中継する中継ノード装置とを含む。中継ノード装置の中継部は、受信部により受信された制御メッセージ、または、コンテンツを第１ノード装置へ中継する。中継ノード装置が制御メッセージを待機、または、破棄してしまうことにより、第１ノード装置へのＰ２Ｐの制御メッセージの転送が遅くなってしまう課題がある。この結果、中継装置が、制御メッセージを待機、または、破棄することなく、第１ノード装置を含めたピアツーピア型の通信システムの動作効率の低減を防ぐことができる。
【００２１】
請求項１に記載の発明によれば、第１判定部は、中継部により中継されている制御メッセージ、または、コンテンツデータの総データサイズが所定のデータサイズより大きくなったかを判定する。第１判定部により総データサイズが所定のデータサイズより大きくなったと判定されたとき、制御部が、中継部にコンテンツデータよりも制御メッセージの中継を優先させる。この結果、ノード装置、または、中継ノード装置が、中継している情報の総データサイズが所定のデータサイズを超えると、制御部は、制御メッセージを優先し、所定のデータサイズを超えるまでは、制御メッセージとコンテンツデータとを特に優先付けすることなく送信することができる。この結果、ピアツーピア型の通信システムの動作効率の低減を防ぐとともに、コンテンツデータの配信を効率化することができる。また、中継ノード装置が中継するデータサイズを制限することで、中継ノード装置の負荷を軽減することができる。
【００２２】
請求項３に記載の発明によれば、第１判定部により、総データサイズが所定のデータサイズより大きくなったと判定されたとき、制御部は、中継部にコンテンツデータの中継を停止させる。従って、コンテンツデータの中継を停止させることで、確実に制御メッセージを優先して送信することができる。この結果、ピアツーピア型の通信システムの動作効率の低減を確実に防ぐことができる。
【００２３】
請求項４に記載の発明によれば、第１判定部により、総データサイズが所定のデータサイズより大きくなったと判定されたとき、制御部は、中継部に前記コンテンツデータの中継を遅延させる。従って、コンテンツデータの中継を遅延させることで、確実に制御メッセージを優先して送信することができる。この結果、ピアツーピア型の通信システムの動作効率の低減を確実に防ぐことができる。
【００２４】
請求項５に記載の発明によれば、受信部が受信した情報のデータサイズに基づいて、受信した情報が制御メッセージか、コンテンツデータであるかを判定する第２判定部を備える。第１判定部により、総データサイズが所定のデータサイズより大きくなったと判定されたとき、制御部は、中継部に前記コンテンツデータの中継を停止させる。従って、制御メッセージか、コンテンツデータかの判別を、データサイズによって判定することができる。従って、中継する情報に識別情報を付与することなく、データサイズにより制御メッセージか、コンテンツデータかを判定することができる。この結果、識別情報を付加しデータサイズを大きくすることなく、制御メッセージとコンテンツデータとを送信することができるため、ピアツーピア型の通信システムの動作効率の低減を防ぐことができる。
【００２５】
請求項６に記載の発明によれば、コンテンツデータの最小データサイズは、制御メッセージのデータサイズよりも大きい。第２判定部は、受信部が受信した情報のデータサイズに基づいて、受信した情報が制御メッセージか、コンテンツデータであるかを判定する。この結果、識別情報を付加してデータサイズを大きくすることがないことに加え、データサイズがコンテンツデータの最小データサイズより小さい場合、制御メッセージであることを判定することができる。
【００２６】
請求項７に記載の発明によれば、コンテンツデータは、所定のデータサイズである１つ以上の分割コンテンツデータに分割される。分割コンテンツデータのデータサイズは、制御メッセージのデータサイズよりも大きい。第２判定部は、受信部が受信した情報のデータサイズに基づいて、受信した情報が制御メッセージか、コンテンツデータであるかを判定する。従って、制御メッセージか、コンテンツデータかの判別を、データサイズによって判定することができる。従って、中継する情報に識別情報を付与することなく、データサイズにより制御メッセージか、コンテンツデータかを判定することができる。この結果、識別情報を付加しデータサイズを大きくすることなく、制御メッセージとコンテンツデータとを送信することができるため、ピアツーピア型の通信システムの動作効率の低減を防ぐことができる。
【００２７】
請求項８に記載の発明によれば、受信部は、コンテンツデータまたは制御メッセージと、コンテンツデータまたは前記制御メッセージを夫々識別する識別情報とを受信する。受信部は、受信部が受信した識別情報に基づいて、受信した情報が制御メッセージか、コンテンツデータであるかを判定する第３判定部を備える。この結果、制御メッセージ、または、コンテンツデータに付与された識別情報によって、受信した情報が、制御メッセージか、コンテンツデータかを判定することができる。
【００２８】
請求項９に記載の発明によれば、中継部は、受信部により受信された制御メッセージ、または、コンテンツデータを、他のノード装置へ中継する。制御部は、中継部に、コンテンツデータよりも制御メッセージの中継を優先させる。この結果、メッセージ、または、コンテンツデータを転送するノード装置が、制御メッセージを待機、または、破棄することなく、ピアツーピア型の通信システムの動作効率の低減を防ぐことができる。
【００２９】
請求項１０または請求項１１に記載の発明によれば、中継ステップは、受信ステップにより受信された制御メッセージ、または、コンテンツデータを、他のノード装置へ中継する。制御ステップは、中継ステップに、コンテンツデータよりも制御メッセージの中継を優先させる。この結果、メッセージ、または、コンテンツデータを転送するノード装置が、制御メッセージを待機、または、破棄することなく、ピアツーピア型の通信システムの動作効率の低減を防ぐことができる。
【図面の簡単な説明】
【００３０】
【図１】本実施形態における情報通信システムＳにおける各ノード装置Ｔｍ−ｎの接続態様の一例を示す図である。
【図２】中継ノードがコンテンツデータを中継する説明を示す説明図である。
【図３】本実施形態のノード装置の電気的構成を示すブロック図である。
【図４】ノード装置におけるメイン動作の処理手順を示すフローチャートである。
【図５】ノード装置におけるコンテンツデータ中継処理の処理手順を示すフローチャートである。
【図６】ノード装置におけるノード判定処理の処理手順を示すフローチャートである。
【発明を実施するための最良の形態】
【００３１】
［最良の実施形態］
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、ピアツーピア型の情報通信システムに本発明を適用した場合の実施形態である。
【００３２】
［情報通信システムの概要構成］
始めに、図１を参照して、本実施形態における情報通信システムＳの概要構成について説明する。図１は、本実施形態における情報通信システムＳにおける各ノード装置の接続態様の一例を示す図である。
【００３３】
図１に示すように、情報通信システムＳは、複数のノード装置Ｔｍ−ｎ（ｎ＝１，２，３・・・の何れか）から構成されている。複数のノード装置Ｔｍ−ｎは、ネットワークＮＷを介して互いに通信可能である。このネットワークＮＷは、現実世界の通信ネットワークである。例えば、インターネットである。
【００３４】
ネットワークＮＷは、各拠点ネットワークＮＬｍ（ｍ＝１，２，３・・・の何れか）を相互接続するためのネットワークである。このネットワークＮＷは、例えば、インターネットやＷＡＮ（Wide Area Network）等である。そして、ネットワークＮＷは、例えば、
ＩＸ（Internet Exchange）、ＩＳＰ（Internet Service Provider）、ＤＳＬ（Digital Subscriber Line）回線事業者の装置、ＦＴＴＨ（Fiber To The Home）回線事業者の装置、及び通信回線等によって構築されている。なお、ネットワークＮＷは、情報通信システムＳ専用のネットワークであっても良い。
【００３５】
本実施形態では、ネットワークＮＷ内に、１つ以上の各拠点ネットワークＮＬｍが形成される。また、各拠点ネットワークＮＬｍには、複数のノード装置Ｔｍ−ｎ（ｎ＝１，２，３・・・の何れか）が接続されている。各拠点ネットワークＮＬｍは、夫々拠点ｍの敷地内に構築されたネットワークである。拠点としては、例えば、会社、学校、病院、塾等がある。この拠点ネットワークＮＬｍは、例えば、ＬＡＮ等により構築されている。或いは、拠点ネットワークＮＬｍは、複数のＬＡＮが相互接続して構築されたネットワークであっても良い。この場合、複数のＬＡＮは、ルータ等のネットワーク機器を介して接続される。複数のＬＡＮが相互接続されたネットワークとしては、例えば、ＣＡＮ（Campus Area Network）等がある。各拠点ネットワークＮＬｍには、ファイアウォールＦＷ又はブ
ロードバンドルータＢＲが接続されている。ファイアウォールＦＷ又はブロードバンドルータＢＲは、拠点内に接続されるノード装置Ｔｍ−ｎと、その拠点に接続されるノード装置Ｔｍ−ｎ以外のノード装置Ｔｍ−ｎとを通信可能にする通信機器である。ファイアウォールＦＷ又はブロードバンドルータＢＲは、公知であるので詳細な説明は省略する。ファイアウォールＦＷ又はブロードバンドルータＢＲの何れが拠点に設置されるかは、拠点毎に任意に決定される。本実施形態の拠点ネットワークＮＬｍは、例えば、ＬＡＮ（Local Area Network）である。
【００３６】
また、ネットワークＮＷには、センターサーバと投入サーバとが接続されている。センターサーバと投入サーバとは特に図示していない。センターサーバは、後述するオーバーレイネットワークＯＬで送受信されるコンテンツデータのオリジナルを記憶する。また、センターサーバは、コンテンツカタログ情報をノード装置Ｔｍ−ｎに送信する。コンテンツカタログ情報の詳細については後述する。投入サーバは、後述するオーバーレイネットワークＯＬにコンテンツデータを投入するサーバ装置である。ここで、コンテンツデータの投入とは、コンテンツデータをノード装置Ｔｍ−ｎから取得可能な状態におくことをいう。なお、コンテンツデータを、「コンテンツ」という。
【００３７】
各ノード装置Ｔｍ−ｎには、固有の製造番号及びＩＰ（Internet Protocol）アドレス
が割り当てられている。また、情報通信システムＳに接続されている各ノード装置Ｔｍ−ｎには、所定桁数からなる固有の識別情報であるノードＩＤが割り当てられている。本実施形態の情報通信システムＳでは、コンテンツ配信のためのオーバーレイネットワークＯＬが構築されている。オーバーレイネットワークＯＬは、ネットワークＮＷ上に構築されたオーバーレイネットワークである。言い換えれば、オーバーレイネットワークＯＬは、物理的なネットワーク上に生成される論理的なネットワークである。また、オーバーレイネットワークＯＬは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。分散ハッシュテーブルを、以下、「ＤＨＴ（Distributed Hash Table）」という。なお、ＤＨＴを用いたルーティングテーブルについては、特開２
００６−１９７４００号公報等で公知である。
【００３８】
本実施形態では、各ノード装置Ｔｍ−ｎがピアツーピア方式で通信を行えるよう、ブロードバンドルータＢＲやファイアウォールＦＷにおいてポートフォワーディングの設定が行われる場合がある。例えば、ブロードバンドルータＢＲであれば、ＵＰｎＰ（Universal Plug and Play）機能等を利用して自動的にポートフォワーディングの設定が行われる
ようにしておくと良い。以下ノード装置Ｔｍ−ｎを、単にノード装置と呼ぶ。
【００３９】
［オーバーレイネットワークＯＬへの参加方法について］
各ノード装置は、夫々、ＤＨＴ（Distributed Hash Table）を用いたルーティングテーブルを保持している。このルーティングテーブルは、情報通信システムＳ上における各種制御メッセージの転送先を規定している。制御メッセージは、Ｐ２Ｐの情報通信システムの運用を制御するメッセージである。言い換えれば、制御メッセージは、Ｐ２Ｐの情報通信システムで、コンテンツの検索又はコンテンツの取得に用いるためのメッセージである。また、制御メッセージは、ＤＨＴのルーティングテーブルに従って送受信されるメッセージである。具体的に、このルーティングテーブルには、ＩＤ空間内で適度に離れたノード装置のノードＩＤ、ＩＰアドレス及びポート番号を含むノード情報が複数登録されている。情報通信システムＳに接続している１台のノード装置は、必要最低限のノード装置のノード情報をルーティングテーブルとして記憶している。各ノード装置間で互いに制御メッセージが転送されることで、ノード情報を記憶していないノード装置についてのノード情報が取得される。また、制御メッセージが、各ノード装置により送受信されることで、情報通信システムＳは、ピアツーピア型の情報通信システムとして動作可能である。
【００４０】
なお情報通信システムＳへの接続は、情報通信システムＳへ接続していないノード装置が、接続している任意のノード装置に対して情報通信システムＳへの参加要求を示す参加メッセージを送信することによって行われる。情報通信システムＳへの参加とは、ノード装置が情報通信システムＳに接続され、情報通信システムＳからコンテンツデータを取得可能になることである。任意のノード装置は、例えば、情報通信システムＳに常時接続しているコンタクトノードである。情報通信システムＳへ参加するノード装置が、コンタクトノードへ参加メッセージを送信することで、ノード装置は、ＤＨＴのルーティングテーブルをコンタクトノードから取得することができる。
【００４１】
［コンテンツ取得動作の概要について］
情報通信システムＳにおいては、内容の異なる様々なコンテンツデータが複数のノード装置に分散して保存される。各コンテンツデータには、それぞれコンテンツ名及びコンテンツデータ毎に固有の識別情報であるコンテンツＩＤが付与されている。各コンテンツのコンテンツ名及びコンテンツＩＤ等の属性情報は、コンテンツカタログ情報に記述されている。コンテンツカタログ情報は、センターサーバにより作成されて、全てのノード装置に配信される。また、各コンテンツは、複数のデータに分割されている。この分割されたデータを、「チャンク」という。各チャンクは、例えば、センターサーバにより、コンテンツを所定のデータサイズで分割することにより生成される。本実施形態では、チャンクの最小データサイズは、２ＭＢ（Ｍｅｇａ  Ｂｙｔｅ）である。また、チャンクの最大データサイズは、１２８ＭＢである。ただし、チャンクに分割した結果、一部のチャンクが、２ＭＢよりも小さくなってしまう場合もある。また、チャンクに分割する前のデータサイズがもともと２ＭＢより小さい場合、２ＭＢ未満のデータサイズのチャンクとなる場合がある。本実施形態では、コンテンツデータが複数のチャンクに分割されている。本実施形態に記載のように、コンテンツデータが複数のチャンクに分割されなくても良い。分割されていないコンテンツデータが本実施形態に適用されても良い。
【００４２】
各チャンクは、複数のノード装置に分散されて保存される。これにより、元となるコン
テンツが複数のノード装置に分散して保存されることになる。各チャンクのオリジナルは、センターサーバに保存されている。各チャンクには、それぞれシーケンス番号及びチャンクＩＤが付与されている。シーケンス番号は、例えば、分割された複数のチャンクを、元となるコンテンツを構成するように並べたときの並び順に相当する。チャンクＩＤは、チャンク毎に固有の識別情報である。
【００４３】
各ノード装置は、あるコンテンツのコンテンツＩＤを取得すると、そのコンテンツを構成する各チャンクのチャンクＩＤを、そのシーケンス番号と対応付けて取得することができる。コンテンツを構成する各チャンクのチャンクＩＤは、例えば、コンテンツカタログ情報において、元となるコンテンツの属性情報中に、シーケンス番号と対応付けて記述されていても良い。
【００４４】
チャンクを保存しているノード装置を、「コンテンツ保持ノード」という。また、チャンクの所在は、インデックス情報として、チャンクの所在を管理（記憶）しているノノード装置により記憶される。以下、チャンクの所在を管理しているノード装置を、「ルートノード」という。インデックス情報は、チャンクを保存したノード装置のノード情報と、チャンクのチャンクＩＤと等の組を含む。このようなルートノードは、例えば、チャンクＩＤと最も近いノードＩＤを有するノードＮｎであるように定められる。チャンクＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。
【００４５】
あるノード装置のユーザが、所望のコンテンツを取得したい場合、ノード装置は、所望されたコンテンツを構成する各チャンクを保存するコンテンツ保持ノードをそれぞれ検索する。以下、ユーザによりチャンクの取得を望むノード装置を、「ユーザノード」という。具体的に、ユーザノードは、検索メッセージを送信する。この検索メッセージは、取得を望むチャンクのチャンクＩＤ及びユーザノードのノードＩＤを含む。この検索メッセージが、ユーザノードが記憶するＤＨＴのルーティングテーブルに従って、他のノード装置に対して送信される。つまり、ユーザノードは、検索メッセージを、ルートノードに向けて送信する。これにより、検索メッセージは、チャンクＩＤをキーとするＤＨＴルーティングによって最終的にルートノードに到着することになる。なお、ＤＨＴルーティングについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００４６】
検索メッセージを受信したルートノードは、これに含まれるチャンクＩＤに対応するインデックス情報をインデックス情報キャッシュから１または複数取得する。取得されたインデックス情報は、検索メッセージの送信元であるユーザノードに対して返信される。こうしてインデックス情報を取得したユーザノードは、インデックス情報に基づいてチャンクを取得（ダウンロード）する。具体的に、ユーザノードは、インデックス情報に含まれるコンテンツ保持ノードのＩＰアドレス及びポート番号等に基づいて、チャンク要求メッセージをコンテンツ保持ノードに送信する。チャンク要求メッセージには、ユーザノードのノード情報、所望するコンテンツのコンテンツＩＤ及び取得を望むチャンクのチャンクＩＤが含まれている。チャンク要求メッセージを受信したコンテンツ保持ノードは、チャンク要求メッセージに含まれるチャンクＩＤに対応するチャンクをユーザノードに送信（アップロード）する。一方、所望するチャンクを保存するコンテンツ保持ノードが存在しないとき、ユーザノードは、コンテンツ保持ノードのインデックス情報を取得することができない。この場合、ユーザノードは、センターサーバからチャンクを取得する。
【００４７】
あるいは、ルートノードは、インデックス情報に含まれるＩＰアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信する。コンテンツ送信要求メッセージは、チャンク要求メッセージの送信元のノード情報を含む。コンテンツ送信要求を受信したコンテンツ保持ノードは、受信したメッセージが含むノード情報が示す
ユーザノードへコンテンツデータの送信（アップロード）を開始する。これにより、ユーザノードは、コンテンツ保持ノードからコンテンツデータを取得することが可能になる。
【００４８】
そして、ユーザノードは、コンテンツ保持ノードからチャンクを取得して保存したとき、チャンクを公開する。チャンクの公開とは、ユーザノードがコンテンツ保持ノードとしてチャンクを保存したことをルートノードへ知らせることをいう。チャンクの公開により、公開したコンテンツ保持ノードから、公開されたチャンクを他のノード装置が取得可能になる。具体的に、チャンクを保存したユーザノードは、パブリッシュメッセージを送信する。パブリッシュメッセージは、チャンクのチャンクＩＤ及びチャンクを保存したユーザノードのノード情報を含む。パブリッシュメッセージは、ルートノードに向けて送出される。これにより、パブリッシュメッセージは、検索メッセージと同じように、チャンクＩＤをキーとするＤＨＴルーティングによってルートノードに到着することになる。ルートノードは、受信したパブリッシュメッセージに含まれるノード情報及びチャンクＩＤの組を含むインデックス情報をインデックス情報キャッシュに記憶する。こうして、上記ユーザノードは、新たに、上記チャンクを保存するコンテンツ保持ノードとなる。
【００４９】
［中継ノード装置の制御メッセージの中継方法について］
以下、中継ノード装置の概要について説明する。本実施形態では、ブロードバンドルータＢＲまたはファイアウォールＦＷの外側のノード装置から、ブロードバンドルータＢＲまたはファイアウォールＦＷの内側のノード装置に接続できないノード装置を接続不可能ノードと呼ぶ。また、本実施形態では、他のノード装置から接続できるノード装置を接続可能ノードと呼ぶ。本実施形態の接続不可能ノードは、本発明の第１ノード装置の一例である。
【００５０】
ＤＨＴのルーティングテーブルを取得したノード装置は、ルーティングテーブルに記載されたＩＰアドレス及びポート番号に基づいて、他のノード装置に接続する。このとき、ルーティングテーブルを取得したノード装置は、他のノード装置との間にセッションを確立する。具体的には、セッションを確立したノード装置は、セッションが確立された他のノードとの間で制御メッセージの送受信を制御する。そして、一旦、セッションが確立された場合、ノード装置は、制御メッセージの受信後又は送信後も、セッションを保持するようになっている。セッションの保持は、ノード装置の所定の記憶領域に備えられたソケットテーブルに、セッション情報が登録されることにより行われる。セッション情報は、例えば、ソケットテーブルを記憶するノード装置自身のノード情報と、接続先のノード情報と、ソケット識別子とが含まれる。なお、ここでの「ソケットテーブル」は公知のものではなく、本実施形態のために実装されたものである。ソケットテーブルは、ＩＰアドレスとノードＩＤとを対応付けた情報である。
【００５１】
また、ソケットテーブルには、複数のセッション情報を登録することができる。これにより、複数のノード装置とのセッションを保持することができる。但し、ソケットの数には限りがある。例えば、６０〜１２０程度である。そのため、ソケットテーブルに登録されたセッション情報の数が所定数以上になった場合、最も利用されていないセッション情報から削除される。例えば、ＬＲＵ（Ｌａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）方式により、セッション情報がソケットテーブルから削除される。このとき、接続不可能ノードとのセッション情報はできるだけ削除されずに、登録され続けても良い。この場合、接続不可能ノード以外のノード装置とのセッション情報であり、且つ、利用されてないセッション情報が優先されてソケットテーブルから削除されても良い。
【００５２】
なお、接続不可能ノードのノード情報に含まれるＩＰアドレスは、ブロードバンドルータＢＲまたはファイアウォールＦＷのネットワークＮＷ側のＩＰアドレス（グローバルＩＰアドレス）である。また、接続不可能ノードのノード情報に含まれるポート番号は、ポ
ート番号を０（ゼロ）としている。これは、接続不可能ノードのＩＰアドレスは、他のノード装置により把握することはできるが、接続不可能ノードは、ポート設定によりブロードバンドルータＢＲまたはファイアウォールＦＷを越えられないためである。そのため、接続不可能ノードは、接続不可能ノード自身がブロードバンドルータＢＲまたはファイアウォールＦＷを超えるためのポート番号を知ることができない。そのため、ポート番号が０と設定される。更に、接続不可能ノードとのセッションを保持しているノード装置は、接続不可能ノードの中継ノード装置としての処理を行うようになっている。
【００５３】
具体的には、中継ノード装置では中継ノードテーブルが設定される。中継ノード装置は、接続不可能ノードが送信元のメッセージを受信した場合、送信元の接続不可能ノードのノードＩＤと、接続不可能ノードのＩＰアドレス及びポート番号とを対応付けて中継ノードテーブルに登録する。例えば、接続不可能ノードからのセッション開始を受け付け、セッションが確立されたとする。このとき、接続不可能ノードを送信元とする制御メッセージあって、中継ノード装置以外のノード装置宛ての制御メッセージが受信されたとする。この場合、中継ノード装置は、接続不可能ノードのノードＩＤと、接続不可能ノードとのＩＰアドレス及びポート番号とを対応付けて中継ノードテーブルに登録する。
【００５４】
そして、中継ノード装置は、制御メッセージに含まれる送信元である接続不可能ノードのノード情報を、中継ノード装置のノード情報に書き換える。つまり、中継ノード装置は、制御メッセージに含まれる送信元のノード情報を中継ノードのノード情報にする。但し、中継ノード装置が、ノード情報を書き換えたことを後から判別可能とするため、接続不可能ノードに割り当てられたノードＩＤを、書き換え後の中継ノードのノード情報に付加して制御メッセージを送信する。
【００５５】
また、接続可能ノードを送信元とする制御メッセージが受信されたとき、中継ノードは、受信した制御メッセージが、中継ノード装置とセッション保持状態にある接続不可能ノードに送信される制御メッセージであるか否かを判定する。まず、受信した制御メッセージの宛先を示すノードＩＤが、中継ノード装置のノードＩＤと一致するかが判定される。一致しなかった場合、受信した制御メッセージの宛先を示すノードＩＤが、中継ノードテーブルに登録されているか否かが判定される。中継ノードテーブルに登録されていた場合、受信したメッセージは、接続不可能ノード宛のメッセージであると判定される。そして、中継ノード装置が、中継ノードテーブルに登録されている接続不可能ノードへメッセージを中継する。一方、中継ノードテーブルに登録されていなかった場合、ＤＨＴのルーティングテーブルに基づいて、受信した制御メッセージは、他のノード装置へ転送される。
【００５６】
これは、接続不可能ノードを宛先として送信された制御メッセージである場合、中継ノード装置は、受信した制御メッセージを、接続不可能ノードに送信するように制御する。中継ノードテーブルに登録されている場合、受信された制御メッセージの宛先のノード情報が、受信したメッセージが含むノードＩＤに対応付けられて登録されている接続不可能ノードのノード情報に書き換えられて送信されることになる。
【００５７】
なお、このように登録された接続不可能ノードのノードＩＤと、ＩＰアドレス及びポート番号とは、接続不可能ノードとのセッションが切断された場合、中継ノードテーブルから削除される。セッションが切断されたとは、中継ノード装置の記憶部からセッション情報が削除された場合である。
【００５８】
各ノード装置自身が、接続可能ノードであるか、接続不可能ノードであるかを判定する方法を説明する。本実施形態では、情報通信システムＳに参加する際に、コンタクトノードへアクセスする。本実施形態のコンタクトノードは、情報通信システムＳに参加する際にアクセスされるノード装置である。このため、コンタクトノードには、ネットワークＮ
Ｗにおいて通信可能なグローバルＩＰアドレスが割り当てられており、接続可能ノードであることが前提である。そのため、参加メッセージを送信するノード装置が、接続可能ノード装置であっても、接続不可能ノード装置であってもアクセスすることは可能である。一方、コンタクトノードは、接続可能ノードにはアクセスすることができるが、ブロードバンドルータＢＲ、またはファイアウォールＦＷ、または端末装置の通信設定により、接続不可能ノードにはアクセスできない場合がある。端末の通信設定とは、端末装置に設定されたパーソナルファイアウォール等で接続を遮断する場合である。そのため、本実施形態では、ノード装置自身が接続可能ノードであるか、または、接続不可能ノードであるかの判定が、コンタクトノードに対して依頼される。コンタクトノードによる判定結果が、所定の期間内に取得できない場合、ブロードバンドルータＢＲまたはファイアウォールＦＷまたは端末装置の通信設定により、接続不可能ノードにはアクセスできないことが考えられる。そのため、接続不可能ノードであると判定される。一方、コンタクトノードによる判定結果が所定の期間以内に受信された場合、接続可能ノードであると判定される。コンタクトノードにより接続可能ノード、または、接続不可能ノードであると判定された判定結果は、接続可能ノードまたは接続不可能ノードを示す識別情報としてノード装置の記憶装置に記憶される。本実施形態では、情報通信システムＳにノード装置が参加する際、参加するノード装置は、コンタクトノードへ参加メッセージを送信する。コンタクトノード装置以外のノード装置に参加メッセージが送信されて、参加処理が実行されても良い。
【００５９】
上述した中継ノード装置の制御メッセージの中継方法は、特開２００８−２９４６２７号公報等で公知である。そのため、詳細な説明は省略する。
【００６０】
［コンテンツデータの中継方法について］
次に、図２を参照して、接続不可能ノードへのコンテンツデータ中継方法を説明する。コンテンツデータの中継は、ユーザノードとコンテンツ保持ノードとの両方が接続不可能ノードである場合に行われる。ユーザノードが接続可能ノードであり、且つ、コンテンツ保持ノードとも接続可能ノードの場合、通常のコンテンツの取得動作が行われる。また、ユーザノードが接続可能ノードであり、コンテンツ保持ノードが接続不可能ノードの場合、接続不可能ノードであるコンテンツ保持ノードから、ユーザノードへセッションが開始される。接続不可能ノードが、接続可能ノードであるユーザノードのノード情報としてＩＰアドレス及びポート番号を取得可能である。そのため、接続不可能ノードであるコンテンツ保持ノードから、接続可能ノードであるユーザノードへセッションを開始することができる。また、ユーザノードが接続不可能ノードであり、コンテンツ保持ノードが接続可能ノードの場合、接続不可能ノードであるユーザノードから、コンテンツ保持ノードへセッションが開始される。接続不可能ノードが、接続可能ノードであるコンテンツ保持ノードのノード情報としてＩＰアドレス及びポート番号を取得可能である。そのため、接続不可能ノードであるユーザノードから、接続可能ノードであるコンテンツ保持ノードへセッションを開始することができる。
【００６１】
ユーザノードが接続不可能ノードであり、コンテンツ保持ノードが接続不可能ノードの場合、接続不可能ノード間では、セッションを開始することができない。この場合に、中継ノードによるコンテンツデータの中継が行われる。
【００６２】
図２は、本実施形態におけるコンテンツデータの中継方法を説明する説明図である。まず、図２に示すユーザノードが、チャンクの検索メッセージを送信する（図２：（１））。このとき、検索メッセージには、検索対象のチャンクのチャンクＩＤと、ユーザノードのノード情報とが含まれる。メッセージに含まれたチャンクＩＤと、ＤＨＴのルーティングテーブルに基づいて、検索メッセージの送信先が決定される。図２に示すユーザノードは、接続不可能ノードである。このため、この検索メッセージには、検索メッセージの送信元が接続不可能ノードであることを示す識別情報も含まれる。
【００６３】
検索メッセージを受信したノード装置が接続可能ノードの場合、検索メッセージを受信したノード装置は中継ノード装置として機能する。具体的には、受信した検索メッセージに含まれる識別情報が接続不可能ノードを示し、且つ、メッセージを受信したノード装置が接続可能ノードである場合、メッセージを受信したノード装置が中継ノード装置として機能する。図２に示す例では、検索メッセージを受信した中継ノード装置Ａが、検索メッセージが含むノード情報を、中継ノード装置Ａのノード情報に書き換えてルートノードへ向けて送信する（図２：（２））。そして、中継ノード装置Ａの中継ノードテーブルに、受信した接続不可能ノードのノードＩＤと、接続不可能ノードのノード情報とを対応付けて登録する。検索メッセージを受信したルートノードは、ルートノードに記憶されるインデックス情報に基づいて、検索を要求されたチャンクのコンテンツ保持ノードへチャンク要求メッセージを送信する（図２：（３））。送信されるチャンク要求メッセージの送信元として、受信した検索メッセージの送信元である中継ノード装置Ａのノード情報が設定される。
【００６４】
ルートノードにより送信されたチャンク要求メッセージは、コンテンツ保持ノードの中継ノード装置Ｂへ転送される。図２に示す例では、コンテンツ保持ノードは、接続不可能ノードである。このため、コンテンツ保持ノードのパブリッシュメッセージは、中継ノード装置Ｂへ送信されることになる。そして、パブリッシュメッセージを受信した中継ノード装置Ｂは、パブリッシュメッセージが含むノード情報を、中継ノード装置Ｂのノード情報に書き換える。書き換えられたパブリッシュメッセージが、中継ノード装置Ｂによりルートノードへ向けて送信される。このため、実際にチャンクを記憶しているのは、接続不可能ノードであるコンテンツ保持ノードであるが、コンテンツ保持ノードの中継ノード装置Ｂのノード情報がルートノードに登録されることになる。このような理由のため、チャンク要求メッセージは、ルートノードから中継ノード装置Ｂへ転送される。そして、チャンク要求メッセージを受信した中継ノード装置Ｂは、中継ノード装置Ｂが記憶する中継ノードテーブルに基づいて、中継ノード装置Ｂとのセッションが保持されているコンテンツ保持ノードへチャンク要求メッセージを転送する（図２：（４））。
【００６５】
コンテンツ保持ノードは、チャンク要求メッセージを受信すると、チャンク要求メッセージの送信先へ検索応答メッセージを送信する。検索応答メッセージは、コンテンツ保持ノードのノード情報を含むメッセージである。この場合、チャンク要求メッセージの送信元は、中継ノード装置Ａが設定されている。このため、検索応答メッセージは、中継ノード装置Ａへ送信されることになる（図２：（５））。検索応答メッセージが送信されるとき、コンテンツ保持ノードと中継ノード装置Ａとの間のセッションが確立される。セッションが確立された後に、検索応答メッセージが中継ノード装置Ａへ送信される。
【００６６】
検索応答メッセージを受信した中継ノード装置Ａは、中継ノード装置Ａが記憶する中継ノードテーブルに基づいて、検索応答メッセージを転送する（図２：（６））。具体的には、中継ノード装置Ａは、上述した判定方法により、受信した検索応答メッセージが中継ノード装置Ａ自身宛か、接続不可能ノード宛であるかを判定する。図２の例では、受信した検索応答メッセージが、接触不可能ノード宛であるため、中継ノード装置Ａが記憶する中継ノードテーブルが参照される。参照された結果、検索応答メッセージが、接続不可能ノードであるユーザノードへ転送される。
【００６７】
検索応答メッセージを受信したユーザノードは、検索応答メッセージが含むノード情報に基づいて、チャンク送信要求メッセージを送信する。チャンク送信要求メッセージは、コンテンツ保持ノードにチャンクの送信を要求するメッセージである。  このとき、チャンク送信要求メッセージは、中継ノード装置Ａに送信される（図２：（７））。チャンク送信要求メッセージを受信した中継ノード装置Ａは、検索応答メッセージを受信したとき
に確立されたセッションにより、チャンク送信要求メッセージをコンテンツ保持ノードへ転送する（図２：（８））。そして、チャンク送信要求メッセージを受信したコンテンツ保持ノードは、要求されたチャンクを中継ノード装置Ａへ送信する（図２：（９））。送信されたチャンクを受信した中継ノード装置Ａは、受信したチャンクをユーザノードへ転送する（図２：（１０））。このように、中継ノード装置がコンテンツデータまたはチャンクを中継することで、ノード装置間でセッションの確立が困難な場合であっても、コンテンツデータまたはチャンクを送受信することができる。このときに、中継ノード装置が、コンテンツデータまたはチャンクと、制御メッセージとの両方を中継することになると、中継ノード装置の通信負荷が増大し、制御メッセージの送受信が遅延する場合がある。この問題を解消するために、本実施形態では、コンテンツデータよりも制御メッセージの中継を優先して行う。以下、本実施形態における優先方法の詳細について説明する。本実施形態の参加メッセージと、検索メッセージと、チャンク要求メッセージと、パブリッシュメッセージと、検索応答メッセージと、コンテンツ送信要求メッセージと、チャンク送信要求メッセージとは、本発明の制御メッセージの一例である。本実施形態の制御メッセージは、大きくても数ＫＢ（Ｋｉｌｏ  Ｂｙｔｅ）以下である。制御メッセージは、小さくて５０ＫＢであり、大きくて５００ＫＢ程度となる。制御メッセージ自体のサイズによっては、５０ＫＢを下回ることもある。そのため、中継する情報のデータサイズが、５００ＫＢ以下の場合、制御メッセージであると判定している。一方、５００ＫＢ以上のデータサイズの場合、コンテンツデータであると判定している。また、本実施形態に記載のコンテンツカタログ情報が、複数のノード装置に分散して保存される場合がある。この場合、コンテンツカタログ情報を検索するメッセージも、本発明の制御メッセージに含まれる。本実施形態では、制御メッセージの最小データサイズは、５０ＫＢである。また、制御メッセージの最大データサイズは、５００ＫＢである。ただし、制御メッセージのデータサイズが、５０ＫＢよりも小さくなってしまう場合もある。コンテンツデータの送受信以外のメッセージが、制御メッセージである。
【００６８】
［コンテンツデータの中継の優勢方法について］
本実施形態では、中継ノード装置は、定期的に中継ノード装置自身が中継している情報の総データサイズを決定する。具体的には、中継ノード装置は、情報を中継するたびに、中継している情報のデータサイズを総データサイズとして加算していく。そして、定期的に総データサイズの値をリセットして、ゼロにする。その後、再度、中継ノード装置が中継する情報のデータサイズの加算を開始する。このとき、総データサイズの大きさが所定値以上になったとき、新規のコンテンツデータの中継が停止される。つまり、新規に中継されるコンテンツデータを破棄することになる。また、総データサイズの大きさが所定以上になったときであっても、制御メッセージの中継は継続され、破棄されない。これは、コンテンツデータのデータサイズに比べ、制御メッセージのデータサイズが小さいためである。制御メッセージの中継を停止、または、破棄してしまうことは、情報通信システムＳの動作効率を低下することにつながる。この理由のため、総データサイズが所定以上になった場合であっても、データサイズが小さい制御メッセージの中継が継続されることで、情報通信システムＳの動作効率を低下させずに、情報通信システムＳを稼動することができる。
【００６９】
［ノード装置の電気的構成］
次に、図３を参照して、ノード装置の電気的構成ついて説明する。図３は、本実施形態のノード装置の電気的構成を示すブロック図である。図３に示すように、本実施形態のノード装置には、ノード装置を制御するＣＰＵ１が備えられている。ＣＰＵ１には、ＨＤＤ２とＲＡＭ３とデコーダ部４と通信部９とがそれぞれ電気的に接続されている。ＨＤＤ２、ＲＡＭ３、などの記憶手段とＣＰＵ１とは、ノード装置のコンピュータを構成している。ＣＰＵ１、ＨＤＤ２、ＲＡＭ３、デコーダ部４、及び通信部９はバスを介して相互に接続されている。なお、ノード装置としては、パーソナルコンピュータ、又はＳＴＢ（Set 
Top Box）等を適用可能である。
【００７０】
ＨＤＤ２は、プログラム記憶領域２１を含む。プログラム記憶領域２１は、メイン動作プログラム記憶領域２２と中継処理プログラム記憶領域２３とノード判定処理プログラム２４とを含む。メイン動作プログラム記憶領域２２は、メイン動作プログラムを記憶する。メイン動作プログラムは、ノード装置にメイン動作を実行させる。中継処理プログラム記憶領域２３は、中継処理プログラムを記憶する。中継処理プログラムは、ノード装置に中継処理動作を実行させるプログラムである。ノード判定処理プログラム記憶領域２４は、ノード判定処理プログラムを記憶する。ノード判定処理プログラムは、ノード装置に接続可能ノードであるか、接続不可能ノードであるかを判定させる。なお、上記メイン動作プログラムと中継処理プログラムとノード判定処理プログラムとは、例えば、ネットワークＮＷ上の所定のサーバからダウンロードされるようにしてもよいし、例えば、ＣＤ−ＲＯＭ等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【００７１】
ＲＡＭ３は、中継メッセージ一時記憶領域３１と中継ノードテーブル一時記憶領域３２と判定情報一時記憶領域３３と総データサイズ一時記憶領域３４と第１時間情報一時記憶領域３５と第２時間情報一時記憶領域３６とを含む。
【００７２】
中継メッセージ一時記憶領域３１は、ノード装置が受信した中継メッセージを一時記憶する。本実施形態の中継メッセージは、中継ノード装置により中継される制御メッセージと、中継されるコンテンツデータの両方とを含む。本実施形態では、中継ノード装置により中継される情報を中継メッセージと呼ぶ。そのため、中継メッセージは、中継ノード装置により中継される制御メッセージと、中継されるコンテンツデータとの両方を含む。中継ノードテーブル一時記憶領域３２は、本実施形態の中継ノードテーブルを一時記憶する。判定情報一時記憶領域３３は、接続可能ノードを示す識別情報、または、判定不可能ノードを示す識別情報を一時記憶する。総データサイズ一時記憶領域３４は、上述した総データサイズを一時記憶する。第１時間情報一時記憶領域３５は、第１時間情報を一時記憶される。第１時間情報は、総データサイズの加算が開始された時刻を示す情報である。第２時間情報一時記憶領域３６は、第２時間情報を一時記憶する。第２時間情報は、ノード装置自身が接続可能ノードか、接続不可能ノードであるかを、コンタクトノードに判定を依頼した時刻を示す情報である。
【００７３】
通信部９は、ネットワークＮＷを通じてノード装置または外部装置と情報の通信制御を行う。本実施形態の通信部は、本発明の受信部の一例である。
【００７４】
ノード装置は、通信部９を介して要求に応じて送信されてきたコンテンツデータを受信する受信処理を行う。本実施形態のコンテンツデータはパケット化されて送信されるようになっている。各パケットは、通信部９を通じて受信され、ＲＡＭ３に一時記憶される。このように一時記憶されたコンテンツデータは、ＲＡＭ３から読み出されてデコーダ部４と、映像処理部５と、音声処理部７と、ディスプレイ６と、スピーカ８とを通じて再生出力される。或いは、ＲＡＭ３に記憶されたコンテンツデータは、ＲＡＭ３から読み出されてＨＤＤ２に記憶されても良い。または、コンテンツデータがＲＡＭ３を介さず、直接ＨＤＤ２に記憶されても良い。その後、ユーザからの操作指示にしたがって、ＨＤＤ２からコンテンツデータが読み出される。読み出されたコンテンツデータは、デコーダ部４と、映像処理部５と、音声処理部７と、ディスプレイ６と、スピーカ８とを通じて再生出力される。これにより、ユーザはコンテンツの視聴を行うことができる。
【００７５】
[本実施形態のノード装置の動作の説明]
以上説明した構成からなる本実施形態のノード装置の動作及び作用について、添付図面
を参照して説明する。まず、ノード装置の動作及び作用について、添付図面を参照して説明する。図４は、ノード装置におけるメイン動作の処理手順を示すフローチャートである。メイン動作は、電源またはコンセントを介して商用電源などの外部電源とノード装置とが接続され、インストールされたＰ２ＰソフトウェアプログラムがＣＰＵ１により実行されたことにより、遂行される。以下に示す処理は、ＣＰＵ１により処理される。
【００７６】
ステップＳ１０１では、参加処理が実行される。参加処理では、情報通信システムＳのコンタクトノードへ参加メッセージが送信される。コンタクトノードへ参加メッセージが送信されることで、ＤＨＴのルーティングテーブルが受信される。受信されたＤＨＴのルーティングテーブルは、ＨＤＤ２の所定の記憶領域に記憶される。また、参加処理とともに、ＣＰＵ１に備えられたタイマーによる計時動作が開始される。なお、タイマーは図示していない。計時動作が開始された時刻が、第１時間情報一時記憶領域３５に一時記憶される。なお、現在の時刻を示す情報は、通信部８を介してネットワークＮＷから取得されても良い。取得された時刻に基づいて、ＣＰＵ１が計時動作を行う。
【００７７】
ステップＳ１０２では、ノード判定処理が実行される。ステップＳ１０２のノード判定処理では、メイン動作を実行するノード装置自身が、接続可能ノードであるか、接続不可能ノードであるかが判定される。
【００７８】
ステップＳ１０３では、中継メッセージを受信したか否かが判定される。受信したメッセージに接続不可能ノード情報を示す識別情報が含まれ、且つ、メッセージを受信したノード装置が接続可能ノード装置であった場合に、中継メッセージが受信されたと判定される。具体的には、判定情報一時記憶領域３３に一時記憶された判定情報が参照されることで、メッセージを受信したノード装置が、接続可能ノードであるか、接続不可能ノードであるかが決定される。中継メッセージが受信されたと判定されたとき（ステップＳ１０３：ＹＥＳ）、ステップＳ１０４が実行される。中継メッセージが受信されたと判定されなかったとき（ステップＳ１０３：ＮＯ）、ステップＳ１０５が実行される。中継メッセージが受信されたと判定されたとき、受信した中継メッセージが、中継メッセージ一時記憶領域３１に一時記憶される。本実施形態のコンピュータとステップＳ１０３とは、本発明の受信部の一例である。また、本実施形態のステップＳ１０３は、本発明の受信ステップの一例である。
【００７９】
ステップＳ１０４では、中継処理が実行される。ステップＳ１０４では、ステップＳ１０３で受信した中継メッセージが、接続不可能ノードへ転送される。本実施形態のコンピュータとステップＳ１０４とは、本発明の中継部の一例である。また、本実施形態のステップＳ１０４は、本発明の中継ステップの一例である。
【００８０】
ステップＳ１０５では、制御メッセージが受信されたか否かが判定される。本実施形態における制御メッセージが受信されたと判定されたとき（ステップＳ１０５：ＹＥＳ）、ステップＳ１０６が実行される。本実施形態における制御メッセージが受信されたと判定されなかったとき（ステップＳ１０５：ＮＯ）、ステップＳ１０９が実行される。
【００８１】
ステップＳ１０６では、ステップＳ１０５で受信したと判定された制御メッセージが、メッセージを受信したノード装置宛のメッセージであるか否かが判定される。メッセージを受信したノード装置宛のメッセージであるかは、受信したメッセージの宛先に基づいて判定される。受信したメッセージの宛先のＩＰアドレスが、メッセージを受信したノード装置のＩＰアドレスと一致した場合、制御メッセージの宛先がノード装置自身であると判定される。制御メッセージの宛先がノード装置自身であると判定されたとき（ステップＳ１０６：ＹＥＳ）、ステップＳ１０８が実行される。制御メッセージの宛先がノード装置自身であると判定されなかったとき（ステップＳ１０６：ＮＯ）、ステップＳ１０７が実
行される。
【００８２】
ステップＳ１０７では、ステップＳ１０５で受信された制御メッセージが、他のノード装置へ転送される。具体的には、ステップＳ１０５で受信された制御メッセージが含むノード情報と、ノード装置が記憶するＤＨＴのルーティングテーブルに基づいて、制御メッセージの転送先のノード装置が決定される。決定された転送先のノード装置へ制御メッセージが転送される。
【００８３】
ステップＳ１０８では、ステップＳ１０５で受信された制御メッセージに対応する処理が実行される。上述した本実施形態の各制御メッセージに対応する処理が実行される。
【００８４】
ステップＳ１０９では、ユーザにより電源スイッチがＯＦＦにされたかが判定される。電源スイッチがＯＦＦにされなかった場合は、再度ステップＳ１０２が再度実行される。電源スイッチがＯＦＦにされた場合は、メイン動作処理が終了される。
【００８５】
（中継処理）
次に図５を用いて、本実施形態の中継処理動作の処理手順について説明する。図５は、本実施形態の中継処理動作を示すフローチャートである。ステップＳ２０１では、受信した中継メッセージが、制御メッセージであるか否かが判定される。具体的には、受信した中継メッセージのデータサイズに基づいて、中継メッセージが制御メッセージであるか否かが判定される。中継メッセージのデータサイズが、制御メッセージのデータサイズに該当するとき（ステップＳ２０１：ＹＥＳ）、ステップＳ２０４が実行される。中継メッセージのデータサイズが、制御メッセージのデータサイズに該当しないとき、つまり、コンテンツデータが中継されるとき（ステップＳ２０１：ＮＯ）、ステップＳ２０２が実行される。本実施形態のコンピュータとステップＳ２０１とは、本発明の第２判定部の一例である。
【００８６】
ステップＳ２０２では、ノード装置が中継しているメッセージの総データサイズが、所定値以上であるか否かが判定される。具体的には、総データサイズ一時記憶領域３４に記憶された総データサイズが参照される。参照された総データサイズに基づいて、中継しているメッセージの総データサイズが所定値以上であるか否かが判定される。総データサイズが所定値以上であると判定されたとき（ステップＳ２０２：ＹＥＳ）、ステップＳ２０３が実行される。総データサイズが所定値以上であると判定されなかったとき（ステップＳ２０２：ＮＯ）、ステップＳ２０４が実行される。本実施形態のコンピュータとステップＳ２０２とは、本発明の第１判定部の一例である。
【００８７】
ステップＳ２０３では、ステップＳ１０３で受信された中継メッセージが破棄される。具体的には、ステップＳ２０３で破棄されるのは、中継ノード装置により中継されるコンテンツデータである。ステップＳ２０３では、総データサイズが所定値以上になったことにより、現在中継しているデータサイズ以上の中継が困難であると判定される。そのため、ステップＳ１０３で新たに中継メッセージとして受信されたコンテンツデータが破棄される。
【００８８】
ステップＳ２０４では、ステップＳ１０３で受信された中継メッセージのデータサイズが、総データサイズに加算される。具体的には、総データサイズ一時記憶領域３４に記憶された総データサイズに、ステップＳ１０３で受信された中継メッセージのデータサイズが加算される。加算された総データサイズが、再度、総データサイズ一時記憶領域３４に一時記憶される。
【００８９】
ステップＳ２０５では、ステップＳ１０３で受信された中継メッセージが、接続不可能
ノードへ中継される。具体的には、中継メッセージとして、制御メッセージまたはコンテンツデータが接続不可能ノードへ中継される。本実施形態のコンピュータと、ステップＳ２０１、ステップＳ２０２、ステップＳ２０３及びステップＳ２０５は、本発明の制御部の一例である。また、本実施形態のステップＳ２０５は、本発明の制御ステップの一例である。
【００９０】
ステップＳ２０６では、第１時間情報一時記憶領域３５に一時記憶された時刻から、所定時間経過したか否かが判定される。所定時間とは、例えば、１０秒である。第１時間情報一時記憶領域３５に一時記憶された時刻から所定時間が経過したと判定されたとき（ステップＳ２０６：ＹＥＳ）、ステップＳ２０７が実行される。第１時間情報一時記憶領域３５に一時記憶された時刻から所定時間が経過したと判定されなかったとき（ステップＳ２０６：ＮＯ）、中継処理は終了される。
【００９１】
ステップＳ２０７では、総データサイズ一時記憶領域３４に記憶された総データサイズの値がリセットされる。リセットされるとは、総データサイズ一時記憶領域３４が初期化され、ゼロが一時記憶されることである。また、第１時間情報一時記憶領域３５に、ステップＳ２０７が実行された時刻が一時記憶される。
【００９２】
（ノード判定処理）
次に図６を用いて、本実施形態のノード判定処理動作の処理手順について説明する。図６は、本実施形態のノード判定処理動作を示すフローチャートである。ステップＳ３０１では、前回のノード判定処理から一定時間経過したか否かが判定される。具体的には、第２時間情報一時記憶領域３６に一時記憶された第２時間情報に基づいて判定される。タイマーにより計時される現在の時刻と、第２時間情報一時記憶領域３６に一時記憶された第２時間情報が示す時刻との差が、所定時間以上であるか否かが判定される。第２時間情報一時記憶領域３６に第２時間情報が記憶されていない場合、所定時間以上経過したと判定される。前回のノード判定処理から一定時間経過したと判定されたとき（ステップＳ３０１：ＹＥＳ）、ステップＳ３０２が実行される。前回のノード判定処理から一定時間経過したと判定されなかったとき（ステップＳ３０１：ＮＯ）、ノード判定処理は終了される。
【００９３】
ステップＳ３０２では、コンタクトノードに、接続可能ノードであるか、または接続不可能ノードであるかの判定が依頼される。具体的には、ノード装置からコンタクトノードに向けて、判定依頼メッセージが送信される。また、判定を依頼した時刻が、第２時間情報として第２時間情報一時記憶領域３２に一時記憶される。
【００９４】
ステップＳ３０３では、コンタクトノードから送信された判定結果が受信されたか否かが判定される。具体的には、コンタクトノードから、判定結果を示すメッセージが受信されたか否かが判定される。コンタクトノードから判定結果が受信されたと判定されとき（ステップＳ３０３：ＹＥＳ）、ステップＳ３０４が実行される。コンタクトノードから判定結果が受信されたと判定されなかったとき（ステップＳ３０３：ＮＯ）、ステップＳ３０５が実行される。
【００９５】
ステップＳ３０４では、判定情報一時記憶領域３３に、接続可能ノード情報であることを示す識別情報が一時記憶される。
【００９６】
ステップＳ３０５では、ステップＳ３０２で判定が依頼されてから所定の時間が経過したか否かが判定される。具体的には、第２時間情報一時記憶領域３６に一時記憶された時刻から所定の時刻が経過したか否かが判定される。所定の時間が経過したと判定されたとき（ステップＳ３０５：ＹＥＳ）、ステップＳ３０６が実行される。所定の時間が経過し
たと判定されなかったとき（ステップＳ３０５：ＮＯ）、ステップＳ３０３が再度実行される。
【００９７】
ステップＳ３０６では、判定情報一時記憶領域３３に、接続不可能ノード情報であることを示す識別情報が一時記憶される。これは、コンタクトノードからノード装置にアクセスすることができなかったため、ノード装置が接続不可能ノードであると判定される。
【００９８】
本実施形態の中継ノード装置によれば、中継ノード装置が中継するデータサイズが、所定値以上になったとき、コンテンツデータの中継を破棄する。また、中継ノード装置が中継するデータサイズが、所定値以上になったときであっても、制御メッセージの中継は継続される。この結果、中継ノード装置が、制御メッセージを待機、または、破棄することなく、ピアツーピア型の通信システムの動作効率の低減を防ぐことができる。
【００９９】
本実施形態では、中継ノード装置が中継するデータサイズが、所定値以上になったとき、コンテンツデータの中継が破棄されている。コンテンツデータの中継を破棄する代わりに、コンテンツデータが中継ノード装置のＨＤＤ２またはＲＡＭ３に一時的に記憶されても良い。この場合、総データサイズが所定値以下になったときに、一時的に記憶されたコンテンツデータの中継が再開される。
【０１００】
また、中継ノード装置が中継するデータサイズが、所定値以上になったとき、コンテンツデータよりも制御メッセージが優先されて中継されても良い。以下、制御メッセージの優先方法の一例について説明する。中継ノード装置の記憶装置として、ＨＤＤ２またはＲＡＭ３にキューが生成される。中継する必要があるコンテンツデータが、中継ノード装置が受信した順番にキューに挿入される。そして、キューに挿入された順番に、コンテンツデータが中継されることになる。一方、中継する必要がある制御メッセージは、キューの先頭に挿入されることになる。この結果、制御メッセージがコンテンツデータよりも優先されて中継されることになる。言い換えれば、コンテンツデータの中継が遅延されることになる。
【０１０１】
本実施形態では、中継ノード装置に本発明が適用された例である。一般的なノード装置に適用されても良い。具体的には、ノード装置がコンテンツデータを、他のノード装置に転送する場合、ノード装置が転送する総データサイズが決定される。決定された総データサイズが所定値以上の場合、コンテンツデータが破棄、またはコンテンツデータの転送が一時的に停止され、制御メッセージが優先されて他のノード装置に転送されることになる。また、ノード装置がコンテンツデータをダウンロードまたはアップロードする場合、ノード装置がダウンロードまたはアップロードする総データサイズが決定される。決定された総データサイズが所定値以上の場合、コンテンツデータのダウンロードまたはアップロードが破棄、または一時的に停止され、制御メッセージが優先されて他のノード装置に転送されることになる。
【０１０２】
本実施形態では、中継される制御メッセージを優先する方法として、中継するコンテンデータを破棄する方法が用いられた。変形例として、制御メッセージは通常通りに中継され、コンテンツデータは、単位時間当たりに送信されるコンテンツデータのデータサイズを制限されても良い。言い換えれば、コンテンツデータの中継が遅延されても良い。例えば、中継ノード装置の単位時間あたりに中継可能なデータサイズが１秒間当たりに５ＭＢ（Ｍｅｇａ  Ｂｙｅｔｅ）の場合、０．１秒ごとに０．５ＭＢまでコンテンツデータを送信可能としても良い。このようにすることで、残りの中継可能なデータサイズを、制御メッセージの中継に割り当てられることができる。このようにコンテンツデータの中継可能量を制限することで、制御メッセージを優先的に中継できるとともに、コンテンツデータの中継が局所的に増大することなく、平準的にコンテンツデータを中継することができる
。
【０１０３】
本実施形態のステップＳ２０１では、中継する中継メッセージのデータサイズに基づいて、中継されるメッセージが制御メッセージであるか、コンテンツデータでるかが判定された。ステップＳ２０１の変形例として、中継メッセージに、制御メッセージまたはコンテンツデータを識別する識別情報が付加されても良い。この識別情報が付加された中継メッセージが、ノード装置間で送受信されることで、各ノード装置は、中継メッセージが、制御メッセージであるか、コンテンツデータであるかを判別することができる。本実施形態のコンピュータと、変形例のステップＳ２０１とは、本発明の第３判定部の一例である。
【０１０４】
本実施形態では、ステップＳ２０２で、総データサイズが所定値以上であるか否かが判定されている。この所定値は、ノード装置の上り帯域または下り帯域よりも小さい値が設定される。この所定値として、ノード装置の上り帯域または下り帯域の数パーセントの帯域幅が設定されても良い。
また、上記実施形態においては、オーバーレイネットワークに、ＤＨＴを利用したピアツーピアネットワークが適用されていたが、これに限られるものではない。例えば、他のピアツーピアシステム、または、オーバーレイネットワークを用いたシステムが適用されても良い。ＤＨＴを利用しないピアツーピアシステムとしては、例えば、ハイブリッド型のピアツーピアシステムがある。
【符号の説明】
【０１０５】
１  ＣＰＵ
２  ＨＤＤ
３  ＲＡＭ
４  デコーダ部
５  映像処理部
６  ディスプレイ
７  音声処理部
８  スピーカ
９  通信部
Ｔｍ−ｎ  ノード装置
ＮＷ  ネットワーク
ＦＷ  ファイアウォール
ＢＲ  ブロードバンドルータ
Ｓ  情報通信システム
ＯＬ  オーバーレイネットワーク
ＮＬｍ  拠点ネットワーク
２１  プログラム記憶領域
２２  メイン動作プログラム記憶領域２２
２３  中継処理プログラム記憶領域
２４  ノード判定処理プログラム記憶領域
３１  中継メッセージ一時記憶領域
３２  中継テーブル一時記憶領域
３３  判定情報一時記憶領域
３４  総データサイズ一時記憶領域
３５  第１時間情報一時記憶領域
３６  第２時間情報一時記憶領域
【図１】
0005429024.tif 000002
【図２】
0005429024.tif 000003
【図３】
0005429024.tif 000004
【図４】
0005429024.tif 000005
【図５】
0005429024.tif 000006
【図６】
0005429024.tif 000007