(57)【要約】【課題】本発明は、以上の点等に鑑みてなされたものであり、ユーザに動作音を意識させないようにすることが可能なコンテンツ分散保存システム、ノード装置、ノード処理プログラム、及びサーバ機能制御方法を提供する。【解決手段】本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置であって、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能と、前記周囲に人が存在するか否かを判断する存在判断手段と、前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、を備える。【選択図】図６
2008234444.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置であって、
他のノード装置のために稼動するサーバ機能と、
前記周囲に人が存在するか否かを判断する存在判断手段と、
前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、
を備えることを特徴とするノード装置。
【請求項２】
請求項１に記載のノード装置において、
前記存在判断手段は、周囲に存在する人を感知する人感センサからの情報を取得し、当該情報に基づいて、前記周囲に人が存在するか否かを判断することを特徴とするノード装置。
【請求項３】
請求項１又は２に記載のノード装置において、
周囲の音を検知する音センサからの情報を取得し、当該情報に基づいて、前記周囲の音が規定値以上であるか否かを判断する音判断手段と、
前記制御手段は、前記周囲の音が規定値以上である場合には、前記周囲に人が存在すると判断されている間であっても、前記サーバ機能を継続させることを特徴とするノード装置。
【請求項４】
請求項１乃至３の何れか一項に記載のノード装置において、
電源オフ指示を受け付ける電源オフ指示受付手段を更に備え、
前記存在判断手段は、前記電源オフ指示が受け付けられた後に、前記周囲に人が存在するか否かを判断することを特徴とするノード装置。
【請求項５】
請求項１乃至４の何れか一項に記載のノード装置において、
前記制御手段は、前記サーバ機能の停止中に、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合には、当該提供要求に係るコンテンツデータを提供できないことを示す情報を当該他のノード装置に対して送信することを特徴とするノード装置。
【請求項６】
請求項１乃至５の何れか一項に記載のノード装置において、
前記サーバ機能には、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信する機能が含まれることを特徴とするノード装置。
【請求項７】
コンピュータを、請求項１乃至６の何れか一項に記載のノード装置として機能させることを特徴とするノード処理プログラム。
【請求項８】
ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムであって、
前記ノード装置は、
前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能と、
前記周囲に人が存在するか否かを判断する存在判断手段と、
前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、
を備えることを特徴とするコンテンツ分散保存システム。
【請求項９】
ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置のサーバ機能制御方法であって、
前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能を有する前記ノード装置が、
前記周囲に人が存在するか否かを判断する工程と、
前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる工程と、
を備えることを特徴とするサーバ機能制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））型の通信システムの技術分野に関する。
【背景技術】
【０００２】
この種のピアツーピア型の通信システムにおいて、コンテンツデータのレプリカ（複製データ）を複数のノード装置に分散配置（分散保存）させておくコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたコンテンツデータのレプリカの所在は、例えば特許文献１に開示されるような分散ハッシュテーブル（以下、ＤＨＴ（Distributed Hash Table）という）を利用して効率良く検索可能になっている。当該ＤＨＴは、各ノード装置に記憶されており、当該ＤＨＴには、各種メッセージの転送先となるべき複数のノード装置を示すノード情報（例えば、ＩＰアドレス及びポート番号を含む）が登録されている。
【０００３】
そして、コンテンツ分散保存システムに参加しているノード装置は、所望のコンテンツデータの取得を望む場合、当該コンテンツデータのレプリカの所在を検索（発見）するためのメッセージ（クエリ）を他のノード装置に送出することにより、当該メッセージは、上記ＤＨＴにしたがって、中継のノード装置により当該コンテンツデータのレプリカの所在の管理元のノード装置に向かって転送され、最終的に当該メッセージが辿り着く上記管理元のノード装置から上記所在を示す情報を取得することになる。これにより、当該メッセージを送出したノード装置は、上記検索に係るコンテンツデータのレプリカを保存しているノード装置に対して、当該コンテンツデータのレプリカを要求し、当該コンテンツデータのレプリカの提供を受けることができる。
【特許文献１】特開２００６−１９７４００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、上記検索に係るコンテンツデータのレプリカを保存しているノード装置が、当該レプリカの要求に応じて、当該レプリカを提供する配信動作は、通常、当該レプリカを提供するノード装置のユーザには特に知らされずに行われる。
【０００５】
しかしながら、例えば、ユーザがノード装置を操作してコンテンツの再生動作させておらず、周囲が静かな状況（特に、夜間）において、上記コンテンツデータのレプリカを提供する配信動作が行われると、当該配信動作音（特に、ハードディスクドライブの動作音）が特に目立つようになり、当該ユーザにとっては好ましくない。
【０００６】
本発明は、以上の点等に鑑みてなされたものであり、ユーザに動作音を意識させないようにすることが可能なコンテンツ分散保存システム、ノード装置、ノード処理プログラム、及びサーバ機能制御方法を提供することを課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置であって、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能と、前記周囲に人が存在するか否かを判断する存在判断手段と、前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、を備えることを特徴とする。
【０００８】
この発明によれば、周囲に人が存在すると判断されている間、上記サーバ機能を停止させるように構成したので、ユーザに動作音を意識させないようにすることができる。
【０００９】
請求項２に記載の発明は、請求項１に記載のノード装置において、前記存在判断手段は、周囲に存在する人を感知する人感センサからの情報を取得し、当該情報に基づいて、前記周囲に人が存在するか否かを判断することを特徴とする。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載のノード装置において、周囲の音を検知する音センサからの情報を取得し、当該情報に基づいて、前記周囲の音が規定値以上であるか否かを判断する音判断手段と、前記制御手段は、前記周囲の音が規定値以上である場合には、前記周囲に人が存在すると判断されている間であっても、前記サーバ機能を継続させることを特徴とする。
【００１１】
この発明によれば、周囲の音が規定値以上である場合には、ユーザは動作音を気にならないと考えられるので、周囲に人が存在すると判断されている間であっても、上記サーバ機能を継続させることで、他のノード装置からの要求に応じることができる。
【００１２】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載のノード装置において、電源オフ指示を受け付ける電源オフ指示受付手段を更に備え、前記存在判断手段は、前記電源オフ指示が受け付けられた後に、前記周囲に人が存在するか否かを判断することを特徴とする。
【００１３】
請求項５に記載の発明は、請求項１乃至４の何れか一項に記載のノード装置において、前記制御手段は、前記サーバ機能の停止中に、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合には、当該提供要求に係るコンテンツデータを提供できないことを示す情報を当該他のノード装置に対して送信することを特徴とする。
【００１４】
請求項６に記載の発明は、請求項１乃至５の何れか一項に記載のノード装置において、前記サーバ機能には、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信する機能が含まれることを特徴とする。
【００１５】
請求項７に記載のノード処理プログラムの発明は、コンピュータを、請求項１乃至６の何れか一項に記載のノード装置として機能させることを特徴とする。
【００１６】
請求項８に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムであって、前記ノード装置は、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能と、前記周囲に人が存在するか否かを判断する存在判断手段と、前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる制御手段と、を備えることを特徴とする。
【００１７】
請求項９に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、複数のコンテンツデータが前記複数のノード装置に分散保存されたコンテンツ分散保存システムにおける前記ノード装置のサーバ機能制御方法であって、前記ネットワークを介して他のノード装置からコンテンツデータの提供要求を示す提供要求情報を受信した場合に、当該提供要求に係るコンテンツデータを当該他のノード装置に対して送信するサーバ機能を有する前記ノード装置が、前記周囲に人が存在するか否かを判断する工程と、前記周囲に人が存在すると判断されている間、前記サーバ機能を停止させる工程と、を備えることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、周囲に人が存在すると判断されている間、上記サーバ機能を停止させるように構成したので、ユーザに動作音を意識させないようにすることができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。
【００２０】
［１．コンテンツ分散保存システムの構成等］
始めに、図１等を参照して、本実施形態に係るコンテンツ分散保存システムの概要構成等について説明する。
【００２１】
図１は、本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【００２２】
図１の下部枠１０１内に示すように、ＩＸ（Internet eＸchange）３、ＩＳＰ（Internet Service Provider）４ａ,４ｂ、ＤＳＬ（Digital Subscriber Line）回線事業者（の装置）５ａ,５ｂ、ＦＴＴＨ（Fiber To The Home）回線事業者（の装置）６、及び通信回線（例えば、電話回線や光ケーブル等）７等によって、インターネット等のネットワーク（現実世界の通信ネットワークであり、通信手段の一例）８が構築されている。なお、図１の例におけるネットワーク（通信ネットワーク）８には、データ（パケット）を転送するためのルータが適宜挿入されている。
【００２３】
このようなネットワーク８には、複数のノード装置（以下、「ノード」という）Ｎｎ（ｎ＝１，２，３・・・の何れか）が接続されている。また、各ノードＮｎには、固有の製造番号およびＩＰ（Internet Protocol）アドレスが割り当てられている。このような製造番号およびＩＰアドレスは、複数のノード間で重複しないものである。
【００２４】
そして、本実施形態に係るコンテンツ分散保存システムＳは、これらのノードＮｎのうち、図１の上部枠１００内に示すように、何れか複数のノードＮｎの参加により形成されるピアツーピア方式のネットワークシステムとなっている。なお、図１の上部枠１００内に示すネットワーク９は、既存のネットワーク８を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク９（論理的なネットワーク）である。かかるオーバーレイネットワーク９は、特定のアルゴリズム、例えば、ＤＨＴ（Distributed Hash Table）を利用したアルゴリズムにより実現される。
【００２５】
そして、コンテンツ分散保存システムＳ（言い換えれば、オーバーレイネットワーク９）に参加している各ノードＮｎには、所定桁数からなる固有の識別情報であるノードＩＤが割り当てられており、当該ノードＩＤは、例えば、各ノードＮｎに個別に割り当てられたＩＰアドレス或いは製造番号を共通のハッシュ関数（例えば、ＳＨＡ−１等）によりハッシュ化した値（例えば、ｂｉｔ長が１６０ｂｉｔ）であり、図３に示すような一つのＩＤ空間に偏りなく分散して配置されることになる。
【００２６】
なお、コンテンツ分散保存システムＳへの参加は、参加していないノードＮｎ（例えば、ノードＮ８）が、参加している任意のノードＮｎ（例えば、当該システムＳに常時参加しているコンタクトノード）に対して参加要求を示す参加メッセージを送信することによって行われる。
【００２７】
上記のように共通のハッシュ関数により求められた（ハッシュ化された）ノードＩＤは、当該ＩＰアドレス或いは製造番号が異なれば、同じ値になる確率が極めて低いものである。また、このノードＩＤは、ノードの最大運用台数を収容できるだけのｂｉｔ数を持たせる必要がある。例えば、１２８ｂｉｔの番号とすれば、2＾128＝340×10＾36台のノードを運用できる。なお、ハッシュ関数については公知であるので詳しい説明を省略する。
【００２８】
また、各ノードＮｎは、夫々、ＤＨＴを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムＳ上における各種メッセージの転送先を規定しており、具体的には、ＩＤ空間内で適度に離れたノードＮｎのノードＩＤ、ＩＰアドレス及びポート番号を含むノード情報が複数登録されている。
【００２９】
コンテンツ分散保存システムＳに参加している１台のノードＮｎは、該システムＳに参加している全てのノードＮｎのうち、必要最低限のノードＮｎのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない（記憶していない）ノードＮｎについては、各ノードＮｎ間で互いに各種メッセージを転送し合って届けてもらうようになっている。
【００３０】
ここで、図２及び図３を参照して、ＤＨＴを用いたルーティングテーブルについて詳しく説明する。
【００３１】
図２は、ノードＮ２が保持するＤＨＴを用いたルーティングテーブルの一例を示す図であり、図３は、ＤＨＴのＩＤ空間の一例を示す概念図である。
【００３２】
なお、図２及び図３の例においては、説明の便宜上、ノードＩＤのｂｉｔ長を２ｂｉｔ×３桁＝６ｂｉｔとし、各桁を４進数（０〜３の整数）で表している（実際には、もっと長いｂｉｔ長を用い、各桁も例えば４ｂｉｔに区切って０〜ｆの１６進数で表現する）。
【００３３】
図２の例において、ＤＨＴを用いたルーティングテーブルは、レベル１〜レベル３のテーブルからなり（複数のレベルに区分されており）、各レベルのテーブルエントリーには、エリア毎に、ノード情報として、ノードＩＤとこれに対応するノードＮｎのＩＰアドレス及びポート番号が対応付けられて登録されている。各レベルのテーブルにおける各エリアは、ＤＨＴのノードＩＤ空間を分割することにより得られるエリアである。例えば、図３に示すように、レベル１では、ＤＨＴのＩＤ空間全体が４分割され、“０００”〜“０３３”のノードＩＤが存在するエリアを０ＸＸのエリア、“１００”〜“１３３” のノードＩＤが存在するエリアを１ＸＸのエリア、“２００”〜“２３３” のノードＩＤが存在するエリアを２ＸＸのエリア、“３００”〜“３３３” のノードＩＤが存在するエリアを３ＸＸのエリアとする。また、レベル２では、レベル１のエリア（つまり、０ＸＸ〜３ＸＸのエリア）が更に４分割、例えば１ＸＸのエリアが４分割され、“１００”〜“１０３” のノードＩＤが存在するエリアを１０Ｘのエリア、“１１０”〜“１１３” のノードＩＤが存在するエリアを１１Ｘのエリア、“１２０”〜“１２３” のノードＩＤが存在するエリアを１２Ｘのエリア、“１３０”〜“１３３” のノードＩＤが存在するエリアを１３Ｘのエリアとする。
【００３４】
そして、例えば、ノードＮ２のノードＩＤが“１２２”とすると、図２に示すように、かかるノードＮ２のレベル１における１ＸＸのエリア（自己（つまり、自ノード）が存在するエリア）のテーブルには、自己のノードＩＤ及びＩＰアドレス（ＩＰアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い）等が登録され、自己が存在しないエリア（つまり、０ＸＸのエリア、２ＸＸのエリア、及び３ＸＸのエリア）には、夫々、他の任意のノードＮｎのノードＩＤ及びＩＰアドレス等が登録されている。
【００３５】
また、かかるノードＮ２のレベル２における１２Ｘのエリア（自己が存在するエリア）のテーブルには、図２に示すように、自己のノードＩＤ及びＩＰアドレス（ＩＰアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い）等が登録され、自己が存在しないエリア（つまり、１０Ｘのエリア、１１Ｘのエリア、及び１３Ｘのエリア）等には、夫々、他の任意のノードＮｎのノードＩＤ及びＩＰアドレス等が登録されている。
【００３６】
更に、かかるノードＮ２のレベル３には、図２に示すように、ノードＩＤが“１２０”〜“１２２”のノードＩＤ及びＩＰアドレス（ＩＰアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い）等が登録されている。
【００３７】
なお、図２及び図３の例では、ノードＩＤのｂｉｔ長を３桁×２ｂｉｔとしたので、レベル１〜３の３レベル分のテーブルで網羅できるが、ノードＩＤのｂｉｔ長が増せば、その分のテーブルが必要となる（例えば、ノードＩＤのｂｉｔ長を１６桁×４ｂｉｔとした場合、１６レベル分のテーブルが必要となる）。
【００３８】
このように、本実施形態におけるＤＨＴを用いたルーティングテーブルでは、レベルが上がるほど、エリアが狭まっていくようになっている。
【００３９】
また、このようなＤＨＴは、例えば、未参加のノードがコンテンツ分散保存システムＳに参加する際に与えられることになる。
【００４０】
ところで、コンテンツ分散保存システムＳにおいては、内容の異なる様々なコンテンツ（例えば、映画や音楽等）データの夫々の複製データ（以下、「レプリカ」という）が複数のノードＮｎに分散して保存（格納）されている。
【００４１】
例えば、ノードＮ１及びノードＮ５には、タイトルがＸＸＸの映画のコンテンツデータのレプリカが保存されており、一方、ノードＮ３には、タイトルがＹＹＹの映画のコンテンツデータのレプリカが保存されるというように、複数のノードＮｎ（以下、「コンテンツ保持ノード」という）に分散されて保存される。
【００４２】
また、これらのコンテンツデータのレプリカには、夫々、コンテンツ名（タイトル）及びコンテンツＩＤ（コンテンツ毎に固有の識別情報）等の情報が付加されている。このコンテンツＩＤは、例えば、コンテンツ名＋任意の数値（或いは、当該コンテンツデータの先頭数バイトでも良い）が、上記ノードＩＤを得るときと共通のハッシュ関数によりハッシュ化されて生成される（ノードＩＤと同一のＩＤ空間に配置）。或いは、システム管理者が、コンテンツ毎に一意のＩＤ値（ノードＩＤと同一ビット長）を付与しても良い。この場合は、コンテンツ名とそのコンテンツＩＤの対応が書かれたコンテンツカタログ情報が、全ノードＮｎに配布される。
【００４３】
また、このように分散保存されているコンテンツデータのレプリカの所在、つまり、当該コンテンツデータのレプリカを保存したノードＮｎのＩＰアドレス等と当該コンテンツデータに対応するコンテンツＩＤ等の組が含まれるインデックス情報が、当該コンテンツデータのレプリカの所在の管理元であるノードＮｎ（以下、「ルートノード」、又は「コンテンツ（コンテンツＩＤ）のルートノード」という）等により記憶（インデックスキャッシュに記憶）、管理されるようになっている。
【００４４】
例えば、タイトルがＸＸＸの映画のコンテンツデータのレプリカについてのインデックス情報は、そのコンテンツ（コンテンツＩＤ）のルートノードであるノードＮ４により管理され、タイトルがＹＹＹの映画のコンテンツデータのレプリカについてのインデックス情報は、そのコンテンツ（コンテンツＩＤ）のルートノードであるノードＮ６により管理される（つまり、レプリカの所在が夫々のコンテンツデータ毎に管理される）。
【００４５】
すなわち、コンテンツ毎にルートノードが分けられるので負荷分散が図らており、しかも、同一（内容が同一）のコンテンツデータ（コンテンツＩＤが同一）のレプリカが、夫々、複数のコンテンツ保持ノードに保存されている場合であっても、かかるコンテンツデータのインデックス情報は、一つのルートノードで管理することができる。このため、各ルートノードは、コンテンツ分散保存システムＳにおいて自己がその所在を管理するコンテンツデータのレプリカの数（言い換えれば、当該レプリカを保存しているコンテンツ保持ノードの数）を認識している。
【００４６】
また、このようなルートノードは、例えば、コンテンツＩＤと最も近い（例えば、上位桁がより多く一致する）ノードＩＤを有するノードＮｎであるように定められる。
【００４７】
そして、あるノードＮｎのユーザが、所望するコンテンツデータを取得したい場合、当該コンテンツデータの取得を望むノードＮｎ（以下、「ユーザノード」という）は、当該ユーザにより選択（例えば、全てのノードＮｎに配信されているコンテンツカタログ情報（コンテンツ名とコンテンツＩＤ等が記述されており、例えばコンテンツカタログ管理サーバ（図示せず）にて管理される）から選択）されたコンテンツデータ（例えば、コンテンツ名が選択される）のコンテンツＩＤ及び自己のＩＰアドレス等を含むコンテンツ所在問合せ（検索）メッセージ（クエリ）を生成し、これを自己のＤＨＴを用いたルーティングテーブルにしたがって他のノードＮｎに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ（検索）メッセージを、ルートノードに向けて（ルートノード宛てに）送出する。これにより、コンテンツ所在問合せ（検索）メッセージは、コンテンツＩＤをキーとするＤＨＴルーティングによって最終的にルートノードに到着することになる。
【００４８】
ここで、ユーザノードは、当該ユーザによりコンテンツカタログ情報からコンテンツ名等が選択された場合だけでなく、例えばシステム管理者等のコンテンツ管理サーバからコンテンツ投入要求（保存要求）メッセージ（特定の新規コンテンツデータのコンテンツ名及びコンテンツＩＤ等を含む）を受信した場合にも、コンテンツ所在問合せ（検索）メッセージ（クエリ）をルートノードに向けて送出する。このコンテンツ投入要求（保存要求）メッセージ（事前プッシュメッセージともいう）は、例えば新規コンテンツデータ（コンテンツカタログ情報により公開される前のコンテンツデータ）のレプリカを、コンテンツ分散保存システムＳにおいて所定数確保（保存）させるために、任意の複数のノードＮｎに配信されるものである。そして、所定数以上のレプリカがコンテンツ分散保存システムＳにおいて保存されると、当該新規コンテンツデータのコンテンツ名とコンテンツＩＤ等が記述されたコンテンツカタログ情報が各ノードＮｎに配信（これにより公開）されることになる。或いは、新規に投入するべき新規コンテンツデータの属性情報が記述されたコンテンツカタログ情報を全ノードＮｎに予め配布しておくが、当該コンテンツカタログ情報には、新規コンテンツデータの公開日が設定されており、公開日までは各ノードＮｎのユーザに公開されない（利用できない）ようにしておき、公開日が過ぎると、上記投入要求により事前に新規コンテンツデータを保存した各ノードＮｎ以外のノードＮｎにおいても、当該新規コンテンツデータをリクエストできるようになる。
【００４９】
このように、コンテンツ投入要求（保存要求）メッセージに応じて上記レプリカを取得して保存することは、他のノードＮｎに提供するためのものであるということができる。
【００５０】
また、上記コンテンツ所在問合せ（検索）メッセージに含まれるコンテンツＩＤは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。
【００５１】
図４は、ユーザノードから送出されたコンテンツ所在問合せ（検索）メッセージの流れの一例を、ＤＨＴのＩＤ空間にて示した概念図である。
【００５２】
図４の例において、例えば、ユーザノードであるノードＮ２は、自己のＤＨＴのレベル１のテーブルを参照して、コンテンツ所在問合せ（検索）メッセージに含まれるコンテンツＩＤと最も近い（例えば、上位桁がより多く一致する）ノードＩＤを有する例えばノードＮ３のＩＰアドレス及びポート番号を取得し、そのＩＰアドレス及びポート番号宛てに、上記コンテンツ所在問合せ（検索）メッセージ（クエリ）を送信する。
【００５３】
これに対して、ノードＮ３は、当該コンテンツ所在問合せ（検索）メッセージを受信し、自己のＤＨＴのレベル２のテーブルを参照して、当該コンテンツ所在問合せ（検索）メッセージに含まれるコンテンツＩＤと最も近い（例えば、上位桁がより多く一致する）ノードＩＤを有する例えばノードＮ４のＩＰアドレス及びポート番号を取得し、そのＩＰアドレス及びポート番号宛てに、上記コンテンツ所在問合せ（検索）メッセージを転送する。
【００５４】
これに対して、ノードＮ４は、当該コンテンツ所在問合せ（検索）メッセージを受信し、自己のＤＨＴのレベル３のテーブルを参照して、当該コンテンツ所在問合せ（検索）メッセージに含まれるコンテンツＩＤと最も近い（例えば、上位桁がより多く一致する）ノードＩＤが自分である、つまり、自分がそのコンテンツＩＤのルートノードであることを認識すると、当該コンテンツ所在問合せ（検索）メッセージに含まれるコンテンツＩＤに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。これにより、ユーザノードは、所望のコンテンツデータのレプリカを保存している上記コンテンツ保持ノードである例えばノードＮ１に対して、コンテンツ送信要求メッセージ（コンテンツデータの提供要求を示す提供要求情報の一例）を送信し、そこから当該コンテンツデータのレプリカの提供を受けることが可能になる。
【００５５】
或いは、ルートノードであるノードＮ４は、当該インデックス情報に含まれるＩＰアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージ（ユーザノードのＩＰアドレス等を含み、当該ユーザノードに対してコンテンツデータのレプリカの送信要求を示す要求情報）を送信する。これにより、ユーザノードは、上記コンテンツ保持ノードである例えばノードＮ１から当該コンテンツデータのレプリカの提供を受けることが可能になる。
【００５６】
なお、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしている中継ノード（例えば、ノードＮ３のキャッシュノード）から当該インデックス情報を取得（受信）することもできる。
【００５７】
このようにしてコンテンツデータのレプリカを取得、保存したユーザノードは、当該レプリカを保存したことをそのルートノードに知らせるために（言い換えれば、自己が当該コンテンツデータのレプリカを保持していることを、該システムＳに参加している他のノードＮｎに対して公開するために）、そのコンテンツデータのコンテンツＩＤ及び自己のＩＰアドレス等が含まれるパブリッシュ（登録通知）メッセージ（コンテンツデータのレプリカを保存したので、ＩＰアドレス等の登録の要求を示す登録メッセージ）を生成し、該パブリッシュメッセージを、そのルートノードに向けて送出する。これにより、パブリッシュメッセージは、コンテンツ所在問合せ（検索）メッセージと同じように、コンテンツＩＤをキーとするＤＨＴルーティングによってルートノードに到着することになり、該ルートノードは、受信したパブリッシュメッセージに含まれるＩＰアドレス等及びコンテンツＩＤの組を含むインデックス情報を登録（インデックスキャッシュ領域に記憶）することになる。こうして、上記ユーザノードは、新たに、上記コンテンツデータのレプリカを保持するコンテンツ保持ノードとなる。
【００５８】
なお、上記パブリッシュメッセージに含まれるＩＰアドレス等及びコンテンツＩＤの組を含むインデックス情報は、ルートノードに至るまでの転送経路における中継ノードにおいても登録（キャッシュ）される。
【００５９】
また、上記のように保存されたコンテンツデータのレプリカは、ユーザからの削除指示に応じて削除されるようになっており、当該レプリカが削除されると、削除されたレプリカに対応するコンテンツＩＤ及び自己（自ノードＮｎ）のＩＰアドレス等が含まれる削除通知メッセージが、そのルートノードに向けて送出されることになる。これにより、削除通知メッセージは、パブリッシュメッセージと同じように、コンテンツＩＤをキーとするＤＨＴルーティングによってルートノードに到着することになり、該ルートノードは、自己のインデックス情報中から当該削除通知メッセージに含まれるコンテンツＩＤに対応付けられたＩＰアドレス等を削除することになる。
【００６０】
なお、上記削除通知メッセージに含まれるコンテンツＩＤに対応付けられたＩＰアドレス等は、ルートノードに至るまでの転送経路における中継ノードにおいても削除される。
【００６１】
［２．ノードＮｎの構成及び機能等］
次に、図５を参照して、ノードＮｎの構成及び機能について説明する。
【００６２】
図５は、ノードＮｎの概要構成例を示す図である。
【００６３】
各ノードＮｎは、図５に示すように、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データおよびプログラムを記憶するＲＯＭ等から構成されたコンピュータとしての制御部１１と、各種データ（例えば、コンテンツデータのレプリカ、インデックス情報、ＤＨＴ等）及び各種プログラム等を記憶保存（格納）するためのＨＤ等から構成された記憶部１２と、受信されたコンテンツデータのレプリカ等を一時蓄積するバッファメモリ１３と、コンテンツデータのレプリカに含まれるエンコードされたビデオデータ（映像情報）およびオーディオデータ（音声情報）等をデコード（データ伸張や復号化等）するデコーダ部１４と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部１５と、当該映像処理部１５から出力されたビデオ信号に基づき映像表示するＣＲＴ，液晶ディスプレイ等の表示部１６と、上記デコードされたオーディオデータをアナログオーディオ信号にＤ （Digital）／Ａ（Analog）変換した後これをアンプにより増幅して出力する音声処理部１７と、当該音声処理部１７から出力されたオーディオ信号を音波として出力するスピーカ１８と、ネットワーク８を通じて他のノードＮｎや各種サーバ等との間の情報の通信制御を行うための通信部２０と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部１１に対して与える入力部（例えば、キーボード、マウス、或いは、操作パネル等）２１と、周囲に存在する人を感知する人感センサ（例えば、移動体感知センサや赤外線センサ）２２と、周囲の音を検知する音センサ（例えば、集音マイク）２３と、を備えて構成され、制御部１１、記憶部１２、バッファメモリ１３、デコーダ部１４、及び通信部２０はバス２４を介して相互に接続（入力部２１、人感センサ２２及び音センサ２３はインターフェース（Ｉ／Ｆ）を介してバス２４に接続）されている。なお、ノードＮｎとしては、パーソナルコンピュータ、ＳＴＢ（Set Top Box）、或いは、ＴＶ受信機等を適用可能である。また、記憶部１２には、コンテンツ分散保存システムＳに参加する際のアクセス先となるコンタクトノードのＩＰアドレス及びポート番号等が記憶されている。
【００６４】
このような構成において、制御部１１は、ＣＰＵが記憶部１２等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、コンテンツ分散保存システムＳへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及び他のノードＮｎからの提供要求に係るコンテンツデータのレプリカの提供動作を行うサーバ機能（他のノードＮｎのために稼動するサーバ機能の一例）を有するコンテンツ保持ノードの少なくとも何れか一つのノードとしての処理を行うようになっている。
【００６５】
更に、当該制御部１１は、周囲に人が存在するか否かを判断する存在判断手段、周囲の音が規定値（当該規定値は、予めＲＯＭ又は記憶部１２等に記憶されており、例えば３０デシベル程度）以上であるか否かを判断する音判断手段、及び周囲に人が存在すると判断している間、上記サーバ機能を停止させる制御手段等として機能するようになっている。
【００６６】
ここで、周囲に人が存在するか否かは、人感センサ２２からの情報に基づいて判断される。また、周囲の音が規定値以上であるか否かは、音センサ２３により検知された音のレベルに基づいて判断される。なお、人感センサ２２及び音センサ２３については公知であるので、詳しい説明を省略する。
【００６７】
また、当該制御部１１は、周囲の音が規定値以上である場合には、ユーザは動作音（コンテンツデータのレプリカの提供動作に係る動作音）が気にならないと考えられるので、周囲に人が存在すると判断されている間であっても、サーバ機能を継続させることが望ましい。
【００６８】
また、サーバ機能の例としては、上述したように、他のノードＮｎからの提供要求に係るコンテンツデータのレプリカの提供動作を行うことが第一に挙げられるが、この他にも、ノードＮｎが、上述したコンテンツ投入要求メッセージを受信した場合に、上述したようにコンテンツ所在問合せ（検索）メッセージをルートノードに向けて送出してインデックス情報を取得し、これに基づき、上記投入要求に係るコンテンツデータのレプリカを他のノードＮｎから取得して保存する機能も、他のノードＮｎのための稼動と言え、且つ当該稼動時には、ハードディスクドライブの動作音が目立つ場合もあるので、当該機能もサーバ機能としても良い。
【００６９】
なお、上記ノード処理プログラムは、例えば、ネットワーク８上の所定のサーバからダウンロードされるようにしてもよいし、例えば、ＣＤ−ＲＯＭ等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。
【００７０】
［３．コンテンツ分散保存システムＳの動作］
次に、図６乃至図１０を参照して、コンテンツ分散保存システムＳの動作について説明する。
【００７１】
図６は、ノードＮｎの制御部１１におけるメイン処理を示すフローチャートである。図７（Ａ）は、通常動作を示すフローチャートであり、図７（Ｂ）は、静音動作を示すフローチャートである。図８は、コンテンツデータ取得処理の詳細を示すフローチャートである。図９は、通常動作におけるメッセージ受信処理の詳細を示すフローチャートである。図１０は、静音動作におけるメッセージ受信処理の詳細を示すフローチャートである。
【００７２】
図６に示す処理は、任意のノードＮｎにおいて例えば電源オン（ＯＮ）になった場合に開始され、初期設定が行われた後、コンテンツ分散保存システムＳへの参加処理が実行される。この参加処理においては、当該ノードＮｎの制御部１１は、記憶部１２からコンタクトノードのＩＰアドレス及びポート番号を取得し、これに基づきコンタクトノードにネットワーク８を介して接続し、参加要求を示す参加メッセージ（自己のノードＩＤ及びノード情報等を含む）を送信する。これにより、当該ノードＮｎには、当該システムＳに参加している他のノードＮｎからＤＨＴを用いたルーティングテーブルが送信されることになり、受信したルーティングテーブルに基づき自己のＤＨＴを用いたルーティングテーブルを生成し、コンテンツ分散保存システムＳに参加が完了することになる。なお、ＤＨＴを用いたルーティングテーブルの生成方法は、本発明の直接の関係がないので、詳しい説明を省略する。また、コンタクトノードのＩＰアドレス等の情報は、例えばノードＮｎの出荷時、或いはソフトウェア初回インストール時の初期状態で記憶部１２に記憶される。
【００７３】
こうしてコンテンツ分散保存システムＳへの参加処理が完了すると、制御部１１は、電源オフ（ＯＦＦ）指示（例えば、ユーザから入力部２１を介した電源オフ操作指示）を受け付けたか（電源オフ指示に応じた指示信号を受け付けたか）否かを判別し（ステップＳ１）、電源オフ指示がない場合には（ステップＳ１：ＮＯ）、通常動作を行い（ステップＳ２）（電源オフ指示があるまで通常動作は継続される）、電源オフ指示を受け付けた場合には（ステップＳ１：ＹＥＳ）、節電モードに切り替え（ステップＳ３）、ステップＳ４に進む。
【００７４】
この節電モードへの切り替えにより、当該制御部１１は、通信部２０を介して他のノードＮｎとの間で各種データ（例えば、上述した種々のメッセージやコンテンツデータのレプリカ）の送受信を行うために必要な電源（例えば、制御部１１、記憶部１２及び通信部２０に供給される電源）のみを残して表示部１６等の他の電源をオフにする（オーバーレイネットワーク９からは脱退しない（参加維持））。これは、コンテンツ分散保存システムＳの安定的な運用のために、ユーザにより電源オフ指示があった後も、ノードＮｎ間におけるデータ送受信が行えるようにするためである。
【００７５】
ステップＳ４では、制御部１１は、音センサ２３から周囲の音に係る情報を取得する。そして、制御部１１は、当該取得した情報に基づいて、当該周囲の音が規定値以上であるか（例えば、音センサ２３により検知された音のレベルが規定値以上であるか）否かを判断し（ステップＳ５）、規定値以上である場合には（ステップ５：ＹＥＳ）、周囲の音が大きく、ユーザが動作音を特に意識しないと考えられるので、ステップＳ６に進み（通常動作（サーバ機能）を継続）、規定値以上でない場合には（ステップ５：ＮＯ）、ステップＳ７に進む。
【００７６】
なお、ステップＳ６における通常動作（サーバ機能）では、後述するステップＳ２１におけるコンテンツ検索指示に応じたコンテンツデータ取得処理が行われないが、その他の処理は、ステップＳ２における通常動作と同様であり、当該通常動作後、ステップＳ４に戻る。
【００７７】
一方、ステップＳ７では、制御部１１は、人感センサ２２から情報を取得する。そして、制御部１１は、当該取得した情報に基づいて、周囲に人が存在するか否かを判断（つまり、電源オフ指示が受け付けられた後に判断）し（ステップＳ８）、周囲に人が存在しない場合には（ステップＳ８：ＮＯ）、ステップＳ６に移行し（通常動作（サーバ機能）を継続）、周囲に人が存在する場合には（ステップＳ８：ＹＥＳ）、ステップＳ９に移行（静音動作に移行しサーバ機能を停止）する。
【００７８】
なお、ステップＳ９における静音動作後、ステップＳ４に戻り、周囲に人が存在すると判断されている間、サーバ機能が停止されることになる。
【００７９】
次に、ステップＳ２又はステップＳ６における通常動作では、図７（Ａ）に示すように、制御部１１は、先ず、ユーザから入力部２１を介してコンテンツ検索指示があったか否かを判別する（ステップＳ２１）。ユーザからコンテンツ検索指示があった（例えば表示部１２上に表示されたコンテンツカタログ情報から、当該ユーザが所望のコンテンツデータのコンテンツ名等を入力部２１により選択してコンテンツ検索指示を行った）場合には（ステップＳ２１：ＹＥＳ）、ステップＳ２２に進み、コンテンツ検索指示がない場合には（ステップＳ２１：ＮＯ）、ステップＳ２３に進む。
【００８０】
ステップＳ２２におけるコンテンツデータ取得処理では、図８に示すように、制御部１１は、コンテンツ所在問合せ（検索）処理を行う（ステップＳ２２１）。かかるコンテンツ所在問合せ（検索）処理においては、制御部１１は、上記コンテンツ検索指示に係るコンテンツデータのコンテンツＩＤを含むコンテンツ所在問合せ（検索）メッセージを、自己のＤＨＴを用いたルーティングテーブルにしたがって他のノードＮｎ（つまり、当該コンテンツＩＤと最も近い（例えば、上位桁がより多く一致する）ノードＩＤを有するノードＮｎ）に対して送信（当該コンテンツＩＤのルートノードに向けて送出）し、当該コンテンツＩＤのルートノードからインデックス情報を取得する。
【００８１】
次いで、制御部１１は、上述したコンテンツ送信要求メッセージを、上記取得したインデックス情報に含まれるＩＰアドレス等に基づき、コンテンツ保持ノードに対して送信する（ステップＳ２２２）。これに応じて、コンテンツ保持ノードは、自身が通常動作中にあれば、上記コンテンツ送信要求メッセージにより指定されたコンテンツデータのレプリカを上記ユーザノードへ送信することになり、自身が静音動作中にあれば、コンテンツデータ提供不可メッセージを当該ユーザノードへ送信することになる。
【００８２】
そして、コンテンツ保持ノードから送信されたコンテンツデータのレプリカは、通信部２０を通じて受信されバッファメモリ１３に蓄積される。そして、制御部１１は、バッファメモリ１３に所定量の上記レプリカのデータが蓄積されたとき、当該レプリカのデータをバッファメモリ１３から記憶部１２に記憶保存（例えば、ＨＤの所定領域に書き込む）させる（ステップＳ２２３）。こうして、順次当該レプリカのデータがバッファメモリ１３から記憶部１２に送られ記憶保存されていく。
【００８３】
次いで、制御部１１は、当該レプリカのデータが全て揃い、記憶保存された否かを判断し（ステップＳ２２４）、全て記憶保存されていない場合には（ステップＳ２２４：ＮＯ）、ステップ２２３に戻り当該処理を継続し、全て記憶保存された場合には（ステップＳ２２４：ＹＥＳ）、ステップＳ２２５に進む。なお、当該レプリカのデータ量が少ない場合、バッファメモリ１３に全てのデータが揃ってから記憶部１２に記憶保存されるように構成しても良い。
【００８４】
ステップＳ２２５では、制御部１１は、当該保存されたレプリカに係るコンテンツデータのコンテンツＩＤを含む、上述したパブリッシュメッセージを、自己のＤＨＴを用いたルーティングテーブルにしたがって他のノードＮｎに対して送信（当該コンテンツＩＤのルートノードに向けて送出）し、図７（Ａ）の処理に戻る。これにより、当該パブリッシュメッセージは、コンテンツＩＤをキーとするＤＨＴルーティングによってルートノードに到着することになり、該ルートノードは、受信したパブリッシュメッセージに含まれるＩＰアドレス等及びコンテンツＩＤの組を含むインデックス情報を登録する。
【００８５】
次に、ステップＳ２３では、制御部１１は、他のノードＮｎから送信されたメッセージを受信したか否かを判別し、当該メッセージを受信していない場合には（ステップＳ２３：ＮＯ）、ステップＳ２５に進み、当該メッセージを受信した場合には（ステップＳ２３：ＹＥＳ）、ステップＳ２４に進み、メッセージ受信処理を行う。
【００８６】
なお、ステップＳ２５におけるその他の処理では、例えば、ユーザからの入力部２１を介した再生指示に応じたコンテンツデータ再生処理（コンテンツデータのレプリカは、デコーダ部１４、映像処理部１５、表示部１６、音声処理部１７、及びスピーカ１８等を介して再生出力される）や、削除指示に応じたコンテンツデータ削除処理等が行われ、図６の処理に戻る。
【００８７】
ステップＳ２４におけるメッセージ受信処理では、図９に示すように、制御部１１は、受信されたメッセージがコンテンツ所在問合せメッセージであるか否かを判別し（ステップＳ２４１）、コンテンツ所在問合せメッセージでない場合には（ステップＳ２４１：ＮＯ）、ステップＳ２４６に進む。一方、コンテンツ所在問合せメッセージである場合には（ステップＳ２４１：ＹＥＳ）、制御部１１は、所在問合せ対象のインデックス情報（コンテンツ所在問合せメッセージに含まれるコンテンツＩＤに対応するインデックス情報）がインデックスキャッシュに記憶されているか否かを判別し（ステップＳ２４２）、記憶されている場合には（ステップＳ２４２：ＹＥＳ）、当該インデックス情報を該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して送信し（ステップＳ２４３）、図７（Ａ）の処理に戻る。一方、当該インデックス情報が記憶されていない場合には（ステップＳ２４２：ＮＯ）、制御部１１は、自己（自ノードＮｎ）がルートノードであるか否かを判別（つまり、自己のルーティングテーブルを参照して、当該コンテンツ所在問合せメッセージに含まれるコンテンツＩＤと最も近いノードＩＤが自分であるか否かを判別）し（ステップＳ２４４）、自己がルートノードでない（つまり、中継ノードである）場合には（ステップＳ２４４：ＮＯ）、ステップＳ２４５に進み、自己がルートノードである場合には（ステップＳ２４４：ＹＥＳ）、図７（Ａ）の処理に戻る。
【００８８】
ステップＳ２４５では、制御部１１は、受信されたコンテンツ所在問合せメッセージを、自己のＤＨＴを用いたルーティングテーブルにしたがって他のノードＮｎ（つまり、コンテンツ所在問合せメッセージに含まれるコンテンツＩＤと最も近いノードＩＤを有するノードＮｎ）に対して転送（当該コンテンツＩＤのルートノードに向けて送出）し、図７（Ａ）の処理に戻る。
【００８９】
ステップＳ２４６では、制御部１１は、受信されたメッセージがコンテンツ投入要求メッセージであるか否かを判別し、コンテンツ投入要求メッセージでない場合には（ステップＳ２４６：ＮＯ）、ステップＳ２４８に進む。一方、コンテンツ投入要求メッセージである場合には（ステップＳ２４６：ＹＥＳ）、上記ステップＳ２２と同様、図８に示すコンテンツデータ取得処理が行われる（ステップＳ２４７）。
【００９０】
ステップＳ２４８では、制御部１１は、受信されたメッセージがコンテンツ送信要求メッセージであるか否かを判別し、コンテンツ送信要求メッセージでない場合には（ステップＳ２４８：ＮＯ）、ステップＳ２５０に進む。一方、コンテンツ送信要求メッセージである場合には（ステップＳ２４８：ＹＥＳ）、コンテンツデータ提供（アップロード）処理を行い（サーバ機能を実行）（ステップＳ２４９）、図７（Ａ）の処理に戻る。当該コンテンツ提供処理においては、受信されたコンテンツ送信要求メッセージにより指定されたコンテンツデータのレプリカが、所定データ単位のブロック毎に、当該コンテンツ送信要求メッセージの送信元のユーザノードに対して順次送信されることになる。
【００９１】
ステップＳ２５０では、制御部１１は、受信されたメッセージがパブリッシュメッセージであるか否かを判別し、パブリッシュメッセージでない場合には（ステップＳ２５０：ＮＯ）、ステップＳ２５４に進む。一方、パブリッシュメッセージである場合には（ステップＳ２５０：ＹＥＳ）、受信されたパブリッシュメッセージに含まれるＩＰアドレス等及びコンテンツＩＤの組を含むインデックス情報を登録（インデックスキャッシュ領域に記憶）する（ステップＳ２５１）。
【００９２】
次いで、制御部１１は、上記ステップＳ２４４と同様、自己がルートノードであるか否かを判別し（ステップＳ２５２）、自己がルートノードでない（つまり、中継ノードである）場合には（ステップＳ２５２：ＮＯ）、ステップＳ２５３に進み、自己がルートノードである場合には（ステップＳ２５２：ＹＥＳ）、図７（Ａ）の処理に戻る。
【００９３】
ステップＳ２５３では、制御部１１は、受信されたパブリッシュメッセージを、自己のルーティングテーブルにしたがって他のノードＮｎ（つまり、パブリッシュメッセージに含まれるコンテンツＩＤと最も近いノードＩＤを有するノードＮｎ）に対して転送（当該コンテンツＩＤのルートノードに向けて送出）し、図７（Ａ）の処理に戻る。
【００９４】
なお、ステップＳ２５４における、その他のメッセージ受信処理においては、その他のメッセージ（例えば、参加メッセージや削除通知メッセージ）が受信された場合の処理が行われ、図７（Ａ）の処理に戻る。
【００９５】
一方、図６に示すステップＳ９における静音動作では、図７（Ｂ）に示すように、図７（Ａ）に示す通常動作に比べ、コンテンツ検索指示の有無を判断する処理は無いが、メッセージを受信したか否かの判断は行われ（ステップＳ９１）、メッセージが受信された場合には（ステップＳ９１：ＹＥＳ）、メッセージ受信処理が実行される（ステップＳ９２）。なお、図７（Ｂ）に示すステップＳ９３におけるその他の処理は、図７（Ａ）に示すステップＳ２５におけるその他の処理と同様である。
【００９６】
ステップＳ９２におけるメッセージ受信処理は、図１０に示すように実行されるが、通常動作時におけるメッセージ受信処理（図９）と比較すると、受信されたメッセージがコンテンツ投入要求メッセージである場合の処理（ステップＳ９２７）、及び、受信されたメッセージがコンテンツ送信要求メッセージである場合の処理（ステップＳ９２９）が異なる。
【００９７】
図９に示すメッセージ受信処理では、受信されたメッセージがコンテンツ投入要求メッセージである場合、コンテンツデータ取得処理が行われる（ステップＳ２４７）が、図１０に示すメッセージ受信処理では、サーバ機能の停止中となっているため、受信されたメッセージがコンテンツ投入要求メッセージである場合、コンテンツ投入要求メッセージの送信元のサーバに対して、コンテンツデータ投入拒否メッセージ（投入要求に係るコンテンツデータを投入できないことを示す情報）が返信される（ステップＳ９２７）ことになる。これは、投入要求に応じてコンテンツデータをダウンロードしハードディスクに書き込む処理を拒否することで、静音化を実現する趣旨である。なお、コンテンツデータ投入拒否メッセージをサーバに送信する代わりに、制御部１１は、例えば自己のＤＨＴを用いたルーティングテーブルに登録された他のノードＮｎをランダムに選定し、当該選定したノードＮｎに対して、上記受信されたコンテンツ投入要求メッセージを転送するように構成しても良い。当該コンテンツ投入要求メッセージの転送を受けたノードＮｎは、当該メッセージに含まれるコンテンツＩＤに基づき、コンテンツ所在問合せ（検索）メッセージを当該コンテンツＩＤのルートノード宛に送出することによりインデックス情報を取得し、当該インデックス情報に示されたコンテンツ保持ノードから当該コンテンツデータのレプリカを取得、保存し、パブリッシュメッセージをルートノード宛に送出することになる。これにより、サーバ機能停止中のノードＮｎの代わりにコンテンツ保持ノードを確保することができる。或いは、コンテンツデータ投入拒否メッセージの送信及びコンテンツ投入要求メッセージの転送をせずに、サーバ機能の復帰後にコンテンツデータ取得処理を行うように構成しても良い。
【００９８】
また、図９に示すメッセージ受信処理では、受信されたメッセージがコンテンツ送信要求メッセージである場合、サーバ機能により、コンテンツデータのレプリカがコンテンツ送信要求メッセージの送信元のユーザノードに対して送信される（ステップＳ２４９）が、図１０に示すメッセージ受信処理では、サーバ機能の停止中となっているため、受信されたメッセージがコンテンツ送信要求メッセージである場合、コンテンツ送信要求メッセージの送信元のユーザノードに対してコンテンツデータ提供不可メッセージ（提供要求に係るコンテンツデータを提供できないことを示す情報）が、コンテンツ送信要求メッセージの送信元のユーザノードに対して送信される（ステップＳ９２９）ことになる。
【００９９】
なお、図１０に示すステップＳ９２９以外の処理は、図９に示すステップＳ２４９以外の処理と同様である。
【０１００】
また、上述した処理において、サーバ機能動作中（コンテンツデータの送信又は受信中）に人が近づくことにより、当該人の存在が人感センサ２２により感知された場合、上記制御部１１は、ただちにサーバ機能を停止するように構成しても良いし、そのセッション終了後にサーバ機能を停止するように構成しても良い。ただちにサーバ機能を停止する場合、人に気付かれ無いメリットがある一方、セッション終了後にサーバ機能を停止する場合、システムとして安定的な動作がしやすいというメリットがある。
【０１０１】
以上説明したように、上記実施形態によれば、周囲に人が存在すると判断されている間、メッセージの送受信機能を継続させつつ、上記サーバ機能のみを停止させるように構成したので、コンテンツ分散保存システムＳの安定的な運用を図りつつ、ユーザに動作音（例えば、コンテンツデータのレプリカを提供する配信動作が行われる際や、投入要求に応じてコンテンツデータのレプリカを保存する際の書き込み動作が行われる際のハードディスクドライブのデータの読み書きに係る動作音）を意識させない（ユーザに静かなノードと感じさせる）ようにすることができる。また、ユーザに対して動作音による不快感（特に、夜間）を与えないようにすることができる。
【０１０２】
また、周囲に人が存在すると判断されている間、メッセージの送受信機能を継続させつつ、上記サーバ機能のみを停止させるように構成することは、コンテンツ分散保存システムＳの安定的な運用のためにユーザにより電源オフ指示があった後もノードＮｎ間におけるデータ送受信が行えるような態様の場合に特に有効（つまり、電源オフ指示後に動作音がするのはユーザにとって非常に気になり不快であるため）である。
【０１０３】
また、周囲の音が規定値以上と大きい場合には、ユーザは動作音が気にならないと考えられるので、周囲に人が存在すると判断されている間であっても、サーバ機能を継続させるように構成することで、他のノードＮｎからの要求に応じることができる。
【０１０４】
なお、上記実施形態におけるコンテンツ分散保存システムＳは、ＤＨＴを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
【図面の簡単な説明】
【０１０５】
【図１】本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【図２】ノードＮ２が保持するＤＨＴを用いたルーティングテーブルの一例を示す図である。
【図３】ＤＨＴのＩＤ空間の一例を示す概念図である。
【図４】ユーザノードから送出されたコンテンツ所在問合せ（検索）メッセージの流れの一例を、ＤＨＴのＩＤ空間にて示した概念図である。
【図５】ノードＮｎの概要構成例を示す図である。
【図６】ノードＮｎの制御部１１におけるメイン処理を示すフローチャートである。
【図７】（Ａ）は、通常動作を示すフローチャートであり、（Ｂ）は、静音動作を示すフローチャートである。
【図８】コンテンツデータ取得処理の詳細を示すフローチャートである。
【図９】通常動作におけるメッセージ受信処理の詳細を示すフローチャートである。
【図１０】静音動作におけるメッセージ受信処理の詳細を示すフローチャートである。
【符号の説明】
【０１０６】
８  ネットワーク
９  オーバーレイネットワーク
１１  制御部
１２  記憶部
１３  バッファメモリ
１４  デコーダ部
１５  映像処理部
１６  表示部
１７  音声処理部
１８  スピーカ
２０  通信部
２１  入力部
２２  人感センサ
２３  音センサ
２４  バス
Ｎｎ  ノード
Ｓ  コンテンツ分散保存システム
【図１】
2008234444.tif 000003
【図２】
2008234444.tif 000004
【図３】
2008234444.tif 000005
【図４】
2008234444.tif 000006
【図５】
2008234444.tif 000007
【図６】
2008234444.tif 000008
【図７】
2008234444.tif 000009
【図８】
2008234444.tif 000010
【図９】
2008234444.tif 000011
【図１０】
2008234444.tif 000012