説明

配信システム、配信サーバ管理装置、配信サーバ管理プログラム、配信サーバ及び配信プログラム

【課題】配信サーバの配信効率を高める。
【解決手段】 本発明は、第1蓄積手段及び第2蓄積手段を有し、いずれかに蓄積されたコンテンツを配信する複数の配信サーバと、コンテンツの配信を行うサーバを選択する配信サーバ管理装置とを備える配信システムであり、配信サーバ管理装置が、複数の配信サーバの蓄積配信状態情報に基づいて、コンテンツ情報に含まれる当該コンテンツの蓄積必要量を上回る容量を有するものであって、配信数が最小の第1蓄積手段を有する配信サーバを、当該コンテンツを配信するものとして選択するサーバ選択手段を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、配信システム、配信サーバ管理装置、配信サーバ管理プログラム、配信サーバ及び配信プログラムに関し、例えば、IPネットワークを通して、動画像を配信するシステムにおいて、放送中の番組を、既に放送した部分から視聴するスタートオーバ型蓄積配信システムに適用し得るものである。
【背景技術】
【0002】
従来の動画配信サービスシステムは、主に次のような課題がある.
1.サーバは非常に大きい時間当たりの配信量を処理しなければいけない.
2.広範囲の配信地域に対し可能な限り小さい遅延でサーバは配信しなければいけない.
3.数と容量が膨大なコンテンツをサーバは管理しなければいけない。
【0003】
上記課題を解決するために、従来、次のような対策が施されている.
1.サーバの数を増やす。これにより、配信量をサーバに振り分けることができるので、膨大な配信量でも対処できる.
2.例えば地域毎に配信サーバのグループを作る。これにより、各地域の利用者はグループ内のいずれかの配信サーバを利用する様にすることで、配信経路が短くなる.
3.コンテンツを配信するサーバを全てのコンテンツを保持管理するセンタサーバと需要の高いコンテンツのみを保持するローカルサーバに分ける。これにより、コンテンツを一元管理することができ、記録媒体に要するコストも抑えることができる。
【0004】
特許文献1には、全てのコンテンツを保持管理しているセンタサーバから、ローカルサーバへのコンテンツの配信を効率的に行うため、センタサーバを根とし、ローカルサーバを節とする木構造のコンテンツ配送網を構成するコンテンツ配信システムが記載されている。
【0005】
図2は、特許文献1の記載技術のシステム構成を示す構成図である。特許文献1に記載のシステムは、センタサーバ7が管理するコンテンツを、図2に示すパスで、コンテンツ配送するというものである。また、特許文献1に記載のシステムは、ローカルサーバ8−1及び8−2、ローカルサーバ9−1〜9−4がコンテンツ全体を保持するのではなく、平均視聴時間等に応じてローカルサーバ8−1及び8−2、ローカルサーバ9−1〜9−4がコンテンツの一部を保持することで、記録媒体の使用効率を高める手法が取られている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2010−034871号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、動画配信サービスの一つとして、スタートオーバ型の動画配信システムがある。スタートオーバ型の動画配信システムとは、放送中の番組を蓄積し、既に放送した部分から視聴することを可能とする蓄積配信システムをいう。
【0008】
スタートオーバ型の動画配信システムは、以下のような特徴がある.
1.当該システムは現在放送中の放送番組を蓄積しながら配信する.
2.視聴要求は番組放送時間のみ受け付けられ、視聴は視聴期限内に限られる.
3.番組開始時の配信数は通常のVOD(ビデオオンデマンド)コンテンツよりかなり多い.
4.配信数は、図3に示すように、番組開始時に最も増加量が大きく、その後その数を維持し、番組終了後、配信数は急減する.
5.放送スケジュールがあるので、現在放送の番組終了後、その番組に後続する番組がある。そのため、蓄積配信要求は放送スケジュールに沿って続けて発生する。
【0009】
スタートオーバ型の動画配信システムには、次のような課題がある.
1.番組放送中はVODコンテンツに比べかなり多い配信数を確保する必要がある.
2.蓄積配信要求は続けて発生し、番組終了後その番組の配信数は急減して視聴期限で0となるので、各サーバの配信数を最大化できるように、各番組を放送開始時点で最も適したサーバへ割り当てなければいけない。
【0010】
上記のような課題を従来技術で解決しようとしても、次のような問題が生じ得る。
【0011】
1.従来の動画配信システムは、コンテンツの視聴期限が無いか、又は視聴期限が長いかのいずれかであり、一定期間において配信数が集中して多くなるということがない。そのため、従来のVODシステムも、一時期の集中的な配信に対応できる大きな配信容量を備えていない。
【0012】
2.コンテンツは一元管理されており、負荷分散のため、視聴率等に応じセンタサーバからローカルサーバにコピーされ配信される。そのため、従来の動画配信システムは、比較的緩やかな速度で負荷の分散がなされる。しかし、スタートオーバ型の放送番組の蓄積配信システムは、リアルタイム性が要求されるので、従来の負荷分散方法では対処できない。
【0013】
そのため、番組を配信すべき配信数が配信時間により大きく変動するため、メモリーサーバの配信効率を高めることができる配信システム、配信サーバ管理装置、配信サーバ管理プログラム、配信サーバ及び配信プログラムが求められている。
【課題を解決するための手段】
【0014】
かかる課題を解決するために、第1の本発明の配信システムは、(A)クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、クライアントからの配信要求を受けると、第1蓄積手段及び第2蓄積手段のいずれかに蓄積されたコンテンツを配信する複数の配信サーバと、(B)複数の配信サーバのうち、コンテンツの配信を行う配信サーバを選択し、その選択した配信サーバのアドレス情報をクライアントに通知する配信サーバ管理装置とを備え、配信サーバ管理装置が、(1)各配信サーバにおける第1蓄積手段及び第2蓄積手段の蓄積状態及び配信状態を示す蓄積配信状態情報を、全ての配信サーバから定期的に取得する蓄積配信状態情報取得手段と、(2)外部からコンテンツに関するコンテンツ情報を取得するコンテンツ情報取得手段と、(3)複数の配信サーバの蓄積配信状態情報及びコンテンツ情報を記憶する情報記憶手段と、(4)複数の配信サーバの蓄積配信状態情報に基づいて、コンテンツ情報に含まれる当該コンテンツの蓄積必要量を上回る容量を有するものであって、配信数が最小の第1蓄積手段を有する配信サーバを、当該コンテンツを配信するものとして選択するサーバ選択手段と、(5)サーバ選択手段により選択された配信サーバに対して、コンテンツに関するコンテンツ情報を与え、コンテンツの蓄積配信を要求する蓄積配信要求手段と、(6)クライアントからのコンテンツの配信先の通知要求を受けると、サーバ選択手段により選択された配信サーバのアドレス情報を、クライアントに通知するサーバ情報通知手段とを有することを特徴とする。
【0015】
第2の本発明の配信サーバ管理装置は、クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、クライアントからの配信要求を受けると、第1蓄積手段及び第2蓄積手段のいずれかに蓄積されたコンテンツを配信する複数の配信サーバのうち、コンテンツの配信を行う配信サーバを選択し、その選択した配信サーバのアドレス情報をクライアントに通知する配信サーバ管理装置において、(1)各配信サーバにおける第1蓄積手段及び第2蓄積手段の蓄積状態及び配信状態を示す蓄積配信状態情報を、全ての配信サーバから定期的に取得する蓄積配信状態情報取得手段と、(2)外部からコンテンツに関するコンテンツ情報を取得するコンテンツ情報取得手段と、(3)複数の配信サーバの蓄積配信状態情報及びコンテンツ情報を記憶する情報記憶手段と、(4)複数の配信サーバの蓄積配信状態情報に基づいて、コンテンツ情報に含まれる当該コンテンツの蓄積必要量を上回る容量を有するものであって、配信数が最小の上記第1蓄積手段を有する配信サーバを、当該コンテンツを配信するものとして選択するサーバ選択手段と、(5)サーバ選択手段により選択された配信サーバに対して、コンテンツに関するコンテンツ情報を与え、コンテンツの蓄積配信を要求する蓄積配信要求手段と、(6)クライアントからのコンテンツの配信先の通知要求を受けると、サーバ選択手段により選択された配信サーバのアドレス情報を、クライアントに通知するサーバ情報通知手段とを備えることを特徴とする。
【0016】
第3の本発明の配信サーバ管理プログラムは、クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、クライアントからの配信要求を受けると、第1蓄積手段及び第2蓄積手段のいずれかに蓄積されたコンテンツを配信する複数の配信サーバのうち、コンテンツの配信を行う配信サーバを選択し、その選択した配信サーバのアドレス情報をクライアントに通知する配信サーバ管理プログラムにおいて、コンピュータを、(1)各配信サーバにおける第1蓄積手段及び第2蓄積手段の蓄積状態及び配信状態を示す蓄積配信状態情報を、全ての配信サーバから定期的に取得する蓄積配信状態情報取得手段、(2)外部からコンテンツに関するコンテンツ情報を取得するコンテンツ情報取得手段、(3)複数の配信サーバの蓄積配信状態情報及びコンテンツ情報を記憶する情報記憶手段、(4)複数の配信サーバの蓄積配信状態情報に基づいて、コンテンツ情報に含まれる当該コンテンツの蓄積必要量を上回る容量を有するものであって、配信数が最小の第1蓄積手段を有する配信サーバを、当該コンテンツを配信するものとして選択するサーバ選択手段、(5)サーバ選択手段により選択された配信サーバに対して、コンテンツに関するコンテンツ情報を与え、コンテンツの蓄積配信を要求する蓄積配信要求手段、(6)クライアントからのコンテンツの配信先の通知要求を受けると、サーバ選択手段により選択された配信サーバのアドレス情報を、クライアントに通知するサーバ情報通知手段として機能させるものである。
【0017】
第4の本発明の配信サーバクライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、クライアントからの配信要求を受けると、第1蓄積手段及び第2蓄積手段のいずれかに蓄積されたコンテンツを配信する配信サーバであって、(1)第1蓄積手段又は第2蓄積手段のいずれかに蓄積されたコンテンツを配信することを制御する配信切替制御手段と、(2)配信サーバ管理装置からの要求を受けて、第1蓄積手段及び第2蓄積手段の蓄積状態及び配信状態を含む蓄積配信状態を監視し、その蓄積配信状態情報を配信サーバ管理装置に応答する状態管理手段とを備えることを特徴とする。
【0018】
第5の本発明の配信プログラムは、クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、クライアントからの配信要求を受けると、第1蓄積手段及び第2蓄積手段のいずれかに蓄積されたコンテンツを配信する配信プログラムであって、コンピュータを、(1)第1蓄積手段又は第2蓄積手段のいずれかに蓄積されたコンテンツを配信することを制御する配信切替制御手段、(2)配信サーバ管理装置からの要求を受けて、第1蓄積手段及び第2蓄積手段の蓄積状態及び配信状態を含む蓄積配信状態を監視し、その蓄積配信状態情報を配信サーバ管理装置に応答する状態管理手段として機能させることを特徴とするものである。
【発明の効果】
【0019】
本発明によれば、コンテンツを配信すべき配信数が配信時間により大きく変動するため、メモリーサーバの配信効率を高めることができる。
【図面の簡単な説明】
【0020】
【図1】第1の実施形態の配信システムの全体構成を示す全体構成図である。
【図2】従来の配信システムの構成例を示す構成図である。
【図3】スタートオーバでの配信数の時間推移を説明する説明図である。
【図4】第1の実施形態メモリーサーバ30の内部構成を示す内部構成図である。
【図5】第1の実施形態のメモリーサーバマネジャ10の内部構成を示す内部構成図である。
【図6】第1の実施形態の配信システムにおける放送番組蓄積機能の処理を説明するシーケンス図である。
【図7】第1の実施形態のメモリーサーバの選択方法を説明する説明図である。
【図8】第1の実施形態の配信システムにおける蓄積番組配信機能の処理を説明するシーケンス図である。
【図9】第1の実施形態のメモリーサーバにおける配信方式の切り替え処理を説明する説明図である。
【図10】第2の実施形態のメモリーサーバの選択方法を説明するフローチャートである。
【図11】第2の実施形態のメモリー空き容量推移表の構成例を示す構成図である。
【図12】第2の実施形態のメモリー空き容量推移と蓄積番組の蓄積に必要な蓄積量との関係を説明する説明図である。
【図13】第2の実施形態のメモリーのメモリー領域の統合処理を説明する説明図である。
【図14】第3の実施形態の配信システムにおける放送番組蓄積機能の処理を説明するシーケンス図である。
【発明を実施するための形態】
【0021】
(A)第1の実施形態
以下では、本発明の配信システム、配信サーバ管理装置、配信サーバ管理プログラム、配信サーバ及び配信プログラムの第1の実施形態について、図面を参照しながら説明する。
【0022】
第1の実施形態は、例えばスタートオーバ型の放送番組蓄積配信システムに本発明を適用した実施形態を例示する。
【0023】
(A−1)第1の実施形態の構成
(A−1−1)全体構成
図1は、第1の実施形態の配信システムの全体構成を示す全体構成図である。図1において、第1の実施形態の配信システム1は、メモリーサーバマネジャ10、蓄積配信管理リスト20、複数台(図1ではN台:Nは正の整数)のメモリーサーバ30−1〜30−N、クライアント40、ディスパッチャー50を少なくとも有して構成される。
【0024】
メモリーサーバマネジャ10は、放送番組(コンテンツ)を配信するメモリーサーバ30−1〜30−Nを管理するものである。
【0025】
メモリーサーバマネジャ10は、図示しないシステム管理者端末から番組蓄積配信要求を受け取り、システム管理者端末から受け取った番組情報を蓄積配信管理リスト20に登録する。メモリーサーバマネジャ10は、番組情報の登録後、システム管理者端末から番組蓄積配信要求に対する応答を返信する。
【0026】
ここで、番組情報とは、放送番組に関する情報であり、例えば、番組を識別する番組番号、放送番組の開始時間、放送番組の終了時間、放送番組を視聴できる視聴期限(視聴期間)、番組を蓄積するための蓄積量等がある。
【0027】
なお、図示しないシステム管理者端末は、予め設定されている番組の放送スケジュールに従って、これから放送する番組について、番組蓄積配信要求をメモリーサーバマネジャ10に行う。
【0028】
また、メモリーサーバマネジャ10は、定期的に、メモリーサーバ30−1〜30−Nに対してメモリーサーバ状態取得要求を行い、各メモリーサーバ30−1〜30−Nからメモリーサーバ状態情報を取得するものである。メモリーサーバマネジャ10は、各メモリーサーバ30−1〜30−Nからメモリーサーバ状態情報を受け取ると、各メモリーサーバ30−1〜30−Nのメモリーサーバ状態情報を、蓄積配信管理リスト20に記憶・更新する。
【0029】
ここで、メモリーサーバ状態情報とは、各メモリーサーバ30−1〜30−Nを識別するメモリーサーバ番号、蓄積開始又は蓄積終了を示す蓄積状態、メモリー配信又はHDD(ハードディスクドライブ)配信を示す配信状態、メモリー配信又はHDD配信の配信数、メモリー使用状況(例えば、使用予定メモリー容量、現在蓄積容量等)がある。
【0030】
さらに、メモリーサーバマネジャ10は、番組の開始時間直前に、蓄積配信管理リスト20における、全メモリーサーバ30−1〜30−Nのメモリーサーバ状態情報を参照して、メモリーサーバ30−1〜30−Nのうち、クライアント40に対して番組を放送するメモリーサーバを選択するものである。
【0031】
また、メモリーサーバマネジャ10は、ディスパッチャー50から番組配信メモリーサーバ情報取得要求を受けると、蓄積配信管理リスト20を参照して、当該番組を配信するものとして選択したメモリーサーバ30のメモリーサーバ番号をディスパッチャー50に応答するものである。
【0032】
蓄積配信管理リスト20は、蓄積配信要求された放送番組に関する情報及びメモリーサーバ30−1〜30−Nのメモリーサーバ状態情報を管理するものである。蓄積配信管理リスト20は、番組を配信するメモリーサーバ30−1〜30−Nのメモリーサーバ状態情報を対応付けて管理する。例えば、蓄積配信管理リスト20は、番組番号、開始番号、終了番組、視聴期限、メモリーサーバ番号、蓄積状態、配信状態、配信数、使用予定メモリー容量、現在蓄積容量等を管理する。
【0033】
メモリーサーバ30(30−1〜30−N)は、メモリー31及びHDD32を備え、図示しないサーバから受け取った放送番組を、メモリー31及びHDD32の両方に蓄積し、メモリー31及びHDD32に蓄積した、いずれかの番組をクライアント40に対して配信するものである。
【0034】
メモリーサーバ30−1〜30−Nは、メモリーサーバマネジャ10から蓄積配信開始要求を受けたものが、その要求に係る番組について、番組の開始時間から、番組の終了時間及び番組の視聴期限までにおいて番組配信を行う。また、メモリーサーバ30−1〜30−Nは、終了時間までにクライアント40から配信要求を受け付け、配信要求してきたクライアント40に対して番組配信を行う。
【0035】
メモリーサーバ30−1〜30−Nは、メモリー31の配信数について閾値αを設定している。メモリーサーバ30−1〜30−Nは、メモリー31上の配信数が閾値αを超えるとき、メモリー31に蓄積されるデータを用いてクライアント40に配信するメモリー配信を行う。また、メモリー31の配信数が閾値αを下回るとき、メモリーサーバ30−1〜30−Nは、HDD32の蓄積データをクライアント40に配信するHDD配信に切り替え、当該番組データのメモリー31への蓄積をやめ、当該メモリー31に蓄積されているデータを削除する。これにより、後続に控えている番組データ(例えば、次の別番組の番組データ)を当該メモリー31に蓄積することができる。
【0036】
クライアント40は、メモリーサーバ30−1〜30−Nから配信された番組を受信するものである。クライアント40は、番組配信を受ける際、当該番組の配信先についてのメモリーサーバ割り当て要求を、ディスパッチャー50に対して行う。これにより、クライアント40がディスパッチャー50から配信先のメモリーサーバ30のメモリーサーバ番号を受けると、そのメモリーサーバ番号のメモリーサーバ30に対して配信要求を行う。
【0037】
ディスパッチャー50は、クライアント40からメモリーサーバ割り当て要求を受けると、その番組についての番組配信メモリーサーバ情報取得要求を、メモリーサーバマネジャ10に行うものである。また、ディスパッチャー50は、メモリーサーバマネジャ10から当該番組を配信する番組配信メモリーサーバ情報を取得すると、そのメモリーサーバ情報をクライアント40に与えるものである。
【0038】
(A−1−2)メモリーサーバ30の内部構成
図4は、メモリーサーバ30の内部構成を示す内部構成図である。図4において、メモリーサーバ30は、メモリー31、HDD32、制御部33、通信部34を少なくとも有する。
【0039】
メモリー31は、通信部34を介して、図示しないサーバから受信した番組データを蓄積する記憶部である。メモリー31は、制御部33の制御の下、通信部34を介して、蓄積データをクライアント40に配信する。
【0040】
HDD32は、ハードディスクドライブである。HDD32も、通信部34を介して、図示しないサーバから受信した番組データを蓄積する。また、HDD32は、制御部33の制御の下、通信部34を介して、蓄積データをクライアント40に配信する。
【0041】
制御部33は、メモリーサーバ30における処理を司るものである。制御部33の主な機能としては、番組蓄積配信処理部331、状態管理部332、配信方式切替制御部333を少なくとも有する。
【0042】
番組蓄積配信処理部331は、蓄積した番組データの配信処理を行うものである。番組蓄積配信処理部331は、メモリーサーバマネジャ10から、番組番号、開始時間、終了時間、視聴期限を含む蓄積配信開始要求を受けると、メモリー31及びHDD32に対して、当該番組についての番組データの蓄積割り当てを行う。
【0043】
また、番組蓄積配信処理部331は、当該番組の開始時刻になると、メモリー31及びHDD32に番組データの蓄積を開始し、メモリーサーバマネジャ10に対して蓄積配信開始応答を行う。
【0044】
さらに、番組蓄積配信処理部331は、クライアント40から、番組番号、有効期限、再生方法を含む配信要求を受けると、その番組番号の番号について、メモリー31及びHDD32に蓄積されたデータに基づき、指定された再生方法で再生可能とするデータに加工して、クライアント40に配信する。
【0045】
なお、番組蓄積配信処理部331は、クライアント40からの配信要求が番組終了時間まで受け付けるようにし、終了時間経過後は、配信要求を受け付けない。
【0046】
また、番組蓄積配信処理部331は、視聴期限になると、メモリー31及びHDD32に蓄積されたデータを削除する。
【0047】
状態管理部332は、当該メモリーサーバ30のメモリー31及びHDD32の状態を監視するものである。状態管理部332は、メモリーサーバマネジャ10からメモリーサーバ状態取得要求を受けると、メモリー31及びHDD32の状態を含むメモリーサーバ状態情報をメモリーサーバマネジャ10に応答する。
【0048】
具体的には、状態管理部332は、番組配信で利用するメモリー31及びHDD32の蓄積状態(現在蓄積中又は蓄積終了等)、番組配信方式がメモリー配信であるか又はHDD配信であるか、メモリー31及びHDD32が配信中である番組のストリームの数を示す配信数、メモリー31の使用状況として使用予定メモリー容量、メモリー31及びHDD32の現在の蓄積容量等を監視する。
【0049】
そして、状態管理部332は、自身のメモリーサーバ番号と、上記のように監視した、メモリー31及びHDD32の蓄積状態、配信状態、メモリー31及びHDD32の配信数、使用予定メモリー容量、現在蓄積容量等を含む情報をメモリーサーバ状態情報としてメモリーサーバマネジャ10に与える。
【0050】
配信方式切替制御部333は、メモリー配信又はHDD配信の方式切替を制御するものである。
【0051】
配信方式切替制御部333は、メモリー31の配信数についての閾値αを設定している。配信方式切替制御部333は、状態管理部332が監視したメモリー31の配信数と閾値αとを比較する。その配信数が閾値αを超えるとき、配信方式切替制御部333はメモリー配信とし、その配信数が閾値αを下回るとき、配信方式切替制御部333は、メモリー31への蓄積を終了し、メモリー31に蓄積されているデータを削除する。
【0052】
番組開始時は、クライアント40からの配信要求が多く、配信数が多い場合がある。第1の実施形態は、番組開始時にメモリー配信を行うことで、番組開始時の配信数の多さにも対応できるようにする。また、メモリー31の比較的容量は少なく、さらに次の番組蓄積配信も控えているので、配信数が閾値αを下回ると(例えば番組終了時に配信数が少なくなると)、HDD配信に切り替える。そして、メモリー31は、後続の番組を蓄積するものとして寄与する。
【0053】
通信部34は、ネットワークと通信する処理部又は装置である。通信部34は、ネットワークを介して、図示しないサーバ、メモリーサーバマネジャ10、クライアント40と情報の授受を行うものである。
【0054】
(A−1−3)メモリーサーバマネジャ10の内部構成
図5は、メモリーサーバマネジャ10の内部構成を示す内部構成図である。図5において、メモリーサーバマネジャ10は、制御部11、通信部12を少なくとも有する。
【0055】
制御部11は、メモリーサーバマネジャ10における処理を司るものである。制御部11の主な機能としては、番組情報登録部111、メモリーサーバ状態取得部112、メモリーサーバ選択部113、蓄積配信要求部114、番組配信メモリーサーバ情報応答部115を有する。
【0056】
番組情報登録部111は、図示しないシステム管理者端末から番組蓄積要求を受け取ると、番組情報を蓄積配信管理リスト20に登録するものである。また、番組情報登録部111は、蓄積配信管理リスト20に番組情報の登録が成功したか否かを示す番組登録成否情報を、システム管理端末に応答する。
【0057】
メモリーサーバ状態取得部112は、定期的に、全てのメモリーサーバ30−1〜30−Nに対してメモリーサーバ状態情報の取得要求を行う。メモリーサーバ状態取得部112は、メモリーサーバ30−1〜30−Nからメモリーサーバ状態情報を取得すると、そのメモリーサーバ状態情報を蓄積配信管理リスト20に登録する。
【0058】
メモリーサーバ選択部113は、蓄積配信管理リスト20を参照して、番組配信を行うメモリーサーバ30を選択するものである。
【0059】
ここで、メモリーサーバの選択方法は、蓄積配信管理リスト20に登録されているメモリーサーバ30−1〜30−Nのメモリーサーバ状態情報に基づいて、メモリーサーバ選択部113が判断することができれば、種々の方法を適用することができる。
【0060】
例えば、メモリーサーバ選択部113が、メモリー31の使用状況(使用予定メモリー容量、現在蓄積容量)に基づいて、番組を蓄積するのに十分な容量を持ったメモリーサーバ30のリストを作成する。そして、メモリーサーバ選択部113は、そのリストに基づいて、メモリー31の配信数が最小であるメモリーサーバ30を選択する方法を適用することができる。なお、番組を蓄積するのに十分な容量とは、番組データの蓄積に必要な蓄積量よりも、メモリー空き容量が上回っていることをいう。
【0061】
蓄積配信開始要求部114は、メモリーサーバ選択部113はが選択したメモリーサーバ30に対して、番組番号、当該番組の開始時間、終了時間、視聴期限を含む蓄積配信開始要求を行うものである。
【0062】
番組配信メモリーサーバ情報応答部115は、ディスパッチャー50から番組配信メモリーサーバ情報の取得要求を受けると、その要求された番組について、メモリーサーバ選択部113が選択したメモリーサーバ30のメモリーサーバ番号(例えばアドレス情報)をディスパッチャー50に応答するものである。
【0063】
通信部12は、ネットワークを介して通信処理を行う処理部又は装置である。通信部12は、ネットワークを介して、システム管理端末(図示しない)、メモリーサーバ30−1〜30−N、ディスパッチャー50と情報の授受を行う。
【0064】
(A−2)第1の実施形態の動作
次に、第1の実施形態のスタートオーバ型の配信システム1における処理の動作について、図面を参照しながら説明する。
【0065】
第1の実施形態の配信システム1は、放送番組蓄積機能と蓄積番組配信機能とを有する。
【0066】
放送番組蓄積機能は、システム管理者端末がメモリーサーバマネジャ10に対して要求する機能である。メモリーサーバマネジャ10は、システム管理者端末により指定された番組の蓄積を開始する。
【0067】
蓄積番組配信機能は、メモリーサーバマネジャ10が、クライアント40の要求を受けたディスパッチャー50を通して、番組配信するメモリーサーバ30を割り当てる。そして、その割り当てられたメモリーサーバ30がクライアント40に対して蓄積番組を配信する機能である。
【0068】
(A−2−1)放送番組蓄積機能
図6は、第1の実施形態の配信システム1における放送番組蓄積機能の処理を説明するシーケンス図である。
【0069】
図6において、システム管理者端末60は、メモリーサーバマネジャ10に対して番組蓄積配信要求を行う(S101)。このとき、システム管理者端末は、番組番号、番組の放送開始時間、終了時間、視聴期限を含む情報をメモリーサーバマネジャ10に与える。
【0070】
メモリーサーバマネジャ10は、システム管理者端末60から受信した番組情報を、蓄積配信管理リスト20に登録する(S102)。また、番組情報の登録が成功すると、メモリーサーバマネジャ10は、システム管理者端末60に対して、番組蓄積配信要求に対する応答を行う(S103)。
【0071】
メモリーサーバマネジャ10は、蓄積配信管理リスト20に登録される各番組の放送開始時間を監視する。そして、番組の放送開始時間が近づくと(S104)、メモリーサーバマネジャ10は、全てのメモリーサーバ30−1〜30−Nに対して、メモリーサーバ状態取得要求を行う(S105)。
【0072】
メモリーサーバ30−1〜30−Nは、メモリーサーバマネジャ10からメモリーサーバ状態取得要求を受けると、自身のメモリー31及びHDD32の蓄積状態等、例えば、現在のメモリー31及びHDD32がデータ蓄積中であるか又は蓄積完了しているか、配信方式の状態、メモリー31及びHDD32上で現在配信している番組の配信数、メモリー31及びHDD32の使用予定メモリー容量、現在の蓄積容量等を監視する。
【0073】
そして、メモリーサーバ30−1〜30−Nは、上記監視した情報と自身のメモリーサーバ番号とを含む情報をメモリーサーバマネジャ10に応答する(S106)。
【0074】
なお、図6では、全てのメモリーサーバ30−1〜30−Nに対するメモリーサーバ状態取得要求及び応答を1回のみしか示していないが、メモリーサーバマネジャ10は、定期的に行うものとする。
【0075】
メモリーサーバマネジャ10は、各メモリーサーバ30−1〜30−Nからメモリーサーバ状態情報を取得すると、各メモリーサーバ30−1〜30−Nのメモリーサーバ状態情報を、蓄積配信管理リスト20に記憶・更新する。
【0076】
メモリーサーバマネジャ10は、蓄積配信管理リスト20の各メモリーサーバ30−1〜30−Nのメモリーサーバ状態情報に基づいて、番組配信を行うメモリーサーバ30を選択する(S107)。
【0077】
ここで、メモリーサーバ30の選択方法の概念について、図7を参照しながら説明する。
【0078】
メモリーサーバマネジャ10は、蓄積配信管理リスト20のメモリーサーバ状態情報に基づいて選択するが、図7では、説明便宜のために、メモリーサーバ30のメモリー1の状態を図示して説明する。図7では、4台のメモリーサーバ30−1〜30−4のメモリーサーバ状態を例示する。
【0079】
図7において、各メモリーサーバ30−1〜30−4の有するメモリー31において、斜線部分はメモリーの空き容量を示す。メモリーサーバマネジャ10は、システム管理者端末60からの番組蓄積配信要求に伴い、当該番組のデータ蓄積に必要な容量を取得する。
【0080】
メモリーサーバマネジャ10は、各メモリーサーバ30−1〜30−4のメモリーサーバ状態情報から、メモリー31の空き容量を判断する。そして、空き容量が十分にあるメモリーサーバ30をリスト化する。図7の場合、メモリーサーバ30−2及び30−3がメモリー31の空き容量が十分であるとする。
【0081】
メモリーサーバマネジャ10は、メモリー31の空き容量が十分なものの中から、配信数が最小のメモリーサーバ30を、当該番組を配信するメモリーサーバとして選択する。図7の場合、メモリーサーバ30−2の配信数が最小であるので、メモリーサーバ30−2を番組配信用のサーバとして選択する。なお、メモリーサーバ30の配信数とは、メモリー31上にある番組の配信中のストリームの数の総和とすることができる。
【0082】
上記のようにして、蓄積番組配信用のサーバを選択すると、メモリーサーバマネジャ10は、当該選択したメモリーサーバ30に対して、蓄積配信開始要求を行う(S108)。このとき、メモリーサーバマネジャ10は、番組番号、番組放送開始時間、終了時間、視聴期限を含む情報を、選択したメモリーサーバ30に与える。
【0083】
これを受けて、メモリーサーバ30は、蓄積配信開始要求に係る番組のデータを蓄積するメモリー31及びHDD32の容量の割り当てを行う。蓄積する番組データの容量だけ、メモリー31及びHDD32に確保しておく。
【0084】
メモリーサーバ30は、番組放送開始すると、受信した番組データを受信し、その受信した番組データをメモリー31及びHDD32に蓄積する。その後、蓄積配信開始処理が行われると(S109)、メモリーサーバ30は、メモリーサーバマネジャ10に対して蓄積配信開始要求の応答を行う(S110)。このとき、メモリーサーバ30は、配信開始に伴い、自身のメモリーサーバ状態をメモリーサーバマネジャ10に与えるようにしてもよい。
【0085】
メモリーサーバマネジャ10は、配信処理を開始したメモリーサーバ30からの蓄積配信開始要求応答を受け取ると、受信したメモリーサーバ状態情報に基づいて、蓄積配信管理リスト20の内容を更新する(S111)。
【0086】
(A−2−2)蓄積番組配信機能
図8は、第1の実施形態の配信システム1における蓄積番組配信機能の処理を説明するシーケンス図である。蓄積番組の配信は、番組終了時までの間に、クライアント40からの配信要求があるときに行われる。
【0087】
図8において、クライアント40は、ディスパッチャー50に対して、番組の番組番号を引数としたメモリーサーバ割り当て要求を行う(S201)。つまり、クライアント40は、利用者が視聴する番組の番組番号を指定して、メモリーサーバ割り当て要求をディスパッチャー50に行う。
【0088】
ディスパッチャー50は、クライアント40から指定された番組番号の番組が、どのメモリーサーバ30から配信されているかの情報を得るために、メモリーサーバマネジャ10に対して、メモリーサーバ情報取得要求を行う(S202)。
【0089】
メモリーサーバマネジャ10は、ディスパッチャー50からメモリーサーバ割り当て要求を受け取ると、蓄積配信管理リスト20を参照して、当該番組番号について、配信可能なメモリーサーバ30を選択する(S203)。
【0090】
このメモリーサーバ30の選択は、図7を用いて説明した方法と同様の方法を適用することができる。つまり、十分なメモリー容量をもつメモリーサーバについてリスト化し、そのリストから配信数が最小のメモリーサーバ300を選択する。
【0091】
このように、メモリーサーバ割り当て要求の受信のたびに、上記リストを用いて、番組を配信するメモリーサーバ30を選択することで、当該要求のときに、配信数の少ないメモリーサーバ30を選択することができる。その結果、メモリーサーバ30の配信に係る負荷を分散することができる。
【0092】
メモリーサーバマネジャ10は、番組配信するメモリーサーバ30を選択すると、そのメモリーサーバ30のメモリーサーバ番号(例えばアドレス情報)を含む情報を、蓄積配信メモリーサーバ情報取得要求に対する応答としてディスパッチャー50に返信する(S204)。
【0093】
ディスパッチャー50は、指定された番組番号の番組を配信するメモリーサーバ30のアドレス情報を、メモリーサーバ割り当て要求の応答としてクライアント40に返信する(S205)。
【0094】
クライアント40が番組配信するメモリーサーバ30のアドレス情報を取得すると、クライアント40は、そのアドレス情報を用いて、メモリーサーバ30に対して、番組配信を要求する(S206)。
【0095】
メモリーサーバ30は、クライアント40から番組番号についての配信要求を受けると、当該番組番号の番組をクライアント40に配信する(S207)。
【0096】
(A−2−3)配信方式の切り替え処理
図9は、第1の実施形態のメモリーサーバ30における配信方式の切り替え処理を説明する説明図である。
【0097】
図9(A)は、番組開始時のデータ蓄積を説明する図である。番組の放送が開始すると、メモリーサーバ30は、受信した番組データをメモリー31及びHDD32の両方に蓄積する。番組の配信は、メモリー31に蓄積されたデータを用いる。つまり、番組放送開始時の配信方式は、メモリー配信とする。
【0098】
その後、メモリーサーバマネジャ10からの定期的なメモリーサーバ状態取得要求の受信に伴い、メモリーサーバ30は、自身の配信状況を定期的に監視する。
【0099】
そして、メモリー31上の配信数が閾値αを下回る番組については、メモリー31への蓄積をやめ、当該メモリー31に蓄積されたデータを削除する。さらに、番組の配信は、図9(B)に示すように、HDD配信に切り替える。このとき、メモリー31は、次の番組のデータを蓄積する。このように、メモリー31に次の番組データを蓄積させるようにすることで、配信する番組数が多いスタートオーバ型の蓄積配信システムに対応させることができる。
【0100】
また、視聴期限になると、メモリーサーバ30は、メモリー31及びHDD32の両方に蓄積されている当該番組のデータを削除する。
【0101】
(A−3)第1の実施形態の効果
以上のように、第1の実施形態によれば、番組の配信数が番組の終了と共に減少すると、メモリー配信からHDD配信に切り替え、新たな番組蓄積用に当該メモリーを開放する。これにより、配信数の少ない番組がメモリーを占有する事無く、後続の大きな配信量を必要とする番組が開放されたメモリー領域を使用できる。そのため、メモリーサーバの配信効率を高める事ができる。
【0102】
また、第1の実施形態によれば、番組の蓄積配信用のメモリーサーバとして、番組を蓄積できるだけの空き容量がメモリーにあり、メモリー配信数の最も小さいメモリーサーバを選択する。そのため、メモリーサーバの配信効率を可能な限り上げる事ができる。
【0103】
(B)第2の実施形態
次に、本発明の配信システム、配信サーバ管理装置、配信サーバ管理プログラム、配信サーバ及び配信プログラムの第2の実施形態について、図面を参照しながら説明する。
【0104】
第2の実施形態も、スタートオーバ型の蓄積配信システムに本発明を適用する場合の実施形態である。
【0105】
第1の実施形態は、メモリーサーバの選択方法について、番組データを蓄積する十分なメモリー容量を持っているものをリスト化する場合を例示した。しかし、場合によっては、十分な容量を持っているメモリーサーバがない場合もある。そこで、第2の実施形態では、このような場合にどうやって配信開始を行うかの方法について説明する。
【0106】
(B−1)第2の実施形態の構成及び動作
第2の実施形態の構成は、図1、図4及び図5に例示した第1の実施形態と同じであるから、ここでも図1、図4及び図5を用いて説明する。また、第2の実施形態の動作は、基本的には、図6及び図8に例示する第1の実施形態と同じである。
【0107】
図10は、メモリーサーバマネジャ10が番組配信を行うメモリーサーバ30を選択する方法を説明するフローチャートである。
【0108】
なお、図10は、メモリーに十分な空き容量なく、第1の実施形態で説明したメモリーサーバ割り当てが失敗した場合の処理である。
【0109】
(a)S301について
メモリーサーバマネジャ10において、メモリーサーバ選択部113は、各メモリーサーバ30のメモリー空き容量推移表を作成する(S301)。
【0110】
メモリーサーバ選択部113は、各メモリーサーバ30−1〜30−Nから取得したメモリーサーバ状態情報を、蓄積配信管理リスト20から抽出し、そのメモリーサーバ状態情報に基づいて、各メモリーサーバ30−1〜30−Nについてのメモリー空き容量推移表を生成する。
【0111】
図11は、メモリー空き容量推移表の構成例を示す構成図である。メモリー空き容量推移表とは、メモリー配信中の番組の配信数、番組終了時刻、番組視聴期限等に基づいて、メモリー配信からHDD配信への切り替え時期を予測するために、切り替え時期とメモリー空き容量(メモリー31を開放した分を累積した値)とを対応付けた表である。なお、図11(B)は、C言語の構造体で、図11(A)の表を表した場合を示す。
【0112】
まず、メモリーサーバ選択部113は、上記メモリー空き容量推移表を生成するために、メモリー配信中の各番組の配信数が閾値αに達する時間を推定する。
【0113】
ここでは、未だ放送が終了していない番組の配信数が閾値αに達する時間を、以下のようにして求める。
【0114】
番組の終了後、当該番組の配信数は、視聴期限まで線形に減少すると仮定する。
【0115】
時刻tにおける配信数は、番組終了時の配信数(ここでは番組終了時間まで推移表作成時の配信数を維持するものと仮定する)a、番組終了時刻b、番組視聴期限cとすると、次のようになる。
【数1】

【0116】
よって、配信数が閾値αとなる時間は、式(2)のようになる。
【数2】

【0117】
また、終了時間が過ぎている番組に関しても同じく視聴期限まで線形に減少すると仮定する。
【0118】
時刻tにおける配信数は、メモリー空き容量推移表作成時の配信数a、当該推移表作成時の時刻b、番組視聴期限cとすると、次のようになる。
【数3】

【0119】
よって、配信数が閾値αとなる時間は、式(4)のようになる。
【数4】

【0120】
メモリーサーバ選択部113は、上記で求めた配信数が閾値αとなる時間(以後、配信方法切り替え時間という)を元に、メモリー空き容量推移表を作成する.
(1)メモリーサーバ選択部113は、メモリー配信中の全ての番組に対し配信方法切り替え時間を計算し、配信方法切り替え時間と番組に割り当てられたメモリー容量とが対となるリストを生成する.
(2)メモリーサーバ選択部113は、(1)で生成したリストを時間の昇順に整列させる.
(3)メモリーサーバ選択部113は、配信方法切り替え時間が同じ場合、それらの対となっているメモリー容量を1つに統合(使用メモリー量を足し合わせる)する.
(4)使用メモリー容量を累積する。
【0121】
(b)S302について
次に、メモリーサーバ選択部113は、メモリー空き容量推移表の各時点での空き容量が番組の予想蓄積量を上回るメモリーサーバのリストを作成する(S302)。
【0122】
すなわち、メモリーサーバ選択部113は、メモリー空き容量推移表と番組蓄積によるメモリーの消費量の推移を比較し、メモリー空き容量の推移がメモリーの消費量の推移を吸収しきれるかを確認する。
【0123】
図12は、推定したメモリー空き容量推移と、番組の蓄積に必要な蓄積量との関係を説明する説明図である。図12において、太い実線は、番組蓄積に必要な蓄積の累積量を示す。また、細い実線及び点線は、推定したメモリー空き容量の推移を示す。太い実線に示す蓄積に必要な蓄積量の推移は、蓄積当初から時間経過に伴い、その累積量が増えていることがわかる。
【0124】
図12において、細い実線で示すような空き容量を持つ場合、常に、蓄積に必要な蓄積量(太い実線)を上回っている。従って、この場合、パケット蓄積量をカバーすることができている。すなわち、蓄積配信開始時に、メモリーの空き容量が不十分でも、この場合、メモリーの空き容量が太い実線を上回っているので問題はない。
【0125】
また、点線で示すような空き容量を持つ場合、メモリー空き容量が蓄積に必要な蓄積量を上回っているが、途中からメモリー容量が不足している。そのため、途中からHDD配信を行う必要がある。HDD配信数が十分に確保できないと、配信の一部を中断しなければならない。
【0126】
メモリーサーバ選択部113は、メモリー空き容量の推移が、番組データを蓄積する蓄積量の推移を吸収できるメモリーサーバ30のリストを作成するために、次式の条件を満たすか否かの判断を行う。
【数5】

【0127】
メモリーサーバ選択部113は、式(5)の条件を満たすメモリーサーバ30をリス化する。
【0128】
(c)S303について
メモリーサーバ選択部113は、上記リスト化を作成し、リストが空でない場合、すなわち、式(5)の条件を満たすメモリーサーバ30がある場合、S304に移行する。
【0129】
一方、リストが空である場合、すなわち式(5)の条件を満たすメモリーサーバ30がない場合、S305に移行する。
【0130】
(d)S304について
メモリーサーバ選択部113は、式(5)の条件を満たすメモリーサーバ30のリストが生成されると、そのリストにあるメモリーサーバ30の中から、メモリー配信数が最小のものを選択する。
【0131】
(e)S305について
式(5)の条件を満たすメモリーサーバ30のリストが作成できない場合である。すなわち、メモリー31に空き容量が見込まれない場合である。この場合、メモリーサーバ選択部113は、HDD配信数が最小であるメモリーサーバ30を選択する。この選択されたメモリーサーバ30は、HDD配信により番組配信を開始する。
【0132】
上述した方法は、メモリーサーバマネジャ10が、番組配信するメモリーサーバ30の選択方法である。各メモリーサーバ30−1〜30−Nは、メモリーサーバ状態取得要求を受信すると、上記条件の計算に必要な情報を、メモリーサーバマネジャ10に応答しなければならない。
【0133】
図10のS305で、メモリーサーバマネジャ10により選択されたメモリーサーバ30は、メモリー容量が十分でないため、メモリー配信からHDD配信に切り替えて番組を配信する。
【0134】
当該メモリーサーバ30は、メモリー容量が不十分であり、番組データを蓄積するのに必要な容量がない。容量が不十分のまま配信を開始した番組をメモリー31に蓄積してメモリー配信できるようにするために、メモリー31の領域において、当該番組のデータを蓄積するための予約を行う。
【0135】
これは、メモリー31が空き領域になると、後続する新しい別の番組データが蓄積されるのが通常である。しかし、この後続の番組ではなく、当初容量不十分で配信開始した番組をメモリー31に蓄積するため、メモリー31に蓄積する番組の予約が必要となる。そこで、メモリーサーバ30は、メモリー容量が不足し、メモリー配信からHDD配信に切り替わったとき、次のようにして、メモリー31のメモリー領域の統合を行い、その統合した領域に、容量が不十分のまま配信を開始した番組を予約する。
【0136】
図13は、メモリー31のメモリー領域の統合を説明する説明図である。図13(A)において、メモリー31の空き領域に、番組蓄積に必要な量の一部を割り当てる。このとき、メモリー31は、既に蓄積されている蓄積データをメモリー配信している。
【0137】
図13(A)において、メモリー31から蓄積データがメモリー配信されると、図13(B)に示すように、そのメモリー配信された後の領域(空き領域)と、番組蓄積に割り当てた一部の領域とを統合する。また、そのメモリー配信された領域については、HDD配信される。
【0138】
また、図13(B)において、さらにメモリー31から蓄積データがメモリー配信されると、図13(C)に示すように、そのメモリー配信された後の領域がさらに統合される。また、そのメモリー配信された領域については、HDD配信される。
【0139】
上記のようなメモリー領域の統合を行うことで、番組の蓄積に必要な容量の領域を確保でき、容量が不十分のまま配信を開始した番組の蓄積にメモリー31を使用することができる。
【0140】
また、容量が不十分のまま配信を開始した番組をメモリー31に蓄積する予約方法は、特に限定されることなく、種々の方法を広く適用することができる。例えば、蓄積配信の割り当てのとき、将来使用するメモリー31に予約フラグを付けておき、後続の番組が使用できないようにする方法を適用することができる。具体的には、例えば、蓄積配信管理リスト20に、当該番組を次の項目として追加することで実現できる。
【0141】
(B−2)第2の実施形態の効果
以上のように、第2の実施形態によれば、第1の実施形態の効果に加えて、メモリーサーバマネジャが、配信中の番組について、メモリー配信からHDD配信に切り替わる時間を予測する事で、十分な空き容量がなくても、蓄積配信を開始する事が可能となる。
【0142】
(C)第3の実施形態
次に、本発明の配信システム、配信サーバ管理装置、配信サーバ管理プログラム、配信サーバ及び配信プログラムの第3の実施形態について、図面を参照しながら説明する。
【0143】
第3の実施形態も、第1の実施形態と同様に、スタートオーバ型の蓄積配信システムに本発明を適用する場合の実施形態である。
【0144】
第1の実施形態では、一例として、番組配信するメモリーサーバを1台選択する場合を説明した。しかし、1台のメモリーサーバだけでは必要な配信数を確保できない場合がある。そこで、第3の実施形態では、複数台のメモリーサーバが蓄積配信を行う場合を説明する。
【0145】
(C−1)第3の実施形態の構成及び動作
第3の実施形態の構成は、図1、図4及び図5に例示した第1の実施形態と同じであるから、ここでも図1、図4及び図5を用いて説明する。また、第3の実施形態の動作は、基本的には、図6及び図8に例示する第1の実施形態と同じである。
【0146】
第3の実施形態が、第1及び第2の実施形態と異なる点は、メモリーサーバマネジャ10における、メモリーサーバの選択処理と、配信メモリーサーバの割り当て処理(クライアント40がサーバ割り当て要求を出したときの処理)である。
【0147】
メモリーサーバ30の選択処理については、メモリーサーバ選択部113が、目的の配信数に達するまで、メモリーサーバ30を割り当てる。
【0148】
図14は、第3の実施形態の配信システム1における放送番組蓄積機能の処理を説明するシーケンス図である。
【0149】
まず、システム管理者端末60は、メモリーサーバマネジャ10に番組蓄積配信要求を行う(S401)。このとき、システム管理者端末60は、必要配信数を指定し、その必要配信数をメモリーサーバマネジャ10に与える。
【0150】
メモリーサーバマネジャ10は、配信番組の番組情報を蓄積配信管理リスト20に登録し(S402)、番組蓄積要求に対する応答をシステム管理者端末60に返信する8S403)。
【0151】
メモリーサーバマネジャ10は、第1の実施形態と同様にして、全てのメモリーサーバ30−1〜30−Nに対してメモリーサーバ状態取得要求を行い(S404)、各メモリーサーバ30−1〜30−Nは、自身のメモリー状態等をメモリーサーバ状態取得要求応答としてメモリーサーバマネジャ10に返信する(S405)。
【0152】
メモリーサーバマネジャ10では、メモリーサーバ選択部113が、システム管理者端末10からの必要配信数に達するまで、メモリーサーバ30を選択する(S406)。
【0153】
複数台のメモリーサーバ30を選択する方法については、種々の方法を広く適用することができる。例えば、次に示すような方法を適用することができる。
【0154】
例えば、必要配信数xとする。まず、第1及び第2の実施形態と同様に、メモリーサーバ選択部113は、リストを作成し、1台のメモリーサーバ30を選択する。このとき、メモリーサーバ選択部113は、選択したメモリーサーバ30が割り当て可能な配信数を、蓄積配信管理リスト20から取得する。このメモリーサーバ選択部113が配信可能な配信数をyとする。
【0155】
そして、メモリーサーバ選択部113は、z=x−yを行い、zが0になるまで、リストからメモリーサーバ30の選択を繰り返し行う。なお、z<0となる場合もz=0とする。
【0156】
その後、S407〜S413では、メモリーサーバマネジャ10は、選択した全てのメモリーサーバ30に対して蓄積配信開始要求を行う。また、各メモリーサーバ30は、蓄積配信開始処理を行い、蓄積配信開始要求の応答をメモリーサーバマネジャ10に返信する。メモリーサーバマネジャ10は、蓄積配信管理リスト20の更新を行う。
【0157】
なお、図14では図示しないが、メモリーサーバマネジャ10は、ディスパッチャー50から蓄積配信メモリーサーバ情報取得要求を受信した場合、指定された番組にについて、蓄積配信管理リストにある複数のサーバから配信数の最も少ないサーバを1つ選択する。
【0158】
(C−2)第3の実施形態の効果
以上のように、第3の実施形態によれば、第1及び第2の実施形態の効果に加えて、第1及び第2の実施形態では必要な配信数に満たない可能性があったが、蓄積配信メモリーサーバを複数指定する事で、指定された配信数を満たす事が可能となる。
【0159】
(D)第4の実施形態
次に、本発明の配信システム、配信サーバ管理装置、配信サーバ管理プログラム、配信サーバ及び配信プログラムの第4の実施形態について図面を参照しながら説明する。
【0160】
第4の実施形態も、第1の実施形態と同様に、スタートオーバ型の蓄積配信システムに本発明を適用する場合の実施形態を説明する。
【0161】
番組開始時間にどのメモリーサーバのメモリーにも空きスペースが無ければ、少ない配信数でHDD配信を始めるしかない。この様な場合、予め番組の蓄積配信を予約しておけば、直前になってメモリー配信するサーバがないと言う事にはならない。
【0162】
そこで、第4の実施形態は、番組情報の登録時に、メモリーサーバの仮割り当て処理を行う実施形態を説明する。
【0163】
(D−1)第4の実施形態の構成及び動作
第4の実施形態の構成は、図1、図4及び図5に例示した第1の実施形態と同じであるから、ここでも図1、図4及び図5を用いて説明する。また、第4の実施形態の動作は、基本的には、図6及び図8に例示する第1の実施形態と同じである。
【0164】
第4の実施形態が、第1〜第3の実施形態と異なる点は、メモリーサーバマネジャ10における、番組情報登録部111の処理である。
【0165】
第4の実施形態の番組情報登録部111は、システム管理者端末60から番組蓄積配信要求を受信した場合に、次のような処理を行い、番組を配信するメモリーサーバの仮割り当てを行う。
【0166】
まず、メモリーサーバマネジャ10は、全てのメモリーサーバ30−1〜30−Nから目メモリーサーバ状態情報を取得し、蓄積配信管理リスト20に記憶・更新する。
【0167】
次に、メモリーサーバマネジャ10は、各メモリーサーバ30−1〜30−Nに対し、メモリー空き容量推移表を作成する。このメモリー空き容量推移表は、第2の実施形態で説明した方法で作成する。また、メモリー空き容量推移表を作成する際、配信中の番組のみについてのメモリーサーバ30のメモリー空き容量を考慮する。
【0168】
メモリーサーバマネジャ0は、メモリー空き容量推移表の修正を行う。
【0169】
メモリー空き容量推移表の修正の仕方は、種々の方法を適用することができるが、この実施形態では次の方法を適用する。
【0170】
(1)番組蓄積配信要求された番組の開始時間から視聴期限までの間に、視聴期限が来る予定の番組の使用メモリー容量をfst_table[i].free_space(fst_table[i].time<視聴期限)から差し引く
(2)番組蓄積配信要求された番組の開始時間から視聴期限までの間に、開始予定の番組の予定使用メモリー容量をfst_table[i].free_space(fst_table[i].time≧視聴期限)から差し引く。
【0171】
そして、番組蓄積配信開始要求された番組のメモリー消費量の推移を上で修正したメモリー空き容量推移表と比較し、番組蓄積配信に必要なメモリー31をカバーできるメモリーサーバ30のリストを作成する。このリストの作成方法は、第2の実施形態の図10のS302の処理と同様の方法を適用することができる。
【0172】
番組蓄積配信要求された番組の番組開始時間から視聴期限までの間に、同時配信する番組の数が一番少ないメモリーサーバ30を選択し、この選択したメモリーサーバ30を仮の蓄積配信メモリーサーバ30とする。
【0173】
上記の動作は、システム管理者端末60から番組蓄積配信要求を受信し、蓄積配信管理リスト20に配信番組の登録を行う際に、メモリーサーバマネジャ10が、番組の蓄積配信を行うメモリーサーバ30の仮割り当てを行う。
【0174】
また、番組開始直前に、メモリーサーバマネジャ10は、メモリーサーバ30の選択を行う(これを本割り当てという)が、その本割り当ての方法は、仮割り当て方法と同じとすることができる。
【0175】
つまり、仮割り当てで予約したメモリーサーバ30を考慮し、その選択時の新しいメモリーサーバ状態情報を用いて、メモリー31の容量が十分で、配信数が最小のメモリーサーバ30を選択するようにしてもよい。
【0176】
(D−2)第4の実施形態の効果
以上のように、第4の実施形態によれば、番組開始時間直前のメモリーサーバの選択(本割り当て)の前に、番組登録の段階で仮割り当てを行う事でメモリーサーバのメモリーの確保を行う事ができる。
【0177】
(E)他の実施形態
第1〜第4の実施形態では、スタートオーバ型の放送番組蓄積配信システムに本発明を適用する場合を例示したが、スタートオーバ型の放送番組蓄積配信システム以外の配信システムにも広く適用することができる。
【0178】
第1〜第4の実施形態のメモリーサーバ及びメモリーサーバマネジャの各種機能は、いわゆるソフトウェア処理により実現することができる。例えば、メモリーサーバ及びメモリーサーバマネジャのハードウェア構成は、CPU、RAM、ROM、EPROM等からなり、CPUがROMに格納される処理プログラムを読み出し、CPUが処理プログラムを実行することで、各種機能は実現される。
【符号の説明】
【0179】
1…配信システム、20…蓄積配信管理リスト、
10…メモリーサーバマネジャ、11…制御部、111…番組情報登録部、
112…メモリーサーバ状態取得部、113…メモリーサーバ選択部、
114…蓄積配信要求部、115…番組配信メモリーサーバ情報応答部、
12…通信部、
30−1〜30−N…メモリーサーバ、31…メモリー、32…HDD、
33…制御部、331…番組蓄積配信処理部、332…状態管理部、
333…配信方式切替制御部、34…通信部、
40…クライアント、50…ディスパッチャー。

【特許請求の範囲】
【請求項1】
クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、上記クライアントからの配信要求を受けると、上記第1蓄積手段及び上記第2蓄積手段のいずれかに蓄積された上記コンテンツを配信する複数の配信サーバと、
上記複数の配信サーバのうち、上記コンテンツの配信を行う上記配信サーバを選択し、その選択した上記配信サーバのアドレス情報を上記クライアントに通知する配信サーバ管理装置と
を備え、
上記配信サーバ管理装置が、
上記各配信サーバにおける上記第1蓄積手段及び上記第2蓄積手段の蓄積状態及び配信状態を示す蓄積配信状態情報を、全ての上記配信サーバから定期的に取得する蓄積配信状態情報取得手段と、
外部から上記コンテンツに関するコンテンツ情報を取得するコンテンツ情報取得手段と、
上記複数の配信サーバの上記蓄積配信状態情報及び上記コンテンツ情報を記憶する情報記憶手段と、
上記複数の配信サーバの上記蓄積配信状態情報に基づいて、上記コンテンツ情報に含まれる当該コンテンツの蓄積必要量を上回る容量を有するものであって、配信数が最小の上記第1蓄積手段を有する上記配信サーバを、当該コンテンツを配信するものとして選択するサーバ選択手段と、
上記サーバ選択手段により選択された上記配信サーバに対して、上記コンテンツに関する上記コンテンツ情報を与え、上記コンテンツの蓄積配信を要求する蓄積配信要求手段と、
上記クライアントからの上記コンテンツの配信先の通知要求を受けると、上記サーバ選択手段により選択された上記配信サーバのアドレス情報を、上記クライアントに通知するサーバ情報通知手段と
を有する
ことを特徴とする配信システム。
【請求項2】
上記サーバ選択手段が、上記コンテンツの蓄積必要量を上回る容量の上記第1蓄積手段を有する上記配信サーバがない場合、上記各配信サーバでの上記第1蓄積手段からの配信から上記第2蓄積手段からの配信に切り替わる時間を予測し、上記第1蓄積手段の空き容量の推移が上記コンテンツの蓄積量の推移を上回る上記配信サーバを選択するものであることを特徴とする請求項1に記載の配信システム。
【請求項3】
上記サーバ選択手段が、上記コンテンツの配信数が指定された場合、その配信数を満たすように、複数の配信サーバを選択するものであることを特徴とする請求項1又は2に記載の配信システム。
【請求項4】
上記コンテンツ情報を取得する際、上記各配信サーバの上記蓄積配信情報に基づいて、当該コンテンツ配信時の上記第1蓄積手段の容量を予測し、当該コンテンツの蓄積必要量を有する上記配信サーバを、事前割り当てする選択サーバ予約手段を備えることを特徴とする請求項1〜3のいずれかに記載の配信システム。
【請求項5】
クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、上記クライアントからの配信要求を受けると、上記第1蓄積手段及び上記第2蓄積手段のいずれかに蓄積された上記コンテンツを配信する複数の配信サーバのうち、上記コンテンツの配信を行う上記配信サーバを選択し、その選択した上記配信サーバのアドレス情報を上記クライアントに通知する配信サーバ管理装置において、
上記各配信サーバにおける上記第1蓄積手段及び上記第2蓄積手段の蓄積状態及び配信状態を示す蓄積配信状態情報を、全ての上記配信サーバから定期的に取得する蓄積配信状態情報取得手段と、
外部から上記コンテンツに関するコンテンツ情報を取得するコンテンツ情報取得手段と、
上記複数の配信サーバの上記蓄積配信状態情報及び上記コンテンツ情報を記憶する情報記憶手段と、
上記複数の配信サーバの上記蓄積配信状態情報に基づいて、上記コンテンツ情報に含まれる当該コンテンツの蓄積必要量を上回る容量を有するものであって、配信数が最小の上記第1蓄積手段を有する上記配信サーバを、当該コンテンツを配信するものとして選択するサーバ選択手段と、
上記サーバ選択手段により選択された上記配信サーバに対して、上記コンテンツに関する上記コンテンツ情報を与え、上記コンテンツの蓄積配信を要求する蓄積配信要求手段と、
上記クライアントからの上記コンテンツの配信先の通知要求を受けると、上記サーバ選択手段により選択された上記配信サーバのアドレス情報を、上記クライアントに通知するサーバ情報通知手段と
を備えることを特徴とする配信サーバ管理装置。
【請求項6】
クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、上記クライアントからの配信要求を受けると、上記第1蓄積手段及び上記第2蓄積手段のいずれかに蓄積された上記コンテンツを配信する複数の配信サーバのうち、上記コンテンツの配信を行う上記配信サーバを選択し、その選択した上記配信サーバのアドレス情報を上記クライアントに通知する配信サーバ管理プログラムにおいて、
コンピュータを、
上記各配信サーバにおける上記第1蓄積手段及び上記第2蓄積手段の蓄積状態及び配信状態を示す蓄積配信状態情報を、全ての上記配信サーバから定期的に取得する蓄積配信状態情報取得手段、
外部から上記コンテンツに関するコンテンツ情報を取得するコンテンツ情報取得手段、
上記複数の配信サーバの上記蓄積配信状態情報及び上記コンテンツ情報を記憶する情報記憶手段、
上記複数の配信サーバの上記蓄積配信状態情報に基づいて、上記コンテンツ情報に含まれる当該コンテンツの蓄積必要量を上回る容量を有するものであって、配信数が最小の上記第1蓄積手段を有する上記配信サーバを、当該コンテンツを配信するものとして選択するサーバ選択手段、
上記サーバ選択手段により選択された上記配信サーバに対して、上記コンテンツに関する上記コンテンツ情報を与え、上記コンテンツの蓄積配信を要求する蓄積配信要求手段、
上記クライアントからの上記コンテンツの配信先の通知要求を受けると、上記サーバ選択手段により選択された上記配信サーバのアドレス情報を、上記クライアントに通知するサーバ情報通知手段
として機能させる配信サーバ管理プログラム。
【請求項7】
クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、上記クライアントからの配信要求を受けると、上記第1蓄積手段及び上記第2蓄積手段のいずれかに蓄積された上記コンテンツを配信する配信サーバであって、
上記第1蓄積手段又は上記第2蓄積手段のいずれかに蓄積された上記コンテンツを配信することを制御する配信切替制御手段と、
配信サーバ管理装置からの要求を受けて、上記第1蓄積手段及び上記第2蓄積手段の蓄積状態及び配信状態を含む蓄積配信状態を監視し、その蓄積配信状態情報を上記配信サーバ管理装置に応答する状態管理手段と
を備えることを特徴とする配信サーバ。
【請求項8】
クライアントに配信するコンテンツを蓄積する第1蓄積手段及び第2蓄積手段を有し、上記クライアントからの配信要求を受けると、上記第1蓄積手段及び上記第2蓄積手段のいずれかに蓄積された上記コンテンツを配信する配信プログラムであって、
コンピュータを、
上記第1蓄積手段又は上記第2蓄積手段のいずれかに蓄積された上記コンテンツを配信することを制御する配信切替制御手段、
配信サーバ管理装置からの要求を受けて、上記第1蓄積手段及び上記第2蓄積手段の蓄積状態及び配信状態を含む蓄積配信状態を監視し、その蓄積配信状態情報を上記配信サーバ管理装置に応答する状態管理手段
として機能させることを特徴とする配信プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−70327(P2012−70327A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−215424(P2010−215424)
【出願日】平成22年9月27日(2010.9.27)
【出願人】(308033722)株式会社OKIネットワークス (165)
【Fターム(参考)】