[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP5157770B2 - ノード装置、プログラム及び保存指示方法 - Google Patents

ノード装置、プログラム及び保存指示方法 Download PDF

Info

Publication number
JP5157770B2
JP5157770B2 JP2008233754A JP2008233754A JP5157770B2 JP 5157770 B2 JP5157770 B2 JP 5157770B2 JP 2008233754 A JP2008233754 A JP 2008233754A JP 2008233754 A JP2008233754 A JP 2008233754A JP 5157770 B2 JP5157770 B2 JP 5157770B2
Authority
JP
Japan
Prior art keywords
storage
node
content
candidate list
node device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008233754A
Other languages
English (en)
Other versions
JP2010067073A (ja
Inventor
卓哉 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2008233754A priority Critical patent/JP5157770B2/ja
Publication of JP2010067073A publication Critical patent/JP2010067073A/ja
Application granted granted Critical
Publication of JP5157770B2 publication Critical patent/JP5157770B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムの技術分野に関する。
この種のピアツーピア型の通信システムにおいて、複数のコンテンツデータ(映画及び音楽等のコンテンツのデータ)の複製データ(以下、「レプリカ」という)を複数のノード装置に分散して保存(配置)させ、各ノード装置間でレプリカを利用可能としたコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。
このようなコンテンツ分散保存システムにおいて、コンテンツ配信サービスを行なう場合、人気のあるコンテンツのレプリカはアクセスが集中するため、人気に応じた数のレプリカを複数のノード装置に分散保存することが望ましい。特許文献1には、各ノード装置は、新たに該システムに投入されるコンテンツのレプリカを他のノード装置に利用可能とする前に(公開前に)、当該公開前のコンテンツの評価値(当該コンテンツのレプリカの配信元で決定)と、既に保存済みのコンテンツのレプリカの評価値とを比較して、公開前のコンテンツの評価値が大きいときは保存する一方、小さいときには保存しないようになっている。
このように、システム内のノード装置に公開前の新規コンテンツのレプリカを保存させる際、保存先のノード装置の選択方法として、システム内のノード装置をランダムに選択したり、或いは、コンテンツ視聴予約期間を設け、当該期間中に視聴予約をしたノード装置に対してコンテンツのレプリカを保存させる等といった手法がとられている。例えば、特許文献2には、システム内に公開前の新規コンテンツのレプリカを投入する際、当該コンテンツの購入予約をしていたノード装置に対して、当該新規コンテンツのレプリカを保存させる保存指示装置等が開示されている。
特開2007−034630号公報 特開2008−20938号公報
しかしながら、各ノード装置のコンテンツのレプリカが記録される記憶部の空き記録容量について考慮していないので、あるノード装置はハードディスク等の記憶部に全くコンテンツのレプリカを記録していないのに、別のあるノード装置の記憶部は殆ど使用されていて空き記録容量がないという状態がおこる。
このため、記憶部の空き記録容量が、新たなコンテンツのレプリカの容量分に満たないノード装置に対して、新たなコンテンツのレプリカの保存が指示されると、当該ノード装置は、記憶部から何れかのレプリカを削除して、新しいレプリカの記録場所を確保して、新しいレプリカを記録するという状況が発生する。
本発明は、以上の問題等に鑑みてなされたものであり、コンテンツ分散保存システムにコンテンツデータ(レプリカ)を投入する際に、コンテンツ分散保存システムに参加する各ノード装置の記憶部等のコンテンツ記録手段の空き記録容量を特定するための情報に基づいて、空き記録容量が比較的多いと推定されるノード装置に対して、コンテンツデータを保存させるノード装置、プログラム、保存指示方法を提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータを保存させるコンテンツ分散保存システムにおける前記ノード装置であって、前記コンテンツデータの保存先の候補となるノード装置を識別するノード装置識別情報を含む保存先候補リストと、保存すべきコンテンツデータと、を取得する取得手段と、前記取得手段により取得された前記コンテンツデータを保存するコンテンツ保存手段と、前記取得手段により取得された前記保存先候補リストを、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させる他のノード装置の選択に用いる第1保存先候補リストと、前記他のノード装置へ送信する第2保存先候補リストと、に分割する分割手段と、前記分割手段により分割された前記第1保存先候補リストの中から、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させるノード装置を示す前記ノード装置識別情報を選択する選択手段と、前記選択手段により、前記第1保存先候補リストの中から選択された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する保存指示情報であって前記分割手段により分割された前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信する保存指示手段と、前記選択手段により、前記第1保存先候補リストの中から選択された前記ノード装置識別情報を前第1保存先候補リストから削除する削除手段と、を備えることを特徴とするノード装置である。
上記課題を解決するために、請求項に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータを保存させるコンテンツ分散保存システムにおける前記ノード装置に含まれるコンピュータに、前記コンテンツデータの保存先の候補となるノード装置を識別するノード装置識別情報を含む保存先候補リストと、保存すべきコンテンツデータと、を取得するステップと、前記取得されたコンテンツデータをコンテンツ保存手段に保存するステップと、前記取得された保存先候補リストを、前記保存されたコンテンツデータを保存させる他のノード装置の選択に用いる第1保存先候補リストと、前記他のノード装置へ送信する第2保存先候補リストと、に分割するステップと、前記分割された第1保存先候補リストの中から、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させるノード装置を示す前記ノード装置識別情報を選択するステップと、前記第1保存先候補リストの中から選択されたノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する保存指示情報であって前記分割された第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信するステップと、前記第1保存先候補リストの中から選択されたノード装置識別情報を前第1保存先候補リストから削除するステップと、を実行させることを特徴とするプログラムである。
上記課題を解決するために、請求項に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータを保存させるコンテンツ分散保存システムにおける前記ノード装置において実行される保存指示方法であって、前記コンテンツデータの保存先の候補となるノード装置を識別するノード装置識別情報を含む保存先候補リストと、保存すべきコンテンツデータと、を取得する取得工程と、前記取得工程において取得された前記コンテンツデータをコンテンツ保存手段に保存するコンテンツ保存工程と、前記取得工程において取得された前記保存先候補リストを、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させる他のノード装置の選択に用いる第1保存先候補リストと、前記他のノード装置へ送信する第2保存先候補リストと、に分割する分割工程と、前記分割工程において分割された前記第1保存先候補リストの中から、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させるノード装置を示す前記ノード装置識別情報を選択する選択工程と、前記選択工程において、前記第1保存先候補リストの中から選択された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する保存指示情報であって前記分割工程において分割された前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信する保存指示工程と、前記選択工程において、前記第1保存先候補リストの中から選択された前記ノード装置識別情報を前第1保存先候補リストから削除する削除工程と、を含むことを特徴とする保存指示方法である。
これらの発明によれば、第1保存先候補リストに基づいてノード装置に対して保存を指示することが可能になり、例えば他のノード装置あるいはコンテンツデータの保存状況を管理する管理装置等に毎回問い合わせることなく、コンテンツ分散保存システム内においてコンテンツデータを効率よく分散保存することができる。またコンテンツデータの保存を指示したノード装置を識別するノード装置識別情報を、分割された第1保存先候補リストから削除するので、同じノード装置に対して重複してコンテンツデータの保存を指示することを防止しつつ、コンテンツデータを保存することができ、さらに各ノード装置間でコンテンツデータの保存指示処理を分担しあうことができる。
また、保存先候補リストを他のノード装置の選択に用いる第1保存先候補リストと、他のノード装置へ送信する第2保存先候補リストと、に分割し、他のノード装置に対して保存指示を行なう際に第2保存先候補リストを他のノード装置に送信するので、保存指示情報を受信した他のノード装置も、第2保存先候補リストに基づいて更にコンテンツデータの保存指示を行うことができる
上記課題を解決するために、請求項に記載の発明は、請求項1に記載のノード装置において、前記選択手段は、前記分割手段により分割された前記第1保存先候補リストの中から第1所定数の前記ノード装置識別情報を選択し、前記保存指示手段は、前記選択手段により選択された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する前記保存指示情報であって前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信することを特徴とするノード装置である。
この発明によれば、第1保存先候補リストの中から第1所定数のノード装置識別情報を選択し、その選択されたノード装置識別情報により識別されるノード装置に対して保存指示情報およびコンテンツデータを送出するので、第1所定数のノード装置にコンテンツデータの保存を指示することができる。
上記課題を解決するために、請求項に記載の発明は、請求項に記載のノード装置において、前記第1所定数の前記ノード装置識別情報の選択が可能か否かを判定する判定手段を備え、前記判定手段により選択可能であると判定された場合に、前記選択手段は前記第1所定数の前記ノード装置識別情報を選択し、前記判定手段により選択不可能であると判定された場合においてノード装置識別情報を前記第1所定数生成する識別情報生成手段を備え、前記判定手段により選択不可能であると判定された場合において前記保存指示手段は、前記識別情報生成手段により生成された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する前記保存指示情報であって前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信することを特徴とするノード装置である。
この発明によれば、第1所定数のノード装置の選択ができない場合であっても、他のノード装置に対して確実にコンテンツデータの保存を指示することができる。
上記課題を解決するために、請求項に記載の発明は、請求項1から請求項のいずれか一項に記載のノード装置において、前記選択手段は、前記コンテンツ保存手段に保存された前記コンテンツデータが複数の前記ノード装置間で利用可能となる公開日時まで、前記ノード装置識別情報の選択を繰り返し行い、前記保存指示手段は、前記公開日時まで、前記保存指示情報および前記コンテンツ保存手段に保存された前記コンテンツデータの送信を繰り返し行うことを特徴とするノード装置である。
この発明によれば、コンテンツデータの公開日時までノード装置識別情報の選択と、保存指示情報およびコンテンツ保存手段に保存されたコンテンツデータの送信を繰り返し行うことで、コンテンツデータの事前配布をの公開日時まで行なうことができる。
上記課題を解決するために、請求項に記載の発明は、請求項1から請求項のいずれか一項に記載のノード装置において、他のノード装置の保存指示手段から送信された保存指示情報を受信する保存指示情報受信手段を備え、前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記取得手段は、前記第2保存先候補リストおよび前記コンテンツデータを取得し、前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記コンテンツ保存手段は、前記取得手段により取得された前記コンテンツデータを保存し、前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記分割手段は、前記取得手段により取得された前記第2保存先候補リストを、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させる他のノード装置の選択に用いる第3保存先候補リストと、前記コンテンツデータを保存させる他のノード装置へ送信する第4保存先候補リストと、に分割し、前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記選択手段は、前記分割手段により分割された前記第3保存先候補リストの中から前記ノード装置識別情報を選択し、前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記保存指示手段は、前記選択手段により選択された前記ノード装置識別情報により識別される前記ノード装置に、前記分割手段により分割された前記第4保存先候補リストを含む前記保存指示情報および前記コンテンツ保持手段に保存された前記コンテンツデータを送信し、前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記削除手段は、前記選択手段により前記第3保存先候補リストの中から選択された前記ノード装置識別情報を前記第3保存先候補リストから削除することを特徴とするノード装置である。
この発明によれば、ノード装置は、保存指示情報を受信して保存指示を受けたときに、取得された第2保存先候補リストを分割した第3保存先候補リストに基づいてノード装置を選択し、その選択されたノード装置に対して第4保存先候補リストを含む保存指示情報およびコンテンツデータを送出するので、その選択されたノード装置に対して保存指示情報を送信することができる。
上記課題を解決するために、請求項に記載の発明は、請求項に記載のノード装置において、前記保存指示情報受信手段により受信された前記保存指示情報を送信した前記他のノード装置から、前記コンテンツ保存手段に保存された前記コンテンツデータが複数の前記ノード装置間で利用可能となる公開日時を示す公開日時情報を取得する公開日時情報取得手段を備えることを特徴とするノード装置である。
この発明によれば、コンテンツデータの保存指示を受けたノード装置は、コンテンツデータの公開日時を容易に取得して把握することができる。
本発明によれば、第1保存先候補リストに基づいてノード装置に対して保存を指示することが可能になり、例えば他のノード装置あるいはコンテンツデータの保存状況を管理する管理装置等に毎回問い合わせることなく、コンテンツ分散保存システム内においてコンテンツデータを効率よく分散保存することができる。またコンテンツデータの保存を指示したノード装置を識別するノード装置識別情報を、分割された第1保存先候補リストから削除するので、同じノード装置に対して重複してコンテンツデータの保存を指示することを防止しつつ、コンテンツデータを保存することができ、さらに各ノード装置間でコンテンツデータの保存指示処理を分担しあうことができる。
また、保存先候補リストを他のノード装置の選択に用いる第1保存先候補リストと、他のノード装置へ送信する第2保存先候補リストと、に分割し、他のノード装置に対して保存指示を行なう際に第2保存先候補リストを他のノード装置に送信するので、保存指示情報を受信した他のノード装置も、第2保存先候補リストに基づいて更にコンテンツデータの保存指示を行うことができる。
以下、本発明の最良の実施形態を図面に基づいて説明する。
[1.コンテンツ分散保存システムの構成等]
始めに、図1等を参照して、本実施形態に係るコンテンツ分散保存システムの概要構成等について説明する。
図1は、本実施形態に係るコンテンツ分散保存システムSにおける各ノード装置の接続態様の一例を示す図である。
図1の下部枠101内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4a、4b、DSL(Digital Subscriber Line)回線事業者(の装置)5a、5b、FTTH(Fiber To The Home)回線事業者(の装置)6、及び通信回線(例えば、電話回線や光ケーブル等)7等によって、インターネット等のネットワーク(現実世界の通信ネットワーク)8が構築されている。なお、図1の例におけるネットワーク8には、データ(パケット)を転送するためのルータが、適宜挿入されているが図示を省略している。
このようなネットワーク8には、複数のノード装置(以下、「ノード」という)Nn(n=1,2,3・・・の何れか)がルータを介して接続されている。また、各ノードNnには、固有の製造番号およびIP(Internet Protocol)アドレスが割り当てられている。そして、本実施形態に係るコンテンツ分散保存システムSは、これらのノードNnのうち、図1の上部枠100内に示すように、何れか複数のノードNnの参加により形成されるピアツーピア方式のネットワークシステムとなっている。
なお、図1の上部枠100内に示すネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するP2Pネットワーク(オーバーレイネットワーク、論理的なネットワーク)9である。かかるP2Pネットワーク9は、特定のアルゴリズム、例えば、DHTを利用したアルゴリズムにより実現される。
そして、コンテンツ分散保存システムS(言い換えれば、P2Pネットワーク9)に参加している各ノードNnには、所定桁数からなる固有の識別情報であるノードIDが割り当てられている。また、当該ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、一つのID空間に偏りなく分散して配置されることになる。
更に、コンテンツ分散保存システムSは、新しいコンテンツをコンテンツ分散保存システムS内に投入する本発明の保存指示装置の一例としてのコンテンツ投入サーバCSと、各ノードNnのコンテンツデータ(コンテンツの複製データであって、以下、「レプリカ」と言う)を記録し保存(格納)するためのコンテンツ記録手段であるHD(Hard Disk)等から構成される記憶部の空き記録容量を収集して、各ノードNnのIPアドレス、各ノードNnのノードIDと対応付けてノード情報として管理保存するログ管理装置の一例としてのログ収集サーバLSを備える。
なお、コンテンツ分散保存システムSへの参加は、参加していないノードNn(例えば、ノードN25)が、該システムSへの参加許可を受けるべく、ネットワーク8を介して図示しない認証サーバに対して自己のIPアドレス情報やノードIDと共にシステム利用登録を要求(登録要求)し、当該認証サーバがコンテンツ分散保存システムSへの登録の認証処理を行なうことによって行われる。
そして、参加が許可された新規参加ノードNnは、既に当該システムSへ参加している任意のノードNn(例えば、当該システムSに常時参加しているコンタクトノード)に対して自己がシステムSへ参加したことを示す参加メッセージを送信してコンテンツ分散保存システムSへ参加する。
コンテンツ分散保存システムSに参加している各ノードNnは、夫々、DHTを用いたルーティングテーブルを保持している。そこで、新規参加ノードNnから参加メッセージを受けたノードNn(コンタクトノード等)は、自己が保持するルーティングテーブルをコピーして新規参加ノードNnへ送付する。
このルーティングテーブルは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定しており、具体的には、ID空間内で適度に離れたノードNnのノードID、IPアドレス、ポート番号等を含むノード情報が複数登録されている。なお、IPアドレス及びポート番号は、ネットワークアドレス情報の一例である。
コンテンツ分散保存システムSに参加している1台のノードNnは、該システムSに参加している全てのノードNnのうち、必要最低限のノードNnのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない(記憶していない)ノードNnについては、各ノードNn間で互いに各種メッセージを転送し合って届けてもらうようになっている。
このようなDHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
次に、各ノードNnにて利用されるコンテンツについて説明する。
コンテンツ分散保存システムSでは、内容の異なる様々なコンテンツ(例えば、映画や音楽等)のレプリカが所定のファイル形式で複数のノードNnが有する記憶部に分散して保存されており、各ノードNn間で当該レプリカを利用可能になっている。例えば、ノードN5の記憶部には、タイトルがXXXの映画のコンテンツのレプリカが保存されており、一方、ノードN3の記憶部には、タイトルがYYYの映画のコンテンツのレプリカが保存されるというように、複数のノードNn(以下、「コンテンツ保持ノード」という)に分散されて保存されている。
また、これらのコンテンツのレプリカには、夫々、コンテンツ名(タイトル)及びコンテンツID(コンテンツ毎に固有の識別情報)等の情報が付加されている。このコンテンツIDは、例えば、コンテンツ名+任意の数値(或いは、コンテンツデータの先頭数バイトでも良い)が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。或いは、システム管理者が、コンテンツ毎に一意のID値(ノードIDと同一ビット長)を付与しても良い。この場合は、コンテンツ名とそのコンテンツIDの対応が書かれたカタログがシステム管理者によってコンテンツ分散保存システムSに参加する全ノードNnに配布される。
そして、コンテンツ投入サーバCSによって、コンテンツ分散保存システムSに新たにコンテンツを投入する際には、記憶部の空き記録容量がより大きいと推定されるノードNnに対して、新規コンテンツのレプリカの保存が指示される。
図2に図示するように、コンテンツ分散保存システムS(P2Pネットワーク9)に参加する各ノードNnは、ログ収集サーバLSに対して、自己の記憶部の空き記録容量を特定するための情報(空き記録容量特定情報)を定期的(例えば、1日1回等、所定期間毎)に送信する。
なお、空き記録容量特定情報は、ノードNnの記憶部の空き記録容量を特定できる情報であれば、記憶部の空き記録容量そのもののほか、例えば、ノードNnの装置としての総稼働時間を示す情報、又は、ノードNnが過去にレプリカを取得した回数(ダウンロード回数)を示す情報、又は、ノードNnが取得したレプリカを再生した回数(視聴回数)を示す情報又は、ノードNnが過去に他のノードNn又はコンテンツ投入サーバCSから受けた保存指示の回数(事前配布回数)を示す情報、又は、ノードNnがレプリカを他のノードNnに利用可能とした回数(公開回数)を示す情報・・・・などでもよい。上述した総稼働時間は少ないほうが記憶部の空き記録容量が大きいと特定でき、ダウンロード回数、視聴回数・・・等の回数はいずれも少ないほうが記憶部の空き記録容量が大きいものと特定することができる。
ログ収集サーバLSは、各ノードNnから空き記録容量特定情報を受信し、各ノードNnのノードID、IPアドレスと対応付けてノード情報として保存する。
そして、図3に図示するように、コンテンツ投入サーバCSは、コンテンツ分散保存システムSに新しいコンテンツのレプリカを投入する際、つまり、コンテンツ分散保存システムSに参加するノードNnに分散して保存させる際には、ログ収集サーバLSに対して記憶部の空き記録容量がより大きい第2所定数(例えば、10個、100個など)のノード情報(ノード情報Nx_n)が掲載された保存先候補リストを要求して(図3[1]参照)、ログ収集サーバLSから保存先候補リストを取得する(取得手段)(図3[2]参照)。そして、取得した保存先候補リストをコンテンツ投入サーバCSの記憶部に保存し(ノード情報記憶手段)、当該保存先候補リストに掲載されたノード情報のうち、例えばランダムに1つ(第1所定数の一例)のノード情報を選択し(選択手段)、当該ノード情報に対応するノードNnに対して新規コンテンツのレプリカの保存を指示する(図3[3]参照)。例えば、保存先候補リストに掲載されたノード情報のうち、ノード情報Nx_1を選択した場合には、当該ノード情報Nx_1が示すノードN1に対して新規コンテンツのレプリカの保存を指示する(保存指示手段)。コンテンツ投入サーバCSからコンテンツの保存指示を受けたノードNnは、コンテンツのレプリカと保存先候補リストをコンテンツ投入サーバCSから受信して自己の記憶部に保存(記録)する。なお、上記図2及び図3ではコンテンツ分散保存システムS(P2Pネットワーク9)に参加しているノードNnをノードN5、N8、N10、、、等のみ示し、図を簡略化している。
そして、保存指示を受けたノードNnに保存された新規コンテンツは、公開日時がくると、当該コンテンツの情報がシステム運営者が配布するカタログリストに掲載され、コンテンツのレプリカのダウンロードが可能(コンテンツ分散保存システムSに参加する複数のノードNn間で共用可能)になる。そして、当該コンテンツの視聴を所望する各ノードNnは、(i)当該コンテンツを検索して(ii)当該コンテンツを保存するノードNnからコンテンツをダウンロードして取得して視聴する。
また、このように分散保存されているレプリカの所在、つまり、当該レプリカを保存したノードNnのノード情報(ノードIDやIPアドレス等)と当該コンテンツのレプリカに対応するコンテンツID等の組が含まれるインデックス情報が、当該コンテンツのレプリカの所在を管理しているノードNn(以下、「ルートノード」、又は「コンテンツデータ(コンテンツID)のルートノード」という)等により記憶(インデックスキャッシュに記憶)、管理されるようになっている。
つまり、コンテンツのレプリカを保存しているコンテンツ保持ノードのノード情報は、他のノードNnからの問い合わせに応じて提供可能なようにルートノードにより管理されている。
例えば、タイトルがXXXの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN4により管理され、タイトルがYYYの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN7により管理される。また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNnであるように定められる。
そして、あるノードNnのユーザが、所望するコンテンツのレプリカを取得したい場合、当該レプリカの取得を望むノードNn(以下、「ユーザノード」という)は、当該ユーザにより選択されたコンテンツのコンテンツID及び自己のIPアドレス等を含むコンテンツ所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ(検索)メッセージを、ルートノードに向けて(ルートノード宛に)送出する(つまり、ルートノードにコンテンツのレプリカの所在を問い合わせる)。これにより、コンテンツ所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着することになる。
なお、各ノードNnにおいてユーザにより選択されるべきコンテンツのコンテンツ名及びコンテンツID等の属性情報は、コンテンツカタログリストに記述されている。また、上記コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。なお、DHTルーティングについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
上記コンテンツ所在問合せ(検索)メッセージを受信したルートノードは、これに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。こうしてインデックス情報を取得したユーザノードは、当該インデックス情報に含まれるあるコンテンツ保持ノードのIPアドレス等に基づいて当該コンテンツ保持ノードに接続して、コンテンツ送信要求メッセージを送信し、そこからコンテンツのレプリカを取得することが可能になる。なお、当該インデックス情報には、例えば複数のコンテンツ保持ノードのノード情報が含まれていることもある(同一のコンテンツのレプリカが複数のコンテンツ保持ノードに保存されている場合)。かかる場合、ユーザノードは、当該複数のコンテンツ保持ノードのうち一つのコンテンツ保持ノードを選択し、選択したコンテンツ保持ノードに接続してコンテンツのレプリカを取得することができる。
なお、ルートノードは、当該インデックス情報に含まれるIPアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信し、これにより、ユーザノードは、上記コンテンツ保持ノードからそのレプリカを取得することもできる。また、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしているキャッシュノードから当該インデックス情報を取得することもできる。
コンテンツ投入サーバ又は他のノードNnから保存指示を受け、新たにコンテンツのレプリカを保存したノードNnは、レプリカを保存したことを当該コンテンツを管理するルートノードに知らせるために(言い換えれば、該システムSに参加している他のノードNnに対して公開するために)、当該レプリカのコンテンツID及び自己のノード情報(ノードID、IPアドレス等)が含まれるパブリッシュメッセージを生成し、該パブリッシュメッセージを、そのルートノードに向けて(ルートノード宛に)送出する。
これにより、パブリッシュメッセージは、コンテンツ所在問合せ(検索)メッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。そして、該ルートノードは、受信したパブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)することになる。こうして、保存指示を受けたノードNnは、新たに、上記コンテンツのレプリカを保持するコンテンツ事前保持ノードとなる。
なお、上記パブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報は、ルートノードに至るまでの転送経路におけるキャッシュノードにおいても登録(キャッシュ)される。
また、所望のレプリカを、コンテンツ保持ノードから取得して保存したユーザノードも、当該レプリカを保存したことをそのルートノードに知らせるために上述したパブリッシュメッセージをそのルートノードに向けて(ルートノード宛に)送出し、新たに、上記コンテンツのレプリカを保持するコンテンツ保持ノードとなる。
以上説明したコンテンツ分散保存システムSにおいては、新たに投入されるコンテンツのレプリカが、該システムSにおいて利用可能となる前に(公開前に)、保存指示装置の一例としてのコンテンツ投入サーバCSから何れかのノードNnに送信され、更に当該ノードNnが保存指示装置として機能して他のノードNnにレプリカを転送して保存指示することにより、一部のノードNn(コンテンツ事前保持ノード)に分散して保存させるようになっている。これは、新たに投入されるコンテンツの公開後に、当該コンテンツのレプリカにアクセスが集中するのを回避するためである。
このとき、コンテンツ投入サーバCSは、コンテンツ分散保存システムSに参加している全てのノードNnから記憶部の空き記録容量特定情報を定期的に収集して管理しているログ収集サーバLSから、記憶部の空き記録容量特定情報で示される空き記録容量がより大きい第2所定数のノード情報が掲載された保存先候補リストを取得して、これに基づいて、第1所定数(第1所定数<第2所定数)のノードNnをランダムに選択して当該選択されたノードNnに対して新規コンテンツのレプリカを保存するよう指示する。更に、保存を指示されたノードNnも、自己が保存指示装置となりコンテンツ投入サーバCSから受信した保存先候補リストに基づいてレプリカを保存(記録)するための記憶部の空き記録容量がより大きいノードNnを選択して、新たに投入されるコンテンツのレプリカの保存を指示するよう構成する。
これにより、レプリカを保存(記録)するための記憶部の空き記録容量が大きいノードNnを、コンテンツ事前保持ノードとすることができる。
[2.各装置の構成及び機能]
[2−1.ノードNnの構成及び機能]
次に、図4を参照して、ノードNnの構成及び機能について説明する。
図4は、ノードNnの概要構成例を示す図である。
各ノードNnは、図4に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラムを記憶するROM等から構成されたコンピュータとしての制御部11と、各種データ(例えば、コンテンツデータのレプリカ、保存先候補リスト、インデックス情報、DHT等)及び各種プログラム等を記憶保存(格納)するためのハードディスク等から構成されたコンテンツ記録手段及びノード情報記憶手段としての記憶部12と、受信されたコンテンツデータのレプリカ等を一時蓄積するバッファメモリ13と、コンテンツデータのレプリカに含まれるエンコードされたビデオデータ(映像情報)およびオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部14と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部15と、当該映像処理部15から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部16と、上記デコードされたオーディオデータをアナログオーディオ信号にD(Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部17と、当該音声処理部17から出力されたオーディオ信号を音波として出力するスピーカ18と、ネットワーク8を通じて他のノードNn、コンテンツ投入サーバCS、ログ収集サーバLS等間の情報の通信制御を行なうための通信部20と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス、或いは、操作パネル等)21と、を備えて構成され、制御部11、記憶部12、バッファメモリ13、デコーダ部14、通信部20、及び入力部21はバス22を介して相互に接続されている。なお、ノードNnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。
また、コンテンツ分散保存システムSが、当該システムSに参加する際のアクセス先となるコンタクトノードを備えている場合には、記憶部12には当該コンタクトノードのIPアドレス及びポート番号等が記憶されている。更に、記憶部12には、保存(記録)しているコンテンツのレプリカに関する情報(タイトル、コンテンツID等)を登録するための保存コンテンツ管理テーブルが記憶されている。
このような構成において、制御部11は、CPUが記憶部12等に記憶されたプログラム(本発明の保存指示処理プログラム、ノード処理プログラムを含む)を読み出して実行することにより、全体を統括制御し、コンテンツ分散保存システムSへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、コンテンツ保持ノード、及びコンテンツ事前保持ノードの少なくとも何れか一つのノードとしての処理を行なうようになっている。
また、保存指示装置としての処理を行なう制御部11は、本発明における取得手段、ノード情報記憶手段、選択手段、保存指示手段、識別情報生成手段、判定手段、分割ノード情報生成手段、保存指示情報受信手段、更新手段及び公開日時情報取得手段として機能する。なお、上記保存指示処理プログラム及びノード処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
制御部11は、定期的に記憶部12の空き記録容量を取得する。例えば、記憶部12のレプリカが記録されるハードディスクのキャッシュ領域の全容量と、既に使用している記録容量(使用容量)を求め、全容量から使用容量を減算して求めればよい(空き記録容量=全容量−使用容量)。そして、取得した空き記録容量に基づいて空き記録容量特定情報を生成してログ収集サーバLSに送信する。
また、制御部11は、コンテンツ投入サーバCS又は他のノードNnから、新たにコンテンツ分散保存システムSに投入すべきコンテンツのレプリカの保存指示を受けると、当該レプリカを記憶部12に記憶する。そして、保存指示と共に受信した保存先候補リストも一旦記憶部12に記憶する。そして、当該リストを送信用と保存用に分割し、保存用の保存先候補リストから第1所定数のノードNnを選択し、選択したノードNnに対してレプリカと送信用の保存先候補リストを送信してレプリカの保存を指示する。なお、保存先候補リストの分割については、後に詳細に説明する。
[2−2.ログ収集サーバLSの構成及び機能]
続いて、ログ収集サーバLSの概略構成について図5を用いて説明する。なお、図5は実施形態に係るログ収集サーバLSの概略構成を示すブロック図である。
図5に示すように、実施形態に係るコンテンツ分散保存システムSに含まれるログ収集サーバLSは、演算機能を有するCPU、作業用RAM(Random Access Memory)、各種データ及びプログラムを記録するROM(Read Only Memory)等から構成された制御部201と、各ノードNnから収集した各ノードNnの記憶部の空き記録容量、ノードID、IPアドレスを含むノード情報が記憶保存(格納)されたログデータベース202aを備え、各種データ及びプログラム等を記憶保存(格納)するためのHD等から構成された記憶部202と、ネットワークを通じて各ノードNn、コンテンツ投入サーバCS等、他の装置との間の情報の通信制御を行なうための通信部203と、当該ログ収集サーバLSを操作する操作者からの指示を受け付け当該指示に応じた指示信号を制御部201に出力する入力部(例えば、キーボード、マウス或いは、操作パネル等)204と、を備えて構成され、制御部201、記憶部202、通信部203及び入力部204、はバス205を介して相互にデータの授受が可能に接続されている。
そして、制御部201におけるCPUが記憶部202等に記録された各種プログラムを実行することにより、制御部201が、実施形態に係るログ収集サーバLSとしての全体動作を統括制御する。
図6に記憶部202に備えたログデータベース202aに記憶保存されたノード情報の一例を示す。
制御部201は、各ノードNnから定期的に空き記録容量特定情報を受信すると、ログデータベース202aに各ノードNnのノードID及びIPアドレスと対応付けて記憶する。このノードIDとIPアドレスは、空き記録容量特定情報と共に定期的に各ノードNnから受信してもよく、或いは各ノードNnがコンテンツ分散保存システムSに参加後、初めて(初回)ログ収集サーバLSに対して空き記録容量特定情報を送信する場合にだけ各ノードNnがノードID及びIPアドレスを空き記録容量特定情報と共にログ収集サーバLSに送信し、ログ収集サーバLSがこれをログデータベース202aに対応付けて保存し、各ノードNnは、2回目以降は、ノードIDと空き記録容量特定情報のみを送信し、ログ収集サーバLSは、受信したノードIDをキーとして共に受信した空き記録容量特定情報をログデータベース202aに対応付けて保存するよう構成すればよい。
以上の手順に従い、ログデータベース202aには、コンテンツ分散保存システムSに参加する全てのノードNnの記憶部の空き記録容量(Nx_n)、ノードID(Nx_n)、及びIPアドレス(Nx_n)が夫々対応付けられてノード情報Nx_1、ノード情報Nx_2、ノード情報Nx_3、、、ノード情報Nx_nとして登録(格納)されている。
そして、制御部201は、コンテンツ投入サーバCSからの要求に応じて、ログデータベース202aから、空き記録容量が大きいノード情報を要求された数(第2所定数)だけ抽出して保存先候補リストを生成してコンテンツ投入サーバCSに送信する。
[2−3.コンテンツ投入サーバCSの構成及び機能]
続いて、コンテンツ投入サーバCSの概略構成について図7を用いて説明する。なお、図7は実施形態に係るコンテンツ投入サーバCSの概略構成を示すブロック図である。
図7に示すように、実施形態に係るコンテンツ分散保存システムSに含まれるコンテンツ投入サーバCSは、演算機能を有するCPU、作業用RAM(Random Access Memory)、各種データ及びプログラムを記録するROM(Read Only Memory)等から構成された制御部301と、投入するコンテンツデータや投入済みのコンテンツデータ、ログ収集サーバLSから取得した保存先候補リスト及びその他の必要なプログラム等を記録保存(格納)するためのHD等から構成されたノード情報記憶手段としての記憶部302と、ネットワーク8を通じて各ノードNn、ログ収集サーバLS等、他の装置との間の情報の通信制御を行なうための通信部303と、当該コンテンツ投入サーバCSを操作する操作者からの指示を受け付け当該指示に応じた指示信号を制御部301に出力する入力部(例えば、キーボード、マウス或いは、操作パネル等)304と、を備えて構成され、制御部301、記憶部302、通信部303及び入力部304は、バス305を介して相互にデータの授受が可能に接続されている。
そして、制御部301におけるCPUが記憶部302等に記録されたプログラム(本発明の保存指示処理プログラムを含む)を読み出して実行することにより、全体動作を統括制御し、上記各構成部材と協動して当該コンテンツ投入サーバCSを本発明における保存指示装置として機能させる。そして、保存指示装置としての処理を行なう制御部301は、本発明における取得手段、ノード情報記憶手段、選択手段、保存指示手段、判定手段及び識別情報生成手段として機能する。なお、上記保存指示処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
制御部301は、新たにコンテンツ分散保存システムSに投入するコンテンツのレプリカを、記憶部302に保存した保存先候補リストから第1所定数のノードNnを選択し、選択したノードNnに対してレプリカと保存先候補リストを送信してレプリカの保存を指示する。
なお、本実施形態では、コンテンツ投入サーバCSの制御部301がコンテンツのレプリカの保存を指示する際には、当該指示と共にコンテンツのレプリカが保存先のノードNnに共に送信される、いわゆる「プッシュ式」のコンテンツ保存が行なわれるよう構成する。そして、コンテンツのレプリカの保存を指示されたノードNnは、レプリカを自己の記憶部12のキャッシュ領域に記録してコンテンツ事前保持ノードとなると共に、当該レプリカを保存したことをそのルートノードに知らせるために(言い換えれば、該システムSに参加している他のノードNnに対して公開するために)、当該レプリカのコンテンツID及び自己のノード情報が含まれるパブリッシュメッセージを、そのルートノードに向けて(ルートノード宛に)送出する。これにより、パブリッシュメッセージは、上述したコンテンツ所在問合せ(検索)メッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。
また、コンテンツ投入サーバCSは、ノード情報Nx_1からノード情報Nx_10の10個のノード情報が掲載された保存先候補リストをログ収集サーバLSから取得しているが、コンテンツ投入サーバCSが、新たなコンテンツをシステム内に保存させる数(保存数)を当該コンテンツの人気度等に応じて決定し、当該保存数に応じて、ログ収集サーバLSに要求するノード情報の数(第2所定数)を適宜変更すればよく、例えば、人気が高く公開後に多数のレプリカ配信要求が予測される場合には、保存数を多く決定し、少なくとも決定した保存数以上の数をノード情報を要求する等のように構成すればよい。なお、コンテンツの人気度とは、例えば、コンテンツが映画であって、既に劇場公開されているような場合、その観客動員数に応じて決定したり、或いは、コンテスト等の受賞履歴等に基づいて決定したり、或いは、コンテンツが音楽である場合には、そのアーティストの過去の作品の売り上げ等を考慮して決定すればよい。
そして、コンテンツのレプリカが他のノードNn間で共用可能となる日時である公開日時を示す情報(公開日時情報)を、保存指示情報又はコンテンツのレプリカに含んで、選択したノードNnに対して送信するよう構成する。保存指示情報を受信してレプリカの保存指示を受けたノードNnは、当該レプリカをコンテンツIDと対応付けて自己の記憶部12のキャッシュ領域に記憶して、登録処理(パブリッシュメッセージの送信)を行なう。
その後、保存指示情報又はコンテンツのレプリカに含んで取得した公開時刻情報が示す公開日時に至ると、コンテンツの情報(コンテンツID,タイトルなど)がシステム運営者が配布するカタログリストに掲載されて、コンテンツ分散保存システムSに参加する他のノードNnは、カタログリストに掲載されたコンテンツのコンテンツIDに基づいて所望のレプリカの所在を問い合わせるコンテンツ所在問い合わせメッセージ(クエリ)を生成してルートノードに向けて送出し、レプリカを保持するノードNnを知り、当該レプリカを保持するノードNnから当該レプリカのダウンロードすることが可能となる。
また、コンテンツ投入サーバCSがログ収集サーバLSに要求するノード情報の数(第2所定数)は、保存指示を受けたノードNnが選択するノードNnの数(第1所定数)よりも大きい値とする。
また、コンテンツ投入サーバCSからレプリカの保存指示を受けたノードNnは、コンテンツ分散保存システムSに参加する他のノードNnに対してコンテンツのレプリカの保存を指示する。すなわち、コンテンツ投入サーバCSからレプリカの保存指示を受けたノードNnが保存指示装置として機能することとなる。そして、この保存指示を受けた他のノードNnも同様にコンテンツ分散保存システムSに参加する他のノードNnに対してコンテンツのレプリカの保存を指示する。このように、保存指示装置として機能するコンテンツ投入サーバCSまたはシステムSに参加するノードNnは、公開日時に至るまでシステムSに参加するノードNnに対してレプリカの保存指示を繰り返し行なうことにより、新規コンテンツのレプリカをシステムS内に公開前に事前に分散保存させることができるようになっている。
[3.保存先候補リスト]
続いて、レプリカの保存指示を行なう際に各ノードNn間で送受信される保存先候補リストの分割について説明する。
コンテンツ投入サーバCSから保存指示情報を受信したノードNnは(保存指示情報受信手段)、コンテンツ投入サーバCSから取得した保存先候補リストを、保存用の保存先候補リストと送信用の保存先候補リストに分割する。図8は、コンテンツ投入サーバCSから受信した保存先候補リストを、ノード情報が半数ずつになるよう2分割した例である。
コンテンツ投入サーバCSから例えば10個(第2所定数)のノード情報が掲載された保存先候補リスト(ノード情報Nx_1〜Nx_10)を取得し(取得手段)、自己の記憶部12に保存する(ノード情報記憶手段)。その後、保存した保存先候補リスト(ノード情報Nx_1〜Nx_10)から5個(第3所定数の一例)のノード情報を抽出して分割して、分割ノード情報としての保存先候補リスト(ノード情報Nx_6〜Nx_10)を生成する(分割ノード情報生成手段)。
そして、自己の記憶部12に記憶している保存先候補リスト(ノード情報Nx_1〜Nx_10)を、分割(抽出)したノード情報Nx_6〜Nx_10を除いた、保存用の保存先候補リスト(ノード情報Nx_1〜Nx_5)に更新し(更新手段)、記憶部12に記憶した保存先候補リスト(ノード情報Nx_1〜Nx_5)の中から、保存指示をするノードNnを選択し(選択手段)、選択したノードNnに対して抽出したノード情報を送信用の保存先候補リスト(ノード情報Nx_6〜Nx_10)としてレプリカと共に送信し、保存を指示する(保存指示手段)。
以下、ログ収集サーバLSからコンテンツ投入サーバCSを経て各ノードNnへと送信される保存先候補リストについて図9乃至図11を用いて説明する。
図9は、ログ収集サーバLS、コンテンツ投入サーバCS、及びノードN5、N1間において授受される保存先候補リストの様子を示す図であり、図10は、ノードN1、N7、N8間において授受される保存先候補リストの様子を示す図である。
ログ収集サーバLSはログデータベース202aから、最大の空き記録容量を有するノード情報から第2所定数(コンテンツ投入サーバCSからの要求された数)分のノード情報を抽出し、当該ノード情報が掲載された保存先候補リスト(ノード情報Nx_1〜Nx_10)を生成してコンテンツ投入サーバCSに送信する。
コンテンツ投入サーバCSは、受信した保存先候補リスト(ノード情報Nx_1〜Nx_10)を自己の記憶部302に記憶し、記憶した保存先候補リスト(ノード情報Nx_1〜Nx_10)からレプリカの保存を指示するノードNnをランダムに1つ選択する。同図ではノードN5を選択し、選択したノードN5に対して保存先候補リスト(ノード情報Nx_1〜Nx_10)と共にレプリカの保存を指示する。
ノードN5は、コンテンツ投入サーバCSから保存先候補リスト(ノード情報Nx_1〜Nx_10)を受信してレプリカの保存の指示を受けると、保存先候補リスト(ノード情報Nx_1〜Nx_10)から第3所定数のノード情報を抽出(分割)して、抽出したノード情報を除いた保存用の保存先候補リスト(ノード情報Nx_1〜Nx_5)を自己の記憶部12に記憶する。この自己の記憶部12に記憶した保存先候補リスト(ノード情報Nx_1〜Nx_5)からレプリカの保存を指示するノードをランダムに1つ選択する。同図ではノードN1を選択し、選択したノードN1に対して抽出したノード情報からなる送信用の保存先候補リスト(ノード情報Nx_6〜Nx_10)と共にレプリカの保存を指示する。
次いで、ノードN1は、ノードN5から5つ(第2所定数)のノード情報(Nx_6〜Nx_10)が掲載された保存先候補リストを受信してレプリカの保存の指示を受けると、保存先候補リスト(ノード情報Nx_6〜Nx_10)から第3所定数のノード情報を抽出(分割)して、抽出したノード情報を除いた保存用の保存先候補リスト(ノード情報Nx_6〜Nx_7)を自己の記憶部12に記憶する。この自己の記憶部12に記憶した保存先候補リスト(ノード情報Nx_6〜Nx_7)からレプリカの保存を指示するノードをランダムに1つ(第1所定数)選択する。同図ではノードN7を選択し、選択したノードN7に対して抽出したノード情報からなる送信用の保存先候補リスト(ノード情報Nx_8〜Nx_10)と共にレプリカの保存を指示する。
また、ノードN5は、ノードN1に対してレプリカの保存を指示した後、図11に示すように、保存を指示したノードN1の情報を自己の記憶部12に記憶した保存先候補リストから削除して更新し、更新後の保存先候補リスト(ノード情報Nx_2〜Nx_5)から更に第3所定数のノード情報を抽出(分割)して、抽出したノード情報を除いた保存用の保存先候補リスト(ノード情報Nx_2〜Nx_3)を自己の記憶部12に記憶する。そして、この自己の記憶部12に記憶した保存先候補リスト(ノード情報Nx_2〜Nx_3)からレプリカの保存を指示するノードをランダムに1つ選択する。同図ではノードN3を選択し、選択したノードN3に対して抽出したノード情報からなる送信用の保存先候補リスト(ノード情報Nx_4〜Nx_5)と共にレプリカの保存を指示する。
そして、ノードN3も同様にしてノードN1から受信した保存先候補リスト(ノード情報Nx_4〜Nx_5)を保存用と送信用に分割し、保存用の保存先候補リストから選択したノードN4に対してレプリカの保存を指示する。
なお、図11に示す例では、ノードN4がノードN5のノード情報のみが掲載された保存先候補リストを受信しており、ノードN4はノードN5に対して保存を指示することとなる。しかし、上述したようにノードN5は既にコンテンツ投入サーバCSからの保存指示に従ってレプリカを保存しているため、このままではノードN5に対して保存指示が重複してしまう。このような場合に備えて、コンテンツ投入サーバCSが、保存先候補リストをノードN5に送付する際には、当該ノードN5のノード情報を保存先候補リストから削除して送信するよう構成してもよい。
以上説明したように、コンテンツ投入サーバCSから保存指示を受けたノードNnが、保存指示装置として機能し、保存先候補リストに掲載された記憶部の空き記録容量が比較的大きいノードNnに対してレプリカの保存を指示し、保存指示を受けたノードNnがレプリカを保存すると共に、保存指示を受けたノードNnが更に保存先候補リストに基づいて他のノードNnにレプリカの保存を指示していく。そしてこのようなコンテンツのレプリカの保存指示と当該指示に基づく保存が、保存指示元であるコンテンツ投入サーバCS又は他のノードNnから保存指示情報又はコンテンツのレプリカに含んで受信した公開日時情報が示すコンテンツ公開日時まで繰り返し行なわれることとなる。
ところで、保存先候補リストは、各ノードNnにおいて保存指示をする度に分割され更新されるので、公開日時前に保存先候補リストに掲載されたノード情報がなくなってしまうことが想定される。また、コンテンツ投入サーバCSがログ収集サーバLSから保存先候補リストを取得できない場合や、コンテンツ投入サーバCSから保存指示を受けたノードNnが、コンテンツ投入サーバCSから保存先候補リストを受信できなかった場合も想定される。このような場合、例えば、コンテンツ投入サーバCSがログ収集サーバLSから保存先候補リストを取得できなかった場合には、コンテンツ投入サーバCSの制御部301が識別情報生成手段として機能し、当該コンテンツ投入サーバCSにおいて、第1所定数のノードIDを生成し、生成したノードIDに向けて保存指示メッセージを送出するよう構成する。また、コンテンツ投入サーバCSから保存指示を受けたノードNnが、コンテンツ投入サーバCSから保存先候補リストを受信できなかった場合にも、制御部11が各ノードNnにおいて第1所定数のノードIDを生成し、生成したノードIDに向けて保存指示メッセージを送出する。
そして、送出された保存指示メッセージは、生成したノードIDと同一のノードIDを有するノードNn、或いは当該生成したノードIDに近いノードIDを有するノードNnに到達し、この保存指示メッセージの最終到達先であるノードNnがレプリカを保存することとなる。なお、この場合、保存指示メッセージとレプリカとを共に送出してレプリカを「プッシュ式」で送信する構成のほか、保存指示メッセージのみを送信し、保存指示メッセージの最終到達先であるノードNnがメッセージに含まれる保存指示元のノード情報(ノードID、IPアドレス等)に基づいて保存指示元(コンテンツ投入サーバ、又はノードNn)に対して保存すべきレプリカを要求してレプリカを取得するよう構成してもよい。
[4.各装置の処理]
以上の動作において、ログ収集サーバLS、コンテンツ投入サーバCS、及び各ノードNnにおける処理を、図を参照して、詳しく説明する。
[4−1.ノードNnの空き記録容量特定情報送信処理]
図12は、コンテンツ分散保存システムSに参加している任意のノード装置Nnが、空き記録容量特定情報をログ収集サーバ12に送信する際の制御部11の処理を示すフローチャートであり、1日1回など、所定期間毎に定期的に処理が開始される。
先ず、制御部11は、記憶部12の空き記録容量を取得する(ステップS21)。
次に、取得した空き記録容量に基づいて空き記録容量特定情報を生成し(ステップS22)、ノードIDと共に空き記録容量特定情報をログ収集サーバLSに送信して(ステップS23)処理を終了する。なお、空き記録容量特定情報の最初の送信の場合には、自己のIPアドレスも共にログ収集サーバLSに送信する。
[4−2.ログ収集サーバLSの処理]
図13は、ログ収集サーバLSにおける制御部201の処理を示すフローチャートであり、例えば、システム管理者等が入力部204を介して操作して当該処理の実行を指示した場合(或いは通信部203を介してシステム管理者が操作する他の装置から処理の実行を指示する旨の情報を受信した場合)に開始する。
先ず、制御部201は、ログ収集サーバLSの電源がオフとされたか否かを判定し(ステップS30)、オフとされていなければ(ステップS30:No)、コンテンツ分散保存システムSに参加するノードNnから空き記録容量特定情報を受信したか否かを判定する(ステップS31)。
判定の結果、空き記録容量特定情報を受信した場合(ステップS31:Yes)には、受信した空き記録容量特定情報が示す空き記録容量を、共に受信したノードIDをキーとして当該ノードIDに対応付けてログデータベース202aに保存する(ステップS32)。このノードNnからの初回の受信であれば、共に受信したIPアドレスも対応付けて保存し、2回目以降の受信であれば、保存している空き記録容量を新たに受信した空き記録容量特定情報に基づいて更新する。
一方、空き記録容量特定情報を受信していない場合(ステップS31:No)には、ステップS33へ移行する。
次いで、コンテンツ投入サーバCSから保存先候補リストの送信を要求されたか否かを判定する(ステップS33)。
判定の結果、保存先候補リストの送信を要求されていない場合(ステップS33:No)には、ステップS30へ移行し、保存先候補リストの送信を要求された場合(ステップS33:Yes)には、ログデータベース202aに登録されているノード情報のうち、より大きい空き記録容量を有するノード情報を、要求された個数分リスト化して保存先候補リストを生成する(ステップS34)。つまり、10個要求された場合には、最大の空き記録容量を有するノード情報から10番目に大きい空き記録容量を有するノード情報までの10個のノード情報からなる保存先候補リストを生成する。そして、生成した保存先候補リストをコンテンツ投入サーバCSに送信し(ステップS35)、ステップS30の処理へ移行し、電源がオフとなるまでステップS30からステップS35の処理を繰り返し行なう。
そして、電源がオフとなった場合に(ステップS30:Yes)、処理を終了する。
[4−3.コンテンツ投入サーバCSの処理]
図14は、コンテンツ投入サーバCSにおける制御部301の処理を示すフローチャートであり、例えば、システム管理者等が入力部304を介して操作して当該処理の実行を指示した場合(或いは通信部303を介してシステム管理者が操作する他の装置から処理の実行を指示する旨の情報を受信した場合)に本発明の保存指示処理プログラムが読み出され処理を開始する。
先ず、制御部301は、コンテンツ投入サーバCSの電源がオフとされたか否かを判定し(ステップS40)、オフとされていなければ(ステップS40:No)、新たにコンテンツ分散保存システムSに投入すべきコンテンツがあるか否かを判定する(ステップS41)。
判定の結果、投入するコンテンツがない場合(ステップS41:No)には、ステップS40へ移行し、投入するコンテンツがある場合(ステップS41:Yes)には、当該コンテンツの人気度等に基づいてノード情報の個数(第2所定数)を指定してログ収集サーバLSに対して保存先候補リストを要求する(ステップS42)。
続いて、ログ収集サーバLSから保存先候補リストを取得できたか否かを判定し(ステップS43)、取得できた場合(ステップS43:Yes)には、取得した保存先候補リストから第1所定数(例えば1個)のノードNnを選択し(ステップS44)、選択したノードNnに対して保存先候補リストを送信してコンテンツのレプリカの保存を指示(保存指示情報を送信)する(ステップS45)。
一方、ログ収集サーバLSから保存先候補リストを取得できなかった場合(ステップS43:No)には、制御部303は第1所定数のノードIDを生成し(ステップS46)、生成したノードIDのノードNnに向けてコンテンツのレプリカの保存を指示する保存指示メッセージ(保存指示情報)を送出する(ステップS47)。
その後、ステップS45又はステップS47にて保存を指示した後に、ステップS40の処理へ移行し、電源がオフとなるまでステップS40からステップS47の処理を繰り返し行なう。
そして、電源がオフとなった場合に(ステップS40:Yes)、処理を終了する。
[4−4.ノードNnのメイン処理]
図15は、コンテンツ分散保存システムSに参加している任意のノードNnにおける制御部11のメイン処理を示すフローチャートであり、コンテンツ分散保存システムSへの参加後(例えば、コンタクトノードへのアクセスの後)に本発明の保存指示処理プログラム及びノード処理プログラムが読み出され処理が開始する。なお、上述した「4−1.空き記録容量特定情報送信処理」が実行されている場合には、空き記録容量特定情報送信処理と並行して行なわれることとなる。
先ず、制御部11は、ノードNn自身の電源がオフとされたか否かを判定し(ステップS60)、オフとされていなければ(ステップS60:No)、コンテンツ投入サーバCSまたは他のノードNnからコンテンツのレプリカの保存が指示されたか否かを判定する(ステップS61)。
判定の結果、レプリカの保存が指示された場合には保存指示されたコンテンツのレプリカを自己の記憶部12に保存可能か否かを判定する(ステップS62)。具体的には、記憶部12の空き記録容量と保存指示されたレプリカのデータ容量等に基づいて、保存指示されたレプリカを保存可能か否かを判断することができる。なお、既に記憶しているレプリカの重要性と保存指示されたレプリカの重要性(例えば人気度が高いほうを優先して保存しておく等)を比較して、比較の結果、既に記憶しているレプリカを記憶部12から削除して空き記録容量を確保するよう構成してもよい。
判定の結果、保存指示されたコンテンツのレプリカを自己の記憶部12に保存可能である場合(ステップS62:Yes)、保存指示元(コンテンツ投入サーバCSまたは他のノードNn)からコンテンツのレプリカと保存先候補リストを受信して(ステップS63)、コンテンツのレプリカを自己の記憶部12に保存する(ステップS64)。また、保存先候補リストは記憶部12に記憶する。
一方、レプリカの保存が指示されていない場合(ステップS61:No)、及び保存指示されたレプリカの保存が可能でない場合(ステップS62:No)には、ステップS60へ移行する。
そして、レプリカの保存(ステップS64)後、自身が保存指示装置として機能し(ステップS65)、保存先候補リストのノード情報に基づいて他のノードNnにレプリカの保存指示を行なう。
先ず、記憶部12に保存先候補リストがあるか否かを判定し(ステップS66)、保存先候補リストがある場合(ステップS66:Yes)には、保存先候補リストを送信用の保存先候補リストと保存用の保存先候補リストに分割する(ステップS67)。具体的には、記憶部12に記憶した保存先候補リストから第3所定数のノード情報を抽出して送信用の保存先候補リストを生成し、記憶部12に記憶した保存先候補リストを、当該抽出したノード情報を除いた保存先候補リストに更新する。
次いで、記憶部12に記憶した(保存用の)保存先候補リストから、第1所定数のノードNnをランダムに選択し(ステップS68)、選択したノードNnに、生成した保存先候補リストとコンテンツのレプリカを送信して、レプリカの保存を指示(保存指示情報を送信)し、当該ノードNnを記憶部12の保存先候補リストから削除する(ステップS69)。
一方、記憶部12に保存先候補リストがない場合(ステップS66:No)には、制御部11は第1所定数のノードIDを生成し(ステップS70)、生成したノードIDのノードNnに向けてコンテンツのレプリカの保存を指示する保存指示メッセージ(保存指示情報)を送出する(ステップS71)。
そして、コンテンツのレプリカの公開日時まで上記ステップS66からS69のループ処理を行ない、公開日時に至るとループ処理を終了する(ステップS72)。
その後、ステップS60に移行し、電源がオフとなった場合に(ステップS60:Yes)、処理を終了する。
以上説明したように、コンテンツ分散保存システムSに新たなコンテンツのレプリカを投入する際に、コンテンツ投入サーバCS(又はノードNn)は、記録部12の空き記録容量が比較的大きいノードNnが掲載された保存先候補リストから第1所定数のノードNnを選択し、選択したノードNnに対して保存を指示するため、各ノードNnの記録部12の記録容量をバランスよく有効に利用することが可能なコンテンツ分散保存システムSを実現することができる。
また、ステップS68で第1所定数のノードNnをランダムに選択するよう構成したので、最も空き記録容量が大きいノードNnに保存指示が集中してしまうことを防止することができる。
なお、上述した実施形態では、第1所定数を「1」とし、保存先候補リストから1つのノードNnを選択するよう構成したが、これに限定されず、複数のノードNnを選択するよう構成してもよい。複数のノードNnを選択する場合(第1所定数が2以上)には、保存先候補リストを、保存指示先として選択した各ノードNnに送信する分(第1所定数)と、自己が保存する分(1)である「第1所定数+1」に分割すればよい。例えば、1万個(第2所定数)のノード情報が掲載された保存先候補リストを取得し、この保存先候補リストから第1所定数として100個のノードNnを選択してレプリカの保存を指示するよう構成してもよい。第1所定数は、第2所定数に応じて、或いは、公開日時までの期間(例えば、公開日時まで時間が無い場合には第1所定数を大きくしてできるだけ早く多数のノードNnにレプリカの事前配布を完了させる等)等を考慮して適宜変更すればよい。
また、コンテンツ投入サーバCSが、保存指示をすべき第1所定数のノードNnを選択できない場合には、ステップS46及びS47にあるように、第1所定数のノードIDを生成し、生成したノードIDのノードNnに向けてレプリカの保存を指示する保存指示メッセージを送出するよう構成したので、ログ収集サーバLSから保存先候補リストを取得できなかった場合でも、コンテンツ分散保存システムS内のノードNnに対してレプリカの保存指示を確実に行なうことができる。
更に、ノードNnが、保存指示をすべき第1所定数のノードNnを選択できない場合にも、ステップS70及びS71にあるように、第1所定数のノードIDを生成し、生成したノードIDのノードNnに向けてレプリカの保存を指示する保存指示メッセージを送出するよう構成したので、保存指示や保存指示において保存先候補リストの分割が繰り返し行なわれたことによって公開日時前に保存先候補リストのノード情報が無くなってしまい、第1所定数のノードNnを選択できない場合であっても、公開日時まで他のノードNnに対するレプリカの保存指示を滞らせることなく円滑に遂行することができる。また、各ノードNn(及びコンテンツ投入サーバCS)が保存指示をすべき第1所定数のノードNnを選択できない場合の他の変形例として、ログ収集サーバLSにアクセスして、保存先候補リストを要求するよう構成してもよい。この場合、少なくとも第1所定数以上のノード情報が掲載された保存先候補リストをログ収集サーバLSに要求し取得すればよい。これによれば、各ノードNnは最新のノード情報からなる保存先候補リストを取得することができる。
また、保存指示を受けたノードNnは、他のノードNnに対して保存指示を行なう際に、自己の保存先候補リストを分割して生成した送信用の保存先候補リストを保存指示先のノードNnに送信するよう構成したので、保存指示を受けたノードNnも、保存先候補リストに基づいて更にレプリカの保存指示を送信することができる。
また、保存を指示したノードNnは、生成した送信用の保存先候補リストのノード情報を除いて自己の保存先候補リストを更新し、更新後の保存先候補リストに基づいて、ノードNnの選択と、選択したノードNnに対するレプリカの保存指示を行なうよう構成したので、各ノードNn間でレプリカの保存指示処理を分担しあうことができる。
更に、レプリカの保存を指示したノードNnのノード情報を記憶部12に記憶した保存先候補リストから削除するよう構成したので、同じノードNnに重複してレプリカの保存指示を行なうことを防止することができる。
なお、ノードNnは、レプリカの保存を指示したノードNnにレプリカが確実に保存できたことを確認した後に、当該ノードNnのノード情報を保存先候補リストから削除するよう構成してもよい。この場合、保存指示を受けたノードNn(保存指示先)は、レプリカを保存した後に保存指示元であるノードNnに対して保存完了の報告等を通知するよう構成すればよい。そして、保存指示元のノードNnは、保存指示先のノードNnから保存完了の報告が通知されてこない場合には、保存指示先のノードNnを保存先候補リストから削除すると共に、保存指示先のノードNnのノード情報に掲載されたノードIDに向けてレプリカの保存を指示する保存指示メッセージを送出するよう構成すればよい。このメッセージは、当該ノードIDと近いノードIDを有するノードNnに到達することとなり、到達したノードNnがレプリカの保存指示を受け、レプリカを保存することとなる。
更に、ステップS62にて保存指示されたコンテンツのレプリカが保存不可能であると判断された場合には、保存指示元のノードNnに対して、保存指示不可報告を通知するよう構成すればよい。そしてこれを受けた保存指示元のノードNnは、上記と同様に、通知をしてきた保存指示元のノードNnのノードIDに向けてレプリカの保存を指示するよう構成すればよい。
なお、上記実施形態におけるコンテンツ分散保存システムSは、DHTを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。 各ノードNnがログ収集サーバLSに空き記録容量特定情報を送信する様子を示す概念図である。 コンテンツ投入サーバCSがノードNnにレプリカの保存を指示する様子を示す概念図である。 ノードNnの概要構成例を示すブロック図である。 ログ収集サーバLSの概要構成例を示すブロック図である。 ログデータベース202aに記憶保存されているノード情報の一例である。 コンテンツ投入サーバCSの概要構成例を示すブロック図である。 保存先候補リストの分割に係る説明図である。 ログ収集サーバLS、コンテンツ投入サーバCS、及びノードN5、N1間において授受される保存先候補リストの様子を示す図である。 ノードN1、N7、N8間において授受される保存先候補リストの様子を示す図である。 ノードN5、N3、N4間において授受される保存先候補リストの様子を示す図である。 ノードNnにおける制御部11の空き記録容量特定情報送信処理を示すフローチャートである。 ログ収集サーバLSにおける制御部201の処理を示すフローチャートである。 コンテンツ投入サーバCSにおける制御部301の処理を示すフローチャートである。 ノードNnにおける制御部11のメイン処理を示すフローチャートである。
符号の説明
8 ネットワーク
9 P2Pネットワーク(オーバーレイネットワーク)
11、201、301 制御部
12、202、302 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
20、203、303 通信部
21、204、304 入力部
22、205、305 バス
S コンテンツ分散保存システム
Nn ノード
LS ログ収集サーバ
CS コンテンツ投入サーバ

Claims (8)

  1. ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータを保存させるコンテンツ分散保存システムにおける前記ノード装置であって、
    前記コンテンツデータの保存先の候補となるノード装置を識別するノード装置識別情報を含む保存先候補リストと、保存すべきコンテンツデータと、を取得する取得手段と、
    前記取得手段により取得された前記コンテンツデータを保存するコンテンツ保存手段と、
    前記取得手段により取得された前記保存先候補リストを、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させる他のノード装置の選択に用いる第1保存先候補リストと、前記他のノード装置へ送信する第2保存先候補リストと、に分割する分割手段と、
    前記分割手段により分割された前記第1保存先候補リストの中から、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させるノード装置を示す前記ノード装置識別情報を選択する選択手段と、
    前記選択手段により、前記第1保存先候補リストの中から選択された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する保存指示情報であって前記分割手段により分割された前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信する保存指示手段と、
    前記選択手段により、前記第1保存先候補リストの中から選択された前記ノード装置識別情報を前第1保存先候補リストから削除する削除手段と、
    を備えることを特徴とするノード装置。
  2. 前記選択手段は、前記分割手段により分割された前記第1保存先候補リストの中から第1所定数の前記ノード装置識別情報を選択し、
    前記保存指示手段は、前記選択手段により選択された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する前記保存指示情報であって前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信することを特徴とする請求項1に記載のノード装置。
  3. 前記第1所定数の前記ノード装置識別情報の選択が可能か否かを判定する判定手段を備え、
    前記判定手段により選択可能であると判定された場合に、前記選択手段は前記第1所定数の前記ノード装置識別情報を選択し、
    前記判定手段により選択不可能であると判定された場合においてノード装置識別情報を前記第1所定数生成する識別情報生成手段を備え、
    前記判定手段により選択不可能であると判定された場合において前記保存指示手段は、前記識別情報生成手段により生成された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する前記保存指示情報であって前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信することを特徴とする請求項2に記載のノード装置。
  4. 前記選択手段は、前記コンテンツ保存手段に保存された前記コンテンツデータが複数の前記ノード装置間で利用可能となる公開日時まで、前記ノード装置識別情報の選択を繰り返し行い、
    前記保存指示手段は、前記公開日時まで、前記保存指示情報および前記コンテンツ保存手段に保存された前記コンテンツデータの送信を繰り返し行うことを特徴とする請求項1から請求項3のいずれか一項に記載のノード装置。
  5. 他のノード装置の保存指示手段から送信された保存指示情報を受信する保存指示情報受信手段を備え、
    前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記取得手段は、前記第2保存先候補リストおよび前記コンテンツデータを取得し、
    前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記コンテンツ保存手段は、前記取得手段により取得された前記コンテンツデータを保存し、
    前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記分割手段は、前記取得手段により取得された前記第2保存先候補リストを、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させる他のノード装置の選択に用いる第3保存先候補リストと、前記コンテンツデータを保存させる他のノード装置へ送信する第4保存先候補リストと、に分割し、
    前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記選択手段は、前記分割手段により分割された前記第3保存先候補リストの中から前記ノード装置識別情報を選択し、
    前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記保存指示手段は、前記選択手段により選択された前記ノード装置識別情報により識別される前記ノード装置に、前記分割手段により分割された前記第4保存先候補リストを含む前記保存指示情報および前記コンテンツ保持手段に保存された前記コンテンツデータを送信し、
    前記保存指示情報受信手段により前記保存指示情報が受信された場合に、前記削除手段は、前記選択手段により前記第3保存先候補リストの中から選択された前記ノード装置識別情報を前記第3保存先候補リストから削除することを特徴とする請求項1から請求項4のいずれか一項に記載のノード装置。
  6. 前記保存指示情報受信手段により受信された前記保存指示情報を送信した前記他のノード装置から、前記コンテンツ保存手段に保存された前記コンテンツデータが複数の前記ノード装置間で利用可能となる公開日時を示す公開日時情報を取得する公開日時情報取得手段を備えることを特徴とする請求項5に記載のノード装置。
  7. ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータを保存させるコンテンツ分散保存システムにおける前記ノード装置に含まれるコンピュータに、
    前記コンテンツデータの保存先の候補となるノード装置を識別するノード装置識別情報を含む保存先候補リストと、保存すべきコンテンツデータと、を取得するステップと、
    前記取得されたコンテンツデータをコンテンツ保存手段に保存するステップと、
    前記取得された保存先候補リストを、前記保存されたコンテンツデータを保存させる他のノード装置の選択に用いる第1保存先候補リストと、前記他のノード装置へ送信する第2保存先候補リストと、に分割するステップと、
    前記分割された第1保存先候補リストの中から、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させるノード装置を示す前記ノード装置識別情報を選択するステップと、
    前記第1保存先候補リストの中から選択されたノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する保存指示情報であって前記分割された第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信するステップと、
    前記第1保存先候補リストの中から選択されたノード装置識別情報を前記第1保存先候補リストから削除するステップと、
    を実行させることを特徴とするプログラム
  8. ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータを保存させるコンテンツ分散保存システムにおける前記ノード装置において実行される保存指示方法であって、
    前記コンテンツデータの保存先の候補となるノード装置を識別するノード装置識別情報を含む保存先候補リストと、保存すべきコンテンツデータと、を取得する取得工程と、
    前記取得工程において取得された前記コンテンツデータをコンテンツ保存手段に保存するコンテンツ保存工程と、
    前記取得工程において取得された前記保存先候補リストを、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させる他のノード装置の選択に用いる第1保存先候補リストと、前記他のノード装置へ送信する第2保存先候補リストと、に分割する分割工程と、
    前記分割工程において分割された前記第1保存先候補リストの中から、前記コンテンツ保存手段に保存された前記コンテンツデータを保存させるノード装置を示す前記ノード装置識別情報を選択する選択工程と、
    前記選択工程において、前記第1保存先候補リストの中から選択された前記ノード装置識別情報により識別されるノード装置に、前記コンテンツ保存手段に保存された前記コンテンツデータの保存を指示する保存指示情報であって前記分割工程において分割された前記第2保存先候補リストを含む保存指示情報と、前記コンテンツ保存手段に保存された前記コンテンツデータとを送信する保存指示工程と、
    前記選択工程において、前記第1保存先候補リストの中から選択された前記ノード装置識別情報を前第1保存先候補リストから削除する削除工程と、
    含むことを特徴とする保存指示方法
JP2008233754A 2008-09-11 2008-09-11 ノード装置、プログラム及び保存指示方法 Expired - Fee Related JP5157770B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008233754A JP5157770B2 (ja) 2008-09-11 2008-09-11 ノード装置、プログラム及び保存指示方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008233754A JP5157770B2 (ja) 2008-09-11 2008-09-11 ノード装置、プログラム及び保存指示方法

Publications (2)

Publication Number Publication Date
JP2010067073A JP2010067073A (ja) 2010-03-25
JP5157770B2 true JP5157770B2 (ja) 2013-03-06

Family

ID=42192600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008233754A Expired - Fee Related JP5157770B2 (ja) 2008-09-11 2008-09-11 ノード装置、プログラム及び保存指示方法

Country Status (1)

Country Link
JP (1) JP5157770B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5338774B2 (ja) * 2010-08-30 2013-11-13 ブラザー工業株式会社 配信システム、情報処理装置、情報処理プログラム、及びコンテンツ投入方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH047935A (ja) * 1990-04-25 1992-01-13 Nec Corp 同報メッセージ通信方法およびメッセージ処理装置
JP2003323329A (ja) * 2002-05-07 2003-11-14 Fujitsu Ltd 分散ファイル管理方法及びプログラム
JP4635611B2 (ja) * 2005-01-11 2011-02-23 富士ゼロックス株式会社 情報処理装置、方法、及びプログラム
JP4661429B2 (ja) * 2005-07-26 2011-03-30 ブラザー工業株式会社 情報配信システム、情報処理装置、情報処理プログラム及び情報処理方法
JP2008117116A (ja) * 2006-11-02 2008-05-22 Toshiba Corp 同報配信システムおよび同報配信方法

Also Published As

Publication number Publication date
JP2010067073A (ja) 2010-03-25

Similar Documents

Publication Publication Date Title
JP2008234445A (ja) コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム
JP4655986B2 (ja) ノード装置、記憶制御プログラム及び情報記憶方法
JP5532649B2 (ja) ノード装置、ノード処理プログラム及びコンテンツ保存方法
US8312068B2 (en) Node device, information communication system, method for managing content data, and computer readable medium
JP5157770B2 (ja) ノード装置、プログラム及び保存指示方法
JP2009232272A (ja) コンテンツ分散保存システム、コンテンツ再生方法、ノード装置、管理装置、ノード処理プログラム、及び管理処理プログラム
JP4935734B2 (ja) コンテンツ分散保存システム、ノード装置及びノード処理プログラム並びにノード処理方法
JP5458629B2 (ja) ノード装置、ノード処理プログラム及び検索方法
JP2010066930A (ja) コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム
JP2010108082A (ja) コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム
JP4983183B2 (ja) ノード装置、情報分割保存システム、情報処理プログラム及び情報利用方法
JP5287059B2 (ja) ノード装置、ノード処理プログラム及び保存指示方法
JP5412924B2 (ja) ノード装置、ノード処理プログラム及びコンテンツデータ削除方法
JP2011008657A (ja) コンテンツ配信システム、ノード装置、コンテンツ配信方法及びノードプログラム
JP2010067072A (ja) 保存指示装置、ノード装置、及び保存指示処理プログラム、ノード処理プログラム及び保存指示方法
JP5007624B2 (ja) コンテンツ分散保存システム、コンテンツデータ取得方法、ノード装置、及びノード処理プログラム
JP2009129161A (ja) コンテンツ分散保存システム、コンテンツ評価値決定方法、配信装置、及び配信処理プログラム
JP2009020669A (ja) コンテンツ分散保存システム、コンテンツデータ保存方法、稼働率管理装置、及びノード装置等
JP2009080546A (ja) コンテンツ分散保存システム、複製データ保存数集計方法、ノード装置、及びノード処理プログラム
JP5494362B2 (ja) 配信システム、情報処理装置、プログラム、及びコンテンツ投入方法
JP2010102573A (ja) ノード装置、ノード処理プログラム及びデータファイル改変方法
JP5347876B2 (ja) 情報通信システム、ノード装置、コンテンツ取得方法及びプログラム
JP2009140383A (ja) コンテンツ分散保存システム、情報配信方法、配信装置、及び配信処理プログラム
JP2009187056A (ja) コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム
JP2010238160A (ja) ノード装置、ノード処理プログラム及びコンテンツデータ保存方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110314

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120828

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121029

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121126

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151221

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees