JP2008234445A - コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム - Google Patents

コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム Download PDF

Info

Publication number
JP2008234445A
JP2008234445A JP2007075031A JP2007075031A JP2008234445A JP 2008234445 A JP2008234445 A JP 2008234445A JP 2007075031 A JP2007075031 A JP 2007075031A JP 2007075031 A JP2007075031 A JP 2007075031A JP 2008234445 A JP2008234445 A JP 2008234445A
Authority
JP
Japan
Prior art keywords
data
content
node
duplicate
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.)
Pending
Application number
JP2007075031A
Other languages
English (en)
Inventor
Hideki Matsuo
英輝 松尾
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 JP2007075031A priority Critical patent/JP2008234445A/ja
Priority to US12/073,343 priority patent/US20080235321A1/en
Publication of JP2008234445A publication Critical patent/JP2008234445A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】各ノード装置が、コンテンツ分散保存システムにおいてコンテンツデータのレプリカ(複製データ)をより迅速に取得することを可能にしたシステムを提供する。
【解決手段】内容の異なる複数のコンテンツデータの複製データが複数のノード装置に分散保存され、自ノード装置が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置からネットワークを介して取得する複製数取得手段と、前記取得された夫々の複製数情報に示される前記複製データの数を比較する複製数比較手段と、前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存する複製データ取得手段と、を備える。
【選択図】図6

Description

本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムの技術分野に関する。
この種のピアツーピア型の通信システムにおいて、コンテンツデータのレプリカ(複製データ)を複数のノード装置に分散配置(分散保存)させておくコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたコンテンツデータのレプリカの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。当該DHTは、各ノード装置に記憶されており、当該DHTには、各種メッセージの転送先となるべき複数のノード装置を示すノード情報(例えば、IPアドレス及びポート番号を含む)が登録されている。
そして、コンテンツ分散保存システムに参加しているノード装置は、所望のコンテンツデータの取得を望む場合、当該コンテンツデータのレプリカの所在を検索(発見)するためのメッセージ(クエリ)を他のノード装置に送出することにより、当該メッセージは、上記DHTにしたがって、中継のノード装置により当該コンテンツデータのレプリカの所在の管理元のノード装置に向かって転送され、最終的に当該メッセージが辿り着く上記管理元のノード装置から上記所在を示す情報を取得することになる。これにより、当該メッセージを送出したノード装置は、上記検索に係るコンテンツデータのレプリカを保存しているノード装置に対して、当該コンテンツデータのレプリカを要求し、当該コンテンツデータのレプリカの提供を受けることができる。
特開2006−197400号公報
ところで、コンテンツ分散保存システムにおいて取得可能なコンテンツデータには様々な(内容が異なる)ものがあるが、分散保存されているレプリカの数が少ない(当該レプリカを保存しているノード装置の数が少ない)コンテンツデータについては、そのレプリカの所在を検索(発見)するためのメッセージ(クエリ)を他のノード装置に送出しても、その管理元のノード装置から迅速に返答(上記所在を示す情報を含む)が得られない(例えば、返答に時間がかかったり、返答が帰ってこない等)場合や、得られても当該レプリカを保存しているノード装置へのアクセス集中により当該レプリカを迅速に取得できない場合がある。また、このような場合、ノード装置は、全てのコンテンツデータを管理しているコンテンツ管理サーバにアクセスして当該レプリカを取得することもできるが、この場合も、コンテンツ管理サーバの負荷が増大するという問題がある。
また、各ノード装置において新たなコンテンツデータのレプリカが取得され保存される場合、各ノード装置においてコンテンツデータのレプリカを記憶保存するための記憶装置(例えば、ハードディスク)の記憶容量は限られているため、それ以前に保存されていたコンテンツデータのレプリカが上書きされてしまい、そのレプリカのコンテンツ分散保存システム上における数が更に減ってしまい、上記問題が一層顕著になることも懸念される。
本発明は、以上の問題等に鑑みてなされたものであり、各ノード装置が、コンテンツ分散保存システムにおいてコンテンツデータのレプリカ(複製データ)をより迅速に取得することを可能にしたコンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラムを提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、内容の異なる複数のコンテンツデータの複製データが複数のノード装置に分散保存され、当該分散保存されている複製データの所在がコンテンツデータ毎に管理されるコンテンツ分散保存システムにおける前記ノード装置であって、自ノード装置が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得する複製数取得手段と、前記取得された夫々の複製数情報に示される前記複製データの数を比較する複製数比較手段と、前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存する複製データ取得手段と、を備えることを特徴とする。
この発明によれば、ノード装置は、自己が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得し、前記取得した夫々の複製数情報に示される前記複製データの数を比較し、前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存するように構成したので、数が少ない複製データを早い段階で増やすことができ、したがって、当該複製データを他のノード装置が、より迅速に取得する(取得し易くする)ことができる。
請求項2に記載の発明は、請求項1に記載のノード装置において、前記複製数取得手段は、前記複製データ取得手段により前記複製データが取得される度に、当該複製データ以外の前記複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から再取得し、前記複製数比較手段は、当該取得された夫々の複製数情報に示される前記複製データの数を再比較し、前記複製データ取得手段は、前記再比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを取得して保存することを特徴とする。
この発明によれば、あるコンテンツデータの複製データが取得されている間に、次に取得すべきコンテンツデータの複製データのコンテンツ分散保存システムにおける数が変わっても、より正確な複製データの数に用いて複製データの数の比較を行うことができる。
請求項3に記載の発明は、請求項1に記載のノード装置において、前記複製数取得手段は、所定時間が経過する度に、前記複製データ取得手段により取得された前記複製データ以外の前記複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から再取得し、前記複製数比較手段は、当該取得された夫々の複製数情報に示される前記複製データの数を再比較し、前記複製データ取得手段は、前記再比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを取得して保存することを特徴とする。
この発明によれば、あるコンテンツデータの複製データが取得される時間が所定時間よりも長くかかってしまい、次に取得すべきコンテンツデータの複製データのコンテンツ分散保存システムにおける数が変わっても、より正確な複製データの数に用いて複製データの数を比較を行うことができ、一方、所定時間経過していなければ、次に取得すべきコンテンツデータの複製データの数がそれほど変わることがないで、この場合には複製数情報を再取得するために生じるネットワークやノード装置等の負担を抑えることができる。
請求項4に記載の発明は、請求項1乃至3の何れか一項に記載のノード装置において、自ノード装置が取得すべき前記複数のコンテンツデータのうち、当該数より少ない複数のコンテンツデータを選択するコンテンツ選択手段を更に備え、前記複製数取得手段は、前記選択された複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から取得し、前記複製数比較手段は、当該取得された夫々の複製数情報に示される前記複製データの数を比較することを特徴とする。
この発明によれば、取得すべき全てのコンテンツデータの複製データの数を比較するのではなく、そのうち所定数のコンテンツデータの複製データの数を比較することで、効率化を図ることができる。
請求項5に記載の発明は、請求項4に記載のノード装置において、夫々の前記コンテンツデータ及び夫々の前記ノード装置には、所定桁数からなる固有の識別情報が割り当てられており、前記コンテンツ選択手段は、自ノード装置の識別情報の所定桁目と一致桁が少ない識別情報が割り当てられたコンテンツデータを選択することを特徴とする。
請求項6に記載の発明は、請求項1乃至5の何れか一項に記載のノード装置において、前記複製データ取得手段は、前記比較された前記複製データの数が同じコンテンツデータが複数ある場合には、それらのコンテンツデータのうち、データ量が最も大きいコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを取得して保存することを特徴とする。
この発明によれば、より長い取得時間を要するコンテンツデータのレプリカを早目に取得することができる。
請求項7に記載の発明は、請求項1乃至5の何れか一項に記載のノード装置において、前記複製データ取得手段は、前記比較された前記複製データの数が同じコンテンツデータが複数ある場合には、それらのコンテンツデータのうち、自ノード装置との間のデータ伝送に要する時間が最も長い他のノード装置に保存されているコンテンツデータを優先して、その複製データを保存している当該他のノード装置から取得して保存することを特徴とする。
この発明によれば、より長い取得時間を要するコンテンツデータのレプリカを早目に取得することができる。
請求項8に記載のノード処理プログラムの発明は、コンピュータを、請求項1乃至7の何れか一項に記載のノード装置として機能させることを特徴とする。
請求項9に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、内容の異なる複数のコンテンツデータの複製データが複数のノード装置に分散保存され、当該分散保存されている複製データの所在がコンテンツデータ毎に管理されるコンテンツ分散保存システムであって、前記ノード装置は、自ノード装置が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得する複製数取得手段と、前記取得された夫々の複製数情報に示される前記複製データの数を比較する複製数比較手段と、前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存する複製データ取得手段と、を備えることを特徴とする。
請求項10に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、内容の異なる複数のコンテンツデータの複製データが複数のノード装置に分散保存され、当該分散保存されている複製データの所在がコンテンツデータ毎に管理されるコンテンツ分散保存システムにおける複製データ取得方法であって、前記ノード装置が、自ノード装置が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得する工程と、前記取得された夫々の複製数情報に示される前記複製データの数を比較する工程と、前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存する工程と、を備えることを特徴とする。
本発明によれば、ノード装置は、自己が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得し、前記取得した夫々の複製数情報に示される前記複製データの数を比較し、前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存するように構成したので、数が少ない複製データを早い段階で増やすことができ、したがって、当該複製データを他のノード装置が、より迅速に取得する(取得し易くする)ことができる。
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。
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)アドレスが割り当てられている。このような製造番号およびIPアドレスは、複数のノード間で重複しないものである。
そして、本実施形態に係るコンテンツ分散保存システムSは、これらのノードNnのうち、図1の上部枠100内に示すように、何れか複数のノードNnの参加により形成されるピアツーピア方式のネットワークシステムとなっている。なお、図1の上部枠100内に示すネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク9(論理的なネットワーク)である。かかるオーバーレイネットワーク9は、特定のアルゴリズム、例えば、DHT(Distributed Hash Table)を利用したアルゴリズムにより実現される。
そして、コンテンツ分散保存システムS(言い換えれば、オーバーレイネットワーク9)に参加している各ノードNnには、所定桁数からなる固有の識別情報であるノードIDが割り当てられており、当該ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、図3に示すような一つのID空間に偏りなく分散して配置されることになる。
なお、コンテンツ分散保存システムSへの参加は、参加していないノードNn(例えば、ノードN8)が、参加している任意のノードNn(例えば、当該システムSに常時参加しているコンタクトノード)に対して参加要求を示す参加メッセージを送信することによって行われる。
上記のように共通のハッシュ関数により求められた(ハッシュ化された)ノードIDは、当該IPアドレス或いは製造番号が異なれば、同じ値になる確率が極めて低いものである。また、このノードIDは、ノードの最大運用台数を収容できるだけのbit数を持たせる必要がある。例えば、128bitの番号とすれば、2^128=340×10^36台のノードを運用できる。なお、ハッシュ関数については公知であるので詳しい説明を省略する。
また、各ノードNnは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定しており、具体的には、ID空間内で適度に離れたノードNnのノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。
コンテンツ分散保存システムSに参加している1台のノードNnは、該システムSに参加している全てのノードNnのうち、必要最低限のノードNnのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない(記憶していない)ノードNnについては、各ノードNn間で互いに各種メッセージを転送し合って届けてもらうようになっている。
ここで、図2及び図3を参照して、DHTを用いたルーティングテーブルについて詳しく説明する。
図2は、ノードN2が保持するDHTを用いたルーティングテーブルの一例を示す図であり、図3は、DHTのID空間の一例を示す概念図である。
なお、図2及び図3の例においては、説明の便宜上、ノードIDのbit長を2bit×3桁=6bitとし、各桁を4進数(0〜3の整数)で表している(実際には、もっと長いbit長を用い、各桁も例えば4bitに区切って0〜fの16進数で表現する)。
図2の例において、DHTを用いたルーティングテーブルは、レベル1〜レベル3のテーブルからなり(複数のレベルに区分されており)、各レベルのテーブルエントリーには、エリア毎に、ノード情報として、ノードIDとこれに対応するノードNnのIPアドレス及びポート番号が対応付けられて登録されている。各レベルのテーブルにおける各エリアは、DHTのノードID空間を分割することにより得られるエリアである。例えば、図3に示すように、レベル1では、DHTのID空間全体が4分割され、“000”〜“033”のノードIDが存在するエリアを0XXのエリア、“100”〜“133” のノードIDが存在するエリアを1XXのエリア、“200”〜“233” のノードIDが存在するエリアを2XXのエリア、“300”〜“333” のノードIDが存在するエリアを3XXのエリアとする。また、レベル2では、レベル1のエリア(つまり、0XX〜3XXのエリア)が更に4分割、例えば1XXのエリアが4分割され、“100”〜“103” のノードIDが存在するエリアを10Xのエリア、“110”〜“113” のノードIDが存在するエリアを11Xのエリア、“120”〜“123” のノードIDが存在するエリアを12Xのエリア、“130”〜“133” のノードIDが存在するエリアを13Xのエリアとする。
そして、例えば、ノードN2のノードIDが“122”とすると、図2に示すように、かかるノードN2のレベル1における1XXのエリア(自己(つまり、自ノード)が存在するエリア)のテーブルには、自己のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録され、自己が存在しないエリア(つまり、0XXのエリア、2XXのエリア、及び3XXのエリア)には、夫々、他の任意のノードNnのノードID及びIPアドレス等が登録されている。
また、かかるノードN2のレベル2における12Xのエリア(自己が存在するエリア)のテーブルには、図2に示すように、自己のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録され、自己が存在しないエリア(つまり、10Xのエリア、11Xのエリア、及び13Xのエリア)等には、夫々、他の任意のノードNnのノードID及びIPアドレス等が登録されている。
更に、かかるノードN2のレベル3には、図2に示すように、ノードIDが“120”〜“122”のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録されている。
なお、図2及び図3の例では、ノードIDのbit長を3桁×2bitとしたので、レベル1〜3の3レベル分のテーブルで網羅できるが、ノードIDのbit長が増せば、その分のテーブルが必要となる(例えば、ノードIDのbit長を16桁×4bitとした場合、16レベル分のテーブルが必要となる)。
このように、本実施形態におけるDHTを用いたルーティングテーブルでは、レベルが上がるほど、エリアが狭まっていくようになっている。
また、このようなDHTは、例えば、未参加のノードがコンテンツ分散保存システムSに参加する際に与えられることになる。
ところで、コンテンツ分散保存システムSにおいては、内容の異なる様々なコンテンツ(例えば、映画や音楽等)データの夫々の複製データ(以下、「レプリカ」という)が複数のノードNnに分散して保存(格納)されている。
例えば、ノードN1及びノードN5には、タイトルがXXXの映画のコンテンツデータのレプリカが保存されており、一方、ノードN3には、タイトルがYYYの映画のコンテンツデータのレプリカが保存されるというように、複数のノードNn(以下、「コンテンツ保持ノード」という)に分散されて保存される。
また、これらのコンテンツデータのレプリカには、夫々、コンテンツ名(タイトル)及びコンテンツID(コンテンツ毎に固有の識別情報)等の情報が付加されている。このコンテンツIDは、例えば、コンテンツ名+任意の数値(或いは、当該コンテンツデータの先頭数バイトでも良い)が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。或いは、システム管理者が、コンテンツ毎に一意のID値(ノードIDと同一ビット長)を付与しても良い。この場合は、コンテンツ名とそのコンテンツIDの対応が書かれたコンテンツカタログ情報が、全ノードNnに配布される。
また、このように分散保存されているコンテンツデータのレプリカの所在、つまり、当該コンテンツデータのレプリカを保存したノードNnのIPアドレス等と当該コンテンツデータに対応するコンテンツID等の組が含まれるインデックス情報が、当該コンテンツデータのレプリカの所在の管理元であるノードNn(以下、「ルートノード」、又は「コンテンツ(コンテンツID)のルートノード」という)等により記憶(インデックスキャッシュに記憶)、管理されるようになっている。
例えば、タイトルがXXXの映画のコンテンツデータのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN4により管理され、タイトルがYYYの映画のコンテンツデータのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN6により管理される(つまり、レプリカの所在が夫々のコンテンツデータ毎に管理される)。
すなわち、コンテンツ毎にルートノードが分けられるので負荷分散が図らており、しかも、同一(内容が同一)のコンテンツデータ(コンテンツIDが同一)のレプリカが、夫々、複数のコンテンツ保持ノードに保存されている場合であっても、かかるコンテンツデータのインデックス情報は、一つのルートノードで管理することができる。このため、各ルートノードは、コンテンツ分散保存システムSにおいて自己がその所在を管理するコンテンツデータのレプリカの数(言い換えれば、当該レプリカを保存しているコンテンツ保持ノードの数)を認識している。
また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNnであるように定められる。
そして、あるノードNnのユーザが、所望するコンテンツデータを取得したい場合、当該コンテンツデータの取得を望むノードNn(以下、「ユーザノード」という)は、当該ユーザにより選択(例えば、全てのノードNnに配信されているコンテンツカタログ情報(コンテンツ名とコンテンツID等が記述されており、例えばコンテンツカタログ管理サーバ(図示せず)にて管理される)から選択)されたコンテンツデータのコンテンツID及び自己のIPアドレス等を含むコンテンツ所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ(検索)メッセージを、ルートノードに向けて(ルートノード宛てに)送出する。これにより、コンテンツ所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着することになる。
なお、上記コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。
図4は、ユーザノードから送出されたコンテンツ所在問合せ(検索)メッセージの流れの一例を、DHTのID空間にて示した概念図である。
図4の例において、例えば、ユーザノードであるノードN2は、自己のDHTのレベル1のテーブルを参照して、コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードN3のIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記コンテンツ所在問合せ(検索)メッセージ(クエリ)を送信する。
これに対して、ノードN3は、当該コンテンツ所在問合せ(検索)メッセージを受信し、自己のDHTのレベル2のテーブルを参照して、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードN4のIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記コンテンツ所在問合せ(検索)メッセージを転送する。
これに対して、ノードN4は、当該コンテンツ所在問合せ(検索)メッセージを受信し、自己のDHTのレベル3のテーブルを参照して、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDが自分である、つまり、自分がそのコンテンツIDのルートノードであることを認識すると、当該コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。これにより、ユーザノードは、所望のコンテンツデータのレプリカを保存している上記コンテンツ保持ノードである例えばノードN1に対して、コンテンツ送信要求メッセージ(コンテンツデータの送信要求を示す要求情報)を送信し、そこから当該コンテンツデータのレプリカの提供を受けることが可能になる。
或いは、ルートノードであるノードN4は、当該インデックス情報に含まれるIPアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージ(ユーザノードのIPアドレス等を含み、当該ユーザノードに対してコンテンツデータのレプリカの送信要求を示す要求情報)を送信する。これにより、ユーザノードは、上記コンテンツ保持ノードである例えばノードN1から当該コンテンツデータのレプリカの提供を受けることが可能になる。
なお、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしている中継ノード(例えば、ノードN3のキャッシュノード)から当該インデックス情報を取得(受信)することもできる。
このようにしてコンテンツデータのレプリカを取得、保存したユーザノードは、当該レプリカを保存したことをそのルートノードに知らせるために(言い換えれば、自己が当該コンテンツデータのレプリカを保持していることを、該システムSに参加している他のノードNnに対して公開するために)、そのコンテンツデータのコンテンツID及び自己のIPアドレス等が含まれるパブリッシュ(登録通知)メッセージ(コンテンツデータのレプリカを保存したので、IPアドレス等の登録の要求を示す登録メッセージ)を生成し、該パブリッシュメッセージを、そのルートノードに向けて送出する。これにより、パブリッシュメッセージは、コンテンツ所在問合せ(検索)メッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになり、該ルートノードは、受信したパブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)することになる。こうして、上記ユーザノードは、新たに、上記コンテンツデータのレプリカを保持するコンテンツ保持ノードとなる。
なお、上記パブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報は、ルートノードに至るまでの転送経路における中継ノードにおいても登録(キャッシュ)される。
2.ノードNnの構成及び機能等
次に、図5を参照して、ノードNnの構成及び機能について説明する。
図5は、ノードNnの概要構成例を示す図である。
各ノードNnは、図5に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラムを記憶するROM等から構成されたコンピュータとしての制御部11と、各種データ(例えば、コンテンツデータのレプリカ、インデックス情報、DHT等)及び各種プログラム等を記憶保存(格納)するためのHD等から構成された記憶部12と、受信されたコンテンツデータのレプリカ等を一時蓄積するバッファメモリ13と、コンテンツデータのレプリカに含まれるエンコードされたビデオデータ(映像情報)およびオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部14と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部15と、当該映像処理部15から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部16と、上記デコードされたオーディオデータをアナログオーディオ信号にD (Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部17と、当該音声処理部17から出力されたオーディオ信号を音波として出力するスピーカ18と、ネットワーク8を通じて他のノードNnや各種サーバとの間の情報の通信制御を行うための通信部20と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス、或いは、操作パネル等)21と、を備えて構成され、制御部11、記憶部12、バッファメモリ13、デコーダ部14、通信部20、及び入力部21はバス22を介して相互に接続されている。なお、ノードNnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。また、記憶部12には、コンテンツ分散保存システムSに参加する際のアクセス先となるコンタクトノードのIPアドレス及びポート番号等が記憶されている。
このような構成において、制御部11は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、コンテンツ分散保存システムSへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及びコンテンツ保持ノードの少なくとも何れか一つのノードとしての処理を行うようになっており、ユーザノードとしての処理を実行する場合には、本発明における複製数取得手段、コンテンツ選択手段、複製数比較手段、及び複製データ取得手段等として機能するようになっている。
ここで、ユーザノードが、例えばシステム管理者等からのコンテンツ投入要求(保存要求)により、限られた時間内(例えば、1週間以内)に多く(例えば、100個)のコンテンツデータのレプリカを他のノードNnから取得して保存する場合、制御部11は、自ノードNnが取得すべきこれらのコンテンツデータ毎に、そのレプリカ数を示すレプリカ数情報を、これらのレプリカの所在を管理している夫々のルートノードからネットワークNWを介して取得するようになっている。
図6は、ユーザノードが夫々のルートノードからレプリカ数情報を取得する様子の一例を示す図である。
図6の例では、ユーザノードであるノードN2は、レプリカ数問合せメッセージを夫々のルートノードに向けて送出することにより、夫々のルートノード(コンテンツ“XXX”のルートノードであるノードN4、コンテンツ“AAA”のルートノードであるノードN25、コンテンツ“ZZZ”のルートノードであるノードN21、コンテンツ“YYY”のルートノードであるノードN6)からレプリカ数情報を取得し、後述するリストに登録している。ところで、例えばノードN4は、キャッシュノードとしてコンテンツID“022”に対応するインデックス情報も記憶している(コンテンツID“022”のルートノードは他に存在)が、このコンテンツデータのレプリカ数は、上記レプリカ数情報には含まれない。なお、ユーザノードから送出されたレプリカ数問合せメッセージ(コンテンツID及び自己のIPアドレス等を含む)は、上述したコンテンツ所在問合せ(検索)メッセージと同様、コンテンツIDをキーとするDHTルーティングによって夫々のルートノードに到着することになる。また、ユーザノードは、レプリカ数問合せメッセージとコンテンツ所在問合せ(検索)メッセージとを一体にした問合せメッセージにより、当該コンテンツデータについてのレプリカ数情報及びインデックス情報を同時に取得しても良い。
そして、制御部11は、このようにして取得された夫々のレプリカ数情報に示されるレプリカ数を比較し、比較されたレプリカ数が少ないコンテンツデータを優先して、そのレプリカを保存しているコンテンツ保持ノードから当該レプリカをネットワークNWを介して取得(ルートノードから取得したインデックス情報に基づきダウンロード)して記憶部12に記憶保存するようになっている。例えば、図6の例では、コンテンツ“AAA”のレプリカ数が最も少ないので、このレプリカが優先されて最初に取得され、次に、コンテンツ“ZZZ”とコンテンツ“YYY”のレプリカが取得され、最後にコンテンツ“XXX”が取得される。
なお、上記ノード処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。
3.コンテンツ分散保存システムSの動作
次に、図7乃至図9等を参照して、コンテンツ分散保存システムSの動作について説明する。
図7は、ノードNnの制御部11におけるメイン処理を示すフローチャートである。また、図8(A)は、図7におけるレプリカ数問合せ処理の詳細を示すフローチャートであり、図8(B)は、図7におけるコンテンツデータ取得処理の詳細を示すフローチャートである。また、図9は、図7におけるメッセージ受信処理の詳細を示すフローチャートである。
図7に示す処理は、任意のノードNnにおいて例えば電源ONになった場合に開始され、コンテンツ分散保存システムSへの参加処理が実行される。この参加処理においては、当該ノードNnの制御部11は、記憶部12からコンタクトノードのIPアドレス及びポート番号を取得し、これに基づきコンタクトノードにネットワーク8を介して接続し、参加要求を示す参加メッセージ(自己のノードID及びノード情報等を含む)を送信する。これにより、当該ノードNnには、当該システムSに参加している他のノードNnからルーティングテーブルが送信されることになり、受信したルーティングテーブルに基づき自己のルーティングテーブルを生成し、コンテンツ分散保存システムSに参加が完了することになる。なお、ルーティングテーブルの生成方法は、本発明の直接の関係がないので、詳しい説明を省略する。また、コンタクトノードのIPアドレス等の情報は、例えばノードNnの出荷時、或いはソフトウェア初回インストール時の初期状態で記憶部12に記憶される。
こうしてコンテンツ分散保存システムSへの参加処理が完了すると、制御部11は、電源OFFの指示(例えば、ユーザから入力部21を介した電源OFF操作指示)があった場合には(ステップS1:YES)、当該処理を終了する。一方、電源OFFの指示がない場合には(ステップS1:NO)、制御部11は、コンテンツ取得リストを受け取ったか(例えば、システム管理者等の管理サーバからコンテンツ投入要求と共に受信されたか)否かを判別し(ステップS2)、当該コンテンツ取得リストを受け取ってない場合には(ステップS2:NO)、ステップS3に進み、当該コンテンツ取得リストを受け取った場合には(ステップS2:YES)、ステップS5に進む。
かかるコンテンツ取得リストには、各コンテンツデータのコンテンツ情報(例えばコンテンツ名、コンテンツID、及びデータ量(例えば、数ギガバイト)等を含む)が、所定の順序(例えばコンテンツIDで示される数値の小さい順、コンテンツ名の「あいうえお」(又はアルファベット順)、或いはコンテンツ分散保存システムSへの投入年月日順(つまり、新たにコンテンツ分散保存システムSにおいて保存された年月日順)等)で記載されている。
また、コンテンツ取得リストは、システム管理者等の管理サーバから取得される他にも、ユーザからの入力部21を介した指示の下、各ノードNnにおいて作成される場合もある。かかる場合、ユーザが、例えばコンテンツカタログ情報から所望の(視聴したい)数十個のコンテンツデータを入力部21を操作して選択(例えば、コンテンツ名で選択)しコンテンツ取得リスト作成指示を行うと、選択されたコンテンツデータのコンテンツ情報がコンテンツカタログ情報から抽出され、これが登録されたコンテンツ取得リストが作成されることになる。こうして作成されたコンテンツ取得リストが、ユーザにより入力部21を通じて指定された場合、上記ステップS2でコンテンツ取得リストを受け取ったと判断されることになる。
ステップS3では、制御部11は、他のノードNnから送信されたメッセージを受信したか否かを判別し、当該メッセージを受信していない場合には(ステップS3:NO)、ステップS4に進み、当該メッセージを受信した場合には(ステップS3:YES)、ステップS18に進み、メッセージ受信処理を行う。
なお、ステップS4におけるその他の処理では、例えば、ユーザからの入力部21を介した指示に応じた処理等が行われ、ステップS1に戻る。また、ステップS18におけるメッセージ受信処理の詳細については後述する。
ステップS5では、制御部11は、コンテンツ取得リストにコンテンツ情報が記載されているか否かを判別し、記載されていない場合には(ステップS5:NO)、ステップS1に戻り、記載されている場合には(ステップS5:YES)、ステップS6に進む。
ステップS6では、制御部11は、コンテンツ取得リストに記載されたコンテンツ情報の数が所定数(例えば、10個)以上であるか否かを判別し、所定数以上である場合には(ステップS6:YES)、ステップS7に進み、所定数以上でない場合には(ステップS6:NO)、ステップS9に進む。
ステップS7では、制御部11は、コンテンツ取得リストから上記所定数(例えば、10個)のコンテンツデータを選択(例えば、コンテンツ名で選択)し、そのコンテンツ情報をコンテンツ選択リストに記載する。これは、コンテンツ取得リストにおけるコンテンツデータ(つまり、取得すべきコンテンツデータ)を所定数抜粋して、それらのレプリカ数を比較することで効率化を趣旨である。
ここで、上記所定数のコンテンツデータは、例えばコンテンツ取得リストからランダムに選択されるか、或いは、コンテンツ取得リストの記載順(登録順)に上から(例えば、図6に示すノードN2のリストにおけるコンテンツ“XXX”から)選択(自ノードNnが取得すべき複数のコンテンツデータのうち、当該数より少ない複数のコンテンツデータを選択)される。
なお、自己(自ノードNn)のノードIDの所定桁目と一致桁(例えば、上位桁目を優先とした一致桁)が少ない(言い換えれば、ID空間において自己のノードIDと遠い(離れた))コンテンツIDが割り当てられたコンテンツデータを選択すると効果的である。例えば、「013」、「100」、「002」、及び「221」のコンテンツIDがあるとすると、例えばノードID「001」との上位桁目を優先とした一致桁が最も少ないコンテンツIDは「221」になり、逆に上位桁目を優先とした一致桁が最も多いコンテンツIDは「002」となる。
これにより、当該ノードNnが自己のノードIDの例えば上位桁目を優先した一致桁が少ないコンテンツIDに対応するコンテンツデータのレプリカをそのコンテンツ保持ノードから取得して保存した場合に、ルートノードに向けて送出されるパブリッシュメッセージは、当該ルートノードに到達するまでに、より多くの中継ノードにより転送されるので、より多くの中継ノード(キャッシュノードとなる)にインデックス情報を記憶させることができ、ひいては、インデックス情報の検索効率を向上させることができる。
次いで、制御部11は、上記選択したコンテンツ情報をコンテンツ取得リストから削除し(ステップS8)、ステップS11に進む。
ステップS9では、制御部11は、コンテンツ取得リストにおける全てのコンテンツ情報をコンテンツ選択リストに記載する。
次いで、制御部11は、コンテンツ取得リストから全てのコンテンツ情報を削除する(ステップS10)、ステップS11に進む。
ステップS11では、制御部11は、レプリカ数問合せ処理を実行する。
当該レプリカ数問合せ処理において、制御部11は、図8(A)に示すように、変数Iを“1”にセットし(ステップS111)、コンテンツ選択リストにI番目のコンテンツ情報があるか否かを判別し(ステップS112)、I番目のコンテンツ情報がある場合には(ステップS112:YES)、ステップS113に進む。
ステップS113では、制御部11は、I番目のコンテンツ情報に含まれるコンテンツIDを含むレプリカ数問合せメッセージを、上述したように、自己(ユーザノードである自ノードNn)のルーティングテーブルにしたがって他のノードNn(つまり、当該コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNn)に対して送信(当該コンテンツIDのルートノードに向けて送出)する。これにより、当該レプリカ数問合せメッセージは、コンテンツIDをキーとするDHTルーティングによって、そのコンテンツIDのルートノードに向かって転送されていくことになる。
次いで、制御部11は、上記レプリカ数問合せメッセージに対する応答として、上記ルートノードから上記コンテンツIDに対応するコンテンツデータのレプリカ数を示すレプリカ数情報を受信(取得)したか否かを判別し(ステップS114)、当該レプリカ数情報を受信した場合には(ステップS114:YES)、当該レプリカ数情報に示されるレプリカ数をコンテンツ選択リストにおけるコンテンツIDに対応付けて記入し(ステップS115)し、上記変数Iを“1”インクリメントしてステップS111に戻る。
なお、制御部11は、ステップS113にてレプリカ数問合せメッセージを送信する際に、上記I番目のコンテンツ情報に含まれるコンテンツIDを含むコンテンツ所在問合せ(検索)メッセージを、自己のルーティングテーブルにしたがって他のノードNn(つまり、当該コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNn)に対して送信(当該コンテンツIDのルートノードに向けて送出)するように構成しても良い。この場合、制御部11は、レプリカ数情報に加えて、上記コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDに対応するインデックス情報を受信することになる。
また、レプリカ数問合せメッセージの送出後、一定時間(例えば、タイマによりセットされた3分)以内に上記レプリカ数情報の返信がない場合には、ステップS115に移行してレプリカ数を「0」としてコンテンツIDに対応付けて記憶して、ステップS116に移行することが望ましい。
こうして、コンテンツ選択リストに記載された全てのコンテンツ情報についてレプリカ数問合せメッセージが送信され、例えば図6に示すように全てのコンテンツデータに対応するレプリカ数情報が、各ルートノードから取得された場合には、ステップS112にてI番目のコンテンツ情報がないと判別され(ステップS112:NO)、図7の処理に戻る。
次に、ステップS12では、制御部11は、上記コンテンツ選択リストに記載されたレプリカ数(レプリカ数情報に示されるレプリカ数)を比較し、比較されたレプリカ数が1つ以上であるコンテンツデータであって且つ最も少ないコンテンツデータのコンテンツ情報をコンテンツ選択リストの中から選択する。
次いで、制御部11は、当該選択したコンテンツ情報が複数あるか否かを判別する。そして、選択されたコンテンツ情報が複数ある(つまり、比較されたレプリカ数が同じコンテンツデータが複数ある)場合には(ステップS13:YES)、制御部11は、その中から何れか一つのコンテンツ情報を選択(例えば、ランダムに選択)し(ステップS14)、ステップS15に進む。
ここで、レプリカ数が同じコンテンツデータが複数ある場合、何れか一つのコンテンツ情報をランダムに選択する他にも、例えば、データ量が最も大きいコンテンツデータを優先して選択(例えばコンテンツ選択リストを参照して判断)すれば、より効果的である。或いは、例えば上記ステップS113にてコンテンツ所在問合せ(検索)メッセージが送信され既に各コンテンツデータのコンテンツIDに対応するインデックス情報が取得されている(つまり、コンテンツ保持ノードのIPアドレス等が分かっている)場合には、自ノードNnとの間のデータ伝送に要する時間が最も長いコンテンツ保持ノード(自ノードNnから各コンテンツ保持ノードに対してデータ(例えば、ピング(Ping))を送信し、返信されてきた時間を計測して判断)に保存されているコンテンツデータを優先して選択すれば、より効果的である。
これは、データ量が大きいコンテンツデータのレプリカをコンテンツ保持ノードからダウンロードする場合、及び自ノードNnとの間のデータ伝送に要する時間が長いコンテンツ保持ノードからレプリカをダウンロードする場合は、何れも、より長いダウンロード時間を要するので、最初に行う趣旨である。
一方、選択されたコンテンツ情報が複数ない(一つである)場合には(ステップS13:NO)、ステップS15に進む(ステップS12でコンテンツ情報が選択されまま)。
ステップS15では、制御部11は、コンテンツデータ取得処理を実行する。
当該コンテンツデータ取得処理において、制御部11は、図8(B)に示すように、上記ステップS12又はステップS14で選択されたコンテンツデータのコンテンツIDに対応するインデックス情報を既に取得しているか否かを判別し(ステップS151)、当該インデックス情報を取得している場合、例えば、上記ステップS113にてコンテンツ所在問合せ(検索)メッセージが送信され既に当該コンテンツデータのコンテンツIDに対応するインデックス情報を取得している場合には(ステップS151:YES)、ステップS153に進む。一方、当該インデックス情報を取得していない場合には(ステップS151:NO)、当該制御部11は、コンテンツ所在問合せ(検索)処理を行い(ステップS152)、ステップS153に進む。かかるコンテンツ所在問合せ(検索)処理においては、制御部11は、上記ステップS12又はステップS14で選択されたコンテンツ情報に含まれるコンテンツIDを含むコンテンツ所在問合せ(検索)メッセージを、自己のルーティングテーブルにしたがって他のノードNnに対して送信し、当該コンテンツIDのルートノードからインデックス情報を取得する。
ステップS153では、制御部11は、上記選択されたコンテンツデータのレプリカを保存しているコンテンツ保持ノードがあった(そのインデックス情報を取得できたか)か否かを判別し(ステップS153)、当該コンテンツ保持ノードがあった場合には(ステップS153:YES)、上記取得したインデックス情報に含まれるIPアドレス等に基づき、当該コンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信し(ステップS152)、これに応じてコンテンツ保持ノードから送信されてきたコンテンツデータのレプリカを受信する。かかるレプリカは、例えば複数のデータ単位に分割されて送信され、受信された当該データはバッファメモリ13に蓄積されていくことになる。
一方、当該コンテンツ保持ノードが無かった(何からの理由で発見できなかった)場合には(ステップS153:NO)、制御部11は、コンテンツ管理サーバに対してコンテンツ送信要求メッセージを送信し(ステップS155)、これに応じてコンテンツ管理サーバから送信されてきたコンテンツデータのレプリカを受信する。なお、コンテンツ保持ノードが無かった(発見できなかった)場合、当該コンテンツデータをコンテンツ管理サーバからすぐに取得せずに、コンテンツ取得リストにコンテンツ情報が記載されているコンテンツデータを全て取得した後に、再度コンテンツ所在問合せ(検索)処理を行うように構成しても良い。これは、時間が経過していれば、コンテンツ保持ノードを発見できる可能性があるからである。これにより、コンテンツ管理サーバの負荷を低減することができる。或いは、コンテンツ保持ノードを発見できなかったコンテンツデータを、一番最初にコンテンツ管理サーバから取得しても良い。
そして、コンテンツ保持ノードから送信されたコンテンツデータのレプリカは、通信部20を通じて受信されバッファメモリ13に蓄積される。そして、制御部11は、バッファメモリ13に所定量の上記レプリカのデータが蓄積されたとき、当該レプリカのデータをバッファメモリ13から記憶部12に記憶保存(例えば、HDの所定領域に書き込む)させる(ステップS156)。こうして、順次当該レプリカのデータがバッファメモリ13から記憶部12に送られ記憶保存されていく。
次いで、制御部11は、当該レプリカのデータが全て揃い、記憶保存された否かを判断し(ステップS157)、全て記憶保存されていない場合には(ステップS157:NO)、ステップ156に戻り当該処理を継続し、全て記憶保存された場合には(ステップS157:YES)、ステップS158に進む。なお、当該レプリカのデータ量が少ない場合、バッファメモリ13に全てのデータが揃ってから記憶部12に記憶保存されるように構成しても良い。
ステップS158では、制御部11は、当該保存されたレプリカに係るコンテンツデータのコンテンツIDを含む、上述したパブリッシュメッセージを、自己のルーティングテーブルにしたがって他のノードNn(つまり、当該コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNn)に対して送信(当該コンテンツIDのルートノードに向けて送出)し、図7の処理に戻る。これにより、当該パブリッシュメッセージは、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになり、該ルートノードは、受信したパブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報を登録する。
次に、制御部11は、取得、保存したコンテンツデータのレプリカに対応するコンテンツ情報をコンテンツ選択リストから削除し(ステップS16)、コンテンツ選択リストに未だコンテンツ情報が記載されているか否かを判別し(ステップS17)、記載されていない場合には(ステップS17:NO)、ステップS5に戻り、上記と同様の処理を行う。一方、コンテンツ選択リストにコンテンツ情報が記載されている場合には(ステップS17:YES)、ステップS12に戻り、上記と同様の処理を行う。
ここで、コンテンツ選択リストにコンテンツ情報が記載されている場合に(ステップS17:YES)、制御部11は、ステップS12ではなくステップS11に戻り、再度レプリカ数問合せ処理を実行して、コンテンツ選択リストにコンテンツ情報が記載されたコンテンツデータのレプリカ数を示すレプリカ数情報を夫々のルートノードから再取得するように構成しても良い。この構成の場合、ステップS15のコンテンツデータ取得処理にてレプリカが取得、保存される度に、当該レプリカ以外のレプリカの数(最新のレプリカ数)を示すレプリカ数情報が再取得されることになり、当該再取得されコンテンツ選択リストに記載されたレプリカ数が比較されることになる。これにより、例えば、レプリカのデータ量が大きいために、コンテンツデータ取得処理によるダウンロードに時間がかかってしまい(例えば、数十分)、次に取得すべきコンテンツデータのレプリカ数が変わってしまった場合でも、正確なレプリカ数を用いて上記ステップS12における比較判断を行うことができる。
また、コンテンツ選択リストにコンテンツ情報が記載されている場合に(ステップS17:YES)、制御部11は、例えば上記ステップS11におけるレプリカ数問合せ処理から所定時間(例えば、10分)経過したか否かを判断し、所定時間経過していない場合には、ステップS12に戻り、所定時間経過している場合には、ステップS11に戻り再度レプリカ数問合せ処理を実行するように構成しても良い。所定時間経過していなければ、次に取得すべきコンテンツデータのレプリカ数がそれほど変わることがないで、この場合には再度レプリカ数問合せ処理を行わないようにすることで、ネットワークやノードの負担を抑えることができる。
次に、上記ステップS18におけるメッセージ受信処理では、図9に示すように、制御部11は、受信されたメッセージがレプリカ数問合せメッセージであるか否かを判別し(ステップS181)、レプリカ数問合せメッセージでない場合には(ステップS181:NO)、ステップS185に進む。一方、レプリカ数問合せメッセージである場合には(ステップS181:YES)、自己(自ノードNn)がルートノードであるか否かを判別(つまり、自己のルーティングテーブルを参照して、当該レプリカ数問合せメッセージに含まれるコンテンツIDと最も近いノードIDが自分であるか否かを判別)し(ステップS182)、自己がルートノードでない(つまり、中継ノードである)場合には(ステップS182:NO)、ステップS183に進み、自己がルートノードである場合には(ステップS182:YES)、ステップS184に進む。
ステップS183では、制御部11は、受信されたレプリカ数問合せメッセージを、自己のルーティングテーブルにしたがって他のノードNn(つまり、レプリカ数問合せメッセージに含まれるコンテンツIDと最も近いノードIDを有するノードNn)に対して転送(当該コンテンツIDのルートノードに向けて送出)し、ステップS185に進む。
一方、ステップS184では、制御部11は、レプリカ数問合せメッセージに含まれるコンテンツIDに対応するコンテンツデータのレプリカ数を示すレプリカ数情報を、レプリカ数問合せメッセージの送信元のユーザノードに対して送信し、ステップS185に進む。
ステップS185では、制御部11は、受信されたメッセージがコンテンツ送信要求メッセージであるか否かを判別し、コンテンツ送信要求メッセージでない場合には(ステップS185:NO)、ステップS187に進む。一方、コンテンツ送信要求メッセージである場合には(ステップS185:YES)、当該コンテンツ送信要求メッセージを送信したユーザノードに対して、当該要求に係るコンテンツデータのレプリカを所定のデータ単位に分割して順次送信し(ステップS186)、送信完了後、ステップS187に進む。
ステップS187では、制御部11は、受信されたメッセージがパブリッシュメッセージであるか否かを判別し、パブリッシュメッセージでない場合には(ステップS187:NO)、ステップS191に進む。一方、パブリッシュメッセージである場合には(ステップS187:YES)、受信されたパブリッシュメッセージに含まれるIPアドレス等及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)する(ステップS188)。
次いで、制御部11は、ステップS182と同様、自己がルートノードであるか否かを判別し(ステップS189)、自己がルートノードでない(つまり、中継ノードである)場合には(ステップS189:NO)、ステップS190に進み、自己がルートノードである場合には(ステップS189:YES)、ステップS191に進む。
ステップS190では、制御部11は、受信されたパブリッシュメッセージを、自己のルーティングテーブルにしたがって他のノードNn(つまり、パブリッシュメッセージに含まれるコンテンツIDと最も近いノードIDを有するノードNn)に対して転送(当該コンテンツIDのルートノードに向けて送出)し、ステップS191に進む。
ステップS191におけるその他のメッセージ受信処理においては、上記受信されたメッセージがコンテンツ所在問合せ(検索)メッセージ等である場合の処理が実行され、図7の処理に戻る。
以上説明したように、上記実施形態によれば、各ノードNnは、自己が取得すべき、コンテンツ取得リストにおけるコンテンツデータ毎に、そのレプリカ数を示すレプリカ数情報を、これらのレプリカの所在を管理している夫々のルートノードからネットワークNWを介して取得し、取得した夫々のレプリカ数情報に示されるレプリカ数を比較し、比較されたレプリカ数が少ないコンテンツデータを優先して、そのレプリカを保存しているコンテンツ保持ノードから当該レプリカをネットワークNWを介して取得して記憶部12に記憶保存するようにしたので、数が少ないレプリカを早い段階で増やすことができ、したがって、当該レプリカを他のノードNnからより迅速に取得する(取得し易くする)ことができる。また、これにより、多くのコンテンツデータを管理しているコンテンツ管理サーバの負荷を低減させることができる。
また、各ノードNnにおける記憶部12の記憶容量が足りず、過去に保存されたコンテンツデータのレプリカが上書きされても、そのレプリカは早い段階で多くのノードNnに保存されているので、当該コンテンツデータのレプリカ数が減ることを抑えることができる。
なお、上記実施形態におけるコンテンツ分散保存システムSは、DHTを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。 ノードN2が保持するDHTを用いたルーティングテーブルの一例を示す図である。 DHTのID空間の一例を示す概念図である。 ユーザノードから送出されたコンテンツ所在問合せ(検索)メッセージの流れの一例を、DHTのID空間にて示した概念図である。 ノードNnの概要構成例を示す図である。 ユーザノードが夫々のルートノードからレプリカ数情報を取得する様子の一例を示す図である。 ノードNnの制御部11におけるメイン処理を示すフローチャートである。 (A)は、図7におけるレプリカ数問合せ処理の詳細を示すフローチャートであり、(B)は、図7におけるコンテンツデータ取得処理の詳細を示すフローチャートである。 図7におけるメッセージ受信処理の詳細を示すフローチャートである。
符号の説明
8 ネットワーク
9 オーバーレイネットワーク
11 制御部
12 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
20 通信部
21 入力部
22 バス
Nn ノード
S コンテンツ分散保存システム

Claims (10)

  1. ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、内容の異なる複数のコンテンツデータの複製データが複数のノード装置に分散保存され、当該分散保存されている複製データの所在がコンテンツデータ毎に管理されるコンテンツ分散保存システムにおける前記ノード装置であって、
    自ノード装置が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得する複製数取得手段と、
    前記取得された夫々の複製数情報に示される前記複製データの数を比較する複製数比較手段と、
    前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存する複製データ取得手段と、
    を備えることを特徴とするノード装置。
  2. 請求項1に記載のノード装置において、
    前記複製数取得手段は、前記複製データ取得手段により前記複製データが取得される度に、当該複製データ以外の前記複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から再取得し、前記複製数比較手段は、当該取得された夫々の複製数情報に示される前記複製データの数を再比較し、前記複製データ取得手段は、前記再比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを取得して保存することを特徴とするノード装置。
  3. 請求項1に記載のノード装置において、
    前記複製数取得手段は、所定時間が経過する度に、前記複製データ取得手段により取得された前記複製データ以外の前記複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から再取得し、前記複製数比較手段は、当該取得された夫々の複製数情報に示される前記複製データの数を再比較し、前記複製データ取得手段は、前記再比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを取得して保存することを特徴とするノード装置。
  4. 請求項1乃至3の何れか一項に記載のノード装置において、
    自ノード装置が取得すべき前記複数のコンテンツデータのうち、当該数より少ない複数のコンテンツデータを選択するコンテンツ選択手段を更に備え、
    前記複製数取得手段は、前記選択された複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から取得し、前記複製数比較手段は、当該取得された夫々の複製数情報に示される前記複製データの数を比較することを特徴とするノード装置。
  5. 請求項4に記載のノード装置において、
    夫々の前記コンテンツデータ及び夫々の前記ノード装置には、所定桁数からなる固有の識別情報が割り当てられており、
    前記コンテンツ選択手段は、自ノード装置の識別情報の所定桁目と一致桁が少ない識別情報が割り当てられたコンテンツデータを選択することを特徴とするノード装置。
  6. 請求項1乃至5の何れか一項に記載のノード装置において、
    前記複製データ取得手段は、前記比較された前記複製データの数が同じコンテンツデータが複数ある場合には、それらのコンテンツデータのうち、データ量が最も大きいコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを取得して保存することを特徴とするノード装置。
  7. 請求項1乃至5の何れか一項に記載のノード装置において、
    前記複製データ取得手段は、前記比較された前記複製データの数が同じコンテンツデータが複数ある場合には、それらのコンテンツデータのうち、自ノード装置との間のデータ伝送に要する時間が最も長い他のノード装置に保存されているコンテンツデータを優先して、その複製データを保存している当該他のノード装置から取得して保存することを特徴とするノード装置。
  8. コンピュータを、請求項1乃至7の何れか一項に記載のノード装置として機能させることを特徴とするノード処理プログラム。
  9. ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、内容の異なる複数のコンテンツデータの複製データが複数のノード装置に分散保存され、当該分散保存されている複製データの所在がコンテンツデータ毎に管理されるコンテンツ分散保存システムであって、
    前記ノード装置は、
    自ノード装置が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得する複製数取得手段と、
    前記取得された夫々の複製数情報に示される前記複製データの数を比較する複製数比較手段と、
    前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存する複製データ取得手段と、
    を備えることを特徴とするコンテンツ分散保存システム。
  10. ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、内容の異なる複数のコンテンツデータの複製データが複数のノード装置に分散保存され、当該分散保存されている複製データの所在がコンテンツデータ毎に管理されるコンテンツ分散保存システムにおける複製データ取得方法であって、
    前記ノード装置が、
    自ノード装置が取得すべき、内容の異なる複数のコンテンツデータ毎に、その複製データの数を示す複製数情報を、当該複製データの所在を管理している装置から前記ネットワークを介して取得する工程と、
    前記取得された夫々の複製数情報に示される前記複製データの数を比較する工程と、
    前記比較された前記複製データの数が少ないコンテンツデータを優先して、その複製データを保存している他のノード装置から当該複製データを前記ネットワークを介して取得して保存する工程と、
    を備えることを特徴とする複製データ取得方法。
JP2007075031A 2007-03-22 2007-03-22 コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム Pending JP2008234445A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007075031A JP2008234445A (ja) 2007-03-22 2007-03-22 コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム
US12/073,343 US20080235321A1 (en) 2007-03-22 2008-03-04 Distributed contents storing system, copied data acquiring method, node device, and program processed in node

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007075031A JP2008234445A (ja) 2007-03-22 2007-03-22 コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム

Publications (1)

Publication Number Publication Date
JP2008234445A true JP2008234445A (ja) 2008-10-02

Family

ID=39775813

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007075031A Pending JP2008234445A (ja) 2007-03-22 2007-03-22 コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム

Country Status (2)

Country Link
US (1) US20080235321A1 (ja)
JP (1) JP2008234445A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010231690A (ja) * 2009-03-30 2010-10-14 Nec Corp ストレージシステム
JP2010283812A (ja) * 2009-05-15 2010-12-16 Thomson Licensing 電子コンテンツを保存し、配信する方法およびシステム
JP2011158989A (ja) * 2010-01-29 2011-08-18 Brother Industries Ltd 配信システム、情報処理装置、情報処理プログラム、及びコンテンツ取得方法
JP2012050018A (ja) * 2010-08-30 2012-03-08 Brother Ind Ltd 配信システム、情報処理装置、情報処理プログラム、及びコンテンツ投入方法
WO2012140957A1 (ja) * 2011-04-13 2012-10-18 株式会社日立製作所 情報記憶システム及びそのデータ複製方法
JP2013037456A (ja) * 2011-08-05 2013-02-21 Nippon Telegr & Teleph Corp <Ntt> 条件検索データ保存方法、条件検索データベースクラスタシステム、ディスパッチャ、およびプログラム
JP2013054521A (ja) * 2011-09-02 2013-03-21 Fujitsu Ltd 分散制御プログラム、分散制御方法、および情報処理装置
JP2013130960A (ja) * 2011-12-20 2013-07-04 Fujitsu Ltd 情報処理装置、データ制御方法およびデータ制御プログラム

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4655986B2 (ja) * 2006-04-12 2011-03-23 ブラザー工業株式会社 ノード装置、記憶制御プログラム及び情報記憶方法
US8335776B2 (en) * 2008-07-02 2012-12-18 Commvault Systems, Inc. Distributed indexing system for data storage
SE533007C2 (sv) 2008-10-24 2010-06-08 Ilt Productions Ab Distribuerad datalagring
JP5458629B2 (ja) * 2009-03-31 2014-04-02 ブラザー工業株式会社 ノード装置、ノード処理プログラム及び検索方法
EP2387200B1 (en) 2010-04-23 2014-02-12 Compuverde AB Distributed data storage
US8656253B2 (en) * 2011-06-06 2014-02-18 Cleversafe, Inc. Storing portions of data in a dispersed storage network
US9626378B2 (en) 2011-09-02 2017-04-18 Compuverde Ab Method for handling requests in a storage system and a storage node for a storage system
US8769138B2 (en) 2011-09-02 2014-07-01 Compuverde Ab Method for data retrieval from a distributed data storage system
US8650365B2 (en) 2011-09-02 2014-02-11 Compuverde Ab Method and device for maintaining data in a data storage system comprising a plurality of data storage nodes
US8645978B2 (en) 2011-09-02 2014-02-04 Compuverde Ab Method for data maintenance
US9021053B2 (en) 2011-09-02 2015-04-28 Compuverde Ab Method and device for writing data to a data storage system comprising a plurality of data storage nodes
US8997124B2 (en) 2011-09-02 2015-03-31 Compuverde Ab Method for updating data in a distributed data storage system
CN110058790B (zh) * 2018-01-18 2022-05-13 伊姆西Ip控股有限责任公司 用于存储数据的方法、设备和计算机程序产品

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003099337A (ja) * 2001-09-20 2003-04-04 Fujitsu Ltd データ共有装置
JP2006197400A (ja) * 2005-01-14 2006-07-27 Brother Ind Ltd 情報配信システム、情報更新プログラム、及び情報更新方法等

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4620276A (en) * 1983-06-02 1986-10-28 International Business Machines Corporation Method and apparatus for asynchronous processing of dynamic replication messages
US6401120B1 (en) * 1999-03-26 2002-06-04 Microsoft Corporation Method and system for consistent cluster operational data in a server cluster using a quorum of replicas
US20020055972A1 (en) * 2000-05-08 2002-05-09 Weinman Joseph Bernard Dynamic content distribution and data continuity architecture
CA2808275C (en) * 2000-06-22 2016-11-15 Microsoft Corporation Distributed computing services platform
US20040148279A1 (en) * 2001-06-20 2004-07-29 Nir Peleg Scalable distributed hierarchical cache
US7092956B2 (en) * 2001-11-02 2006-08-15 General Electric Capital Corporation Deduplication system
US7600266B2 (en) * 2003-06-30 2009-10-06 Gateway, Inc. Optical jukebox with copy protection caching and methods of caching copy protected data
US7536291B1 (en) * 2004-11-08 2009-05-19 Commvault Systems, Inc. System and method to support simulated storage operations
WO2006075424A1 (ja) * 2005-01-13 2006-07-20 Brother Kogyo Kabushiki Kaisha 情報配信システム、配信要求プログラム、転送プログラム、配信プログラム等
JP2007122531A (ja) * 2005-10-31 2007-05-17 Hitachi Ltd 負荷分散システム及び方法
US7716180B2 (en) * 2005-12-29 2010-05-11 Amazon Technologies, Inc. Distributed storage system with web services client interface
US8949533B2 (en) * 2010-02-05 2015-02-03 Telefonaktiebolaget L M Ericsson (Publ) Method and node entity for enhancing content delivery network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003099337A (ja) * 2001-09-20 2003-04-04 Fujitsu Ltd データ共有装置
JP2006197400A (ja) * 2005-01-14 2006-07-27 Brother Ind Ltd 情報配信システム、情報更新プログラム、及び情報更新方法等

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010231690A (ja) * 2009-03-30 2010-10-14 Nec Corp ストレージシステム
WO2010116434A1 (ja) * 2009-03-30 2010-10-14 日本電気株式会社 ストレージシステム
JP2010283812A (ja) * 2009-05-15 2010-12-16 Thomson Licensing 電子コンテンツを保存し、配信する方法およびシステム
JP2011158989A (ja) * 2010-01-29 2011-08-18 Brother Industries Ltd 配信システム、情報処理装置、情報処理プログラム、及びコンテンツ取得方法
JP2012050018A (ja) * 2010-08-30 2012-03-08 Brother Ind Ltd 配信システム、情報処理装置、情報処理プログラム、及びコンテンツ投入方法
WO2012140957A1 (ja) * 2011-04-13 2012-10-18 株式会社日立製作所 情報記憶システム及びそのデータ複製方法
JP2012221419A (ja) * 2011-04-13 2012-11-12 Hitachi Ltd 情報記憶システム及びそのデータ複製方法
US9305072B2 (en) 2011-04-13 2016-04-05 Hitachi, Ltd. Information storage system and data replication method thereof
JP2013037456A (ja) * 2011-08-05 2013-02-21 Nippon Telegr & Teleph Corp <Ntt> 条件検索データ保存方法、条件検索データベースクラスタシステム、ディスパッチャ、およびプログラム
JP2013054521A (ja) * 2011-09-02 2013-03-21 Fujitsu Ltd 分散制御プログラム、分散制御方法、および情報処理装置
US9424325B2 (en) 2011-09-02 2016-08-23 Fujitsu Limited Recording medium, distribution controlling method, and information processing device
JP2013130960A (ja) * 2011-12-20 2013-07-04 Fujitsu Ltd 情報処理装置、データ制御方法およびデータ制御プログラム

Also Published As

Publication number Publication date
US20080235321A1 (en) 2008-09-25

Similar Documents

Publication Publication Date Title
JP2008234445A (ja) コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム
US20100023593A1 (en) Distributed storage system, node device, recording medium in which node processing program is recorded, and address information change notifying method
JP2007148545A (ja) 情報配信システム、情報配信方法、ノード装置、及びノード処理プログラム
JP2006191489A (ja) ノード装置、ネットワーク参加処理プログラム、及びネットワーク参加処理方法等
JP2007200203A (ja) 情報配信システム、再登録メッセージ送信方法、ノード装置、及びノード処理プログラム
JP4702314B2 (ja) コンテンツ分散保存システム、ノード装置、ノード処理プログラム、及びコンテンツデータ取得方法
WO2007116630A1 (ja) ノード装置、記憶制御プログラムを記録した記録媒体及び情報記憶方法
US8332463B2 (en) Distributed storage system, connection information notifying method, and recording medium in which distributed storage program is recorded
JP2010113573A (ja) コンテンツ分散保存システム、コンテンツ保存方法、サーバ装置、ノード装置、サーバ処理プログラム、及びノード処理プログラム
JP2011233021A (ja) 情報通信システム、ノード装置、情報処理方法、及び情報処理プログラム
JP5532649B2 (ja) ノード装置、ノード処理プログラム及びコンテンツ保存方法
US8312068B2 (en) Node device, information communication system, method for managing content data, and computer readable medium
JP2008236536A (ja) 通信システム、ノード装置、ノード処理プログラム、及びサーバ機能制御方法
JP2010108082A (ja) コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム
JP5458629B2 (ja) ノード装置、ノード処理プログラム及び検索方法
JP2009232272A (ja) コンテンツ分散保存システム、コンテンツ再生方法、ノード装置、管理装置、ノード処理プログラム、及び管理処理プログラム
JP5157770B2 (ja) ノード装置、プログラム及び保存指示方法
JP5007624B2 (ja) コンテンツ分散保存システム、コンテンツデータ取得方法、ノード装置、及びノード処理プログラム
JP5412924B2 (ja) ノード装置、ノード処理プログラム及びコンテンツデータ削除方法
JP2011008657A (ja) コンテンツ配信システム、ノード装置、コンテンツ配信方法及びノードプログラム
JP2009080546A (ja) コンテンツ分散保存システム、複製データ保存数集計方法、ノード装置、及びノード処理プログラム
JP2010238160A (ja) ノード装置、ノード処理プログラム及びコンテンツデータ保存方法
JP2009187056A (ja) コンテンツ分散保存システム、評価値加算方法、サーバ装置、ノード装置、及びノード処理プログラム
JP2009020669A (ja) コンテンツ分散保存システム、コンテンツデータ保存方法、稼働率管理装置、及びノード装置等
JP5347876B2 (ja) 情報通信システム、ノード装置、コンテンツ取得方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090402

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110614

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111101