(57)【要約】 【課題】コンテンツの利用可能となる公開期間を効率良く制御可能とし、効率の良いコンテンツ管理を行うことを可能としたコンテンツ分散保存システム、公開期間制御装置、公開期間制御方法、及び制御処理プログラムを提供する。【解決手段】コンテンツ分散保存システムにおいてコンテンツの利用可能となる公開期間をコンテンツ毎に制御する公開期間制御装置は、公開開始日時からの時間経過に応じた複製データの数の推移に基づいて公開終了日時を算出し、既に設定されている公開終了日時に代えて当該算出された公開終了日時を再設定する。【選択図】図６
2010102651.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存させ、各前記ノード装置間で前記コンテンツを利用可能とし、時間経過に応じて前記複製データの数が変動するコンテンツ分散保存システムにおいて前記コンテンツの利用可能となる公開期間をコンテンツ毎に制御する公開期間制御装置であって、
前記公開期間を定める公開開始日時と公開終了日時を設定する公開期間設定手段と、
複数の前記ノード装置から収集された情報に基づいて前記複製データの数を算出する複製データ数算出手段と、
前記公開開始日時からの時間経過に応じた前記複製データの数の推移に基づいて前記公開終了日時を算出する公開終了日時算出手段と、
を備え、
前記公開期間設定手段は、既に設定されている前記公開終了日時に代えて前記算出された前記公開終了日時を再設定することを特徴とする公開期間制御装置。
【請求項２】
請求項１に記載の公開期間制御装置において、
既に設定されている前記公開終了日時と前記算出された前記公開終了日時との差を表示させる表示制御手段と、
ユーザからの再設定指示を受け付ける受付手段と、
を更に備え、
前記公開期間設定手段は、前記再設定指示があった場合に、前記公開終了日時を再設定することを特徴とする公開期間制御装置。
【請求項３】
請求項１又は２に記載の公開期間制御装置において、
前記再設定された公開終了日時を示す情報を前記複数のノード装置に対して通知する公開終了日時情報通知手段を更に備えることを特徴とする公開期間制御装置。
【請求項４】
コンピュータを、請求項１乃至３の何れか一項に記載の公開期間制御装置として機能させることを特徴とする制御処理プログラム。
【請求項５】
ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存させ、各前記ノード装置間で前記コンテンツを利用可能とし、時間経過に応じて前記複製データの数が変動するコンテンツ分散保存システムにおいて、
前記コンテンツの利用可能となる公開期間をコンテンツ毎に制御する公開期間制御装置は、
前記公開期間を定める公開開始日時と公開終了日時を設定する公開期間設定手段と、
複数の前記ノード装置から収集された情報に基づいて前記複製データの数を算出する複製データ数算出手段と、
前記公開開始日時からの時間経過に応じた前記複製データの数の推移に基づいて前記公開終了日時を算出する公開終了日時算出手段と、
を備え、
前記公開期間設定手段は、既に設定されている前記公開終了日時に代えて前記算出された前記公開終了日時を再設定することを特徴とするコンテンツ分散保存システム。
【請求項６】
ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存させ、各前記ノード装置間で前記コンテンツを利用可能とし、時間経過に応じて前記複製データの数が変動するコンテンツ分散保存システムにおいて前記コンテンツの利用可能となる公開期間をコンテンツ毎に制御する公開期間制御方法であって、
制御装置が、前記公開期間を定める公開開始日時と公開終了日時を設定する公開期間設定工程と、
前記制御装置が、複数の前記ノード装置から収集された情報に基づいて前記複製データの数を算出する複製データ数算出工程と、
前記制御装置が、前記公開開始日時からの時間経過に応じた前記複製データの数の推移に基づいて前記公開終了日時を算出する公開終了日時算出工程と、
を含み、
前記公開期間設定工程においては、既に設定されている前記公開終了日時に代えて前記算出された前記公開終了日時を再設定することを特徴とする公開期間制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））型の通信システムの技術分野に関する。
【背景技術】
【０００２】
この種のピアツーピア型の通信システムにおいて、複数のコンテンツデータ（映画及び音楽等のコンテンツのデータ）の複製データ（以下、「レプリカ」という）を複数のノード装置に分散して保存（配置）させ、各ノード装置間でレプリカを利用可能としたコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献１に開示されるような分散ハッシュテーブル（以下、ＤＨＴ（Distributed Hash Table）という）を利用して効率良く検索可能になっている。
【０００３】
このようなコンテンツ分散保存システムに始めて投入されるコンテンツには、当該投入時に当該コンテンツの利用可能となる公開期間（利用開始から利用終了までの期間）が設定される。
【特許文献１】特開２００６−１９７４００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のコンテンツ分散保存システムでは、視聴等の利用需要があるにも関わらず公開期限切れ（公開期間の終了）によりコンテンツが利用不可になったり、利用需要がないのにも関わらず公開期限まで利用不可にならず（削除することができず）、当該コンテンツのレプリカを保存しているサーバ装置等の記憶容量の浪費に繋がったりと、効率の良いコンテンツ管理を行うことが困難であった。
【０００５】
本発明は、以上の点等に鑑みてなされたものであり、コンテンツの利用可能となる公開期間を効率良く制御可能とし、効率の良いコンテンツ管理を行うことを可能としたコンテンツ分散保存システム、公開期間制御装置、公開期間制御方法、及び制御処理プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存させ、各前記ノード装置間で前記コンテンツを利用可能とし、時間経過に応じて前記複製データの数が変動するコンテンツ分散保存システムにおいて前記コンテンツの利用可能となる公開期間をコンテンツ毎に制御する公開期間制御装置であって、前記公開期間を定める公開開始日時と公開終了日時を設定する公開期間設定手段と、複数の前記ノード装置から収集された情報に基づいて前記複製データの数を算出する複製データ数算出手段と、前記公開開始日時からの時間経過に応じた前記複製データの数の推移に基づいて前記公開終了日時を算出する公開終了日時算出手段と、を備え、前記公開期間設定手段は、既に設定されている前記公開終了日時に代えて前記算出された前記公開終了日時を再設定することを特徴とする。
【０００７】
この発明によれば、設定された公開開始日時からの時間経過に応じた複製データの数の推移に基づいて新たな公開終了日時を算出し、既に設定されている公開終了日時に代えて当該算出された公開終了日時を再設定するように構成したので、コンテンツの利用需要の変化を反映させた公開期間の制御及び管理を効率良く行うことができる。
【０００８】
請求項２に記載の発明は、請求項１に記載の公開期間制御装置において、既に設定されている前記公開終了日時と前記算出された前記公開終了日時との差を表示させる表示制御手段と、ユーザからの再設定指示を受け付ける受付手段と、を更に備え、前記公開期間設定手段は、前記再設定指示があった場合に、前記公開終了日時を再設定することを特徴とする。
【０００９】
この発明によれば、管理者は、表示された情報を確認、判断してから、必要であれば、公開終了日時の延長又は短縮を行うことができ、効率の良いコンテンツ管理が可能となる。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載の公開期間制御装置において、前記再設定された公開終了日時を示す情報を前記複数のノード装置に対して通知する公開終了日時情報通知手段を更に備えることを特徴とする。
【００１１】
この発明によれば、各ノード装置に対して、該当するコンテンツの公開終了日時を迅速に更新させることができる。
【００１２】
請求項４に記載の制御処理プログラムの発明は、コンピュータを、請求項１乃至３の何れか一項に記載の公開期間制御装置として機能させることを特徴とする。
【００１３】
請求項５に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存させ、各前記ノード装置間で前記コンテンツを利用可能とし、時間経過に応じて前記複製データの数が変動するコンテンツ分散保存システムにおいて、前記コンテンツの利用可能となる公開期間をコンテンツ毎に制御する公開期間制御装置は、前記公開期間を定める公開開始日時と公開終了日時を設定する公開期間設定手段と、複数の前記ノード装置から収集された情報に基づいて前記複製データの数を算出する複製データ数算出手段と、前記公開開始日時からの時間経過に応じた前記複製データの数の推移に基づいて前記公開終了日時を算出する公開終了日時算出手段と、を備え、前記公開期間設定手段は、既に設定されている前記公開終了日時に代えて前記算出された前記公開終了日時を再設定することを特徴とする。
【００１４】
請求項６に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたコンテンツ分散保存システムであり、複数のコンテンツの複製データを複数のノード装置に分散して保存させ、各前記ノード装置間で前記コンテンツを利用可能とし、時間経過に応じて前記複製データの数が変動するコンテンツ分散保存システムにおいて前記コンテンツの利用可能となる公開期間をコンテンツ毎に制御する公開期間制御方法であって、制御装置が、前記公開期間を定める公開開始日時と公開終了日時を設定する公開期間設定工程と、前記制御装置が、複数の前記ノード装置から収集された情報に基づいて前記複製データの数を算出する複製データ数算出工程と、前記制御装置が、前記公開開始日時からの時間経過に応じた前記複製データの数の推移に基づいて前記公開終了日時を算出する公開終了日時算出工程と、を含み、前記公開期間設定工程においては、既に設定されている前記公開終了日時に代えて前記算出された前記公開終了日時を再設定することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、設定された公開開始日時からの時間経過に応じた複製データの数の推移に基づいて新たな公開終了日時を算出し、既に設定されている公開終了日時に代えて当該算出された公開終了日時を再設定するように構成したので、コンテンツの利用需要の変化を反映させた公開期間の制御及び管理を効率良く行うことができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。
【００１７】
［１．コンテンツ分散保存システムの構成等］
始めに、図１等を参照して、本実施形態に係るコンテンツ分散保存システムの構成及び動作概要について説明する。
【００１８】
図１は、本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【００１９】
図１の下部枠１０１内に示すように、ＩＸ（Internet eＸchange）３、ＩＳＰ（Internet Service Provider）４ａ,４ｂ、ＤＳＬ（Digital Subscriber Line）回線事業者（の装置）５ａ,５ｂ、ＦＴＴＨ（Fiber To The Home）回線事業者（の装置）６、及び通信回線（例えば、電話回線や光ケーブル等）７等によって、インターネット等のネットワーク（現実世界の通信ネットワーク）８が構築されている。なお、図１の例におけるネットワーク８には、データ（パケット）を転送するためのルータが、適宜挿入されているが図示を省略している。
【００２０】
このようなネットワーク８には、複数のノード装置（以下、「ノード」という）Ｎｎ（ｎ＝１，２，３・・・の何れか）が接続されている。また、各ノードＮｎには、固有の製造番号およびＩＰ（Internet Protocol）アドレスが割り当てられている。そして、本実施形態に係るコンテンツ分散保存システムＳは、これらのノードＮｎのうち、図１の上部枠１００内に示すように、何れか複数のノードＮｎの参加により形成されるピアツーピア方式のネットワークシステムとなっている。
【００２１】
なお、図１の上部枠１００内に示すネットワーク９は、既存のネットワーク８を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク９（論理的なネットワーク）である。かかるオーバーレイネットワーク９は、特定のアルゴリズム、例えば、ＤＨＴを利用したアルゴリズムにより実現される。そして、コンテンツ分散保存システムＳ（言い換えれば、オーバーレイネットワーク９）に参加している各ノードＮｎには、所定桁数からなる固有の識別情報であるノードＩＤが割り当てられている。また、当該ノードＩＤは、例えば、各ノードＮｎに個別に割り当てられたＩＰアドレス或いは製造番号を共通のハッシュ関数（例えば、ＳＨＡ−１等）によりハッシュ化した値（例えば、ｂｉｔ長が１６０ｂｉｔ）であり、一つのＩＤ空間に偏りなく分散して配置されることになる。
【００２２】
なお、コンテンツ分散保存システムＳへの参加は、参加していないノードＮｎ（例えば、ノードＮ８）が、参加している任意のノードＮｎ（例えば、当該システムＳに常時参加しているコンタクトノード）に対して参加要求を示す参加メッセージを送信することによって行われる。
【００２３】
また、各ノードＮｎは、夫々、ＤＨＴを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムＳ上における各種メッセージの転送先を規定しており、具体的には、ＩＤ空間内で適度に離れたノードＮｎのノードＩＤ、ＩＰアドレス及びポート番号を含むノード情報が複数登録されている。
【００２４】
コンテンツ分散保存システムＳに参加している１台のノードＮｎは、該システムＳに参加している全てのノードＮｎのうち、必要最低限のノードＮｎのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない（記憶していない）ノードＮｎについては、各ノードＮｎ間で互いに各種メッセージを転送し合って届けてもらうようになっている。
【００２５】
このようなＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００２６】
ところで、コンテンツ分散保存システムＳにおいては、内容の異なる様々なコンテンツ（例えば、映画や音楽等）のレプリカが所定のファイル形式で複数のノードＮｎに分散して保存（格納）されており、各ノードＮｎ間で当該レプリカを利用可能になっている。例えば、ノードＮ５には、タイトルがＸＸＸの映画のコンテンツのレプリカが保存されており、一方、ノードＮ３には、タイトルがＹＹＹの映画のコンテンツのレプリカが保存されるというように、複数のノードＮｎ（以下、「コンテンツ保持ノード」という）に分散されて保存（例えばハードディスク等の記憶領域の一部に割り当てられたコンテンツ保存領域に保存）されている。
【００２７】
また、これらのコンテンツのレプリカには、夫々、コンテンツ名（タイトル）、コンテンツＩＤ（コンテンツ毎に固有の識別情報）、コンテンツの評価を表す評価値、及びコンテンツの利用可能となる公開期間等の情報が付与されている。このコンテンツＩＤは、例えば、コンテンツ名＋任意の数値（或いは、コンテンツデータの先頭数バイトでも良い）が、上記ノードＩＤを得るときと共通のハッシュ関数によりハッシュ化されて生成される（ノードＩＤと同一のＩＤ空間に配置）。或いは、システム管理者が、コンテンツ毎に一意のＩＤ値（ノードＩＤと同一ビット長）を付与しても良い。この場合は、コンテンツ名とそのコンテンツＩＤの対応が書かれたコンテンツカタログ情報が、全ノードＮｎに配布される。  
【００２８】
上記評価値は、例えば、コンテンツの人気度や重要度を表すものであり、例えば人気が高いと予想されるコンテンツは、その評価値は投入時により高く設定されている。当該評価値は、レプリカを保存した各ノードＮｎにより管理される。上記公開期間は、公開開始日時と公開終了日時により定められるものであり、投入時にコンテンツ管理サーバＳＡにより設定される。
【００２９】
また、このように分散保存されているコンテンツのレプリカの所在、つまり、当該レプリカを保存したノードＮｎのノード情報と当該コンテンツのコンテンツＩＤ等の組が含まれるインデックス情報が、当該コンテンツのレプリカの所在を管理しているノードＮｎ（以下、「ルートノード」、又は「コンテンツ（コンテンツＩＤ）のルートノード」という）等により記憶（インデックスキャッシュに記憶）、管理されるようになっている。
【００３０】
つまり、コンテンツのレプリカを保存しているコンテンツ保持ノードのノード情報は、他のノードＮｎからの問い合わせに応じて提供可能なようにルートノードにより管理されている。
【００３１】
例えば、タイトルがＸＸＸの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ（コンテンツＩＤ）のルートノードであるノードＮ４により管理され、タイトルがＹＹＹの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ（コンテンツＩＤ）のルートノードであるノードＮ７により管理される。また、このようなルートノードは、例えば、コンテンツＩＤと最も近い（例えば、上位桁がより多く一致する）ノードＩＤを有するノードＮｎであるように定められる。
【００３２】
そして、あるノードＮｎのユーザが、所望するコンテンツのレプリカを取得したい場合、当該レプリカの取得を望むノードＮｎ（以下、「ユーザノード」という）は、当該ユーザにより選択されたコンテンツのコンテンツＩＤ及び自己のＩＰアドレス等を含むコンテンツ所在問合せ（検索）メッセージ（クエリ）を生成し、これを自己のＤＨＴを用いたルーティングテーブルにしたがって他のノードＮｎに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ（検索）メッセージを、ルートノードに向けて（ルートノード宛に）送出する（ルートノードにコンテンツのレプリカの所在を問い合わせる）。これにより、コンテンツ所在問合せ（検索）メッセージは、コンテンツＩＤをキーとするＤＨＴルーティングによって最終的にルートノードに到着することになる。
【００３３】
なお、各ノードＮｎにおいてユーザにより選択されるべきコンテンツのコンテンツ名、コンテンツＩＤ、及び公開期間等の情報は、例えばコンテンツ管理サーバＳＡから全てのノードＮｎに配信されるコンテンツカタログ情報に記述されている。コンテンツ投入後、公開開始日時が到来すると、各ノードＮｎにおいて取得対象となるコンテンツをコンテンツカタログ情報上で選択可能となり（言い換えれば、公開開始日時までは、コンテンツカタログ情報上で選択できない）、公開終了日時が到来すると、当該コンテンツをコンテンツカタログ情報上で選択できなくなる（例えば、当該公開終了日時が到来したコンテンツのコンテンツＩＤ及びコンテンツ名等がコンテンツカタログ情報上から削除される）。
【００３４】
また、上記コンテンツ所在問合せ（検索）メッセージに含まれるコンテンツＩＤは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。なお、ＤＨＴルーティングについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００３５】
上記コンテンツ所在問合せ（検索）メッセージを受信したルートノードは、これに含まれるコンテンツＩＤに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。こうしてインデックス情報を取得したユーザノードは、当該インデックス情報に含まれるあるコンテンツ保持ノードのＩＰアドレス等に基づいて当該コンテンツ保持ノードにアクセスして、コンテンツ要求を示すコンテンツ送信要求メッセージを送信し、そこからコンテンツのレプリカをダウンロード（取得）して再生することが可能になる。
【００３６】
なお、ルートノードは、当該インデックス情報に含まれるＩＰアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信し、これにより、ユーザノードは、上記コンテンツ保持ノードからそのレプリカをダウンロードすることもできる。また、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしているキャッシュノードから当該インデックス情報を取得することもできる。
【００３７】
また、ネットワークの混雑等の影響により、ルートノード又はコンテンツ保持ノード等からの応答が所定時間無かった場合、ユーザノードは、全てのコンテンツのレプリカを保有するコンテンツ配信サーバから当該レプリカをダウンロードする。
【００３８】
以上のようにユーザノードからのコンテンツ要求に応じて自己が保存しているコンテンツのレプリカを提供したコンテンツ保持ノードは、自己が記憶、管理している当該コンテンツの評価値を所定値減算（例えば、当該評価値を半分に減らす）することになる。そして更に、当該コンテンツ保持ノードは、減算した分の評価値をそのコンテンツのレプリカの提供を受けたユーザノードに対して与える（移譲する）ことになる。このようにするのは、コンテンツが１つ複製され２つになったため、その分、評価値を分割する趣旨である。
【００３９】
そして、コンテンツ保持ノードからダウンロードしたレプリカをコンテンツ保存領域に保存したユーザノードは、当該レプリカを保存したことをそのルートノードに知らせるために、当該レプリカのコンテンツＩＤ及び自己のノード情報が含まれるパブリッシュ（登録通知）メッセージを生成し、該パブリッシュメッセージを、そのルートノードに向けて（ルートノード宛に）送出する。
【００４０】
これにより、パブリッシュメッセージは、コンテンツ所在問合せ（検索）メッセージと同じように、コンテンツＩＤをキーとするＤＨＴルーティングによってルートノードに到着することになる。そして、該ルートノードは、受信したパブリッシュメッセージに含まれるノード情報及びコンテンツＩＤの組を含むインデックス情報を登録（インデックスキャッシュ領域に記憶）することになる。こうして、上記ユーザノードは、新たに、上記コンテンツのレプリカを保持するコンテンツ保持ノードとなる。特に、人気のあるコンテンツは、多くのユーザノードから要求されるので、コンテンツ分散保存システムＳにおいて保存されるレプリカの数は時間経過に応じて次第に多くなる（言い換えれば、当該コンテンツのレプリカを保存するコンテンツ保持ノードの数は増大する）。
【００４１】
ところで、ユーザノードにおいてコンテンツ保存領域に上記ダウンロードされる新たなレプリカを保存できるほどの空き容量がない場合には、当該ユーザノードは、当該レプリカに係るコンテンツの評価値と、既に保存されているレプリカに係るコンテンツの評価値とを比較（複数保存されている場合、夫々のコンテンツの評価値と比較）し、新たなレプリカに係るコンテンツの評価値が最も低くなければ、当該評価値が最も低いコンテンツであって既に保存されているコンテンツのレプリカを削除して空き容量を確保した上で、当該新たなレプリカを保存することになる。或いは、最も古いコンテンツのレプリカが削除された上で、当該新たなレプリカが保存される。人気のないコンテンツは、ユーザノードにダウンロードされる頻度よりも削除される頻度の方が高くなるので、コンテンツ分散保存システムＳにおいて利用可能となるレプリカの数は時間経過に応じて次第に少なくなる。
【００４２】
このように、本実施形態に係るコンテンツ分散保存システムＳでは、各コンテンツのレプリカ数が時間経過に応じて変動する。かかるレプリカ数（レプリカ量）は、コンテンツ管理サーバＳＡによりコンテンツ毎に管理される。
【００４３】
［２．コンテンツ管理サーバＳＡの構成及び機能等］
次に、図２を参照して、コンテンツ管理サーバＳＡ（公開期間制御装置一例）の構成及び機能について説明する。
【００４４】
図２は、コンテンツ管理サーバＳＡの概要構成例を示す図である。
【００４５】
コンテンツ管理サーバＳＡは、図２に示すように、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データおよびプログラム（本発明の制御処理プログラムを含む）を記憶するＲＯＭ等から構成されたコンピュータとしての制御部１１と、各種データ及び各種プログラム等を記憶保存するためのＨＤ（ハードディスク）等から構成された記憶部１２と、各種情報を表示するための表示部１３と、管理者等からの指示を受け付け当該指示に応じた指示信号を制御部１１に対して与える入力部１４と、ネットワーク８を通じてノードＮｎ等との間の情報の通信制御を行うための通信部１５と、を備えて構成され、これらは、バス１６を介して相互に接続されている。なお、上記制御処理プログラムは、例えば、ネットワーク８上の所定のサーバからダウンロードされるようにしてもよいし、例えば、ＣＤ−ＲＯＭ等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【００４６】
記憶部１２には、コンテンツ情報管理データベース１２１と、レプリカ数管理データベース１２２と、が構築されている。
【００４７】
コンテンツ情報管理データベース１２１には、コンテンツ分散保存システムＳに投入された各コンテンツの基本情報が蓄積されている。この基本情報には、例えば、コンテンツＩＤ、コンテンツ名、公開開始日時、及び公開終了日時等の情報が含まれる。
【００４８】
レプリカ数管理データベース１２２には、コンテンツ分散保存システムＳに投入された各コンテンツのレプリカ数が蓄積されている。
【００４９】
このような構成において、制御部１１は、ＣＰＵが記憶部１２等に記憶されたプログラム（本発明の制御処理プログラムを含む）を読み出して実行することにより、全体を統括制御し、本発明における公開期間設定手段、複製データ数算出手段、公開終了日時算出手段、表示制御手段、受付手段、及び公開終了日時情報通知手段等として機能する。
【００５０】
より具体的には、制御部１１は、新しいコンテンツをコンテンツ分散保存システムＳに投入する（すなわち、何れか１以上のノードＮｎに送信して保存させる）際に、当該コンテンツの公開開始日時と公開終了日時を設定する。この公開開始日時と公開終了日時、言い換えれば、公開期間は、例えば当該コンテンツへの予想アクセス数（人気度）等が考慮されて設定される。こうして設定された公開開始日時と公開終了日時は、当該コンテンツのコンテンツＩＤ等と共に、コンテンツ情報管理データベース１２１に蓄積される。
【００５１】
また、制御部１１は、複数のノードＮｎから収集された情報に基づいて各コンテンツのレプリカ数を所定時間毎に繰り返し算出する。例えば、コンテンツ分散保存システムＳに参加している各ノードＮｎは、コンテンツのレプリカのダウンロード履歴、再生履歴等のログ情報をコンテンツ管理サーバＳＡに対して定期的に送信する。或いは、各ノードＮｎは、当該ログ情報を該当するコンテンツのルートノードに対して定期的に送信するようにし、各ルートノードは、各ノードＮｎから収集したログ情報をコンテンツ管理サーバＳＡに対して送信するように構成しても良い。制御部１１は、このようにして収集したログ情報から、コンテンツ分散保存システムＳにおける各コンテンツのレプリカ数を求めることができる。こうして算出されたレプリカ数は、その算出時刻及びコンテンツＩＤと共にレプリカ数管理データベース１２２に蓄積される。
【００５２】
そして、制御部１１は、上記設定された公開開始日時からの時間経過に応じたレプリカ数の推移に基づいて新たな公開終了日時を算出し、既に設定されている公開終了日時と当該算出された新たな公開終了日時との差である最適化指数を算出する。
【００５３】
図３は、時間経過に応じたコンテンツＡとＢのレプリカ数の推移を示す図である。
【００５４】
図３の例において、実線は、公開開始日時から現在日時までの実際に算出されたレプリカ数の変化（曲線）を示し、破線は、現在日時以降に推定されるレプリカ数の変化（曲線）を示している。このように推定されるレプリカ数の変化曲線は、例えば、実線部分の傾きに基づき算出できる。これにより、コンテンツＡは、設定されている公開終了日時前のＸ１点（レプリカ数が収束（この例では、０）する予測日時）で視聴需要がなくなることが推定され、このＸ１点がコンテンツＡの新たな公開終了日時として算出（現在日時の時点で算出）される。一方、コンテンツＢは、設定されている公開終了日時が過ぎた後でも視聴需要があり、公開終了日時後のＸ２点で視聴需要がなくなることが推定され、このＸ２点がコンテンツＢの新たな公開終了日時として算出（現在日時の時点で算出）される。
【００５５】
こうして算出された新たな公開終了日時と、既に設定されている公開終了日時との差である例えば日数（図中、Ｔ１，Ｔ２）が最適化指数として算出（現在日時の時点で算出）されるのである。ここで、コンテンツＡについては、既に設定されている公開終了日時よりも前に、新たな公開終了日時が到来するので、最適化指数はマイナス（−）で表わされる。一方、コンテンツＢについては、既に設定されている公開終了日時よりも後に、新たな公開終了日時が到来するので、最適化指数はプラス（＋）で表わされる。
【００５６】
ところで、最適化指数の算出は、所定の時間間隔（例えば、１時間毎）で実行される。このとき、以下の条件（ａ）〜（ｅ）の何れにも該当しないコンテンツが最適化指数の算出対象となる。
（ａ）現在日時＜公開開始日時のもの
（ｂ）現在日時＞既に設定されている公開終了日時のもの
（ｃ）｜現在日時−公開開始日時｜が公開期間の所定％（例えば、１０％）に満たないもの（計算に必要なデータが得られないため）
（ｄ）レプリカ数が最大となった日時から公開期間の所定％（例えば、１０％）以上の時間が経過していないもの
（ｅ）レプリカ数が最大となった日時以降にレプリカ数が最小値を記録した日時以降、公開期間の所定％（例えば、１０％）以上の時間が経過しても最小値が更新されないもの（曲線の傾向に変化が発生した可能性があるため）
【００５７】
最適化指数は、レプリカ数が収束する曲線を基に計算されるものであるため、レプリカ数が増加しているコンテンツに対して算出することができない。上記（ｄ）及び（ｅ）の条件のものは、レプリカ数が増加傾向にあるためレプリカ数が収束する日時を予測することができない。ただし、そのようなコンテンツの場合、｜現在日時−公開開始日時｜が公開期間の例えば９０％以上となった場合、最適化指数を一定のプラス値として算出する（例えば、公開期間の５０％をプラス最適化指数として算出する）ことにより、公開終了日時を延長することが望ましい。
【００５８】
ここで、最適化指数が算出されるまでの計算過程の一例を説明する。
例えば、
Ｄｔｏ＝既に設定されている公開終了日時
Ｄｍａｘ＝レプリカ数が最大値を記録した日時
Ｄｎｏｗ＝現在日時
Ｒｍａｘ＝Ｄｍａｘ時点のレプリカ数
Ｒｎｏｗ＝現在日時におけるレプリカ数（Ｒｍａｘ＞Ｒｎｏｗ）
ｘ＝現在日時からレプリカ数が収束するまでの経過時間［秒］
ｙ＝レプリカ数の収束が予想される日時（新たな公開終了日時）
とすると、
Ｒｎｏｗ＋（（Ｒｎｏｗ−Ｒｍａｘ）／（Ｄｎｏｗ−Ｄｍａｘ））＊ｘ＝０・・・（１）
の関係式が成り立つ。なお、Ｄｔｏ、Ｄｍａｘ、及びＤｎｏｗは、例えば、1970/1/1 0:00:00からの経過［秒］で計算式に代入される（プログラム上での計算に適しているため）。
【００５９】
上記（１）式より、ｘ＝Ｒｎｏｗ（Ｄｎｏｗ−Ｄｍａｘ）／（Ｒｍａｘ−Ｒｎｏｗ）
となる。
【００６０】
そして、ｙ＝Ｄｎｏｗ＋ｘ、となり、最適化指数＝ｙ−Ｄｔｏ、となる。
【００６１】
以上のようにして、制御部１１は、最適化指数を算出すると、各コンテンツの最適化指数等を、表示部１３における管理ＩＦの画面上に表示する。
【００６２】
図４は、管理ＩＦの画面の一例を示す図である。
【００６３】
図４に示す画面例には、各コンテンツのコンテンツＩＤ、コンテンツ名、公開期限（公開終了日時）、レプリカ数、及び最適化指数が一覧表示されており、各最適化指数の隣には、「最適化」ボタンＢが表示されている。
【００６４】
このような表示状態において、ユーザとしての管理者が入力部１４を操作して、所望のコンテンツの「最適化」ボタンＢを指定（例えば、ポインタを合わせてマウスによりクリック）することにより再設定指示を行うと、制御部１１は、当該再設定指示を受け付け、既に設定されている公開終了日時に代えて上記算出された新たな公開終了日時を再設定する。例えば、制御部１１は、既に設定されている当該コンテンツの公開終了日時を削除して上記算出した新たな公開終了日時を、コンテンツ情報管理データベース１２１に登録し、且つ、コンテンツＩＤ及び当該新たな公開終了日時を公開期限変更リストに記述（セット）、或いは次回配信予定のコンテンツカタログ情報に記述する。
【００６５】
これにより、管理者は、表示された最適化指数を確認、判断してから、必要であれば、公開終了日時の延長又は短縮を行うことができ、例えば最適化指数が小さければ再設定しないようにすることもできる。
【００６６】
例えば、コンテンツＩＤ“00000002”のコンテンツの「最適化」ボタンＢが指定された場合、既に設定されていた公開終了日時から「−１０」日にあたる日時が新たな公開終了日時として再設定される。
【００６７】
なお、制御部１１は、ユーザからの再設定指示が無くても、上記新たな公開終了日時を算出する度に、既に設定されている公開終了日時に代えて当該算出された新たな公開終了日時を再設定（自動再設定）するように構成しても良く、この構成によれば、管理者が最適化指数を確認しなくても、公開終了日時の延長又は短縮を行うことができる。
【００６８】
そして、制御部１１は、再設定が行われたときや、設定時刻が到来したときに、上記再設定された公開終了日時及び対応するコンテンツＩＤを示す情報を、コンテンツ分散保存システムＳに参加している複数のノードＮｎに対して通知する。例えば、上記再設定された公開終了日時及び対応するコンテンツＩＤが記述された公開期限変更リスト、又はコンテンツカタログ情報を各ノードＮｎに対して配信する。かかる配信は、例えば、特開２００７−０５３６６２号公報にて開示されたＤＨＴマルチキャスト（マルチキャストメッセージ転送処理）により行うようにすれば、コンテンツ分散保存システムＳに参加している全てのノードＮｎに対して効率良く配信することができるので望ましい。
【００６９】
［３．ノードＮｎの構成及び機能等］
次に、図５を参照して、ノードＮｎの構成及び機能について説明する。
【００７０】
図５は、ノードＮｎの概要構成例を示す図である。
【００７１】
各ノードＮｎは、図５に示すように、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データ及びプログラムを記憶するＲＯＭ等から構成された制御部２１と、各種データ（例えば、コンテンツデータのレプリカ、インデックス情報、ＤＨＴ等）及び各種プログラム等を記憶保存するためのＨＤ（ハードディスク）等から構成された記憶部２２と、受信されたコンテンツデータのレプリカ等を一時蓄積するバッファメモリ２３と、コンテンツデータのレプリカに含まれるエンコードされたビデオデータ（映像情報）およびオーディオデータ（音声情報）等をデコード（データ伸張や復号化等）するデコーダ部２４と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部２５と、当該映像処理部２５から出力されたビデオ信号に基づき映像表示するＣＲＴ，液晶ディスプレイ等の表示部２６と、上記デコードされたオーディオデータをアナログオーディオ信号にＤ（Digital）／Ａ（Analog）変換した後これをアンプにより増幅して出力する音声処理部２７と、当該音声処理部２７から出力されたオーディオ信号を音波として出力するスピーカ２８と、ネットワーク８を通じて他のノードＮｎやコンテンツ管理サーバＳＡとの間の情報の通信制御を行うための通信部２９と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部２１に対して与える入力部（例えば、キーボード、マウス、或いは、操作パネル等）３０と、を備えて構成され、制御部２１、記憶部２２、バッファメモリ２３、デコーダ部２４、通信部２９、及び入力部３０はバス３１を介して相互に接続されている。なお、ノードＮｎとしては、パーソナルコンピュータ、ＳＴＢ（Set Top Box）、或いは、ＴＶ受信機等を適用可能である。
【００７２】
また、記憶部２２には、上述したコンテンツカタログ情報が記憶されている。更に、記憶部２２に保存されているレプリカに対応するコンテンツＩＤ、そのコンテンツの評価値等の情報を登録する評価値管理テーブルが記憶部２２に記憶されている。
【００７３】
このような構成において、制御部２１は、ＣＰＵが記憶部２２等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、コンテンツ分散保存システムＳへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及びコンテンツ保持ノードの少なくとも何れか一つのノードとしての処理を行う。
【００７４】
また、コンテンツ管理サーバＳＡからノードＮｎに通知された新たな公開終了日時及び対応するコンテンツＩＤを示す情報は、当該各ノードＮｎにおいて反映、つまり、コンテンツカタログ情報上で公開終了日時が更新される。
【００７５】
［４．コンテンツ分散保存システムＳの動作］
次に、コンテンツ分散保存システムＳの動作について説明する。
【００７６】
図６は、コンテンツ管理サーバＳＡにおける制御部１１の処理を示すフローチャートである。
【００７７】
図６の処理は、例えば、所定の時間間隔（例えば、１時間毎）で自動的に開始されるか、或いは管理者から入力部１４を介して開始指示があったときに開始される。図６の処理が開始されると、制御部１１は、コンテンツ情報管理データベース１２１及びレプリカ数管理データベース１２２から、コンテンツＩＤ、公開開始日時、公開終了日時、及びレプリカ数の推移を示す情報をコンテンツ毎に取得し（ステップＳ１）、最適化指数の算出対象のコンテンツがあるか否かを判断する（ステップＳ２）。例えば、上述した条件（ａ）〜（ｅ）の何れにも該当しないコンテンツがある場合には最適化指数の算出対象のコンテンツがあると判断され（ステップＳ２：ＹＥＳ）、ステップＳ３に進み、当該条件の何れにも該当しないコンテンツがない場合には最適化指数の算出対象のコンテンツがないと判断され（ステップＳ２：ＮＯ）、当該処理は終了する。
【００７８】
ステップＳ３では、制御部１１は、最適化指数の算出対象のコンテンツのうちの一つを特定する。
【００７９】
次いで、制御部１１は、上述したように、特定したコンテンツの公開開始日時からの時間経過に応じたレプリカ数の推移に基づいて新たな公開終了日時を算出し（ステップＳ４）、一時的にＲＡＭに記憶しておく。
【００８０】
次いで、制御部１１は、上記ステップＳ３で特定されていないコンテンツがあるか否かを判別し（ステップＳ５）、未だ特定されていないコンテンツがある場合（ステップＳ５：ＹＥＳ）にはステップＳ３に戻り未だ特定されていないコンテンツを特定して上記と同様の処理を行う。一方、上記ステップＳ３で特定されていないコンテンツがない場合には（ステップＳ５：ＮＯ）、ステップＳ６に進む。
【００８１】
ステップＳ６では、制御部１１は、自動再設定が選択されているか否かを判別し、自動再設定が選択されていない場合には（ステップＳ６：ＮＯ）、ステップＳ７に進み、自動再設定が選択されている場合には（ステップＳ６：ＹＥＳ）、ステップＳ１２に進む。なお、上記自動再設定の選択は例えば予め管理者により初期設定でなされる。
【００８２】
ステップＳ７では、制御部１１は、上記新たな公開終了日時が算出された各コンテンツの既に設定されている公開終了日時と当該算出された新たな公開終了日時との差である最適化指数を算出する。
【００８３】
次いで、制御部１１は、上記算出した各コンテンツの最適化指数等を、例えば図４に示すように表示部１３における管理ＩＦの画面上に表示する（ステップＳ８）。
【００８４】
次いで、制御部１１は、管理ＩＦの画面上に表示された「最適化」ボタンＢが指定されたか否かを判別しており（ステップＳ９）、「最適化」ボタンＢが指定された場合には（ステップＳ９：ＹＥＳ）、当該再設定指示を受け付け、当該ボタンＢに対応するコンテンツの既に設定されている公開終了日時に代えて上記算出した新たな公開終了日時を再設定し（ステップＳ１０）、ステップＳ９に戻る。
【００８５】
一方、「最適化」ボタンＢが指定されていない場合には（ステップＳ９：ＮＯ）、制御部１１は、再設定終了指示があったか否かを判別し（ステップＳ１１）、例えば管理者から入力部１４を介して再設定終了指示があった場合には（ステップＳ１１：ＹＥＳ）、再設定された公開終了日時の通知処理を行い（ステップＳ１３）、当該処理を終了する。一方、終了指示がない場合には（ステップＳ１１：ＮＯ）、ステップＳ９に戻る。
【００８６】
ステップＳ１２では、制御部１１は、上記新たな公開終了日時が算出された各コンテンツの既に設定されている公開終了日時に代えて当該算出された新たな公開終了日時を再設定し、ステップＳ１３に進む。
【００８７】
そして、ステップＳ１３の通知処理では、制御部１１は、上述したように、例えば、再設定された公開終了日時及び対応するコンテンツＩＤが記述された公開期限変更リスト、又はコンテンツカタログ情報を各ノードＮｎに対して配信する。なお、かかる配信は、コンテンツ管理サーバＳＡが行うのではなく、全てのコンテンツのレプリカを保有するコンテンツ配信サーバが行うように構成しても良い。
【００８８】
こうして、各ノードＮｎに通知された新たな公開終了日時及び対応するコンテンツＩＤを示す情報は、当該各ノードＮｎにおいて反映、つまり、コンテンツカタログ情報上で公開終了日時が更新されることになる（更新後の公開終了日時に基づきユーザによるコンテンツの選択可否が決まる）。
【００８９】
なお、公開終了日時を経過したコンテンツのレプリカを保存しているコンテンツ保持ノードは、当該レプリカを削除する。例えば、当該コンテンツ保持ノードは、配信されたコンテンツカタログ情報を参照して当該現在日時が公開終了日時を経過しているコンテンツを検索してそのレプリカを削除する。或いは、当該コンテンツ保持ノードは、コンテンツカタログ情報からコンテンツＩＤ等の情報が削除されたコンテンツ（公開終了日時を経過したため、コンテンツ管理サーバＳＡにより削除された）のレプリカを削除する。或いは、当該コンテンツ保持ノードは、コンテンツ管理サーバＳＡ又は公開終了日時を経過したコンテンツのルートノードからの削除要求を受けたときにそのレプリカを削除する。更に、公開終了日時以後のコンテンツのレプリカは、コンテンツ配信サーバからも削除される。
【００９０】
以上説明したように、上記実施形態によれば、コンテンツ管理サーバＳＡは、設定された公開開始日時からの時間経過に応じたレプリカ数の推移に基づいて新たな公開終了日時を算出し、既に設定されている公開終了日時に代えて当該算出された公開終了日時を再設定するように構成したので、コンテンツの視聴需要の変化を反映させた公開期間の制御及び管理を効率良く行うことができる。
【００９１】
また、レプリカ数の推移に応じた公開終了日時の再設定により、コンテンツのレプリカを保存しているコンテンツ保持ノードやコンテンツ配信サーバにおいて利用需要がないコンテンツを公開終了日時まで無駄に保存しなくても良くなるので、ハードディスク等の記憶容量を減らし効率良く使用することができる。
【００９２】
また、コンテンツ管理サーバＳＡは、既に設定されている公開終了日時と当該算出された新たな公開終了日時との差である最適化指数を算出し、当該最適化指数等を管理ＩＦの画面上に表示し、管理者からの再設定指示があったときに、既に設定されている公開終了日時に代えて当該算出された公開終了日時を再設定する構成によれば、管理者は、表示された最適化指数を確認、判断してから、必要であれば、公開終了日時の延長又は短縮を行うことができ、例えば最適化指数が小さければ再設定しないようにすることもできる。更に、最適化指数を定期的に算出、反映することにより、コンテンツの視聴需要の変化を常に反映させた効率の良いコンテンツ管理が可能となる。
【００９３】
なお、上記実施形態におけるコンテンツ分散保存システムＳは、ＤＨＴを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
【図面の簡単な説明】
【００９４】
【図１】本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【図２】コンテンツ管理サーバＳＡの概要構成例を示す図である。
【図３】時間経過に応じたコンテンツＡとＢのレプリカ数の推移を示す図である。
【図４】管理ＩＦの画面の一例を示す図である。
【図５】ノードＮｎの概要構成例を示す図である。
【図６】コンテンツ管理サーバＳＡにおける制御部１１の処理を示すフローチャートである。
【符号の説明】
【００９５】
８  ネットワーク
９  オーバーレイネットワーク
１１  制御部
１２  記憶部
１３  表示部
１４  入力部
１５  通信部
１６  バス
２１  制御部
２２  記憶部
２３  バッファメモリ
２４  デコーダ部
２５  映像処理部
２６  表示部
２７  音声処理部
２８  スピーカ
２９  通信部
３０  入力部
３１  バス
ＳＡ  コンテンツ管理サーバ
Ｎｎ  ノード
Ｓ  コンテンツ分散保存システム
【図１】
2010102651.tif 000003
【図２】
2010102651.tif 000004
【図３】
2010102651.tif 000005
【図４】
2010102651.tif 000006
【図５】
2010102651.tif 000007
【図６】
2010102651.tif 000008