説明

コンテンツ分散保存システム、特殊コンテンツ取得方法、ノード装置、及びノード処理プログラム

【課題】センターサーバに対する負荷を低減し、ノード装置へのレスポンスを向上させ、信頼性を高めることが可能なコンテンツ分散保存システム、特殊コンテンツ取得方法、ノード装置、及びノード処理プログラムを提供する。
【解決手段】各ノード装置の固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させておき、各ノード装置は、特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続して特殊コンテンツを取得し、取得した特殊コンテンツから自己の固有情報を抽出し、抽出された固有情報をユーザに提示するように構成した。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムの技術分野に関する。
【背景技術】
【0002】
クライアント−サーバ型の通信システムにおいて、センターサーバが集計、管理するデータをクライアントから参照するためには、クライアントがセンターサーバにアクセスして情報提供の要求を行い、センターサーバはクライアントに対し認証を行うことで情報の提供を行うようになっている。
【0003】
ところで、ピアツーピア型の通信システムにおいて、複数のコンテンツ(映画及び音楽データ等のコンテンツ)の複製データ(以下、「レプリカ」という)を複数のノード装置に分散して保存(配置)させ、各ノード装置間でレプリカを利用可能としたコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。
【特許文献1】特開2006−197400号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、このようなコンテンツ分散保存システムにおいて、クライアント−サーバ型の通信システムと同様、センターサーバで管理される例えば各ノード装置のコンテンツの視聴履歴や課金情報等の固有情報を各ノード装置から参照するためには、各ノード装置がセンターサーバにアクセスして情報提供の要求を行う必要があるため、センターサーバに対する負荷が大きく、ノード装置へのレスポンスが遅いという問題があった。
【0005】
本発明は、以上の問題等に鑑みてなされたものであり、センターサーバに対する負荷を低減し、ノード装置へのレスポンスを向上させ、信頼性を高めることが可能なコンテンツ分散保存システム、特殊コンテンツ取得方法、ノード装置、及びノード処理プログラムを提供することを課題とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、請求項1に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、前記各ノード装置の固有情報であってセンター装置において管理されるべき固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させ、各前記ノード装置間で前記特殊コンテンツを取得可能としたコンテンツ分散保存システムにおける前記ノード装置であって、前記特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続し、前記特殊コンテンツを取得する特殊コンテンツ取得手段と、前記取得した特殊コンテンツから自己の固有情報を抽出する抽出手段と、前記抽出された固有情報をユーザに提示する提示手段と、を備えることを特徴とする。
【0007】
この発明によれば、各ノード装置の固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させておき、各ノード装置は、特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続して特殊コンテンツを取得し、取得した特殊コンテンツから自己の固有情報を抽出し、抽出された固有情報をユーザに提示するように構成したので、センターサーバに対する負荷を低減し、固有情報を要求するノード装置へのレスポンスを向上させ、信頼性を高めることができる。
【0008】
請求項2に記載の発明は、請求項1に記載のノード装置において、前記特殊コンテンツに含まれる各前記固有情報は、前記各ノード装置に固有の鍵データにより暗号化されており、前記特殊コンテンツから抽出された自己の固有情報であって暗号化された固有情報を、自己の鍵データにより復号する復号手段を更に備えることを特徴とする。
【0009】
この発明によれば、各ノード装置は他のノード装置に自己の固有情報が閲覧されることを防止することができ、情報の分散化とセキュリティ確保とを両立させることができる。
【0010】
請求項3に記載の発明は、請求項1又は2に記載のノード装置において、前記特殊コンテンツには、前記各ノード装置において共有されるべき共有情報が含まれていることを特徴とする。
【0011】
この発明によれば、ユーザは使用するノード装置の固有情報の閲覧の際に共有情報をも閲覧することができ、利便性を高めることができる。
【0012】
請求項4に記載の発明は、請求項1乃至3の何れか一項に記載のノード装置において、前記特殊コンテンツには固有の識別情報が割り当てられており、前記特殊コンテンツ取得手段は、当該識別情報に関連する管理装置に対して前記特殊コンテンツの所在を問い合わせることを特徴とする。
【0013】
請求項5に記載の発明は、請求項4に記載のノード装置において、既に分散して保存された前記特殊コンテンツに含まれる情報の内容が更新された場合、更新後の情報を含む新たな特殊コンテンツが複数のノード装置に分散して保存されるものであって、当該新たな特殊コンテンツには新たに固有の識別情報が割り当てられることを特徴とする。
【0014】
この発明によれば、各ノード装置により古い特殊コンテンツが無駄に取得されることを回避することができる。
【0015】
請求項6に記載のノード処理プログラムの発明は、コンピュータを、請求項1乃至5の何れか一項に記載のノード装置として機能させることを特徴とする。
【0016】
請求項7に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、前記各ノード装置の固有情報であってセンター装置において管理されるべき固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させ、各前記ノード装置間で前記特殊コンテンツを取得可能としたコンテンツ分散保存システムであって、前記ノード装置は、前記特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続し、前記特殊コンテンツを取得する特殊コンテンツ取得手段と、前記取得した特殊コンテンツから自己の固有情報を抽出する抽出手段と、前記抽出された固有情報をユーザに提示する提示手段と、を備えることを特徴とする。
【0017】
請求項8に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、前記各ノード装置の固有情報であってセンター装置において管理されるべき固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させ、各前記ノード装置間で前記特殊コンテンツを取得可能としたコンテンツ分散保存システムにおける特殊コンテンツ取得方法であって、前記ノード装置が、前記特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続し、前記特殊コンテンツを取得する特殊コンテンツ取得工程と、前記ノード装置が、前記取得した特殊コンテンツから自己の固有情報を抽出する抽出工程と、前記ノード装置が、前記抽出された固有情報をユーザに提示する提示工程と、を含むことを特徴とする。
【発明の効果】
【0018】
本発明によれば、各ノード装置の固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させておき、各ノード装置は、特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続して特殊コンテンツを取得し、取得した特殊コンテンツから自己の固有情報を抽出し、抽出された固有情報をユーザに提示するように構成したので、センターサーバに対する負荷を低減し、固有情報を要求するノード装置へのレスポンスを向上させ、信頼性を高めることができる。
【発明を実施するための最良の形態】
【0019】
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。
【0020】
1.コンテンツ分散保存システムの構成及び動作概要
始めに、図1等を参照して、本実施形態に係るコンテンツ分散保存システムの構成及び動作概要について説明する。
【0021】
図1は、本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【0022】
図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には、データ(パケット)を転送するためのルータが、適宜挿入されているが図示を省略している。
【0023】
このようなネットワーク8には、複数のノード装置(以下、「ノード」という)Nn(n=1,2,3・・・の何れか)が接続されている。また、各ノードNnには、固有の製造番号およびIP(Internet Protocol)アドレスが割り当てられている。そして、本実施形態に係るコンテンツ分散保存システムSは、これらのノードNnのうち、図1の上部枠100内に示すように、何れか複数のノードNnの参加により形成されるピアツーピア方式のネットワークシステムとなっている。
【0024】
なお、図1の上部枠100内に示すネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク9(論理的なネットワーク)である。かかるオーバーレイネットワーク9は、特定のアルゴリズム、例えば、DHTを利用したアルゴリズムにより実現される。そして、コンテンツ分散保存システムS(言い換えれば、オーバーレイネットワーク9)に参加している各ノードNnには、所定桁数からなる固有の識別情報であるノードIDが割り当てられている。
【0025】
また、当該ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、一つのID空間に偏りなく分散して配置されることになる。
【0026】
なお、コンテンツ分散保存システムSへの参加は、参加していないノードNn(例えば、ノードN8)が、参加している任意のノードNn(例えば、当該システムSに常時参加しているコンタクトノード)に対して参加要求を示す参加メッセージを送信することによって行われる。
【0027】
また、各ノードNnは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定しており、具体的には、ID空間内で適度に離れたノードNnのノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。
【0028】
コンテンツ分散保存システムSに参加している1台のノードNnは、該システムSに参加している全てのノードNnのうち、必要最低限のノードNnのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない(記憶していない)ノードNnについては、各ノードNn間で互いに各種メッセージを転送し合って届けてもらうようになっている。
【0029】
このようなDHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
【0030】
ところで、コンテンツ分散保存システムSにおいては、内容の異なる様々なコンテンツ(例えば、映画や音楽等)のレプリカが所定のファイル形式で複数のノードNnに分散して保存(格納)されており、各ノードNn間で当該レプリカを利用可能になっている。例えば、ノードN5には、タイトルがXXXの映画のコンテンツのレプリカが保存されており、一方、ノードN3には、タイトルがYYYの映画のコンテンツのレプリカが保存されるというように、複数のノードNn(以下、「コンテンツ保持ノード」という)に分散されて保存されている。
【0031】
また、これらのコンテンツのレプリカには、夫々、コンテンツ名(タイトル)及びコンテンツID(コンテンツ毎に固有の識別情報)等の情報が付加されている。このコンテンツIDは、例えば、コンテンツ名+任意の数値(或いは、コンテンツデータの先頭数バイトでも良い)が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。或いは、システム管理者が、コンテンツ毎に一意のID値(ノードIDと同一ビット長)を付与しても良い。この場合は、コンテンツ名とそのコンテンツIDの対応が書かれたコンテンツカタログ情報が、全ノードNnに配布される。
【0032】
また、このように分散保存されているコンテンツのレプリカの所在、つまり、当該レプリカを保存したノードNnのノード情報と当該コンテンツのコンテンツID等の組が含まれるインデックス情報が、当該コンテンツのレプリカの所在を管理しているノードNn(以下、「ルートノード」、又は「コンテンツ(コンテンツID)のルートノード」という)等により記憶(インデックスキャッシュに記憶)、管理されるようになっている。
【0033】
例えば、タイトルがXXXの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN4により管理され、タイトルがYYYの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN7により管理される。また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNnであるように定められる。
【0034】
そして、あるノードNnのユーザが、所望するコンテンツのレプリカを取得したい場合、当該レプリカの取得を望むノードNn(以下、「ユーザノード」という)は、当該ユーザにより選択されたコンテンツのコンテンツID及び自己のIPアドレス等を含むコンテンツ所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ(検索)メッセージを、ルートノードに向けて(ルートノード宛に)送出する(ルートノードにコンテンツのレプリカの所在を問い合わせる)。これにより、コンテンツ所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着することになる。
【0035】
なお、各ノードNnにおいてユーザにより選択されるべきコンテンツのコンテンツ名及びコンテンツID等の属性情報は、例えばセンターサーバSAから全てのノードNnに配信されるコンテンツカタログ情報に記述されている。
【0036】
また、上記コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。なお、DHTルーティングについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
【0037】
上記コンテンツ所在問合せ(検索)メッセージを受信したルートノードは、これに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。こうしてインデックス情報を取得したユーザノードは、当該インデックス情報に含まれるあるコンテンツ保持ノードのIPアドレス等に基づいて当該コンテンツ保持ノードにアクセスして、コンテンツ送信要求メッセージを送信し、そこからコンテンツのレプリカをダウンロード(取得)することが可能になる。なお、当該インデックス情報には、例えば複数のコンテンツ保持ノードのノード情報が含まれていることもある(同一のコンテンツのレプリカが複数のコンテンツ保持ノードに保存されている場合)。かかる場合、ユーザノードは、当該複数のコンテンツ保持ノードのうち一つのコンテンツ保持ノードを選択し、選択したコンテンツ保持ノードに接続してコンテンツのレプリカをダウンロードすることができる。
【0038】
なお、ルートノードは、当該インデックス情報に含まれるIPアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信し、これにより、ユーザノードは、上記コンテンツ保持ノードからそのレプリカをダウンロードすることもできる。また、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしているキャッシュノードから当該インデックス情報を取得することもできる。
【0039】
また、コンテンツ保持ノードから取得したコンテンツのレプリカを保存したユーザノードは、当該レプリカを保存したことをそのルートノードに知らせるために、当該レプリカのコンテンツID及び自己のノード情報が含まれるパブリッシュ(登録通知)メッセージを生成し、該パブリッシュメッセージを、そのルートノードに向けて(ルートノード宛に)送出する。これにより、パブリッシュメッセージは、コンテンツ所在問合せ(検索)メッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。そして、該ルートノードは、受信したパブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)することになる。こうして、上記ユーザノードは、新たに、上記コンテンツのレプリカを保持するコンテンツ保持ノードとなる。
【0040】
以上のようにユーザノードがコンテンツのレプリカをダウンロードした場合、及び当該レプリカを再生した場合等には、ユーザノードは、そのログ情報(例えば、日時(ダウンロード日時又は再生日時)及びコンテンツID)をセンター装置としてのセンターサーバSAに対して送信する。かかるログ情報は、ダウンロードや再生の都度に送信されてもよいし、一定時間間隔で纏めて送信されても良い。
【0041】
2.センターサーバSAの構成及び機能等
次に、図2を参照して、センターサーバSAの構成及び機能について説明する。
【0042】
図2は、センターサーバSAの概要構成例を示す図である。
【0043】
センターサーバSAは、図2に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラムを記憶するROM等から構成された制御部11と、各種データ及び各種プログラム等を記憶保存(格納)するためのHD等から構成された記憶部12と、ネットワークNW等を通じてノードNnとの間の情報の通信制御を行うための通信部13と、を備えて構成され、制御部11、記憶部12、及び通信部13はバス14を介して相互に接続されている。
【0044】
記憶部12には、センターにおいて管理されるべき各ノードNnの固有情報(以下、「ノード固有情報」という)が、各ノードNnのノード情報に対応付けられて記憶されている。かかるノード固有情報には、ダウンロード履歴、再生履歴、及び課金情報等が含まれている。なお、ダウンロード履歴、再生履歴、及び課金情報は、何れもユーザノードから受信されたログ情報に基づいており、課金情報には、例えばコンテンツの再生時間に応じて計算された利用料金を示す情報が含まれる。
【0045】
制御部11は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、全体を統括制御する。そして、制御部11は、記憶部12に記憶されている各ノードNnのノード固有情報を取得し、これらのノード固有情報を含む一つの特殊コンテンツ(データ)を生成し、上述したコンテンツのレプリカの分散保存と同じように、当該特殊コンテンツを複数のノードNnに分散して投入、つまり、当該ノードNnに対して特殊コンテンツ投入指令を発行して保存させる。かかる特殊コンテンツに含まれる各ノード固有情報には、対応するノードNnのノードIDが付加される。また、かかる特殊コンテンツには、固有のコンテンツID(識別情報)が割り当てられており、このコンテンツIDは、例えば、各ノード固有情報のデータ群が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。こうして生成された特殊コンテンツのコンテンツIDは、各ノードNnが特殊コンテンツを検索するためのキーとなるので、各ノードNnに通知する必要がある。例えば、各ノードNnに配信されるコンテンツカタログ情報に記述されることにより各ノードNnに通知される。これにより、当該特殊コンテンツは、他のノードNn間で取得可能となる。
【0046】
なお、コンテンツカタログ情報の配信は、例えば、特開2007−053662号公報にて開示されたDHTマルチキャスト(マルチキャストメッセージ転送処理)によりコンテンツ分散保存システムSに参加している全てのノードNnに対して行うと良い。
【0047】
また、制御部11は、特殊コンテンツに、ノード固有情報と共に、各ノードNnにおいて共有されるべき共有情報(例えば、メンテナンス等のお知らせ等)を含めるように構成すれば、ノード固有情報の閲覧の際に共有情報をも閲覧できるのでより効果的である。
【0048】
また、制御部11は、特殊コンテンツに含まれる各ノード固有情報を、対応するノードNnに固有の鍵データ(ノード別の鍵)により暗号化するように構成すれば、各ノードNnは他のノードNnに自己のノード固有情報が閲覧されることを防止できるのでより効果的である。この場合、記憶部12には、ノードNnの鍵データをノード情報に対応付けて記憶しておくことになる。なお、暗号方式としては、公開鍵暗号方式を用いても良いし、共通鍵暗号方式を用いても良い。
【0049】
また、各ノード固有情報の更新はログ情報の受信に応じて行われるが、制御部11は、例えば所定時間毎に、各ノードNnのノード固有情報を収集して当該ノード固有情報を含む特殊コンテンツを生成し、当該特殊コンテンツを複数のノードNnに分散して投入する。つまり、既に分散して保存された特殊コンテンツに含まれる情報の内容が更新された場合、更新後の情報を含む新たな特殊コンテンツが複数のノードNnに分散して保存される。
【0050】
このとき、新たな特殊コンテンツには新たに固有のコンテンツIDが割り当てられる(以前のものから変更される)ので、制御部11は、コンテンツカタログ情報上において、新たに投入された特殊コンテンツのコンテンツIDを有効とするためのコンテンツID通知処理を各ノードNnに行う。例えば、制御部11は、古い特殊コンテンツのコンテンツIDを無効(失効)にし、且つ新しい特殊コンテンツのコンテンツIDを有効にするためのコンテンツID通知メッセージを各ノードNnに送信する。或いは、制御部11は、新しい特殊コンテンツのコンテンツIDが記述(古い特殊コンテンツのコンテンツIDは記述されない)されたコンテンツカタログ情報を各ノードNnに配信する。これにより、古い特殊コンテンツは他のノードNnから取得できなくなる。
【0051】
3.ノードNnの構成及び機能等
次に、図3を参照して、ノードNnの構成及び機能について説明する。
【0052】
図3は、ノードNnの概要構成例を示す図である。
【0053】
各ノードNnは、図3に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラムを記憶するROM等から構成されたコンピュータとしての制御部21と、各種データ及び各種プログラム等を記憶保存(格納)するためのHD(ハードディスク)等から構成された記憶部22と、受信されたコンテンツのレプリカ等を一時蓄積するバッファメモリ23と、コンテンツのレプリカに含まれるエンコードされたビデオデータ(映像情報)およびオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部24と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部25と、当該映像処理部25から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部26と、上記デコードされたオーディオデータをアナログオーディオ信号にD (Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部27と、当該音声処理部27から出力されたオーディオ信号を音波として出力するスピーカ28と、ネットワーク8を通じて他のノードNn等間の情報の通信制御を行うための通信部29と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部21に対して与える入力部(例えば、キーボード、マウス、或いは、リモコンや操作パネル等)30と、を備えて構成され、制御部21、記憶部22、バッファメモリ23、デコーダ部24、通信部29、及び入力部30はバス31を介して相互に接続されている。なお、ノードNnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能であり、例えば、ユーザの自宅、カラオケ店、ホテル等に設置される。
【0054】
記憶部22には、DHTを用いたルーティングテーブル、インデックス情報、及びコンテンツカタログ情報、並びに、コンテンツ分散保存システムSに参加する際のアクセス先となるコンタクトノードのIPアドレス及びポート番号、及びセンターサーバSAのIPアドレス及びポート番号等が記憶されている。
【0055】
また、記憶部22には、自ノードに固有の鍵データが記憶されている。
【0056】
制御部21は、CPUが記憶部22等に記憶されたプログラム(本発明のノード処理プログラムを含む)を読み出して実行することにより、全体を統括制御し、上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及びコンテンツ保持ノードの少なくとも何れか一つのノードとしての処理を行う。また、制御部21は、本発明における特殊コンテンツ取得手段、抽出手段、復号手段、及び提示手段等として機能する。
【0057】
より具体的には、制御部21は、上述したようにセンターサーバSAから発行された特殊コンテンツ投入指令を受け付けた場合には、当該特殊コンテンツを例えばセンターサーバSAからダウンロードして記憶部21に保存する。
【0058】
こうして特殊コンテンツが保存されると、制御部21は、当該特殊コンテンツのコンテンツID及び自己のノード情報が含まれるパブリッシュメッセージを生成し、該パブリッシュメッセージを、当該特殊コンテンツの所在を管理しているルートノード(管理装置の一例)に向けて(ルートノード宛に)送出する。これにより、パブリッシュメッセージは、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。そして、該ルートノードの制御部11は、受信したパブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報を登録することになる。
【0059】
なお、特殊コンテンツの所在を管理しているルートノードは、例えば、特殊コンテンツのコンテンツIDに関連する(例えば、特殊コンテンツのコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する)ノードNnである。
【0060】
一方、制御部21は、例えばユーザからの入力部31を介した特殊コンテンツ閲覧指示に応じて、当該特殊コンテンツのルートノードに問い合わせる、つまり、コンテンツ所在問合せメッセージ(特殊コンテンツのコンテンツIDを含む)をルートノードに向けて送出することにより、当該特殊コンテンツを保存しているコンテンツ保持ノードに接続し当該コンテンツ保持ノードから特殊コンテンツをダウンロードする。この特殊コンテンツの検索及びダウンロード手順は、上述したコンテンツのレプリカをダウンロードするときの手順と同様である。
【0061】
そして、制御部21は、ダウンロードした特殊コンテンツから、自ノードのノードIDに対応するノード固有情報を抽出し、抽出したノード固有情報をユーザに提示する。このとき、特殊コンテンツに共有情報が含まれている場合、制御部21は、当該共有情報をノード固有情報と共にユーザに提示する。なお、ユーザへの提示は、ノード固有情報を表示部26に表示させたり、又はスピーカ28から音声出力させることにより行われる。
【0062】
図4は、特殊コンテンツの投入及び取得される様子と、特殊コンテンツに含まれる共有情報及びノード固有情報の表示例を示す図である。図4の例では、共有情報として「お知らせ」が、ノード固有情報として「視聴履歴」及び「課金情報」が、夫々表示されている。
【0063】
また、ノード固有情報が暗号化されている場合には、制御部21は、自ノードに固有の鍵データを記憶部22から取得し、特殊コンテンツから抽出された自ノードの暗号化されたノード固有情報を、取得した鍵データにより復号してからユーザに提示する。
【0064】
なお、上記ノード処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【0065】
4.コンテンツ分散保存システムSの動作
次に、図5及び図6を参照して、本実施形態に係るコンテンツ分散保存システムSの動作について説明する。
【0066】
図5は、センターサーバSAにおける制御部11の処理の一例を示すフローチャートであり、図6は、ノードNnにおける制御部21の処理の一例を示すフローチャートである。
【0067】
先ず、図5に示す処理は、例えば定期的(例えば24時間毎)に実行されるか、或いはノード固有情報の更新、又は共有情報の更新或いは追加があった場合に実行される。図5に示す処理が開始されると、制御部11は、記憶部12に記憶されている全てのノードNnのノード固有情報を取得する(ステップS1)。なお、当該ノード固有情報は、ノードNnから受信されたログ情報が集計、解析されることにより生成される。
【0068】
次いで、制御部11は、取得した各ノード固有情報に対応する鍵データを用いて、各ノード固有情報を暗号化し、暗号化されたノード固有情報を含む特殊コンテンツを生成する(ステップS2)。このとき、制御部11は、新しい共有情報が管理者によりセットされている場合には、当該共有情報を上記特殊コンテンツに含ませる。また、制御部11は、当該特殊コンテンツのコンテンツIDを生成しこれを当該特殊コンテンツに付与する。
【0069】
次いで、制御部11は、センターサーバSAでノード情報が管理されている複数のノードNnのうちから例えばランダムに複数(例えば、数十)のノードNnを選定し、当該選定した各ノードNnに対して生成した特殊コンテンツを投入する(ステップS3)。
【0070】
なお、センターサーバSAは、こうして複数のノードNnに分散保存される特殊コンテンツに対して有効期限(例えば、投入から一ヶ月先の日時)を付加しておき、各ノードNnは、有効期限が到来したか否かを判別し、有効期限が到来した場合には、当該特殊コンテンツを削除するように構成しても良い。
【0071】
次いで、制御部11は、全ノードNnに対して直近に配信したコンテンツカタログ情報に特殊コンテンツのコンテンツIDが記述されているか否かを判別し(ステップS4)、記述されていない場合には(ステップS4:NO)、ステップS5に進み、記述されている場合には(ステップS4:YES)、ステップS6に進む。
【0072】
ステップS5では、制御部11は、上記生成した特殊コンテンツのコンテンツIDを当該コンテンツカタログ情報に記述し、当該コンテンツカタログ情報を各ノードNnに対して配信し、当該処理を終了する。なお、制御部11は、当該特殊コンテンツのコンテンツIDを含むコンテンツID通知メッセージを各ノードNnに送信するように構成しても良い。これによれば、当該コンテンツID通知メッセージを受信した各ノードNnは、既に記憶しているコンテンツカタログ情報に特殊コンテンツのコンテンツIDを記述してこれを有効にする。
【0073】
一方、ステップS6では、制御部11は、当該コンテンツカタログ情報に既に記述されていた、古い特殊コンテンツのコンテンツIDを、新たな特殊コンテンツのコンテンツIDに変更し、当該コンテンツカタログ情報を各ノードNnに対して配信し、当該処理を終了する。なお、制御部11は、古い特殊コンテンツのコンテンツIDを無効(失効)にし、且つ新たな特殊コンテンツのコンテンツIDのみを有効にするためのコンテンツID通知メッセージを各ノードNnに送信するように構成しても良い。これによれば、当該コンテンツID通知メッセージを受信した各ノードNnは、既に記憶しているコンテンツカタログ情報に記述された古い特殊コンテンツのコンテンツIDを無効とし、新たな特殊コンテンツのコンテンツIDをコンテンツカタログ情報に記述して有効とする。
【0074】
次に、図6に示す処理は、例えばノードNnにおいて電源オンがなされると開始され、先ず、制御部21は、参加処理を行う(ステップS11)。当該参加処理において、制御部21は、コンタクトノードに対して参加メッセージ(自ノードのノード情報を含む)を送信することにより返信されてきたメッセージに含まれるノード情報等を用いてDHTを用いたルーティングテーブルを生成する。これにより、当該ノードNnは、コンテンツ分散保存システムSに参加することになる。
【0075】
次いで、制御部21は、特殊コンテンツ閲覧指示があったか否かを判別し(ステップS12)、特殊コンテンツ閲覧指示がない場合には(ステップS12:NO)、ステップS13に進み、特殊コンテンツ閲覧指示があった場合には(ステップS12:YES)、ステップS17に進む。
【0076】
ステップS13では、制御部21は、コンテンツ所在問合せメッセージやパブリッシュメッセージ等のメッセージを通信部29を通じて受信したか否かを判別し、メッセージを受信した場合には(ステップS13:YES)、メッセージの内容に応じた処理を行う(ステップS14)。一方、制御部21は、メッセージを受信していない場合には(ステップS13:NO)、例えばユーザの再生指示に応じたコンテンツ再生処理やユーザの削除指示に応じたコンテンツ削除処理等の「その他の処理」を行う(ステップS15)。
【0077】
次いで、制御部11は、電源オフ指令があったか否かを判別し(ステップS16)、電源オフ指令がない場合には(ステップS16:NO)、ステップ12に戻り、電源オフ指令があった場合には(ステップS16:YES)、当該処理を終了する。
【0078】
一方、ステップS17では、制御部21は、コンテンツカタログ情報上に記述された、特殊コンテンツのコンテンツID(現に有効のコンテンツID)を選択し、当該選択したコンテンツID及び自ノードのノード情報が含まれるコンテンツ所在問合せメッセージを生成し、該コンテンツ所在問合せメッセージを、当該特殊コンテンツのルートノードに向けて送出する。これにより、制御部21は、例えばルートノードから返信されたインデックス情報に用いて当該特殊コンテンツを保存しているコンテンツ保持ノードにアクセスしてここから特殊コンテンツをダウンロードする(ステップS18)。
【0079】
次いで、制御部21は、ダウンロードした特殊コンテンツから、自ノードのノードIDに対応するノード固有情報を抽出し(取り出し)、共有情報が含まれていればこれをそのまま取り出す(ステップS19)。なお、ノード固有情報が暗号化されている場合には、制御部21は、自ノードに固有の鍵データを記憶部22から取得し、特殊コンテンツから抽出した自ノードの暗号化されたノード固有情報を、取得した鍵データにより復号する。
【0080】
次いで、制御部21は、抽出したノード固有情報等を例えば表示部26上に表示し(ステップS20)、ステップS16に移行する。
【0081】
以上説明したように、上記実施形態によれば、センターサーバSAが、各ノードNnのノード固有情報を含む一つの特殊コンテンツを生成して複数のノードNnに分散して保存させ、各ノードNnが、特殊コンテンツの所在を管理しているルートノードに問い合わせることにより、当該特殊コンテンツを保存しているコンテンツ保持ノードに接続して特殊コンテンツを取得し、取得した特殊コンテンツから自己のノード固有情報を抽出し、抽出されたノード固有情報をユーザに提示するように構成したので、センターサーバSAに対する負荷を低減し、ノード固有情報を要求するノードNnへのレスポンスを向上させ、信頼性を高めることができる。
【0082】
また、特殊コンテンツに含まれるノード固有情報は、対応するノードNnに固有の鍵データにより暗号化されるようにし、各ノードNnは、特殊コンテンツから抽出した自ノードの暗号化されたノード固有情報を、自ノードに固有の鍵データにより復号してからユーザに提示するように構成すれば、各ノードNnは他のノードNnに自己のノード固有情報が閲覧されることを防止することができ、情報の分散化とセキュリティ確保とを両立させることができる。
【0083】
また、センターサーバSAは、特殊コンテンツに、ノード固有情報と共に、各ノードNnにおいて共有されるべき共有情報を含めるように構成すれば、ユーザは使用するノードNnのノード固有情報の閲覧の際に共有情報をも閲覧することができ、利便性を高めることができる。
【0084】
更に、既に分散して保存された特殊コンテンツに含まれる情報の内容が更新された場合、センターサーバSAは、更新後の情報を含む新たな特殊コンテンツを複数のノードNnに分散して保存させ、当該新たな特殊コンテンツに新たに固有のコンテンツIDを割り当て、各ノードNnにおいて当該新たな特殊コンテンツのコンテンツIDのみが有効となるように構成したので、各ノードNnにより古い特殊コンテンツが無駄に取得されることを回避することができる。
【0085】
なお、上記実施形態においては、センターサーバSAが、複数のノードNnのノード固有情報を一つの特殊コンテンツとして纏め、この特殊コンテンツを複数のノードNnに保存させるように構成したが、センターサーバSAが、例えば、ノードIDが1〜10000までのノードNnのノード固有情報を含む第一の特殊コンテンツ、ノードIDが10001〜20000までのノードNnのノード固有情報を含む第二の特殊コンテンツ・・・、というように複数種類の特殊コンテンツを生成して夫々の特殊コンテンツを複数のノードNnに保存させるように構成しても良い。この場合、第一の特殊コンテンツと第二の特殊コンテンツのコンテンツIDが異なるように割り当てられることになるが、夫々のコンテンツIDはコンテンツカタログ情報に記述される。また、当該コンテンツカタログ情報には、夫々の特殊コンテンツのコンテンツIDに対応付けられて、例えば適用ノードの範囲を示す情報(ノードIDが1〜10000)が記述される。これにより、各ノードNnは、特殊コンテンツを検索する際、コンテンツ所在問合せメッセージに含ませるコンテンツIDを、自己のノードIDに基づき上記図6のステップS17で選択することになる。このような構成によれば、センターサーバSAが、複数種類の特殊コンテンツ毎に、生成する時間的なタイミングにずらすことができるので、処理負担を分散させることができる。
【0086】
また、上記実施形態においては、既に保存された特殊コンテンツに含まれる例えばノード固有情報の内容の更新により新たに生成され分散保存される特殊コンテンツには新たに固有のコンテンツIDが割り当てられるように構成したが、更新前の古い特殊コンテンツと更新後の新しい特殊コンテンツのコンテンツIDを同一にするよう構成しても良い。この場合、センターサーバSAは、新たに特殊コンテンツを生成した場合、特殊コンテンツ更新の旨を示すメッセージを、特殊コンテンツの所在を管理しているルートノードに対して送信し、当該ルートノードは特殊コンテンツを保存している各コンテンツ保持ノードに対して特殊コンテンツ更新の旨を示すメッセージを送信する。これにより、各コンテンツ保持ノードは、古い特殊コンテンツを削除し、且つ、センターサーバSAから新たな特殊コンテンツをダウンロードして保存することになる。この構成によれば、古い特殊コンテンツが無駄にノードNnに保存されている状態を回避することができる。
【0087】
なお、上記実施形態におけるコンテンツ分散保存システムSは、DHTを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
【図面の簡単な説明】
【0088】
【図1】本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【図2】センターサーバSAの概要構成例を示す図である。
【図3】ノードNnの概要構成例を示す図である。
【図4】特殊コンテンツの投入及び取得される様子と、特殊コンテンツに含まれる共有情報及びノード固有情報の表示例を示す図である。
【図5】センターサーバSAにおける制御部11の処理の一例を示すフローチャートである。
【図6】ノードNnにおける制御部21の処理の一例を示すフローチャートである。
【符号の説明】
【0089】
8 ネットワーク
9 オーバーレイネットワーク
11 制御部
12 記憶部
13 通信部
14 バス
21 制御部
22 記憶部
23 バッファメモリ
24 デコーダ部
25 映像処理部
26 表示部
27 音声処理部
28 スピーカ
29 通信部
30 入力部
31 バス
Nn ノード
SA センターサーバ
S コンテンツ分散保存システム

【特許請求の範囲】
【請求項1】
ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、前記各ノード装置の固有情報であってセンター装置において管理されるべき固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させ、各前記ノード装置間で前記特殊コンテンツを取得可能としたコンテンツ分散保存システムにおける前記ノード装置であって、
前記特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続し、前記特殊コンテンツを取得する特殊コンテンツ取得手段と、
前記取得した特殊コンテンツから自己の固有情報を抽出する抽出手段と、
前記抽出された固有情報をユーザに提示する提示手段と、
を備えることを特徴とするノード装置。
【請求項2】
請求項1に記載のノード装置において、
前記特殊コンテンツに含まれる各前記固有情報は、前記各ノード装置に固有の鍵データにより暗号化されており、
前記特殊コンテンツから抽出された自己の固有情報であって暗号化された固有情報を、自己の鍵データにより復号する復号手段を更に備えることを特徴とするノード装置。
【請求項3】
請求項1又は2に記載のノード装置において、
前記特殊コンテンツには、前記各ノード装置において共有されるべき共有情報が含まれていることを特徴とするノード装置。
【請求項4】
請求項1乃至3の何れか一項に記載のノード装置において、
前記特殊コンテンツには固有の識別情報が割り当てられており、前記特殊コンテンツ取得手段は、当該識別情報に関連する管理装置に対して前記特殊コンテンツの所在を問い合わせることを特徴とするノード装置。
【請求項5】
請求項4に記載のノード装置において、
既に分散して保存された前記特殊コンテンツに含まれる情報の内容が更新された場合、更新後の情報を含む新たな特殊コンテンツが複数のノード装置に分散して保存されるものであって、
当該新たな特殊コンテンツには新たに固有の識別情報が割り当てられることを特徴とするノード装置。
【請求項6】
コンピュータを、請求項1乃至5の何れか一項に記載のノード装置として機能させることを特徴とするノード処理プログラム。
【請求項7】
ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、前記各ノード装置の固有情報であってセンター装置において管理されるべき固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させ、各前記ノード装置間で前記特殊コンテンツを取得可能としたコンテンツ分散保存システムであって、
前記ノード装置は、
前記特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続し、前記特殊コンテンツを取得する特殊コンテンツ取得手段と、
前記取得した特殊コンテンツから自己の固有情報を抽出する抽出手段と、
前記抽出された固有情報をユーザに提示する提示手段と、
を備えることを特徴とするコンテンツ分散保存システム。
【請求項8】
ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、前記各ノード装置の固有情報であってセンター装置において管理されるべき固有情報を含む特殊コンテンツを複数のノード装置に分散して保存させ、各前記ノード装置間で前記特殊コンテンツを取得可能としたコンテンツ分散保存システムにおける特殊コンテンツ取得方法であって、
前記ノード装置が、前記特殊コンテンツの所在を管理している管理装置に問い合わせることにより、当該特殊コンテンツを保存している他のノード装置に接続し、前記特殊コンテンツを取得する特殊コンテンツ取得工程と、
前記ノード装置が、前記取得した特殊コンテンツから自己の固有情報を抽出する抽出工程と、
前記ノード装置が、前記抽出された固有情報をユーザに提示する提示工程と、
を含むことを特徴とする特殊コンテンツ取得方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2010−61404(P2010−61404A)
【公開日】平成22年3月18日(2010.3.18)
【国際特許分類】
【出願番号】特願2008−226428(P2008−226428)
【出願日】平成20年9月3日(2008.9.3)
【出願人】(000005267)ブラザー工業株式会社 (13,856)
【Fターム(参考)】