(57)【要約】  容量の限られたメモリキャッシュを使用したコンテンツ配信においてコンテンツの一部分にしかアクセスが無い場合でもコンテンツ全体がメモリキャッシュに格納され、メモリキャッシュの利用効率が悪いという問題を解決する。  コンテンツ配信装置は、配信するコンテンツを格納するコンテンツ保持手段１０２と、配信するコンテンツを一時的に格納するキャッシュ保持手段１０３と、キャッシュ保持手段又はコンテンツ保持手段に格納したコンテンツを配信するコンテンツ配信手段１００と、キャッシュ保持手段に対するコンテンツの格納および削除を制御するキャッシュ制御手段１０１とを含み、キャッシュ制御手段１０１は、コンテンツを複数のブロックに区切り、該ブロック毎にキャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、ブロック毎にキャッシュ保持手段への格納と削除を制御する。
2010058790.tif 000002
【特許請求の範囲】
【請求項１】
配信するコンテンツを格納するコンテンツ保持手段と、
配信する前記コンテンツを一時的に格納するキャッシュ保持手段と、
前記キャッシュ保持手段又は前記コンテンツ保持手段に格納した前記コンテンツを配信するコンテンツ配信手段と、
前記キャッシュ保持手段に対するコンテンツの格納および削除を制御するキャッシュ制御手段とを備え、
前記キャッシュ制御手段は、前記コンテンツを複数のブロックに区切り、該ブロック毎に前記キャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、前記ブロック毎に前記キャッシュ保持手段への格納と削除を制御することを特徴とするコンテンツ配信装置。
【請求項２】
前記キャッシュ制御手段は、前記キャッシュ保持手段に格納した前記ブロックに対するアクセスの有無により、前記キャッシュ保持手段に格納した時点又は前記ブロックに対して最後のアクセスがあった時点から前記削除待ち時間が経過しているかを判別し、前記削除待ち時間が経過している場合に、前記ブロックを前記キャッシュ保持手段から削除することを特徴とする請求項１に記載のコンテンツ配信装置。
【請求項３】
前記キャッシュ制御手段は、前記キャッシュ保持手段に格納した前記ブロックに対するアクセス頻度に応じて、前記キャッシュ制御情報の前記削除待ち時間に予め設定した更新時間を加算して更新することを特徴とする請求項１又は請求項２に記載のコンテンツ配信装置。
【請求項４】
前記アクセス頻度に少なくとも１の閾値を設け、前記アクセス頻度が前記閾値以下の場合と前記閾値を越えた場合とで、前記更新時間の長さを変えることを特徴とする請求項３に記載のコンテンツ配信装置。
【請求項５】
前記キャッシュ制御手段は、前記キャッシュ保持手段に格納した前記ブロックがアクセス中であるかを判定し、アクセス中で無い場合に、前記ブロックについての前記削除待ち時間が経過しているかを判定して前記ブロックの前記キャッシュ保持手段からの削除を実行することを特徴とする請求項１から請求項４の何れかに記載のコンテンツ配信装置。
【請求項６】
前記コンテンツを、所定のデータサイズ又は再生時間に基づいて複数のブロックに区切ることを特徴とする請求項１から請求項５の何れかに記載のコンテンツ配信装置。
【請求項７】
階層型符号化方式でエンコードされたコンテンツのレイヤ毎に、前記コンテンツを複数のブロックに区切り、前記レイヤの階層に応じて前記削除待ち時間を設定することを特徴とする請求項１から請求項５の何れかに記載のコンテンツ配信装置。
【請求項８】
前記コンテンツのレイヤ毎の前記ブロックをさらに複数の小ブロックに区切り、前記小ブロックが属するレイヤに応じて前記小ブロックの前記削除待ち時間を設定することを特徴とする請求項７に記載のコンテンツ配信装置。
【請求項９】
予想されるアクセス頻度に応じて、前記小ブロックの数を前記コンテンツのレイヤ毎に変えることを特徴とする請求項８に記載のコンテンツ配信装置。
【請求項１０】
前記コンテンツのレイヤ毎に、前記更新時間の長さを変えることを特徴とする請求項７から請求項９の何れかに記載のコンテンツ配信装置。
【請求項１１】
前記コンテンツに含まれるデータのフォーマット毎に、前記コンテンツを複数のブロックに区切り、前記データのフォーマットに応じて前記削除待ち時間を設定することを特徴とする請求項１から請求項５の何れかに記載のコンテンツ配信装置。
【請求項１２】
前記コンテンツに含まれるデータの内容毎に、前記コンテンツを複数のブロックに区切り、前記データの内容に応じて前記削除待ち時間を設定することを特徴とする請求項１から請求項５の何れかに記載のコンテンツ配信装置。
【請求項１３】
前記コンテンツのデータのフォーマット毎又はデータの内容毎の前記ブロックをさらに複数の小ブロックに区切り、前記小ブロックが属するフォーマット毎又はデータの内容に応じて前記小ブロックの前記削除待ち時間を設定することを特徴とする請求項１１又は請求項１２に記載のコンテンツ配信装置。
【請求項１４】
前記コンテンツを前記コンテンツ保持手段に格納する際に、前記コンテンツについて前記キャッシュ制御情報を生成する制御情報生成手段を備えることを特徴とする請求項１から請求項１３の何れかに記載のコンテンツ配信装置。
【請求項１５】
前記コンテンツの前記ブロックに関する前記キャッシュ制御情報を保持するキャッシュ制御情報保持手段を備えることを特徴とする請求項１から請求項１４の何れかに記載のコンテンツ配信装置。
【請求項１６】
前記コンテンツ配信手段は、配信要求されたコンテンツが前記キャッシュ保持手段に存在しない場合は、前記コンテンツ保持手段からコンテンツを読み出し、前記キャッシュ保持手段へ格納すると同時に配信要求元へ配信することを特徴とする請求項１から請求項１５の何れかに記載のコンテンツ配信装置。
【請求項１７】
コンテンツを配信するコンテンツ配信装置におけるコンテンツ配信制御方法であって、
前記コンテンツを格納するコンテンツ保持手段又は前記コンテンツを一時的に保持するキャッシュ保持手段から前記コンテンツを配信し、
前記コンテンツを複数のブロックに区切り、該ブロック毎に前記キャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、前記ブロック毎に前記キャッシュ保持手段への格納と削除を制御することを特徴とするコンテンツ配信制御方法。
【請求項１８】
前記キャッシュ保持手段に格納した前記ブロックに対するアクセスの有無により、前記キャッシュ保持手段に格納した時点又は前記ブロックに対して最後のアクセスがあった時点から前記削除待ち時間が経過しているかを判別し、前記削除待ち時間が経過している場合に、前記ブロックを前記キャッシュ保持手段から削除することを特徴とする請求項１７に記載のコンテンツ配信制御方法。
【請求項１９】
前記キャッシュ保持手段に格納した前記ブロックに対するアクセス頻度に応じて、前記キャッシュ制御情報の前記削除待ち時間に予め設定した更新時間を加算して更新することを特徴とする請求項１７又は請求項１８に記載のコンテンツ配信制御方法。
【請求項２０】
前記アクセス頻度に少なくとも１の閾値を設け、前記アクセス頻度が前記閾値以下の場合と前記閾値を越えた場合とで、前記更新時間の長さを変えることを特徴とする請求項１９に記載のコンテンツ配信制御方法。
【請求項２１】
前記キャッシュ保持手段に格納した前記ブロックがアクセス中であるかを判定し、アクセス中で無い場合に、前記ブロックについての前記削除待ち時間が経過しているかを判定して前記ブロックの前記キャッシュ保持手段からの削除を実行することを特徴とする請求項１７から請求項２０の何れかに記載のコンテンツ配信制御方法。
【請求項２２】
前記コンテンツを、所定のデータサイズ又は再生時間に基づいて複数のブロックに区切ることを特徴とする請求項１７から請求項２１の何れかに記載のコンテンツ配信制御方法。
【請求項２３】
階層型符号化方式でエンコードされたコンテンツのレイヤ毎に、前記コンテンツを複数のブロックに区切り、前記レイヤの階層に応じて前記削除待ち時間を設定することを特徴とする請求項１７から請求項２１の何れかに記載のコンテンツ配信制御方法。
【請求項２４】
前記コンテンツのレイヤ毎の前記ブロックをさらに複数の小ブロックに区切り、前記小ブロックが属するレイヤに応じて前記小ブロックの前記削除待ち時間を設定することを特徴とする請求項２３に記載のコンテンツ配信制御方法。
【請求項２５】
予想されるアクセス頻度に応じて、前記小ブロックの数を前記コンテンツのレイヤ毎に変えることを特徴とする請求項２４に記載のコンテンツ配信制御方法。
【請求項２６】
前記コンテンツのレイヤ毎に、前記更新時間の長さを変えることを特徴とする請求項２３から請求項２５の何れかに記載のコンテンツ配信制御方法。
【請求項２７】
前記コンテンツに含まれるデータのフォーマット毎に、前記コンテンツを複数のブロックに区切り、前記データのフォーマットに応じて前記削除待ち時間を設定することを特徴とする請求項１７から請求項２１の何れかに記載のコンテンツ配信制御方法。
【請求項２８】
前記コンテンツに含まれるデータの内容毎に、前記コンテンツを複数のブロックに区切り、前記データの内容に応じて前記削除待ち時間を設定することを特徴とする請求項１７から請求項２１の何れかに記載のコンテンツ配信制御方法。
【請求項２９】
前記コンテンツのデータのフォーマット毎又はデータの内容毎の前記ブロックをさらに複数の小ブロックに区切り、前記小ブロックが属するフォーマット毎又はデータの内容に応じて前記小ブロックの前記削除待ち時間を設定することを特徴とする請求項２７又は請求項２８に記載のコンテンツ配信制御方法。
【請求項３０】
前記コンテンツを前記コンテンツ保持手段に格納する際に、前記コンテンツについて前記キャッシュ制御情報を生成することを特徴とする請求項１７から請求項２９の何れかに記載のコンテンツ配信制御方法。
【請求項３１】
配信要求されたコンテンツが前記キャッシュ保持手段に存在しない場合は、前記コンテンツ保持手段からコンテンツを読み出し、前記キャッシュ保持手段へ格納すると同時に配信要求元へ配信することを特徴とする請求項１７から請求項３０の何れかに記載のコンテンツ配信制御方法。
【請求項３２】
コンテンツを配信するコンテンツ配信装置を構成するコンピュータ上で動作するコンテンツ配信制御プログラムであって、
前記コンテンツ配信装置に、
前記コンテンツを保持するコンテンツ保持手段又は前記コンテンツを一時的に保持するキャッシュ保持手段から前記コンテンツを配信する処理と、
前記コンテンツを複数のブロックに区切り、該ブロック毎に前記キャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、前記ブロック毎に前記キャッシュ保持手段への格納と削除を制御する処理を実行させることを特徴とするコンテンツ配信制御プログラム。
【請求項３３】
前記キャッシュ保持手段に格納した前記ブロックに対するアクセスの有無により、前記キャッシュ保持手段に格納した時点又は前記ブロックに対して最後のアクセスがあった時点から前記削除待ち時間が経過しているかを判別し、前記削除待ち時間が経過している場合に、前記ブロックを前記キャッシュ保持手段から削除することを特徴とする請求項３２に記載のコンテンツ配信制御プログラム。
【請求項３４】
前記キャッシュ保持手段に格納した前記ブロックに対するアクセス頻度に応じて、前記キャッシュ制御情報の前記削除待ち時間に予め設定した更新時間を加算して更新することを特徴とする請求項３２又は請求項３３に記載のコンテンツ配信制御プログラム。
【請求項３５】
前記アクセス頻度に少なくとも１の閾値を設け、前記アクセス頻度が前記閾値以下の場合と前記閾値を越えた場合とで、前記更新時間の長さを変えることを特徴とする請求項３４に記載のコンテンツ配信制御プログラム。
【請求項３６】
前記キャッシュ保持手段に格納した前記ブロックがアクセス中であるかを判定し、アクセス中で無い場合に、前記ブロックについての前記削除待ち時間が経過しているかを判定して前記ブロックの前記キャッシュ保持手段からの削除を実行することを特徴とする請求項３２から請求項３５の何れかに記載のコンテンツ配信制御プログラム。
【請求項３７】
前記コンテンツを、所定のデータサイズ又は再生時間に基づいて複数のブロックに区切ることを特徴とする請求項３２から請求項３６の何れかに記載のコンテンツ配信制御プログラム。
【請求項３８】
階層型符号化方式でエンコードされたコンテンツのレイヤ毎に、前記コンテンツを複数のブロックに区切り、前記レイヤの階層に応じて前記削除待ち時間を設定することを特徴とする請求項３２から請求項３６の何れかに記載のコンテンツ配信制御プログラム。
【請求項３９】
前記コンテンツのレイヤ毎の前記ブロックをさらに複数の小ブロックに区切り、前記小ブロックが属するレイヤに応じて前記小ブロックの前記削除待ち時間を設定することを特徴とする請求項３８に記載のコンテンツ配信制御プログラム。
【請求項４０】
予想されるアクセス頻度に応じて、前記小ブロックの数を前記コンテンツのレイヤ毎に変えることを特徴とする請求項３９に記載のコンテンツ配信制御プログラム。
【請求項４１】
前記コンテンツのレイヤ毎に、前記更新時間の長さを変えることを特徴とする請求項３８から請求項４０の何れかに記載のコンテンツ配信制御プログラム。
【請求項４２】
前記コンテンツに含まれるデータのフォーマット毎に、前記コンテンツを複数のブロックに区切り、前記データのフォーマットに応じて前記削除待ち時間を設定することを特徴とする請求項３２から請求項３６の何れかに記載のコンテンツ配信制御プログラム。
【請求項４３】
前記コンテンツに含まれるデータの内容毎に、前記コンテンツを複数のブロックに区切り、前記データの内容に応じて前記削除待ち時間を設定することを特徴とする請求項３２から請求項３６の何れかに記載のコンテンツ配信制御プログラム。
【請求項４４】
前記コンテンツのデータのフォーマット毎又はデータの内容毎の前記ブロックをさらに複数の小ブロックに区切り、前記小ブロックが属するフォーマット毎又はデータの内容に応じて前記小ブロックの前記削除待ち時間を設定することを特徴とする請求項４２又は請求項４３に記載のコンテンツ配信制御プログラム。
【請求項４５】
前記コンテンツを前記コンテンツ保持手段に格納する際に、前記コンテンツについて前記キャッシュ制御情報を生成することを特徴とする請求項３２から請求項４４の何れかに記載のコンテンツ配信制御プログラム。
【請求項４６】
配信要求されたコンテンツが前記キャッシュ保持手段に存在しない場合は、前記コンテンツ保持手段からコンテンツを読み出し、前記キャッシュ保持手段へ格納すると同時に配信要求元へ配信することを特徴とする請求項３２から請求項４５の何れかに記載のコンテンツ配信制御プログラム。
【請求項４７】
配信するコンテンツを格納するコンテンツ保持手段と、配信する前記コンテンツを一時的に格納するキャッシュ保持手段と、前記キャッシュ保持手段又は前記コンテンツ保持手段に格納した前記コンテンツを配信するコンテンツ配信手段を備えるコンテンツ配信装置のキャッシュ制御装置であって、
前記コンテンツを複数のブロックに区切り、該ブロック毎に前記キャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、前記ブロック毎に前記キャッシュ保持手段への格納と削除を制御することを特徴とするキャッシュ制御装置。
【請求項４８】
前記キャッシュ保持手段に格納した前記ブロックに対するアクセスの有無により、前記キャッシュ保持手段に格納した時点又は前記ブロックに対して最後のアクセスがあった時点から前記削除待ち時間が経過しているかを判別し、前記削除待ち時間が経過している場合に、前記ブロックを前記キャッシュ保持手段から削除することを特徴とする請求項４７に記載のキャッシュ制御装置。
【請求項４９】
前記キャッシュ保持手段に格納した前記ブロックに対するアクセス頻度に応じて、前記キャッシュ制御情報の前記削除待ち時間に予め設定した更新時間を加算して更新することを特徴とする請求項４７又は請求項４８に記載のキャッシュ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像等のコンテンツを配信するシステムに関し、特にコンテンツをキャッシュメモリに一時的に保有しキャッシュメモリからコンテンツを読み出して配信することで配信性能を向上させるコンテンツ配信装置、コンテンツ配信制御方法、コンテンツ配信制御プログラムに関する。
【背景技術】
【０００２】
映画やドラマ等の映像コンテンツを配信するコンテンツ配信システムにおいては、コンテンツをキャッシュメモリ上に保存し、キャッシュメモリからコンテンツを配信することで、コンテンツを蓄積するディスク装置へのアクセス回数を削減し、配信性能を向上させるキャッシュ技術が利用されている。キャッシュメモリを利用したコンテンツ配信では、ディスク装置の容量に対してコンテンツをキャッシュするキャッシュメモリの容量が小さいため、キャッシュ領域の効率的な利用が必要である。【０００３】
キャッシュ領域を効率的に利用する方法の一例が、特許文献１や特許文献２に開示されている。特許文献１記載の方法では、コンテンツをキャッシュメモリから削除する場合に、コンテンツの有効期限とコンテンツサイズを利用してコンテンツデータの入れ替えをすることでキャッシュ領域の利用効率の向上を図っている。【０００４】
また、特許文献２記載の方法では、コンテンツを複数のブロックに分割してキャッシュメモリに格納し、最後にアクセスされた時間が最も古いブロックから順にキャッシュメモリから削除することでキャッシュ領域の利用効率の向上を図っている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−２７１４４２号公報
【特許文献２】特開２００６−１７２２９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１や特許文献２記載の関連技術においては次のような課題があった。【０００７】
特許文献１記載のコンテンツの有効期限を利用してキャッシュメモリからコンテンツを削除する方法においては、以下のような問題がある。【０００８】
例えば、図２１に示すように、キャッシュメモリに格納されているコンテンツＡにアクセスがあると、コンテンツＡはキャッシュメモリに格納され続ける。従って、コンテンツＡの一部分だけがアクセスされている場合、コンテンツＡのキャッシュデータの大半が不要であるにも関わらずキャッシュメモリの多く領域を使用することになるため、キャッシュ領域の利用効率が悪くなるという問題があった。この利用効率の悪化は、コンテンツのサイズが大きいほど影響が大きくなる。【０００９】
また、特許文献２記載のように、キャッシュの利用効率向上のため、キャッシュに格納されているコンテンツを複数のブロックに分割しキャッシュ削除する場合、削除した直後にアクセスがあった場合にキャッシュヒット率が低下するという問題がある。【００１０】
その理由は、キャッシュ領域からコンテンツを削除するにあたり、最後にアクセスされた時間が最も古いものを削除の対象としているためである。【００１１】
（発明の目的）
本発明の目的は、キャッシュメモリを利用したコンテンツ配信において、キャッシュ領域の利用効率を向上させることのできるコンテンツ配信装置、コンテンツ配信制御方法、コンテンツ配信制御プログラムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明によるコンテンツ配信装置は、配信するコンテンツを格納するコンテンツ保持手段と、配信するコンテンツを一時的に格納するキャッシュ保持手段と、キャッシュ保持手段又はコンテンツ保持手段に格納したコンテンツを配信するコンテンツ配信手段と、キャッシュ保持手段に対するコンテンツの格納および削除を制御するキャッシュ制御手段とを含み、キャッシュ制御手段は、コンテンツを複数のブロックに区切り、該ブロック毎にキャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、ブロック毎にキャッシュ保持手段への格納と削除を制御する。【００１３】
本発明によるコンテンツ配信制御方法は、コンテンツを配信するコンテンツ配信装置におけるコンテンツ配信制御方法であって、コンテンツを格納するコンテンツ保持手段又はコンテンツを一時的に保持するキャッシュ保持手段からコンテンツを配信し、コンテンツを複数のブロックに区切り、該ブロック毎にキャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、ブロック毎にキャッシュ保持手段への格納と削除を制御する。【００１４】
本発明によるコンテンツ配信制御プログラムは、コンテンツを配信するコンテンツ配信装置を構成するコンピュータ上で動作するコンテンツ配信制御プログラムであって、コンテンツ配信装置に、コンテンツを保持するコンテンツ保持手段又はコンテンツを一時的に保持するキャッシュ保持手段からコンテンツを配信する処理と、コンテンツを複数のブロックに区切り、該ブロック毎にキャッシュ保持手段から削除するまでの削除待ち時間を設定したキャッシュ制御情報に基づいて、ブロック毎にキャッシュ保持手段への格納と削除を制御する処理を実行させる。
【発明の効果】
【００１５】
本発明によれば、コンテンツをキャッシュするキャッシュ保持手段を利用したコンテンツ配信において、キャッシュ領域の利用効率を向上させることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施形態によるコンテンツ配信システムの構成例を示す図である。
【図２】第１の実施形態におけるキャッシュ制御テーブルの一例を示す図である。
【図３】本発明の第１の実施形態におけるコンテンツ登録処理を示すフローチャートである。
【図４】本発明の第１の実施形態におけるコンテンツ配信要求からコンテンツ配信までの処理の流れを示すシーケンス図である。
【図５】本発明の第１の実施形態におけるコンテンツ配信処理を示すフローチャートである。
【図６】本発明の第１の実施形態におけるキャッシュ格納処理を示すフローチャートである。
【図７】本発明の第１の実施形態におけるキャッシュ削除処理を示すフローチャートである。
【図８】本発明の第１の実施形態における生成時のキャッシュ制御テーブルの一例を示す図である。
【図９】本発明の第１の実施形態における運用後のキャッシュ制御テーブルの一例を示す図である。
【図１０】本発明の第１の実施形態におけるキャッシュ格納時のキャッシュ制御テーブルの一例を示す図である。
【図１１】本発明の第２の実施形態におけるキャッシュ制御テーブルの一例を示す図である。
【図１２】本発明の第２の実施形態における運用後のキャッシュ制御テーブルの一例を示す図である。
【図１３】本発明の第３の実施形態におけるキャッシュ制御テーブルの一例を示す図である。
【図１４】本発明の第３の実施形態における運用後のキャッシュ制御テーブルの一例を示す図である。
【図１５】本発明の第３の実施形態におけるキャッシュ制御テーブルの他例を示す図である。
【図１６】本発明の第４の実施形態におけるキャッシュ制御テーブルの一例を示す図である。
【図１７】本発明の第４の実施形態における運用後のキャッシュ制御テーブルの一例を示す図である。
【図１８】本発明の第５の実施形態におけるキャッシュ制御テーブルの一例を示す図である。
【図１９】本発明の第５の実施形態における運用後のキャッシュ制御テーブルの一例を示す図である。
【図２０】本発明の実施の形態によるコンテンツ配信装置のハードウェア構成を示すブロック図である。
【図２１】関連技術における課題を示す図である。
【発明を実施するための形態】
【００１７】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１８】
（第１の実施の形態）
図１を参照すると、本発明の第１の実施の形態によるコンテンツ配信システムは、コンテンツ配信装置１０と、コンテンツを受信するクライアント群２０と、ネットワーク３０とを含む構成である。
【００１９】
コンテンツ配信装置１０は、コンテンツ配信手段１００と、キャッシュ制御手段１０１と、コンテンツ保持手段１０２と、キャッシュ保持手段１０３と、キャッシュ制御情報保持手段１０４と、キャッシュ制御テーブル生成手段１０５とを有する。
【００２０】
クライアント群２０は、コンテンツを受信する端末であり、ネットワークへ接続するための機能を有する。なお、本実施例では便宜上クライアント群２０として、クライアント端末２０１ａと、クライアント端末２０１ｂと、クライアント端末２０１ｃの３台の構成で説明するが、クライアントの台数に制限はないものとする。
【００２１】
ネットワーク３０は、コンテンツ配信装置１０とクライアント群２０の各クライアント端末２０１ａ〜２０１ｃとを接続するインターネットなどのネットワークである。
【００２２】
これらの手段の機能について説明する。
コンテンツ配信手段１００は、クライアント群２０の各クライアント端末２０１ａ〜２０１ｃからコンテンツ配信要求を受信する。また、コンテンツ配信手段１００は、コンテンツ配信要求で指定されたコンテンツがキャッシュ保持手段１０３に格納されている場合は、キャッシュ保持手段１０３よりコンテンツを読み出し、ネットワーク３０を介してクライアント群２０の各クライアント端末２０１ａ〜２０１ｃに対して配信する。
【００２３】
指定されたコンテンツが、キャッシュ保持手段１０３に格納されていない場合は、コンテンツ配信手段１００は、キャッシュ制御手段１０１に対して該当コンテンツをキャッシュ保持手段１０３に格納するように指示すると共に、コンテンツ保持手段１０２よりコンテンツを読み出し、ネットワーク３０を介してクライアント群２０の各クライアント端末２０１ａ〜２０１ｃに対して配信する。
【００２４】
キャッシュ制御手段１０１は、コンテンツ配信手段１００の指示によりコンテンツ保持手段１０２のコンテンツをキャッシュ制御情報保持手段１０４に格納されるキャッシュ制御テーブルの設定に従い、キャッシュ保持手段１０３へ格納する。また、キャッシュ制御手段１０１は、キャッシュ制御情報保持手段１０４に格納されているキャッシュ制御テーブルに設定されるコンテンツのブロックに対するアクセス状態やキャッシュ削除タイマ時間に従い、キャッシュ保持手段１０３に格納される各コンテンツのキャッシュをブロック単位で削除する。
【００２５】
コンテンツ保持手段１０２は、配信可能なコンテンツを格納する手段であり、例えば、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置で実現される。また、コンテンツ保持手段１０２に格納するコンテンツは、例えば映画やドラマなどの映像コンテンツ等であるが、必ずしも映像コンテンツに限定されず、他の種類のコンテンツであってもよい。
【００２６】
キャッシュ保持手段１０３は、コンテンツを一時的に格納するキャッシュメモリとしての機能を有し、配信可能なコンテンツを複数のブロックに区切って領域上に保持している。このキャッシュ保持手段１０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で実現される。
【００２７】
キャッシュ制御テーブル生成手段１０５は、コンテンツ毎にキャッシュ保持手段１０３に保持しているキャッシュを制御する情報としてキャッシュ制御テーブル２００を生成する。
【００２８】
キャッシュ制御情報保持手段１０４は、キャッシュ制御テーブル生成手段１０５によってコンテンツ毎に生成したキャッシュ制御テーブル２００を保有する。
【００２９】
図２は、キャッシュ制御テーブルの一例である。この例では、キャッシュ制御テーブル２００は、コンテンツＩＤ２０１、ブロックＩＤ２０２、キャッシュ有無２０３、アクセス頻度２０４、アクセス有無２０５、キャッシュ削除タイマ時間２０６により構成されている。
【００３０】
ここで、コンテンツＩＤ２０１は、コンテンツ毎に付与されるＩＤである。ブロックＩＤ２０２は、１つのコンテンツを複数のブロックに区切った場合に、そのブロック毎に付与するＩＤであり、このブロックＩＤ２０２毎にキャッシュの制御情報を設定する。キャッシュ有無２０３は、該当ブロックＩＤ２０２に対応するコンテンツのブロックが、キャッシュ保持手段１０３に格納済みであるかどうかを示す情報である。アクセス頻度２０４は、該当ブロックＩＤ２０２が示すブロックに対するアクセス頻度を示す情報であり、該当ブロックに対するアクセスに応じてアクセス数またはアクセス数に応じた度数が設定される。アクセス有無２０５は、該当ブロックＩＤ２０２のキャッシュに対してアクセス中であるか否かを示す情報である。キャッシュ削除タイマ時間２０６は、該当ブロックに対するアクセスが一定時間以上行われない時に、データを削除するまでの待ち時間を示す情報である。
【００３１】
キャッシュ制御テーブル２００は、コンテンツ配信装置１０に対してコンテンツを登録する時、つまり、コンテンツ保持手段１０２にコンテンツを格納する処理においてキャッシュ制御テーブル生成手段１０５が生成してキャッシュ制御情報としてキャッシュ制御情報保持手段１０４に登録し、必要に応じて随時更新する。
【００３２】
キャッシュ制御テーブル生成手段１０５は、コンテンツ保持手段１０２にコンテンツを格納する処理がなされる際に、予め設定されている規則（例えば、一定のサイズ又は時間毎にコンテンツを区切ることを設定した規則）に基づいて、上述したキャッシュ制御テーブル２００を生成して、キャッシュ制御情報保持手段１０４に登録する。
【００３３】
なお、コンテンツ保持手段１０２にコンテンツを格納する際に、格納するコンテンツについてキャッシュ制御テーブル２００を管理者が作成し、キャッシュ制御情報保持手段１０４に登録することも可能である。このように管理者がキャッシュ制御テーブル２００を作成する場合には、キャッシュ制御テーブル生成手段１０５を省略することも可能である。
【００３４】
図２０は、コンテンツ配信装置１０のハードウェア構成を示すブロック図である。
【００３５】
図２０を参照すると、コンテンツ配信装置１０は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等からなり、データの作業領域やデータの一時退避領域に用いられる記憶部４０２（キャッシュ保持手段１０３を構成）、ネットワーク３０を介してデータの送受信を行う通信部４０３、外部装置と接続してデータの送受信を行う入出力インタフェース部４０４、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置である補助記憶部４０５（コンテンツ保持手段１０２、キャッシュ制御情報保持手段１０４を構成）、上記各構成要素を相互に接続するシステムバス４０６、ディスプレイ装置等の出力装置４０７及びキーボード等の入力装置４０８を備えている。
【００３６】
本実施の形態によるコンテンツ配信装置１０は、コンテンツ配信処理とキャッシュ制御処理及びキャッシュ制御テーブル生成処理を実行するコンテンツ配信制御プログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、上記コンテンツ配信手段１００、キャッシュ制御手段１０１、キャッシュ制御テーブル生成手段１０５の各機能を提供するコンテンツ配信制御プログラムを、補助記憶部４０５に格納し、そのプログラムを記憶部４０２にロードしてＣＰＵ４０１で実行することにより、ソフトウェア的に実現することも可能である。
【００３７】
（第１の実施の形態の動作）
次に、本実施の形態によるコンテンツ配信装置１０の全体の動作について詳細に説明する。
【００３８】
まず、コンテンツ保持手段１０２にコンテンツを格納する処理において、キャッシュ制御テーブル生成手段１０５によってキャッシュ制御情報保持手段１０４が保有するキャッシュ制御テーブル２００を生成する動作を図３のフローチャートを用いて説明する。
【００３９】
コンテンツ保持手段１０２にコンテンツを格納すると（ステップＳ１０１）、キャッシュ制御テーブル生成手段１０５は、格納したコンテンツについてキャッシュ制御テーブル２００を生成し（ステップＳ１０２）、キャッシュ制御情報保持手段１０４に登録する（ステップＳ１０３）。
【００４０】
キャッシュ制御テーブル２００の生成において、キャッシュ制御テーブル生成手段１０５は、格納したコンテンツを識別するコンテンツＩＤ２０１を登録し、所定のブロック化規則に基づいて、コンテンツを複数のブロックに区切り、各ブロック毎にブロックＩＤ２０２を付与し、ブロック毎にキャッシュ削除タイマ時間２０６を登録する。
【００４１】
このブロック化規則とは、例えば、コンテンツを複数のブロックに分けてキャッシュ保持手段１０３に格納する際に、コンテンツをどのように複数のブロックに区切るか（コンテンツの区切り方）を示すものである。例えば、ブロックのデータサイズや再生時間がブロック化規則として指定される。
【００４２】
例えば、固定レートで符号化されたコンテンツ（映像）の場合、データサイズと再生時間が一意に対応するので、一定の再生時間毎にコンテンツを区切れば各ブロックのサイズは全て同じになる。可変レートで符号化されたコンテンツの場合には、データサイズと再生時間が一意に対応しないので、一定の再生時間毎にコンテンツを区切った場合、各ブロックのサイズはそれぞれのレートに応じて異なり、一定のサイズ毎にコンテンツを区切った場合、各ブロックの再生時間はそれぞれのレートに応じて異なることになる。
【００４３】
キャッシュ制御テーブル２００の一例を図８を用いて説明する。図８は、コンテンツ登録直後に生成されたキャッシュ制御テーブル２００の一例である。コンテンツは、６つのブロックに適当なサイズで分割されており、それぞれのブロックに対して、ブロックＩＤ２０２、キャッシュ有無２０３、アクセス頻度２０４、アクセス有無２０５、キャッシュ削除タイマ時間２０６が設定されている。この例では、コンテンツ登録直後のため、キャッシュ有無２０３は全て「無」、アクセス頻度２０４は「０」、アクセス有無２０５は「無」、キャッシュ削除タイマ時間２０６は初期設定値の「１０分」が設定されている。
【００４４】
次に、コンテンツ配信装置１０が、各クライアント端末２０１ａ〜２０１ｃからコンテンツ配信要求を受け、コンテンツを配信開始する動作を図４のシーケンス図と図５のフローチャートを用いて説明する。
【００４５】
図４のシーケンス図において、クライアント端末２０１ａ〜２０１ｃでは、配信要求するコンテンツの再生箇所を指定し、コンテンツ配信装置１０にコンテンツの配信要求を行う。
【００４６】
コンテンツ配信要求を受けたコンテンツ配信装置１０は、要求されたコンテンツと再生箇所に対応するブロックをキャッシュ制御テーブル２００で検索し、要求されたコンテンツの再生箇所に対応するブロックを、キャッシュ保持手段１０３又はコンテンツ保持手段１０２から読み出してクライアント端末２０１ａ〜２０１ｃに配信し、必要に応じてキャッシュ制御テーブル２００を更新する。ここで、再生箇所とは、例えば、コンテンツの最初からの再生時間で指定される位置である。
【００４７】
次に、コンテンツ配信装置１０によるコンテンツ配信の動作について、図５を参照して詳細に説明する。
【００４８】
コンテンツ配信装置１０のコンテンツ配信手段１００は、クライアント端末２０１ａ〜２０１ｃからコンテンツ配信要求を受け付けると、配信を指定されたコンテンツＩＤと再生箇所をキーにして、キャッシュ制御情報保持手段１０４内のキャッシュ制御テーブル２００を検索する（ステップＳ２０１）。そして、コンテンツ配信手段１００は、要求されたコンテンツの指定された再生箇所に対応するブロックがキャッシュ保持手段１０３に格納されているかどうかを判別する（ステップＳ２０２）。
【００４９】
コンテンツ配信手段１００は、該当コンテンツのブロックがキャッシュ保持手段１０３に格納されている場合、キャッシュ保持手段１０３から該当コンテンツのブロック部分のデータを読み出し、クライアント端末２０１ａ〜２０１ｃに対して配信する（ステップＳ２０３）。その後、コンテンツ配信手段１００は、キャッシュ制御情報保持手段１０４内のキャッシュ制御テーブル２００の該当コンテンツに属するブロックのアクセス頻度２０４とキャッシュ削除タイマ時間２０６を更新する（ステップＳ２０５）。
【００５０】
図９は、キャッシュ制御テーブル２００の一例である。アクセス頻度２０４にアクセス頻度が記録され、その頻度に応じてキャッシュ削除タイマ時間２０６が設定されている。図９の例ではアクセス頻度が高いものほどキャッシュ削除タイマ時間を長く設定されている。
【００５１】
また、図９では、キャッシュ削除タイマ時間２０６の更新値を「５分」とし、キャッシュ保持手段１０３にキャッシュアクセスが１回ある度に、キャッシュ削除タイマ時間２０６を「５分」ずつ増やしている。
【００５２】
このように、キャッシュアクセスの度にキャッシュ削除タイマ時間２０６を一定の時間ずつ加算して更新してもよいし、キャッシュ削除タイマ時間２０６の更新値を、ブロック毎に或いはアクセス頻度の大きさに応じて変えることも可能である。
【００５３】
例えば、アクセス頻度に閾値（例えば、１０回）を設け、アクセス頻度が閾値以下の場合には、更新値を５分として、閾値を超えた場合に更新値を１０分とする。また、アクセス頻度の閾値に段階（例えば、第１の閾値を１０回、第２の閾値を２０回）を設け、第１の閾値以下の場合更新値を５分、第１の閾値を超えた場合に更新値を１０分、第２の閾値を超えた場合に更新値を１５分にすることも可能である。閾値の段階を３段以上として、各閾値毎に更新値を変えることで、さらに精細にキャッシュ制御を行うことができる。
【００５４】
コンテンツ配信手段１００は、該当コンテンツのブロック部分のデータがキャッシュ保持手段１０３に格納されていない場合、キャッシュ制御手段１０１に対して、キャッシュ保持手段１０３に該当コンテンツのブロック部分のデータの格納を指示する（ステップＳ２０４）。また、コンテンツ配信手段１００は、コンテンツ保持手段１０３から該当コンテンツのブロック部分のデータを読み出し、クライアント端末２０１ａ〜２０１ｃに対して配信する（ステップＳ２０６）。
【００５５】
次に、キャッシュ制御手段１０１が、コンテンツ配信手段１００からの指示に基づいてキャッシュ保持手段１０３にコンテンツのデータを格納する動作を図６のフローチャートを用いて説明する。
【００５６】
キャッシュ制御手段１０１は、コンテンツ配信手段１００からキャッシュ格納指示を受け付けると、指定されたコンテンツＩＤと再生箇所をキーにしてキャッシュ制御情報保持手段１０４に保有するキャッシュ制御テーブル２００を検索し（ステップＳ３０１）、該当コンテンツの再生箇所に対応するブロックがキャッシュ制御テーブル２００に登録されているか確認する（ステップＳ３０２）。
【００５７】
キャッシュ制御手段１０１は、該当コンテンツの再生箇所に対応するブロックがキャッシュ制御テーブル２００に登録されていれば、キャッシュ制御テーブル２００の設定に従い、該当コンテンツののブロック部分のデータをキャッシュ保持手段１０３へ格納し、キャッシュ制御テーブル２００を更新する（ステップＳ３０３）。すなわち、キャッシュ制御テーブル２００の該当するブロックのキャッシュ有無２０３を「有」とする。
【００５８】
図１０は、更新後のキャッシュ制御テーブル２００の一例である。ここでは、コンテンツ（ＩＤ：ＣＩＤ００１）のブロック００１〜００６のデータがキャッシュ保持手段１０３へ登録されたため、キャッシュ有無情報が全て「有」になっているが、格納直後でアクセスがないため、アクセス頻度２０４、アクセス有無２０５、キャッシュ削除タイマ時間２０６は初期値となっている。
【００５９】
キャッシュ保持手段１０３へ登録されたコンテンツのブロックに対してキャッシュアクセスされることで、図５で示したように、各ブロックに設定されているキャッシュ削除タイマ時間が更新される。
【００６０】
例えば、図１０に示すキャッシュ制御テーブル２００で表されるコンテンツの各ブロックに対してキャッシュアクセスがなされた場合のキャッシュ制御テーブル２００の状態が図９に示されている。図９では、ブロック（ＩＤ：００１）に１０回、ブロック（ＩＤ：００２）に５回、ブロック（ＩＤ：００３）に７回、ブロック（ＩＤ：００４）に１回、ブロック（ＩＤ：００５）に２回、それぞれキャッシュアクセスがあり、ブロック（ＩＤ：００６）にはアクセスが無いことを示している。これにより、各ブロックのキャッシュ削除タイマ時間２０６は、アクセスの度に更新値の「５分」が加えられ、ブロック（ＩＤ：００１）が「６０分」、ブロック（ＩＤ：００２）が「３５分」、ブロック（ＩＤ：００３）が「４５分」、ブロック（ＩＤ：００４）が「１５分」、ブロック（ＩＤ：００５）が「２０分」に更新されている。ブロック（ＩＤ：００１）については、アクセスが無いので初期値の「１０分」のままである。
【００６１】
次に、キャッシュ制御手段１０１が、キャッシュ保持手段１０３に格納されているコンテンツのキャッシュデータを削除する処理の動作を図７のフローチャートを用いて説明する。
【００６２】
キャッシュ制御手段１０１は、キャッシュ制御情報保持手段１０４に格納されているキャッシュ制御テーブル２００のアクセス有無２０５を参照し、キャッシュ保持手段１０３にキャッシュされているコンテンツのブロックがアクセス中であるかを確認する（ステップＳ４０１）。該当のブロックがアクセス中である場合には、ステップＳ４０４に移行する。
【００６３】
キャッシュ制御手段１０１は、該当のブロックがアクセス中でない場合、次に、該当ブロックについてキャッシュ制御テーブル２００のキャッシュ削除タイマ時間２０６に設定されているタイマ時間が満了しているかどうかを確認する（ステップＳ４０２）。キャッシュ削除タイマ時間が満了していない場合には、ステップＳ４０４に移行する。
【００６４】
キャッシュ制御テーブル２００のキャッシュ削除タイマ時間２０６が満了しているかどうかは、各ブロックがキャッシュ保持手段１０３に格納された時点又は最後にキャッシュアクセスされた時点からの経過時間をキャッシュ削除タイマ時間２０６と比較し、経過時間がキャッシュ削除タイマ時間２０６を過ぎているかどうかによって判定する。
【００６５】
例えば、キャッシュ保持手段１０３に格納されたから一度もキャッシュアクセスされていないブロックの場合、キャッシュ保持手段１０３に格納された時点からの経過時間をキャッシュ削除タイマ時間２０６と比較し、キャッシュアクセスされているブロックの場合には、最後にキャッシュアクセスされた時点からの経過時間をキャッシュ削除タイマ時間２０６と比較する。
【００６６】
キャッシュ削除タイマ時間が満了している場合、該当ブロックに対応するキャッシュデータをキャッシュ保持手段１０３から削除し、キャッシュ制御テーブル２００の該当コンテンツのブロックに対するキャッシュ有無２０３を「無」に設定する（ステップＳ４０３）。
【００６７】
ステップＳ４０１で該当のブロックがアクセス中である場合、ステップＳ４０２でキャッシュ削除待ちタイマ時間２０６が満了していない場合又はステップＳ４０３の処理が終了した場合、キャッシュ制御テーブル２００の全てのブロックの処理が完了したかどうかを判定し（ステップＳ４０４）、完了していない場合には、次のブロックについて、ステップＳ４０１からＳ４０３までの処理を実施する。
【００６８】
キャッシュ制御手段１０１は、上述した一連の処理（ステップＳ４０１からステップＳ４０３）をキャッシュ制御テーブル２００に登録されている全てのコンテンツに対して実施し処理を終了する。
【００６９】
また、キャッシュ制御手段１０１による上述した処理は、例えば、１分毎のような時間間隔で周期的に実行し、キャッシュ制御テーブル２００およびキャッシュ保持手段１０３のキャッシュデータを更新する。
【００７０】
図９のキャッシュ制御テーブル２００の一例を見ると、コンテンツは６つのブロックに分割され格納されている。ブロックＩＤ００６にはアクセスがない状態となっており、このままアクセスがなければ、キャッシュ削除タイマに設定されている時間である「１２分」が満了するとブロックＩＤ００６のキャッシュデータは、キャッシュ保持手段１０３から削除される。
【００７１】
（第１の実施の形態による効果）
次に、第１の実施の形態の効果について説明する。
第１の実施の形態によれば、キャッシュ保持手段１０３上のコンテンツを複数のブロックに区切り、そのブロック単位にアクセス頻度の統計を取り、かつアクセス頻度に応じてブロックを削除するまでの時間であるキャッシュ削除タイマ時間を更新する構成であるので、リアルタイムにコンテンツの人気度に応じたキャッシュ制御が可能となる。このように、アクセス頻度の高いものをより長期間キャッシュに残し、アクセス頻度の低いものは早期にキャッシュ保持手段１０３から削除することで、アクセス頻度の低いブロックを効率的にキャッシュから削除することが可能となる。
【００７２】
すなわち、第１の実施の形態によれば、コンテンツ中の不要なブロックをキャッシュから削除し、最低限必要なキャッシュデータのみを残すことが可能となり、キャッシュの利用効率を向上することができる。これにより、関連技術による方式と比較してキャッシュヒット率を向上させることができ、キャッシュ領域の有効利用が可能となる。
【００７３】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。この第２の実施の形態によるコンテンツ配信システム及びそのコンテンツ配信装置１０の構成については、図１に示した第１の実施の形態の構成と同じであるので説明を省略する。
【００７４】
この第２の実施の形態では、コンテンツが、階層型符号化方式によりエンコードされていることが前提である。ここで、階層型符号化方式とは、一例をあげるとＩＴＵ−Ｔで規定されているＨ．２６４／ＳＶＣに代表されるものであり、Ｈ．２６４／ＳＶＣ方式によりエンコードされたコンテンツは、基本レイヤ、拡張レイヤ１、拡張レイヤ２のように階層化される。階層型符号化方式では、より上位のレイヤまで利用するほど高画質な映像を再生可能であるが、低位レイヤだけのデータでも映像を再生することが可能である。
【００７５】
例えば、Ｈ．２６４／ＳＶＣによる階層型符号化方式では、最上位の拡張レイヤ２までを利用して符号化したコンテンツは、大画面でかつ高画質の再生が可能であり、拡張レイヤ１までを利用して符号化したコンテンツは、中程度の画面でかつ中程度の画質による再生が可能である。また、基本レイヤのみを利用して符号化したコンテンツは、拡張レイヤ１、２までを含む場合と比べて、小画面でかつ低画質な再生となる。ただし、コンテンツのデータサイズについては、上位レイヤである拡張レイヤ２までを含むほど大きく、下位レイヤである基本レイヤのみでは小さくなる。
【００７６】
第１の実施の形態との違いは、コンテンツをサイズや再生時間ではなく符号化の階層に応じて区切る点であり、本実施の形態ではこの特徴を利用してキャッシュに格納する時に符号化のレイヤ毎にブロックに区切り、上位レイヤのブロックほどキャッシュ削除タイマ時間を短く設定する。
【００７７】
図１１に第２の実施の形態において、キャッシュ制御テーブル生成手段１０５が生成するキャッシュ制御テーブル２００の例を示す。
【００７８】
図１１の例では、コンテンツが基本レイヤ（下位のレイヤ）、拡張レイヤ１（中位のレイヤ）、拡張レイヤ２（上位のレイヤ）の３階層で構成され、基本レイヤはキャッシュ削除タイマ時間２０６を「６０分」、拡張１レイヤは「３０分」、拡張２レイヤは「１０分」と設定されており、上位レイヤほどキャッシュ削除タイマ時間２０６が短くなっている。また、図１１では、キャッシュ保持手段１０３へ登録された直後でアクセスがない状態の内容を示しており、キャッシュ有無情報が全て「有」で、アクセス頻度２０４、アクセス有無２０５、キャッシュ削除タイマ時間２０６はそれぞれ初期値となっている。
【００７９】
例えば、キャッシュ保持手段１０３にキャッシュアクセスされる度に、キャッシュ削除タイマ時間２０６を「５分」ずつ加算して更新するように設定されている場合、基本レイヤのブロック（ＩＤ：００１）について２回キャッシュアクセスがあり、拡張レイヤ２のブロック（ＩＤ：００３）に１回キャッシュアクセスがあった場合、図１１に示すキャッシュ制御テーブル２００のブロック（ＩＤ：００１）とブロック（ＩＤ：００３）のキャッシュ削除タイマ時間２０６は、図１２に示すように、それぞれ「７０分」と「１５分」に更新される。ブロック（ＩＤ：００２）については、アクセスが無いので初期値の「３０分」のままである。
【００８０】
第２の実施の形態では、コンテンツをそのレイヤ毎にブロックに区切ってキャッシュ制御テーブル２００を生成するものであり、それ以外のコンテンツの格納処理、コンテンツ配信処理、キャッシュ格納処理、キャッシュ削除処理については第１の実施の形態と同じであるので説明は省略する。
【００８１】
この実施の形態においても、各レイヤのブロック毎にキャッシュ保持手段１０３にアクセスされる度に、キャッシュ削除タイマ時間２０６を更新する。この場合に、各ブロックのレイヤ毎に異なる更新値を設定することも可能である。例えば、基本レイヤが「１０分」、拡張レイヤ１が「５分」、拡張レイヤ２が「３分」のように更新値を設定する。このように、レイヤ毎に更新値を変えれば、データサイズが大きくアクセス頻度が低いと思われるレイヤのブロックほど早くキャッシュ保持手段１０３から削除されるようになり、キャッシュの利用効率をより向上させることができる。
【００８２】
また、第１の実施の形態と同じように、アクセス頻度に閾値を設け、閾値に基づいて更新値を変化させることも可能であるし、レイヤ毎に更新値の変化量を変えることも可能である。
【００８３】
なお、上記説明では、コンテンツの符号化のレイヤが３つである場合について説明したが、さらに多くのレイヤで符号化されたコンテンツについても、上記と同様の方法によって適用することができるのは言うまでもない。
【００８４】
（第２の実施の形態による効果）
第２の実施の形態によれば、第１の実施の形態と同様に、アクセスがなくなった後、キャッシュ削除タイマ時間を経過したブロックをキャッシュ保持手段１０３から削除していく際に、キャッシュヒット率を保ちながらも、キャッシュデータ量を徐々に小さくしていくことができる。キャッシュヒット率の向上と共にキャッシュメモリの利用効率を向上させることができる。
【００８５】
また、第２の実施の形態では、符号化のレイヤに応じてコンテンツを複数のブロックに区切るようにしたので、アクセス頻度が高くデータサイズの小さなレイヤのブロックをより長期間キャッシュに残し、アクセス頻度が低くデータサイズの大きなレイヤのブロックを早期にキャッシュから削除することができ、キャッシュメモリの利用効率をより一層向上させることができる。
【００８６】
（第３の実施の形態）
次に、本発明の第３の実施の形態について説明する。この第３の実施の形態によるコンテンツ配信システム及びそのコンテンツ配信装置１０の構成については、図１に示した第１の実施の形態の構成と同じであるので説明を省略する。
【００８７】
この第３の実施の形態は、上述した第２の実施の形態のようにコンテンツを符号化の階層（レイヤ）に応じて複数のブロックに区切ると共に、さらに各レイヤの複数のブロックに区切ることで、キャッシュメモリの利用効率をさらに向上させる構成としている。
【００８８】
図１３に、第３の実施の形態によるキャッシュ制御テーブル生成手段１０５が生成するキャッシュ制御テーブル２００の一例を示す。
【００８９】
図１３の例では、コンテンツが３階層で構成され、さらにその各レイヤを３ブロックに区切り、それぞれのブロックに対してキャッシュ削除タイマ時間を設定している。
【００９０】
キャッシュ制御テーブル生成手段１０５は、コンテンツを各レイヤ毎に区切り、さらにそれらを複数のブロックに区切る場合に、第１の実施の形態で述べたように、例えば、ブロックのデータサイズや再生時間を基準とする所定のブロック化規則に基づいて複数のブロックに区切る。
【００９１】
図１３の例では、コンテンツが基本レイヤ（下位のレイヤ）、拡張レイヤ１（中位のレイヤ）、拡張レイヤ２（上位のレイヤ）の３階層で構成され、さらにその各レイヤを３ブロックに区切り、それぞれのブロックに対してキャッシュ削除タイマ時間を設定している。
【００９２】
基本レイヤの３つのブロックはキャッシュ削除タイマ時間２０６を「６０分」、拡張１レイヤの３つのブロックは「３０分」、拡張２レイヤの３つのブロックは「１０分」と設定されており、上位レイヤほどキャッシュ削除タイマ時間２０６が短くなっている。また、図１３では、キャッシュ保持手段１０３へ登録された直後でアクセスがない状態の内容を示しており、キャッシュ有無情報が全て「有」で、アクセス頻度２０４、アクセス有無５０５、キャッシュ削除タイマ時間２０６はそれぞれ初期値となっている。
【００９３】
例えば、キャッシュ保持手段１０３にアクセスされる度に、キャッシュ削除タイマ時間２０６を「５分」ずつ加算して更新するように設定されている場合、基本レイヤのブロック（ＩＤ：００１）について２回アクセスがあり、拡張レイヤ１のブロック（ＩＤ：００５）と拡張レイヤ２のブロック（ＩＤ：００７）にそれぞれ１回アクセスがあった場合、図１３に示すキャッシュ制御テーブル２００のブロック（ＩＤ：００１）、ブロック（ＩＤ：００５）、ブロック（ＩＤ：００７）のキャッシュ削除タイマ時間２０６が、図１４に示すように、それぞれ「７０分」、「３５分」、「１５分」に更新される。
【００９４】
第３の実施の形態では、コンテンツをそのレイヤ毎にブロックに区切り、さらにレイヤ毎のブロックを所定のデータサイズ又は所定の再生時間毎に複数のブロックに区切ったキャッシュ制御テーブル２００を生成するものであり、それ以外のコンテンツの格納処理、コンテンツ配信処理、キャッシュ格納処理、キャッシュ削除処理については第１の実施の形態と同じであるので説明は省略する。
【００９５】
また、この第３の実施の形態でも、キャッシュアクセスの度にキャッシュ削除タイマ時間２０６を一定の時間ずつ増やして更新してもよいし、キャッシュ削除タイマ時間２０６の更新値を、ブロック毎に或いはアクセス頻度の大きさに応じて変えることも可能である。
【００９６】
図１５に示すキャッシュ制御テーブル２００の例では、キャッシュ削除タイマ時間２０６の更新値を示すタイマ係数を、各レイヤ毎に異なる値に設定した例を示している。この場合のキャッシュ削除タイマ時間２０６の初期値は全てのブロックで「１０分」とする。
【００９７】
この図１５の例では、より多くのアクセスがあることが予想される、低位レイヤほどキャッシュ削除タイマ時間２０６が大きくなるようにタイマ係数を設定している。例えば、基本レイヤはタイマ係数「６」、拡張１レイヤには「４」、拡張２レイヤには「２」を設定し、該当するレイヤのブロックにキャッシュアクセスがある度に、キャッシュ削除タイマ時間２０６がそれぞれ６分、４分、２分ずつ加算される。これにより、より多くのアクセスが予想される低位レイヤほどより長くキャッシュ保持手段１０３に存在するように制御される。
【００９８】
また、第１の実施の形態と同じように、各ブロックのアクセス頻度に閾値を設け、閾値に基づいて更新値を変化させることも可能であるし、レイヤ毎に更新値の変化量を変えることも可能である。
【００９９】
なお、上記説明では、コンテンツの符号化のレイヤが３つである場合について説明したが、さらに多くのレイヤで符号化されたコンテンツについても、上記と同様の方法を適用することができるのは言うまでもない。また、各レイヤをそれぞれ３つのフロックに分けた例を示したが、予想されるアクセス数に応じてブロックの数をレイヤ毎に異なるようにしてもよい。例えば、アクセスが多いレイヤ（基本レイヤ）のブロック数を、他のレイヤ（拡張レイヤ１、２）より多くする。こうすることで、キャッシュメモリの利用効率を向上できる。
【０１００】
（第３の実施の形態による効果）
第３の実施の形態によれば、各レイヤをさらに複数のブロックに分割して制御を行うため、第２の実施の形態よりもさらにキャッシュヒット率を向上させることができ、キャッシュメモリの利用効率をより以上向上させることが可能となる。
【０１０１】
（第４の実施の形態）
次に、本発明の第４の実施の形態について説明する。この第４の実施の形態によるコンテンツ配信システム及びそのコンテンツ配信装置１０の構成については、図１に示した第１の実施の形態の構成と同じであるので説明を省略する。
【０１０２】
この第４の実施の形態は、コンテンツに含まれるデータのフォーマットに応じて、コンテンツを複数のブロックに区切るようにした点で上述した実施の形態と相違する。
【０１０３】
図１６に、第４の実施の形態によるキャッシュ制御テーブル生成手段１０５が生成するキャッシュ制御テーブル２００の一例を示す。
【０１０４】
図１６に示すように、第４の実施の形態においては、コンテンツに含まれるデータのうち、テキストフォーマット部分、音声フォーマットの部分、映像フォーマット部分をそれぞれ２つのブロックに区切っている。
【０１０５】
さらに、より多くのアクセスが予想されるデータ（例えば、テキスト）について、キャッシュ削除タイマ時間２０６が大きくなるように更新値を設定することで、より多くのアクセスが予想されるデータほど長くキャッシュ保持手段１０３に存在するように制御する。
【０１０６】
図１６は、キャッシュ保持手段１０３にコンテンツを格納した初期状態のキャッシュ制御テーブル２００を示しており、それぞれのブロックのアクセス頻度２０４やキャッシュ削除タイマ時間２０６は初期値となっている。また、各ブロックにキャッシュ削除タイマ時間２０６の更新値を示すタイマ係数を設定している。この例では、テキストフォーマットに対応するブロックのタイマ係数を「５」、音声と映像フォーマットに対応するブロックのタイマ係数をそれぞれ「３」、「２」としている。
【０１０７】
図１７は、テキストのブロック（ＩＤ：００１−１）について４回、ブロック（ＩＤ：００１−２）について３回のキャッシュアクセスがあり、音声のブロック（ＩＤ：００２−１）について２回、ブロック（ＩＤ：００２−２）について１回のキャッシュアクセスがあり、映像のブロック（ＩＤ：００３−１）について１回のキャッシュアクセスがあった場合のキャッシュ制御テーブル２００の状態を示している。ここでは、タイマ係数がテキスト、音声、映像毎にそれぞれ「５分」、「３分」、「２分」であることから、各ブロックのキャッシュ削除タイマ時間２０６がそれぞれ図示のように更新されている。なお、映像のブロック（ＩＤ：００３−２）については、一度もキャッシュアクセスがないため、キャッシュ削除タイマ時間２０６は初期値の「１０分」のままである。
【０１０８】
（第４の実施の形態による効果）
第４の実施の形態によれば、コンテンツに含まれるデータのフォーマットに応じてコンテンツを複数のブロックに区切り、ブロック毎にキャッシュ制御を行うようにしたので、アクセス頻度が高いデータのブロックをより長期間キャッシュに残し、アクセス頻度が低いデータのブロックを早期にキャッシュから削除することができ、キャッシュメモリの利用効率を向上させることができる。
【０１０９】
（第５の実施の形態）
次に、本発明の第５の実施の形態について説明する。この第５の実施の形態によるコンテンツ配信システム及びそのコンテンツ配信装置１０の構成については、図１に示した第１の実施の形態の構成と同じであるので説明を省略する。
【０１１０】
この第５の実施の形態は、番組等のコンテンツに含まれる内容（番組内容）に応じて、コンテンツを複数のブロックに区切るようにした点で上述した実施の形態と相違する。
【０１１１】
図１８に、第５の実施の形態によるキャッシュ制御テーブル生成手段１０５が生成するキャッシュ制御テーブル２００の一例を示す。
【０１１２】
図１８に示すように、第５の実施の形態においては、コンテンツに含まれる番組内容である番組１、番組２、番組３をそれぞれ２つのブロックに区切っている。
【０１１３】
より多くのアクセスが予想される番組（視聴率の高い番組）について、キャッシュ削除タイマ時間２０６が大きくなるように更新値を設定することで、より多くのアクセスが予想される番組ほど長くキャッシュ保持手段１０３に存在するように制御する。
【０１１４】
図１８は、キャッシュ保持手段１０３にコンテンツを格納した初期状態のキャッシュ制御テーブル２００を示しており、それぞれのブロックのアクセス頻度２０４やキャッシュ削除タイマ時間２０６は初期値となっている。また、各ブロックにキャッシュ削除タイマ時間２０６の更新値を示すタイマ係数を設定している。この例では、番組１に対応するブロックのタイマ係数を「５」、番組２と番組３に対応するブロックのタイマ係数をそれぞれ「３」、「２」としている。
【０１１５】
図１９は、番組１のブロック（ＩＤ：００１−１）について３回、ブロック（ＩＤ：００１−２）について１回のキャッシュアクセスがあり、音声のブロック（ＩＤ：００２−１）について２回、映像のブロック（ＩＤ：００３−１）について１回のキャッシュアクセスがあった場合のキャッシュ制御テーブル２００の状態を示している。ここでは、タイマ係数がテキスト、音声、映像毎にそれぞれ「５分」、「３分」、「２分」であることから、各ブロックのキャッシュ削除タイマ時間２０６がそれぞれ図示のように更新されている。なお、音声のブロック（ＩＤ：００３−２）と映像のブロック（ＩＤ：００３−２）については、一度もキャッシュアクセスがないため、キャッシュ削除タイマ時間２０６は初期値の「１０分」のままである。
【０１１６】
（第５の実施の形態による効果）
第５の実施の形態によれば、コンテンツに含まれる番組等の内容毎にコンテンツを複数のブロックに区切り、ブロック毎にキャッシュ制御を行うようにしたので、アクセス頻度が高い番組のブロックをより長期間キャッシュに残し、アクセス頻度が低い番組のブロックを早期にキャッシュから削除することができ、キャッシュメモリの利用効率を向上させることができる。
【０１１７】
以上好ましい実施の形態と実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態及び実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【０１１８】
この出願は、２００８年１１月２１日に出願された日本出願特願２００８−２９８２４２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１１９】
本発明によれば、放送番組や映画などの映像コンテンツをネットワークを経由して配信するといった用途に適用できる。特に高い配信性能を要求される大規模な加入者を有し、人気コンテンツを配信するコンテンツ配信システムに適用できる。また、コンテンツは映像に限らず音楽やゲームなど様々な種類のコンテンツ配信サービスへの適用が可能である。
【図１】
2010058790.tif 000003
【図２】
2010058790.tif 000004
【図３】
2010058790.tif 000005
【図４】
2010058790.tif 000006
【図５】
2010058790.tif 000007
【図６】
2010058790.tif 000008
【図７】
2010058790.tif 000009
【図８】
2010058790.tif 000010
【図９】
2010058790.tif 000011
【図１０】
2010058790.tif 000012
【図１１】
2010058790.tif 000013
【図１２】
2010058790.tif 000014
【図１３】
2010058790.tif 000015
【図１４】
2010058790.tif 000016
【図１５】
2010058790.tif 000017
【図１６】
2010058790.tif 000018
【図１７】
2010058790.tif 000019
【図１８】
2010058790.tif 000020
【図１９】
2010058790.tif 000021
【図２０】
2010058790.tif 000022
【図２１】
2010058790.tif 000023
【国際調査報告】
2010058790.tif 000024
2010058790.tif 000025
2010058790.tif 000026