説明

第1ノード装置、コンテンツ分散保存システム、コンテンツ分散保存方法及びプログラム

【課題】 本発明の目的は、コンテンツ分散保存システムのノード装置のキャッシュ利用効率を低下することなく、コンテンツの配信負荷を低減することが可能なコンテンツ分散方法を提供することである。
【課題を解決するための手段】
偽パブリッシュメッセージは、ノード装置がコンテンツを記憶していないにも関わらず、コンテンツを記憶していると偽るメッセージである。偽パブリッシュメッセージは、現在の日時から公開時期が近いコンテンツのコンテンツIDまたはチャンクIDと、偽パブリッシュメッセージを送信したノード装置のノード情報が含まれる。偽パブリッシュメッセージは、偽パブリッシュメッセージが含むコンテンツIDのルートノードに向けて送出される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムに関する。具体的には、コンテンツのオリジナルを記憶する情報処理装置の通信負荷を低減させるコンテンツ分散保存方法に関する。
【背景技術】
【0002】
この種のピアツーピア型の通信システムは、複数のノード装置により構成される。各種コンテンツのコンテンツデータは、複数のコンテンツデータの複製データ(以下、「レプリカ」という)として複数のノード装置に分散して保存される。コンテンツデータは、映画及び音楽などのコンテンツデータである。一般的には、各ノード装置間でレプリカを利用可能とした分散保存システムが知られている。これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。
【0003】
このようなコンテンツ分散保存システムを用いて、コンテンツ配信を行なう場合、人気のあるコンテンツのレプリカにはアクセスが集中する。このため、人気に応じた数のレプリカを複数のノード装置に分散保存することが望ましい。特許文献2には、各ノード装置は、新たに投入されるコンテンツのレプリカを、コンテンツ分散保存システムに接続するノード装置に利用可能とする前に、公開前のコンテンツの評価値が大きいときレプリカを事前に保存させる方法が記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−197400号公報
【特許文献2】特開2007−034630号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、コンテンツを公開前に配信するシステムでは、結果として人気がでなかったコンテンツ、または、データサイズの大きいコンテンツが公開前配信されることもある。このようなコンテンツが公開前配信されることで、コンテンツ分散保存システムを構成するノード装置のキャッシュの利用効率が低下することがあった。
【0006】
本発明は、上述した問題点を解決するためになされたものである。本発明の目的は、コンテンツ分散保存システムのノード装置のキャッシュ利用効率を低下することなく、コンテンツの配信負荷を低減することが可能なコンテンツ分散方法を提供することである。
【課題を解決するための手段】
【0007】
請求項1に記載の発明によれば、ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムであって、前記コンテンツ分散保存システムは、前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置と、前記複数のノード装置のいずれかである第1ノード装置と、を含み、前記第1ノード装置は、前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段と、現在の時刻を示す時刻情報を取得する第1取得手段と、前記記憶手段に記憶される前記公開時期情報の中で、前記第1取得手段により取得された前記時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを判定する第1判定手段と、前記第1判定手段により、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示す第1パブリッシュメッセージを送信する第1送信手段と、前記第1パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を受信する受信手段と、前記受信手段により前記送信要求情報が受信されたとき、前記情報処理装置から前記送信要求情報により要求されたコンテンツを取得する第2取得手段と、前記第2取得手段により取得されたコンテンツを、前記要求情報の送信元のノード装置へ送信する第2送信手段と、を備えることを特徴とする第1ノード装置である。
【0008】
請求項2に記載の発明によれば、前記情報処理装置または前記複数のノード装置のいずれかの前記ノード装置から取得した前記コンテンツを記憶する第2記憶手段を備え、前記第1判定手段により判定された前記公開時期情報に対応する前記識別情報が示す前記コンテンツが、前記第2記憶手段に記憶されていない場合、前記第1送信手段は、前記第1パブリッシュメッセージを送信することを特徴とする。
【0009】
請求項3に記載の発明によれば、前記コンテンツを記憶する第2記憶手段と、前記要求情報により要求された前記コンテンツが、前記第2記憶手段に記憶されているか否かを判定する第3判定手段と、を備え、前記第3判定手段により、前記要求されたコンテンツが前記第2記憶手段に記憶されていないと判定されたとき、前記第2記憶手段は、前記第2取得手段により取得されたコンテンツを記憶することを特徴とする。
【0010】
請求項4に記載の発明によれば、前記第2取得手段により前記コンテンツが取得されたとき、所定の期間内に前記受信手段により受信された前記要求情報の数が所定数以上であるかを判定する第4判定手段を備え、前記第4判定手段により前記要求情報の数が所定数以上であると判定されたとき、前記第2記憶手段は、前記第2取得手段により取得されたコンテンツを記憶することを特徴とする。
【0011】
請求項5に記載の発明によれば、前記第4判定手段により前記要求情報の数が所定数以上であると判定されたとき、前記第2取得手段により取得されたコンテンツを、他のノード装置に保存させるメッセージを示す保存要求メッセージを前記複数のノード装置のいずれかのノード装置に送信する第2送信手段を備えることを特徴とする。
【0012】
請求項6に記載の発明によれば、前記第1記憶手段は、所定の桁数から構成される前記第1識別情報を記憶し、前記第1ノード装置は、所定の桁数から構成され、前記複数のノード装置を夫々識別する第2識別情報であって、前記第1のノード装置に付与された前記第2識別情報を記憶する第3記憶手段と、前記第1判定手段により、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報と、前記第3記憶手段に記憶された前記第2識別情報との差が所定範囲内であるかを判定する第5判定手段と、を備え、前記第5判定手段により、差が所定範囲内であると判定されたとき、前記第1送信手段は、前記第1パブリッシュメッセージを送信することを特徴とする。
【0013】
請求項7に記載の発明によれば、前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツの第1データ容量が、前記第2記憶手段に前記コンテンツを記憶可能な第2データ容量以下であるか否かを判定する第6判定手段を備え、前記第6判定手段により、前記第1データ容量が、前記第2データ容量以下であると判定されなかったとき、前記第1送信手段は、前記第1パブリッシュメッセージを送信しないことを特徴とする。
【0014】
請求項8に記載の発明によれば、前記第1記憶手段は、前記第1識別情報と、前記第1識別情報が示す前記コンテンツの前記第1データ容量とを対応付けて記憶し、前記第1送信手段により、前記第1パブリッシュメッセージが送信されるとき、前記第1パブリッシュメッセージが送信されるコンテンツの前記第1データ容量を、前記第2データ容量から減算する減算手段を備え、前記第6判定手段は、前記第1データ容量が、前記減算手段により減算された前記第2データ容量以下であるか否かを判定することを特徴とする。
【0015】
請求項9に記載の発明によれば、ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムであって、前記コンテンツ分散保存システムは、前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置と、前記複数のノード装置のいずれかである第1ノード装置と、を含み、前記第1ノード装置は、前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツデータを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段と、現在の時刻を示す時刻情報を取得する第1取得手段と、前記記憶手段に記憶される前記公開時期情報の中で、前記第1取得手段により取得された前記時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを判定する第1判定手段と、前記第1判定手段により、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示すパブリッシュメッセージを送信する第1送信手段と、前記パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を受信する受信手段と、前記受信手段により前記送信要求情報が受信されたとき、前記情報処理装置から前記送信要求情報により要求されたコンテンツを取得する第2取得手段と、前記第2取得手段により取得されたコンテンツを、前記要求情報の送信元のノード装置へ送信する第2送信手段と、を備えることを特徴とするコンテンツ分散保存システムである。
【0016】
請求項10に記載の発明によれば、ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムのコンテンツ分散保存方法であって、前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツデータを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段に記憶される前記公開時期情報の中で、前記複数のノード装置のいずれかである第1ノード装置の第1取得手段により取得された時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを、前記第1のノード装置が判定する第1判定ステップと、前記第1判定ステップにより、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定ステップにより判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示すパブリッシュメッセージを、前記第1のノード装置が送信する第1送信ステップと、前記パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を、前記第1のノード装置が受信する受信ステップと、前記受信ステップにより前記送信要求情報が受信されたとき、前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置から前記送信要求情報により要求されたコンテンツを、前記第1のノード装置が取得する第2取得ステップと、前記第2取得ステップにより取得されたコンテンツを、前記要求情報の送信元のノード装置へ、前記第1のノード装置が送信する第2送信ステップと、を含むコンテンツ分散保存方法である。
【0017】
請求項11に記載の発明によれば、ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムにおいて、前記複数のノード装置のいずれかである第1ノード装置のコンピュータに、前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツデータを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段に記憶される前記公開時期情報の中で、前記第1ノード装置の第1取得手段により取得された時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを判定する第1判定ステップと、前記第1判定ステップにより、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定ステップにより判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示すパブリッシュメッセージを送信する第1送信ステップと、前記パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を受信する受信ステップと、前記受信ステップにより前記送信要求情報が受信されたとき、前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置から前記送信要求情報により要求されたコンテンツを取得する第2取得ステップと、前記第2取得ステップにより取得されたコンテンツを、前記要求情報の送信元のノード装置へ送信する第2送信ステップと、を実行させることを特徴とするプログラムである。
【発明の効果】
【0018】
請求項1に記載の発明によれば、第1送信手段は、第1判定手段により、現在時刻情報が示す現在の時刻から所定の期間経過後に公開される公開時期情報があると判定されたとき、第1判定手段により判定された公開時期情報に対応する第1識別情報が示すコンテンツが、ネットワークを介して取得可能であることを示す第1パブリッシュメッセージを送信する。第2取得手段は、受信手段により送信要求情報が受信されたとき、情報処理装置から送信要求情報により要求されたコンテンツを取得する。第2送信手段は、第2取得手段により取得されたコンテンツを、要求情報の送信元のノード装置へ送信する。従って、第1ノード装置が第1パブリッシュメッセージを送信した後に、コンテンツの要求を受け付けたとき、第1のノード装置が情報処理装置からコンテンツを取得する。そして、第1ノード装置は、取得したコンテンツを記憶手段に記憶し、要求元の装置へ送信する。一般的に、コンテンツが事前配信されないと、コンテンツのオリジナルを記憶する情報処理装置にアクセスが集中することが考えられる。第1のノード装置が最初にコンテンツの要求を受け付けることで情報処理装置の負荷集中を避けるとともに、要求を受け付けてからコンテンツを保存することで、不要なコンテンツの保存を避けることができる。この結果、コンテンツ分散保存システムのノード装置のキャッシュ利用効率が低下することを防ぐことができる。
【0019】
請求項2に記載の発明によれば、第1判定手段により判定された公開時期情報に対応する識別情報が示すコンテンツが、第2記憶手段に記憶されていない場合、第1送信手段は、第1パブリッシュメッセージを送信する。従って、第2記憶手段にコンテンツが記憶されていない場合に、第1ノード装置が、コンテンツの公開時期が近いコンテンツの第1パブリッシュメッセージを送信することができる。この結果、第1ノード装置に不要なコンテンツを保存させることを避け、コンテンツ分散保存システムのノード装置のキャッシュ利用効率が低下することを防ぐことができる。
【0020】
請求項3に記載の発明によれば、第3判定手段により、要求されたコンテンツが第2記憶手段に記憶されていないと判定されたとき、第2記憶手段は、第2取得手段により取得されたコンテンツを記憶する。従って、他のノード装置からコンテンツの要求があるまでは、第1ノード装置はコンテンツを情報処理装置から取得して記憶しない。この結果、不要なコンテンツが記憶されないことで、キャッシュの利用効率の低下を防ぐことができる。さらに、第1ノード装置が、以前要求のあったコンテンツを記憶し、そのコンテンツを他のノード装置に送信できることで、情報処理装置からコンテンツを取得する回数を減らすことができ、情報処理装置の負荷集中を避けることができる。
【0021】
請求項4に記載の発明によれば、第4判定手段により要求情報の数が所定数以上であると判定されたとき、第2記憶手段は、第2取得手段により取得されたコンテンツを記憶する。この結果、要求情報の数が所定数位以上の場合に第1ノード装置がコンテンツを記憶するため、要求が少ないコンテンツが、第1ノード装置に記憶されないことで、キャッシュの利用効率の低下を防ぐことができる。
【0022】
請求項5に記載の発明によれば、第2送信手段は、第4判定手段により要求情報の数が所定数以上であると判定されたとき、第2取得手段により取得されたコンテンツを、他のノード装置に保存させるメッセージを示す保存要求メッセージを複数のノード装置のいずれかのノード装置に送信する。この結果、要求情報の数が所定数位以上の場合に他のノード装置へコンテンツを記憶させるため、第1ノード装置への負荷集中を避けるとともに、情報処理装置からコンテンツを取得する回数を減らすことができる。
【0023】
請求項6に記載の発明によれば、第5判定手段により、第1識別情報と第2識別情報との差が所定範囲内であると判定されたとき、第1送信手段は、第1パブリッシュメッセージを送信する。この結果、第1ノード装置の第2識別情報に基づいて、第1パブリッシュメッセージを送信するコンテンツが決定されるため、特定の第1ノード装置に負荷が集中することを防ぐことができる。
【0024】
請求項7に記載の発明によれば、第6判定手段により、第1データ容量が、第2データ容量以下であると判定されなかったとき、第1送信手段は、第1パブリッシュメッセージを送信しない。従って、第1ノード装置が記憶可能なデータ容量に応じた数のパブリッシュメッセージを送信することができる。この結果、第1ノード装置が記憶できないデータ容量のコンテンツを中継することがなく、第1ノード装置の負荷を低減することができる。
【0025】
請求項8に記載の発明によれば、減算手段は、第1送信手段により、第1パブリッシュメッセージが送信されるとき、第1パブリッシュメッセージが送信されるコンテンツの第1データ容量を、第2データ容量から減算する。第6判定手段は、第1データ容量が、減算手段により減算された第2データ容量以下であるか否かを判定する。この結果、既に第1パブリッシュメッセージを送信したコンテンツが第1ノード装置に記憶されることを予想して、第1ノード装置が記憶可能なデータ容量に応じた数の第1パブリッシュメッセージを送信することができる。
【0026】
請求項9に記載の発明によれば、第1送信手段は、第1判定手段により、現在時刻情報が示す現在の時刻から所定の期間経過後に公開される公開時期情報があると判定されたとき、第1判定手段により判定された公開時期情報に対応する第1識別情報が示すコンテンツが、ネットワークを介して取得可能であることを示す第1パブリッシュメッセージを送信する。第2取得手段は、受信手段により送信要求情報が受信されたとき、情報処理装置から送信要求情報により要求されたコンテンツを取得する。第2送信手段は、第2取得手段により取得されたコンテンツを、要求情報の送信元のノード装置へ送信する。従って、第1ノード装置が第1パブリッシュメッセージを送信した後に、コンテンツの要求を受け付けたとき、第1のノード装置が情報処理装置からコンテンツを取得する。そして、第1ノード装置は、取得したコンテンツを記憶手段に記憶し、要求元の装置へ送信する。一般的に、コンテンツが事前配信されないと、コンテンツのオリジナルを記憶する情報処理装置にアクセスが集中することが考えられる。第1のノード装置が最初にコンテンツの要求を受け付けることで情報処理装置の負荷集中を避けるとともに、要求を受け付けてからコンテンツを保存することで、不要なコンテンツの保存を避けることができる。この結果、コンテンツ分散保存システムのノード装置のキャッシュ利用効率が低下することを防ぐことができる。
【0027】
請求項10または請求項11に記載の発明によれば、第1送信ステップは、第1判定ステップにより、現在時刻情報が示す現在の時刻から所定の期間経過後に公開される公開時期情報があると判定されたとき、第1判定ステップにより判定された公開時期情報に対応する第1識別情報が示すコンテンツが、ネットワークを介して取得可能であることを示す第1パブリッシュメッセージを送信する。第2取得ステップは、受信ステップにより送信要求情報が受信されたとき、情報処理装置から送信要求情報により要求されたコンテンツを取得する。第2送信ステップは、第2取得ステップにより取得されたコンテンツを、要求情報の送信元のノード装置へ送信する。従って、第1ノード装置が第1パブリッシュメッセージを送信した後に、コンテンツの要求を受け付けたとき、第1のノード装置が情報処理装置からコンテンツを取得する。そして、第1ノード装置は、取得したコンテンツを記憶手段に記憶し、要求元の装置へ送信する。一般的に、コンテンツが事前配信されないと、コンテンツのオリジナルを記憶する情報処理装置にアクセスが集中することが考えられる。第1のノード装置が最初にコンテンツの要求を受け付けることで情報処理装置の負荷集中を避けるとともに、要求を受け付けてからコンテンツを保存することで、不要なコンテンツの保存を避けることができる。この結果、コンテンツ分散保存システムのノード装置のキャッシュ利用効率が低下することを防ぐことができる。
【図面の簡単な説明】
【0028】
【図1】本実施形態における情報通信システムSにおける各ノード装置Tm−nの接続態様の一例を示す図である。
【図2】本実施形態のノード装置の電気的構成を示すブロック図である。
【図3】ノード装置におけるメイン動作の処理手順を示すフローチャートである。
【図4】ノード装置におけるダウンロード処理の処理手順を示すフローチャートである。
【図5】ノード装置における偽パブリッシュ処理の処理手順を示すフローチャートである。
【発明を実施するための最良の形態】
【0029】
[最良の実施形態]
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、ピアツーピア型の情報通信システムに本発明を適用した場合の実施形態である。
【0030】
[情報通信システムSの概要構成]
始めに、図1を参照して、本実施形態における情報通信システムSの概要構成について説明する。図1は、本実施形態における情報通信システムSにおける各ノード装置の接続態様の一例を示す図である。
【0031】
図1に示すように、情報通信システムSは、複数のノード装置Tm−n(n=1,2,3・・・の何れか)から構成されている。複数のノード装置Tm−nは、ネットワークNWを介して互いに通信可能である。このネットワークNWは、現実世界の通信ネットワークである。例えば、インターネットである。
【0032】
ネットワークNWは、各拠点ネットワークNLm(m=1,2,3・・・の何れか)を相互接続するためのネットワークである。このネットワークNWは、例えば、インターネットやWAN(Wide Area Network)等である。そして、ネットワークNWは、例えば、
IX(Internet Exchange)、ISP(Internet Service Provider)、DSL(Digital Subscriber Line)回線事業者の装置、FTTH(Fiber To The Home)回線事業者の装置、及び通信回線等によって構築されている。なお、ネットワークNWは、情報通信システムS専用のネットワークであっても良い。
【0033】
本実施形態では、ネットワークNW内に、1つ以上の各拠点ネットワークNLmが形成される。また、各拠点ネットワークNLmには、複数のノード装置Tm−n(n=1,2,3・・・の何れか)が接続されている。各拠点ネットワークNLmは、夫々拠点mの敷地内に構築されたネットワークである。拠点としては、例えば、会社、学校、病院、カラオケボックス、塾等がある。この拠点ネットワークNLmは、例えば、LAN等により構築されている。或いは、拠点ネットワークNLmは、複数のLANが相互接続して構築されたネットワークであっても良い。この場合、複数のLANは、ルータ等のネットワーク機器を介して接続される。複数のLANが相互接続されたネットワークとしては、例えば、CAN(Campus Area Network)等がある。各拠点ネットワークNLmには、ファイアウォールFW又はブロードバンドルータBRが接続されている。ファイアウォールFW又はブロードバンドルータBRは、拠点内に接続されるノード装置Tm−nと、その拠点に接続されるノード装置Tm−n以外のノード装置Tm−nとを通信可能にする通信機器である。ファイアウォールFW又はブロードバンドルータBRは、公知であるので詳細な説明は省略する。ファイアウォールFW又はブロードバンドルータBRの何れが拠点に設置されるかは、拠点毎に任意に決定される。本実施形態の拠点ネットワークNLmは、例えば、LAN(Local Area Network)である。
【0034】
また、ネットワークNWには、センターサーバと投入サーバとが接続されている。センターサーバと投入サーバとは特に図示していない。センターサーバは、後述するオーバーレイネットワークOLで送受信されるコンテンツデータのオリジナルを記憶する。また、センターサーバは、コンテンツカタログ情報をノード装置Tm−nに送信する。コンテンツカタログ情報の詳細については後述する。投入サーバは、後述するオーバーレイネットワークOLにコンテンツデータを投入するサーバ装置である。ここで、コンテンツデータの投入とは、コンテンツデータをノード装置Tm−nから取得可能な状態におくことをいう。なお、コンテンツデータを、「コンテンツ」という。
【0035】
各ノード装置Tm−nには、固有の製造番号及びIP(Internet Protocol)アドレス
が割り当てられている。また、情報通信システムSに接続されている各ノード装置Tm−nには、所定桁数からなる固有の識別情報であるノードIDが割り当てられている。本実施形態の情報通信システムSでは、コンテンツ配信のためのオーバーレイネットワークOLが構築されている。オーバーレイネットワークOLは、ネットワークNW上に構築されたオーバーレイネットワークである。言い換えれば、オーバーレイネットワークOLは、物理的なネットワーク上に生成される論理的なネットワークである。また、オーバーレイネットワークOLは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。分散ハッシュテーブルを、以下、「DHT(Distributed Hash Table)」という。なお、DHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知である。本実施形態のノードIDは、本発明の第2識別情報の一例である。
【0036】
本実施形態では、各ノード装置Tm−nがピアツーピア方式で通信を行えるよう、ブロードバンドルータBRやファイアウォールFWにおいてポートフォワーディングの設定が行われる場合がある。例えば、ブロードバンドルータBRであれば、UPnP(Universal Plug and Play)機能等を利用して自動的にポートフォワーディングの設定が行われる
ようにしておくと良い。以下ノード装置Tm−nを、単にノード装置と呼ぶ。
【0037】
[オーバーレイネットワークOLへの参加方法について]
各ノード装置は、夫々、DHT(Distributed Hash Table)を用いたルーティングテーブルを保持している。このルーティングテーブルは、情報通信システムS上における各種制御メッセージの転送先を規定している。制御メッセージは、P2Pの情報通信システムの運用を制御するメッセージである。言い換えれば、制御メッセージは、P2Pの情報通信システムで、コンテンツの検索又はコンテンツの取得に用いるためのメッセージである。また、制御メッセージは、DHTのルーティングテーブルに従って送受信されるメッセージである。具体的に、このルーティングテーブルには、ID空間内で適度に離れたノード装置のノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。情報通信システムSに接続している1台のノード装置は、必要最低限のノード装置のノード情報をルーティングテーブルとして記憶している。各ノード装置間で互いに制御メッセージが転送されることで、ノード情報を記憶していないノード装置についてのノード情報が取得される。また、制御メッセージが、各ノード装置により送受信されることで、情報通信システムSは、ピアツーピア型の情報通信システムとして動作可能である。なお、本実施形態の情報通信システムSは、本発明のコンテンツ分散保存システムの一例である。
【0038】
なお情報通信システムSへの接続は、情報通信システムSへ接続していないノード装置が、接続している任意のノード装置に対して情報通信システムSへの参加要求を示す参加メッセージを送信することによって行われる。情報通信システムSへの参加とは、ノード装置が情報通信システムSに接続され、情報通信システムSからコンテンツデータを取得可能になることである。任意のノード装置は、例えば、情報通信システムSに常時接続しているコンタクトノードである。情報通信システムSへ参加するノード装置が、コンタクトノードへ参加メッセージを送信することで、ノード装置は、DHTのルーティングテーブルをコンタクトノードから取得することができる。
【0039】
[コンテンツ取得動作の概要について]
情報通信システムSにおいては、内容の異なる様々なコンテンツデータが複数のノード装置に分散して保存される。各コンテンツデータには、それぞれコンテンツ名及びコンテンツデータ毎に固有の識別情報であるコンテンツIDが付与されている。本実施形態では、コンテンツIDとノードIDとは、同じ桁数のIDが付与される。各コンテンツのコンテンツ名及びコンテンツID等の属性情報は、コンテンツカタログ情報に記述されている。コンテンツカタログ情報は、センターサーバにより作成されて、全てのノード装置に配信される。各コンテンツのコンテンツ名及びコンテンツID等の属性情報は、コンテンツカタログ情報に記述されている。コンテンツカタログ情報は、センターサーバにより作成されて、全てまたは一部のノード装置に配信される。また、コンテンツカタログ情報は、各ノード装置に分散して保存されても良い。また、本実施形態では、各コンテンツは、複数のデータに分割されている。この分割されたデータを、「チャンク」という。各チャンクは、例えば、センターサーバにより、コンテンツを所定のデータサイズで分割することにより生成される。本実施形態では、チャンクの最小データサイズは、2MB(Mega Byte)である。また、チャンクの最大データサイズは、128MBである。ただし、チャンクに分割した結果、一部のチャンクが、2MBよりも小さくなってしまう場合もある。また、チャンクに分割する前のデータサイズがもともと2MBより小さい場合、2MB未満のデータサイズのチャンクとなる場合がある。本実施形態では、コンテンツデータが複数のチャンクに分割されている。本実施形態に記載のように、コンテンツデータが複数のチャンクに分割されなくても良い。分割されていないコンテンツデータが本実施形態に適用されても良い。
【0040】
各チャンクは、複数のノード装置に分散されて保存される。これにより、オリジナルとなるコンテンツが複数のノード装置に分散して保存されることになる。各チャンクのオリジナルは、センターサーバに保存されている。各チャンクには、それぞれシーケンス番号及びチャンクIDが付与されている。シーケンス番号は、例えば、分割された複数のチャンクを、オリジナルとなるコンテンツを構成するように並べたときの並び順に相当する。チャンクIDは、チャンク毎に固有の識別情報である。本実施形態では、チャンクIDとノードIDとは、同じ桁数のIDが付与される。
【0041】
各ノード装置は、あるコンテンツのコンテンツIDを取得すると、そのコンテンツを構成する各チャンクのチャンクIDを、そのシーケンス番号と対応付けて取得することができる。コンテンツを構成する各チャンクのチャンクIDは、例えば、コンテンツカタログ情報において、オリジナルとなるコンテンツの属性情報中に、シーケンス番号と対応付けて記述されていても良い。
【0042】
チャンクを保存しているノード装置を、「コンテンツ保持ノード」という。また、チャンクの所在は、インデックス情報として、チャンクの所在を管理(記憶)しているノノード装置により記憶される。以下、チャンクの所在を管理しているノード装置を、「ルートノード」という。インデックス情報は、チャンクを保存したノード装置のノード情報と、チャンクのチャンクIDと等の組を含む。このようなルートノードは、例えば、チャンクIDと最も近いノードIDを有するノードNnであるように定められる。チャンクIDと最も近いノードIDとは、例えば、IDの上位桁が最も多く一致するノードIDである。
【0043】
あるノード装置のユーザが、所望のコンテンツを取得したい場合、ノード装置は、所望されたコンテンツを構成する各チャンクを保存するコンテンツ保持ノードをそれぞれ検索する。以下、ユーザによりチャンクの取得を望むノード装置を、「ユーザノード」という。具体的に、ユーザノードは、検索メッセージを送信する。この検索メッセージは、取得を望むチャンクのチャンクID及びユーザノードのノードIDを含む。この検索メッセージが、ユーザノードが記憶するDHTのルーティングテーブルに従って、他のノード装置に対して送信される。つまり、ユーザノードは、検索メッセージを、ルートノードに向けて送信する。これにより、検索メッセージは、チャンクIDをキーとするDHTルーティングによって最終的にルートノードに到着することになる。なお、DHTルーティングについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
【0044】
検索メッセージを受信したルートノードは、これに含まれるチャンクIDに対応するインデックス情報をインデックス情報キャッシュから1または複数取得する。取得されたインデックス情報は、検索メッセージの送信元であるユーザノードに対して返信される。こうしてインデックス情報を取得したユーザノードは、インデックス情報に基づいてチャンクを取得(ダウンロード)する。具体的に、ユーザノードは、インデックス情報に含まれるコンテンツ保持ノードのIPアドレス及びポート番号等に基づいて、チャンク要求メッセージをコンテンツ保持ノードに送信する。チャンク要求メッセージには、ユーザノードのノード情報、所望するコンテンツのコンテンツID及び取得を望むチャンクのチャンクIDが含まれている。チャンク要求メッセージを受信したコンテンツ保持ノードは、チャンク要求メッセージに含まれるチャンクIDに対応するチャンクをユーザノードに送信(アップロード)する。一方、所望するチャンクを保存するコンテンツ保持ノードが存在しないとき、ユーザノードは、コンテンツ保持ノードのインデックス情報を取得することができない。この場合、ユーザノードは、センターサーバからチャンクを取得する。
【0045】
あるいは、ルートノードは、インデックス情報に含まれるIPアドレス等に示されたコンテンツ保持ノードに対してチャンク送信要求メッセージを送信する。チャンク送信要求メッセージは、チャンク送信要求メッセージの送信元のノード情報を含む。チャンク送信要求メッセージを受信したコンテンツ保持ノードは、受信したメッセージが含むノード情報が示すユーザノードへコンテンツデータまたはチャンクの送信(アップロード)を開始する。これにより、ユーザノードは、コンテンツ保持ノードからコンテンツデータまたはチャンクを取得することが可能になる。
【0046】
そして、ユーザノードは、コンテンツ保持ノードからチャンクを取得して保存したとき、チャンクを公開する。チャンクの公開とは、ユーザノードがコンテンツ保持ノードとしてチャンクを保存したことをルートノードへ知らせることをいう。チャンクの公開により、公開したコンテンツ保持ノードから、公開されたチャンクを他のノード装置が取得可能になる。具体的に、チャンクを保存したユーザノードは、パブリッシュメッセージを送信する。パブリッシュメッセージは、チャンクのチャンクID及びチャンクを保存したユーザノードのノード情報を含む。パブリッシュメッセージは、ルートノードに向けて送出される。これにより、パブリッシュメッセージは、検索メッセージと同じように、チャンクIDをキーとするDHTルーティングによってルートノードに到着することになる。ルートノードは、受信したパブリッシュメッセージに含まれるノード情報及びチャンクIDの組を含むインデックス情報をインデックス情報キャッシュに記憶する。こうして、上記ユーザノードは、新たに、上記チャンクを保存するコンテンツ保持ノードとなる。
【0047】
[偽パブリッシュ処理]
本実施形態の情報通信システムSでは、各ノード装置がコンテンツカタログ情報を全て、または、一部を保存している。本実施形態のコンテンツカタログ情報には、各コンテンツの属性情報と、コンテンツIDと、コンテンツの公開情報とが含まれる。コンテンツの公開情報は、コンテンツがネットワークNWに公開される期間を示す情報である。例えば、コンテンツの公開情報は、公開開始日時情報である。公開開始日時情報は、コンテンツがネットワークNWに公開される開始日時を示す。コンテンツの公開とは、ネットワークNWを介してコンテンツを取得可能なことを示す。また、コンテンツの公開は、ネットワークNWを介してコンテンツが閲覧または視聴できることを示す。ピアツーピア型のコンテンツ配信システムでは、コンテンツがネットワークに公開されるときに、公開されるコンテンツへのアクセスが集中する場合がある。これは、オーバーレイネットワークOLに参加するノード装置の中で、公開されるコンテンツのコンテンツ保持ノードが存在しない、または、少ないためである。本実施形態のコンテンツIDは、本発明の第1識別情報の一例である。本実施形態の公開情報は、本発明の公開時期情報の一例である。
【0048】
アクセスの集中は、コンテンツ保持ノード、または、センターサーバへのコンテンツの取得要求の集中である。コンテンツが公開された直後は、コンテンツ保持ノードが存在しない、または、コンテンツ保持ノードの数が少ないため、特定のノード装置、または、センターサーバにアクセスが集中する場合がある。この問題を解決するために、公開前のコンテンツを事前に複数のノード装置に保存させる方法がある。しかしながら、この方法では、人気の出ないコンテンツであっても、複数のノード装置に事前に保存されてしまうため、キャッシュの利用効率が悪い。
【0049】
本実施形態では、複数のノード装置にコンテンツを公開前に保存させず、且つ、センターサーバへのアクセスの集中を避けるために、オーバーレイネットワークに接続されるノード装置のいずれかが偽パブリッシュメッセージを送信する。以下、偽パブリッシュメッセージの送信方法の詳細について説明する。なお、本実施形態の偽パブリッシュメッセージは、本発明の第1パブリッシュメッセージの一例である。
【0050】
本実施形態では、各ノード装置がコンテンツカタログ情報を全て、または、一部を保存している。各ノード装置が保存しているコンテンツカタログ情報の中で、現在の日時から所定の期間以内に公開されるコンテンツカタログ情報が決定される。そして、決定されたコンテンツカタログ情報が含むコンテンツIDまたはチャンクIDについての偽パブリッシュメッセージが、オーバーレイネットワークに接続される複数のノード装置のいずれかに送信される。偽パブリッシュメッセージは、ノード装置がコンテンツを記憶していないにも関わらず、コンテンツを記憶していると偽るメッセージである。偽パブリッシュメッセージは、現在の日時から公開時期が近いコンテンツのコンテンツIDまたはチャンクIDと、偽パブリッシュメッセージを送信したノード装置のノード情報が含まれる。
【0051】
偽パブリッシュメッセージは、偽パブリッシュメッセージが含むコンテンツIDのルートノードに向けて送出される。これにより、偽パブリッシュメッセージは、パブリッシュメッセージと同じように、コンテンツIDまたはチャンクIDをキーとするDHTルーティングによってルートノードに到着することになる。ルートノードは、受信した偽パブリッシュメッセージに含まれるノード情報及びコンテンツIDまたはチャンクIDの組を含むインデックス情報をインデックス情報キャッシュに記憶する。
【0052】
こうして、コンテンツを検索する際、ユーザノードは、コンテンツまたはチャンクを保存したと偽ったノード装置へ、一旦チャンク要求メッセージを送信する。本実施形態では、チャンクを保存したと偽ったノード装置を第1ノード装置と呼ぶ。ユーザノードが第1ノード装置へチャンク要求メッセージを送信する。そして、ユーザノードからチャンク取得要求メッセージを受信した第1ノード装置は、チャンク要求メッセージをセンターサーバへ送信する。従って、第1ノード装置を介してセンターサーバにチャンク要求メッセージが送信されることで、コンテンツまたはチャンクの取得要求が直接センターサーバに送信されて負荷が集中することを回避することができる。なお、本実施形態に記載のセンターサーバは、本発明の情報処理装置の一例である。
【0053】
また、本実施形態では、第1ノードが一旦チャンク要求メッセージを受信する。そして、チャンク要求メッセージを受信した第1ノード装置が、センターサーバへチャンク要求メッセージを転送する。このとき、第1ノード装置がセンターサーバからチャンクまたはコンテンツを取得して、第1ノード装置の記憶手段に記憶しても良い。このように、第1ノードがチャンクまたはコンテンツを記憶することで、センターサーバに代わり、ユーザノードへチャンクまたはコンテンツを送信することができる。
【0054】
また、第1ノード装置が、所定期間以内にチャンク要求メッセージを所定回数以上受信したとき、第1ノード装置がチャンクまたはコンテンツをセンターサーバから取得して、第1ノード装置の記憶手段に記憶しても良い。チャンク要求メッセージが所定回数以上あったことは、要求されたコンテンツが、人気のあるコンテンツであることを示す。所定回数以上チャンク要求メッセージを受信したチャンクまたはコンテンツのみを、第1ノード装置は記憶手段に記憶しても良い。この場合、第1ノード装置は、チャンク要求メッセージが所定回数より小さいチャンクまたはコンテンツを記憶しない。従って、人気のあるチャンクまたはコンテンツは第1ノード装置の記憶手段に記憶されてセンターサーバの負荷を低減する。さらに、センターサーバの負荷を低減することに加え、人気のないチャンクまたはコンテンツは第1ノード装置に記憶されないため、キャッシュの利用効率を上げることができる。
【0055】
また、第1ノード装置のキャッシュ利用状況に基づいて、チャンク要求メセージを受信した第1ノード装置がチャンクまたはコンテンツを記憶するか否かが決定されても良い。この場合、第1ノード装置の記憶手段には、コンテンツを記憶する記憶領域が備えられる。本実施形態では、例えば後述するコンテンツ記憶領域である。コンテンツ記憶領域にコンテンツを記憶する記憶容量がある場合、第1ノード装置が取得したチャンクまたはコンテンツを記憶しても良い。チャンクまたはコンテンツを記憶する記憶領域の記憶容量は、例えば、予め設定された値である。また、コンテンツを記憶する記憶領域の記憶容量は、例えば、HDDまたはRAMの空き容量である。
【0056】
[ノード装置の電気的構成]
次に、図2を参照して、ノード装置の電気的構成ついて説明する。図2は、本実施形態のノード装置の電気的構成を示すブロック図である。図2に示すように、本実施形態のノード装置には、ノード装置を制御するCPU1が備えられている。CPU1には、HDD2とRAM3とデコーダ部4と通信部9とがそれぞれ電気的に接続されている。HDD2、RAM3、などの記憶手段とCPU1とは、ノード装置のコンピュータを構成している。CPU1、HDD2、RAM3、デコーダ部4、及び通信部9はバスを介して相互に接続されている。なお、ノード装置としては、パーソナルコンピュータ、又はSTB(Set Top Box)等を適用可能である。
【0057】
HDD2は、プログラム記憶領域21と、コンテンツカタログ情報記憶領域25と、コンテンツ記憶領域26と、インデックスキャッシュ情報記憶領域27と、リクエスト履歴リスト記憶領域28とを含む。プログラム記憶領域21は、メイン動作プログラム記憶領域22とダウンロード処理プログラム記憶領域23と偽パブリッシュ処理プログラム24とを含む。メイン動作プログラム記憶領域22は、メイン動作プログラムを記憶する。メイン動作プログラムは、ノード装置にメイン動作を実行させる。ダウンロード処理プログラム記憶領域23は、ダウンロード処理プログラムを記憶する。ダウンロード処理プログラムは、ノード装置にダウンロード処理動作を実行させるプログラムである。偽パブリッシュ処理プログラム記憶領域24は、偽パブリッシュ処理プログラムを記憶する。偽パブリッシュ処理プログラムは、ノード装置に偽パブリッシュメッセージを送信させるプログラムである。なお、上記メイン動作プログラムとダウンロード処理プログラムと偽パブリッシュ処理プログラムとは、例えば、ネットワークNW上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【0058】
コンテンツカタログ情報記憶領域25は、コンテンツカタログ情報を記憶する。本実施形態の情報通信システムSでは、各ノード装置がコンテンツカタログ情報を全て、または、一部を保存している。このコンテンツカタログ情報が、コンテンツカタログ情報記憶領域25に記憶される。本実施形態のコンテンツカタログ情報記憶領域25は、本発明の第1記憶手段の一例である。
【0059】
コンテンツ記憶領域26は、情報通信システムSで送受信されるコンテンツを記憶する。コンテンツ記憶領域26の記憶容量は予め設定される。本実施形態のコンテンツ記憶領域26は、本発明の第2記憶手段の一例である。インデックスキャッシュ情報記憶領域27は、インデックスキャッシュ情報を記憶する。リクエスト履歴リスト記憶領域28は、リクエスト履歴リストを記憶する。具体的には、チャンク要求メッセージが含むチャンクIDまたはコンテンツIDと、チャンク要求メッセージが受信された受信時刻とが対応付けられて、リクエスト履歴リスト記憶領域28に記憶される。なお、チャンク要求メッセージが含むチャンクIDまたはコンテンツIDと、チャンク要求メッセージがユーザノードにより送信された送信時刻とが対応付けられて、リクエスト履歴リスト記憶領域28に記憶されても良い。
【0060】
なお、コンテンツカタログ情報記憶領域25はRAM3に備えられても良い。また、コンテンツ記憶領域26はRAM3に備えられても良い。インデックスキャッシュ情報記憶領域27はRAM3に備えられても良い。
【0061】
通信部9は、ネットワークNWを通じてノード装置または外部装置と情報の通信制御を行う。
【0062】
ノード装置は、通信部9を介して要求に応じて送信されてきたチャンクまたはコンテンツを受信する受信処理を行う。本実施形態のチャンクまたはコンテンツはパケット化されて送信されるようになっている。各パケットは、通信部9を通じて受信され、RAM3に一時記憶される。このように一時記憶されたチャンクまたはコンテンツは、RAM3から読み出されてデコーダ部4と、映像処理部5と、音声処理部7と、ディスプレイ6と、スピーカ8とを通じて再生出力される。或いは、RAM3に記憶されたチャンクまたはコンテンツは、RAM3から読み出されてHDD2に記憶されても良い。または、コンテンツまたはチャンクがRAM3を介さず、直接HDD2に記憶されても良い。その後、ユーザからの操作指示にしたがって、HDD2からチャンクまたはコンテンツが読み出される。読み出されたチャンクまたはコンテンツは、デコーダ部4と、映像処理部5と、音声処理部7と、ディスプレイ6と、スピーカ8とを通じて再生出力される。これにより、ユーザはチャンクまたはコンテンツの視聴を行うことができる。
【0063】
[ノード装置のメイン動作の説明]
以上説明した構成からなる本実施形態のノード装置の動作及び作用について、添付図面を参照して説明する。まず、ノード装置の動作及び作用について、添付図面を参照して説明する。図3は、ノード装置におけるメイン動作の処理手順を示すフローチャートである。メイン動作は、電源またはコンセントを介して商用電源などの外部電源とノード装置とが接続され、インストールされたP2PソフトウェアプログラムがCPU1により実行される。
【0064】
ステップS101では、ノード装置がオーバーレイネットワークOLから脱退したか否かが判定される。オーバーレイネットワークから脱退したか否かは、ノード装置にインストールされたP2Pソフトウェアプログラムの起動が停止されたか否かにより判定される。P2Pソフトウェアプログラムの起動が停止されたとき、オーバーレイネットワークOLから脱退したと判定される。また、ノード装置の電源がオフにされた場合、オーバーレイネットワークOLから脱退したと判定される。ノード装置がオーバーレイネットワークから脱退したと判定されたとき(ステップS101:YES)、メイン動作処理は終了される。ノード装置がオーバーレイネットワークOLから脱退したと判定されなかったとき(ステップS101:NO)、ステップS102が実行される。
【0065】
ステップS102では、チャンク要求メッセージが受信されたか否かが判定される。チャンク要求メッセージが受信されたと判定されたとき(ステップS102:YES)、ステップS103が実行される。チャンク要求メッセージが受信されたと判定されなかったとき(ステップS102:NO)、ステップS104が実行される。なお、受信されたチャンク要求メッセージは、RAM3の所定の記憶領域に一時記憶される。本実施形態のコンピュータとステップS102とは、本発明の受信手段の一例である。本実施形態のステップS102は、本発明の受信ステップの一例である。
【0066】
ステップS103では、ダウンロード処理が実行される。ダウンロード処理の詳細は後述する。
【0067】
ステップS104では、実行時刻が到来したか否かが判定される。本実施形態の実行時刻は、予め決められた所定の時刻である。例えば、実行時刻は10分ごとである。なお、本実施形態では、各ノード装置はタイマーを備えている。各ノード装置に備えられたタイマーにより計時動作が行われる。実行時刻が到来したと判定されたとき(ステップS104:YES)、ステップS105が実行される。実行時刻が到来したと判定されなかったとき(ステップS104:NO)、ステップS106が実行される。
【0068】
ステップS105では、偽パブリッシュ処理が実行される。偽パブリッシュ処理の詳細は後述する。
【0069】
ステップS106では、検索メッセージが送信されたか否かが判定される。検索メッセージが送信されたと判定されたとき(ステップS106:YES)、ステップS107が実行される。検索メッセージが送信されたと判定されなかったとき(ステップS106:NO)、ステップS111が実行される。
【0070】
ステップS107では、インデックスキャッシュ情報が受信されたか否かが判定される。インデックスキャッシュ情報が受信されたと判定されたとき(ステップS107:YES)、ステップS108が実行される。インデックスキャッシュ情報が受信されたと判定されなかったとき(ステップS107:NO)、ステップS107が繰り返し実行される。なお、受信されたインデックスキャッシュ情報は、RAM3の所定の記憶領域に一時記憶される。
【0071】
ステップS108では、チャンク要求メッセージが送信される。チャンク要求メッセージは、ステップS107で受信されたインデックスキャッシュ情報に登録されたコンテンツ保持ノードへ送信される。
【0072】
ステップS109では、チャンクまたはコンテンツが受信されたか否かが判定される。具体的には、ステップS108で送信されたチャンク要求メッセージにより要求されたコンテンツが受信されたか否かが判定される。コンテンツが受信されたと判定されなかったとき(ステップS109:NO)、ステップS109が繰り返し実行される。コンテンツが受信されたと判定されたとき(ステップS109:YES)、ステップS110が実行される。
【0073】
ステップS110では、ステップS109がコンテンツ記憶領域26に記憶される。そして、ステップS110で記憶したコンテンツのパブリッシュメッセージが送信される。
【0074】
ステップS111では、その他の処理が実行される。その他の処理とは、例えば、情報通信システムSを制御する制御処理動作である。
【0075】
[ノード装置のダウンロード処理動作の説明]
図4は、ノード装置におけるダウンロード処理動作の処理手順を示すフローチャートである。まず、ステップS201では、ステップS102で受信したチャンク要求メッセージが、リクエスト履歴リストに追加される。リクエスト履歴リストは、リクエスト履歴リスト記憶領域28に記憶される。具体的には、チャンク要求メッセージが含むチャンクIDまたはコンテンツIDと、チャンク要求メッセージが受信された受信時刻とが対応付けられて、リクエスト履歴リスト記憶領域28に記憶される。なお、チャンク要求メッセージが含むチャンクIDまたはコンテンツIDと、チャンク要求メッセージがユーザノードにより送信された送信時刻とが対応付けられて、リクエスト履歴リスト記憶領域28に記憶されても良い。
【0076】
ステップS202では、リクエスト履歴リストの中で、リクエスト履歴リストに登録された受信時刻と現在の時刻との差が、所定時間以上であるリクエストが削除される。具体的には、リクエスト履歴リストに登録された受信時刻と現在の時刻との差が、所定時間以上であるチャンクIDまたはコンテンツIDが削除される。
【0077】
ステップS203では、チャンク要求メッセージに対応するチャンクまたはコンテンツが記憶されているかが判定される。具体的には、ステップS102で受信されたチャンク要求メッセージが含むチャンクIDまたはコンテンツIDに対応するコンテンツが、コンテンツ記憶領域26に記憶されているかが判定される。コンテンツが記憶されていると判定された場合(ステップS203:YES)、ステップS204が実行される。コンテンツが記憶されていると判定されなかった場合(ステップS203:NO)、ステップS205が実行される。本実施形態のコンピュータとステップS203とは、本発明の第3判定手段の一例である。
【0078】
ステップS204では、ステップS203で記憶していると判定されたチャンクまたはコンテンツがコンテンツ記憶領域26からRAM3へ読み出される。
【0079】
ステップS205では、チャンク要求メッセージに含まれるチャンクIDまたはコンテンツIDのリクエスト数が追加される。具体的には、ステップS102で受信したチャンク要求メッセージが含むチャンクIDまたはコンテンツIDが、リクエスト履歴リストに既に登録されている場合、リクエスト数が追加される。つまり、既にリクエスト履歴リストに登録されているチャンクIDまたはコンテンツIDのリクエスト数が追加される。一方、ステップS102で受信したチャンク要求メッセージが含むチャンクIDまたはコンテンツIDが、リクエスト履歴リストに登録されていない場合、リクエスト履歴リストに追加登録される。そして、追加登録されたチャンクIDまたはコンテンツIDのリクエスト数が1と決定される。なお、リクエスト数は、本実施形態のルートノードによりカウントされても良い。本実施形態のリクエスト数は、本発明の要求情報の数の一例である。
【0080】
ステップS206では、ステップS205で追加されたリクエスト数が、所定数以上であるか否かが判定される。リクエスト数が所定以上であると判定された場合(ステップS206:YES)、ステップS207が実行される。リクエスト数が所定以上であると判定されなかった場合(ステップS206:NO)、ステップS210が実行される。本実施形態のコンピュータとステップS206とは、本発明の第4判定手段の一例である。
【0081】
ステップS207では、チャンク要求メッセージの送信元が変更される。そして、送信元が変更されたチャンク要求メッセージがセンターサーバへ送信される。本実施形態のチャンク要求メッセージには、チャンク要求メッセージを送信したノード装置のノードIDと、IPアドレスとが含まれる。本実施形態のステップS207では、チャンク要求メッセージが含むノードIDは変更されず、チャンク要求メッセージが含むIPアドレスは、ステップS207を実行しているノード装置のIPアドレスへ変更される。なお、チャンク要求メッセージの送信元のノード装置のIPアドレスは、送信元のノード装置のノードIDと対応付けられてRAM3の所定の記憶領域に一時記憶される。
【0082】
ステップS208では、センターサーバからコンテンツが受信されたか否かが判定される。ステップS207で送信されたチャンク要求メッセージは、センターサーバへ送信される。センターサーバは、オーバーレイネットワークOLに分散して保存されるコンテンツのオリジナルを記憶している。チャンク要求メッセージを受信したセンターサーバは、チャンク要求メッセージが含むIPアドレスのノード装置へチャンクまたはコンテンツを送信する。送信されるチャンクまたはコンテンツは、センターサーバが受信したチャンク要求メッセージが含むチャンクIDまたはコンテンツIDに対応する。センターサーバからコンテンツが受信されたと判定された場合(ステップS208:YES)、ステップS209が実行される。センターサーバからコンテンツが受信されたと判定されなかった場合(ステップS208:NO)、ステップS208が繰り返し実行される。
【0083】
ステップS209では、ステップS208で受信されたチャンクまたはコンテンツが、コンテンツ記憶領域26へ記憶される。本実施形態のコンピュータとステップS209とは、本発明の第2取得手段の一例である。本実施形態のステップS209は、本発明の第2取得ステップの一例である。
【0084】
ステップS210では、チャンク要求メッセージがセンターサーバへ転送される。センターサーバへ転送されるチャンク要求メッセージの送信元は変換されない。ステップS210では、チャンク要求メッセージを送信したノード装置が送信元のまま、チャンク要求メッセージがセンターサーバへ転送される、このため、受信したチャンク要求メッセージが含むIPアドレスが示すノード装置へ、センターサーバはチャンクまたはコンテンツを送信することになる。なお、センターサーバから送信されるチャンクまたはコンテンツは、チャンク要求メッセージが含むチャンクIDまたはコンテンツIDに対応するコンテンツである。
【0085】
ステップS211では、ステップS204で読み出されたチャンクまたはコンテンツが、ユーザノードに送信される。また、ステップS209で記憶したチャンクまたはコンテンツがユーザノードに送信される。本実施形態のコンピュータとステップS211とは、本発明の第2送信手段の一例である。本実施形態のステップS211は、本発明の第2送信ステップの一例である。
【0086】
[ノード装置の偽パブリッシュ処理動作の説明]
図5は、ノード装置における偽パブリッシュ処理動作の処理手順を示すフローチャートである。まず、ステップS301では、公開開始日時から所定期間経過したコンテンツカタログ情報が、リクエスト履歴リストから削除される。具体的には、リクエスト履歴リストに登録されたコンテンツカタログ情報の中から、公開開始日時から所定期間経過したコンテンツカタログ情報が削除される。
【0087】
ステップS302では、コンテンツ記憶領域26の空き容量が決定される。コンテンツ記憶領域26の空き容量は、新たにコンテンツが記憶可能な容量を示す。また、空き容量は、HDD2またはRAM3に新たにコンテンツが記憶可能な空き容量であっても良い。
【0088】
ステップS303では、コンテンツカタログ情報記憶領域25に記憶されたコンテンツカタログ情報の中から、公開開始日時が近いカタログ情報が決定される。具体的には、現在時刻情報と、コンテンツカタログ情報が含む公開開始日時情報との日時差が所定期間以内であるか否かが判定される。現在時刻情報は、ノード装置のタイマーにより計時される現在の時刻を示す。本実施形態のノード装置のタイマーにより計時される現在の時刻は、RAM3の所定の記憶領域に記憶される。本実施形態のタイマーとRAM3とは、本発明の第1取得手段の一例である。現在の時刻は、ネットワークNWを介して他の装置から取得されても良い。なお、日時差は、単に時間の差であっても良い。また、日時差は、日数の差であっても良い。日時差が所定期間以内であるコンテンツカタログ情報は、公開開始が近いことを示す。決定されたコンテンツカタログ情報は、RAM3の所定の記憶領域に一時記憶される。なお、本実施形態のステップS303では、公開開始日時が近いコンテンツカタログ情報が決定されているが、これに限定されるものではない。例えば、公開開始日時が近いコンテンツカタログ情報の中から、ステップS303を実行するノード装置が記憶していないコンテンツのコンテンツカタログ情報が決定されても良い。ステップS303を実行するノード装置がコンテンツを記憶している場合、ステップS303が実行される前後で、ノード装置が記憶しているコンテンツのパブリッシュメッセージが送信されるためである。そのため、偽パブリッシュメッセージの送信が不要になるためである。本実施形態のコンピュータとステップS303とは、本発明の第1判定手段の一例である。また、本実施形態のステップS303は、本発明の第1判定ステップの一例である。
【0089】
ステップS304では、ステップS303で決定されたコンテンツカタログ情報全てについて、処理が完了したか否かが判定される。この処理は、以下に記載するステップS305からステップS309に示す処理である。処理が完了したコンテンツカタログ情報については、フラグが付与される。付与されたフラグは、コンテンツカタログ情報と対応付けられてRAM3の所定の記憶領域に一時記憶される。コンテンツカタログ情報全てについて、処理が完了したと判定されたとき(ステップS304:YES)、偽パブリッシュ処理は終了される。コンテンツカタログ情報全てについて、処理が完了したと判定されなかったとき(ステップS304:NO)、ステップS305が実行される。
【0090】
ステップS305では、未処理のコンテンツカタログ情報が1つ決定される。未処理のコンテンツカタログ情報は、ステップS303で決定されたコンテンツカタログ情報の中から決定される。例えば、ステップS303でRAM3の所定の記憶領域に記憶されたコンテンツカタログ情報の中から、フラグが付与されていないコンテンツカタログ情報が決定される。
【0091】
ステップS306では、ステップS305で決定されたコンテンツカタログ情報が含むチャンクIDまたはコンテンツIDと、ノードIDの1桁目が等しいか否かが判定される。ステップS306で用いられるノードIDは、ステップS306を実行するノード装置に付与されたノードIDである。ステップS306を実行するノード装置に付与されたノードIDは、RAM3の所定の記憶領域に一時記憶される。本実施形態におけるノードIDを記憶するRAM3は、本発明の第3記憶手段の一例である。本実施形態では、チャンクIDまたはコンテンツIDは、ノードIDと同じ桁数である。このため、本実施形態では、チャンクIDまたはコンテンツIDと、ノードIDの1桁目が等しいチャンクまたはコンテンツについて、偽パブリッシュメッセージが送信される。これは、ノード装置が記憶するコンテンツカタログ情報全てについて、偽パブリッシュメッセージを送信してしまうことを防ぐためである。これにより、偽パブリッシュメッセージを送信したことによって、受信されるチャンク要求メッセージに対応する処理負荷を分散することができる。また、多量の偽パブリッシュメッセージでネットワーク帯域が使用されてしまうことを防ぐことができる。チャンクIDまたはコンテンツIDと、ノードIDの1桁目とが等しいと判定された場合(ステップS306:YES)、ステップS307が実行される。チャンクIDまたはコンテンツIDと、ノードIDの1桁目とが等しいと判定されなかった場合(ステップS306:NO)、ステップS310が実行される。なお、ステップS306では、上位1桁目が等しいか否かが判定されているが、これに限定されるものではない。上位から所定桁数が等しいか否かが判定されても良い。また、チャンクIDまたはコンテンツIDと、ノードIDとが等しい桁数の数が所定数以上であるか否かが判定されても良い。本実施形態のコンピュータとステップS306とは、本発明の第5判定手段の一例である。
【0092】
ステップS307では、ステップS306で等しいと判定されたチャンクIDまたはコンテンツIDが、偽パブリッシュメッセージを送信するノード装置の候補として決定される。
【0093】
ステップS308では、ステップS307で決定されたコンテンツの容量が、ステップS302で決定された空き容量より小さいか否かが判定される。ステップS307で決定されたコンテンツの容量を示す情報は、コンテンツカタログ情報に含まれる。ステップS307で決定されたコンテンツの容量が、ステップS302で決定された空き容量より小さいと判定された場合(ステップS308:YES)、ステップS309が実行される。ステップS307で決定されたコンテンツの容量が、ステップS302で決定された空き容量より小さいと判定されなかった場合(ステップS308:NO)、ステップS311が実行される。本実施形態のコンピュータとステップS308とは、本発明の第6判定手段の一例である。また、本実施形態のステップS307で決定されたコンテンツの容量は、本発明の第1データ容量の一例である。また、本実施形態のステップS302で決定された空き容量が、本発明の第2データ容量の一例である。
【0094】
ステップS309では、ステップS308で空き容量より小さいと判定されたコンテンツカタログ情報が、偽パブリッシュメッセージを送信するコンテンツとして決定される。そして、空き容量から、決定されたコンテンツの容量が減らされる。これは、偽パブリッシュメッセージを送信することで、偽パブリッシュメッセージに対応するコンテンツをノード装置が記憶する可能性があるためである。このように、ノード装置の空き容量に応じて、偽パブリッシュメッセージが送信されるため、記憶不可能な容量のコンテンツがノード装置に記憶されることを防ぐことができる。本実施形態のコンピュータとステップS309とは、本発明の減算手段の一例である。
【0095】
ステップS310では、ステップS309で決定されたコンテンツカタログ情報についての偽パブリッシュメッセージが送信される。偽パブリッシュメッセージには、ステップS309で決定されたコンテンツカタログ情報が含むコンテンツIDと、ステップS310を実行するノード装置のノード情報が含まれる。本実施形態のコンピュータとステップS310とは、本発明の第1送信手段の一例である。本実施形態のステップS310は、本発明の第1送信ステップの一例である。
【0096】
ステップS311では、ステップSS305で決定されたコンテンツカタログ情報が、処理済みと決定される。処理済みを示すフラグと、ステップS305で決定されたカタログ情報とが対応付けられてRAM3の所定の記憶領域に一時記憶される。
【0097】
(変形例1)
本実施形態では、ステップS308に示すように、コンテンツ記憶領域26の空き容量に基づいて、偽パブリッシュメッセージを送信するか否かが判定されていた。変形例1では、コンテンツ記憶領域26の空き容量に基づいて、偽パブリッシュメッセージを送信するか否かが判定されなくても良い。この場合、図5に示すステップS302と、ステップS308と、ステップS309とは実行されなくても良い。
【0098】
(変形例2)
本実施形態では、ステップS306に示すように、ステップS305で決定されたコンテンツカタログ情報が含むチャンクIDまたはコンテンツIDと、ノードIDの1桁目が等しいか否かが判定されていた。変形例2では、ステップS305で決定されたコンテンツカタログ情報が含むチャンクIDまたはコンテンツIDと、ノードIDの1桁目が等しいか否かが判定されなくても良い。この場合、ステップS306は実行されない。また、ステップS306で、チャンクIDまたはコンテンツIDと、ノードIDの桁数が等しいか否かが判定される代わりに、コンテンツカタログ情報記憶領域の中からランダムにコンテンツカタログ情報が決定されて、ステップS310の処理が実行されても良い。また、コンテンツカタログ情報記憶領域の中から所定の規則により、コンテンツカタログ情報が決定されて、ステップS310の処理が実行されても良い。
【0099】
(変形例3)
本実施形態では、ステップS206でチャンク要求メッセージが所定数以上になった場合、ステップS207が実行されている。変形例3では、ステップS206が実行されずに、ステップS207が実行されても良い。この場合、チャンク要求メッセージを受信した場合、全てのチャンク要求メッセージの送信元が変更されて、センターサーバへ送信される。そして、ステップS209で全てのチャンク要求メッセージに対応するチャンクまたはコンテンツが記憶されても良い。
【0100】
本実施形態においては、オーバーレイネットワークOLに、DHTのルーティングテーブルを利用したピアツーピアの通信システムが適用されていたが、これに限られるものではない。他のピアツーピアの通信システム、または、オーバーレイネットワークを用いたシステムに、本発明が適用されても良い。例えば、DHT以外のルーティングテーブルが用いられる通信システムまたはピアツーピアの通信システムに本発明が適用されても良い。DHTを利用しないピアツーピアの通信システムとしては、例えば、ハイブリッド型のピアツーピアの通信システムがある。ハイブリッド型のピアツーピアの通信システム、または、ピュア型のピアツーピアの通信システムに本発明が適用されても良い。
【符号の説明】
【0101】
1 CPU
2 HDD
3 RAM
4 デコーダ部
5 映像処理部
6 ディスプレイ
7 音声処理部
8 スピーカ
9 通信部
21 プログラム記憶領域
22 メイン動作処理プログラム記憶領域
23 ダウンロード処理プログラム記憶領域
24 偽パブリッシュ処理プログラム記憶領域
25 コンテンツカタログ情報記憶領域
26 コンテンツ記憶領域
27 インデックスキャッシュ情報記憶領域
28 リクエスト履歴リスト記憶領域
Tm−n ノード装置
NLm 拠点
NW ネットワーク
FW ファイアウォール
BR ブロードバンドルータ
S 情報通信システム
OL オーバーレイネットワーク


【特許請求の範囲】
【請求項1】
ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムであって、
前記コンテンツ分散保存システムは、
前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置と、
前記複数のノード装置のいずれかである第1ノード装置と、
を含み、
前記第1ノード装置は、
前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段と、
現在の時刻を示す時刻情報を取得する第1取得手段と、
前記記憶手段に記憶される前記公開時期情報の中で、前記第1取得手段により取得された前記時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを判定する第1判定手段と、
前記第1判定手段により、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示す第1パブリッシュメッセージを送信する第1送信手段と、
前記第1パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を受信する受信手段と、
前記受信手段により前記送信要求情報が受信されたとき、前記送信要求情報により要求されたコンテンツを前記情報処理装置から取得する第2取得手段と、
前記第2取得手段により取得されたコンテンツを、前記要求情報の送信元のノード装置へ送信する第2送信手段と、
を備えることを特徴とする第1ノード装置。
【請求項2】
前記情報処理装置または前記複数のノード装置のいずれかの前記ノード装置から取得した前記コンテンツを記憶する第2記憶手段を備え、
前記第1判定手段により判定された前記公開時期情報に対応する前記識別情報が示す前記コンテンツが、前記第2記憶手段に記憶されていない場合、前記第1送信手段は、前記第1パブリッシュメッセージを送信することを特徴とする請求項1に記載の第1ノード装置。
【請求項3】
前記コンテンツを記憶する第2記憶手段と、
前記要求情報により要求された前記コンテンツが、前記第2記憶手段に記憶されているか否かを判定する第3判定手段と、
を備え、
前記第3判定手段により、前記要求されたコンテンツが前記第2記憶手段に記憶されていないと判定されたとき、前記第2記憶手段は、前記第2取得手段により取得されたコンテンツを記憶することを特徴とする請求項1または請求項2に記載の第1ノード装置。
【請求項4】
前記第2取得手段により前記コンテンツが取得されたとき、所定の期間内に前記受信手段により受信された前記要求情報の数が所定数以上であるかを判定する第4判定手段を備え、
前記第4判定手段により前記要求情報の数が所定数以上であると判定されたとき、前記第2記憶手段は、前記第2取得手段により取得されたコンテンツを記憶することを特徴とする請求項3に記載のコンテンツ第1ノード装置。
【請求項5】
前記第4判定手段により前記要求情報の数が所定数以上であると判定されたとき、前記第2取得手段により取得されたコンテンツを、他のノード装置に保存させるメッセージを示す保存要求メッセージを前記複数のノード装置のいずれかのノード装置に送信する第2送信手段を備えることを特徴とする請求項4に記載の第1ノード装置。
【請求項6】
前記第1記憶手段は、所定の桁数から構成される前記第1識別情報を記憶し、
前記第1ノード装置は、
所定の桁数から構成され、前記複数のノード装置を夫々識別する第2識別情報であって、前記第1のノード装置に付与された前記第2識別情報を記憶する第3記憶手段と、
前記第1判定手段により、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報と、前記第3記憶手段に記憶された前記第2識別情報との差が所定範囲内であるかを判定する第5判定手段と、
を備え、
前記第5判定手段により、差が所定範囲内であると判定されたとき、前記第1送信手段は、前記第1パブリッシュメッセージを送信することを特徴とする請求項1から請求項5の何れか一項に記載の第1ノード装置。
【請求項7】
前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツの第1データ容量が、前記第2記憶手段に前記コンテンツを記憶可能な第2データ容量以下であるか否かを判定する第6判定手段を備え、
前記第6判定手段により、前記第1データ容量が、前記第2データ容量以下であると判定されなかったとき、前記第1送信手段は、前記第1パブリッシュメッセージを送信しないことを特徴とする請求項1から請求項6のいずれか一項に記載の第1ノード装置。
【請求項8】
前記第1記憶手段は、前記第1識別情報と、前記第1識別情報が示す前記コンテンツの前記第1データ容量とを対応付けて記憶し、
前記第1送信手段により、前記第1パブリッシュメッセージが送信されるとき、前記第1パブリッシュメッセージが送信されるコンテンツの前記第1データ容量を、前記第2データ容量から減算する減算手段を備え、
前記第6判定手段は、前記第1データ容量が、前記減算手段により減算された前記第2データ容量以下であるか否かを判定することを特徴とする請求項7に記載の第1ノード装置。
【請求項9】
ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムであって、
前記コンテンツ分散保存システムは、
前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置と、
前記複数のノード装置のいずれかである第1ノード装置と、
を含み、
前記第1ノード装置は、
前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツデータを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段と、
現在の時刻を示す時刻情報を取得する第1取得手段と、
前記記憶手段に記憶される前記公開時期情報の中で、前記第1取得手段により取得された前記時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを判定する第1判定手段と、
前記第1判定手段により、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定手段により判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示すパブリッシュメッセージを送信する第1送信手段と、
前記パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を受信する受信手段と、
前記受信手段により前記送信要求情報が受信されたとき、前記情報処理装置から前記送信要求情報により要求されたコンテンツを取得する第2取得手段と、
前記第2取得手段により取得されたコンテンツを、前記要求情報の送信元のノード装置へ送信する第2送信手段と、
を備えることを特徴とするコンテンツ分散保存システム。
【請求項10】
ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムのコンテンツ分散保存方法であって、
前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツデータを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段に記憶される前記公開時期情報の中で、前記複数のノード装置のいずれかである第1ノード装置の第1取得手段により取得された時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを、前記第1のノード装置が判定する第1判定ステップと、
前記第1判定ステップにより、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定ステップにより判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示すパブリッシュメッセージを、前記第1のノード装置が送信する第1送信ステップと、
前記パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を、前記第1のノード装置が受信する受信ステップと、
前記受信ステップにより前記送信要求情報が受信されたとき、前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置から前記送信要求情報により要求されたコンテンツを、前記第1のノード装置が取得する第2取得ステップと、
前記第2取得ステップにより取得されたコンテンツを、前記要求情報の送信元のノード装置へ、前記第1のノード装置が送信する第2送信ステップと、
を含むコンテンツ分散保存方法。
【請求項11】
ネットワークを介して複数のノード装置により構成されるオーバーレイネットワークに、複数のコンテンツが分散して保存されるコンテンツ分散保存システムにおいて、前記複数のノード装置のいずれかである第1ノード装置のコンピュータに、
前記コンテンツが前記ネットワークを介して取得可能となる公開時期を示す公開時期情報であって、前記複数のコンテンツの少なくともいずれかの前記公開時期情報と、前記コンテンツデータを夫々識別する第1識別情報とを対応付けて記憶する第1記憶手段に記憶される前記公開時期情報の中で、前記第1ノード装置の第1取得手段により取得された時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があるかを判定する第1判定ステップと、
前記第1判定ステップにより、前記現在時刻情報が示す現在の時刻から所定の期間経過後に公開される前記公開時期情報があると判定されたとき、前記第1判定ステップにより判定された前記公開時期情報に対応する前記第1識別情報が示す前記コンテンツが、前記ネットワークを介して取得可能であることを示すパブリッシュメッセージを送信する第1送信ステップと、
前記パブリッシュメッセージに基づいて、前記複数のノード装置の中で前記第1ノード装置とは異なる他のノード装置から送信された所定のコンテンツの送信要求を示す送信要求情報を受信する受信ステップと、
前記受信ステップにより前記送信要求情報が受信されたとき、前記オーバーレイネットワークにより分散して保存されるコンテンツのオリジナルを保存する情報処理装置から前記送信要求情報により要求されたコンテンツを取得する第2取得ステップと、
前記第2取得ステップにより取得されたコンテンツを、前記要求情報の送信元のノード装置へ送信する第2送信ステップと、
を実行させることを特徴とするプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−70229(P2012−70229A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−213474(P2010−213474)
【出願日】平成22年9月24日(2010.9.24)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】