(57)【要約】【課題】コンテンツを記憶するキャッシュ領域から複合コンテンツを構成するコンテンツが削除されても、複合コンテンツを構成するコンテンツの再生出力を迅速に行うことが可能なノード装置、ノード処理プログラム、及びコンテンツ削除方法を提供する。【解決手段】ノード装置は、複合コンテンツを構成する、時系列的に出力される第一コンテンツと、当該第一コンテンツの出力制御に必要な第二コンテンツと、のいずれか一方を少なくとも記憶する。そして、ノード装置は、記憶されている前記コンテンツを削除する場合に、複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツを優先して削除する。【選択図】図３
2011248715.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して互いに通信可能な複数のノード装置を備え、１以上のコンテンツが１つ以上のノード装置に保存され、各ノード装置は夫々の前記コンテンツに付与された固有の識別情報に基づいて他のノード装置に保存された前記コンテンツを取得するように構成された配信システムにおける前記ノード装置であって、
複数のコンテンツから構成される複合コンテンツの中で、時系列的に出力される第一コンテンツと、当該第一コンテンツの出力制御に必要な第二コンテンツと、のいずれか一方を少なくとも記憶する記憶手段と、
前記記憶手段に記憶されている前記コンテンツを削除する場合に、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツを優先して削除する削除手段と、
を備えることを特徴とするノード装置。
【請求項２】
前記記憶手段には、前記複合コンテンツを構成する、複数の前記第一コンテンツと、前記第二コンテンツとのいずれか一方が少なくとも記憶されており、
前記削除手段は、前記複数の第一コンテンツの中で、データ量の大きい前記第一コンテンツから優先的に削除することを特徴とする請求項１に記載のノード装置。
【請求項３】
前記記憶手段には、前記第一コンテンツとして、動画により構成されたコンテンツと、静止画又はテキストにより構成されたコンテンツとが少なくとも記憶されており、
前記削除手段は、静止画又はテキストにより構成されたコンテンツよりも、前記動画により構成されたコンテンツから優先的に削除することを特徴とする請求項１又は２に記載のノード装置。
【請求項４】
前記記憶手段には、前記複合コンテンツを構成する、前記第一コンテンツと、前記第二コンテンツと、前記複合コンテンツを構成する各前記コンテンツに付与された識別情報であって、複数のノード装置に分散保存された複数のコンテンツを検索するための識別情報が記述された第三コンテンツとが少なくとも記憶されており、
前記削除手段は、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツから優先的に削除することを特徴とする請求項１乃至３の何れか一項に記載のノード装置。
【請求項５】
前記削除手段は、所定時間利用されない前記第二コンテンツを削除することを特徴とする請求項１乃至４の何れか一項に記載のノード装置。
【請求項６】
前記第二コンテンツは、前記第一コンテンツの出力タイミングを制御するためのファイルと、前記第一コンテンツを所定のディスプレイに表示する表示制御を行うためのファイルの少なくとも何れか一方から構成されることを特徴とする請求項１乃至５の何れか一項に記載のノード装置。
【請求項７】
ネットワークを介して互いに通信可能な複数のノード装置を備え、１以上のコンテンツが１つ以上のノード装置に保存され、各ノード装置は夫々の前記コンテンツに付与された固有の識別情報に基づいて他のノード装置に保存された前記コンテンツを取得するように構成された配信システムにおける前記ノード装置に含まれるコンピュータに、
複数のコンテンツから構成される複合コンテンツの中で、時系列的に出力される第一コンテンツと、当該第一コンテンツの出力制御に必要な第二コンテンツと、のいずれか一方を少なくとも記憶するステップと、
前記記憶されている前記コンテンツを削除する場合に、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツを優先して削除するステップと、
を実行させるためのノード処理プログラム。
【請求項８】
ネットワークを介して互いに通信可能な複数のノード装置を備え、１以上のコンテンツが１つ以上のノード装置に保存され、各ノード装置は夫々の前記コンテンツに付与された固有の識別情報に基づいて他のノード装置に保存された前記コンテンツを取得するように構成された配信システムにおけるコンテンツ削除方法であって、
前記ノード装置が、複数のコンテンツから構成される複合コンテンツの中で、時系列的に出力される第一コンテンツと、当該第一コンテンツの出力制御に必要な第二コンテンツと、のいずれか一方を少なくとも記憶するステップと、
前記ノード装置が、前記記憶されている前記コンテンツを削除する場合に、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツを優先して削除するステップと、
を含むことを特徴とするコンテンツ削除方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））型の配信システムの技術分野に関する。
【背景技術】
【０００２】
近年、ピアツーピア型の配信システムにおいて、一つのコンテンツデータが複数に分割された各分割コンテンツデータを、複数のノード装置に分散保存した配信システムが知られている（特許文献１参照）。一つの分割コンテンツデータのデータ量は例えば数Ｍbyteになっている。以下、コンテンツデータを「コンテンツ」という。特許文献１に開示された配信システムでは、各分割コンテンツには固有のコンテンツＩＤが付与されている。そして、各ノード装置は、分割コンテンツのコンテンツＩＤに基づいて他のノード装置から分割コンテンツ単位で分割コンテンツを取得すること可能になっている。
【０００３】
また、ピアツーピア型の配信システムにおいて、ノード装置により取得されたコンテンツは、ノード装置に備えられる記憶部における所定のキャッシュ領域に記憶保存される。このキャッシュ領域の記憶容量には限界があるため、各ノード装置は、例えば、記憶されているコンテンツの総データ量が一定量を超えた場合、キャッシュ領域から一部のコンテンツを削除するコンテンツ削除処理を行うようになっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−０４７０６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、近年、例えばＳＷＦ（Shockwave Flash）等によって構成された、Flash Playerで再生可能な複合コンテンツが知られている。この複合コンテンツは、例えば、動画等により構成されたリソースファイルと、このリソースファイルに登録された動画等の出力制御に必要な制御ファイルから構成される。このような複合コンテンツをピアツーピア型の配信システムに投入する場合、リソースファイルと制御ファイルを、夫々一つのコンテンツとして何れかのノード装置に保存させることとなる。この場合において、上記コンテンツ削除処理により、複合コンテンツを構成するリソースファイルと制御ファイルのうち、キャッシュ領域から制御ファイルが削除されることが想定される。
【０００６】
しかしながら、制御ファイルがキャッシュ領域から削除されていると、これに対応するリソースファイルを再生する場合、ノード装置は他のノード装置から制御ファイルを取得する必要がある。リソースファイルの再生において、制御ファイルは、複合コンテンツの中で最初に必要になる。そのため、ノード装置が、リソースファイルの再生時に他のノード装置から制御ファイルを取得するようなケースでは、リソースファイルの再生までに無駄な時間がかかってしまうという問題がある。
【０００７】
そこで、本発明は、以上の問題等に鑑みてなされたものであり、コンテンツを記憶するキャッシュ領域から複合コンテンツを構成するコンテンツが削除されても、複合コンテンツを構成するコンテンツの再生出力を迅速に行うことが可能なノード装置、ノード処理プログラム、及びコンテンツ削除方法を提供すること等を課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、請求項１に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、１以上のコンテンツが１つ以上のノード装置に保存され、各ノード装置は夫々の前記コンテンツに付与された固有の識別情報に基づいて他のノード装置に保存された前記コンテンツを取得するように構成された配信システムにおける前記ノード装置であって、複数のコンテンツから構成される複合コンテンツの中で、時系列的に出力される第一コンテンツと、当該第一コンテンツの出力制御に必要な第二コンテンツと、のいずれか一方を少なくとも記憶する記憶手段と、前記記憶手段に記憶されている前記コンテンツを削除する場合に、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツを優先して削除する削除手段と、を備えることを特徴とする。
【０００９】
請求項２に記載の発明は、請求項１に記載のノード装置において、前記記憶手段には、前記複合コンテンツを構成する、複数の前記第一コンテンツと、前記第二コンテンツとのいずれか一方が少なくとも記憶されており、前記削除手段は、前記複数の第一コンテンツの中で、データ量の大きい前記第一コンテンツから優先的に削除することを特徴とする。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載のノード装置において、前記記憶手段には、前記第一コンテンツとして、動画により構成されたコンテンツと、静止画又はテキストにより構成されたコンテンツとが少なくとも記憶されており、前記削除手段は、静止画又はテキストにより構成されたコンテンツよりも、前記動画により構成されたコンテンツから優先的に削除することを特徴とする。
【００１１】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載のノード装置において、前記記憶手段には、前記複合コンテンツを構成する、前記第一コンテンツと、前記第二コンテンツと、前記複合コンテンツを構成する各前記コンテンツに付与された識別情報であって、複数のノード装置に分散保存された複数のコンテンツを検索するための識別情報が記述された第三コンテンツとが少なくとも記憶されており、前記削除手段は、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツから優先的に削除することを特徴とする。
【００１２】
請求項５に記載の発明は、請求項１乃至４の何れか一項に記載のノード装置において、前記削除手段は、所定時間利用されない前記第二コンテンツを削除することを特徴とする。
【００１３】
請求項６に記載の発明は、請求項１乃至５の何れか一項に記載のノード装置において、前記第二コンテンツは、前記第一コンテンツの出力タイミングを制御するためのファイルと、前記第一コンテンツを所定のディスプレイに表示する表示制御を行うためのファイルの少なくとも何れか一方から構成されることを特徴とする。
【００１４】
請求項７に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、１以上のコンテンツが１つ以上のノード装置に保存され、各ノード装置は夫々の前記コンテンツに付与された固有の識別情報に基づいて他のノード装置に保存された前記コンテンツを取得するように構成された配信システムにおける前記ノード装置に含まれるコンピュータに、複数のコンテンツから構成される複合コンテンツの中で、時系列的に出力される第一コンテンツと、当該第一コンテンツの出力制御に必要な第二コンテンツと、のいずれか一方を少なくとも記憶するステップと、前記記憶されている前記コンテンツを削除する場合に、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツを優先して削除するステップと、を実行させるためのノード処理プログラムである。
【００１５】
請求項８に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、１以上のコンテンツが１つ以上のノード装置に保存され、各ノード装置は夫々の前記コンテンツに付与された固有の識別情報に基づいて他のノード装置に保存された前記コンテンツを取得するように構成された配信システムにおけるコンテンツ削除方法であって、前記ノード装置が、複数のコンテンツから構成される複合コンテンツの中で、時系列的に出力される第一コンテンツと、当該第一コンテンツの出力制御に必要な第二コンテンツと、のいずれか一方を少なくとも記憶するステップと、前記ノード装置が、前記記憶されている前記コンテンツを削除する場合に、前記複合コンテンツを構成する前記コンテンツのうち、前記第一コンテンツを優先して削除するステップと、を含むことを特徴とする。
【発明の効果】
【００１６】
請求項１、７、及び８に記載の発明によれば、コンテンツのキャッシュ領域から複合コンテンツを構成するコンテンツを削除する場合に、時系列的に出力される第一コンテンツを優先して削除するので、第一コンテンツの出力制御に必要な第二コンテンツをキャッシュ領域に残しておくことができる。従って、複合コンテンツを構成する複数のコンテンツの再生出力を迅速に行うことができる。
【００１７】
請求項２に記載の発明によれば、データ量の大きい第一コンテンツから優先的に削除することで、より多くのコンテンツをキャッシュ領域に記憶することができるので、コンテンツのキャッシュ領域を有効に活用することができる。
【００１８】
請求項３に記載の発明によれば、データ量の大きい動画により構成されたコンテンツから優先的に削除することで、より多くのコンテンツをキャッシュ領域に記憶することができるので、コンテンツのキャッシュ領域を有効に活用することができる。
【００１９】
請求項４に記載の発明によれば、複合コンテンツを構成する各コンテンツを取得するための情報が記述された第三コンテンツをキャッシュ領域に残しておくことができる。従って、複合コンテンツを構成するコンテンツの再生出力を迅速に行うことができる。
【００２０】
請求項５に記載の発明によれば、所定期間利用されなくなった第二コンテンツを効率良く削除することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。
【図２】ノードＮｎの概要構成例を示すブロック図である。
【図３】複合コンテンツの投入から削除までの様子を示す概念図である。
【図４】ノードＮ１の制御部１１における処理を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ配信システムに本発明を適用した場合の実施形態である。
【００２３】
［１．コンテンツ配信システムの構成及び動作概要］
始めに、図１を参照して、本実施形態に係るコンテンツ配信システムの構成及び動作概要について説明する。図１は、本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。
【００２４】
図１に示すように、本実施形態に係るコンテンツ配信システムＳは、コンテンツ管理サーバＭＳ、及び複数のノード装置Ｎｎ（ｎ＝１，２，３・・・ｋ）等を備えて構成されている。コンテンツ管理サーバＭＳ及び各ノード装置Ｎｎは、インターネット等からなるネットワークＮＷに接続されている。なお、ノード装置を、以下、「ノード」という。また、各ノードＮｎには固有の識別情報であるノードＩＤが割り当てられている。また、コンテンツ管理サーバＭＳは、コンテンツ配信システムＳ内で利用可能な全てのコンテンツのオリジナルを管理している。
【００２５】
コンテンツ配信システムＳには、オーバーレイネットワークＯＮが形成されている。オーバーレイネットワークＯＮは、ネットワークＮＷを介して互いに通信可能な複数のノードＮｎにより構成される仮想的なリンクを構成する論理的なネットワークである。また、オーバーレイネットワークＯＮは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。分散ハッシュテーブルを、以下、「ＤＨＴ（Distributed Hash Table）」という。なお、ＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００２６】
そして、コンテンツ管理サーバＭＳは、例えばコンテンツ提供者の端末からアップロードされたコンテンツをコンテンツ配信システムＳ内に投入する。ここで、コンテンツの投入とは、オーバーレイネットワークＯＮに参加している１以上のノードＮｎに、新たなコンテンツを保存させることをいう。なお、コンテンツを保存しているノードＮｎを、以下、「コンテンツ保持ノード」という。投入された各コンテンツには固有の識別情報であるコンテンツＩＤが付与されている。コンテンツＩＤは、複数のノードＮｎに分散保存されている複数のコンテンツを検索するためのものである。そして、各ノードＮｎは、コンテンツＩＤに基づき、他のノードＮｎに保存されているコンテンツを、オーバーレイネットワークＯＮを介して取得可能になっている。このように取得されたコンテンツはノードＮｎに保存される。こうして、コンテンツは、オーバーレイネットワークＯＮにおける複数のコンテンツ保持ノードに分散されて保存されることになる。
【００２７】
また、本実施形態に係るコンテンツ配信システムＳにおいては、複数のコンテンツから構成される複合コンテンツが投入される場合がある。複合コンテンツは、複数のコンテンツが例えばアーカイブ化により一つのファイルに纏められたものである。投入された複合コンテンツは、コンテンツ管理サーバＭＳにより管理される。複合コンテンツを構成するコンテンツには、時系列的に出力される第一コンテンツと、第一コンテンツの出力制御に必要な第二コンテンツと、がある。なお、以下の説明では、第一コンテンツとしてリソースファイルを、第二コンテンツとして制御ファイルを、夫々例にとって説明する。
【００２８】
ここで、リソースファイルとしては、例えば、動画ファイル、画像ファイル、音声ファイル、テキストファイルが挙げられる。動画ファイルは、動画により構成されたコンテンツである。動画ファイルとしては、ＦＬＶファイル等がある。また、画像ファイルは、静止画により構成されたコンテンツである。画像ファイルとしては、ＢＭＰファイル、ＪＰＥＧファイル、ＧＩＦファイル等がある。また、音声ファイルは、音声により構成されたコンテンツである。音声ファイルとしては、ＭＰ３ファイル等がある。また、テキストファイルは、テキストにより構成されたコンテンツである。テキストファイルとしては、ＸＭＬファイル等がある。また、１つの複合コンテンツを構成するリソースファイルは、１つとは限らず複数の場合もある。
【００２９】
また、制御ファイルは、例えば、以下の（ｉ）と（ｉｉ）の少なくとも何れか一方のファイルから構成される。
（ｉ）リソースファイルに登録された動画等のリソースの出力タイミングを制御するためのファイル
（ｉｉ）リソースファイルに登録された画像やテキスト等のリソースを所定のディスプレイに表示する表示制御を行うためのファイル
ここで、表示制御には、例えば、画像やテキストの表示位置の制御が含まれる。また、表示制御には、画像の拡大又は縮小の制御、画像の解像度の制御が含まれても良い。
【００３０】
制御ファイルの具体例としては、ＳＷＦファイル等がある。ＳＷＦファイルには、動画等のリソースの出力制御を行うためのスプリプトがAction Scriptと呼ばれる言語で記述されている。このスプリプトにより、リソースファイルに登録された動画等のリソースの出力タイミングを制御することができる。言い換えれば、出力タイミングとは、各動画等の再生開始位置を示す。再生開始位置は、例えば、リソースファイルに登録された動画の出力が開始されてから、経過した時間である。各動画ごとの再生が開始される時間が、リソースファイルに登録されていても良い。また、リソースが画像やテキストであれば、このスプリプトにより、画面上における表示位置を制御することができる。言い換えれば、制御ファイルには、表示画面上における画像やテキストの表示位置を示す情報が含まれても良い。さらに、制御ファイルには、画像やテキストの出力タイミング、または、上述した再生開始位置を示す情報が含まれても良い。また、リソースが画像であれば、上記スプリプトにより、画像の拡大又は縮小を制御することができる。また、リソースが画像であれば、上記スプリプトにより、画像の解像度を制御することができる。言い換えれば、制御ファイルには、画像の拡大又は縮小や、画像の解像度を示す情報が含まれても良い。更に、制御ファイルには、リソースファイルの出力制御をユーザの操作指示に応じて行うためのユーザインターフェースに関する情報が含まれても良い。また、１つの複合コンテンツを構成する制御ファイルは、１つとは限らず複数の場合もある。ただし、ＳＷＦファイルの場合も、メインのＳＷＦファイルは１つであり、これ以外はサブのＳＷＦファイルとなる。サブのＳＷＦファイルは、メインのＳＷＦファイルに記述されたスプリプトにより呼び出されて使用されることになる。また、リソースファイルは、ＳＷＦファイル中に格納することもできる。リソースファイルは、ファイルサイズが小さい場合もあり、ＳＷＦファイル中に格納することもできる。
【００３１】
なお、複合コンテンツ以外のコンテンツは、リソースファイルからなる。複合コンテンツ以外のコンテンツを、以下、「通常コンテンツ」という。通常コンテンツとしては、ＷＭＶファイル等がある。
【００３２】
そして、複合コンテンツを構成するリソースファイル及び制御ファイルには、夫々、固有のコンテンツＩＤが付与される。例えば、コンテンツＩＤは、リソースファイル及び制御ファイルのヘッダに記述される。このようにコンテンツＩＤが付与されたリソースファイル及び制御ファイルは、１つのコンテンツとしてコンテンツ配信システムＳ内に投入される。
【００３３】
ところで、複合コンテンツを構成する各ファイルのコンテンツＩＤ及びファイル名は、例えば、複合コンテンツのメタファイルに記述されている。複合コンテンツのメタファイルとは、複合コンテンツを構成する各ファイルをオーバーレイネットワークＯＮを介して検索し取得するためのファイルである。また、複合コンテンツのメタファイルには、この複合コンテンツのコンテンツＩＤが付与される。コンテンツＩＤが付与された複合コンテンツのメタファイルは、１つのコンテンツとしてコンテンツ配信システムＳ内に投入される。なお、複合コンテンツのメタファイルは、リソースファイル及び制御ファイルと同様、複合コンテンツを構成する一ファイルとして位置づけることもできる。
【００３４】
また、コンテンツの所在を示す情報は、インデックス情報として、コンテンツの所在を管理しているノードＮｎに記憶される。このコンテンツとしては、上述した各ファイルも該当する。コンテンツの所在を管理しているノードＮｎを、以下、「ルートノード」という。このインデックス情報には、コンテンツを保存しているコンテンツ保持ノードのノード情報と、コンテンツのコンテンツＩＤとの組が含まれる。ノード情報には、コンテンツ保持ノードのＩＰアドレス、ポート番号、及びノードＩＤが含まれる。ルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤが割り当てられたノードＮｎであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。
【００３５】
そして、ノードＮｎは、複合コンテンツを取得する場合、先ず、複合コンテンツのコンテンツＩＤに基づき、オーバーレイネットワークＯＮを介してコンテンツ保持ノードから複合コンテンツのメタファイルを取得する。次に、ノードＮｎは、取得した複合コンテンツのメタファイルに記述された各コンテンツＩＤに基づき、夫々のファイルを、オーバーレイネットワークＯＮを介してコンテンツ保持ノードから取得する。なお、ノードＮｎは、複合コンテンツを構成する各ファイルをコンテンツ管理サーバＭＳから取得することもできる。以上のように取得されたメタファイル、リソースファイル、及び制御ファイルは、ノードＮｎに備えられる記憶部に設けられたコンテンツキャッシュ領域に記憶保存される。そして、本実施形態では、コンテンツキャッシュ領域からファイルが削除される場合に、ノードＮｎは、これらのファイルのうち、リソースファイルを優先して削除するようになっている。
【００３６】
［２．ノードＮｎの構成及び機能］
次に、図２を参照して、ノードＮｎの構成及び機能について説明する。
【００３７】
図２は、ノードＮｎの概要構成例を示すブロック図である。
【００３８】
ノードＮｎは、図２に示すように、制御部１１、記憶部１２、バッファメモリ１３、デコーダ部１４、映像処理部１５、表示部１６、音声処理部１７、スピーカ１８、通信部１９、及び入力部１９ａ等を備えて構成される。制御部１１、記憶部１２、バッファメモリ１３、デコーダ部１４、映像処理部１５、表示部１６、音声処理部１７、通信部１９、及び入力部１９ａは、バス１９ｂを介して相互に接続されている。なお、ノードＮｎとしては、パーソナルコンピュータ、ＳＴＢ（Set Top Box）、ＴＶ受信機、或いは、カラオケ装置等が適用可能である。
【００３９】
記憶部１２は、例えばハードディスクドライブ等から構成される。記憶部１２には、オペレーティングシステム、Ｐ２Ｐプログラム、Ｆｌａｓｈプログラム（Flash Player）等が記憶されている。また、記憶部１２に設けられたコンテンツキャッシュ領域には、コンテンツ保持ノード等から取得されたコンテンツが記憶保存されている。なお、コンテンツキャッシュ領域におけるコンテンツには、コンテンツがコンテンツ保持ノード等から取得された日付を示す取得日付情報が付加されている。更に、コンテンツキャッシュ領域におけるコンテンツには、コンテンツがユーザにより利用された日付を示す利用日付情報が付加されている。「コンテンツがユーザにより利用」とは、ユーザによる再生指示に応じてコンテンツが再生出力されることを意味する。なお、上記日付情報には、年月や時刻も含んでよい。
【００４０】
また、オーバーレイネットワークＯＮに参加しているノードＮｎの記憶部１２には、コンテンツカタログ情報及びＤＨＴを用いたルーティングテーブル等が記憶されている。
【００４１】
ここで、コンテンツカタログ情報には、コンテンツ配信システムＳにおいて利用可能な各コンテンツのレコードが含まれている。コンテンツのレコードには、コンテンツのコンテンツＩＤ、コンテンツ名、コンテンツのファイルサイズ、及びキーワード等が記述されている。コンテンツのファイルサイズは、このコンテンツのデータ量を示す情報である。複合コンテンツの場合、コンテンツカタログ情報には、複合コンテンツのレコードが含まれている。そして、コンテンツのレコードは、コンテンツがコンテンツ配信システムＳ内に投入される際に生成される。生成されたレコードを含むコンテンツカタログ情報は、コンテンツ管理サーバＭＳから各ノードＮｎに配信される。なお、複合コンテンツのメタファイルに記述される情報が、この複合コンテンツのレコード内に記述されるように構成しても良い。この場合、複合コンテンツのメタファイルをコンテンツ配信システムＳ内に投入する必要がない。
【００４２】
バッファメモリ１３は、通信部１３を介して受信されたコンテンツをバッファリングする。デコーダ部１４は、コンテンツに含まれる映像データ及び音声データ等のデータ伸張や復号化等のデコード処理を行う。なお、複合コンテンツの場合、リソースファイルがデコード処理の対象となる。映像処理部１５は、デコーダ部１４によりデコードされた映像データ等に対して所定の描画処理を施し映像信号として再生出力する。表示部１６は、映像処理部１５から再生出力された映像信号に基づきディスプレイに映像等を表示する。また、表示部１６は、デコーダ部１４によりデコードされた画像を表示する。音声処理部１７は、デコーダ部１４によりデコードされた音声データをアナログ音声信号にＤ（Digital）／Ａ（Analog）変換した後これをアンプにより増幅して出力する。スピーカ１８は、音声処理部１７から出力された音声信号を音波として出力する。
【００４３】
通信部１９は、ネットワークＮＷを通じてコンテンツ管理サーバＭＳ及び他のノードＮｎ等との間の情報の通信制御を行う。
【００４４】
制御部１１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。そして、制御部１１は、ＣＰＵが記憶部１２等に記憶されたＰ２Ｐプログラムを読み出して実行することにより、後述する処理を行う。また、制御部１１は、時計機能を有する。なお、制御部１１は、本発明における削除手段の一例である。
【００４５】
［３．コンテンツ配信システムＳの動作］
次に、図３及び図４を参照して、本実施形態に係るコンテンツ配信システムＳの動作について説明する。図３は、複合コンテンツの投入から削除までの様子を示す概念図である。また、図４は、ノードＮ１の制御部１１における処理を示すフローチャートである。なお、以下の動作例において、図３（Ａ）に示すようにコンテンツ配信システムＳ内に投入された複合コンテンツを構成する各ファイルがノードＮ１に既に保存されているものとする。また、コンテンツキャッシュ領域の記憶容量は、予め設定されているものとする。
【００４６】
図４に示す処理は、例えばユーザにより入力部１９ａを介して指定されたコンテンツの取得要求がなされた場合に開始される。図４に示す処理が開始されると、ノードＮ１の制御部１１は、指定されたコンテンツのコンテンツＩＤを取得する（ステップＳ１）。例えば、コンテンツＩＤは、コンテンツ提供サイトからノードＮ１に送信されたＷｅｂページに記述されたタグから取得される。或いは、コンテンツＩＤは、ノードＮｎに記憶されているコンテンツカタログ情報からキーワード検索により取得されるものであっても良い。
【００４７】
次いで、制御部１１は、上記ステップＳ１で取得されたコンテンツＩＤに対応するコンテンツのファイルサイズを閾値として設定する（ステップＳ２）。ここで、コンテンツＩＤに対応するコンテンツのファイルサイズは、例えばコンテンツカタログ情報から取得される。なお、コンテンツＩＤに対応するコンテンツが複合コンテンツの場合、複合コンテンツを構成する各ファイルのファイルサイズの総和が閾値として設定される。
【００４８】
次いで、制御部１１は、上記ステップＳ２で設定された閾値以上の空き領域が、記憶部１２におけるコンテンツキャッシュ領域にあるか否かを判定する（ステップＳ３）。そして、制御部１１は、コンテンツキャッシュ領域に閾値以上の空き領域がないと判定した場合には（ステップＳ３：ＮＯ）、ステップＳ４に進む。一方、制御部１１は、コンテンツキャッシュ領域に閾値以上の空き領域があると判定した場合には（ステップＳ３：ＹＥＳ）、ステップＳ３１に進む。
【００４９】
ステップＳ４では、制御部１１は、削除候補リストを初期化する。この削除候補リストは、削除候補となるファイルのファイル名が登録されるリストである。この初期化により削除候補リストにはファイル名は登録されていない状態となる。
【００５０】
次いで、制御部１１は、コンテンツキャッシュ領域に動画ファイルが記憶されているか否かを判定する（ステップＳ５）。動画ファイルであるか否かは、例えばファイルの拡張子により判定することができる。例えば、拡張子が“ＡＶＩ”、“ＦＬＶ”、又は“ＷＭＶ”である場合、そのファイルは動画ファイルであると判定される。動画ファイルは、複合コンテンツの一部である場合と、通常コンテンツの場合がある。また、通常コンテンツは、動画ファイル含んだファイルから構成される場合もある。これらの場合、動画ファイルであると判定される。そして、制御部１１は、コンテンツキャッシュ領域に動画ファイルが記憶されていると判定した場合には（ステップＳ５：ＹＥＳ）、ステップＳ６に進む。一方、制御部１１は、コンテンツキャッシュ領域に動画ファイルが記憶されていないと判定した場合には（ステップＳ５：ＮＯ）、ステップＳ１１に進む。
【００５１】
ステップＳ６では、制御部１１は、コンテンツキャッシュ領域に記憶されている動画ファイルのファイル名を削除候補リストに登録する。このように、動画ファイルのファイル名を削除候補リストに登録することで、動画ファイルを、動画ファイル以外のリソースファイル、メタファイル及び制御ファイルよりも優先的に削除することができる。
【００５２】
ここで、削除候補リストには、例えば、コンテンツキャッシュ領域に記憶されている全ての動画ファイルのファイル名が登録される。
【００５３】
或いは、削除候補リストには、現時点から所定期間遡った時点以前に取得された動画ファイルのファイル名が登録されるように構成しても良い。現時点から所定期間遡った時点以前に取得された動画ファイルであるか否かは、動画ファイルに付加された取得日付情報により判定される。なお、上記「所定期間」は、例えば、ノードＮ１のユーザが入力部１９ａを介して任意に設定することができる。このような所定期間を設定することで、古くなった動画ファイルを優先的に削除することができる。
【００５４】
或いは、削除候補リストには、現時点から所定期間遡った時点以前にユーザにより利用された動画ファイルのファイル名が登録されるように構成しても良い。現時点から所定期間遡った時点以前にユーザにより利用された動画ファイルであるか否かは、動画ファイルに付加された利用日付情報により判定される。なお、上記「所定期間」は、例えば、ノードＮ１のユーザが入力部１９ａを介して任意に設定することができる。このような所定期間を設定することで、所定期間利用されなくなった動画ファイルを優先的に効率良く削除することができる。
【００５５】
次いで、制御部１１は、削除候補リストにファイル名が登録されている動画ファイルの中から、未だ選択されていない動作ファイルを１つ以上選択する（ステップＳ７）。なお、削除候補リストにおいて、選択された動画ファイルのファイル名に対応付けられて選択済を示す選択済フラグが登録される。
【００５６】
ここで、動画ファイルのファイル名が複数登録されている場合、例えば、ファイルサイズが最も大きい動作ファイルが選択される。これにより、ファイルサイズが大きい動作ファイルから優先的に削除することができる。そのため、コンテンツキャッシュ領域を有効に活用することができる。
【００５７】
或いは、動画ファイルのファイル名が複数登録されている場合、例えば、取得された日時が最も古い動画ファイルが選択されるように構成しても良い。これにより、取得された日時が古い動画ファイルから優先的に削除することができる。なお、取得された日時が最も古い動画ファイルであるか否かは、動画ファイルに付加された取得日付情報により判定される。
【００５８】
或いは、動画ファイルのファイル名が複数登録されている場合、例えば、ユーザにより利用された日時が最も古い動画ファイルが選択されるように構成しても良い。これにより、利用された日時が古い動画ファイルから優先的に削除することができる。なお、利用された日時が最も古い動画ファイルであるか否かは、動画ファイルに付加された利用日付情報により判定される。
【００５９】
次いで、制御部１１は、選択された動画ファイルのファイルサイズの総和を算出する（ステップＳ８）。ここで、「動画ファイルのファイルサイズの総和」とは、上記ステップＳ７〜Ｓ１０のループ中にステップＳ７で選択された動画ファイルのファイルサイズの総和である。
【００６０】
次いで、制御部１１は、上記ステップＳ８で算出されたファイルサイズの総和が上記ステップＳ２で設定された閾値より大きいか否かを判定する（ステップＳ９）。そして、制御部１１は、ファイルサイズの総和が閾値より大きくないと判定した場合には（ステップＳ９：ＮＯ）、ステップＳ１０に進む。一方、制御部１１は、ファイルサイズの総和が閾値より大きいと判定した場合には（ステップＳ９：ＹＥＳ）、ステップＳ３０に進む。ファイルサイズの総和が閾値より大きい場合、上記ステップＳ１で取得されたコンテンツＩＤに対応するコンテンツを保存するための空き領域がコンテンツキャッシュ領域に確保することが可能となる。
【００６１】
ステップＳ１０では、制御部１１は、削除候補リストにおいて未だ選択されていない動画ファイルがあるか否かを判定する。この判定では選択済フラグが参照される。そして、制御部１１は、未だ選択されていない動画ファイルがあると判定した場合には（ステップＳ１０：ＹＥＳ）、ステップＳ７に戻る。一方、制御部１１は、未だ選択されていない動画ファイルがないと判定した場合には（ステップＳ１０：ＮＯ）、ステップＳ１１に進む。
【００６２】
ステップＳ１１では、制御部１１は、コンテンツキャッシュ領域に動画ファイル以外のリソースファイルが記憶されているか否かを判定する。動画ファイル以外のリソースファイルとは、画像ファイル、音声ファイル、及びテキストファイルのうち少なくとも何れか一のファイルである。動画ファイル以外のリソースファイルであるか否かは、例えばファイルの拡張子により判定することができる。そして、制御部１１は、コンテンツキャッシュ領域に動画ファイル以外のリソースファイルが記憶されていると判定した場合には（ステップＳ１１：ＹＥＳ）、ステップＳ１２に進む。一方、制御部１１は、コンテンツキャッシュ領域に動画ファイル以外のリソースファイルが記憶されていないと判定した場合には（ステップＳ１１：ＮＯ）、ステップＳ１７に進む。
【００６３】
ステップＳ１２では、制御部１１は、コンテンツキャッシュ領域に記憶されている、動画ファイル以外のリソースファイルのファイル名を上記削除候補リストに登録する。このように、動画ファイル以外のリソースファイルのファイル名を削除候補リストに登録することで、動画ファイル以外のリソースファイルを、メタファイル及び制御ファイルよりも優先的に削除することができる。
【００６４】
ここで、削除候補リストには、例えば、コンテンツキャッシュ領域に記憶されているリソースファイルのうち、動画ファイル以外の全てのリソースファイルのファイル名が登録される。
【００６５】
或いは、上記ステップＳ６と同様、削除候補リストには、現時点から所定期間遡った時点以前に取得された、動画ファイル以外の全てのリソースファイルのファイル名が登録されるように構成しても良い。これにより、古くなったリソースファイルを優先的に削除することができる。或いは、上記ステップＳ６と同様、削除候補リストには、現時点から所定期間遡った時点以前にユーザにより利用された、動画ファイル以外の全てのリソースファイルのファイル名が登録されるように構成しても良い。これにより、所定期間利用されないリソースファイルを優先的に効率良く削除することができる。
【００６６】
次いで、制御部１１は、削除候補リストにファイル名が登録されているリソースファイルの中から、未だ選択されていないリソースファイルを１つ以上選択する（ステップＳ１３）。なお、削除候補リストにおいて、選択されたリソースファイルのファイル名に対応付けられて選択済を示す選択済フラグが登録される。
【００６７】
ここで、動画ファイル以外のリソースファイルのファイル名が複数登録されている場合、上記ステップＳ７と同様、ファイルサイズが最も大きいリソースファイルが選択される。或いは、上記ステップＳ７と同様、取得された日時が最も古いリソースファイルが選択されるように構成しても良い。或いは、上記ステップＳ７と同様、ユーザにより利用された日時が最も古いリソースファイルが選択されるように構成しても良い。
【００６８】
次いで、制御部１１は、選択されたファイルのファイルサイズの総和を算出する（ステップＳ１４）。ここで、「ファイルのファイルサイズの総和」とは、上記ステップＳ７〜Ｓ１０のループ中にステップＳ７で選択された動画ファイルのファイルサイズと、上記ステップＳ１３〜Ｓ１６のループ中にステップＳ１３で選択されたリソースファイルのファイルサイズの総和である。
【００６９】
次いで、制御部１１は、上記ステップＳ１４で算出されたファイルサイズの総和が上記ステップＳ２で設定された閾値より大きいか否かを判定する（ステップＳ１５）。そして、制御部１１は、ファイルサイズの総和が閾値より大きくない判定した場合には（ステップＳ１５：ＮＯ）、ステップＳ１６に進む。一方、制御部１１は、ファイルサイズの総和が閾値より大きいと判定した場合には（ステップＳ１５：ＹＥＳ）、ステップＳ３０に進む。
【００７０】
ステップＳ１６では、制御部１１は、削除候補リストにおいて未だ選択されていないリソースファイルがあるか否かを判定する。そして、制御部１１は、未だ選択されていないリソースファイルがあると判定した場合には（ステップＳ１６：ＹＥＳ）、ステップＳ１３に戻る。一方、制御部１１は、未だ選択されていないリソースファイルがないと判定した場合には（ステップＳ１６：ＮＯ）、ステップＳ１７に進む。
【００７１】
ステップＳ１７では、制御部１１は、コンテンツキャッシュ領域にメタファイルが記憶されているか否かを判定する。メタファイルであるか否かは、例えばファイルの拡張子により判定することができる。そして、制御部１１は、コンテンツキャッシュ領域にメタファイルが記憶されていると判定した場合には（ステップＳ１７：ＹＥＳ）、ステップＳ１８に進む。一方、制御部１１は、コンテンツキャッシュ領域にメタファイルが記憶されていないと判定した場合には（ステップＳ１７：ＮＯ）、ステップＳ２３に進む。
【００７２】
ステップＳ１８では、制御部１１は、コンテンツキャッシュ領域に記憶されているメタファイルのファイル名を上記削除候補リストに登録する。このように、メタファイルを削除候補リストに登録することで、メタファイルをリソースファイルの削除後にもコンテンツキャッシュ領域に残しておくことができる。
【００７３】
ここで、削除候補リストには、例えば、コンテンツキャッシュ領域に記憶されている全てのメタファイルのファイル名が登録される。
【００７４】
或いは、上記ステップＳ６と同様、削除候補リストには、現時点から所定期間遡った時点以前に取得されたメタファイルのファイル名が登録されるように構成しても良い。これにより、古くなったメタファイルを優先的に削除することができる。或いは、上記ステップＳ６と同様、削除候補リストには、現時点から所定期間遡った時点以前にユーザにより利用されたメタファイルのファイル名が登録されるように構成しても良い。これにより、所定期間利用されないメタファイルを優先的に効率良く削除することができる。
【００７５】
次いで、制御部１１は、削除候補リストにファイル名が登録されているメタファイルの中から、未だ選択されていないメタファイルを１つ以上選択する（ステップＳ１９）。なお、削除候補リストにおいて、選択されたメタファイルのファイル名に対応付けられて選択済を示す選択済フラグが登録される。
【００７６】
ここで、メタファイルのファイル名が複数登録されている場合、上記ステップＳ７と同様、ファイルサイズが最も大きいメタファイルが選択される。或いは、上記ステップＳ７と同様、取得された日時が最も古いメタファイルが選択されるように構成しても良い。或いは、上記ステップＳ７と同様、ユーザにより利用された日時が最も古いメタファイルが選択されるように構成しても良い。
【００７７】
次いで、制御部１１は、選択されたファイルのファイルサイズの総和を算出する（ステップＳ２０）。ここで、「ファイルのファイルサイズの総和」とは、上記ステップＳ７〜Ｓ１０のループ中にステップＳ７で選択された動画ファイルのファイルサイズと、上記ステップＳ１３〜Ｓ１６のループ中にステップＳ１３で選択されたリソースファイルのファイルサイズと、上記ステップＳ１９〜Ｓ２２のループ中にステップＳ１９で選択されたメタファイルのファイルサイズと、の総和である。
【００７８】
次いで、制御部１１は、上記ステップＳ２０で算出されたファイルサイズの総和が上記ステップＳ２で設定された閾値より大きいか否かを判定する（ステップＳ２１）。そして、制御部１１は、ファイルサイズの総和が閾値より大きくない判定した場合には（ステップＳ２１：ＮＯ）、ステップＳ２２に進む。一方、制御部１１は、ファイルサイズの総和が閾値より大きいと判定した場合には（ステップＳ２１：ＹＥＳ）、ステップＳ３０に進む。
【００７９】
ステップＳ２２では、制御部１１は、削除候補リストにおいて未だ選択されていないメタファイルがあるか否かを判定する。そして、制御部１１は、未だ選択されていないメタファイルがあると判定した場合には（ステップＳ２２：ＹＥＳ）、ステップＳ１９に戻る。一方、制御部１１は、未だ選択されていないメタファイルがないと判定した場合には（ステップＳ２２：ＮＯ）、ステップＳ２３に進む。
【００８０】
ステップＳ２３では、制御部１１は、コンテンツキャッシュ領域に制御ファイルが記憶されているか否かを判定する。制御ファイルであるか否かは、例えばファイルの拡張子により判定することができる。そして、制御部１１は、コンテンツキャッシュ領域に制御ファイルが記憶されていると判定した場合には（ステップＳ２３：ＹＥＳ）、ステップＳ２４に進む。一方、制御部１１は、コンテンツキャッシュ領域に制御ファイルが記憶されていないと判定した場合には（ステップＳ２３：ＮＯ）、ステップＳ２９に進む。
【００８１】
ステップＳ２４では、制御部１１は、コンテンツキャッシュ領域に記憶されている制御ファイルのファイル名を上記削除候補リストに登録する。このように、制御ファイルを最後に削除候補リストに登録することで、制御ファイルを最後までコンテンツキャッシュ領域に残しておくことができる。
【００８２】
ここで、削除候補リストには、例えば、コンテンツキャッシュ領域に記憶されている全ての制御ファイルのファイル名が登録される。
【００８３】
或いは、上記ステップＳ６と同様、削除候補リストには、現時点から所定期間遡った時点以前に取得された制御ファイルのファイル名が登録されるように構成しても良い。これにより、古くなった制御ファイルを優先的に削除することができる。或いは、上記ステップＳ６と同様、削除候補リストには、現時点から所定期間遡った時点以前にユーザにより利用された制御ファイルのファイル名が登録されるように構成しても良い。これにより、所定期間利用されない制御ファイルを優先的に効率良く削除することができる。
【００８４】
次いで、制御部１１は、削除候補リストにファイル名が登録されている制御ファイルの中から、未だ選択されていない制御ファイルを１つ以上選択する（ステップＳ２５）。なお、削除候補リストにおいて、選択された制御ファイルのファイル名に対応付けられて選択済を示す選択済フラグが登録される。
【００８５】
ここで、制御ファイルのファイル名が複数登録されている場合、上記ステップＳ７と同様、ファイルサイズが最も大きい制御ファイルが選択される。或いは、上記ステップＳ７と同様、取得された日時が最も古い制御ファイルが選択されるように構成しても良い。或いは、上記ステップＳ７と同様、ユーザにより利用された日時が最も古い制御ファイルが選択されるように構成しても良い。
【００８６】
次いで、制御部１１は、選択されたファイルのファイルサイズの総和を算出する（ステップＳ２６）。ここで、「ファイルのファイルサイズの総和」とは、上記ステップＳ７〜Ｓ１０のループ中にステップＳ７で選択された動画ファイルのファイルサイズと、上記ステップＳ１３〜Ｓ１６のループ中にステップＳ１３で選択されたリソースファイルのファイルサイズと、上記ステップＳ１９〜Ｓ２２のループ中にステップＳ１９で選択されたメタファイルのファイルサイズと、上記ステップＳ２５〜Ｓ２８のループ中にステップＳ２５で選択された制御ファイルのファイルサイズと、の総和である。
【００８７】
次いで、制御部１１は、上記ステップＳ２６で算出されたファイルサイズの総和が上記ステップＳ２で設定された閾値より大きいか否かを判定する（ステップＳ２７）。そして、制御部１１は、ファイルサイズの総和が閾値より大きくない判定した場合には（ステップＳ２７：ＮＯ）、ステップＳ２８に進む。一方、制御部１１は、ファイルサイズの総和が閾値より大きいと判定した場合には（ステップＳ２７：ＹＥＳ）、ステップＳ３０に進む。
【００８８】
ステップＳ２８では、制御部１１は、削除候補リストにおいて未だ選択されていない制御ファイルがあるか否かを判定する。そして、制御部１１は、未だ選択されていない制御ファイルがあると判定した場合には（ステップＳ２８：ＹＥＳ）、ステップＳ２５に戻る。一方、制御部１１は、未だ選択されていない制御ファイルがないと判定した場合には（ステップＳ２８：ＮＯ）、ステップＳ２９に進む。
【００８９】
ステップＳ２９では、制御部１１は、エラー処理を実行する。このエラー処理では、例えば、コンテンツを保存するための空き領域をコンテンツキャッシュ領域に確保することができない旨のメッセージが表示部１６に表示される。
【００９０】
なお、上述したように、現時点から所定期間遡った時点以前に取得されたファイルのファイル名のみが上記削除候補リストに登録される場合がある。或いは、現時点から所定期間遡った時点以前にユーザにより利用されたファイルのファイル名のみが上記削除候補リストに登録される場合がある。これらの場合、ステップＳ２９に示すエラー処理において、所定期間の短縮を促す旨のメッセージが表示部１６に表示されるように構成しても良い。このメッセージを確認したユーザは、入力部１９ａを介して「所定期間」を短縮するように設定変更する。この設定変更がなされた場合、制御部１１は、上記ステップＳ５に戻り上記処理を繰り返すことになる。例えば、上記所定期間が３０日から１０日に設定変更された場合、上記削除候補リストに登録されるファイルは増すことになる。そのため、コンテンツを保存するための空き領域をコンテンツキャッシュ領域に確保することが可能となる。
【００９１】
次に、ステップＳ３０では、制御部１１は、コンテンツ削除処理を実行する。このコンテンツ削除処理は、コンテンツキャッシュ領域からコンテンツを削除する処理である。具体的には、制御部１１は、上記削除候補リストに登録されているファイル名の中で、選択済フラグが対応付けられているファイル名に対応するファイルをコンテンツキャッシュ領域から削除する。これにより、コンテンツを保存するための空き領域をコンテンツキャッシュ領域に確保される。
【００９２】
ここで、ステップＳ３０のコンテンツ削除処理が、上記ステップＳ９からの移行により実行される場合、複合コンテンツを構成する各ファイルのうち、図３（Ｂ）に示すように、動画ファイルが他のファイルに優先して削除される。
【００９３】
一方、ステップＳ３０のコンテンツ削除処理が、上記ステップＳ１５からの移行により実行される場合、リソースファイルが、メタファイル及び制御ファイルに優先して削除される。この場合において、削除対象となる動画ファイルがない場合、図３（Ｃ）に示すように、例えば画像ファイルが削除される。
【００９４】
一方、ステップＳ３０のコンテンツ削除処理が、上記ステップＳ２１からの移行により実行される場合、リソースファイル及びメタファイルが、制御ファイルに優先して削除される。この場合において、削除対象となるリソースファイルがない場合、図３（Ｄ）に示すように、例えばメタファイルが削除される。こうして、制御ファイルが最後までコンテンツキャッシュ領域に残ることになる。
【００９５】
なお、上記処理においては、制御ファイルよりもメタファイルを優先的に削除するように構成したが、メタファイルよりも制御ファイルを優先的に削除するように構成しても良い。この場合、上記ステップＳ１８では、コンテンツキャッシュ領域に記憶されているメタファイルに代えて制御ファイルのファイル名が上記削除候補リストに登録される。そして、上記ステップＳ１９〜ステップＳ２２までの処理は、制御ファイルに対して行われる。一方、この場合、上記ステップＳ２４では、コンテンツキャッシュ領域に記憶されている制御ファイルに代えてメタファイルのファイル名が上記削除候補リストに登録される。そして、上記ステップＳ２５〜ステップＳ２８までの処理は、メタファイルに対して行われる。
【００９６】
次に、ステップＳ３１では、制御部１１は、コンテンツ取得処理を実行する。このコンテンツ取得処理は、コンテンツＩＤに基づいて、コンテンツをオーバーレイネットワークＯＮを介して検索し取得する処理である。具体的には、制御部１１は、先ず、コンテンツ所在問合せメッセージを生成する。コンテンツ所在問合せメッセージは、コンテンツの所在をルートノードに問い合わせるためのメッセージである。また、コンテンツ所在問合せメッセージには、ノードＮ１のＩＰアドレス及びポート番号、並びにコンテンツのコンテンツＩＤが含まれる。そして、制御部１１は、生成したコンテンツ所在問合せメッセージを、ＤＨＴルーティングにより、コンテンツのルートノード宛に送信する。なお、ＤＨＴルーティングは、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。
【００９７】
上記コンテンツ所在問合せメッセージを受信したルートノードは、コンテンツ所在問合せメッセージに含まれるコンテンツＩＤに対応するインデックス情報を取得する。ルートノードは、取得したインデックス情報を、コンテンツ所在問合せメッセージの送信元であるノードＮ１へ返信する。このように返信されたインデックス情報には、コンテンツを保存しているコンテンツ保持ノードのＩＰアドレス等が含まれている。こうして、ノードＮ１の制御部１１は、ルートノードからのインデックス情報を受信する。そして、制御部１１は、受信したインデックス情報に含まれるコンテンツ保持ノードのＩＰアドレス等に基づいて例えばコンテンツ保持ノードにアクセスする。そして、制御部１１は、コンテンツ保持ノードからコンテンツをダウンロードする。ここで、ダウンロードされたコンテンツが複合コンテンツのメタファイルである場合がある。この場合、制御部１１は、このメタファイルに記述された各コンテンツＩＤに基づいて、上記と同様に、コンテンツ検索及び取得処理を実行する。このコンテンツ検索及び取得処理により、ノードＮ１の制御部１１は、例えばコンテンツ保持ノードから、複合コンテンツを構成するリソースファイル及び制御ファイルをダウンロードする。
【００９８】
次いで、制御部１１は、ダウンロードされバッファメモリ１３に蓄積されているコンテンツをコンテンツキャッシュ領域に記憶保存する（ステップＳ３２）。なお、複合コンテンツの場合、ダウンロードされたリソースファイル及び制御ファイル、並びにメタファイルが、コンテンツとしてコンテンツキャッシュ領域に記憶保存される。こうしてコンテンツが保存されると、制御部１１は、パブリッシュメッセージを、ＤＨＴを用いたルーティングテーブルにしたがって、ルートノード宛に送信する。このパブリッシュメッセージは、コンテンツを保存していることを他のノードＮｎに公開するためのメッセージである。パブリッシュメッセージについては、特開２００７−０５３４５２号公報等で公知であるので、詳しい説明を省略する。
【００９９】
なお、上記ステップＳ３〜Ｓ３０の処理は、コンテンツの取得とは無関係に、予め設定された時間間隔で定期的に実行されるように構成しても良い。この場合、上記ステップＳ３の処理は、予め設定された時刻が到来すると開始される。また、上記ステップＳ３における「閾値」は、例えばコンテンツキャッシュ領域の最大記憶容量の例えば１０％程度に予め設定される。
【０１００】
以上説明したように、上記実施形態によれば、ノードＮｎは、コンテンツキャッシュ領域に保存されているコンテンツを削除する場合に、複合コンテンツを構成する各ファイルのうち動画ファイルを優先して削除するように構成した。そのため、複合コンテンツを再生する場合に最初に必要になるメタファイル及び制御ファイルを、リソースファイルの削除後にもコンテンツキャッシュ領域に残しておくことができる。従って、複合コンテンツを構成するリソースファイルの再生までに無駄な時間がかかってしまうことを回避し、リソースファイルの再生出力を迅速に行うことができる。
【０１０１】
また、上記実施形態においては、複数のリソースファイルの中で、ファイルサイズの大きいリソースファイルから優先的に削除するように構成した。そのため、より多くのコンテンツをコンテンツキャッシュ領域に保存することができ、コンテンツキャッシュ領域を有効に活用することができる。また、上記実施形態においては、画像ファイル及びテキストファイルよりもデータ量の大きい動作ファイルから優先的に削除するように構成した。そのため、より多くのコンテンツをコンテンツキャッシュ領域に保存することができ、コンテンツキャッシュ領域を有効に活用することができる。なお、ノードＮｎにおいて、動作ファイルと、画像ファイル又はテキストファイルが記憶されている場合に、動作ファイルよりも、画像ファイル又はテキストファイルから優先的に削除するように構成しても良い。動作ファイルよりもデータ量の小さい画像ファイル又はテキストファイル等のコンテンツを先に削除することで、データサイズの小さいコンテンツはダウンロード時間がかからず、すぐに取得できるという効果がある。
【０１０２】
また、上記実施形態において、予め設定された時間間隔で定期的に、コンテンツキャッシュ領域への各コンテンツへの利用状況に基づいて、コンテンツキャッシュ領域からコンテンツを削除するように構成しても良い。具体的には、制御部１１は、予め設定された時刻が到来すると、制御部１１は、コンテンツキャッシュ領域に記憶されている各コンテンツに付加された利用日付情報を参照して、所定期間利用されていないコンテンツがあるか否かを判定する。そして、制御部１１は、所定期間利用されていないコンテンツがあると判定した場合、所定期間利用されていないコンテンツをコンテンツキャッシュ領域からコンテンツを削除する。この構成によれば、利用頻度が低いコンテンツを効率良く削除することができる。そのため、コンテンツキャッシュ領域を有効に活用することができる。
【０１０３】
また、上記実施形態においては、オーバーレイネットワークＯＮに、ＤＨＴを利用したピアツーピアネットワークを適用したが、これに限られるものではない。例えば、他のオーバーレイネットワークを用いたシステムが適用されても良い。ＤＨＴを利用しないピアツーピアシステムとしては、例えば、ハイブリッド型のピアツーピアシステムがある。
【符号の説明】
【０１０４】
１１  制御部
１２  記憶部
１３  バッファメモリ
１９  通信部
ＭＳ  コンテンツ管理サーバ
Ｎｎ  ノード
ＮＷ  ネットワーク
ＯＮ  オーバーレイネットワーク
Ｓ  コンテンツ配信システム
【図１】
2011248715.tif 000003
【図２】
2011248715.tif 000004
【図３】
2011248715.tif 000005
【図４】
2011248715.tif 000006