(57)【要約】      （修正有）【課題】複数のサービスによりストレージが共用される場合であっても、各サービス毎に適した容量をストレージへ割り当てる。【解決手段】ネットワークを介して互いに通信可能な複数の情報処理装置より構成されるオーバーレイネットワークを介してコンテンツが配信される配信システムは、前記複数の情報処理装置より形成されるストレージであって、前記コンテンツを保存するための前記ストレージを備える。配信システムは、前記オーバーレイネットワークを利用してコンテンツを配信する複数のサービスであって、互いに異なる前記複数のサービスで配信されるコンテンツの容量を示す容量情報を前記サービス毎に取得し、前記容量情報に基づいて、前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定する。【選択図】図３
2012118709.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して互いに通信可能な複数の情報処理装置より構成されるオーバーレイネットワークを介してコンテンツが配信される配信システムにおいて、
前記複数の情報処理装置より形成されるストレージであって、前記コンテンツを保存するための前記ストレージと、
前記オーバーレイネットワークを利用してコンテンツを配信する複数のサービスであって、互いに異なる前記複数のサービスで配信されるコンテンツとして、前記ストレージに保存されるコンテンツの容量を示す容量情報を前記サービス毎に取得する第１取得手段と、
前記第１取得手段により取得された前記容量情報に基づいて、前記ストレージに保存可能なデータ容量であって、前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定する決定手段と、
を備え、
前記決定手段は、前記容量情報が示す前記コンテンツの容量が大きい前記サービス程、前記割り当てられるデータ容量を大きく決定することを特徴とする配信システム。
【請求項２】
前記決定手段は、前記ストレージの中で所定容量を有する固定ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するとともに、前記容量情報に基づいて、前記ストレージの中で前記固定ストレージを除いた空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする請求項１に記載の配信システム。
【請求項３】
前記第１取得手段は、前記サービス毎に予め設定された最大のデータ容量であって前記ストレージに対して割り当て可能な前記最大のデータ容量を示す最大容量情報と、前記ストレージに保存されるコンテンツの容量を示す前記容量情報とを前記サービス毎に取得し、
前記決定手段は、前記最大容量情報に基づいて、前記最大のデータ容量が大きい前記サービス程、前記固定ストレージに対して割り当てられるデータ容量を大きく決定するとともに、
前記容量情報に基づいて、前記空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする請求項２に記載の配信システム。
【請求項４】
前記サービスを利用するユーザのログイン状況を示すログイン情報を前記サービス毎に取得する第２取得手段を更に備え、
前記決定手段は、前記ストレージの中で所定容量の固定ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するとともに、前記ログイン情報から得られるログイン数に基づいて、前記ログイン数が多い前記サービス程、前記ストレージの中で前記固定ストレージを除いた空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする請求項１から請求項３のいずれか一項に記載の配信システム。
【請求項５】
前記第１取得手段は、前記サービス毎に予め設定された最大のデータ容量であって前記ストレージに対して割り当て可能な前記最大のデータ容量を示す最大容量情報を前記サービス毎に取得し、
前記決定手段は、前記最大容量情報に基づいて、前記最大のデータ容量が大きい前記サービス程、前記固定ストレージに対して割り当てられるデータ容量を大きく決定するとともに、前記ログイン情報から得られるログイン数に基づいて、前記ログイン数が多い前記サービス程、前記空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする請求項４に記載の配信システム。
【請求項６】
前記サービスを利用するユーザのログイン状況を示すログイン情報を前記サービス毎に取得する第２取得手段を更に備え、
前記決定手段は、前記コンテンツの容量が大きい前記サービスで、且つ、前記ログイン情報から得られるログイン数が多い前記サービス程、前記割り当てられるデータ容量を大きく決定することを特徴とする請求項１から請求項５のいずれか一項に記載の配信システム。
【請求項７】
前記第１取得手段及び前記決定手段は、前記コンテンツを管理するサーバ装置に備えられ、
前記サーバ装置は、
前記ストレージへの割り当て開始指令を受け付ける受付手段と、
前記受付手段により前記割り当て開始指令が受け付けられた場合に、前記決定手段により決定された前記データ容量に応じた割り当てを実行させる指示を示す指示情報を、前記ストレージを形成する前記複数の情報処理装置へ送信する送信手段を備え、
前記指示情報を受信した前記情報処理装置は、
前記ストレージを構成する記憶手段と、
前記指示情報に基づいて、前記記憶手段への割り当て処理を実行する割り当て処理手段と、
を備えることを特徴とする請求項１乃至６の何れか一項に記載の配信システム。
【請求項８】
前記第１取得手段及び前記決定手段は、前記ストレージを形成する前記複数の情報処理装置に備えられ、
前記情報処理装置は、
前記ストレージを構成する記憶手段と、
前記決定手段により決定された前記データ容量に応じて前記記憶手段への割り当て処理を実行する割り当て処理手段と、
を備えることを特徴とする請求項１乃至６の何れか一項に記載の配信システム。
【請求項９】
前記割り当て処理手段は、前記決定手段により前記サービス毎に決定された前記データ容量と、前記サービス毎に予め付与された識別情報とを対応付けて格納する設定ファイルを作成し、
前記情報処理装置は、
他の装置から前記ネットワークを介して前記コンテンツを取得する第３取得手段と、
前記設定ファイルに格納された前記データ容量であって、前記第３取得手段により取得された前記コンテンツを提供する前記サービスの前記識別情報に対応付けられた前記データ容量に基づいて、前記第３取得手段により取得された前記コンテンツを前記記憶手段に記憶可能であるかを判定する判定手段と、
を更に備えることを特徴とする請求項７又は８に記載の配信システム。
【請求項１０】
ネットワークを介して互いに通信可能な複数の情報処理装置より構成されるオーバーレイネットワークを介してコンテンツが配信される配信システムであって、前記複数の情報処理装置より形成されるストレージで前記コンテンツを保存するための前記ストレージを備える配信システムに含まれるコンピュータに、
前記オーバーレイネットワークを利用してコンテンツを配信する複数のサービスであって、互いに異なる前記複数のサービスで配信されるコンテンツとして前記ストレージに新たに保存されるコンテンツの容量を示す容量情報を前記サービス毎に取得するステップと、
前記取得された前記容量情報に基づいて、前記ストレージに保存可能なデータ容量であって、前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するステップであって、前記容量情報が示す前記コンテンツの容量が大きい前記サービス程、前記割り当てられるデータ容量を大きく決定するステップと、
を実行させることを特徴とするストレージ容量決定プログラム。
【請求項１１】
ネットワークを介して互いに通信可能な複数の情報処理装置より構成されるオーバーレイネットワークを介してコンテンツが配信される配信システムであって、前記複数の情報処理装置より形成されるストレージで前記コンテンツを保存するための前記ストレージを備える配信システムにおけるストレージ容量決定方法において、
前記オーバーレイネットワークを利用してコンテンツを配信する複数のサービスであって、互いに異なる前記複数のサービスで配信されるコンテンツとして前記ストレージに新たに保存されるコンテンツの容量を示す容量情報を前記サービス毎に取得するステップと、
前記取得された前記容量情報に基づいて、前記ストレージに保存可能なデータ容量であって、前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するステップであって、前記容量情報が示す前記コンテンツのデータ容量が大きい前記サービス程、前記割り当てられるデータ容量を大きく決定するステップと、
を含むことを特徴とするストレージ容量決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））型の配信システムの技術分野に関する。
【背景技術】
【０００２】
近年、ピアツーピア型の配信システムが知られている。ピアツーピア型の配信システムでは、複数のノード装置に複数のコンテンツデータが分散保存されている。つまり、このような配信システムでは、複数のノード装置によりコンテンツデータを保存するためのストレージが形成される。そして、ストレージに保存されたコンテンツデータは、オーバーレイネットワークを介して、第１のノード装置から、第１のノード装置と異なる第２のノード装置へ配信されるようになっている。なお、コンテンツデータを、以下、「コンテンツ」という。このようなピアツーピア型の配信システムでは、クライアント・サーバ型の配信システムのようなサーバへの負荷集中を軽減することができる。また、ストレージ保存されたコンテンツの所在は、例えば特許文献１に開示されるような分散ハッシュテーブルを用いたルーティングテーブルを利用して効率良く検索可能になっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１９７４００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ピアツーピア型の配信システムでは、オーバーレイネットワークを利用してコンテンツを配信するサービスが複数混在する場合がある。この場合、複数のノード装置により形成されるストレージが、複数のサービスにより共用される。そして、サービス毎に用いられるコンテンツの量が異なる場合がある。しかしながら、ストレージの容量は限られるため、各サービス毎に適した容量をストレージへ割り当てることができなかった。
【０００５】
そこで、本発明は、以上の点等に鑑みてなされたものであり、複数のサービスによりストレージが共用される場合であっても、各サービス毎に適した容量をストレージへ割り当てることが可能な配信システム、ストレージ容量決定プログラム、及びストレージ容量決定方法を提供すること等を課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置より構成されるオーバーレイネットワークを介してコンテンツが配信される配信システムにおいて、前記複数の情報処理装置より形成されるストレージであって、前記コンテンツを保存するための前記ストレージと、前記オーバーレイネットワークを利用してコンテンツを配信する複数のサービスであって、互いに異なる前記複数のサービスで配信されるコンテンツとして、前記ストレージに保存されるコンテンツの容量を示す容量情報を前記サービス毎に取得する第１取得手段と、前記第１取得手段により取得された前記容量情報に基づいて、前記ストレージに保存可能なデータ容量であって、前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定する決定手段と、を備え、前記決定手段は、前記容量情報が示す前記コンテンツの容量が大きい前記サービス程、前記割り当てられるデータ容量を大きく決定することを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載の配信システムにおいて、前記決定手段は、前記ストレージの中で所定容量を有する固定ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するとともに、前記容量情報に基づいて、前記ストレージの中で前記固定ストレージを除いた空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする。
【０００８】
請求項３に記載の発明は、請求項２に記載の配信システムにおいて、前記第１取得手段は、前記サービス毎に予め設定された最大のデータ容量であって前記ストレージに対して割り当て可能な前記最大のデータ容量を示す最大容量情報と、前記ストレージに保存されるコンテンツの容量を示す前記容量情報とを前記サービス毎に取得し、前記決定手段は、前記最大容量情報に基づいて、前記最大のデータ容量が大きい前記サービス程、前記固定ストレージに対して割り当てられるデータ容量を大きく決定するとともに、前記容量情報に基づいて、前記空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする。
【０００９】
請求項４に記載の発明は、請求項１から請求項３のいずれか一項に記載の配信システムにおいて、前記サービスを利用するユーザのログイン状況を示すログイン情報を前記サービス毎に取得する第２取得手段を更に備え、前記決定手段は、前記ストレージの中で所定容量の固定ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するとともに、前記ログイン情報から得られるログイン数に基づいて、前記ログイン数が多い前記サービス程、前記ストレージの中で前記固定ストレージを除いた空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする。
【００１０】
請求項５に記載の発明は、請求項４に記載の配信システムにおいて、前記第１取得手段は、前記サービス毎に予め設定された最大のデータ容量であって前記ストレージに対して割り当て可能な前記最大のデータ容量を示す最大容量情報を前記サービス毎に取得し、前記決定手段は、前記最大容量情報に基づいて、前記最大のデータ容量が大きい前記サービス程、前記固定ストレージに対して割り当てられるデータ容量を大きく決定するとともに、前記ログイン情報から得られるログイン数に基づいて、前記ログイン数が多い前記サービス程、前記空きストレージに対して割り当てられるデータ容量を前記サービス毎に決定することを特徴とする。
【００１１】
請求項６に記載の発明は、請求項１から請求項５のいずれか一項に記載の配信システムにおいて、前記サービスを利用するユーザのログイン状況を示すログイン情報を前記サービス毎に取得する第２取得手段を更に備え、前記決定手段は、前記コンテンツの容量が大きい前記サービスで、且つ、前記ログイン情報から得られるログイン数が多い前記サービス程、前記割り当てられるデータ容量を大きく決定することを特徴とする。
【００１２】
請求項７に記載の発明は、請求項１乃至６の何れか一項に記載の配信システムにおいて、前記第１取得手段及び前記決定手段は、前記コンテンツを管理するサーバ装置に備えられ、前記サーバ装置は、前記ストレージへの割り当て開始指令を受け付ける受付手段と、前記受付手段により前記割り当て開始指令が受け付けられた場合に、前記決定手段により決定された前記容量に応じた割り当てを実行させる指示を示す指示情報を、前記ストレージを形成する前記複数の情報処理装置へ送信する送信手段を備え、前記指示情報を受信した前記情報処理装置は、前記ストレージを構成する記憶手段と、前記指示情報に基づいて、前記記憶手段への割り当て処理を実行する割り当て処理手段と、を備えることを特徴とする。
【００１３】
請求項８に記載の発明は、請求項１乃至６の何れか一項に記載の配信システムにおいて、前記第１取得手段及び前記決定手段は、前記ストレージを形成する前記複数の情報処理装置に備えられ、前記情報処理装置は、前記ストレージを構成する記憶手段と、前記決定手段により決定された前記容量に応じて前記記憶手段への割り当て処理を実行する割り当て処理手段と、を備えることを特徴とする。
【００１４】
請求項９に記載の発明は、請求項７又は８に記載の配信システムにおいて、前記割り当て処理手段は、前記決定手段により前記サービス毎に決定された前記データ容量と、前記サービス毎に予め付与された識別情報とを対応付けて格納する設定ファイルを作成し、前記情報処理装置は、他の装置から前記ネットワークを介して前記コンテンツを取得する第３取得手段と、前記設定ファイルに格納された前記データ容量であって、前記第３取得手段により取得された前記コンテンツを提供する前記サービスの前記識別情報に対応付けられた前記データ容量に基づいて、前記第３取得手段により取得された前記コンテンツを前記記憶手段に記憶可能であるかを判定する判定手段と、を更に備えることを特徴とする。
【００１５】
請求項１０に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置より構成されるオーバーレイネットワークを介してコンテンツが配信される配信システムであって、前記複数の情報処理装置より形成されるストレージで前記コンテンツを保存するための前記ストレージを備える配信システムに含まれるコンピュータに、前記オーバーレイネットワークを利用してコンテンツを配信する複数のサービスであって、互いに異なる前記複数のサービスで配信されるコンテンツとして前記ストレージに新たに保存されるコンテンツの容量を示す容量情報を前記サービス毎に取得するステップと、前記取得された前記容量情報に基づいて、前記ストレージに保存可能なデータ容量であって、前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するステップであって、前記容量情報が示す前記コンテンツの容量が大きい前記サービス程、前記割り当てられるデータ容量を大きく決定するステップと、を実行させることを特徴とするストレージ容量決定プログラムである。
【００１６】
請求項１１に記載の発明は、ネットワークを介して互いに通信可能な複数の情報処理装置より構成されるオーバーレイネットワークを介してコンテンツが配信される配信システムであって、前記複数の情報処理装置より形成されるストレージで前記コンテンツを保存するための前記ストレージを備える配信システムにおけるストレージ容量決定方法において、前記オーバーレイネットワークを利用してコンテンツを配信する複数のサービスであって、互いに異なる前記複数のサービスで配信されるコンテンツとして前記ストレージに新たに保存されるコンテンツの容量を示す容量情報を前記サービス毎に取得するステップと、前記取得された前記容量情報に基づいて、前記ストレージに保存可能なデータ容量であって、前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定するステップであって、前記容量情報が示す前記コンテンツのデータ容量が大きい前記サービス程、前記割り当てられるデータ容量を大きく決定するステップと、を含むことを特徴とする。
【発明の効果】
【００１７】
請求項１、１０、及び１１に記載の発明によれば、複数のサービス夫々でこれから配信されるコンテンツの容量が大きいサービス程、ストレージに対して割り当てられる容量が大きく決定される。そのため、複数のサービスによりストレージが共用される場合であっても、各サービス毎に適した容量をストレージへ割り当てることができる。よって、サービス毎に適切な大きさのストレージを確保することができる。
【００１８】
請求項２乃至５、及び９に記載の発明によれば、サービス毎に最低限必要な大きさのストレージを確保しつつ、サービス夫々でこれから配信されるコンテンツの容量に応じた適切な大きさのストレージを確保することができる。
【００１９】
請求項６に記載の発明によれば、サービス夫々でこれから配信されるコンテンツの容量に応じ、且つ、サービス毎のログイン数に応じた適切な大きさのストレージを確保することができる。
【００２０】
請求項７に記載の発明によれば、情報処理装置は、サーバ装置からの指示に基づいて割り当て処理を実行すればよい。そのため、情報処理装置の処理負荷を低減することができる。
【００２１】
請求項８に記載の発明によれば、各情報処理装置が前記ストレージに対して割り当てられるデータ容量を前記サービス毎に決定する処理を行うため、サーバ装置の処理負荷を低減することができる。
【図面の簡単な説明】
【００２２】
【図１】本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。
【図２】（Ａ）は、センターサーバＳＳの概要構成例を示すブロック図である。（Ｂ）は、ノードＮｎの概要構成例を示すブロック図である。
【図３】（Ａ）は、センターサーバＳＳの制御部１の処理を示すフローチャートである。（Ｂ）は、ノードＮｎの制御部１１の処理を示すフローチャートである。（Ｃ）は、ストレージへの割り当て容量決定処理の詳細を示すフローチャートである。
【図４】（Ａ）は、ストレージへの割り当て容量決定処理の変形例１を示すフローチャートである。（Ｂ），（Ｃ）は、固定ストレージへの割り当て容量決定処理の詳細を示すフローチャートである。（Ｄ）は、（Ｂ）に示す処理が行われた場合の固定ストレージ領域への割り当て容量と、空きストレージ領域への割り当て容量の一例を示す図である。（Ｅ）は、（Ｃ）に示す処理が行われた場合の固定ストレージ領域への割り当て容量と、空きストレージ領域への割り当て容量の一例を示す図である。（Ｆ）は、実施例４における、空きストレージへの割り当て容量決定処理を示すフローチャートである。
【発明を実施するための形態】
【００２３】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ配信システムに本発明を適用した場合の実施形態である。
［１．コンテンツ配信システムの構成及び動作概要］
始めに、図１を参照して、本実施形態に係るコンテンツ配信システムの構成及び動作概要について説明する。図１は、本実施形態に係るコンテンツ配信システムの概要構成例を示す図である。図１に示すように、本実施形態に係るコンテンツ配信システムＳは、センターサーバＳＳ、及びノード装置Ｎｎ（ｎ＝１，２，３・・・ｋ）等により構成されている。なお、コンテンツ配信システムＳは、本発明の配信システムの一例である。また、センターサーバＳＳは、本発明におけるサーバ装置の一例である。また、ノード装置は、本発明における情報処理装置の一例である。ノード装置Ｎｎを、以下、「ノード」という。また、センターサーバＳＳ及びノードはネットワークＮＷに接続されている。ネットワークＮＷは、インターネット等からなる。また、ネットワークＮＷには、ＷｅｂサーバＷＳが接続されている。ＷｅｂサーバＷＳは、ネットワークＮＷを介してアクセスされた端末に対してコンテンツを提供するＷｅｂサイトを構成するためのサーバである。この端末の例としては、Ｗｅｂブラウザ機能を有するユーザ端末ＵＴ及び拠点端末Ｔｎ−ｌ（ｌ＝１，２，３・・・ｊ）が挙げられる。なお、ユーザ端末ＵＴは、例えば、パーソナルコンピュータ又は携帯機器である。
【００２４】
また、図１に示すように、コンテンツ配信システムＳには、複数の拠点Ｐｎ毎に拠点ネットワークＮＬｎが構築されている。この拠点の例としては、例えばカラオケ店舗、学校、会社、住宅、又はその他の施設等が挙げられる。拠点ネットワークＮＬｎは、例えば、通信手段としてのＬＡＮ（Local Area Network）等のプライベートネットワークである。また、各拠点ネットワークＮＬｎには、ノードと複数の拠点端末Ｔｎ−ｌとが接続されている。ノードは、同じ拠点ネットワークＮＬｎに接続されている拠点端末Ｔｎ−ｌへコンテンツを提供するエッジサーバとしての機能を有する。一方、拠点端末Ｔｎ−ｌは、コンテンツを再生する機能を有する。例えば、拠点Ｐｎがカラオケ店舗の場合、拠点端末Ｔｎ−ｌは、カラオケ用のコンテンツを再生するコマンダである。また、例えば拠点Ｐｎが学校である場合、教材用のコンテンツを再生する視聴端末である。また、例えば拠点Ｐｎが会社である場合、研修用のコンテンツを再生する視聴端末である。また、例えば拠点Ｐｎが住宅である場合、放送番組用のコンテンツを再生するセットトップボックスである。なお、各拠点Ｐｎにおける拠点端末Ｔｎ−ｌは、同じ拠点ネットワークＮＬｎに接続されているノードだけと通信を行うことに限定されるものではない。例えば、拠点Ｐ１における拠点端末Ｔ１−１は、同じ拠点ネットワークＮＬ１に接続されているノードＮ１だけでなく、他の拠点Ｐ２等におけるノードＮ２やＷｅｂサーバＷＳ等とも通信を行うことができる。
【００２５】
また、図１に示すように、コンテンツ配信システムＳには、ネットワークＮＷを介して互いに通信可能な複数のノードの参加によりオーバーレイネットワークＯＮが構成されている。オーバーレイネットワークＯＮは、仮想的なリンクを構成する論理的なネットワークである。オーバーレイネットワークＯＮは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。なお、分散ハッシュテーブルを、以下、「ＤＨＴ（Distributed Hash Table）」という。ここで、オーバーレイネットワークＯＮに参加するとは、ＤＨＴを用いたルーティングテーブルに基づいてオーバーレイネットワークＯＮを介して他のノードとの間で各種メッセージを送受信できる状態に稼動することをいう。なお、ＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００２６】
また、オーバーレイネットワークＯＮに参加している各ノードには、ノードＩＤが付与されている。このノードＩＤは、ノードを、オーバーレイネットワークＯＮに参加しているノードの中から識別する固有の識別情報である。また、オーバーレイネットワークＯＮに参加している複数のノードには、複数のコンテンツが分散保存されている。言い換えれば、オーバーレイネットワークＯＮに参加している複数のノードによりコンテンツを保存するための一つのストレージが形成される。つまり、ストレージは、オーバーレイネットワークＯＮに参加している各ノードに備えられるストレージ領域により構成される。ストレージに保存可能なデータ容量は、オーバーレイネットワークＯＮに参加している各ノードに備えられるストレージ領域の記憶容量の総和である。各ノードにおいて所定の大きさのストレージ領域が設定されてもよい。この場合、ストレージに保存可能なデータ容量は、各ノードで設定されたストレージ領域の総和となる。なお、ストレージ領域の記憶容量とは、ストレージ領域にデータが未だ記憶されていないときの容量を示す。なお、コンテンツを保存しているノードを、以下、「コンテンツ保持ノード」という。また、オーバーレイネットワークＯＮでコンテンツ保持ノードに保存されている各コンテンツには、コンテンツＩＤが付与されている。コンテンツＩＤは、コンテンツを、オーバーレイネットワークＯＮでコンテンツ保持ノードに保存されるコンテンツの中から識別する固有の識別情報である。なお、ノードＩＤ及びコンテンツＩＤは、例えば、オーバーレイネットワークＯＮで共通のハッシュ関数により生成される。また、コンテンツの所在を示す情報は、インデックス情報として、コンテンツの所在を管理しているノードに記憶される。コンテンツの所在を管理しているノードを、以下、「コンテンツのルートノード」という。インデックス情報には、コンテンツを保存しているコンテンツ保持ノードのノード情報と、コンテンツのコンテンツＩＤとの組が含まれる。ノード情報には、例えば、コンテンツ保持ノードのＩＰアドレス、ポート番号、及びノードＩＤが含まれる。コンテンツのルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤが割り当てられたノードであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。そして、ノードが、あるコンテンツをコンテンツ保持ノードから取得する場合、先ず、オーバーレイネットワークＯＮを利用してコンテンツを検索する。この検索を行うノードを、以下、「ユーザノード」という。具体的には、ユーザノードは、取得対象のコンテンツの所在をコンテンツのルートノードに問い合わせる。これにより、ユーザノードは、ルートノードからコンテンツ保持ノードのＩＰアドレス等を受信する。そして、ユーザノードは、コンテンツ保持ノードにアクセスし、コンテンツをダウンロードする。なお、コンテンツの所在をルートノードに問い合わせる処理は、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。
【００２７】
また、本実施形態においては、オーバーレイネットワークＯＮを利用してコンテンツを配信する複数のサービスが提供される。そのため、複数のノードより形成されるストレージは、互いに異なる複数のサービスにより共用される。ここで、サービスの例としては、サービスＡ〜Ｃが挙げられる。サービスＡは、カラオケ用のコンテンツを配信するサービスである。サービスＢは、ユーザ等により投稿された動画のコンテンツを配信するサービスである。サービスＣは、映画や音楽のコンテンツを配信するサービスである。また、各サービスは、夫々異なる事業者により提供される。或いは、これらのサービスは同じ事業者により提供されてもよい。
【００２８】
また、ストレージに保存可能なデータ容量が、ストレージに対してサービス毎に割り当てられるようになっている。なお、ストレージに対してサービス毎に割り当てられるデータ容量を、以下、「割り当て容量」という。そして、オーバーレイネットワークＯＮには、各サービスで配信させる新規のコンテンツが、例えば定期的に投入される。ここで、「投入」とは、オーバーレイネットワークＯＮで配信されるコンテンツとして新規のコンテンツのレプリカをノードに保存させることをいう。
【００２９】
ところで、例えば、コンテンツの投入量の多いサービスＡとコンテンツ投入量の少ないサービスＢの各コンテンツが一様に分散保存されている場合がある。また、サービスＢのコンテンツによりストレージが圧迫されている場合がある。このような場合、サービスＡのコンテンツを取得するまでの待ち時間が、サービスＢのコンテンツを取得するまでの待ち時間と比較して長くなる可能性がある。このような状況に陥ると、次の不都合がある。例えば、コンテンツの投入量の多いサービスＡが人気のある新規コンテンツを投入した場合を考える。この場合、ユーザノードが人気のある新規コンテンツをオーバーレイネットワークＯＮを介して検索し取得するまでの待ち時間が長くなる。
【００３０】
そこで、本実施形態では、例えばコンテンツの投入の際に、サービス毎に投入されるコンテンツの容量を示す容量情報に基づいて、割り当て容量がサービス毎に動的に決定される。例えば、投入されるコンテンツの容量が大きいサービス程、割り当て容量が大きくなるように決定される。割り当て容量は、例えばセンターサーバＳＳ、または各ノードにより決定される。その結果、例えば、コンテンツの投入量の多いサービスのコンテンツがより多く分散保存される。そのため、ノードが、投入量の多いコンテンツを、オーバーレイネットワークＯＮを介して検索し取得するまでの待ち時間を短縮することができる。
【００３１】
なお、上記容量情報が示すコンテンツの容量は、オリジナルのコンテンツのファイルサイズ（byte）で表される。また、あるサービスにおいて投入されるコンテンツが複数ある場合がある。この場合、オリジナルのコンテンツのファイルサイズの総和が、容量情報が示すコンテンツの容量となる。
【００３２】
［２．センターサーバＳＳの構成及び機能］
次に、図２（Ａ）を参照して、センターサーバＳＳの構成及び機能について説明する。図２（Ａ）は、センターサーバＳＳの概要構成例を示すブロック図である。センターサーバＳＳは、図２（Ａ）に示すように、制御部１、記憶部２、及び通信部３等を備えて構成される。制御部１、記憶部２、及び通信部３はバス４を介して相互に接続されている。
【００３３】
記憶部２は、例えばハードディスクドライブ等から構成される。記憶部２には、オペレーティングシステム、及びストレージ容量決定プログラム等が記憶されている。なお、ストレージ容量決定プログラムは、例えば、ネットワークＮＷに接続された所定のサーバからダウンロードされるようにしてもよい。或いは、ストレージ容量決定プログラムは、例えば、記録媒体に記録されて記録媒体のドライブを介して読み込まれるようにしてもよい。
【００３４】
また、記憶部２には、所定日時に投入が予定されるコンテンツの属性を示すコンテンツ属性情報が記憶されている。このコンテンツ属性情報には、コンテンツ名、コンテンツＩＤ、コンテンツのファイルサイズ、コンテンツの公開期間、及びコンテンツを提供するサービスのサービスＩＤ等の情報が含まれる。ここで、サービスＩＤは、サービスを、他のサービスから識別する固有の識別情報である。コンテンツの公開期間は、例えば、投入されたコンテンツがオーバーレイネットワークＯＮを介して配信可能となる開始日時と、利用不能となる終了日時で表される。また、あるサービスにおいて投入が予定されるコンテンツが複数ある場合がある。この場合、投入が予定される各コンテンツの属性情報が記憶される。
【００３５】
また、記憶部２には、最大容量情報が、各サービスのサービスＩＤに対応付けられて記憶されている。最大容量情報は、サービス毎にストレージに対して割り当て可能な最大のデータ容量を示す。ここで、ストレージに対して割り当て可能な最大のデータ容量は、サービス毎に予め設定される。なお、最大のデータ容量を、以下、「最大容量」という。例えば、コンテンツの利用頻度が高いサービスの最大のデータ容量は、コンテンツの利用頻度が低いサービスの最大のデータ容量よりも大きく設定される。また、利用会員の数の多いサービスの最大のデータ容量は、利用会員の数の少ないサービスの最大のデータ容量よりも大きく設定される。なお、コンテンツ属性情報、及び最大容量情報は、例えばサービスを提供する事業者により使用される端末から取得される。
【００３６】
また、記憶部２には、ログイン情報が、各サービスのサービスＩＤに対応付けられて記憶されている。ログイン情報は、サービスを利用するユーザのログイン状況を示す。ここで、ログイン情報が示すログイン状況は、例えばユーザのログイン数で表される。例えば、ユーザは拠点端末Ｔｎ−ｌ等から、サービスを提供するためのＷｅｂサーバＷＳ又はノードへログイン要求を送信する。そして、ログイン要求に応じてログインが許可された場合に、ユーザはそのサービスを利用することができる。ログイン要求には、例えばユーザを識別するユーザＩＤ及びパスワードが含まれる。ログイン要求に含まれるユーザＩＤ及びパスワードの組がＷｅｂサーバＷＳ又はノードに登録されている場合にログインが許可される。また、ログイン情報は、例えばサービスを提供するためのＷｅｂサーバＷＳ又はノードＮｎから取得される。ここで、ログインとは、サービスによってはログオン又はサインインともいう。
【００３７】
また、記憶部２には、オーバーレイネットワークＯＮに投入された各コンテンツのコンテンツ属性情報が含まれるコンテンツカタログ情報のオリジナルが記憶されている。このコンテンツカタログ情報は、コンテンツの投入の際等の所定のタイミングで、オーバーレイネットワークＯＮに参加している各ノードへ配信される。
【００３８】
更に、記憶部２には、オーバーレイネットワークＯＮに参加している各ノードのノード情報を登録するノードリストが記憶されている。
【００３９】
なお、センターサーバＳＳがオーバーレイネットワークＯＮにコンテンツを投入する場合、記憶部２には投入されるコンテンツが記憶される。なお、コンテンツの投入は、センターサーバＳＳ以外の投入サーバが行うものであってもよい。
【００４０】
通信部３は、ネットワークＮＷを通じてノード等との間の通信制御を行う。
【００４１】
制御部１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部１は、本発明における第１取得手段、第２取得手段、受付手段、決定手段、及び送信手段の一例である。また、制御部１は、時計機能及びタイマ機能を有する。制御部１は、ＣＰＵが記憶部２等に記憶されたプログラムを読み出して実行することにより、後述する処理を行う。後述する処理において、制御部１が本発明における決定手段として機能する場合がある。この場合、制御部１が、サービス毎に投入されるコンテンツの容量を示す容量情報に基づいて、ストレージに対する割り当て容量をサービス毎に決定することになる。
【００４２】
［３．ノードの構成及び機能等］
次に、図２（Ｂ）を参照して、ノードの構成及び機能について説明する。図２（Ｂ）は、ノードの概要構成例を示すブロック図である。ノードは、図２（Ｂ）に示すように、制御部１１、記憶部１２、通信部１３ａ、通信部１３ｂ、及びバッファメモリ１４等を備えて構成される。制御部１１、記憶部１２、通信部１３ａ、通信部１３ｂ、及びバッファメモリ１４はバス１５を介して相互に接続されている。なお、記憶部１２は、本発明における「ストレージを構成する記憶手段」の一例である。
【００４３】
本実施形態において、ノードは、ネットワークＮＷと拠点ネットワークＮＬｍとの間でＩＰ（Internet Protocol）パケットを中継する中継機器である。この中継機器は、例えばルータ又はＬ３スイッチングハブ等である。なお、ノードは、Ｗｅｂサーバ又はユーザ端末であってもよい。また、ノードは、基本的にネットワークＮＷに定常的に接続されているゲートウェイ等の機器であっても良い。
【００４４】
記憶部１２は、例えばハードディスクドライブ等から構成される。記憶部１２には、オペレーティングシステム、ＩＰパケット中継処理プログラム、Ｐ２Ｐプログラム、及びストレージ容量決定プログラム等が記憶されている。
【００４５】
また、記憶部１２には、オーバーレイネットワークＯＮで使用されるＤＨＴを用いたルーティングテーブル等が記憶されている。ＤＨＴを用いたルーティングテーブルには、複数のノードのノード情報が登録されている。また、記憶部１２には、ストレージ領域が設けられている。このストレージ領域は、例えばノードとして制御処理を実行させるＰ２Ｐプログラムがインストールされることにより設けられる。そして、ストレージ領域には、サービス毎に割り当てられた「割り当て容量」以下に収まるように、各サービスで配信されるコンテンツが保存される。
【００４６】
また、記憶部１２には、ストレージ領域に保存されているコンテンツの属性を示すコンテンツ属性情報を管理する属性情報管理テーブルが記憶されている。
【００４７】
また、記憶部１２には、センターサーバＳＳから配信されたコンテンツカタログ情報が記憶されている。また、記憶部１２には、センターサーバＳＳのＩＰアドレス及びポート番号が記憶されている。
【００４８】
通信部１３ａは、ネットワークＮＷを通じてセンターサーバＳＳやＷｅｂサーバＷＳ等との間の通信制御を行う。通信部１３ｂは、拠点ネットワークＮＬｎを通じて拠点端末Ｔｎ−ｌとの間の通信制御を行う。また、バッファメモリ１４は、通信部１３ａを介して受信されたコンテンツを一時的に蓄積する。
【００４９】
制御部１１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，及びＲＯＭ等から構成される。制御部１１は、本発明における第１取得手段、第２取得手段、第３取得手段、決定手段、判定手段及び割り当て処理手段の一例である。また、制御部１１は、時計機能及びタイマ機能を備える。そして、制御部１１は、ＣＰＵが記憶部１２等に記憶されたプログラムを読み出して実行することにより、後述する処理を行う。後述する処理において、制御部１が本発明における決定手段として機能する場合がある。この場合、制御部１が、サービス毎に投入されるコンテンツの容量を示す容量情報に基づいて、ストレージに対する割り当て容量をサービス毎に決定することになる。なお、制御部１１は、ＯＳＩ（Open Systems Interconnection）参照モデルの第３層であるネットワーク層において、他のルータ又はホストからのＩＰパケットを中継する機能を有する。ＩＰパケットを中継する機能は、公知のルータ又はＬ３スイッチングハブ等と同様であるので、詳しい説明を省略する。
【００５０】
［４．コンテンツ配信システムＳの動作］
次に、本実施形態に係るコンテンツ配信システムＳの動作について説明する。ストレージに対する割り当て容量をサービス毎に決定する処理は、センターサーバＳＳが行う場合とノードが行う場合とがある。なお、以下の説明において、センターサーバＳＳの記憶部２には、コンテンツ属性情報がサービスＩＤに対応付けられて記憶されているものとする。コンテンツの属性情報は、例えば各サービスを提供する事業者により使用される端末から送信されたものである。
【００５１】
（実施例１）
実施例１では、図３（Ａ），（Ｃ）を参照して、センターサーバＳＳが割り当て容量を決定する場合について説明する。図３（Ａ）は、センターサーバＳＳの制御部１の処理を示すフローチャートである。図３（Ｃ）は、ストレージへの割り当て容量決定処理の詳細を示すフローチャートである。
【００５２】
図３（Ａ）に示す処理は、センターサーバＳＳの制御部１が、ストレージへの割り当て開始指令を受け付けた場合に開始される。この割り当て開始指令を示すメッセージは、例えばコンテンツの投入時に、システム管理者の端末等から送信される。なお、コンテンツの投入は、所定期間毎に行われる。或いは、コンテンツの投入は、各サービスで投入対象となるコンテンツが所定数以上となった場合に行われる。
【００５３】
図３（Ａ）に示す処理が開始されると、センターサーバＳＳの制御部１は、投入されるコンテンツの容量Ｃ（ｉ）を示す容量情報をサービス毎に取得する（ステップＳ１）。ここで、「ｉ」は、１〜Ｎまでの自然数であり、Ｎはサービスの数に相当する。また、コンテンツの容量Ｃ（ｉ）は、投入されるコンテンツのファイルサイズの総和として算出される。ただし、投入されるコンテンツが１つの場合、コンテンツの容量Ｃ（ｉ）は、このコンテンツのファイルサイズに等しい。コンテンツのファイルサイズは、記憶部２に記憶されたコンテンツの属性情報中から取得される。
【００５４】
次いで、センターサーバＳＳの制御部１は、ステップＳ１で取得した各サービスに対応する容量情報に基づいて、ストレージへの割り当て容量決定処理を行う（ステップＳ２）。ここで、ストレージへの割り当て容量決定処理とは、ストレージに対する割り当て容量をサービス毎に決定する処理である。図３（Ｃ）に示す割り当て容量決定処理では、制御部１は、各サービスのコンテンツの容量Ｃ（ｉ）の総和を算出する（ステップＳ２１）。
【００５５】
次いで、制御部１は、コンテンツの容量Ｃ（ｉ）の総和に対するコンテンツの容量の比率Ｐ（ｉ）をサービス毎に算出する（ステップＳ２２）。この比率Ｐ（ｉ）は、例えば、コンテンツの容量Ｃ（ｉ）を、ステップＳ２１で算出された容量の総和で除算することで算出される。すなわち、コンテンツの容量の比率Ｐ（ｉ）＝（コンテンツの容量Ｃ（ｉ））／（容量Ｃ（ｉ）の総和）である。例えば、サービスＡのコンテンツの容量Ｃ（１）が５ＧＢ、サービスＢのコンテンツの容量Ｃ（２）が３ＧＢ、サービスＣのコンテンツの容量Ｃ（３）が２ＧＢと仮定する。この場合、容量の総和は１０ＧＢとなる。従って、例えば、サービスＡのコンテンツの容量Ｃ（１）の比率Ｐ（１）は、５ＧＢ／１０ＧＢ＝０．５となる。なお、サービスのコンテンツの容量Ｃ（ｉ）の比率Ｐ（ｉ）を、以下、「サービスの比率Ｐ（ｉ）」という。
【００５６】
ここで、サービスの比率Ｐ（ｉ）は、厳密に｛（コンテンツの容量Ｃ（ｉ））／（容量Ｃ（ｉ）の総和）｝でなくともよい。例えば、サービスの比率Ｐ（ｉ）は、｛（コンテンツの容量Ｃ（ｉ））／（容量Ｃ（ｉ）の総和）｝に基づいて決定される大まかな比率としてもよい。大まかな比率とは、例えば、端数を、四捨五入や切り上げ等の方法でまるめた比率を意味する。例えば、サービスＡの比率Ｐ（１）が０．４７、サービスＢの比率Ｐ（２）が０．２４、サービスＣの比率Ｐ（３）が０．２９であると仮定する。この場合、大まかな比率は、例えば、サービスＡの比率Ｐ（１）が０．５、サービスＢの比率Ｐ（２）が０．２、サービスＣの比率Ｐ（３）が０．３となる。或いは、サービスの比率Ｐ（ｉ）は、｛（コンテンツの容量Ｃ（ｉ））／（容量Ｃ（ｉ）の総和）｝に定数ｋを乗じて算出してもよい。この場合、この定数ｋは、例えば、各サービスで異なる値となる。例えば、各サービスに対応する定数ｋは、サービス毎に設定された重み付けによって決定される。重み付けは、例えばサービスの利用頻度等によって決定される。
【００５７】
次いで、制御部１は、ストレージへの割り当て容量Ａ（ｉ）をサービス毎に決定する（ステップＳ２３）。この割り当て容量Ａ（ｉ）は、例えば、ストレージ領域の記憶容量に、ステップＳ２２で算出されたサービスの比率Ｐ（ｉ）を乗算することで算出される。つまり、制御部１は、コンテンツの容量Ｃ（ｉ）が大きいサービス程、割り当て容量を大きく決定する。ここで、ストレージ領域の記憶容量は、例えば図３（Ａ）に示す処理の開始時に、ストレージ領域の記憶容量を設定するための設定ファイルから読み込まれる。
【００５８】
そして、サービスの割り当て容量Ａ（ｉ）が決定されると、制御部１は、割り当て実行指示処理を行う（ステップＳ３）。ここで、割り当て実行指示処理とは、決定された割り当て容量に応じた割り当てを実行させる指示を示す指示メッセージを、ストレージを形成する複数のノードへ送信する処理である。指示メッセージは、指示情報の一例である。指示メッセージには、上記ステップＳ２３で決定された、各サービスの割り当て容量Ａ（ｉ）及びサービスＩＤが含まれる。なお、指示メッセージには、決定された割り当て容量Ａ（ｉ）に代えて、サービスの比率Ｐ（ｉ）が含まれるように構成してもよい。また、指示メッセージの送信先となるノードのＩＰアドレス及びポート番号は、記憶部２に記憶されたノードリストから取得される。なお、例えば、センターサーバＳＳが、指示メッセージを、ストレージを形成する全てのノードに直接送信する。或いは、センターサーバＳＳがＤＨＴマルチキャストを利用して指示メッセージを全てのノードへ送信させるように構成してもよい。ここで、ＤＨＴマルチキャストは、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。
【００５９】
こうして送信された指示メッセージをノードが受信した場合、ノードの制御部１１は、指示メッセージに基づいて、記憶部１２に設けられたストレージ領域への割り当て処理を実行する。より具体的に、この割り当て処理では、指示メッセージに含まれる各サービスの割り当て容量Ａ（ｉ）及びサービスＩＤが抽出される。そして、各サービスの割り当て容量Ａ（ｉ）をストレージ領域に割り当てるための設定ファイルが作成、保存される。この設定ファイルには、指示メッセージから抽出された各サービスの割り当て容量Ａ（ｉ）と、各サービスのサービスＩＤとが対応付けられて格納される。サービスＩＤは、サービス毎に予め付与された識別情報の一例である。なお、指示メッセージにサービスの比率Ｐ（ｉ）が含まれる場合がある。この場合、ノードの制御部１１は、記憶部１２に設けられたストレージ領域の記憶容量に、サービスの比率Ｐ（ｉ）を乗算する。この計算により、サービスの割り当て容量Ａ（ｉ）がサービス毎に決定されることになる。
【００６０】
このように割り当て処理は、オーバーレイネットワークＯＮに参加している各ノードにより実行される。その結果、複数のノードから形成されるストレージに保存可能なデータ容量がサービス毎に割り当てられることになる。
【００６１】
以上説明したように、実施例１によれば、複数のサービス夫々でこれから投入されるコンテンツの容量が大きいサービス程、ストレージに対して割り当てられる割り当て容量が大きく決定される。そのため、複数のサービスによりストレージが共用される場合であっても、各サービス毎に適した容量をストレージへ割り当てることができる。よって、サービス毎に適切な大きさのストレージを確保することができる。その結果、例えば、コンテンツの投入量の多いサービスのコンテンツがより多く分散保存されることで、投入量の多いコンテンツを、オーバーレイネットワークＯＮを介して検索し取得するまでの待ち時間を短縮することができる。
【００６２】
また、実施例１では、各ノードは、センターサーバＳＳからの指示に基づいて割り当て処理を実行すればよい。そのため、ノードの処理負荷を低減することができる。
【００６３】
ところで、上記割り当て処理により作成された設定ファイルは、ノードがコンテンツ保持ノードからコンテンツを取得した場合に参照される。例えば、ノードＮ１が、拠点端末Ｔ１−ｌから、サービスＡで提供されるカラオケ用のコンテンツの要求を受けた場合を想定する。なお、拠点端末Ｔ１−ｌは、サービスＡを利用するためのログインを行ったユーザにより使用される。この場合、ノードＮ１は、拠点端末Ｔ１−ｌから要求されたコンテンツを保存していなければ、このコンテンツをオーバーレイネットワークＯＮに参加しているコンテンツ保持ノードから取得する。つまり、ノードＮ１は、他の装置からネットワークＮＷを介してコンテンツを取得する。そして、ノードは、取得したコンテンツを拠点端末Ｔ１−ｌへ送信する。このとき、ノードＮ１は、取得したコンテンツをストレージ領域に保存するコンテンツ保存処理を行う。
【００６４】
このコンテンツ保存処理では、ノードＮ１は、先ず、取得したコンテンツのファイルサイズと、ストレージ領域に保存されているコンテンツであってサービスＡのサービスＩＤが対応付けられている全てのコンテンツのファイルサイズとの総和を算出する。次いで、ノードＮ１は、設定ファイルから、サービスＡのサービスＩＤに対応付けられている割り当て容量Ａ（１）を取得する。ここで、サービスＡは、上記取得されたコンテンツを提供するサービスである。また、割り当て容量Ａ（１）は、サービスＡのサービスＩＤに対応付けられて設定ファイルに格納されているデータ容量の一例である。ノードＮ１は、取得した割り当て容量Ａ（１）に基づいて、取得したコンテンツをストレージ領域に記憶可能であるかを判定する。具体的には、ノードＮ１は、算出したファイルサイズの総和が、取得した割り当て容量Ａ（１）を超えているか否かを判定する。そして、ノードＮ１は、ファイルサイズの総和が割り当て容量Ａ（１）を超えていないと判定した場合、取得したコンテンツをストレージ領域に記憶可能であると判定する。記憶可能であると判定したノードＮ１は、取得したコンテンツをストレージ領域に保存する。このとき、このコンテンツのコンテンツ属性情報が、上述した属性情報管理テーブルに登録される。一方、ノードＮ１は、ファイルサイズの総和が割り当て容量Ａ（１）を超えていると判定した場合、取得したコンテンツをストレージ領域に記憶可能でないと判定する。記録可能でないと判定したノードＮ１は、サービスＡのサービスＩＤが対応付けられているコンテンツのうち、例えば最も過去に保存されたコンテンツをストレージ領域から削除する。これにより、上記取得されたコンテンツを保存するための空き領域が確保される。そして、ノードＮ１は、取得したコンテンツをストレージ領域に保存する。
【００６５】
別の例として、例えば、ノードＮ１が、ＷｅｂサーバＷＳから、サービスＢで提供される動画のコンテンツの要求を受けた場合を想定する。ＷｅｂサーバＷＳは、例えばユーザ端末ＵＴからサービスＢで提供される動画のコンテンツの要求を受ける。この場合、ＷｅｂサーバＷＳは、オーバーレイネットワークＯＮに参加しているノードＮ１へアクセスしてコンテンツの要求を行うようになっている。また、ユーザ端末ＵＴは、サービスＢを利用するためのログインを行ったユーザにより使用される。この場合、ノードＮ１は、ＷｅｂサーバＷＳから要求されたコンテンツを保存していなければ、このコンテンツをオーバーレイネットワークＯＮに参加しているコンテンツ保持ノードから取得する。そして、ノードは、取得したコンテンツをＷｅｂサーバＷＳへ送信する。このときも、上記コンテンツ保存処理が行われる。そして、ＷｅｂサーバＷＳは、取得したコンテンツをユーザ端末ＵＴへ送信する。なお、ノードＮ１は、ＷｅｂサーバＷＳへコンテンツを送信する代わりに、ノードＮ１のＩＰアドレスを送信するように構成してもよい。
【００６６】
（実施例２）
実施例２では、図３（Ｂ），（Ｃ）を参照して、ノードが割り当て容量を決定する場合について説明する。図３（Ｂ）は、ノードＮｎの制御部１１の処理を示すフローチャートである。
【００６７】
図３（Ｂ）に示す処理は、ノードの制御部１１が、ストレージに対する割り当て開始指令を受け付けた場合に開始される。この割り当て開始指令を示すメッセージは、例えばセンターサーバＳＳから送信される。或いは、センターサーバＳＳがＤＨＴマルチキャストを利用して割り当て開始指令を示すメッセージを全てのノードへ送信させるように構成してもよい。
【００６８】
図３（Ｂ）に示す処理が開始されると、ノードの制御部１１は、投入されるコンテンツの容量Ｃ（ｉ）を示す容量情報をサービス毎に取得する（ステップＳ１１）。コンテンツの容量Ｃ（ｉ）を示す容量情報は、例えばセンターサーバＳＳからネットワークＮＷを介して取得される。
【００６９】
或いは、ノードの制御部１１は、記憶部１２に記憶されているコンテンツカタログ情報から取得するように構成してもよい。この場合、割り当て開始指令を示すメッセージ中には、各サービスのサービスＩＤが含まれる。これにより、ノードＮｎの制御部１１は、コンテンツカタログ情報中で各サービスＩＤに対応付けられたコンテンツのファイルサイズを取得する。そして、ノードＮｎの制御部１１は、取得したコンテンツのファイルサイズに基づいて、各サービスのコンテンツの容量Ｃ（ｉ）を算出する。
【００７０】
次いで、ノードの制御部１１は、ステップＳ１１で取得した各サービスに対応する容量情報に基づいて、上述した図３（Ｃ）に示す割り当て容量決定処理を行う（ステップＳ１２）。
【００７１】
次いで、ノードの制御部１１は、割り当て容量決定処理により決定された割り当て容量Ａ（ｉ）に基づいて、記憶部１２に設けられたストレージ領域への割り当て処理を実行する（ステップＳ１３）。より具体的に、この割り当て処理では、ステップＳ１２で決定された各サービスの割り当て容量Ａ（ｉ）をストレージ領域に割り当てるための設定ファイルが作成、保存される。この設定ファイルには、ステップＳ１２で決定された各サービスの割り当て容量Ａ（ｉ）と、各サービスのサービスＩＤとが対応付けられて格納される。このような割り当て処理は、オーバーレイネットワークＯＮに参加している各ノードにより実行される。
【００７２】
以上説明したように、実施例２によれば、実施例１と同様の効果を奏すると共に、各ノードＮｎが割り当て容量決定処理を行うため、処理負荷を分散させることができる。そのため、センターサーバＳＳの処理負荷を低減することができる。
【００７３】
（実施例３）
実施例３では、図４（Ａ）等を参照して、図３（Ｃ）で説明した割り当て容量決定処理の変形例について説明する。図４（Ａ）は、ストレージへの割り当て容量決定処理の変形例１を示すフローチャートである。
【００７４】
実施例１又は実施例２では、ストレージに対する各サービスの割り当て容量は、図３（Ａ）又は図３（Ｂ）に示す処理が行われる毎に変動する可能性がある。しかし、このような変動は、望ましくない場合がある。例えば、通常は、投入されるコンテンツの容量が大きく利用頻度が高いサービス等であっても、ある時だけ投入されるコンテンツの容量が小さい場合が考えられる。この場合、利用頻度が高いサービスであるにも関わらず、このサービスの割り当て容量が小さくなってしまう。その結果、そのサービスのコンテンツを、オーバーレイネットワークＯＮを介して検索し取得するまでの待ち時間が長くなるという不都合が生じる。
【００７５】
そこで、実施例３では、ストレージを、固定ストレージと、空きストレージとに分ける。固定ストレージは、ストレージの中で所定容量を有する。空きストレージは、ストレージの中で固定ストレージを除いたストレージである。そして、実施例３では、固定ストレージに対して保存可能なデータ容量をサービス毎に割り当てる。更に、実施例３では、空きストレージに対して保存可能なデータ容量をサービス毎に割り当てる。ここで、固定ストレージは、各ノードＮｎの記憶部１２に設けられた固定ストレージ領域により構成される。つまり、固定ストレージに保存可能なデータ容量は、各固定ストレージ領域の記憶容量の総和である。固定ストレージ領域は、オーバーレイネットワークＯＮに参加している各ノードの記憶部１２に設けられた領域である。また、各ノードの記憶部１２に設けられた固定ストレージ領域は、全体のストレージ領域の中で所定の記憶容量を有する。一方、空きストレージは、各ノードの記憶部１２に設けられた空きストレージ領域により構成される。つまり、空きストレージに保存可能なデータ容量は、各空きストレージ領域の記憶容量の総和である。空きストレージ領域は、オーバーレイネットワークＯＮに参加している各ノードの記憶部１２に設けられた領域である。各ノードの記憶部１２に設けられた固定ストレージ領域は、全体のストレージ領域の中で固定ストレージ領域を除いた記憶容量を有する。
【００７６】
そして、実施例３では、図３（Ａ）に示すステップＳ２又は図３（Ｂ）に示すステップＳ１２において図４（Ａ）に示す割り当て容量決定処理が行われる。
【００７７】
図４（Ａ）に示すステップＳ３１では、固定ストレージへの割り当て容量決定処理が制御部１又は制御部１１により行われる。固定ストレージへの割り当て容量決定処理としては、例えば図４（Ｂ）に示す処理と、図４（Ｃ）に示す処理の２通りが挙げられる。図４（Ｂ），（Ｃ）は、固定ストレージへの割り当て容量決定処理の詳細を示すフローチャートである。なお、図４（Ａ）に示すステップＳ３１の処理は、例えばサービス開始時の１回だけ行われる。
【００７８】
図４（Ｂ）に示す固定ストレージへの割り当て容量決定処理では、制御部１又は制御部１１は、サービスＩＤの数に基づきサービス数Ｎを算出する（ステップＳ３１１）。次いで、制御部１又は制御部１１は、固定ストレージへの割り当て容量Ａｘ（ｉ）をサービス毎に決定する（ステップＳ３１２）。この割り当て容量Ａｘ（ｉ）は、例えば、固定ストレージ領域の記憶容量をサービス数Ｎで除算することで算出される。こうして、各サービスに均等な固定サイズの割り当て容量Ａｘ（ｉ）が決定される。
【００７９】
一方、図４（Ｃ）に示す固定ストレージへの割り当て決定処理では、制御部１又は制御部１１は、ストレージに対して割り当て可能な最大容量Ｃｍ（ｉ）を示す最大容量情報をサービス毎に取得する（ステップＳ３１５）。ここで、ノードによりステップＳ３１５の処理が行われる場合、最大容量情報は例えばセンターサーバＳＳからネットワークＮＷを介して取得される。次いで、制御部１又は制御部１１は、各サービスの最大容量Ｃｍ（ｉ）の総和を算出する（ステップＳ３１６）。次いで、制御部１又は制御部１１は、最大容量Ｃｍ（ｉ）の総和に対するコンテンツの最大容量Ｃｍ（ｉ）の比率Ｐｍ（ｉ）をサービス毎に算出する（ステップＳ３１７）。この比率Ｐｍ（ｉ）は、例えば、各サービスの最大容量Ｃｍ（ｉ）を、ステップＳ３１６で算出された最大容量Ｃｍ（ｉ）の総和で除算することで算出される。次いで、制御部１又は制御部１１は、固定ストレージへの割り当て容量Ａｘ（ｉ）をサービス毎に決定する（ステップＳ３１８）。この割り当て容量Ａｘ（ｉ）は、例えば、固定ストレージ領域の記憶容量に、ステップＳ３１７で算出されたサービスの比率Ｐｍ（ｉ）を乗算することで算出される。つまり、制御部１又は制御部１１は、最大容量Ｃｍ（ｉ）が大きいサービス程、固定ストレージに対して割り当てる容量を大きく決定する。こうして、各サービスにその最大容量Ｃｍ（ｉ）に応じた固定サイズの割り当て容量Ａｘ（ｉ）が決定される。
【００８０】
次いで、ステップＳ３２では、空きストレージへの割り当て容量決定処理が制御部１又は制御部１１により行われる。空きストレージへの割り当て容量決定処理は、図３（Ｃ）に示す処理と同様に行われる。この処理により、空きストレージへの割り当て容量Ａｙ（ｉ）をサービス毎に決定される。なお、図４（Ａ）に示すステップＳ３２の処理は、実施例１又は実施例２と同様、例えばコンテンツの投入がある度に行われる。
【００８１】
以上のように決定された固定ストレージへの割り当て容量Ａｘ（ｉ）及び空きストレージへの割り当て容量Ａｙ（ｉ）は、ノードの割り当て処理で用いられる。すなわち、ノードの制御部１１は、記憶部１２に設けられた固定ストレージ領域への割り当て処理と空きストレージ領域への割り当て処理とを行う。固定ストレージ領域への割り当て処理では、各サービスの割り当て容量Ａｘ（ｉ）を固定ストレージ領域に割り当てるための設定ファイルが作成、保存される。空きストレージ領域への割り当て処理では、各サービスの割り当て容量Ａｙ（ｉ）を空きストレージ領域に割り当てるための設定ファイルが作成、保存される。図４（Ｄ）は、図４（Ｂ）に示す処理が行われた場合の固定ストレージ領域への割り当て容量と、空きストレージ領域への割り当て容量の一例を示す。一方、図４（Ｅ）は、図４（Ｃ）に示す処理が行われた場合の固定ストレージ領域への割り当て容量と、空きストレージ領域への割り当て容量の一例を示す。
【００８２】
以上説明したように、実施例３によれば、サービス毎に最低限必要な大きさのストレージを確保しつつ、サービス夫々でこれから投入されるコンテンツの容量に応じた適切な大きさのストレージを確保することができる。
【００８３】
（実施例４）
実施例４では、図４（Ａ）等を参照して、図３（Ｃ）で説明した割り当て容量決定処理のもう一つの変形例について説明する。実施例４においても、固定ストレージと空きストレージとに対して別々に、保存可能なデータ容量をサービス毎に割り当てるように構成する。
【００８４】
実施例４においても、実施例３と同様に、図４（Ａ）に示すステップＳ３１において、固定ストレージへの割り当て容量決定処理が制御部１又は制御部１１により行われる。
【００８５】
次いで、ステップＳ３２における空きストレージへの割り当て容量決定処理では、上述したログイン情報が用いられる。図４（Ｆ）は、実施例４における、空きストレージへの割り当て容量決定処理を示すフローチャートである。
【００８６】
図４（Ｆ）に示す処理では、制御部１又は制御部１１は、サービスを利用するユーザのログイン状況を示すログイン情報をサービス毎に取得する（ステップＳ３２１）。ここで、ノードＮｎによりステップＳ３２１の処理が行われるケースにおいては、コンテンツ配信システムＳ全体のユーザのログイン情報を用いる場合と、ノードが属する拠点Ｐｎ内のユーザのログイン情報を用いる場合との２通りが挙げられる。コンテンツ配信システムＳ全体のユーザのログイン情報を用いる場合、このログイン情報は例えばセンターサーバＳＳからネットワークＮＷを介して取得される。一方、ノードが属する拠点Ｐｎ内のユーザのログイン情報を用いる場合、このログイン情報は記憶部１２から取得される。ノードが属する拠点Ｐｎ内のユーザのログイン情報は、ノードと同一の拠点ネットワークＮＬｎに接続される拠点端末Ｔｎ−ｌのユーザのログイン数を示す。例えば、カラオケ店舗に来店してログインしたユーザの数である。
【００８７】
そして、制御部１又は制御部１１は、各サービスのログイン情報から得られるログイン数Ｌ（ｉ）の総和を算出する（ステップＳ３２２）。次いで、制御部１又は制御部１１は、ログイン数Ｌ（ｉ）の総和に対するログイン数Ｌ（ｉ）の比率Ｐｌ（ｉ）をサービス毎に算出する（ステップＳ３２３）。この比率Ｐｌ（ｉ）は、例えば、各サービスのログイン数Ｌ（ｉ）を、ステップＳ３２２で算出されたログイン数Ｌ（ｉ）の総和で除算することで算出される。次いで、制御部１又は制御部１１は、空きストレージへの割り当て容量Ａｙ（ｉ）をサービス毎に決定する（ステップＳ３２４）。この割り当て容量Ａｙ（ｉ）は、例えば、空きストレージ領域の記憶容量に、ステップＳ３２３で算出されたサービスの比率Ｐｌ（ｉ）を乗算することで算出される。つまり、制御部１又は制御部１１は、ログイン数Ｌ（ｉ）が多いサービス程、空きストレージに対して割り当てる容量を大きく決定する。
【００８８】
以上のように決定された固定ストレージへの割り当て容量Ａｘ（ｉ）及び空きストレージへの割り当て容量Ａｙ（ｉ）は、実施例３と同様、ノードＮｎの割り当て処理で用いられる。
【００８９】
以上説明したように、実施例４によれば、サービス夫々でこれから配信されるコンテンツの容量に応じ、且つ、サービス毎に利用しているユーザの数に応じた適切な大きさのストレージを確保することができる。
【００９０】
なお、実施例１及び実施例２で説明した図３（Ｃ）に示す割り当て容量決定処理のステップＳ２において、ユーザのログイン状況を示すログイン情報に基づいて、ストレージへの割り当て容量決定処理を行うように構成してもよい。この場合、図３（Ｃ）において、ステップＳ１、及びステップＳ２１〜Ｓ２３の処理に代えて、ステップＳ３２１〜Ｓ３２４の処理が行われることになる。
【００９１】
また、上記実施形態においては、オーバーレイネットワークＯＮに、ＤＨＴを利用したピアツーピアネットワークを適用したが、これに限られるものではない。例えば、他のオーバーレイネットワークを用いたシステムが適用されてもよい。ＤＨＴを利用しないピアツーピアシステムとしては、例えば、ハイブリッド型のピアツーピアシステムがある。
【符号の説明】
【００９２】
１，１１  制御部
２，１２  記憶部
３，１３ａ，１３ｂ  通信部
ＳＳ  センターサーバ
Ｎｎ  ノード
ＮＷ  ネットワーク
ＯＮ  オーバーレイネットワーク
Ｓ  コンテンツ配信システム
【図１】
2012118709.tif 000003
【図２】
2012118709.tif 000004
【図３】
2012118709.tif 000005
【図４】
2012118709.tif 000006