(57)【特許請求の範囲】
【請求項１】
コンテンツ配信サーバが、オリジナルコンテンツ格納装置に格納されているコンテンツのデータを配信対象の１又は複数の配信先装置へ配信するコンテンツ配信システムであって、
上記コンテンツ配信サーバは、
キャッシュデータ格納手段と、
キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、
キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御手段とを有する
ことを特徴とするコンテンツ配信システム。
【請求項２】
オリジナルコンテンツ格納装置に格納されているコンテンツのデータを、配信対象の１又は複数の配信先装置へ配信するコンテンツ配信サーバであって、
キャッシュデータ格納手段と、
キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、
キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御手段と
を有することを特徴とするコンテンツ配信サーバ。
【請求項３】
オリジナルコンテンツ格納装置に格納されているコンテンツのデータを、配信対象の１又は複数の配信先装置へ配信するコンテンツ配信サーバであって、キャッシュデータ格納手段となるメモリを有するコンテンツ配信サーバに搭載されているコンピュータを、
キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、
キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御手段として機能させる
ことを特徴とするコンテンツ配信プログラム。
【請求項４】
オリジナルコンテンツ格納装置に格納されているコンテンツのデータを、配信対象の１又は複数の配信先装置へ配信するコンテンツ配信サーバにおけるコンテンツ配信方法であって、
キャッシュデータ格納手段が実行するキャッシュ格納ステップと、
キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、
キャッシュ制御手段が、キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御ステップと
を有することを特徴とするコンテンツ配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンテンツ配信サーバ、コンテンツ配信システム、コンテンツ配信プログラム及びコンテンツ配信方法に関し、例えば、映像コンテンツをキャッシュしながら発信する場合に適用し得るものである。
【背景技術】
【０００２】
一般に、ビデオ・オン・デマンドシステムなどの映像コンテンツ配信システムでは、映像コンテンツ配信サーバの負荷とネットワークトラフィックを軽減する目的で、コンテンツデータを複製するキャッシュを利用する場合がある。このようなキャッシュを利用する映像コンテンツ配信システムでは、対象の映像コンテンツを別のサーバに複製する機能を追加することによりキャッシュを実現している（特許文献１参照）。ここで、１つのコンテンツデータの同時配信数が所定値以上になると、要求されたコンテンツデータの複製をキャッシュする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−８９０１９
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来システムでは、１つのコンテンツデータの全体を別のサーバにキャッシュとして複製するため、大容量の映像コンテンツの複製には時間がかかり、複製が完了するまではキャッシュデータが使用できないという課題があった。
【０００５】
そのため、キャッシュを起動したときからキャッシュデータを利用できるまでの時間が短いコンテンツ配信サーバ、コンテンツ配信システム、コンテンツ配信プログラム及びコンテンツ配信方法が望まれている。
【課題を解決するための手段】
【０００６】
第１の本発明は、コンテンツ配信サーバが、オリジナルコンテンツ格納装置に格納されているコンテンツのデータを配信対象の１又は複数の配信先装置へ配信するコンテンツ配信システムであって、（１）上記コンテンツ配信サーバは、
（１−１）キャッシュデータ格納手段と、（１−２）キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御手段とを有する。
【０００７】
第２の本発明は、オリジナルコンテンツ格納装置に格納されているコンテンツのデータを、配信対象の１又は複数の配信先装置へ配信するコンテンツ配信サーバであって、（１）キャッシュデータ格納手段と、（２）キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御手段とを有することを特徴とする。
【０００８】
第３の本発明のコンテンツ配信プログラムは、オリジナルコンテンツ格納装置に格納されているコンテンツのデータを、配信対象の１又は複数の配信先装置へ配信するコンテンツ配信サーバであって、キャッシュデータ格納手段となるメモリを有するコンテンツ配信サーバに搭載されているコンピュータを、キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御手段として機能させることを特徴とする。
第４の本発明は、オリジナルコンテンツ格納装置に格納されているコンテンツのデータを、配信対象の１又は複数の配信先装置へ配信するコンテンツ配信サーバにおけるコンテンツ配信方法であって、（１）キャッシュデータ格納手段が実行するキャッシュ格納ステップと、（２）キャッシュ処理を開始する条件が、上記１又は複数の配信先装置に配信される第１コンテンツの同時配信数が所定値を超えていることであり、キャッシュ制御手段が、キャッシュ処理を開始する条件が成立したか否かを判定し、キャッシュ処理を開始する条件の成立前には、そのときの上記１又は複数の配信先装置に対する第１コンテンツデータを、上記オリジナルコンテンツ格納装置から取得して配信させ、キャッシュ処理を開始する条件の成立後には、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されている上記１又は複数の配信先装置に対しては、上記キャッシュデータ格納手段から第１コンテンツデータを読み出して配信させ、配信すべき第１コンテンツデータが上記キャッシュデータ格納手段に格納されていない上記１又は複数の配信先装置に対しては、上記オリジナルコンテンツ格納装置から第１コンテンツデータを取得して配信させると共に、その第１コンテンツデータを上記キャッシュデータ格納手段に格納させるキャッシュ制御ステップとを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、キャッシュを起動したときからキャッシュデータを利用できるまでの時間が短いコンテンツ配信サーバ、コンテンツ配信システム、コンテンツ配信プログラム及びコンテンツ配信方法を実現できる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態のコンテンツ配信システムの構成を示すブロック図である。
【図２】第１の実施形態のキャッシュ制御部の処理を示すフローチャートである。
【図３】第１の実施形態のキャッシュデータ格納部へ映像データが格納される状況を示したもの（その１）である。
【図４】第１の実施形態のキャッシュデータ格納部へ映像データが格納される状況を示したもの（その２）である。
【図５】第１の実施形態のキャッシュデータ格納部へ映像データが格納される状況を示したもの（その３）である。
【図６】第２の実施形態のコンテンツ配信システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１１】
（Ａ）第１の実施形態
以下、本発明によるコンテンツ配信サーバ、コンテンツ配信システム、コンテンツ配信プログラム及びコンテンツ配信方法の第１の実施形態を、図面を参照しながら説明する。第１の実施形態のコンテンツ配信システムは映像コンテンツを配信するものである。
【００１２】
（Ａ−１）第１の実施形態の構成
図１は、第１の実施形態のコンテンツ配信システムの構成を示すブロック図である。コンテンツ配信システムが配信可能な映像コンテンツは複数種類であることが多いが、図１は、ある１種類の映像コンテンツに着目して示している。
【００１３】
図１において、第１の実施形態のコンテンツ配信システム１は、オリジナルコンテンツ格納部１０１、コンテンツ配信サーバ１１０及び映像再生端末３０−１〜３０−Ｎ（Ｎは任意の自然数）を有する。
【００１４】
オリジナルコンテンツ格納部１０１は、配信対象の映像コンテンツのオリジナル（キャッシュの映像コンテンツに対する表現である）を格納しているものである。オリジナルコンテンツ格納部１０１は、コンテンツ配信サーバ１１０の外部記憶装置として実現されているものであっても良く、また、ネットワークや専用線を介してコンテンツ配信サーバ１１０に接続するコンテンツ格納サーバやコンテンツ供給元サーバとして実現されているものであっても良い。また、オリジナルの映像コンテンツは、圧縮処理がなされていないものであっても良く、また、圧縮処理がなされたものであっても良い。
【００１５】
コンテンツ配信サーバ１１０は、オリジナルコンテンツ格納部１０１に格納されている映像コンテンツを、ネットワークＮＥＴを介して映像コンテンツを要求している映像再生端末３０−１〜３０−Ｎに供給するものである。例えば、ネットワークＮＥＴがパケット通信ネットワークである場合、映像コンテンツは１つのパケットに挿入できる所定量の映像データに切り分けられて映像再生端末３０−１〜３０−Ｎに供給される。この実施形態の場合、コンテンツ配信サーバ１１０は、オリジナルコンテンツ格納部１０１からの映像コンテンツを、所定量に切り分けたりすることはあっても、圧縮などの加工を実行しないものである。
【００１６】
映像再生端末３０−１〜３０−Ｎはそれぞれ、例えば、ネットワーク接続機能を有するテレビ、セットトップボックス、パソコン、スマートフォンなどが該当し、コンテンツ配信サーバ１１０から供給された映像コンテンツを再生して利用者に提供するものである。映像コンテンツの配信開始は、例えば、利用者との契約に基づいた日時になると自動的に映像再生端末に対して配信を開始するようにしても良く、また例えば、映像再生端末から配信の要求があったときに、その映像再生端末に対して配信を開始するようにしても良い。以下では、後者であるとして説明する。
【００１７】
コンテンツ配信サーバ１１０は、配信先管理部１１１、キャッシュ制御部１１２、キャッシュデータ格納部１１３及び映像送出データ部２０−１〜２０−Ｎ（図１では映像再生端末が割り当てられているものだけを描き出している）を有する。例えば、配信先管理部１１１及びキャッシュ制御部１１２は、専用的な処理用のＩＣチップとして構成されていても良く（この場合であれば、配信先管理部１１１やキャッシュデータ格納部１１３なども実装可能である）、また、コンテンツ配信サーバ１１０に搭載されているＣＰＵが実行するプログラムとして用意されたものであっても良い。すなわち、後者の場合であっても、機能的には、このような配信先管理部１１１及びキャッシュ制御部１１２に分けることができる。
【００１８】
配信先管理部１１１は、配信を要求してきた映像再生端末に映像データを配信（送信）する映像データ送出部を割り当てたり、配信先の映像再生端末についての情報を管理したり、映像データ送出部に対して配信の開始を指示したりするものである。
【００１９】
配信先管理部１１１は、例えば、配信が必要な映像再生端末の数（同時配信数）、配信先の各映像再生端末の特定情報（例えば、ネットワーク上のアドレス）、その特定情報に対応付けられている利用する映像データ送出部などが管理されている。
【００２０】
例えば、映像再生端末が予め配信を要求する場合にアクセスしてくる当該コンテンツ配信サーバ１１０のアドレスやＷｅｂページなどが定まっており、そのようなアドレスやＷｅｂページなどへのアクセスを受け付ける図示しない要求受信部があり、要求受信部が任意の映像再生端末３０−ｎからの配信要求を受け付けたときに、配信先管理部１１１は、未使用の映像データ送出部の中から、映像データを配信（送信）する映像データ送出部２０−ｎを割り当てる。そして、配信先管理部１１１は、割り当てた映像データ送出部２０−ｎに対して、配信先の映像再生端末３０−ｎの特定情報を与えて配信の開始を指示する。
【００２１】
キャッシュデータ格納部１１３は、映像コンテンツのキャッシュデータを格納するものである。すなわち、キャッシュデータ格納部１１３は、映像コンテンツの配信にキャッシュを利用することとなった場合に、配信に供した映像データが格納されると共に、適宜、格納された映像データが読み出されるものである。キャッシュデータ格納部１１３は、コンテンツ配信サーバ１１０内のメモリ（例えばＲＡＭ）やハードディスクなどの内部の記憶装置上に形成されても良く、コンテンツ配信サーバ１１０の外部の記憶装置等に構築されても良い。ここで、外部の記憶装置が離れていても良いが、オリジナルコンテンツ格納部１０１との比較でアクセス性が格段的に良いことを要する。
【００２２】
キャッシュ制御部１１２は、映像コンテンツを構成する部分のデータである映像データをキャッシュデータ格納部１１３に書き込んだり、キャッシュデータ格納部１１３から映像データを読み出したりするものである。
【００２３】
キャッシュ制御部１１２は、配信先管理部１１１の管理情報や、キャッシュデータ格納部１１３に対する映像データ毎の格納済か否かの内蔵する格納有無情報を参照しながら、配信が必要な映像再生端末３０−１〜３０−Ｎに対する映像コンテンツ（従って映像データ）の配信を制御するものである。
【００２４】
キャッシュ制御部１１２は、配信中の映像再生端末の数が予め定まっている所定数に達するまでは、オリジナルコンテンツ格納部１０１から読み出した映像データを映像再生端末３０−１〜３０−Ｎに配信させるが、キャッシュデータ格納部１１３への格納を実行しない。
【００２５】
キャッシュ制御部１１２は、配信中の映像再生端末の数が予め定まっている所定数に達すると、オリジナルコンテンツ格納部１０１から読み出した映像データ又はキャッシュデータ格納部１１３から読み出した映像データを映像再生端末に配信させ、また、オリジナルコンテンツ格納部１０１から読み出した映像データを複製してキャッシュデータ格納部１１３へ格納させる。キャッシュデータ格納部１１３に映像コンテンツの全ての映像データが格納された以降は、キャッシュ制御部１１２は、キャッシュデータ格納部１１３から読み出した映像データを映像再生端末に配信させる。
【００２６】
配信先の映像再生端末によって、同じ時刻でも、その時刻に配信すべき映像データは異なっている。配信中の映像再生端末の数が予め定まっている所定数に達した以降、キャッシュ制御部１１２は、キャッシュデータ格納部１１３に映像データがなければ、オリジナルコンテンツ格納部１０１から読み出した映像データを配信する。映像コンテンツ中で異なる箇所の映像データをオリジナルコンテンツ格納部１０１から読み出して異なる映像再生端末に配信する場合、キャッシュ制御部１１２は、読み出された映像データを全てキャッシュデータ格納部１１３に格納させる。そのため、キャッシュ制御部１１２は、キャッシュデータ格納部１１３への格納を開始する前に、映像コンテンツの長さなどに基づいて、キャッシュデータ格納部１１３のエリアを映像データ毎に分割すると共に、映像データ毎（若しくはキャッシュデータ格納部１１３のアドレス毎）に格納済か未格納を書き入れることができるテーブルを内部に生成し（生成直後は全てが未格納になっている）、キャッシュデータ格納部１１３に映像データを書き込む毎に「未格納」を「格納済」に更新する。キャッシュ制御部１１２は、映像データを、その映像データの映像コンテンツにおける位置に応じた、キャッシュデータ格納部１１３のエリアに書き込むように制御する。
【００２７】
キャッシュ制御部１１２の映像データの読出し、書込み制御については、後述する動作説明の項でも明らかにする。
【００２８】
キャッシュ制御部１１２は、映像データ送出部２０−ｎから要求された映像コンテンツの要求された映像データを、要求元の映像再生端末３０−ｎへ出力する。
【００２９】
なお、キャッシュ制御部１１２は、キャッシュ処理を止める条件の成立をも監視しており、この条件の成立時には、オリジナルコンテンツ格納部１０１から読み出した映像データを映像再生端末３０−１〜３０−Ｎに配信させる状態に復帰させる。
【００３０】
映像データ送出部２０は、当該コンテンツ配信サーバ１１０が同時配信し得る最大数だけ設けられている。図１では、映像コンテンツを配信する映像再生端末３０−１〜３０−Ｎに割り当てられている映像データ送出部２０−１〜２０−Ｎだけを記載している。配信先の映像再生端末３０−ｎが割り当てられた映像データ送出部２０−ｎは、キャッシュ制御部１１２から映像データを取り出し、ネットワークＮＥＴを通過できる形式（例えば、所定形式のパケット）に変換して、対応付けられている映像再生端末３０−ｎに配信（送信）するものである。
【００３１】
映像データ送出部２０−ｎが、配信中の映像コンテンツのうちの未配信のデータ部分情報、若しくは、配信済のデータ部分の情報を内部で管理しており、この管理情報に基づいて、次の映像データをキャッシュ制御部１１２に要求する。又は、キャッシュ制御部１１２が、映像データ送出部２０−ｎに映像コンテンツのどこまでの映像データを与えたかを管理しておき、映像データ送出部２０−ｎから次の映像データの要求（映像データを特定する情報は含まれていない要求）があったときに、管理している情報に基づいて、次の映像データを映像データ送出部２０−ｎに与えるようにしても良い。
【００３２】
以上では、映像データ送出部２０−ｎが次の映像データをキャッシュ制御部１１２に要求し、それに応じて、キャッシュ制御部１１２が映像データ送出部２０−ｎに次の映像データを与える方法を示したが、キャッシュ制御部１１２が映像データ送出部２０−ｎに次々と映像データを自律的に与える方法であっても良い。後者の方法では、映像データ送出部２０−ｎがバッファメモリを持っていることが好ましい。後述する動作の項では、前者の方法が適用されているとして説明する。
【００３３】
（Ａ−２）第１の実施形態の動作
次に、第１の実施形態のコンテンツ配信システム１の動作を説明する。
【００３４】
映像再生端末３０−ｎからの映像コンテンツの配信要求（視聴要求）に対し、コンテンツ配信サーバ１１０においては、その映像再生端末３０−ｎに映像データを配信（送信）する映像データ送出部２０−ｎが割り当てられる。映像データ送出部２０−ｎは、キャッシュ制御部１１２に対して、要求されている映像コンテンツの配信する区間のデータ取得を順次要求し、キャッシュ制御部１１２から順次与えられた映像データをキャッシュ制御部１１２に配信（送信）する。
【００３５】
ここで、キャッシュ制御部１１２は、要求された区間の映像データがキャッシュデータ格納部１１３に格納されていれば、キャッシュデータ格納部１１３から映像データを取得して映像データ送出部２０−ｎに渡す。一方、キャッシュ制御部１１２は、要求された区間の映像データがキャッシュデータ格納部１１３に格納されていなければ、オリジナルコンテンツ格納部１０１に対して当該区間の映像データの取得を要求し、取得した映像データを映像データ送出部２０−ｎに渡す。このとき、キャッシュ制御部１１２は、キャッシュデータ格納部１１３へ格納する条件が成立していれば、オリジナルコンテンツ格納部１０１から取得した映像データを、キャッシュデータ格納部１１２にも格納する。
【００３６】
一般的に、キャッシュデータ格納部１１３に格納できるデータ量は、オリジナルコンテンツ格納部１０１のデータ量よりも少なく、全ての映像コンテンツをキャッシュデータ格納部１１３に格納することは困難である。従って、利用頻度の高い映像コンテンツをキャッシュデータ格納部１１３に格納する制御が重要となる。キャッシュ制御部１１２は、キャッシュデータ格納部１１３に映像コンテンツを効率的に格納するための制御を行う。
【００３７】
図２は、キャッシュ制御部１１２の処理を示すフローチャートである。図２において、１区画分の映像データを処理するステップＳ１０２〜Ｓ１０５の処理は、同一の映像コンテンツが配信される全ての映像再生端末について、並行的に、又は、時間順次に実行される処理である。ステップＳ１０１、Ｓ１０６、Ｓ１０７は、例えば、所定周期毎に、若しくは、同一の映像コンテンツが配信される全ての映像再生端末について、ステップＳ１０２〜Ｓ１０５の処理が実行される毎に、実行される処理である。
【００３８】
キャッシュ制御部１１２は、所定の判定タイミングになると、ある映像コンテンツ（以下、映像コンテンツＡとする）の同時配信数が予め設定しているキャッシュ開始配信数を超えたか否かを判定する（ステップＳ１０１）。言い換えると、この判定は、キャッシュデータ格納部１１３を利用したキャッシュを開始するか否かの判定になっている。
【００３９】
キャッシュ制御部１１２は、同時配信数がキャッシュ開始配信数を超えていなければ、映像コンテンツＡに関する映像データ送出部２０−ｎからのデータ取得要求に対して、オリジナルコンテンツ格納部１０１から取得した映像データを、キャッシュデータ格納部１１３に格納することなく映像データ送出部２０−ｎに与えて映像再生端末３０−ｎに配信させる（ステップＳ１０５）。キャッシュ制御部１１２は、かかるステップＳ１０５の処理を、その時点で映像コンテンツＡが配信される全ての映像再生端末３０−１〜３０−Ｎに対して並行的に又は順次に実行する。このような処理後には、キャッシュ制御部１１２は、所定の判定タイミングになると、映像コンテンツＡの同時配信数が予め設定しているキャッシュ開始配信数を超えたか否かを判定する次のタイミングを待ち受けることとなる。
【００４０】
一方、キャッシュ制御部１１２は、同時配信数がキャッシュ開始配信数を超えた場合には、映像コンテンツＡに関する映像送出データ部２０−ｎからのデータ取得要求に対して、要求された部分の映像データがキャッシュデータ格納部１１３に格納されているか否かを判定する（ステップＳ１０２）。キャッシュ制御部１１２は、要求された部分の映像データがキャッシュデータ格納部１１３に格納されていた場合には、キャッシュデータ格納部１１３から映像データを取得して映像データ送出部２０−ｎに与えて映像再生端末３０−ｎに配信させる（ステップＳ１０３）。これに対して、キャッシュ制御部１１２は、要求された部分の映像データがキャッシュデータ格納部１１３に格納されていない場合には、オリジナルコンテンツ格納部１０１から取得して、映像データ送出部２０−ｎに与えて映像再生端末３０−ｎに配信させながら、キャッシュデータ格納部１１３にも映像データを格納する（ステップＳ１０４）。キャッシュ制御部１１２は、かかるステップＳ１０２〜Ｓ１０４の処理を、その時点で映像コンテンツＡが配信される全ての映像再生端末３０−１〜３０−Ｎに対して並行的に又は順次に実行する。
【００４１】
キャッシュ制御部１１２は、キャッシュ処理を実行している場合において、所定の判定タイミングになると、映像コンテンツＡの同時配信数が予め設定しているキャッシュ終了配信数を下回ったか否かを判定する（ステップＳ１０６）。言い換えると、この判定は、キャッシュデータ格納部１１３を利用したキャッシュを終了するか否かの判定になっている。キャッシュ終了配信数は、キャッシュ開始配信数と同じ数であっても良いが、キャッシュ状態への移行と、キャッシュ状態の終了とが頻繁に繰り返さないように、キャッシュ終了配信数をキャッシュ開始配信数より小さく選定しておくことが好ましい。
【００４２】
キャッシュ制御部１１２は、同時配信数がキャッシュ終了配信数を下回っていなければ、引き続き、要求された部分の映像データがキャッシュデータ格納部１１３に格納されているか否かの判定を実施しながら配信を制御する処理（ステップＳ１０２〜Ｓ１０４）に戻る。
【００４３】
キャッシュ制御部１１２は、同時配信数がキャッシュ終了配信数を下回っていれば、映像コンテンツＡのキャッシュデータ格納部１１３に格納されている映像データを削除する（ステップＳ１０７）。キャッシュ制御部１１２は、これ以降のデータ取得については、同時配信数がキャッシュ開始配信数を超えたと判定されるまで（ステップＳ１０２）、オリジナルコンテンツ格納部１０１から取得した映像データをキャッシュデータ格納部１１３に格納せずに配信させることとなる（ステップＳ１０５）。
【００４４】
図３〜図５はそれぞれ、キャッシュデータ格納部１１３へデータが格納される状況を示したものであり、図３より図４の方が、図４より図５の方が時間的に後の状況を示している。図３〜図５は、キャッシュ開始配信数が３本に設定されている例である。映像送出データ部２０−１〜２０−５が割り当てられている映像再生端末（図３で示していないが端末３０−１〜３０−５）は、枝番が小さい方が早く配信を要求している。
【００４５】
図３は、ある時刻に映像コンテンツＡを同時に３本配信しているときの状態である。キャッシュ開始配信数が３本に設定されている状況では、映像コンテンツＡを配信している３つの映像送出データ部２０−１〜２０−３に対し、キャッシュ制御部１１２は、キャッシュデータ格納部１１３からではなく、オリジナルコンテンツ格納部１０１から映像データを取得して供給している。この際には、キャッシュデータ格納部１１３に対する書込みは実行されない。
【００４６】
同時配信数が３本のままで配信が進んでいくと、キャッシュ制御部１１２は、オリジナルコンテンツ格納部１０１からの映像コンテンツＡの読み出し位置を先頭から末尾の方向へ移動しながら映像データを取得する。
【００４７】
図４は、時間が経過して映像コンテンツＡの４本目の配信が開始されるときの状態である。キャッシュ制御部１１２は、同時配信数（＝４）がキャッシュ開始配信数（＝３）を超えたことにより、映像送出データ部２０−１〜２０−４に送出する映像データをオリジナルコンテンツ格納部１０１から取得すると共に、キャッシュデータ格納部１１３の対応する格納領域ｗ１〜ｗ４に映像データを格納する。
【００４８】
図５は、さらに時間が経過して映像送出データ部２０−４が読み出す部分が、映像送出データ部２０−３への映像データをキャッシュデータ格納部１１３へ格納した部分ｒ３まで到達した状態である。図５に示す直前には、映像送出データ部２０−１〜２０−４へ送出しながらキャッシュデータ格納部１１３へ格納した映像データにより、キャッシュデータ格納部１１３のｒ１〜ｒ４の部分に、映像コンテンツＡに係る映像データが格納されている。従って、キャッシュ制御部１１２は、映像送出データ部２０−４が配信する映像データは、キャッシュデータ格納部１１３の区間ｒ３に格納されているため、オリジナルコンテンツ格納部１０１からではなくキャッシュデータ格納部１１３から取得する。
【００４９】
図５は、新たに映像コンテンツＡの配信を開始する映像送出データ部２０−５が増え、キャッシュ制御部１１２が、キャッシュデータ格納部１１３の区間ｒ４から映像データを取得して映像送出データ部２０−５に送出する様子をも示している。
【００５０】
（Ａ−３）第１の実施形態の効果
以上のように、第１の実施形態のコンテンツ配信システムによれば、キャッシュの起動後に、同一の映像コンテンツを複数の映像再生端末にそれぞれ配信している際、配信している部分の映像データがオリジナルコンテンツ格納部１０１から取得したものである場合には並行してキャッシュデータ格納部１１３に格納するようにしたので、起動から短時間で、映像コンテンツのキャッシュデータの生成と利用とを可能にすることができる。
【００５１】
（Ｂ）第２の実施形態
次に、本発明によるコンテンツ配信システムの第２の実施形態を、図面を参照しながら説明する。
【００５２】
図６は、第２の実施形態のコンテンツ配信システムの構成を示すブロック図である。図６において、第２の実施形態のコンテンツ配信システム２は、オリジナルコンテンツ格納部４０１、オリジナル配信サーバ４０２、複数のキャッシュ配信サーバ５０１〜５０Ｍ、複数の映像再生端末５０１−１〜５０１−ａ、５０２−１〜５０２−ｂ、…、５０Ｍ−１〜５０Ｍ−ｚを有する。
【００５３】
オリジナルコンテンツ格納部４０１は、配信対象の映像コンテンツのオリジナルを格納しているものである。
【００５４】
オリジナル配信サーバ４０２は、各キャッシュ配信サーバ５０１〜５０Ｍに対して映像コンテンツを配信するものである。オリジナル配信サーバ４０２は、キャッシュデータ格納部を内蔵し、キャッシュ配信サーバ５０１〜５０Ｍに対する配信を、第１の実施形態のコンテンツ配信サーバが映像再生端末に配信すると同様な方法で配信するものである。
【００５５】
複数のキャッシュ配信サーバ５０１〜５０Ｍは、例えば、地域毎に設けられているものである。キャッシュ配信サーバ５０１は、自己が担当する地域に属する映像再生端末５０１−１〜５０１−ａに対して映像コンテンツを配信するものである。キャッシュ配信サーバ５０１は、オリジナル配信サーバ４０２からダウンロードされた映像コンテンツを格納するダウンロードコンテンツ格納部（第１の実施形態のオリジナルコンテンツ格納部１０１に相当する）の他に、キャッシュデータ格納部を内蔵し、映像再生端末５０１−１〜５０１−ａに対する配信を、第１の実施形態のコンテンツ配信サーバが映像再生端末に配信すると同様な方法で配信するものである。他のキャッシュ配信サーバ５０１〜５０Ｍも同様なものである。
【００５６】
第２の実施形態のコンテンツ配信システムによれば、オリジナル配信サーバ４０２からキャッシュ配信サーバ５０１〜５０Ｍへの配信でキャッシュの起動後に、短時間で、映像コンテンツのキャッシュデータの生成と利用とを可能にすることができる。
【００５７】
また、各キャッシュ配信サーバ５０１、５０２、…５０Ｍから、映像再生端末５０１−１〜５０１−ａ、５０２−１〜５０２−ｂ、…、５０Ｍ−１〜５０Ｍ−ｚへの配信でキャッシュの起動後に、短時間で、映像コンテンツのキャッシュデータの生成と利用とを可能にすることができる。
【００５８】
（Ｃ）他の実施形態
上記各実施形態では、逐次的にデータを読み出す通常再生を想定した説明となっているが、早送り再生のようにデータを間欠的に読み飛ばすような高速再生についても同様に適用可能である。通常再生時に格納されたデータに対して、高速再生時に読む部分のキャッシュデータの格納を確認し、キャッシュに格納されていればキャッシュから読み出して配信すれば良い。あるいは、キャッシュデータ格納部に、通常再生用のデータを格納する部分と、高速再生用のデータを格納する部分とを設け、通常再生の同時配信数に基づいてキャッシュ処理の実行有無を制御すると共に、高速再生の同時配信数に基づいてキャッシュ処理の実行有無を制御するようにすれば良い。
【００５９】
上記第１の実施形態では、キャッシュデータ格納部に映像コンテンツの全てのデータが格納された後でも、ステップＳ１０２による格納を確認する判定を行うものを示したが、満杯フラグなどを用意し、満杯フラグが満杯を表しているときには、直ちにステップＳ１０３のキャッシュデータ格納部からの読出しを実行するようにしても良い。
【００６０】
上記第１の実施形態では、キャッシュ処理を開始するかを決定するキャッシュ開始配信数が固定値のものを示したが、キャッシュ開始配信数を状況に応じて変化させるものであっても良い。例えば、キャッシュデータ格納部を構成するメモリが複数の映像コンテンツで併用される場合において、既に、キャッシュ処理を開始している映像コンテンツの数（若しくは数が属する範囲）をキャッシュ開始配信数に変換するテーブルを設け、このテーブルに従って、適用するキャッシュ開始配信数を定めるようにしても良い。また例えば、キャッシュデータ格納部を構成するメモリの残容量に応じて、適用するキャッシュ開始配信数を定めるようにしても良い。
【００６１】
キャッシュ終了配信数についても、状況に応じて変化させるようにしても良い。
【００６２】
上記第１の実施形態では、キャッシュ処理を開始するか否かを決定するために用いるパラメータが同時配信数であるものを示したが、これに代え、又は、これに加え、他のパラメータを用いるようにしても良い。例えば、映像コンテンツの先頭から末尾を２つ（３つ以上であっても良い）の区間に分け、先頭側の区間における同時配信数がキャッシュ開始配信数を超えたことを１条件として、キャッシュ処理を開始するようにしても良い。また例えば、最新の要求を含め、所定時間内に増加した配信数が所定数を超えたことを１条件として、キャッシュ処理を開始するようにしても良い。
【００６３】
キャッシュ終了条件についても、同時配信数に代え、又は、同時配信数に加え、他のパラメータを適用するようにしても良い。配信が終了した端末の増加率や、配信がまもなく終了する端末数を、終了条件に反映させることができる。
【００６４】
上記第１の実施形態では、キャッシュ処理の終了条件が成立すると直ちにキャッシュしていた映像データを消去するものを示したが、終了条件を成立した後、新たに別のキャッシュ処理を開始するタイミングで映像データを消去するようにしても良い。あるいは、所定の待機時間の経過を待ってから映像データを消去するようにしても良い。ここで、所定の待機時間は、例えば、固定時間であっても良く、また、映像コンテンツの先頭から末尾を２つ（３つ以上であっても良い）の区間に分け、末尾側の区間における同時配信数に応じて待機時間を選定するようにしても良い。さらに、映像データの削除は、コンテンツの全区間を同時に消去せずに、配信が終了した先頭側の区間から順次消去するようにしても良い。
【００６５】
本発明が対象とするコンテンツは、映像コンテンツに限定されるものではなく、種々のコンテンツを対象とすることができる。例えば、１つのコンテンツ配信システムが複数種類のコンテンツを扱うことができる場合において、コンテンツの種類によって、上述のキャッシュ開始配信数などを変更するようにしても良い。
【符号の説明】
【００６６】
１…コンテンツ配信システム、１０１…オリジナルコンテンツ格納部、１１０…コンテンツ配信サーバ、１１１…配信先管理部、１１２…キャッシュ制御部、１１３…キャッシュデータ格納部、２０−１〜２０−Ｎ…映像送出データ部、３０−１〜３０−Ｎ…映像再生端末。
【図１】
0005617712.tif 000002
【図２】
0005617712.tif 000003
【図３】
0005617712.tif 000004
【図４】
0005617712.tif 000005
【図５】
0005617712.tif 000006
【図６】
0005617712.tif 000007