JP2009187056A - コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム - Google Patents
コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム Download PDFInfo
- Publication number
- JP2009187056A JP2009187056A JP2008023085A JP2008023085A JP2009187056A JP 2009187056 A JP2009187056 A JP 2009187056A JP 2008023085 A JP2008023085 A JP 2008023085A JP 2008023085 A JP2008023085 A JP 2008023085A JP 2009187056 A JP2009187056 A JP 2009187056A
- Authority
- JP
- Japan
- Prior art keywords
- evaluation value
- content
- node
- node device
- information
- 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.)
- Withdrawn
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】高い評価値が付与されたコンテンツのレプリカを保存しているノード装置がシステムから脱退してしまった場合であっても、適切な数のレプリカを当該システム内に確保し、より安定したレプリカ管理を可能としたコンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラムを提供する。
【解決手段】ノード装置が、コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を当該他のノード装置のうちの何れかのノード装置に対して送信する。
【選択図】図4
Description
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムの技術分野に関する。
この種のピアツーピア型の通信システムにおいて、複数のコンテンツ(映画及び音楽等のコンテンツ)の複製データ(以下、「レプリカ」という)を複数のノード装置に分散して保存(配置)させ、各ノード装置間でレプリカを利用可能としたコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。
また、各コンテンツにはその評価を表す評価値が付与されるようになっており、コンテンツのレプリカを保存しているノード装置では、そのコンテンツの評価値を管理するようになっている。かかる評価値は、コンテンツのレプリカがコンテンツ分散保存システムに投入された初期の段階、つまり、ノード装置に初めて保存された段階においては、当該コンテンツの人気度に応じた値、つまりコンテンツの人気度が高いほど評価値が高い値に設定されている。そして、コンテンツのレプリカを保存しているノード装置は、他のノード装置からの要求に応じて当該レプリカを提供した場合には、当該提供したレプリカに係るコンテンツの評価値を減少(例えば、半分に減少)させるようになっている。
一方、上記新たなコンテンツのレプリカの提供を受けたノード装置は、そのコンテンツの評価値と、既に保存済みのレプリカに係るコンテンツの評価値とを比較して、新たなコンテンツの評価値が大きいときはそのレプリカを保存する(このとき、記憶容量確保のために最も評価値が小さいコンテンツのレプリカが削除される)一方、小さいときには保存しないようになっている(例えば、特許文献1参照)。従って、人気が高いコンテンツほど、コンテンツ分散保存システムにおいて残り易い(削除され難い)。
特開2007−034630号公報
ところで、上述した方法では、高い評価値が付与されたコンテンツのレプリカを保存しているノード装置、例えば当該レプリカを他のノード装置に提供した数が少ないノード装置が当該システムから脱退してしまった場合、十分な数のレプリカをシステム内に確保(保存)することが困難になるという問題があった。
本発明は、以上の点等に鑑みてなされたものであり、高い評価値が付与されたコンテンツのレプリカを保存しているノード装置がシステムから脱退してしまった場合であっても、適切な数のレプリカを当該システム内に確保し、より安定したレプリカ管理を可能としたコンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラムを提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存され、各前記ノード装置間で前記コンテンツの複製データを利用可能としたコンテンツ分散保存システムにおける前記ノード装置であって、自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する評価値記憶手段と、他のノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合には、そのコンテンツの評価値であって前記記憶されている評価値を所定値減算する評価値減算処理手段と、前記コンテンツ分散保存システムに参加している一部の他のノード装置の前記ネットワーク上のアドレス情報を記憶するアドレス記憶手段と、前記コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、前記アドレス情報が記憶されている他のノード装置のうちの何れかのノード装置に対して送信する評価値加算情報送信手段と、を備えることを特徴とする。
この発明によれば、ノード装置が、コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を当該他のノード装置のうちの何れかのノード装置に対して送信するように構成したので、当該評価値加算情報を受信した他のノード装置であって当該コンテンツの複製データを保存している他のノード装置に、脱退するノード装置が管理していたコンテンツの評価値を加算させることができ、したがって、高い評価値が付与されたコンテンツのレプリカを保存しているノード装置がシステムから脱退してしまった場合であっても、適切な数のレプリカを当該システム内に確保し、より安定したレプリカ管理をすることができる。
請求項2に記載の発明は、請求項1に記載のノード装置において、前記評価値加算情報送信手段は、前記評価値加算情報を、当該評価値加算情報に示されるコンテンツの複製データの所在を管理するノード装置に向けて送信するものであって、当該評価値加算情報は、前記コンテンツの複製データの所在を管理するノード装置に至るまで、前記コンテンツ分散保存システムに参加しているノード装置間を転送されることを特徴とする。
この発明によれば、前記コンテンツの複製データを保存している他のノード装置に前記評価値加算情報をより効率良く送信することができる。
請求項3に記載の発明は、請求項2に記載のノード装置において、互いに異なる複数のコンテンツの複製データを保存している場合、前記評価値加算情報送信手段は、各コンテンツの複製データの所在を管理する各ノード装置に向けて前記評価値加算情報を送信することを特徴とする。
請求項4に記載の発明は、請求項1乃至3の何れか一項に記載のノード装置において、前記コンテンツ分散保存システムから脱退後、前記コンテンツ分散保存システムに再参加する場合には、当該再参加時に自己が保存している前記複製データと同じコンテンツの複製データを保存している他のノード装置を検索するノード検索手段と、前記検索された前記ノード装置における前記コンテンツの評価値の一部を示す評価値情報を当該ノード装置から取得する評価値情報取得手段と、を更に備え、前記評価値記憶手段は、前記取得された評価値情報に示される評価値を、前記再参加時に自己が保存している複製データに係るコンテンツの評価値として新たに記憶することを特徴とする。
この発明によれば、コンテンツ分散保存システムから脱退したノード装置が、当該システムに再参加する場合には、当該再参加時に自己が保存している前記複製データと同じコンテンツの複製データを保存している他のノード装置から前記コンテンツの評価値の一部を取得し自己が保存するコンテンツの評価値とすることができる。
請求項5に記載の発明は、請求項4に記載のノード装置において、前記ノード検索手段により複数のノード装置が検索された場合には、前記評価値情報取得手段は、夫々の前記ノード装置から前記評価値情報を取得し、前記評価値記憶手段は、前記取得された夫々の評価値情報に示される評価値の総和を、前記再参加時に自己が保存している複製データに係るコンテンツの評価値として新たに記憶することを特徴とする。
この発明によれば、コンテンツ分散保存システムから脱退したノード装置が、当該システムに再参加する場合に、当該再参加時に自己が保存している前記複製データと同じコンテンツの複製データを保存している複数のノード装置から評価値を取得し、これらの評価値の総和を自己が保存するコンテンツの評価値とすることができる。
請求項6に記載の発明は、請求項2又は3に記載のノード装置から送信された評価値加算情報を受信するノード装置であって、自己が前記評価値加算情報により示されるコンテンツの所在を管理するノード装置であり、且つ当該管理対象のノード装置であって当該コンテンツの複製データを保存しているノード装置の前記ネットワーク上のアドレス情報を記憶している場合には、当該ノード装置の中から何れかのノード装置を選定するノード選定手段と、前記評価値加算情報に示されるコンテンツの評価値の全部又は一部を前記選定されたノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、当該選定されたノード装置に対して送信する評価値加算情報送信手段と、を備えることを特徴とする。
この発明によれば、上記評価値加算情報を受信したノード装置であって当該コンテンツの所在を管理するノード装置は、管理対象のノード装置であって前記評価値加算情報により示されるコンテンツの複製データを保存しているノード装置の中から何れかのノード装置を選定し、当該選定したノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、当該選定されたノード装置に対して送信するように構成したので、前記コンテンツの複製データを保存している他のノード装置に、コンテンツ分散保存システムから脱退するノード装置で管理されるコンテンツの評価値を、より効率良く加算させることができる。
請求項7に記載の発明は、請求項6に記載のノード装置において、前記ノード選定手段により複数のノード装置が選定された場合には、各ノード装置において加算される前記評価値の総和が、前記評価値加算情報に示されるコンテンツの前記評価値と一致するように、当該評価値が配分されることを特徴とする。
この発明によれば、コンテンツ分散保存システムから脱退するノード装置で管理されるコンテンツの評価値を、当該コンテンツの複製データを保存している複数のノード装置により効率良く配分して加算させることができる。
請求項8に記載の発明は、請求項6に記載のノード装置において、前記管理対象のノード装置であって当該コンテンツの複製データを保存しているノード装置の前記ネットワーク上のアドレス情報が記憶されておらず、前記ノード選定手段により前記ノード装置が選定できない場合には、前記評価値加算情報に示されるコンテンツの評価値を示す評価値情報を、複数のコンテンツの複製データを保存するサーバ装置に対して送信する評価値情報送信手段を更に備えることを特徴とする。
この発明によれば、上記評価値加算情報を受信したノード装置であって当該コンテンツの所在を管理するノード装置が、当該コンテンツの複製データを保存しているノード装置を選定できない場合であっても、上記評価値加算情報に示されるコンテンツの評価値を示す評価値情報を、複数のコンテンツの複製データを保存するサーバ装置に対して送信するので、当該コンテンツの評価値を無駄なく活用することができる。
請求項9に記載の発明は、請求項1に記載のノード装置から送信されてきた評価値加算情報を受信するノード装置であって、前記評価値加算情報を、当該評価値加算情報に示されるコンテンツの複製データの所在を管理するノード装置に向けて送信する前記評価値加算情報送信手段を備えることを特徴とする。
請求項10に記載の発明は、請求項9に記載のノード装置において、前記受信された評価値加算情報に互いに異なる複数のコンテンツが示されている場合、前記評価値加算情報送信手段は、各コンテンツの複製データの所在を管理する各ノード装置に向けて前記評価値加算情報を送信することを特徴とする。
この発明によれば、コンテンツ分散保存システムから脱退するノード装置が、各コンテンツの複製データの所在を管理する各ノード装置に向けて前記評価値加算情報を送信する必要がないので、当該システムから脱退するノード装置の負担を低減することができる。
請求項11に記載の発明は、請求項8に記載のノード装置から送信されてきた評価値情報を受信するサーバ装置であって、前記評価値情報に示されるコンテンツの評価値を記憶する評価値情報記憶手段と、ノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合において、当該要求に係るコンテンツの評価値が前記評価値情報記憶手段に記憶されている場合には、当該記憶されている評価値と当該コンテンツに対して予め付与されていた評価値の一部とを加算した評価値を示す評価値情報を、前記コンテンツ要求を行ったノード装置に対して送信する評価値情報送信手段と、を備えることを特徴する。
この発明によれば、上記評価値加算情報を受信したノード装置であって当該コンテンツの所在を管理するノード装置が、当該コンテンツの複製データを保存しているノード装置を選定できない場合であっても、当該コンテンツの評価値を無駄なく活用することができる。
請求項12に記載の発明は、請求項8に記載のノード装置から送信されてきた評価値情報を受信するサーバ装置であって、前記評価値情報に示されるコンテンツの前記評価値を記憶する評価値情報記憶手段と、前記評価値情報を送信したノード装置が、前記コンテンツの複製データを保存しているノード装置を選定できるようになったか確認し、選定できるようになった場合には、当該評価値情報を、当該評価値情報を送信したノード装置に返信する評価値情報返信手段と、を備えることを特徴する。
この発明によれば、上記評価値加算情報を受信したノード装置であって当該コンテンツの所在を管理するノード装置が、当該コンテンツの複製データを保存しているノード装置を選定できない場合であっても、一旦サーバ装置にコンテンツの評価値を記憶させておき、その後に上記ノード装置が選定できるようになった場合に、当該評価値を示す評価値情報を、当該コンテンツの所在を管理するノード装置に戻すことができる。
請求項13に記載のノード処理プログラムの発明は、コンピュータを、請求項1乃至10の何れか一項に記載のノード装置として機能させることを特徴とする。
請求項14に記載の発明は、ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存され、各前記ノード装置間で前記コンテンツの複製データを利用可能としたコンテンツ分散保存システムであって、前記ノード装置は、自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する評価値記憶手段と、他のノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合には、そのコンテンツの評価値であって前記記憶されている評価値を減少させる評価値減少手段と、前記コンテンツ分散保存システムに参加している一部の他のノード装置の前記ネットワーク上のアドレス情報を記憶するアドレス記憶手段と、前記コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、前記アドレス情報が記憶されている他のノード装置のうちの何れかのノード装置に対して送信する評価値加算情報送信手段と、を備え、前記評価値加算情報を受信したノード装置であって前記コンテンツの複製データを保存している他のノード装置は、自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する評価値記憶手段と、前記受信された評価値加算情報に示されるコンテンツの評価値を、前記記憶されている、同じコンテンツの評価値に対して加算する加算処理手段と、を備えることを特徴とする。
請求項15に記載の発明は、ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存され、各前記ノード装置間で前記コンテンツの複製データを利用可能としたコンテンツ分散保存システムにおける評価値加算方法であって、前記ノード装置は、自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する工程と、他のノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合には、そのコンテンツの評価値であって前記記憶されている評価値を減少させる工程と、前記コンテンツ分散保存システムに参加している一部の他のノード装置の前記ネットワーク上のアドレス情報を記憶する工程と、前記コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、前記アドレス情報が記憶されている他のノード装置のうちの何れかのノード装置に対して送信する工程と、を備え、前記評価値加算情報を受信したノード装置であって前記コンテンツの複製データを保存している他のノード装置は、自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する工程と、前記受信された評価値加算情報に示されるコンテンツの評価値を、前記記憶されている、同じコンテンツの評価値に対して加算する工程と、を備えることを特徴とする。
本発明によれば、ノード装置が、コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を当該他のノード装置のうちの何れかのノード装置に対して送信するように構成したので、当該評価値加算情報を受信した他のノード装置であって当該コンテンツの複製データを保存している他のノード装置に、脱退するノード装置が管理していたコンテンツの評価値を加算させることができ、したがって、高い評価値が付与されたコンテンツのレプリカを保存しているノード装置がシステムから脱退してしまった場合であっても、適切な数のレプリカを当該システム内に確保し、より安定したレプリカ管理をすることができる。
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。
[1.コンテンツ分散保存システムの構成等]
始めに、図1等を参照して、本実施形態に係るコンテンツ分散保存システムの概要構成等について説明する。
[1.コンテンツ分散保存システムの構成等]
始めに、図1等を参照して、本実施形態に係るコンテンツ分散保存システムの概要構成等について説明する。
図1は、本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
図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を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク9(論理的なネットワーク)である。かかるオーバーレイネットワーク9は、特定のアルゴリズム、例えば、DHTを利用したアルゴリズムにより実現される。
そして、コンテンツ分散保存システムS(言い換えれば、オーバーレイネットワーク9)に参加している各ノードNnには、所定桁数からなる固有の識別情報であるノードIDが割り当てられている。また、当該ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、一つのID空間に偏りなく分散して配置されることになる。
なお、コンテンツ分散保存システムSへの参加は、参加していないノードNn(例えば、ノードN8)が、参加している任意のノードNn(例えば、当該システムSに常時参加しているコンタクトノード)に対して参加要求を示す参加メッセージを送信することによって行われる。一方、コンテンツ分散保存システムSは、例えば電源オフによりコンテンツ分散保存システムSから脱退することになる。
また、各ノードNnは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定しており、具体的には、ID空間内で適度に離れたノードNn(つまり、コンテンツ分散保存システムSに参加している一部の他のノードNn)のノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。なお、IPアドレス及びポート番号は、ネットワークNW上のアドレス情報の一例である。
コンテンツ分散保存システムSに参加している1台のノードNnは、該システムSに参加している全てのノードNnのうち、必要最低限のノードNnのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない(記憶していない)ノードNnについては、各ノードNn間で互いに各種メッセージを転送し合って届けてもらうようになっている。なお、DHTを用いたルーティングテーブルは、例えば、コンテンツ分散保存システムSに参加する際に生成される。
このようなDHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
ところで、コンテンツ分散保存システムSにおいては、内容の異なる様々なコンテンツ(例えば、映画や音楽等)のレプリカが所定のファイル形式で複数のノードNnに分散して保存(格納)されており、各ノードNn間で当該レプリカを利用可能になっている。例えば、ノードN5には、タイトルがXXXの映画のコンテンツのレプリカが保存されており、一方、ノードN3には、タイトルがYYYの映画のコンテンツのレプリカが保存されるというように、複数のノードNn(以下、「コンテンツ保持ノード」という)に分散されて保存されている。なお、一つのノードNnに、互いに異なる複数のコンテンツのレプリカが保存される場合もある。
また、これらのコンテンツのレプリカには、夫々、コンテンツ名(タイトル)、コンテンツID(コンテンツ毎に固有の識別情報)、及びコンテンツの評価を表す評価値等の情報が付加されている。このコンテンツIDは、例えば、コンテンツ名+任意の数値(或いは、コンテンツデータの先頭数バイトでも良い)が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。或いは、システム管理者が、コンテンツ毎に一意のID値(ノードIDと同一ビット長)を付与しても良い。この場合は、コンテンツ名とそのコンテンツIDの対応が書かれたコンテンツカタログ情報が、全ノードNnに配布される。なお、上記評価値は、例えば、コンテンツの人気度や重要度を表すものであり、例えば人気が高いコンテンツは、その評価値も高く設定されている。また、当該評価値は、レプリカを保存した各ノードNnにより管理されることになる。
また、このように分散保存されているレプリカの所在、つまり、当該レプリカを保存したノードNnのノード情報と当該コンテンツのレプリカに対応するコンテンツID等の組が含まれるインデックス情報が、当該コンテンツのレプリカの所在を管理しているノードNn(以下、「ルートノード」、又は「コンテンツ(コンテンツID)のルートノード」という)等により記憶(インデックスキャッシュに記憶)、管理されるようになっている。
つまり、コンテンツのレプリカを保存しているコンテンツ保持ノードのノード情報は、他のノードNnからの問い合わせに応じて提供可能なようにルートノードにより管理されている。
例えば、タイトルがXXXの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN4により管理され、タイトルがYYYの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN7により管理される。また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNnであるように定められる。
そして、あるノードNnのユーザが、所望するコンテンツのレプリカを取得したい場合、当該レプリカの取得を望むノードNn(以下、「ユーザノード」という)は、当該ユーザにより選択されたコンテンツのコンテンツID及び自己のIPアドレス等を含むコンテンツ所在問合せ(検索)メッセージ(クエリとも言い、当該コンテンツのレプリカを保存しているコンテンツ保持ノードを検索するための検索情報の一例である)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ(検索)メッセージ(以下、単に、「コンテンツ検索メッセージ」という)を、ルートノードに向けて(ルートノード宛に)送出する(つまり、ルートノードにコンテンツのレプリカの所在を問い合わせる)。
これにより、コンテンツ検索メッセージは、コンテンツIDをキーとするDHTルーティングによって当該コンテンツのレプリカの所在を管理するルートノードに至るまで、コンテンツ分散保存システムSに参加しているノードNn(中継ノードという)間を転送(中継)され、最終的に当該ルートノードに到着することになる。
なお、各ノードNnにおいてユーザにより選択されるべきコンテンツのコンテンツ名及びコンテンツID等の属性情報は、例えばコンテンツ提供サーバSAから全てのノードNnに配信されるコンテンツカタログ情報に記述されている。また、上記コンテンツ検索メッセージに含まれるコンテンツIDは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。なお、DHTルーティングについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
上記コンテンツ検索メッセージを受信したルートノードは、これに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報からコンテンツ保持ノードを例えば一つ選定し、当該選定したコンテンツ保持ノードに対して当該コンテンツ検索メッセージを送信(転送)する。これにより、ユーザノードは、コンテンツ保持ノードからの通知を受け、当該コンテンツ保持ノードに対してコンテンツ要求を行う(コンテンツ要求メッセージを送信する)ことで、当該コンテンツ保持ノードからそのレプリカを取得(ダウンロード)することができる。なお、当該ユーザノードにおいて取得されたレプリカは、一時的に蓄積されることになる。
或いは、上記コンテンツ検索メッセージを受信したルートノードは、これに含まれるコンテンツIDに対応するインデックス情報を上記コンテンツ検索メッセージの送信元であるユーザノードに対して返信するように構成しても良い。これにより、インデックス情報を取得したユーザノードは、当該インデックス情報に示されるコンテンツ保持ノードに対してコンテンツ要求を行うことで、そこからコンテンツのレプリカを取得することが可能になる。
また、以上のようにユーザノードからのコンテンツ要求に応じて自己が保存しているコンテンツのレプリカを提供したコンテンツ保持ノードは、自己が記憶、管理している当該コンテンツの評価値を所定値減算(例えば、当該評価値を半分に減少)することになる。そして更に、当該コンテンツ保持ノードは、減算した分の評価値をそのコンテンツのレプリカの提供を受けたユーザノードに対して与える(移譲する)ことになる。このようにするのは、コンテンツが1つ複製され2つになったため、その分、評価値を分割する趣旨である。
こうして、新たなコンテンツのレプリカの提供を受けたユーザノードは、一時的に蓄積されている当該レプリカに係るコンテンツの評価値と、既に保存されているレプリカに係るコンテンツの評価値とを比較(複数保存されている場合、夫々のコンテンツの評価値と比較)し、例えば、最もコンテンツの評価値が低いレプリカを削除する。ここで上記一時的に蓄積されている当該レプリカに係るコンテンツの評価値が最も低くなければ、当該レプリカは新たに保存されることになる。従って、移譲を受けたコンテンツの評価値が高いほど、それだけ、そのレプリカが当該ユーザノードに保存される確率が高くなるので、当該システムSに保存されるレプリカの数も多くなる。
そして、コンテンツ保持ノードから提供されたコンテンツのレプリカを保存したユーザノードは、当該レプリカを保存したことをそのルートノードに知らせるために(言い換えれば、該システムSに参加している他のノードNnに対して公開するために)、当該レプリカのコンテンツID及び自己のノード情報が含まれるパブリッシュ(登録通知)メッセージを生成し、該パブリッシュメッセージを、そのルートノードに向けて(ルートノード宛に)送出する。これにより、パブリッシュメッセージは、上記コンテンツ検索メッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。そして、該ルートノードは、受信したパブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)することになる。こうして、上記ユーザノードは、新たに、上記コンテンツのレプリカを保持するコンテンツ保持ノードとなる。なお、上記パブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報は、ルートノードに至るまでの転送経路におけるキャッシュノードにおいても登録(キャッシュ)される。
[2.ノードNnの構成及び機能等]
次に、図2を参照して、ノードNnの構成及び機能について説明する。
[2.ノードNnの構成及び機能等]
次に、図2を参照して、ノードNnの構成及び機能について説明する。
図2は、ノードNnの概要構成例を示す図である。
各ノードNnは、図2に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラムを記憶するROM等から構成されたコンピュータとしての制御部11と、各種データ(例えば、コンテンツのレプリカ、インデックス情報、DHTを用いたルーティングテーブル等)及び各種プログラム等を記憶保存(格納)するためのHD(ハードディスク)等から構成された各種記憶手段としての記憶部12と、受信されたコンテンツのレプリカ等を一時蓄積するバッファメモリ13と、コンテンツのレプリカに含まれるエンコードされたビデオデータ(映像情報)及びオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部14と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部15と、当該映像処理部15から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部16と、上記デコードされたオーディオデータをアナログオーディオ信号にD (Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部17と、当該音声処理部17から出力されたオーディオ信号を音波として出力するスピーカ18と、ネットワーク8を通じて他のノードNn等間の情報の通信制御を行うための通信部19と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス、或いは、操作パネル等)20と、を備えて構成され、制御部11、記憶部12、バッファメモリ13、デコーダ部14、通信部19、及び入力部20はバス21を介して相互に接続されている。なお、ノードNnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。
また、記憶部12には、コンテンツ分散保存システムSに参加する際のアクセス先となるコンタクトノード及びコンテンツ提供サーバSAのIPアドレス及びポート番号等が記憶されている。更に、記憶部12には、HDに保存(記録)しているコンテンツのレプリカに関する情報(例えば、コンテンツID、コンテンツ名、及び評価値等)を登録するための保存コンテンツ管理テーブルが記憶されている。
このような構成において、制御部11は、CPUが記憶部12等に記憶されたプログラム(本発明のノード処理プログラムを含む)を読み出して実行することにより、全体を統括制御し、コンテンツ分散保存システムSへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及びコンテンツ保持ノードの少なくとも何れか一つのノードとしての処理を行うようになっている。なお、上記ノード処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
そして、コンテンツ保持ノードとしての特徴的な処理を行う制御部11は、本発明における評価値減算処理手段、評価値加算情報送信手段、ノード検索手段、及び評価値情報取得手段等として機能するようになっている。また、ルートノードとしての特徴的な処理を行う制御部11は、本発明における評価値加算情報送信手段、ノード選定手段、及び評価値情報送信手段等として機能するようになっている。
先ず、コンテンツ保持ノードの制御部11は、他のユーザノードからのコンテンツ要求に応じて自ノードが保存しているレプリカを提供する場合には、そのコンテンツの評価値であって保存コンテンツ管理テーブルに登録(記憶)されている評価値を所定値減算(例えば、当該評価値を半分に減少)し、且つ、減算した分の評価値を与えるための評価値加算メッセージを、当該レプリカの提供を受けたユーザノードに通信部19等を介して送信するようになっている。
そして、コンテンツ保持ノードの制御部11は、例えば自ノードの電源オフ等により、コンテンツ分散保存システムSから脱退する場合には、自ノードが記憶部12に記憶保存しているレプリカに係るコンテンツの評価値であって上記保存コンテンツ管理テーブルに登録されている評価値の全部又は一部を同じコンテンツのレプリカを保存している他のコンテンツ保持ノードにおける当該コンテンツの評価値に加算させるための評価値加算メッセージ(評価値加算情報の一例)を、例えば当該コンテンツのルートノードに向けて送出するようになっている。つまり、当該制御部11は、当該コンテンツのコンテンツID及び評価値等を含む評価値加算メッセージを生成し、これを自己のDHTを用いたルーティングテーブルに登録されたノードNnのうち例えばコンテンツIDと最も近いノードIDを有するノードNnに送信する。これにより、当該評価値加算メッセージは、当該コンテンツIDをキーとするDHTルーティングによって当該コンテンツのレプリカの所在を管理するルートノードに至るまで、コンテンツ分散保存システムSに参加している中継ノード間を転送されることになる。
なお、コンテンツ保持ノードの制御部11は、自ノードが互いに異なる複数のコンテンツのレプリカを保存している場合、上記評価値加算メッセージを、各コンテンツのルートノードに向けて送出するようになっている。ルートノードは、通常、コンテンツ毎異なるため、夫々のルートノードに評価値加算メッセージを送る趣旨である。この場合、各評価値加算メッセージには、対象となるコンテンツの評価値が含まれることになる。
次に、ルートノードの制御部11は、上記評価値加算メッセージを受信すると、これに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報からコンテンツ保持ノードを選定するようになっている。ここで、当該コンテンツのレプリカを保存しているコンテンツ保持ノードがインデックス情報により複数管理されている場合、例えばランダムに1又は複数のコンテンツ保持ノードが選定される。
そして、ルートノードの制御部11は、上記評価値加算メッセージに示されるコンテンツの評価値の全部又は一部を選定されたコンテンツ保持ノードにおける当該コンテンツの評価値に加算させるための評価値加算メッセージを、当該選定されたコンテンツ保持ノードに対して送信する。これにより、当該評価値加算メッセージを受信したコンテンツ保持ノードは、自己の保存コンテンツ管理テーブルに登録されている評価値を更新する、つまり、当該評価値加算メッセージに示されるコンテンツの評価値を、自己の保存コンテンツ管理テーブルに登録されている、同じコンテンツの評価値に対して加算することになる。したがって、高い評価値が付与されたコンテンツのレプリカを保存しているコンテンツ保持ノードが当該システムSから脱退する場合であっても、適切な数のレプリカを当該システムS内に確保し、より安定したレプリカ管理をすることができる。
なお、上記選定されたコンテンツ保持ノードが一つである場合、当該コンテンツ保持ノードには、上記受信された評価値加算メッセージに示されるコンテンツの評価値の全部を、当該選定されたコンテンツ保持ノードにおける当該コンテンツの評価値に加算させるための評価値加算メッセージが、当該コンテンツ保持ノードに送信されることになる。
一方、上記選定されたコンテンツ保持ノードが複数ある場合、当該選定された各コンテンツ保持ノードにおいて加算される評価値の総和が、上記評価値加算メッセージに示されるコンテンツの評価値と一致するように当該評価値が配分(例えば、上記評価値が「100」であり、コンテンツ保持ノードが4つである場合、「25」ずつ均等に配分)され、配分された評価値を、当該選定された各コンテンツ保持ノードにおける当該コンテンツの評価値に加算させるための評価値加算メッセージが各コンテンツ保持ノードに送信されることになる。これにより、コンテンツ分散保存システムSから脱退するコンテンツ保持ノードで管理されるコンテンツの評価値を、当該コンテンツのレプリカを保存している複数の他のコンテンツ保持ノードに、より効率良く配分して加算させることができ、したがって、より一層、安定したレプリカ管理をすることができる。
また、上記評価値加算メッセージを受信したルートノードにおいて上記コンテンツのレプリカを保存しているコンテンツ保持ノードが管理されておらず、つまり、当該コンテンツに対応するインデックス情報にコンテンツ保持ノードのIPアドレス等が記憶されておらず、上記評価値加算メッセージの送信対象となるコンテンツ保持ノードが選定できない場合には、当該ルートノードの制御部11は、評価値加算メッセージに示されるコンテンツの評価値を示す評価値加算メッセージ(評価値情報の一例)を、例えば全てのコンテンツのレプリカを保存するコンテンツ提供サーバSAに対して送信するようになっている。
これにより、当該評価値加算メッセージに示される評価値はコンテンツ提供サーバSAにおいて一時的に記憶されることになり、当該コンテンツの評価値を無駄なく活用することができる。
ところで、コンテンツ保持ノードがコンテンツ分散保存システムSから脱退する場合には、上述したように自己が保存しているレプリカに係るコンテンツの評価値を他のコンテンツ保持ノードに与えるために上述した評価値加算メッセージを送信することになるが、このとき、自己が保存しているレプリカを削除しても良いし、或いは削除せずに残しておいても良い。また、他のコンテンツ保持ノードに与えるコンテンツの評価値は、自己の保存コンテンツ管理テーブルから削除される(削除せずに残しておいても良い)。
そして、コンテンツ保持ノードがコンテンツ分散保存システムSから脱退後、当該コンテンツ分散保存システムSに再参加する場合、当該コンテンツ保持ノードの制御部11は、当該再参加時に自ノードが保存しているレプリカと同じコンテンツのレプリカを保存している他のコンテンツ保持ノードを検索する。当該検索は、例えば、評価値要求メッセージをルートノードに向けて送出することにより行われる。そして、当該制御部11は、検索されたコンテンツ保持ノードから当該コンテンツの評価値の一部(例えば、半分)を示しその評価値を加算する評価値加算メッセージを受信し、受信した評価値加算メッセージに示される評価値を、再参加時に自ノードが保存しているレプリカに係るコンテンツの評価値として新たに保存コンテンツ管理テーブルに登録するようになっている。これにより、コンテンツ保持ノードは、コンテンツ分散保存システムSから脱退時に、他のコンテンツ保持ノードに評価値を与えても、当該システムSへの再参加時に、自己が保存しているレプリカに係るコンテンツの評価値を容易に取得することができる。
なお、上記検索により複数のコンテンツ保持ノードが検索された場合、再参加したコンテンツ保持ノードは、検索された夫々のコンテンツ保持ノードから評価値加算メッセージを取得し、取得された夫々の評価値加算メッセージに示される評価値の総和を、再参加時に自己が保存しているレプリカに係るコンテンツの評価値として新たに保存コンテンツ管理テーブルに登録するように構成しても良い。
また、上記検索により一つのコンテンツ保持ノードも検索されなかった場合、つまり、上記評価値要求メッセージを受信したルートノードにおいて上記コンテンツのレプリカを保存しているコンテンツ保持ノードが管理されていない場合には、当該評価値要求メッセージは、コンテンツ提供サーバSAに対して転送される。そして、再参加したコンテンツ保持ノードは、当該コンテンツ提供サーバSAから評価値を取得し、取得された評価値を、再参加時に自ノードが保存しているレプリカに係るコンテンツの評価値として新たに保存コンテンツ管理テーブルに登録することになる。
[3.コンテンツ提供サーバSAの構成及び機能等]
次に、図3を参照して、サーバ装置の一例としてのコンテンツ提供サーバSAの構成及び機能について説明する。
[3.コンテンツ提供サーバSAの構成及び機能等]
次に、図3を参照して、サーバ装置の一例としてのコンテンツ提供サーバSAの構成及び機能について説明する。
図3は、コンテンツ提供サーバSAの概要構成例を示す図である。
コンテンツ提供サーバSAは、図3に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラムを記憶するROM等から構成されたコンピュータとしての制御部31と、各種データ(例えば、コンテンツのレプリカ、インデックス情報、コンテンツカタログ情報等)及び各種プログラム等を記憶保存(格納)するためのHD(ハードディスク)等から構成された各種記憶手段としての記憶部32と、ネットワーク8を通じてノードNn間の情報の通信制御を行うための通信部33と、を備えて構成され、制御部31、記憶部32、及び通信部33はバス34を介して相互に接続されている。
また、記憶部32には、HDに保存(記録)しているコンテンツのレプリカに関する情報(例えば、コンテンツID、コンテンツ名、及び評価値等)を登録するための保存コンテンツ管理テーブルが記憶されている。
このような構成において、制御部31は、CPUが記憶部32等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、本発明における評価値情報送信手段、及び評価値情報返信手段等として機能するようになっている。
コンテンツ提供サーバSAには、コンテンツ分散保存システムSで利用される全てのコンテンツのレプリカが保存されており、ユーザノードが所望のコンテンツのレプリカをコンテンツ保持ノードから取得できない場合、当該コンテンツ提供サーバSAからユーザノードに対して当該レプリカを提供するようになっている。また、コンテンツ提供サーバSAに保存されているレプリカに対しても評価値が付与され管理されており、コンテンツ提供サーバSAがユーザノードにコンテンツのレプリカを提供した場合には、上述したコンテンツ保持ノードと同様、当該コンテンツの評価値を所定値減算(例えば、当該評価値を半分に減少)し、減算した分の評価値をそのコンテンツのレプリカの提供を受けたユーザノードに対して与える(移譲する)ことになる。
コンテンツ提供サーバSAが、上記ルートノードから評価値加算メッセージを受信すると、制御部31は、当該メッセージに示されるコンテンツの評価値を一時的に記憶するようになっている。これにより、当該コンテンツのルートノードが、当該コンテンツのレプリカを保存するコンテンツ保持ノードを選定できない場合であっても、当該コンテンツの評価値を無駄なく活用することができる。
そして、ユーザノードからのコンテンツ要求に応じてそのレプリカを提供する場合には、制御部31は、上記記憶されている評価値(上記評価値加算メッセージに含まれていた評価値)と当該コンテンツに対して予め付与されていた評価値の一部(例えば、半分)とを加算し、当該加算された評価値を示す評価値加算メッセージを、当該ユーザノードに送信することで、当該加算された評価値を当該ユーザノードに対して与える(移譲する)ことになる。
また、制御部31は、上記評価値加算メッセージを送信したルートノードがコンテンツ保持ノードを選定できるようになったか確認(例えば、所定周期でルートノードにアクセスして確認)し、選定できるようになった場合には、当該評価値加算メッセージを当該ルートノードに返信するように構成しても良い。この場合、当該ルートノードは、当該評価値加算メッセージに示されるコンテンツの評価値を、改めて選定したコンテンツ保持ノードにおける当該コンテンツの評価値に加算させるための評価値加算メッセージを、当該選定したコンテンツ保持ノードに対して送信することになる(以降の動作は上記と同様)。
[4.コンテンツ分散保存システムの動作]
次に、コンテンツ分散保存システムSの動作について説明する。
[4.コンテンツ分散保存システムの動作]
次に、コンテンツ分散保存システムSの動作について説明する。
(4−1.ノードNnの処理)
先ず、図4乃至図7を参照して、ノードNnの処理について説明する。
先ず、図4乃至図7を参照して、ノードNnの処理について説明する。
図4は、通常のノードNnの制御部11におけるメイン処理の一例を示すフローチャートである。また、図5は、図4のステップS9における各種メッセージ受信処理の詳細を示すフローチャートである。また、図6(A)は、図5のステップS92におけるコンテンツ検索メッセージ受信処理の詳細を示すフローチャートであり、図6(B)は、図5のステップS96におけるコンテンツ要求メッセージ受信処理の詳細を示すフローチャートである。また、図7(A)は、図5のステップS104における評価値加算/減算メッセージ受信処理の詳細を示すフローチャートであり、図7(B)は、図5のステップS106における評価値要求メッセージ受信処理の詳細を示すフローチャートである。
なお、図4に示す処理は、あるノードNnにおいて電源オンがなされ、参加処理(コンタクトノードへの参加メッセージ送信)が実行され、コンテンツ分散保存システムSへの参加が行われることにより開始される。
図4のステップS1では、制御部11は、先ず、当該参加時に自ノードが保存しているレプリカと同じコンテンツのレプリカを保存している他のコンテンツ保持ノードを検索してそこから評価値をもらうために、当該コンテンツのコンテンツID等を含む評価値要求メッセージをルートノードに向けて送出する。これにより、当該制御部11は、評価値加算メッセージを他のコンテンツ保持ノードから受信して、上記保存されているレプリカに係るコンテンツの評価値として新たに保存コンテンツ管理テーブルに登録することになる(後述するステップS1042)。
なお、当該ステップS1において、上記評価値要求メッセージをルートノードに向けて送出することで、制御部11は、当該ルートノードから対象のコンテンツのレプリカを保存しているコンテンツ保持ノードのIPアドレス等を取得し、その後、当該コンテンツ保持ノードに接続して上記コンテンツの評価値を取得するように構成しても良い。
次いで、制御部11は、電源オフ(シャットダウン)指令があったか否かを判別し、電源オフ指令があった場合には(ステップS2:YES)、ステップS3に進み、電源オフ指令がない場合には(ステップS2:NO)、ステップS4に進む。
ステップS3では、制御部11は、コンテンツ分散保存システムSから脱退するに当たって、自ノードが保存しているレプリカに係るコンテンツの評価値及びコンテンツIDを含む評価値加算メッセージを当該コンテンツのルートノードに向けて送出する。これにより、評価値加算メッセージを受信したコンテンツ保持ノードにおいて当該評価値加算メッセージに示されるコンテンツの評価値が同じコンテンツの評価値に対して加算されることになる(後述するステップS1042)。
ステップS4では、制御部11は、ユーザから入力部20を介してコンテンツのリクエストがあったか否かを判別し、当該リクエストがあった場合には(ステップS4:YES)、ステップS5に進み、当該リクエストがない場合には(ステップS4:NO)、ステップS6に進む。
ステップS5では、制御部11は、リクエストされたコンテンツのコンテンツID等を含むコンテンツ検索メッセージをルートノードに向けて送出する。
ステップS6では、制御部11は、他のノードNnからメッセージを受信したか否かを判断し、当該メッセージを受信した場合には(ステップS6:YES)、ステップS7に進み、当該メッセージを受信していない場合には(ステップS6:NO)、ステップS2に戻る。
ステップS7では、制御部11は、上記受信したメッセージの宛先のノード情報に含まれるノードID(又はコンテンツID)のルートノードは自ノードであるか、つまり、当該ノードID(又はコンテンツID)と最も近いノードIDを有するノードNnが自ノードであるか否かを自身のルーティングテーブルから判別する。そして、当該ルートノードが自ノードでない場合には(ステップS7:NO)、制御部11は、メッセージの宛先のノード情報に含まれるノードID(又はコンテンツID)に最も近いノードNnを自身のルーティングテーブルから特定し、当該特定したノードNnに対して上記受信したメッセージを送信(転送)し(ステップS8)、ステップS2に戻る。
一方、当該ルートノードが自ノードである(つまり、自ノード宛てのメッセージである)場合には(ステップS7:YES)、制御部11は、各種メッセージ受信処理を行う(ステップS9)。
当該各種メッセージ受信処理では、図5に示すように、先ず、制御部11は、上記受信されたメッセージがコンテンツ検索メッセージであるか否かを判別する(ステップS91)。そして、上記受信されたメッセージがコンテンツ検索メッセージである場合には(ステップS91:YES)、ステップS92に進み、コンテンツ検索メッセージでない場合には(ステップS91:NO)、ステップS93に進む。
ステップS92では、コンテンツ検索メッセージ受信処理が行われる。当該コンテンツ検索メッセージ受信処理においては、図6(A)に示すように、制御部11は、当該コンテンツ検索メッセージに含まれるコンテンツIDに対応するレプリカを保存しているコンテンツ保持ノードに係るインデックス情報を登録しているか否かをインデックスキャッシュから判別する(ステップS921)。
そして、制御部11は、当該インデックス情報が登録されている場合には(ステップS921:YES)、当該インデックス情報を取得してステップS922に進み、当該インデックス情報が登録されていない場合には(ステップS921:NO)、ステップS923に進む。
ステップS922では、制御部11は、取得したインデックス情報によりコンテンツ保持ノードを特定し、当該コンテンツ保持ノードに対して上記コンテンツ検索メッセージを送信(転送)してステップS923に進む。
ステップS923では、制御部11は、上記コンテンツ検索メッセージに含まれるコンテンツIDに対応するレプリカが自ノードにおける記憶部12に保存されているか否かを判別し、保存されている場合(この場合、コンテンツ保持ノードということになる)には(ステップS923:YES)、ステップS924に進み、保存されていない場合には(ステップS923:NO)、図5の処理に戻る。
ステップS924では、制御部11は、上記コンテンツ検索メッセージに含まれる送信(リクエスト)元のノード情報(例えば、ノードID、IPアドレス及びポート番号等)に対応するノードNn(ユーザノード)に対してコンテンツ検索返答メッセージを送信し、図5の処理に戻る。
図5のステップS93では、制御部11は、上記受信されたメッセージがコンテンツ検索返答メッセージであるか否かを判別し、上記受信されたメッセージがコンテンツ検索返答メッセージである場合には(ステップS93:YES)、ステップS94に進み、コンテンツ検索返答メッセージでない場合には(ステップS93:NO)、ステップS95に進む。
ステップS94では、制御部11は、コンテンツ検索返答メッセージに含まれる送信元のノード情報に対応するコンテンツ保持ノードに対してコンテンツ要求メッセージを送信し、図4の処理に戻る。
ステップS95では、制御部11は、上記受信されたメッセージがコンテンツ要求メッセージであるか否かを判別し、上記受信されたメッセージがコンテンツ要求メッセージである場合には(ステップS95:YES)、ステップS96に進み、コンテンツ要求メッセージでない場合には(ステップS95:NO)、ステップS97に進む。
ステップS96では、コンテンツ要求メッセージ受信処理が行われる。当該コンテンツ要求メッセージ受信処理においては、図6(B)に示すように、制御部11は、現在、コンテンツ要求に係るレプリカを配信可能であるか否かを判別し(ステップS961)、配信可能である場合には(ステップS961:YES)、ステップS962に進み、配信可能でない場合には(ステップS961:NO)、ステップS964に進む。
ステップS962では、制御部11は、上記コンテンツ要求メッセージに含まれる送信元のノード情報に対応するユーザノードに対して、当該要求に係るレプリカのファイルと共にコンテンツ送信メッセージを送信する。
次いで、制御部11は、当該送信したレプリカに係るコンテンツの評価値を例えば半分に減算して(保存コンテンツ管理テーブルを更新)、減算した分の評価値を与えるための評価値加算メッセージを上記ユーザノードに対して送信し(ステップS963)、図5の処理に戻る。
ステップS964では、制御部11は、上記コンテンツ要求メッセージに含まれる送信元のノード情報に対応するユーザノードに対して、コンテンツ送信不可メッセージを送信し、図5の処理に戻る。
図5のステップS97では、制御部11は、上記受信されたメッセージがコンテンツ送信メッセージであるか否かを判別し、上記受信されたメッセージがコンテンツ送信メッセージである場合には(ステップS97:YES)、ステップS98に進み、コンテンツ送信メッセージでない場合には(ステップS97:NO)、ステップS99に進む。
ステップS98では、制御部11は、コンテンツ送信メッセージと共に受信されたレプリカに係るコンテンツの評価値(当該コンテンツ送信メッセージとほぼ同時期に受信された評価値加算メッセージに示された評価値であって後述するステップS1042で保存コンテンツ管理テーブルに登録された評価値)と、既に保存されているレプリカに係るコンテンツの評価値とを比較(複数保存されている場合、夫々のコンテンツの評価値と比較)する。そして、当該制御部11は、当該比較結果、当該コンテンツ送信メッセージと共に受信されたレプリカに係るコンテンツの評価値が最も低くなければ、当該レプリカを記憶部11に記憶保存し、これが完了すると、当該レプリカに対応するコンテンツID等を含むパブリッシュメッセージをルートノードに向けて送出し、図4の処理に戻る。
ステップS99では、制御部11は、上記受信されたメッセージがコンテンツ送信不可メッセージであるか否かを判別し、上記受信されたメッセージがコンテンツ送信不可メッセージである場合には(ステップS99:YES)、ステップS100に進み、コンテンツ送信不可メッセージでない場合には(ステップS99:NO)、ステップS101に進む。
ステップS100では、制御部11は、全てのコンテンツを管理しているコンテンツ提供サーバSAに対してコンテンツ要求メッセージを送信し、図4の処理に戻る。
ステップS101では、制御部11は、上記受信されたメッセージがパブリッシュメッセージであるか否かを判別し、上記受信されたメッセージがパブリッシュメッセージである場合には(ステップS101:YES)、ステップS102に進み、パブリッシュメッセージでない場合には(ステップS101:NO)、ステップS103に進む。
ステップS102では、制御部11は、受信されたパブリッシュメッセージに含まれるコンテンツID、及び送信元のノード情報を含むインデックス情報を新規登録(インデックスキャッシュ領域に記憶)し、図4の処理に戻る。
ステップS103では、制御部11は、上記受信されたメッセージが評価値加算メッセージ又は評価値減算メッセージであるか否かを判別し、上記受信されたメッセージが評価値加算メッセージ又は評価値減算メッセージである場合には(ステップS103:YES)、ステップS104に進み、評価値加算メッセージでも評価値減算メッセージでもない場合には(ステップS103:NO)、ステップS105に進む。
なお、評価値減算メッセージは、コンテンツ分散保存システムSにおいて、あるコンテンツについて算出された人気度が低下してきたときに、そのコンテンツの評価値を下げるために、システム管理者のノードNnから送出されるものである。
ステップS104では、評価値加算/減算メッセージ受信処理が行われる。当該評価値加算/減算メッセージ受信処理においては、図7(A)に示すように、制御部11は、上記評価値加算メッセージ又は上記評価値減算メッセージに含まれるコンテンツIDに対応するレプリカが自ノードにおける記憶部12に保存されているか否かを判別し(ステップS1041)、保存されている場合には(ステップS1041:YES)、ステップS1042に進み、保存されていない場合には(ステップS1041:NO)、ステップS1043に進む。
ステップS1042では、評価値加算メッセージの場合、制御部11は、評価値加算メッセージに示されるコンテンツの評価値を、自ノードの保存コンテンツ管理テーブルに登録されている同じコンテンツの評価値(0である場合もある)に対して加算し、図5の処理に戻る。一方、評価値減算メッセージの場合、制御部11は、評価値減算メッセージに示されるコンテンツの評価値を、自ノードの保存コンテンツ管理テーブルに登録されている同じコンテンツの評価値(0である場合もある)から減算し、図5の処理に戻る。
ステップS1043では、制御部11は、評価値加算メッセージ又は評価値減算メッセージに含まれるコンテンツIDに対応するレプリカを保存しているコンテンツ保持ノードに係るインデックス情報を登録しているか否かをインデックスキャッシュから判別する。
そして、制御部11は、当該インデックス情報が登録されている場合には(ステップS1043:YES)、当該インデックス情報を取得してステップS1044に進み、当該インデックス情報が登録されていない場合には(ステップS1043:NO)、ステップS1045に進む。
ステップS1044では、制御部11は、取得したインデックス情報によりコンテンツ保持ノードを1又は複数選定し、当該コンテンツ保持ノードに対して上記評価値加算メッセージ又は評価値減算メッセージを送信(転送)し、図5の処理に戻る。なお、選定されたコンテンツ保持ノードが複数ある場合、上述したように、当該選定された各コンテンツ保持ノードにおいて加算される評価値の総和が、上記評価値加算メッセージに示されるコンテンツの評価値と一致するように当該評価値が配分され、配分された評価値を、当該選定された各コンテンツ保持ノードにおける当該コンテンツの評価値に加算させるための評価値加算メッセージが各コンテンツ保持ノードに送信されることになる。
ステップS1045では、制御部11は、上記評価値加算メッセージ又は評価値減算メッセージをコンテンツ提供サーバSAに対して送信(転送)し、図5の処理に戻る。
図5のステップS105では、制御部11は、上記受信されたメッセージが評価値要求メッセージであるか否かを判別し、上記受信されたメッセージが評価値要求メッセージである場合には(ステップS105:YES)、ステップS106に進み、評価値要求メッセージでない場合には(ステップS105:NO)、図4の処理に戻る。
ステップS106では、評価値要求メッセージ受信処理が行われる。当該評価値要求メッセージ受信処理においては、図7(B)に示すように、制御部11は、上記評価値要求メッセージに含まれるコンテンツIDに対応するレプリカが自ノードにおける記憶部12に保存されているか否かを判別し(ステップS1061)、保存されている場合には(ステップS1061:YES)、ステップS1062に進み、保存されていない場合には(ステップS1061:NO)、ステップS1063に進む。
ステップS1062では、制御部11は、評価値要求メッセージに示されるコンテンツであって保存コンテンツ管理テーブルに登録されているコンテンツの評価値を所定値減算(例えば、当該評価値を半分に減少)し、減算した分の評価値を与えるための評価値加算メッセージを、上記評価値要求メッセージの送信元のノードNn(上述したように再参加したノード)に送信し、図5の処理に戻る。
ステップS1063では、制御部11は、当該評価値要求メッセージに含まれるコンテンツIDに対応するレプリカを保存しているコンテンツ保持ノードに係るインデックス情報を登録しているか否かをインデックスキャッシュから判別する。
そして、制御部11は、当該インデックス情報が登録されている場合には(ステップS1063:YES)、当該インデックス情報を取得してステップS1064に進み、当該インデックス情報が登録されていない場合には(ステップS1063:NO)、ステップS1065に進む。
ステップS1064では、制御部11は、取得したインデックス情報によりコンテンツ保持ノードを1又は複数選定し、当該コンテンツ保持ノードに対して上記評価値要求メッセージを送信(転送)し、図5の処理に戻る。なお、選定されたコンテンツ保持ノードが複数ある場合、夫々のコンテンツ保持ノードに評価値要求メッセージが送信されるように構成しても良い。
ステップS1065では、制御部11は、上記評価値要求メッセージをコンテンツ提供サーバSAに対して送信(転送)し、図5の処理に戻る。
(4−2.コンテンツ提供サーバSAの処理)
先ず、図8を参照して、コンテンツ提供サーバSAの処理について説明する。
先ず、図8を参照して、コンテンツ提供サーバSAの処理について説明する。
図8は、コンテンツ提供サーバSAの制御部31における処理の一例を示すフローチャートである。
なお、図8に示す処理は、コンテンツ提供サーバSAにおいて電源オンがなされることにより開始される。
図8のステップS11では、制御部31は、電源オフ(シャットダウン)指令があったか否かを判別し、電源オフ指令があった場合には(ステップS11:YES)、当該処理を終了し、電源オフ指令がない場合には(ステップS11:NO)、ステップS12に進む。
ステップS12では、制御部31は、ノードNnからコンテンツ検索メッセージを受信したか否かを判断し、当該メッセージを受信した場合には(ステップS12:YES)、ステップS13に進み、当該メッセージを受信していない場合には(ステップS12:NO)、ステップS14に進む。
ステップS13では、制御部31は、コンテンツ検索メッセージの送信元のユーザノードに対して、コンテンツ検索返答メッセージを送信し、ステップS11に戻る。
ステップS14では、制御部31は、ノードNnからコンテンツ要求メッセージを受信したか否かを判断し、当該メッセージを受信した場合には(ステップS14:YES)、ステップS15に進み、当該メッセージを受信していない場合には(ステップS14:NO)、ステップS17に進む。
ステップS15では、制御部31は、上記コンテンツ要求メッセージに含まれる送信元のノード情報に対応する要求元のノードNnに対して、当該要求に係るレプリカのファイルと共にコンテンツ送信メッセージを送信する。
次いで、制御部31は、当該送信したレプリカに係るコンテンツの評価値(コンテンツ提供サーバSAで管理されている評価値)を例えば半分に減算して、減算した分の評価値を与えるための評価値加算メッセージを要求元のノードNnに対して送信し(ステップS16)、ステップS11に戻る。ここで、後述するステップS18で上記ルートノードから評価値加算メッセージを受信して当該メッセージに示されるコンテンツの評価値が記憶されていた場合には、その記憶されていた評価値が上記減算された分の評価値に加算され、当該加算された評価値を示す評価値加算メッセージがユーザノードに送信されることになる。
或いは、ステップS16でコンテンツ提供サーバSAは、当該送信したレプリカに係るコンテンツの評価値を0に減算して当該減算した評価値(つまり、全評価値)を与えるための評価値加算メッセージを要求元のノードNnに対して送信しても良い。この場合、当該要求元のノードNnに全評価値を渡しておけば、次のコンテンツ要求にはそのノードNnが応じることを期待するものである。
ステップS17では、制御部31は、ノードNnから評価値要求メッセージを受信したか否かを判断し、当該メッセージを受信した場合には(ステップS17:YES)、ステップS16に移行し、上記評価値要求メッセージに示されるコンテンツの評価値を例えば半分に減算して、減算した分の評価値を与えるための評価値加算メッセージを要求元のノードNnに対して送信し、当該メッセージを受信していない場合には(ステップS17:NO)、ステップS18に進む。
ステップS18では、制御部31は、ノードNnから評価値加算メッセージ又は評価値減算メッセージを受信したか否かを判断し、当該メッセージを受信した場合には(ステップS18:YES)、ステップS19に進み、当該メッセージを受信していない場合には(ステップS18:NO)、ステップS11に戻る。
ステップS19では、制御部31は、当該メッセージに示されるコンテンツの評価値を一時的に記憶し、ステップS11に戻る。
以上説明したように、上記実施形態によれば、コンテンツ保持ノードが、コンテンツ分散保存システムSから脱退する場合には、自己が保存しているレプリカに係るコンテンツの評価値の全部又は一部を同じコンテンツのレプリカを保存している他のコンテンツ保持ノードにおける当該コンテンツの評価値に加算させるための評価値加算メッセージを当該コンテンツのルートノードに向けて送出する。そして、当該評価値加算メッセージを受信したルートノードは、当該コンテンツのレプリカを保存しているコンテンツ保持ノードを選定し、当該選定したコンテンツ保持ノードに当該評価値加算メッセージを送信するように構成したので、上記システムSから脱退するコンテンツ保持ノードで管理されるコンテンツの評価値を、上記選定されたコンテンツ保持ノードにおいて管理される当該コンテンツの評価値に、より効率良く加算させることができる。したがって、高い評価値が付与されたコンテンツのレプリカを保存しているコンテンツ保持ノードが当該システムSから脱退してしまった場合であっても、適切な数のレプリカを当該システムS内に確保し、より安定したレプリカ管理をすることができる。
また、コンテンツ保持ノードは、コンテンツ分散保存システムSから脱退後、当該システムSに再参加する場合、当該再参加時に自己が保存しているレプリカと同じコンテンツのレプリカを保存している他のコンテンツ保持ノードを検索する。そして、当該コンテンツ保持ノードは、検索されたコンテンツ保持ノードから当該コンテンツの評価値の一部を示しその評価値を加算する評価値加算メッセージを受信し、受信した評価値加算メッセージに示される評価値を、再参加時に自ノードが保存しているレプリカに係るコンテンツの評価値として新たに保存コンテンツ管理テーブルに登録するように構成したので、当該システムSからの脱退時にコンテンツの評価値を他のコンテンツ保持ノードに与えた場合であっても、再参加時に自己が保存しているレプリカに係るコンテンツの評価値を容易に取得することができる。
なお、上記実施形態においては、コンテンツ保持ノードがコンテンツ分散保存システムSから脱退するに当たって、自己が保存しているレプリカに係るコンテンツの評価値及びコンテンツIDを含む評価値加算メッセージを当該コンテンツのルートノードに向けて送出するように構成したが、かかるコンテンツ保持ノードに代わって他のノードNnが上記評価値加算メッセージをルートノードに向けて送出するように構成しても良い。例えば、上記ステップS3において、当該システムSから脱退しようとしているコンテンツ保持ノードは、例えば自己が知っている任意のノードNn(例えば、上記ルーティングテーブルやインデックスキャッシュに登録されているノードNnがランダムに選定される)に対して自己が保存している全てのレプリカに係るコンテンツの評価値及びコンテンツIDを含む評価値加算メッセージを送信する。そして、当該評価値加算メッセージを受信した任意のノードNnは、当該評価値加算メッセージに示されるコンテンツのルートノードに向けて上記評価値加算メッセージを送出することになる(以降の処理は上記実施形態と同様)。ここで、任意のノードNnが受信した評価値加算メッセージに互いに異なる複数のコンテンツが示されている場合、当該任意のノードNnは、各コンテンツのルートノードに向けて、夫々、評価値加算メッセージを送出することになる。このような構成によれば、当該システムSから脱退しようとしているコンテンツ保持ノードが互いに異なる複数のコンテンツのレプリカを保存している場合であっても、当該コンテンツ保持ノードは、夫々のコンテンツの評価値及びコンテンツID等の情報を任意のノードNnに対してのみ送信すれば良く、当該情報を各コンテンツのルートノードに向けて送出する必要がないので、当該コンテンツ保持ノードの負担を低減することができる。
なお、上記実施形態は、コンテンツ分散保存システムSに新たに投入(何れか複数のコンテンツ保持ノードに新たに保存)されたコンテンツのレプリカが該システムSにおいて利用可能(公開)となる(例えば、例えば、各ノードNnにおいてコンテンツカタログ情報上からコンテンツを選択可能となる)前であっても同様に適用可能である。
また、上記実施形態におけるコンテンツ分散保存システムSは、DHTを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
8 ネットワーク
9 オーバーレイネットワーク
11,31 制御部
12,32 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
19,33 通信部
20 入力部
21,34 バス
Nn ノード
SA コンテンツ提供サーバ
S コンテンツ分散保存システム
9 オーバーレイネットワーク
11,31 制御部
12,32 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
19,33 通信部
20 入力部
21,34 バス
Nn ノード
SA コンテンツ提供サーバ
S コンテンツ分散保存システム
Claims (15)
- ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存され、各前記ノード装置間で前記コンテンツの複製データを利用可能としたコンテンツ分散保存システムにおける前記ノード装置であって、
自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する評価値記憶手段と、
他のノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合には、そのコンテンツの評価値であって前記記憶されている評価値を所定値減算する評価値減算処理手段と、
前記コンテンツ分散保存システムに参加している一部の他のノード装置の前記ネットワーク上のアドレス情報を記憶するアドレス記憶手段と、
前記コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、前記アドレス情報が記憶されている他のノード装置のうちの何れかのノード装置に対して送信する評価値加算情報送信手段と、
を備えることを特徴とするノード装置。 - 請求項1に記載のノード装置において、
前記評価値加算情報送信手段は、前記評価値加算情報を、当該評価値加算情報に示されるコンテンツの複製データの所在を管理するノード装置に向けて送信するものであって、
当該評価値加算情報は、前記コンテンツの複製データの所在を管理するノード装置に至るまで、前記コンテンツ分散保存システムに参加しているノード装置間を転送されることを特徴とするノード装置。 - 請求項2に記載のノード装置において、
互いに異なる複数のコンテンツの複製データを保存している場合、前記評価値加算情報送信手段は、各コンテンツの複製データの所在を管理する各ノード装置に向けて前記評価値加算情報を送信することを特徴とするノード装置。 - 請求項1乃至3の何れか一項に記載のノード装置において、
前記コンテンツ分散保存システムから脱退後、前記コンテンツ分散保存システムに再参加する場合には、当該再参加時に自己が保存している前記複製データと同じコンテンツの複製データを保存している他のノード装置を検索するノード検索手段と、
前記検索された前記ノード装置における前記コンテンツの評価値の一部を示す評価値情報を当該ノード装置から取得する評価値情報取得手段と、
を更に備え、
前記評価値記憶手段は、前記取得された評価値情報に示される評価値を、前記再参加時に自己が保存している複製データに係るコンテンツの評価値として新たに記憶することを特徴とするノード装置。 - 請求項4に記載のノード装置において、
前記ノード検索手段により複数のノード装置が検索された場合には、前記評価値情報取得手段は、夫々の前記ノード装置から前記評価値情報を取得し、前記評価値記憶手段は、前記取得された夫々の評価値情報に示される評価値の総和を、前記再参加時に自己が保存している複製データに係るコンテンツの評価値として新たに記憶することを特徴とするノード装置。 - 請求項2又は3に記載のノード装置から送信された評価値加算情報を受信するノード装置であって、
自己が前記評価値加算情報により示されるコンテンツの所在を管理するノード装置であり、且つ当該管理対象のノード装置であって当該コンテンツの複製データを保存しているノード装置の前記ネットワーク上のアドレス情報を記憶している場合には、当該ノード装置の中から何れかのノード装置を選定するノード選定手段と、
前記評価値加算情報に示されるコンテンツの評価値の全部又は一部を前記選定されたノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、当該選定されたノード装置に対して送信する評価値加算情報送信手段と、
を備えることを特徴とするノード装置。 - 請求項6に記載のノード装置において、
前記ノード選定手段により複数のノード装置が選定された場合には、各ノード装置において加算される前記評価値の総和が、前記評価値加算情報に示されるコンテンツの前記評価値と一致するように、当該評価値が配分されることを特徴とするノード装置。 - 請求項6に記載のノード装置において、
前記管理対象のノード装置であって当該コンテンツの複製データを保存しているノード装置の前記ネットワーク上のアドレス情報が記憶されておらず、前記ノード選定手段により前記ノード装置が選定できない場合には、前記評価値加算情報に示されるコンテンツの評価値を示す評価値情報を、複数のコンテンツの複製データを保存するサーバ装置に対して送信する評価値情報送信手段を更に備えることを特徴とするノード装置。 - 請求項1に記載のノード装置から送信されてきた評価値加算情報を受信するノード装置であって、
前記評価値加算情報を、当該評価値加算情報に示されるコンテンツの複製データの所在を管理するノード装置に向けて送信する前記評価値加算情報送信手段を備えることを特徴とするノード装置。 - 請求項9に記載のノード装置において、
前記受信された評価値加算情報に互いに異なる複数のコンテンツが示されている場合、前記評価値加算情報送信手段は、各コンテンツの複製データの所在を管理する各ノード装置に向けて前記評価値加算情報を送信することを特徴とするノード装置。 - 請求項8に記載のノード装置から送信されてきた評価値情報を受信するサーバ装置であって、
前記評価値情報に示されるコンテンツの評価値を記憶する評価値情報記憶手段と、
ノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合において、当該要求に係るコンテンツの評価値が前記評価値情報記憶手段に記憶されている場合には、当該記憶されている評価値と当該コンテンツに対して予め付与されていた評価値の一部とを加算した評価値を示す評価値情報を、前記コンテンツ要求を行ったノード装置に対して送信する評価値情報送信手段と、
を備えることを特徴するサーバ装置。 - 請求項8に記載のノード装置から送信されてきた評価値情報を受信するサーバ装置であって、
前記評価値情報に示されるコンテンツの前記評価値を記憶する評価値情報記憶手段と、
前記評価値情報を送信したノード装置が、前記コンテンツの複製データを保存しているノード装置を選定できるようになったか確認し、選定できるようになった場合には、当該評価値情報を、当該評価値情報を送信したノード装置に返信する評価値情報返信手段と、
を備えることを特徴するサーバ装置。 - コンピュータを、請求項1乃至10の何れか一項に記載のノード装置として機能させることを特徴とするノード処理プログラム。
- ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存され、各前記ノード装置間で前記コンテンツの複製データを利用可能としたコンテンツ分散保存システムであって、
前記ノード装置は、
自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する評価値記憶手段と、
他のノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合には、そのコンテンツの評価値であって前記記憶されている評価値を減少させる評価値減少手段と、
前記コンテンツ分散保存システムに参加している一部の他のノード装置の前記ネットワーク上のアドレス情報を記憶するアドレス記憶手段と、
前記コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、前記アドレス情報が記憶されている他のノード装置のうちの何れかのノード装置に対して送信する評価値加算情報送信手段と、
を備え、
前記評価値加算情報を受信したノード装置であって前記コンテンツの複製データを保存している他のノード装置は、
自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する評価値記憶手段と、
前記受信された評価値加算情報に示されるコンテンツの評価値を、前記記憶されている、同じコンテンツの評価値に対して加算する加算処理手段と、
を備えることを特徴とするコンテンツ分散保存システム。 - ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存され、各前記ノード装置間で前記コンテンツの複製データを利用可能としたコンテンツ分散保存システムにおける評価値加算方法であって、
前記ノード装置は、
自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する工程と、
他のノード装置からのコンテンツ要求に応じて自己が保存している複製データを提供する場合には、そのコンテンツの評価値であって前記記憶されている評価値を減少させる工程と、
前記コンテンツ分散保存システムに参加している一部の他のノード装置の前記ネットワーク上のアドレス情報を記憶する工程と、
前記コンテンツ分散保存システムから脱退する場合には、自己が保存している複製データに係るコンテンツの評価値であって前記記憶されている評価値の全部又は一部を同じコンテンツの複製データを保存している他のノード装置における当該コンテンツの評価値に加算させるための評価値加算情報を、前記アドレス情報が記憶されている他のノード装置のうちの何れかのノード装置に対して送信する工程と、
を備え、
前記評価値加算情報を受信したノード装置であって前記コンテンツの複製データを保存している他のノード装置は、
自己が保存している前記複製データに係るコンテンツの評価を表す評価値を記憶する工程と、
前記受信された評価値加算情報に示されるコンテンツの評価値を、前記記憶されている、同じコンテンツの評価値に対して加算する工程と、
を備えることを特徴とする評価値加算方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008023085A JP2009187056A (ja) | 2008-02-01 | 2008-02-01 | コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008023085A JP2009187056A (ja) | 2008-02-01 | 2008-02-01 | コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009187056A true JP2009187056A (ja) | 2009-08-20 |
Family
ID=41070279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008023085A Withdrawn JP2009187056A (ja) | 2008-02-01 | 2008-02-01 | コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009187056A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011055139A (ja) * | 2009-08-31 | 2011-03-17 | Brother Industries Ltd | 情報通信システム、ノード装置及びそのプログラム、並びにコンテンツ取得方法 |
-
2008
- 2008-02-01 JP JP2008023085A patent/JP2009187056A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011055139A (ja) * | 2009-08-31 | 2011-03-17 | Brother Industries Ltd | 情報通信システム、ノード装置及びそのプログラム、並びにコンテンツ取得方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008234445A (ja) | コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム | |
US8219618B2 (en) | Information communication system, information communication method, and recording medium having information communication program stored thereon | |
JP4670042B2 (ja) | ノード装置、ノード装置情報更新方法、及びノード装置情報更新プログラム | |
JP2010028551A (ja) | コンテンツ分散保存システム、ノード装置、ノード処理プログラム、及びアドレス情報変更通知方法 | |
WO2008026400A1 (fr) | Système de distribution de contenu, procédé de traitement d'information dans un système de distribution de contenu, dispositif terminal et support d'enregistrement incorporant son programme enregistré | |
WO2007086250A1 (ja) | 情報配信システム、再登録メッセージ送信方法、ノード装置、及びノード処理プログラムを記録した記録媒体 | |
US8655981B2 (en) | Information communication system, information communication method, and recording medium having information communication program stored thereon | |
JP2010113573A (ja) | コンテンツ分散保存システム、コンテンツ保存方法、サーバ装置、ノード装置、サーバ処理プログラム、及びノード処理プログラム | |
JP2009187101A (ja) | コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム | |
JP5375272B2 (ja) | ノード装置、ノード処理プログラム、情報通信システム及びコンテンツデータ管理方法 | |
JP2010231576A (ja) | ノード装置、ノード処理プログラム及びコンテンツ保存方法 | |
JP2009187056A (ja) | コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム | |
JP2009232272A (ja) | コンテンツ分散保存システム、コンテンツ再生方法、ノード装置、管理装置、ノード処理プログラム、及び管理処理プログラム | |
JP2010108082A (ja) | コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム | |
JP4935734B2 (ja) | コンテンツ分散保存システム、ノード装置及びノード処理プログラム並びにノード処理方法 | |
JP2010066930A (ja) | コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム | |
JP5458629B2 (ja) | ノード装置、ノード処理プログラム及び検索方法 | |
JP5157770B2 (ja) | ノード装置、プログラム及び保存指示方法 | |
JP5287059B2 (ja) | ノード装置、ノード処理プログラム及び保存指示方法 | |
JP5412924B2 (ja) | ノード装置、ノード処理プログラム及びコンテンツデータ削除方法 | |
JP5007624B2 (ja) | コンテンツ分散保存システム、コンテンツデータ取得方法、ノード装置、及びノード処理プログラム | |
JP2009181430A (ja) | コンテンツ分散保存システム、評価値書換方法、管理装置、ノード装置管理処理プログラム、及びノード処理プログラム | |
JP2011008657A (ja) | コンテンツ配信システム、ノード装置、コンテンツ配信方法及びノードプログラム | |
JP2010238160A (ja) | ノード装置、ノード処理プログラム及びコンテンツデータ保存方法 | |
JP2009080546A (ja) | コンテンツ分散保存システム、複製データ保存数集計方法、ノード装置、及びノード処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100215 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20110414 |