(57)【要約】【課題】リソース使用情報値を上限リソース使用情報値に近づけることでリソースを最大限に利用してコンテンツを配信する。【解決手段】コンテンツ配信装置１０は、複数のファイルで構成されるコンテンツを通信装置３０に配信するに当たり、単位時間当たりの配信量を示す通信帯域をファイルに割り当てる配信制御部１１０と、通信装置３０からファイル要求信号を受信して、要求されたファイルを割り当てられた通信帯域で送信する送受信部１４０とを備え、配信制御部１１０は、ファイル送信負荷に係るリソース使用情報値に基づき、送受信部１４０による各ファイル送信時における前記リソース使用情報値それぞれを合計した合計リソース使用情報値が所定の上限リソース使用情報値を超える場合に、割り当てなおした後の合計リソース使用情報値が前記上限リソース使用情報値以下となるように、各々のファイルに対して割り当てられた通信帯域を狭くして割り当てなおす。【選択図】図２
2015089113.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置にコンテンツ配信を行うコンテンツ配信装置であって、
複数のファイルで構成されるコンテンツを配信するに当たり、単位時間当たりの配信量を示す通信帯域をファイルに割り当てる配信制御部と、
前記通信装置からファイル要求信号を受信して、要求されたファイルを割り当てられた通信帯域で送信する送受信部と、
を備え、
前記配信制御部は、
ファイル送信負荷に係るリソース使用情報値に基づき、
前記送受信部による各ファイル送信時における前記リソース使用情報値それぞれを合計した合計リソース使用情報値が、所定の上限リソース使用情報値を超える場合に、
割り当てなおした後の合計リソース使用情報値が、前記上限リソース使用情報値以下となるように、各々のファイルに対して割り当てられた通信帯域を狭くして割り当てなおす
ことを特徴とするコンテンツ配信装置。
【請求項２】
前記リソース使用情報値は、送信するファイルに割り当てられた通信帯域であり、
前記合計リソース使用情報値は、各ファイルに割り当てられた通信帯域の合計値であり、
前記上限リソース使用情報値は、利用可能な通信帯域の上限を示す所定値である
ことを特徴とする請求項１に記載されたコンテンツ配信装置。
【請求項３】
前記リソース使用情報値は、ファイル送信処理を実行するＣＰＵの負荷を示すＣＰＵ使用率であり、
前記合計リソース使用情報値は、各ファイルを送信することによる、ファイル送信処理を実行する前記ＣＰＵ使用率の合計値であり、
前記上限リソース使用情報値は、利用可能な前記ＣＰＵ使用率の上限を示す所定値である
ことを特徴とする請求項１に記載されたコンテンツ配信装置。
【請求項４】
前記ファイルは記憶部に記憶されており、
前記リソース使用情報値は、送信するファイルを前記記憶部から読み出す際にかかる負荷を示すディスクＩ／Ｏ状態値であり、
前記合計リソース使用情報値は、各ファイルを前記記憶部から読み出すことによる、前記ディスクＩ／Ｏ状態値の合計値であり、
前記上限リソース使用情報値は、利用可能な前記ディスクＩ／Ｏ状態値の上限を示す所定値である
ことを特徴とする請求項１に記載されたコンテンツ配信装置。
【請求項５】
前記ファイルは記憶部に記憶されており、
前記リソース使用情報値は、送信するファイルを前記記憶部から読み出す際にかかる負荷を示すディスクＩ／Ｏ状態値であり、
前記合計リソース使用情報値は、各ファイルを前記記憶部から読み出すことによる、前記ディスクＩ／Ｏ状態値の合計値であり、
前記上限リソース使用情報値は、利用可能な前記ディスクＩ／Ｏ状態値の上限を示す所定値であり、
前記配信制御部は、前記送受信部がファイルの書き込み要求を受信した場合に、
当該書込ファイルを前記記憶部に書き込む際にかかる負荷を示すディスクＩ／Ｏ状態値を前記上限リソース使用情報値から差分して得られる差分上限リソース使用情報値を、前記上限リソース使用情報値の代わりに用いる
ことを特徴とする請求項１に記載されたコンテンツ配信装置。
【請求項６】
前記配信制御部は、
前記合計リソース使用情報値が、前記上限リソース使用情報値を超える場合に、
前記各々のファイルに対して割り当てられた通信帯域を、所定値分狭くして割り当てなおし、
割り当てなおした後の合計リソース使用情報値が、前記上限リソース使用情報値以下となるまで、前記各々のファイルに対して割り当てられた通信帯域を、所定値分ずつ狭くして割り当てなおす
ことを特徴とする請求項３ないし請求項５のいずれか一項に記載されたコンテンツ配信装置。
【請求項７】
前記配信制御部は、
前記送受信部が、前記ファイル要求信号とは異なる別のファイル要求信号を受け付けたときに、
当該別のファイルを配信した場合のリソース使用情報値の合計である前記合計リソース使用情報値が、前記上限リソース使用情報値以下のとき、かつ、
前記狭くした通信帯域を元に戻した場合の現在のリソース使用情報値の合計である前記合計リソース使用情報値が前記上限リソース使用情報値以下のときに、
通信帯域を狭くした前記各々のファイルに対して割り当てられた通信帯域を元に戻す
ことを特徴とする請求項２に記載されたコンテンツ配信装置。
【請求項８】
バッファをさらに備え、
前記配信制御部は、
前記上限リソース使用情報値を超える場合に、割り当てていた通信帯域それぞれの情報を前記バッファに記憶させ、
前記割り当てなおすときに、前記狭くした通信帯域を、前記バッファに記憶された通信帯域の情報で割り当てなおす
ことを特徴とする請求項２に記載されたコンテンツ配信装置。
【請求項９】
前記配信制御部は、
前記送受信部により、１つのコンテンツの配信が終了した場合に、
現在のリソース使用情報値の合計である前記合計リソース使用情報値が前記上限リソース使用情報値以下のときに、
通信帯域を狭くした前記各々のファイルに対して割り当てられた通信帯域を元に戻す
ことを特徴とする請求項２ないし請求項５のいずれか一項に記載されたコンテンツ配信装置。
【請求項１０】
バッファをさらに備え、
前記配信制御部は、
前記上限リソース使用情報値を超える場合に、前記各々のファイルに対して割り当てられた通信帯域を所定値分狭くして割り当てなおし、この通信帯域を狭くした値を前記バッファに記憶させ、
前記送受信部により、１つのコンテンツの配信が終了した場合に、
現在のリソース使用情報値の合計である前記合計リソース使用情報値が前記上限リソース使用情報値以下のときに、
前記通信帯域を狭くした各ファイルに対して、前記バッファに記憶された値で割り当てなおす
ことを特徴とする請求項３ないし請求項５のいずれか一項に記載されたコンテンツ配信装置。
【請求項１１】
前記配信制御部は、
前記上限リソース使用情報値以下になるように、広く割り当てられた通信帯域を狭くして割り当てなおす
ことを特徴とする請求項１ないし請求項５のいずれか一項に記載されたコンテンツ配信装置。
【請求項１２】
前記コンテンツを記憶する記憶部を備え、
前記コンテンツは、ビットレート値に応じた複数のバリエーションのファイルで構成され、
前記配信制御部は、
前記送受信部が前記通信装置から前記ビットレート値のバリエーションのファイル要求信号を受け付けた場合に、
要求された前記ビットレート値のバリエーションのファイルを前記記憶部から取得し、当該ビットレート値に応じた通信帯域で、取得したファイルを送信したときの前記リソース使用情報値を算出する
ことを特徴とする請求項１ないし請求項５のいずれか一項に記載されたコンテンツ配信装置。
【請求項１３】
アダプティブストリーミングを用いて前記コンテンツ配信を行う請求項１ないし請求項５のいずれか一項に記載されたコンテンツ配信装置であって、
前記配信制御部は、
前記送受信部が前記通信装置からプレイリスト送信要求を受け付けた場合に、
当該プレイリストの最初のファイルを前記記憶部から取得し、当該ファイルを前記要求されたファイルとして扱う
ことを特徴とするコンテンツ配信装置。
【請求項１４】
複数のファイルで構成されるコンテンツに対して、自身の配信能力に基づき、単位時間あたりの配信量を示す通信帯域を、前記コンテンツのファイルに割り当て、複数の通信装置に前記通信帯域が割り当てられたファイルを送信するコンテンツ配信装置が実行するコンテンツ配信方法であって、
前記通信装置からファイル要求信号を受信する受信ステップと、
要求されたファイルに通信帯域を割り当てて配信した場合の、各ファイル送信時における前記リソース使用情報値それぞれを合計した合計リソース使用情報値が、所定の上限リソース使用情報値を超えるときに、割り当てなおした後の合計リソース使用情報値が、前記上限リソース使用情報値以下となるように各々のファイルに対して割り当てられた通信帯域を狭くして割り当てなおす配信制御ステップと、
前記要求されたファイルを、割り当てなおされた通信帯域で送信する送信ステップと
を含むことを特徴とするコンテンツ配信方法。
【請求項１５】
請求項１４に記載されたコンテンツ配信方法を前記コンテンツ配信装置に実行させることを特徴とするコンテンツ配信プログラム。
【請求項１６】
請求項１に記載されたコンテンツ配信装置にファイル要求信号を送信し、ファイルを受信することを特徴とする通信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ配信装置、コンテンツ配信方法、コンテンツ配信プログラム、およびコンテンツ配信装置と通信する通信端末に関し、特に、ＩＰネットワークにおけるアダプティブストリーミングを用いてコンテンツを配信する技術に関する。
【背景技術】
【０００２】
サーバがアダプティブストリーミングを用いて端末にコンテンツの配信を行う場合、サーバは、エンコーダによってデジタルデータ化された映像・音声信号を１０秒単位の映像データに分割して、小さな連続したファイル（例えば、MPEG-2 TS（Transport Stream）形式のＴＳファイル）を作成する。このとき、エンコーダは、デジタルデータ作成時に、複数のバリエーション（ビットレート値に応じたいくつかのバリエーション）でファイルを作成する。サーバは、エンコーダにより生成された複数のバリエーションのＴＳファイルのリストであるプレイリストを作成しておき、端末にＴＳファイルを配信する前に、端末にプレイリストを送信する。
端末は、ＴＳファイルを要求する場合、プレイリストを参照して、サーバとの間の帯域幅の状態に基づき複数のバリエーションから一つを指定して、そのバリエーションのＴＳファイルをサーバに要求する。
【０００３】
従来、高画質の映像コンテンツを提供するために、サーバは高ビットレート値のファイルを端末に配信することを前提としていた。そのため、サーバは、高ビットレート値のＴＳファイルを毎回配信すると仮定して通信帯域を割り当てて、利用可能な残り帯域幅（リソース）を仮定していた。この仮定した残り帯域幅から、端末からの新たなファイル配信要求に応じて、新たな高ビットレート値のＴＳファイルを配信するための通信帯域を割り当てられるか否かの配信許可判定を行っていた。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】HTTP Live Streamingの概要、18-19頁、2011年4月1日改訂版、アップルジャパン株式会社、［2013年8月12日Web検索］、インターネット［URL:https://developer.apple.com/jp/devcenter/ios/library/documentation/StreamingMediaGuide.pdf］
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、サーバがアダプティブストリーミングを用いて配信を行っているため、実際は、高ビットレート値のＴＳファイルだけが配信されているのではなく、それより低いビットレート値のＴＳファイルも配信されていた。そのため、実際の残り帯域幅は、仮定した残り帯域幅より広いことが多かった。
【０００６】
この実際の残り帯域幅は、サーバ（コンテンツ配信装置）の配信能力から得られる最大限で割り当てられる通信帯域（最大配信帯域；上限リソース使用情報値）から、サーバで利用されている（配信中の）通信帯域の合計である配信中総帯域（合計リソース使用情報値）を差分することで得られるものである。
【０００７】
すなわち、端末からの新たなファイル配信要求に対して、実際には十分に割り当てられる帯域幅があるにもかかわらず、従来の仮定した残り帯域幅を用いた配信許可判定を行った場合、「残り帯域幅（リソース）が不足しているため通信帯域を割り当てられない」と判定されてしまうことがあった。その結果、端末には、ファイルを配信できないことが通知された。
【０００８】
このように、高ビットレート値のコンテンツを端末に配信することを前提として、利用可能な残り帯域幅（リソース）を仮定するという従来の配信許可判定では、リソースに余裕があるにもかかわらず、高ビットレート値のコンテンツを配信することによりリソースが枯渇することを懸念して、ファイル配信が許可されない。そのため、従来のサーバ（コンテンツ配信装置）は、最大配信帯域（上限リソース使用情報値）を最大限に利用してコンテンツを配信できないという問題があった。
【０００９】
本発明は、以上のような問題を解決するためになされたものであり、アダプティブストリーミングを用いて配信する場合に、リソース使用情報値を上限リソース使用情報値に近づけることでリソースを最大限に利用してコンテンツを配信するコンテンツ配信装置、コンテンツ配信方法、コンテンツ配信プログラム、およびコンテンツ配信装置と通信する通信端末を提供することを課題とする。
【課題を解決するための手段】
【００１０】
前記課題を解決するために、本発明のコンテンツ配信装置は、複数の通信装置にコンテンツ配信を行うコンテンツ配信装置であって、複数のファイルで構成されるコンテンツを配信するに当たり、単位時間当たりの配信量を示す通信帯域をファイルに割り当てる配信制御部と、前記通信装置からファイル要求信号を受信して、要求されたファイルを割り当てられた通信帯域で送信する送受信部と、を備え、前記配信制御部は、ファイル送信負荷に係るリソース使用情報値（配信中帯域、ＣＰＵ使用率、ディスクＩ／Ｏ状態値）に基づき、前記送受信部による各ファイル送信時における前記リソース使用情報値それぞれを合計した合計リソース使用情報値が、所定の上限リソース使用情報値を超える場合に、割り当てなおした後の合計リソース使用情報値が、前記上限リソース使用情報値以下となるように、各々のファイルに対して割り当てられた通信帯域を狭くして割り当てなおすことを特徴とする。なお、（  ）内の文字、記号は例示である。
【発明の効果】
【００１１】
本発明によれば、合計リソース使用情報値が上限リソース使用情報値以下になるように、各々のファイルの通信帯域を狭くして割り当てることで、リソースを最大限に利用してコンテンツを配信できる。すなわち、最大配信帯域（上限リソース使用情報値）から配信中総帯域（合計リソース使用情報値）を差分した残り帯域幅をほぼ０にすることができ、最大配信帯域を最大限に利用してコンテンツを配信することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係るコンテンツ配信装置を含むコンテンツ配信システムのブロック図である。
【図２】本発明に係るコンテンツ配信装置の構成を示すブロック図である。
【図３】プレイリストの一例である。
【図４】本発明に係るコンテンツ配信装置のプレイリスト要求を受けた場合のプレイリスト送信処理のフローチャートである。
【図５】本発明に係るコンテンツ配信装置の配信要求を受けた場合のファイル配信処理のフローチャートである。
【図６】図５のステップＳ２０８で狭くした帯域を元に戻す帯域回復処理のフローチャートである。
【図７】本発明に係るコンテンツ配信装置が割り当てている配信中総帯域を示すタイムチャートである。
【図８】図７におけるＴ１〜Ｔ５の時点における端末それぞれにファイルを配信するために割り当てられる帯域の広さを示している。
【図９】本発明に係るコンテンツ配信装置の配信要求を受けた場合のファイル配信処理のフローチャートである。
【図１０】狭くした帯域を元に戻す帯域回復処理のフローチャートである。
【図１１】本発明に係るコンテンツ配信装置が割り当てている配信中総帯域を示すタイムチャートである。
【図１２】図１１におけるＴ１〜Ｔ５の時点における端末それぞれにファイルを配信するために割り当てられる帯域の広さを示している。
【図１３】本発明に係るコンテンツ配信装置の構成を示すブロック図である。
【図１４】本発明に係るコンテンツ配信装置のプレイリスト要求を受けた場合のプレイリスト送信処理のフローチャートである。
【図１５】本発明に係るコンテンツ配信装置の配信要求を受けた場合のファイル配信処理のフローチャートである。
【図１６】狭くした帯域を元に戻す帯域回復処理のフローチャートである。
【図１７】本発明に係るコンテンツ配信装置が割り当てている配信中総帯域を示すタイムチャートである。
【図１８】図１７におけるＴ１〜Ｔ５の時点における端末それぞれにファイルを配信するために割り当てられる帯域の広さを示している。
【図１９】本発明に係るコンテンツ配信装置の構成を示すブロック図である。
【図２０】本発明に係るコンテンツ配信装置のプレイリスト要求を受けた場合のプレイリスト送信処理のフローチャートである。
【図２１】本発明に係るコンテンツ配信装置の配信要求を受けた場合のファイル配信処理のフローチャートである。
【図２２】狭くした帯域を元に戻す帯域回復処理のフローチャートである。
【図２３】本発明に係るコンテンツ配信装置が割り当てている配信中総帯域を示すタイムチャートである。
【図２４】図２３におけるＴ１〜Ｔ５の時点における端末それぞれにファイルを配信するために割り当てられる帯域の広さを示している。
【図２５】本発明に係るコンテンツ配信装置を含むコンテンツ配信システムのブロック図である。
【図２６】本発明に係るコンテンツ配信装置の構成を示すブロック図である。
【図２７】本発明に係るコンテンツ配信装置の書込要求受信処理のフローチャートである。
【図２８】本発明に係るコンテンツ配信装置のファイル書込処理のフローチャートである。
【図２９】本発明に係るコンテンツ配信装置が割り当てている配信中総帯域を示すタイムチャートである。
【図３０】図２９におけるＴ１〜Ｔ６の時点における端末それぞれにファイルを配信するために割り当てられる帯域の広さを示している。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、本発明の実施の形態（以下、「本実施形態」と称する）につき詳細に説明する。なお、各図は、本発明について概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。また、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【００１４】
≪コンテンツ配信システム１≫
図１に示すように、コンテンツ配信システム１は、コンテンツ配信装置１０と、複数の端末３０（３０ａ、３０ｂ、３０ｃ、３０ｄ、・・・）とを備え、コンテンツ配信装置１０は、ネットワーク２０を介して端末３０それぞれと通信可能に接続される。
本実施形態のコンテンツ配信システム１において、コンテンツ配信装置１０は、各端末３０とアダプティブストリーミングを行う。
【００１５】
（アダプティブストリーミング）
ここで、本実施形態のコンテンツ配信システム１におけるアダプティブストリーミングを用いた映像配信の一例を説明する。
端末３０は、まず、コンテンツ配信装置１０からプレイリストＰＬを受信する。そして、端末３０は、プレイリストＰＬに列挙された複数のバリエーション（ビットレート値に応じたいくつかのバリエーション）で用意されたファイル（ＴＳファイル）から、端末３０とコンテンツ配信装置１０との間の通信速度に基づき最適なバリエーションのファイル（ファイルが記憶された場所を示すＵＲＩ（Uniform Resource Identifier））を選び、コンテンツ配信装置１０に配信要求する（ファイル要求信号送信）。これにより、コンテンツ配信装置１０から選択したバリエーションのファイルをダウンロードすることができる。
【００１６】
ここで、端末３０は、端末３０とコンテンツ配信装置１０との間の通信速度が比較的速い場合、高ビットレート値の高データ転送レートファイルＦＨ（例えば、高画質な映像ファイル）を配信要求する。一方、通信速度が比較的遅い場合は、低ビットレート値の低データ転送レートファイルＦＬ（例えば、低画質な映像ファイル）を配信要求する。
端末３０は、コンテンツ配信装置１０に配信要求したファイルのうち、一部または全てのファイルをダウンロードする。端末３０は、コンテンツ配信装置１０に配信要求したファイルにおいて第１の所定割合のファイルをダウンロードすると、端末３０は、ダウンロードしたファイルにおいて予め定められた再生順序に基づいて、ダウンロードしたファイルを端末３０が有するディスプレイに再生する。端末３０は、コンテンツ配信装置１０に配信要求したファイルにおいて第２の所定割合のファイルをダウンロードすると、次の処理に進む。
【００１７】
端末３０は、次の（１）〜（４）の処理について繰り返し実行して、コンテンツ配信装置１０に配信要求したファイルをディスプレイに再生する。
（１）端末３０は、コンテンツ配信装置１０に対して、端末３０とコンテンツ配信装置１０との間の通信速度に基づき最適なバリエーションのファイルを選び、コンテンツ配信装置１０に配信要求する。
（２）端末３０は、コンテンツ配信装置１０から選択したバリエーションのファイルをダウンロードする。
【００１８】
（３）端末３０は、ダウンロードしたファイルにおいて予め定められた再生順序に基づいて、ダウンロードしたファイルをディスプレイに再生する。または、端末３０は、予めダウンロードしたファイルを全て再生しているとき、端末３０は、コンテンツ配信装置１０に配信要求したファイルにおいて第１の所定割合のファイルをダウンロードすると、端末３０は、ダウンロードしたファイルにおいて予め定められた再生順序に基づいて、ダウンロードしたファイルをディスプレイに再生する。
（４）端末３０は、コンテンツ配信装置１０に配信要求したファイルにおいて第２の所定割合のファイルをダウンロードすると、（１）の処理に進む（繰り返す）。
これにより、端末３０は、端末３０とコンテンツ配信装置１０との間の通信速度に応じて、端末３０が有するディスプレイに、再生中に中断することなく最適な画質で映像を表示させることができる。
【００１９】
（端末３０）
端末３０は、通信機能を備えたコンピュータであり、アダプティブストリーミングで配信される映像データを再生して、ディスプレイに表示させる装置である。例えば、端末３０は、スマートフォン（smartphone）等の携帯通信端末や、タブレット型コンピュータ等の携帯情報端末等の無線で通信を行うコンピュータである。また、端末３０は、据え置き型のデスクトップパソコン（desktop personal computer）等の有線で通信を行うコンピュータであってもよい。
【００２０】
（コンテンツ配信装置１０）
コンテンツ配信装置１０は、ネットワーク２０に接続され、端末３０より受信したプレイリスト要求のパケットに従い、端末３０にプレイリストＰＬを送信し、端末３０より受信したコンテンツの配信要求のパケット（ファイル要求信号）に従い、端末３０へ要求された映像データをアダプティブストリーミング配信する。コンテンツ配信装置１０について詳細を後記する。
【００２１】
（ネットワーク２０）
ネットワーク２０は、端末３０それぞれとコンテンツ配信装置１０とを、例えば、有線／無線ＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等を介して、インターネットプロトコル（Internet Protocol）技術を利用して相互接続されるコンピュータネットワークである。
【００２２】
≪コンテンツ配信装置１０≫
図２にコンテンツ配信装置１０の構成を示す。
コンテンツ配信装置１０は、制御部である配信制御部１１０及びコンテンツ管理部１２０と、記憶部１３０と、送受信部１４０と、エンコーダ１５０とを備える。
【００２３】
（記憶部１３０）
記憶部１３０は、データやプログラムを記憶する構成部であり、例えば、ＨＤＤ（Hard Disc Drive）、ＲＡＭ（Random Access Memory）、光ディスク等の記憶手段である。
記憶部１３０は、一連のデジタルデータ化された映像・音声信号からエンコーダ１５０により生成された複数のバリエーションのファイル（ＴＳファイル）と、プレイリストＰＬとを記憶する。
【００２４】
（ファイル）
ここで、記憶部１３０に記憶されるファイルについて説明する。
デジタルデータ化された映像・音声信号がエンコーダ１５０に入力される。エンコーダ１５０は、デジタルデータをファイル化する際に、このデジタルデータを細分化して、１０秒単位のＴＳファイル（MPEG-2 TS形式のファイル）を生成して暗号化する。また、エンコーダ１５０は、一連のデジタルデータから、ビットレート値に応じた複数のバリエーションを生成する。
これにより、１つの同じ内容の１０秒単位のＴＳファイルが複数のバリエーションで生成され、例えば、記憶部１３０には、ビットレート値が高いＴＳファイル（以下、高データ転送レートファイルＦＨと称する）と、ビットレート値が低いＴＳファイル（以下、低データ転送レートファイルＦＬと称する）と、ビットレート値がそれらの中間のＴＳファイル（以下、中データ転送レートファイルＦＭと称する）とが記憶される。
【００２５】
（プレイリストＰＬ）
プレイリストＰＬは、エンコーダ１５０により生成された複数のバリエーションのＴＳファイルのリストである。図３に示すように、このプレイリストＰＬには、ＴＳファイルが保存されている場所や、ＴＳファイルの再生順、暗号化の鍵、コンテンツのバリエーション等が書き込まれる。このプレイリストＰＬは、エンコーダ１５０によりＭ３Ｕ８形式で生成される。
【００２６】
制御部である配信制御部１１０及びコンテンツ管理部１２０は、例えば、ＣＰＵ（Central Processing Unit）で構成される。各構成部の制御部としての機能は、ＣＰＵが記憶部１３０に格納されるプログラムを展開し、実行することによって実現される。
【００２７】
（コンテンツ管理部１２０）
コンテンツ管理部１２０は、端末３０から要求されたＴＳファイルやプレイリストＰＬを記憶部１３０から取得し、配信制御部１１０（通信制御部１１１）に渡す。
【００２８】
（配信制御部１１０）
配信制御部１１０は、通信制御部１１１と、通信状態監視部１１２と、帯域制御部１１３（バッファ１１４を内蔵）とを備える。
【００２９】
（通信制御部１１１）
通信制御部１１１は、送受信部１４０を制御して、外部装置（図１において、外部装置は端末３０に対応）へデータを送信させたり、送受信部１４０が受信した外部装置からのデータを取得して処理したりする制御手段である。
通信制御部１１１は、データをパケット化して、そのパケットのヘッダに宛先を入れ、ビットレート値に応じた帯域を割り当ててから送受信部１４０に送信させる。
通信制御部１１１は、帯域制御機能を有し、通信先の外部装置それぞれに対して、ＴＳファイルを配信するために割り当てられる帯域幅（単位時間あたりの配信量）を変更する帯域制御を行う。これにより、通信制御部１１１は、特定の外部装置に対する帯域幅を確保したり逆に制限したりすることで、リソースである帯域を有効に使うことができる。
また、通信制御部１１１は、帯域制御部１１３がした帯域更新の設定に応じて、帯域の割り当てを変更する。
【００３０】
（通信状態監視部１１２）
通信状態監視部１１２は、送受信部１４０からファイルを配信するために、ファイルそれぞれに割り当てられた帯域の広さを取得する制御手段である。このファイルに割り当てられた帯域の広さは、送受信部１４０を監視して取得してもよいし、通信制御部１１１により割り当て済みの帯域を取得してもよい。
【００３１】
（帯域制御部１１３）
帯域制御部１１３は、通信状態監視部１１２による監視結果（現在ファイル配信中で利用されている帯域）と、外部装置（図１において、外部装置は端末３０に対応）からの配信要求を受けてこれから配信されるＴＳファイルのビットレート値とに応じて、帯域更新の設定を行い、通信制御部１１１が割り当てた帯域の広さを通信制御部１１１に変更させたり、プレイリストＰＬの送信許可判定をしたりする制御手段である。
また、帯域制御部１１３は、一時的にデータを保存するバッファ１１４を内蔵する。バッファ１１４は揮発性の記憶手段であってもよいし、不揮発性の記憶手段であってもよい。
【００３２】
（送受信部１４０）
送受信部１４０は、ネットワーク２０と接続するインタフェースであり、配信制御部１１０（通信制御部１１１）に制御されて、ネットワーク２０を介して、端末３０とデータの送受信を行う。
【００３３】
コンテンツ配信装置１０による、プレイリスト送信処理と、ファイル配信処理とについて図４〜図６に示すフローチャートを用いて説明する。
【００３４】
［プレイリスト送信処理］
図４は、コンテンツ配信装置のプレイリスト要求を受けた場合の動作のフローチャートである。
まず、端末３０から送受信部１４０がプレイリスト要求を受信したことを通信制御部１１１が検知することで、配信制御部１１０はプレイリスト送信処理を実行する。
この、端末３０から送受信部１４０が受信したプレイリスト要求を、通信制御部１１１が取得する（ステップＳ１０１）。
【００３５】
帯域制御部１１３は、コンテンツ管理部１２０に問い合わせて、プレイリスト要求に基づき、最初に配信されるＴＳファイルのバリエーションのうち、高データ転送レートファイルＦＨのビットレート値をコンテンツ管理部１２０から取得する（ステップＳ１０２）。
【００３６】
帯域制御部１１３は、通信状態監視部１１２から監視結果である現在配信中の総帯域（配信中総帯域；合計リソース使用情報値）を取得する（ステップＳ１０３）。
そして、帯域制御部１１３は、コンテンツ配信装置１０が配信可能な総帯域（最大配信帯域；上限リソース使用情報値）から配信中総帯域を減算して、現在配信可能な空き配信帯域を算出する（ステップＳ１０４）。この最大配信帯域は、コンテンツ配信装置１０のスペックに基づくものである。
帯域制御部１１３は、ステップＳ１０２で取得したビットレート値と、ステップＳ１０４で算出した空き配信帯域とを比較する（ステップＳ１０５：ビットレート値＜空き配信帯域？）。ここで、帯域制御部１１３は、ビットレート値と空き配信帯域を比較するとき、ビットレート値の単位および空き配信帯域の単位として、例えばＭｂｐｓを用いる。
【００３７】
ビットレート値の方が大きい場合（ステップＳ１０５，Ｎｏ）、帯域制御部１１３は、配信不可のメッセージを作成する（ステップＳ１０６）。そして、通信制御部１１１は、プレイリスト要求の送信元（端末３０）を宛先にして、配信不可のメッセージを送受信部１４０に送信させる（ステップＳ１０７）。
これにより、アダプティブストリーミングが中断され、配信制御部１１０はプレイリスト送信処理を終了する。
【００３８】
一方、空き配信帯域の方が大きい場合（ステップＳ１０５，Ｙｅｓ）、帯域制御部１１３は、プレイリストの送信指示を出力する（ステップＳ１０８）。
これにより、通信制御部１１１は、コンテンツ管理部１２０に問い合わせて、ステップＳ１０１で取得したプレイリスト要求に基づき、プレイリストＰＬをコンテンツ管理部１２０から取得する（ステップＳ１０９）。そして、通信制御部１１１は、プレイリスト要求の送信元（端末３０）を宛先にして、プレイリストＰＬを送受信部１４０に送信させる（ステップＳ１１０）。そして、配信制御部１１０はプレイリスト送信処理を終了する。
これにより、端末３０はプレイリストＰＬを取得することができる。
【００３９】
［ファイル配信処理］
図５〜図６は、コンテンツ配信装置の配信要求を受けた場合の動作のフローチャートである。特に図６は、図５のステップＳ２０８で狭くした帯域を元に戻す帯域回復処理のフローチャートである。
まず、端末３０から送受信部１４０がファイル配信要求を受信したことを通信制御部１１１が検知することで、配信制御部１１０はファイル配信処理を実行する。
この、端末３０から送受信部１４０が受信したファイル配信要求を、配信制御部１１０（通信制御部１１１）が取得する（ステップＳ２０１）。
帯域制御部１１３は、コンテンツ管理部１２０に問い合わせて、ファイル配信要求に基づき、要求されたＴＳファイルのビットレート値をコンテンツ管理部１２０から取得する（ステップＳ２０２）。
このとき、コンテンツ管理部１２０は、通信制御部１１１からＵＲＩを受け取り、そのＵＲＩで示される記憶部１３０の場所にあるＴＳファイルのビットレート値を取得し、通信制御部１１１に渡す。
【００４０】
帯域制御部１１３は、通信状態監視部１１２から監視結果である現在配信中の総帯域（配信中総帯域）を取得する（ステップＳ２０３）。
そして、帯域制御部１１３は、配信可能な総帯域（最大配信帯域）から配信中総帯域を減算して、現在配信可能な空き配信帯域を算出する（ステップＳ２０４）。
帯域制御部１１３は、ステップＳ２０２で取得したビットレート値と、ステップＳ２０４で算出した空き配信帯域とを比較する（ステップＳ２０５：ビットレート値≦空き配信帯域？）。ここで、帯域制御部１１３は、ビットレート値と空き配信帯域を比較するとき、ビットレート値の単位および空き配信帯域の単位として、例えばＭｂｐｓを用いる。
【００４１】
空き配信帯域の方が大きい又は等しい場合（ビットレート値≦空き配信帯域の場合）（ステップＳ２０５，Ｙｅｓ）、図６のステップＳ３０１の処理を実行する。
【００４２】
一方、ビットレート値の方が大きい場合（ビットレート値＞空き配信帯域の場合）（ステップＳ２０５，Ｎｏ）、帯域制御部１１３は、ビットレート値から空き配信帯域を差分して、不足分帯域を算出する（ステップＳ２０６）。そして、帯域制御部１１３は、高ビットレート値で配信中のＴＳファイル（高データ転送レートファイルＦＨ）を調べ、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域（以下、オーバーフロー帯域と称する）をバッファ１１４に記憶させる（ステップＳ２０７）。このとき、配信要求されたＴＳファイルの（ステップＳ２０２で取得した）ビットレート値が高ビットレート値であれば、当該配信要求されたＴＳファイルも高データ転送レートファイルＦＨとして扱い、高データ転送レートファイルＦＨと同じ広さの帯域が割り当てられるものとして扱う。
【００４３】
帯域制御部１１３は、配信中総帯域が最大配信帯域以下となるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定をする（ステップＳ２０８）。例えば、帯域制御部１１３は、不足分帯域を高データ転送レートファイルＦＨの数で除算した値の分だけ、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を狭くさせる。
【００４４】
通信制御部１１１は、コンテンツ管理部１２０に問い合わせて、要求されたＴＳファイルをコンテンツ管理部１２０から取得する（ステップＳ２０９）。
このとき、コンテンツ管理部１２０は、通信制御部１１１からＵＲＩを受け取り、そのＵＲＩで示される記憶部１３０の場所にあるＴＳファイルを取得し、通信制御部１１１に渡す。
【００４５】
そして、通信制御部１１１は、帯域制御部１１３がした帯域更新の設定に応じて、帯域の割り当てを行い（ステップＳ２１０）、ファイル配信要求の送信元（端末３０）を宛先にして、取得したＴＳファイルを送受信部１４０に送信（配信）させる（ステップＳ２１１）。そして、配信制御部１１０はファイル配信処理を終了する。これにより、端末３０は要求したバリエーションのＴＳファイルを取得することができる。
【００４６】
以上のように、ステップＳ２０８の処理により、ステップＳ２１０の処理にて、帯域更新の設定に応じて、ＴＳファイルそれぞれに割り当てられる帯域が変更される。
ここで、帯域が不足せずに、余裕を持って帯域が割り当てられて配信されている場合、ステップＳ２０９で取得した要求されたＴＳファイルは、ステップＳ２０５でＹｅｓと判定された後、後記する帯域回復処理のステップＳ３０１でＮｏまたはその後のステップＳ３０４でＮｏと判定され、ステップＳ２１０の処理にて、ステップＳ２０２で取得したビットレート値に応じた帯域が割り当てられることになる。
【００４７】
［帯域回復処理］
図６は、ステップＳ２０８で狭くした帯域を元に戻す帯域回復処理のフローチャートである。
ステップＳ２０５（図５）の処理で、空き配信帯域の方が大きい又は等しい場合（ビットレート値≦空き配信帯域の場合）（ステップＳ２０５，Ｙｅｓ）、帯域制御部１１３は、オーバーフロー帯域がバッファ１１４に記憶されているか否かを判定する（ステップＳ３０１）。このオーバーフロー帯域は、ステップＳ２０７（図５）の処理でバッファ１１４に記憶されるものである。
記憶されていない場合（ステップＳ３０１，Ｎｏ）、ステップＳ２０９（図５）の処理を行う。
【００４８】
一方、記憶されている場合（ステップＳ３０１，Ｙｅｓ）、帯域制御部１１３は、バッファ１１４からオーバーフロー帯域を取得する（ステップＳ３０２）。
そして、帯域制御部１１３は、ステップＳ２０８の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域を、オーバーフロー帯域に戻した場合、すなわち、回復した場合の配信中総帯域（回復時配信中総帯域）を算出する（ステップＳ３０３）。
このとき、帯域制御部１１３は、ステップＳ２０１（図５）で取得した要求されたＴＳファイルについては、前回配信したＴＳファイルに対して割り当てられたオーバーフロー帯域ではなく、ステップＳ２０２（図５）で取得したビットレート値に応じて割り当てられる帯域で、回復した場合の配信中総帯域を算出する。
【００４９】
帯域制御部１１３は、ステップＳ３０３で取得した配信中総帯域と、最大配信帯域とを比較する（ステップＳ３０４：配信中総帯域＜最大配信帯域？）。
配信中総帯域の方が大きい場合（ステップＳ３０４，Ｎｏ）、ステップＳ２０９（図５）の処理を行う。
【００５０】
一方、最大配信帯域の方が大きい場合（ステップＳ３０４，Ｙｅｓ）、高データ転送レートファイルＦＨを送信するためにオーバーフロー帯域を割り当てるように帯域更新の設定をする（ステップＳ３０５）。これにより、ステップＳ２０８の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域を元に戻す（回復する）ことができる。
そして、ステップＳ２０９（図５）の処理を行う。
【００５１】
以上のように、ステップＳ３０５の処理により、ステップＳ２１０の処理にて、帯域更新の設定に応じて、ＴＳファイルそれぞれに割り当てられる帯域が変更される。
【００５２】
≪タイムチャート≫
図７及び図８を用いて、図５のファイル配信処理及び図６の帯域回復処理による帯域の割り当て、帯域の回復について説明する。
図７は、コンテンツ配信装置１０が割り当てている配信中総帯域を示すタイムチャートである。図８は、図７におけるＴ１〜Ｔ５の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに割り当てられた帯域の広さを示している。
Ｔ１は初期状態、Ｔ２は端末３０ｂから新規に高データ転送レートファイルＦＨのファイル配信要求があり不足分帯域が発生したとき、Ｔ３は帯域を狭くしたとき、Ｔ４は端末３０ａから新規に低データ転送レートファイルＦＬのファイル配信要求により空き配信帯域が発生したとき、Ｔ５は帯域を元に戻したとき、それぞれの時点における配信中総帯域を示している。
図７において、配信中総帯域を実線で、最大配信帯域を一点鎖線で、Ｔ２の時点で新規のファイル配信要求に応じて高データ転送レートファイルＦＨを配信した場合の配信中総帯域を破線で示している。
【００５３】
（Ｔ１の時点）
図８（ａ）は、図７のＴ１の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに対して、ＴＳファイルを配信するために割り当てられた帯域の広さを示しており、端末３０ａ及び端末３０ｄには広い帯域が割り当てられ、端末３０ｂ及び端末３０ｃには狭い帯域が割り当てられている状態である。これは、端末３０ａ及び端末３０ｄには高データ転送レートファイルＦＨが配信され、端末３０ｂ及び端末３０ｃには低データ転送レートファイルＦＬが配信されているためである。
【００５４】
（Ｔ２の時点）
図８（ｂ）は、図７のＴ２の時点における状態であり、端末３０ｂへのファイル配信が終了し、新たなファイル配信要求が来た状態である。端末３０ｂからの新たなファイル配信要求で要求されたＴＳファイルのビットレート値が大きいため（高データ転送レートファイルＦＨ）、ステップＳ２０５の処理（ビットレート値≦空き配信帯域？）で、ビットレート値の方が大きい場合（ビットレート値＞空き配信帯域の場合）（ステップＳ２０５，Ｎｏ）に判定される状態である。このビットレート値に応じて帯域を確保すると、配信中総帯域が最大配信帯域を超えることを×印と破線で示している。このときの端末３０ａ、３０ｄに対して割り当てられている帯域及び端末３０ｂに対して割り当てられるはずだった帯域がオーバーフロー帯域として、バッファ１１４に記憶される。
【００５５】
（Ｔ３の時点）
図８（ｃ）は、図７のＴ３の時点における状態であり、Ｔ２の後のステップＳ２０８の処理で、端末３０ａ、３０ｂ、３０ｄへ高データ転送レートファイルＦＨを配信するために割り当てられた帯域に対して、不足分帯域を高データ転送レートファイルＦＨの数（ここでは３）で除算した値の分だけ狭くさせるように帯域更新の設定がされ、その後のステップＳ２１０の処理で帯域が割り当てられた状態である。
これにより、図８（ｃ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ａ、３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図８（ｂ）で示す帯域よりも狭くなる。
【００５６】
（Ｔ４の時点）
図８（ｄ）は、図７のＴ４の時点における状態であり、端末３０ａへのファイル配信が終了し、新たなファイル配信要求が来た状態である。端末３０ａからの新たなファイル配信要求で要求されたＴＳファイルのビットレート値が小さく（低データ転送レートファイルＦＬ）、ステップＳ２０５の処理（ビットレート値≦空き配信帯域？）で、空き配信領域の方が大きい又は等しい場合（ビットレート値≦空き配信帯域の場合）（ステップＳ２０５，Ｙｅｓ）に判定される状態である。このビットレート値に応じて帯域を確保すると、配信中総帯域が最大配信帯域を大きく下回ることを×印と破線で示している。
【００５７】
（Ｔ５の時点）
図８（ｅ）は、図７のＴ５の時点における状態であり、帯域回復処理が行われた状態である。Ｔ４の後のステップＳ３０５の処理にて、ステップＳ２０８の処理で、帯域を狭くさせられた端末３０ｂ、３０ｄへ配信中のＴＳファイルに対して、オーバーフロー帯域を割り当てるように帯域更新の設定がされ、その後のステップＳ２１０の処理で帯域が割り当てられた状態である。
これにより、図８（ｅ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図８（ｂ）で示す帯域（オーバーフロー帯域）まで回復する（帯域が元に戻る）。
【００５８】
以上のように、本発明によれば、コンテンツ配信装置１０が配信可能な総帯域（最大配信帯域）を、新たにファイル配信を要求通りに行うことで配信中の各コンテンツの高ビットレート値の総和（配信中総帯域）が上回ってしまう場合でも、現在配信可能な空き配信帯域があるならば、新たなファイル配信要求を受け入れることができる。そのため、本発明のコンテンツ配信装置１０は、最大配信帯域を無駄なく使用することができるという効果が得られる。
【００５９】
また、配信制御部１１０は、現在配信可能な空き配信帯域に基づき、新たなコンテンツのプレイリスト要求を受け付けるため、本発明のコンテンツ配信装置１０は、最大配信帯域を無駄なく使用することができるという効果が得られる。
【００６０】
≪第２実施形態≫
第２実施形態に係るコンテンツ配信装置１０Ａ（図２）について説明する。
第２実施形態に係るコンテンツ配信装置１０Ａは、第１実施形態に係るコンテンツ配信装置１０が実行する処理（ファイル配信処理（図５）及び帯域回復処理（図６））の一部を変更した変形例である。そのため、第２実施形態に係るコンテンツ配信システム１を構成する各構成部は、第１実施形態における同名称かつ同符号の構成部と同様の処理を行うため、説明を便宜的に省略する。また、プレイリスト送信処理（図４）についても同様の処理を行うため、説明を便宜的に省略する。
【００６１】
（変更した処理について）
・ステップＳ２０５ＡでＹｅｓの場合に、ステップＳ２０９の処理を実行する。
・ステップＳ２１０Ａ
・ステップＳ３０６Ａ
以上、図９、図１０を参照
【００６２】
詳細は後記するが、これらの変更により、第２実施形態に係るコンテンツ配信装置１０Ａは、ファイル配信処理を実行した後で、帯域回復処理を実行する。つまり、帯域回復処理は、ファイル配信処理のステップＳ２１１（図９）の処理を実行して、送受信部１４０が複数のＴＳファイルで構成される１つのビットレートファイルを送信（配信）した後で行われる。すなわち、このビットレートファイルを送信（配信）し終えたことで、帯域にその分の余裕（空き）ができたときに、帯域が回復することとなる。
【００６３】
［ファイル配信処理］
図９はコンテンツ配信装置の配信要求を受けた場合のファイル配信処理のフローチャートである。そして、図１０は図９のステップＳ２０８で狭くした帯域を元に戻す帯域回復処理のフローチャートである。
ステップＳ２０１からステップ２０４までの処理は、第１実施形態に係るコンテンツ配信装置１０が実行するファイル配信処理と同様の処理を行うため、説明を便宜的に省略する。
【００６４】
（ステップＳ２０５Ａ以降の処理）
帯域制御部１１３は、ステップＳ２０２で取得したビットレート値と、ステップＳ２０４で算出した空き配信帯域とを比較する（ステップＳ２０５Ａ：ビットレート値≦空き配信帯域？）。ここで、帯域制御部１１３は、ビットレート値と空き配信帯域を比較するとき、ビットレート値の単位および空き配信帯域の単位として、例えばＭｂｐｓを用いる。
【００６５】
空き配信帯域の方が大きい又は等しい場合（ビットレート値≦空き配信帯域の場合）（ステップＳ２０５Ａ，Ｙｅｓ）、ステップＳ２０９の処理を実行する。
【００６６】
一方、ビットレート値の方が大きい場合（ビットレート値＞空き配信帯域の場合）（ステップＳ２０５Ａ，Ｎｏ）、帯域制御部１１３は、ビットレート値から空き配信帯域を差分して、不足分帯域を算出する（ステップＳ２０６）。そして、帯域制御部１１３は、高ビットレート値で配信中のＴＳファイル（高データ転送レートファイルＦＨ）を調べ、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域（以下、オーバーフロー帯域と称する）をバッファ１１４に記憶させる（ステップＳ２０７）。このとき、配信要求されたＴＳファイルの（ステップＳ２０２で取得した）ビットレート値が高ビットレート値であれば、当該配信要求されたＴＳファイルも高データ転送レートファイルＦＨとして扱い、高データ転送レートファイルＦＨと同じ広さの帯域が割り当てられるものとして扱う。
【００６７】
帯域制御部１１３は、配信中総帯域が最大配信帯域以下となるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定をする（ステップＳ２０８）。例えば、帯域制御部１１３は、不足分帯域を高データ転送レートファイルＦＨの数で除算した値の分だけ、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を狭くさせる。
【００６８】
通信制御部１１１は、コンテンツ管理部１２０に問い合わせて、要求されたＴＳファイルをコンテンツ管理部１２０から取得する（ステップＳ２０９）。
このとき、コンテンツ管理部１２０は、通信制御部１１１からＵＲＩを受け取り、そのＵＲＩで示される記憶部１３０の場所にあるＴＳファイルを取得し、通信制御部１１１に渡す。
【００６９】
そして、通信制御部１１１は帯域の割り当てを行う。このとき、帯域制御部１１３が帯域更新の設定をしていれば（ステップＳ２０８参照）、通信制御部１１１はその帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ２１０Ａ）。
そして、通信制御部１１１は、ファイル配信要求の送信元（端末３０）を宛先にして、取得したＴＳファイルを送受信部１４０に送信（配信）させる（ステップＳ２１１）。そして、配信制御部１１０はファイル配信処理を終了する。これにより、端末３０は要求したバリエーションのＴＳファイルを取得することができる。
【００７０】
以上のように、ステップＳ２０８の処理により、ステップＳ２１０Ａの処理にて、帯域更新の設定に応じて、ＴＳファイルそれぞれに割り当てられる帯域が変更される。
ここで、帯域が不足せずに、余裕を持って帯域が割り当てられて配信されている場合、ステップＳ２０９で取得したＴＳファイルは、ステップＳ２０５ＡでＹｅｓと判定された後、ステップＳ２１０Ａの処理にて、ステップＳ２０２で取得したビットレート値に応じた帯域が割り当てられることになる。
【００７１】
［帯域回復処理］
図１０は、ステップＳ２０８で狭くした帯域を元に戻す帯域回復処理のフローチャートである。この帯域回復処理は、ファイル配信処理（図９）のステップＳ２１１の処理により、送受信部１４０によりＴＳファイルの送信が始まり、ビットレートファイルを送信（配信）した後で行われる。すなわち、このビットレートファイルを送信（配信）し終えたことで、帯域にその分の余裕ができた状態である。
【００７２】
まず、帯域制御部１１３は、オーバーフロー帯域がバッファ１１４に記憶されているか否かを判定する（ステップＳ３０１）。このオーバーフロー帯域は、ステップＳ２０７（図９）の処理でバッファ１１４に記憶されるものである。
記憶されていない場合（ステップＳ３０１，Ｎｏ）は、帯域回復処理を終了する。
【００７３】
一方、記憶されている場合（ステップＳ３０１，Ｙｅｓ）、帯域制御部１１３は、バッファ１１４からオーバーフロー帯域を取得する（ステップＳ３０２）。
そして、帯域制御部１１３は、ステップＳ２０８（図９）の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域を、オーバーフロー帯域に戻した場合、すなわち、回復した場合の配信中総帯域（回復時配信中総帯域）を算出する（ステップＳ３０３）。
このとき、帯域制御部１１３は、ステップＳ２０１（図９）で取得した要求されたＴＳファイルについては、前回配信したＴＳファイルに対して割り当てられたオーバーフロー帯域ではなく、ステップＳ２０２（図９）で取得したビットレート値に応じて割り当てられる帯域で、回復した場合の配信中総帯域を算出する。
【００７４】
帯域制御部１１３は、ステップＳ３０３で取得した配信中総帯域と、最大配信帯域とを比較する（ステップＳ３０４：配信中総帯域＜最大配信帯域？）。
配信中総帯域の方が大きい場合（ステップＳ３０４，Ｎｏ）は、帯域回復処理を終了する。
【００７５】
一方、最大配信帯域の方が大きい場合（ステップＳ３０４，Ｙｅｓ）、高データ転送レートファイルＦＨを送信するためにオーバーフロー帯域を割り当てるように帯域更新の設定をする（ステップＳ３０５）。その後、通信制御部１１１は、帯域制御部１１３がした帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ３０６Ａ）。これにより、ステップＳ２０８（図９）の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域を元に戻す（回復する）ことができる。
そして、帯域回復処理を終了する。
【００７６】
以上のように、ステップＳ２１０Ａ（図９）の処理にて、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域は、ステップＳ３０５及びステップＳ３０６Ａの処理により、元に戻す（回復する）ことができる。
【００７７】
≪タイムチャート≫
図１１及び図１２を用いて、図９のファイル配信処理及び図１０の帯域回復処理による帯域の割り当て、帯域の回復について説明する。
図１１は、コンテンツ配信装置１０Ａが割り当てている配信中総帯域を示すタイムチャートである。図１２は、図１１におけるＴ１〜Ｔ５の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに割り当てられた帯域の広さを示している。
【００７８】
Ｔ１は初期状態、Ｔ２は端末３０ｂから新規に高データ転送レートファイルＦＨのファイル配信要求があり不足分帯域が発生したとき、Ｔ３は帯域を狭くしたとき、Ｔ４は端末３０ａへのビットレートファイル（高データ転送レートファイルＦＨ）の配信が終了したことで空き配信帯域が発生したとき、Ｔ５は帯域を元に戻したとき、それぞれの時点における配信中総帯域を示している。
図１１において、配信中総帯域を実線で、最大配信帯域を一点鎖線で、Ｔ２の時点で新規のファイル配信要求に応じて帯域を制御せずに高データ転送レートファイルＦＨを配信した場合の配信中総帯域を破線で示している。
【００７９】
（Ｔ１の時点）
図１２（ａ）は、図１１のＴ１の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに対して、ＴＳファイルを配信するために割り当てられた帯域の広さを示しており、端末３０ａ及び端末３０ｄには広い帯域が割り当てられ、端末３０ｂ及び端末３０ｃには狭い帯域が割り当てられている状態である。これは、端末３０ａ及び端末３０ｄには高データ転送レートファイルＦＨが配信され、端末３０ｂ及び端末３０ｃには低データ転送レートファイルＦＬが配信されているためである。
【００８０】
（Ｔ２の時点）
図１２（ｂ）は、図１１のＴ２の時点における状態であり、端末３０ｂへのファイル配信が終了し、新たなファイル配信要求が来た状態である。端末３０ｂからの新たなファイル配信要求で要求されたＴＳファイルのビットレート値が大きいため（高データ転送レートファイルＦＨ）、ステップＳ２０５Ａの処理（ビットレート値≦空き配信帯域？）で、ビットレート値の方が大きい場合（ビットレート値＞空き配信帯域の場合）（ステップＳ２０５Ａ，Ｎｏ）に判定される状態である。このビットレート値に応じて帯域を確保すると、配信中総帯域が最大配信帯域を超えることを×印と破線で示している。このときの端末３０ａ、３０ｄに対して割り当てられている帯域及び端末３０ｂに対して割り当てられるはずだった帯域がオーバーフロー帯域として、バッファ１１４に記憶される。
【００８１】
（Ｔ３の時点）
図１２（ｃ）は、図１１のＴ３の時点における状態であり、Ｔ２の後のステップＳ２０８（図９）の処理で、端末３０ａ、３０ｂ、３０ｄへ高データ転送レートファイルＦＨを配信するために割り当てられた帯域に対して、不足分帯域を高データ転送レートファイルＦＨの数（ここでは３）で除算した値の分だけ狭くさせるように帯域更新の設定がされ、その後のステップＳ２１０Ａ（図９）の処理で帯域が割り当てられた状態である。
これにより、図１２（ｃ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ａ、３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図１２（ｂ）で示す帯域よりも狭くなる。
【００８２】
（Ｔ４の時点）
図１２（ｄ）は、図１１のＴ４の時点における状態であり、端末３０ａへのビットレートファイル（高データ転送レートファイルＦＨ）の配信が終了した状態である。このとき、配信中総帯域が最大配信帯域を大きく下回る。
【００８３】
（Ｔ５の時点）
図１２（ｅ）は、図１１のＴ５の時点における状態であり、端末３０ａへのビットレートファイルの配信が終了したことにより、帯域回復処理が行われた状態である。Ｔ４の後のステップＳ３０５（図１０）の処理にて、ステップＳ２０８及びステップＳ２１０Ａの処理で、帯域を狭くさせられた端末３０ｂ、３０ｄへ配信中のＴＳファイルに対して、オーバーフロー帯域を割り当てるように帯域更新の設定がされ、その後のステップＳ３０６Ａ（図１０）の処理で帯域が割り当てられた状態である。
これにより、図１２（ｅ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図１２（ｂ）で示す帯域（オーバーフロー帯域）まで回復する（帯域が元に戻る）。
【００８４】
≪第３実施形態≫
第３実施形態に係るコンテンツ配信装置１０Ｂについて説明する。
この第３実施形態では、ＣＰＵ使用率の値を監視して、帯域の割り当てを行う。
ここで、第３実施形態に係るコンテンツ配信システム１を構成する各構成部は、第１実施形態における同名称かつ同符号の構成部と同様の処理を行うため、説明を便宜的に省略する。
【００８５】
≪コンテンツ配信装置１０Ｂ≫
図１３にコンテンツ配信装置１０Ｂの構成を示す。
コンテンツ配信装置１０Ｂは、制御部である配信制御部１１０Ｂ及びコンテンツ管理部１２０と、記憶部１３０と、送受信部１４０と、エンコーダ１５０とを備える。
【００８６】
（配信制御部１１０Ｂ）
第３実施形態において、配信制御部１１０Ｂは、通信制御部１１１と、通信状態監視部１１２と、帯域制御部１１３Ｂ（バッファ１１４を内蔵）と、さらにＣＰＵ状態監視部１６０を備える。
ここで、配信制御部１１０Ｂが備える、通信制御部１１１と、通信状態監視部１１２とは、第１実施形態における同名称の構成部と同様の処理を行うため、説明を便宜的に省略する。
【００８７】
（ＣＰＵ状態監視部１６０）
ＣＰＵ状態監視部１６０は、コンテンツ配信装置１０Ｂを制御する制御部１００（ＣＰＵ）を監視して、ＣＰＵ使用率を取得する。
ファイルの送受信はＣＰＵにより制御されるため、ＣＰＵの現在の処理量を示すＣＰＵ使用率と、ファイル送信負荷とは関係する。例えば、配信帯域の幅が狭いときに、配信対象のファイル量が多くなると、処理量を上げようとＣＰＵの負担が大きくなりＣＰＵ使用率が高くなる。そして、配信対象のファイル量を減らすことで、処理量が減ってＣＰＵの負担が小さくなりＣＰＵ使用率が低くなる。
第３実施形態では、このＣＰＵ使用率の値に基づき、帯域の割り当てを行う。
【００８８】
（帯域制御部１１３Ｂ）
帯域制御部１１３Ｂは、ＣＰＵ状態監視部１６０による監視結果（ＣＰＵ使用率）と、外部装置（図１において、外部装置は端末３０に対応）からの配信要求を受けてＴＳファイルを配信した場合に予想される未来のＣＰＵ使用率（予測ＣＰＵ使用率）とに応じて、帯域更新の設定を行い、通信制御部１１１が割り当てた帯域の広さを通信制御部１１１に変更させたり、プレイリストＰＬの送信許可判定をしたりする制御手段である。
また、帯域制御部１１３Ｂは、一時的にデータを保存するバッファ１１４を内蔵する。バッファ１１４は揮発性の記憶手段であってもよいし、不揮発性の記憶手段であってもよい。
【００８９】
コンテンツ配信装置１０Ｂによる、プレイリスト送信処理と、ファイル配信処理とについて図１４〜図１６に示すフローチャートを用いて説明する。
【００９０】
［プレイリスト送信処理］
図１４は、コンテンツ配信装置のプレイリスト要求を受けた場合の動作のフローチャートである。
まず、端末３０から送受信部１４０がプレイリスト要求を受信したことを通信制御部１１１が検知することで、配信制御部１１０Ｂはプレイリスト送信処理を実行する。
この、端末３０から送受信部１４０が受信したプレイリスト要求を、通信制御部１１１が取得する（ステップＳ１０１）。
【００９１】
帯域制御部１１３Ｂは、コンテンツ管理部１２０に問い合わせて、プレイリスト要求に基づき、最初に配信されるＴＳファイルのバリエーションのうち、高データ転送レートファイルＦＨのビットレート値をコンテンツ管理部１２０から取得する（ステップＳ１０２）。
帯域制御部１１３Ｂは、その高データ転送レートファイルＦＨ（ＴＳファイル）のビットレート値に応じて、そのＴＳファイルを配信した場合に予想される未来のＣＰＵ使用率（予測ＣＰＵ使用率）を算出する（ステップＳ４０１）。
【００９２】
そして、帯域制御部１１３Ｂは、ＣＰＵ状態監視部１６０から現在のＣＰＵ使用率を取得する（ステップＳ４０２）。
そして、帯域制御部１１３Ｂは、コンテンツ配信装置１０Ｂの制御部１００が使用可能なＣＰＵ使用率上限値（上限リソース使用情報値）（≒最大配信帯域）から現在のＣＰＵ使用率を減算して、空きＣＰＵ使用率を算出する（ステップＳ４０３）。このＣＰＵ使用率上限値は、コンテンツ配信装置１０Ｂのスペックに基づくものである。
帯域制御部１１３Ｂは、ステップＳ４０１で取得した予測ＣＰＵ使用率と、ステップＳ４０３で算出した空きＣＰＵ使用率とを比較する（ステップＳ４０４：予測ＣＰＵ使用率＜空きＣＰＵ使用率？）。
【００９３】
予測ＣＰＵ使用率の方が大きい場合（ステップＳ４０４，Ｎｏ）、帯域制御部１１３Ｂは、プレイリスト要求を拒否して（ステップＳ１０６）、配信不可のメッセージを作成する。そして、通信制御部１１１は、プレイリスト要求の送信元（端末３０）を宛先にして、配信不可のメッセージを送受信部１４０に送信させる（ステップＳ１０７）。
これにより、アダプティブストリーミングが中断され、配信制御部１１０Ｂはプレイリスト送信処理を終了する。
【００９４】
一方、空きＣＰＵ使用率の方が大きい場合（ステップＳ４０４，Ｙｅｓ）、帯域制御部１１３Ｂは、プレイリスト要求を許可して（ステップＳ１０８）、プレイリストの送信指示を出力する。
これにより、通信制御部１１１は、コンテンツ管理部１２０に問い合わせて、ステップＳ１０１で取得したプレイリスト要求に基づき、プレイリストＰＬをコンテンツ管理部１２０から取得する（ステップＳ１０９）。そして、通信制御部１１１は、プレイリスト要求の送信元（端末３０）を宛先にして、プレイリストＰＬを送受信部１４０に送信させる（ステップＳ１１０）。そして、配信制御部１１０Ｂはプレイリスト送信処理を終了する。
これにより、端末３０はプレイリストＰＬを取得することができる。
【００９５】
［ファイル配信処理］
図１５（図１５Ａ及び図１５Ｂ）はコンテンツ配信装置の配信要求を受けた場合のファイル配信処理のフローチャートである。そして、図１６は図１５のステップＳ２０８及びステップＳ５１６で狭くした帯域を元に戻す帯域回復処理のフローチャートである。
まず、端末３０から送受信部１４０がファイル配信要求を受信したことを通信制御部１１１が検知することで、配信制御部１１０Ｂはファイル配信処理を実行する。
この、端末３０から送受信部１４０が受信したファイル配信要求を、配信制御部１１０Ｂ（通信制御部１１１）が取得する（ステップＳ２０１）。
帯域制御部１１３Ｂは、コンテンツ管理部１２０に問い合わせて、ファイル配信要求に基づき、要求されたＴＳファイルのビットレート値をコンテンツ管理部１２０から取得する（ステップＳ２０２）。
このとき、コンテンツ管理部１２０は、通信制御部１１１からＵＲＩを受け取り、そのＵＲＩで示される記憶部１３０の場所にあるＴＳファイルのビットレート値を取得し、通信制御部１１１に渡す。
【００９６】
帯域制御部１１３Ｂは、そのＴＳファイルのビットレート値に応じて、そのＴＳファイルを配信した場合に予想される未来のＣＰＵ使用率（予測ＣＰＵ使用率）を算出する（ステップＳ５０１）。
【００９７】
そして、帯域制御部１１３Ｂは、ＣＰＵ状態監視部１６０から現在のＣＰＵ使用率を取得する（ステップＳ５０２）。
そして、帯域制御部１１３Ｂは、使用可能なＣＰＵ使用率上限値（≒最大配信帯域）から現在のＣＰＵ使用率を減算して、空きＣＰＵ使用率を算出する（ステップＳ５０３）。
帯域制御部１１３Ｂは、ステップＳ５０２で取得した予測ＣＰＵ使用率と、ステップＳ５０３で算出した空きＣＰＵ使用率とを比較する（ステップＳ５０４：予測ＣＰＵ使用率＜空きＣＰＵ使用率？）。
【００９８】
予測ＣＰＵ使用率≦空きＣＰＵ使用率の場合（ステップＳ５０４，Ｙｅｓ）、後記するステップＳ２０９の処理を実行する。
【００９９】
一方、予測ＣＰＵ使用率＞空きＣＰＵ使用率の場合（ステップＳ５０４，Ｎｏ）、帯域制御部１１３Ｂは、所定の下げる総帯域量を決める（ステップＳ５０５）。
【０１００】
帯域制御部１１３Ｂは、通信状態監視部１１２から、高ビットレート値で配信中のＴＳファイル（高データ転送レートファイルＦＨ）の情報を取得する。このとき、配信要求されたＴＳファイルの（ステップＳ２０２で取得した）ビットレート値が高ビットレート値であれば、当該配信要求されたＴＳファイルも高データ転送レートファイルＦＨとして扱い、高データ転送レートファイルＦＨと同じ広さの帯域が割り当てられるものとして扱う。
【０１０１】
そして、帯域制御部１１３Ｂは、所定の下げる総帯域量だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定をする（ステップＳ２０８）。例えば、帯域制御部１１３Ｂは、所定の下げる総帯域量を高データ転送レートファイルＦＨの数で除算した値の分だけ、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を狭くさせる。
その後、帯域制御部１１３Ｂは、下げた総帯域量（ｍ）をバッファ１１４に記憶させる（ステップＳ５０６）。ここで、以前の処理で下げた総帯域量（ｍ）がバッファ１１４に記憶されていれば（クリアされずにまだ残っていれば）加算する（Ｍ＝Ｍ＋ｍ）。
【０１０２】
通信制御部１１１は、コンテンツ管理部１２０に問い合わせて、要求されたＴＳファイルをコンテンツ管理部１２０から取得する（ステップＳ２０９）。
このとき、コンテンツ管理部１２０は、通信制御部１１１からＵＲＩを受け取り、そのＵＲＩで示される記憶部１３０の場所にあるＴＳファイルを取得し、通信制御部１１１に渡す。
【０１０３】
そして、通信制御部１１１は帯域の割り当てを行う。このとき、帯域制御部１１３Ｂが帯域更新の設定をしていれば（ステップＳ２０８参照）、通信制御部１１１はその帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ２１０Ａ）。
そして、通信制御部１１１は、ファイル配信要求の送信元（端末３０）を宛先にして、取得したＴＳファイルを送受信部１４０に送信（配信）させる（ステップＳ２１１）。
【０１０４】
帯域制御部１１３Ｂは、再びＣＰＵ状態監視部１６０から現在のＣＰＵ使用率（ステップＳ２１１でＴＳファイルを送信中のＣＰＵ使用率）を取得する（ステップＳ５１２）。
そして、帯域制御部１１３Ｂは、使用可能なＣＰＵ使用率上限値（≒最大配信帯域）から現在のＣＰＵ使用率を減算して、空きＣＰＵ使用率を算出する（ステップＳ５１３）。
帯域制御部１１３Ｂは、ステップＳ５１３で算出した空きＣＰＵ使用率の値が０より大きいか否かを判定する（ステップＳ５１４：空きＣＰＵ使用率＞０？）。
【０１０５】
ＣＰＵ使用率に空きがあれば（空きＣＰＵ使用率＞０）（ステップＳ５１４，Ｙｅｓ）、そのままの帯域で送受信部１４０に次からのＴＳファイルの送信（配信）を続けさせて、配信制御部１１０Ｂはファイル配信処理を終了する。これにより、端末３０は要求したバリエーションのＴＳファイルを取得することができる。
【０１０６】
一方、ＣＰＵ使用率に空きがなく、不足していれば（空きＣＰＵ使用率≦０）（ステップＳ５１４，Ｎｏ）、帯域制御部１１３Ｂは、再び所定の下げる総帯域量（ｍ）を決める（ステップＳ５１５）。
【０１０７】
帯域制御部１１３Ｂは、通信状態監視部１１２から、高ビットレート値で配信中のＴＳファイル（高データ転送レートファイルＦＨ）の情報を取得する。
そして、帯域制御部１１３Ｂは、所定の下げる総帯域量だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定をする（ステップＳ５１６）。
【０１０８】
帯域制御部１１３Ｂは、下げた総帯域量（ｍ）をバッファ１１４に記憶された下げた総帯域量（Ｍ）に加算して記憶させる（Ｍ＝Ｍ＋ｍ）（ステップＳ５１７）。そして、通信制御部１１１はコンテンツ管理部１２０から次のＴＳファイルを取得したタイミングで再度帯域の割り当てを行う。通信制御部１１１はステップＳ５１６の帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ５１８）。
そして、通信制御部１１１は、ファイル配信要求の送信元（端末３０）を宛先にして、取得したＴＳファイルを送受信部１４０に送信（配信）させる（ステップＳ５１９）。そして、ステップＳ５１４の処理に戻る。
【０１０９】
ステップＳ５１４〜ステップＳ５１９の処理を繰り返すことで、所定の下げる総帯域量の分、徐々に使用総帯域が狭くなる。つまり、端末３０に配信するデータ量が減る。これにより、配信処理をするＣＰＵの負担が減るため、ＣＰＵ使用率が下がり、ＣＰＵ使用率に空きができる。
【０１１０】
以上のように、ステップＳ２０８及びステップＳ５１６の処理により、ステップＳ２１０Ａの処理にて、帯域更新の設定に応じて、ＴＳファイルそれぞれに割り当てられる帯域が変更される。
ここで、帯域が不足せずに、余裕を持って帯域が割り当てられて配信されている場合、ステップＳ２０９で取得した要求されたＴＳファイルは、ステップＳ５０４でＹｅｓと判定された後、ステップＳ２１０Ａの処理にて、ステップＳ２０２で取得したビットレート値に応じた帯域が割り当てられることになる。
【０１１１】
［帯域回復処理］
図１６は、ステップＳ２０８及びステップＳ５１６で狭くした帯域を元に戻す帯域回復処理のフローチャートである。この帯域回復処理は、ファイル配信処理（図１５）のステップＳ２１１の処理により、送受信部１４０が複数のＴＳファイルで構成される１つのビットレートファイルを送信（配信）した後で行われる。すなわち、このビットレートファイルを送信（配信）し終えたことで、帯域にその分の余裕（空き）ができた状態である。
【０１１２】
まず、帯域制御部１１３Ｂは、下げた総帯域量（Ｍ）がバッファ１１４に記憶されているか否かを判定する（ステップＳ６０１）。この下げた総帯域量（Ｍ）は、ステップＳ２０７やステップＳ２０７（図１５）の処理でバッファ１１４に記憶されるものである。
記憶されていない場合（ステップＳ６０１，Ｎｏ）は、帯域回復処理を終了する。
【０１１３】
一方、記憶されている場合（ステップＳ６０１，Ｙｅｓ）、帯域制御部１１３Ｂは、バッファ１１４から下げた総帯域量（Ｍ）を取得する（ステップＳ６０２）。
帯域制御部１１３Ｂは、ＣＰＵ状態監視部１６０から現在のＣＰＵ使用率を取得する（ステップＳ６０３）。
そして、帯域制御部１１３Ｂは、使用可能なＣＰＵ使用率上限値（≒最大配信帯域）から現在のＣＰＵ使用率を減算して、空きＣＰＵ使用率を算出する（ステップＳ６０４）。
帯域制御部１１３Ｂは、ステップＳ６０４で算出した空きＣＰＵ使用率の値が０より大きいか否かを判定する（ステップＳ６０５：空きＣＰＵ使用率＞０？）。
ＣＰＵ使用率に空きがなく、不足していれば（空きＣＰＵ使用率≦０）（ステップＳ６０５，Ｎｏ）、帯域回復処理を終了する。
【０１１４】
一方、ＣＰＵ使用率に空きがあれば（空きＣＰＵ使用率＞０）（ステップＳ６０５，Ｙｅｓ）、帯域制御部１１３Ｂは、ステップＳ２０８及びステップＳ５１６の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域について、下げた総帯域量（Ｍ）を戻すように帯域を割り当て直し、帯域更新の設定をする（ステップＳ６０６）。そして、バッファ１１４に記憶された下げた総帯域量（Ｍ）をクリア（Ｍ＝０）する。その後、通信制御部１１１は、帯域制御部１１３Ｂがした帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ６０７）。これにより、ステップＳ２０８及びステップＳ５１６の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域を元に戻す（回復する）ことができる。
そして、帯域回復処理を終了する。
【０１１５】
以上のように、ステップＳ６０６の処理により、ステップＳ２１０Ａの処理にて、帯域更新の設定に応じて、ＴＳファイルそれぞれに割り当てられる帯域が変更される。
【０１１６】
≪タイムチャート≫
図１７及び図１８を用いて、図１５のファイル配信処理及び図１６の帯域回復処理による帯域の割り当て、帯域の回復が行われることによるＣＰＵ使用率の変化について説明する。
図１７は、コンテンツ配信装置１０Ｂが備えるＣＰＵ（制御部１００）のＣＰＵ使用率の変化を示すタイムチャートである。図１８は、図１７におけるＴ１〜Ｔ５の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに割り当てられた帯域の広さを示している。
【０１１７】
Ｔ１は初期状態、Ｔ２は端末３０ｂから新規に高データ転送レートファイルＦＨのファイル配信要求があり、このままではＣＰＵ使用率がＣＰＵ使用率上限値を超えると判定したとき、Ｔ３は所定の下げる総帯域量だけ帯域を狭くしたとき、Ｔ４はさらに所定の下げる総帯域量だけ帯域を狭くしたとき、Ｔ５は端末３０ａに配信していた高データ転送レートファイルＦＨのファイルの配信が終了したため、下げていた総帯域量を戻して、各高データ転送レートファイルＦＨの送信に割り当てられていた帯域を元に戻したときを示している。
【０１１８】
図１７において、ＣＰＵ使用率を実線で、ＣＰＵ使用率上限値を一点鎖線で、Ｔ２の時点で新規のファイル配信要求に応じて高データ転送レートファイルＦＨを配信した場合のＣＰＵ使用率を破線で示している。また、Ｔ５の時点で高データ転送レートファイルＦＨの配信が終了し、帯域を回復しなかった場合のＣＰＵ使用率を破線で示している。
【０１１９】
（Ｔ１の時点）
図１８（ａ）は、図１７のＴ１の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに対して、ＴＳファイルを配信するために割り当てられた帯域の広さを示しており、端末３０ａ及び端末３０ｄには広い帯域が割り当てられ、端末３０ｂ及び端末３０ｃには狭い帯域が割り当てられている状態である。これは、端末３０ａ及び端末３０ｄには高データ転送レートファイルＦＨが配信され、端末３０ｂ及び端末３０ｃには低データ転送レートファイルＦＬが配信されているためである。
【０１２０】
（Ｔ２の時点）
図１８（ｂ）は、図１７のＴ２の時点における状態であり、端末３０ｂへのファイル配信が終了し、新たなファイル配信要求が来た状態である。端末３０ｂからの新たなファイル配信要求で要求されたＴＳファイルのビットレート値が大きいため（高データ転送レートファイルＦＨ）、ステップＳ５０４の処理で、予測ＣＰＵ使用率＞空きＣＰＵ使用率（ステップＳ５０４，Ｎｏ）に判定される状態である。このビットレート値に応じて帯域を確保すると、ＣＰＵの処理量が増えすぎて、ＣＰＵ使用率がＣＰＵ使用率上限値を超えることを×印と破線で示している。すなわち、このビットレート値に応じて帯域を確保すると、配信中総帯域が最大配信帯域を超えてしまう可能性が高い。
【０１２１】
（Ｔ３の時点）
図１８（ｃ）は、図１７のＴ３の時点における状態であり、Ｔ２の後のステップＳ２０８（及びステップＳ５１６）の処理で、端末３０ａ、３０ｂ、３０ｄへ高データ転送レートファイルＦＨを配信するために割り当てられた帯域に対して、所定の下げる総帯域量（ｍ）だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定がされ、その後のステップＳ２１０Ａの処理で帯域が割り当てられた状態である。
これにより、図１８（ｃ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ａ、３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図１８（ｂ）で示す帯域よりも狭くなる。
【０１２２】
（Ｔ４の時点）
図１８（ｄ）は、図１７のＴ４の時点における状態であり、未だにＣＰＵ使用率がＣＰＵ使用率上限値を超える状態（ステップＳ５１４，Ｎｏ：空きＣＰＵ使用率≦０）であったため、再び所定の下げる総帯域量（ｍ）だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定がされ、その後のステップＳ２１０Ａの処理で帯域が割り当てられた状態である。これにより、ＣＰＵ使用率がＣＰＵ使用率上限値を下回った状態である。
これにより、図１８（ｄ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ａ、３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図１８（ｃ）で示す帯域よりもさらに狭くなる。
【０１２３】
（Ｔ５の時点）
図１８（ｅ）は、図１７のＴ５の時点における状態であり、端末３０ａへのファイル配信が終了したことにより、帯域回復処理が行われた状態である。ＣＰＵ使用率がＣＰＵ使用率上限値を下回っており（空きＣＰＵ使用率＞０）、Ｔ４の後のステップＳ６０６の処理にて、ステップＳ２０８（及びステップＳ５１６）の処理で、帯域を狭くさせられた端末３０ｂ、３０ｄへ配信中のＴＳファイルに対して、下げた総帯域量を割り当てるように帯域更新の設定がされ、その後のステップＳ６０７の処理で帯域が割り当てられた状態である。
これにより、図１８（ｅ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図１８（ｂ）で示す帯域（下げた総帯域量（Ｍ））まで回復する（帯域が元に戻る）。
【０１２４】
以上のように、本発明によれば、予め、コンテンツ配信装置１０Ｂのスペック等から、ファイルの配信量とＣＰＵ使用率との関係を取得し、（第１実施形態に係る）配信可能な総帯域（最大配信帯域）に基づきＣＰＵ使用率上限値を設定しておく。これにより、新たにファイル配信を要求通りに行うことでＣＰＵ使用率がＣＰＵ使用率上限値を上回ってしまう場合が、第１実施形態における、新たにファイル配信を要求通りに行うことで配信中の各コンテンツの高ビットレート値の総和（配信中総帯域）が配信可能な総帯域（最大配信帯域）を上回ってしまう場合となる。
【０１２５】
一方、ＣＰＵ使用率がＣＰＵ使用率上限値を下回っている場合に、新たなファイル配信要求を受け入れたことにより、ＣＰＵがそのファイルを処理するために必要な空きＣＰＵ使用率があるならば、その新たなファイル配信要求を受け入れることができる。そのため、本発明のコンテンツ配信装置１０Ｂは、最大配信帯域を無駄なく使用することができるという効果が得られる。
【０１２６】
また、配信制御部１１０Ｂは、空きＣＰＵ使用率に基づき、すなわち、現在配信可能な空き配信帯域に基づき、新たなコンテンツのプレイリスト要求を受け付けるため、本発明のコンテンツ配信装置１０Ｂは、最大配信帯域を無駄なく使用することができるという効果が得られる。
【０１２７】
≪第４実施形態≫
第４実施形態に係るコンテンツ配信装置１０Ｃについて説明する。
この第４実施形態では、記憶部１３０とデータの送受信可能にバス１７５（図１９）を介して接続されたインタフェースを監視して、帯域の割り当てを行う。
ここで、第４実施形態に係るコンテンツ配信システム１を構成する各構成部は、第１実施形態における同名称かつ同符号の構成部と同様の処理を行うため、説明を便宜的に省略する。
【０１２８】
≪コンテンツ配信装置１０Ｃ≫
図１９にコンテンツ配信装置１０Ｃの構成を示す。
コンテンツ配信装置１０Ｃは、制御部である配信制御部１１０Ｃ及びコンテンツ管理部１２０と、記憶部１３０と、送受信部１４０と、エンコーダ１５０とを備える。
【０１２９】
制御部である配信制御部１１０Ｃ及びコンテンツ管理部１２０は、例えば、ＣＰＵ（Central Processing Unit）で構成される。各構成部の制御部としての機能は、ＣＰＵが記憶部１３０に格納されるプログラムを展開し、実行することによって実現される。
【０１３０】
（コンテンツ管理部１２０）
コンテンツ管理部１２０は、端末３０から要求されたＴＳファイルやプレイリストＰＬを記憶部１３０から取得し、配信制御部１１０Ｃ（通信制御部１１１）に渡す。このコンテンツ管理部１２０は、バス１７５（ディスクＩ／Ｏ）を介して記憶部１３０からデータを取得する。
【０１３１】
（配信制御部１１０Ｃ）
第４実施形態において、配信制御部１１０Ｃが備える、通信制御部１１１と、通信状態監視部１１２と、帯域制御部１１３Ｃ（バッファ１１４を内蔵）と、さらにディスクＩ／Ｏ状態監視部１７０を備える。
ここで、配信制御部１１０Ｃが備える、通信制御部１１１と、通信状態監視部１１２とは、第１実施形態における同名称の構成部と同様の処理を行うため、説明を便宜的に省略する。
【０１３２】
（ディスクＩ／Ｏ状態監視部１７０）
ディスクＩ／Ｏ状態監視部１７０は、記憶部１３０とデータの送受信可能にバス１７５を介して接続されたインタフェースを監視して、ディスクＩ／Ｏの状態を取得する。
ファイルの送受信において、後記するように記憶部１３０からデータを読み出したり、記憶部１３０にデータを書き込んだりするときの“データ転送速度”と、ファイル送信負荷とは関係する。例えば、配信帯域の幅が狭いときに、配信対象のファイル量が多くなると、制御部１００（ＣＰＵ）と記憶部１３０（ＨＤＤ）とを接続するバスにおける“１秒間のデータ転送量”が高くなり、すなわち、記憶部１３０からデータを読み出す速度が高くなる。そして、配信対象のファイル量を減らすことで、記憶部１３０からデータを読み出す速度が低くなる。
第４実施形態では、このディスクＩ／Ｏの状態に基づき、帯域の割り当てを行う。
【０１３３】
（ディスクＩ／Ｏの状態について）
この「ディスクＩ／Ｏの状態」は、ディスクＩ／Ｏの状態に関係する監視対象から得られるディスクＩ／Ｏの状態を数値化可能な情報（ディスクＩ／Ｏ状態値；リソース使用情報値）である。
第４実施形態において、「ディスクＩ／Ｏの状態」は、記憶部１３０からデータを読み出したり、記憶部１３０にデータを書き込んだりするときの“データ転送速度”とする。つまり、制御部１００（ＣＰＵ）と記憶部１３０（ＨＤＤ）とを接続するバスにおける“１秒間のデータ転送量”である。
【０１３４】
また、「ディスクＩ／Ｏの状態」は、データの読み書きに費やす“データ転送時間”であってもよい。また、「ディスクＩ／Ｏの状態」は、シーク時間やサーチ時間を含んだ“アクセス時間”であってもよい。この場合、シーク時間やサーチ時間は、予め実験で得られた平均時間を用いる。
また、「ディスクＩ／Ｏの状態」は、制御部１００（ＣＰＵ）と記憶部１３０（ＨＤＤ）とを接続するバスのバンド帯使用率（％）であってもよい。
【０１３５】
（帯域制御部１１３Ｃ）
帯域制御部１１３Ｃは、ディスクＩ／Ｏ状態監視部１７０による監視結果（ディスクＩ／Ｏ状態値、ここではデータ転送速度）と、外部装置（図１において、外部装置は端末３０に対応）からの配信要求を受けてＴＳファイルを配信した場合に予想される未来のディスクＩ／Ｏの状態（予測ディスクＩ／Ｏ状態値）とに応じて、帯域更新の設定を行い、通信制御部１１１が割り当てた帯域の広さを通信制御部１１１に変更させたり、プレイリストＰＬの送信許可判定をしたりする制御手段である。
また、帯域制御部１１３Ｃは、一時的にデータを保存するバッファ１１４を内蔵する。バッファ１１４は揮発性の記憶手段であってもよいし、不揮発性の記憶手段であってもよい。  
【０１３６】
コンテンツ配信装置１０Ｃによる、プレイリスト送信処理と、ファイル配信処理とについて図２０〜図２２に示すフローチャートを用いて説明する。
【０１３７】
［プレイリスト送信処理］
図２０は、コンテンツ配信装置のプレイリスト要求を受けた場合の動作のフローチャートである。
まず、端末３０から送受信部１４０がプレイリスト要求を受信したことを通信制御部１１１が検知することで、配信制御部１１０Ｃはプレイリスト送信処理を実行する。
この、端末３０から送受信部１４０が受信したプレイリスト要求を、通信制御部１１１が取得する（ステップＳ１０１）。
【０１３８】
帯域制御部１１３Ｃは、コンテンツ管理部１２０に問い合わせて、プレイリスト要求に基づき、最初に配信されるＴＳファイルのバリエーションのうち、高データ転送レートファイルＦＨのビットレート値をコンテンツ管理部１２０から取得する（ステップＳ１０２）。
帯域制御部１１３Ｃは、その高データ転送レートファイルＦＨ（ＴＳファイル）のビットレート値に応じて、そのＴＳファイルを配信した場合に予想される未来のディスクＩ／Ｏの状態（予測ディスクＩ／Ｏ）を算出する（ステップＳ７０１）。
【０１３９】
そして、帯域制御部１１３Ｃは、ディスクＩ／Ｏ状態監視部１７０から現在のディスクＩ／Ｏ状態値を取得する（ステップＳ７０２）。
そして、帯域制御部１１３Ｃは、コンテンツ配信装置１０Ｃの制御部１００が使用可能なディスクＩ／Ｏ使用上限値（上限リソース使用情報値）（≒最大配信帯域）から現在のディスクＩ／Ｏ状態値を減算して、空きディスクＩ／Ｏ状態値を算出する（ステップＳ７０３）。このディスクＩ／Ｏ使用上限値は、コンテンツ配信装置１０Ｃのスペックに基づくものである。
帯域制御部１１３Ｃは、ステップＳ７０１で取得した予測ディスクＩ／Ｏ状態値と、ステップＳ７０３で算出した空きディスクＩ／Ｏ状態値とを比較する（ステップＳ７０４：予測ディスクＩ／Ｏ状態値＜空きディスクＩ／Ｏ状態値？）。
【０１４０】
予測ディスクＩ／Ｏ状態値の方が大きい場合（ステップＳ７０４，Ｎｏ）、帯域制御部１１３Ｃは、配信不可のメッセージを作成する（ステップＳ１０６）。そして、通信制御部１１１は、プレイリスト要求の送信元（端末３０）を宛先にして、配信不可のメッセージを送受信部１４０に送信させる（ステップＳ１０７）。
これにより、アダプティブストリーミングが中断され、配信制御部１１０Ｃはプレイリスト送信処理を終了する。
【０１４１】
一方、空きディスクＩ／Ｏ状態値の方が大きい場合（ステップＳ７０４，Ｙｅｓ）、帯域制御部１１３Ｃは、プレイリストの送信指示を出力する（ステップＳ１０８）。
これにより、通信制御部１１１は、コンテンツ管理部１２０に問い合わせて、ステップＳ１０１で取得したプレイリスト要求に基づき、プレイリストＰＬをコンテンツ管理部１２０から取得する（ステップＳ１０９）。そして、通信制御部１１１は、プレイリスト要求の送信元（端末３０）を宛先にして、プレイリストＰＬを送受信部１４０に送信させる（ステップＳ１１０）。そして、配信制御部１１０Ｃはプレイリスト送信処理を終了する。
これにより、端末３０はプレイリストＰＬを取得することができる。
【０１４２】
［ファイル配信処理］
図２１（図２１Ａ及び図２１Ｂ）はコンテンツ配信装置の配信要求を受けた場合のファイル配信処理のフローチャートである。そして、図２２は図２１のステップＳ２０８及びステップＳ８１６で狭くした帯域を元に戻す帯域回復処理のフローチャートである。
まず、端末３０から送受信部１４０がファイル配信要求を受信したことを通信制御部１１１が検知することで、配信制御部１１０Ｃはファイル配信処理を実行する。
この、端末３０から送受信部１４０が受信したファイル配信要求を、配信制御部１１０Ｃ（通信制御部１１１）が取得する（ステップＳ２０１）。
帯域制御部１１３Ｃは、コンテンツ管理部１２０に問い合わせて、ファイル配信要求に基づき、要求されたＴＳファイルのビットレート値をコンテンツ管理部１２０から取得する（ステップＳ２０２）。
このとき、コンテンツ管理部１２０は、通信制御部１１１からＵＲＩを受け取り、そのＵＲＩで示される記憶部１３０の場所にあるＴＳファイルのビットレート値を取得し、通信制御部１１１に渡す。
【０１４３】
帯域制御部１１３Ｃは、そのＴＳファイルのビットレート値に応じて、そのＴＳファイルを配信した場合に予想される未来のディスクＩ／Ｏ状態値（予測ディスクＩ／Ｏ状態値）を算出する（ステップＳ８０１）。
【０１４４】
そして、帯域制御部１１３Ｃは、ディスクＩ／Ｏ状態監視部１７０から現在のディスクＩ／Ｏ状態値を取得する（ステップＳ８０２）。
そして、帯域制御部１１３Ｃは、使用可能なディスクＩ／Ｏ使用上限値（≒最大配信帯域）から現在のディスクＩ／Ｏ状態値を減算して、空きディスクＩ／Ｏ状態値を算出する（ステップＳ８０３）。
帯域制御部１１３Ｃは、ステップＳ８０２で取得した予測ディスクＩ／Ｏ状態値と、ステップＳ８０３で算出した空きディスクＩ／Ｏ状態値とを比較する（ステップＳ８０４：予測ディスクＩ／Ｏ状態値≦空きディスクＩ／Ｏ状態値？）。
【０１４５】
予測ディスクＩ／Ｏ状態値＜空きディスクＩ／Ｏ状態値の場合（ステップＳ８０４，Ｙｅｓ）、後記するステップＳ２０９の処理を実行する。
【０１４６】
一方、予測ディスクＩ／Ｏ状態値＞空きディスクＩ／Ｏ状態値の場合（ステップＳ８０４，Ｎｏ）、帯域制御部１１３Ｃは、所定の下げる総帯域量を決める（ステップＳ８０５）。
【０１４７】
帯域制御部１１３Ｃは、通信状態監視部１１２から、高ビットレート値で配信中のＴＳファイル（高データ転送レートファイルＦＨ）の情報を取得する。このとき、配信要求されたＴＳファイルの（ステップＳ２０２で取得した）ビットレート値が高ビットレート値であれば、当該配信要求されたＴＳファイルも高データ転送レートファイルＦＨとして扱い、高データ転送レートファイルＦＨと同じ広さの帯域が割り当てられるものとして扱う。
【０１４８】
そして、帯域制御部１１３Ｃは、所定の下げる総帯域量だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定をする（ステップＳ２０８）。例えば、帯域制御部１１３Ｃは、所定の下げる総帯域量を高データ転送レートファイルＦＨの数で除算した値の分だけ、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を狭くさせる。
その後、帯域制御部１１３Ｃは、下げた総帯域量（ｍ）をバッファ１１４に記憶させる（ステップＳ８０６）。ここで、以前の処理で下げた総帯域量（ｍ）がバッファ１１４に記憶されていれば（クリアされずにまだ残っていれば）加算する（Ｍ＝Ｍ＋ｍ）。
【０１４９】
通信制御部１１１は、コンテンツ管理部１２０に問い合わせて、要求されたＴＳファイルをコンテンツ管理部１２０から取得する（ステップＳ２０９）。
このとき、コンテンツ管理部１２０は、通信制御部１１１からＵＲＩを受け取り、そのＵＲＩで示される記憶部１３０の場所にあるＴＳファイルを取得し、通信制御部１１１に渡す。
【０１５０】
そして、通信制御部１１１は帯域の割り当てを行う。このとき、帯域制御部１１３Ｃが帯域更新の設定をしていれば（ステップＳ２０８参照）、通信制御部１１１はその帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ２１０Ａ）。
そして、通信制御部１１１は、ファイル配信要求の送信元（端末３０）を宛先にして、取得したＴＳファイルを送受信部１４０に送信（配信）させる（ステップＳ２１１）。
【０１５１】
帯域制御部１１３Ｃは、再びディスクＩ／Ｏ状態監視部１７０から現在のディスクＩ／Ｏ状態値を取得する（ステップＳ８１２）。
そして、帯域制御部１１３Ｃは、使用可能なディスクＩ／Ｏ使用上限値（≒最大配信帯域）から現在のディスクＩ／Ｏ状態値を減算して、空きディスクＩ／Ｏ状態値を算出する（ステップＳ８１３）。
帯域制御部１１３Ｃは、ステップＳ８１３で算出した空きディスクＩ／Ｏ状態値の値が０より大きいか否かを判定する（ステップＳ８１４：空きディスクＩ／Ｏ状態値＞０？）。
【０１５２】
ディスクＩ／Ｏの状態に余裕があれば（空きディスクＩ／Ｏ状態値＞０）（ステップＳ８１４，Ｙｅｓ）、そのままの帯域で送受信部１４０に次からのＴＳファイルの送信（配信）を続けさせて、配信制御部１１０Ｃはファイル配信処理を終了する。これにより、端末３０は要求したバリエーションのＴＳファイルを取得することができる。
【０１５３】
一方、ディスクＩ／Ｏの状態に余裕がなく、不足していれば（空きディスクＩ／Ｏ状態値≦０）（ステップＳ８１４，Ｎｏ）、帯域制御部１１３Ｃは、再び所定の下げる総帯域量（ｍ）を決める（ステップＳ８１５）。
【０１５４】
帯域制御部１１３Ｃは、通信状態監視部１１２から、高ビットレート値で配信中のＴＳファイル（高データ転送レートファイルＦＨ）の情報を取得する。
そして、帯域制御部１１３Ｃは、所定の下げる総帯域量だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定をする（ステップＳ８１６）。
【０１５５】
帯域制御部１１３Ｃは、下げた総帯域量（ｍ）をバッファ１１４に記憶された下げた総帯域量（Ｍ）に加算して記憶させる（Ｍ＝Ｍ＋ｍ）（ステップＳ８１７）。
【０１５６】
そして、通信制御部１１１はコンテンツ管理部１２０から次のＴＳファイルを取得したタイミングで再度帯域の割り当てを行う。通信制御部１１１はステップＳ８１６の帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ８１８）。
そして、通信制御部１１１は、ファイル配信要求の送信元（端末３０）を宛先にして、取得したＴＳファイルを送受信部１４０に送信（配信）させる（ステップＳ８１９）。そして、ステップＳ８１４に戻る。
【０１５７】
ステップＳ８１４〜ステップＳ８１９の処理を繰り返すことで、所定の下げる総帯域量の分、徐々に使用総帯域が狭くなる。つまり、端末３０に配信するデータ量が減る。これにより、記憶部１３０からデータを取得する量が減り、制御部１００（ＣＰＵ）と記憶部１３０（ＨＤＤ）とを接続するバスにおけるデータ送受信量が減るため、ディスクＩ／Ｏ状態値が下がり、ディスクＩ／Ｏ状態値に空きができる。
【０１５８】
以上のように、ステップＳ２０８及びステップＳ８１６の処理により、ステップＳ２１０Ａの処理にて、帯域更新の設定に応じて、ＴＳファイルそれぞれに割り当てられる帯域が変更される。
ここで、帯域が不足せずに、余裕を持って帯域が割り当てられて配信されている場合、ステップＳ２０９で取得した要求されたＴＳファイルは、ステップＳ８０４でＹｅｓと判定された後、ステップＳ２１０Ａの処理にて、ステップＳ２０２で取得したビットレート値に応じた帯域が割り当てられることになる。
【０１５９】
［帯域回復処理］
図２２は、ステップＳ２０８及びステップＳ８１６で狭くした帯域を元に戻す帯域回復処理のフローチャートである。この帯域回復処理は、ファイル配信処理（図２１）のステップＳ２１１の処理により、送受信部１４０が複数のＴＳファイルで構成される１つのビットレートファイルを送信（配信）した後で行われる。すなわち、このビットレートファイルを送信（配信）し終えたことで、帯域にその分の余裕（空き）ができた状態である。
【０１６０】
まず、帯域制御部１１３Ｃは、下げた総帯域量（Ｍ）がバッファ１１４に記憶されているか否かを判定する（ステップＳ９０１）。この下げた総帯域量（Ｍ）は、ステップＳ２０７やステップＳ２０７（図２１）の処理でバッファ１１４に記憶されるものである。
記憶されていない場合（ステップＳ９０１，Ｎｏ）は、帯域回復処理を終了する。
【０１６１】
一方、記憶されている場合（ステップＳ９０１，Ｙｅｓ）、帯域制御部１１３Ｃは、バッファ１１４から下げた総帯域量（Ｍ）を取得する（ステップＳ９０２）。
帯域制御部１１３Ｃは、ディスクＩ／Ｏ状態監視部１７０から現在のディスクＩ／Ｏ状態値を取得する（ステップＳ９０３）。
そして、帯域制御部１１３Ｃは、使用可能なディスクＩ／Ｏ使用上限値（≒最大配信帯域）から現在のディスクＩ／Ｏ状態値を減算して、空きディスクＩ／Ｏ状態値を算出する（ステップＳ９０４）。
帯域制御部１１３Ｃは、ステップＳ９０４で算出した空きディスクＩ／Ｏ状態値の値が０より大きいか否かを判定する（ステップＳ９０５：空きディスクＩ／Ｏ状態値＞０？）。
ディスクＩ／Ｏの状態に余裕がなく、不足していれば（空きディスクＩ／Ｏ状態値≦０）（ステップＳ９０５，Ｎｏ）、帯域回復処理を終了する。
【０１６２】
一方、ディスクＩ／Ｏの状態に余裕があれば（空きディスクＩ／Ｏ状態値＞０）（ステップＳ９０５，Ｙｅｓ）、帯域制御部１１３Ｃは、ステップＳ２０８及びステップＳ８１６の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域について、下げた総帯域量（Ｍ）を戻すように帯域を割り当て直し、帯域更新の設定をする（ステップＳ９０６）。そして、バッファ１１４に記憶された下げた総帯域量（Ｍ）をクリア（Ｍ＝０）する。その後、通信制御部１１１は、帯域制御部１１３Ｃがした帯域更新の設定に応じて、帯域の割り当てを行う（ステップＳ９０７）。これにより、ステップＳ２０８及びステップＳ８１６の処理で、高データ転送レートファイルＦＨそれぞれに対して一様に狭くさせた帯域を元に戻す（回復する）ことができる。
そして、帯域回復処理を終了する。
【０１６３】
以上のように、ステップＳ９０６の処理により、ステップＳ２１０Ａの処理にて、帯域更新の設定に応じて、ＴＳファイルそれぞれに割り当てられる帯域が変更される。
【０１６４】
≪タイムチャート≫
図２３及び図２４を用いて、図２１のファイル配信処理及び図２２の帯域回復処理による帯域の割り当て、帯域の回復が行われることによるディスクＩ／Ｏの状態の変化について説明する。
図２３は、コンテンツ配信装置１０Ｃが備えるバス１７５（と接続するインタフェース）のディスクＩ／Ｏ状態値の変化を示すタイムチャートである。図２４は、図２３におけるＴ１〜Ｔ５の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに割り当てられた帯域の広さを示している。
【０１６５】
Ｔ１は初期状態、Ｔ２は端末３０ｂから新規に高データ転送レートファイルＦＨのファイル配信要求があり、このままではＣＰＵ使用率がＣＰＵ使用率上限値を超えると判定したとき、Ｔ３は所定の下げる総帯域量だけ帯域を狭くしたとき、Ｔ４はさらに所定の下げる総帯域量だけ帯域を狭くしたとき、Ｔ５は端末３０ａに配信していた高データ転送レートファイルＦＨのファイルの配信が終了したため、下げていた総帯域量を戻して、各高データ転送レートファイルＦＨの送信に割り当てられていた帯域を元に戻したときを示している。
【０１６６】
図２３において、ディスクＩ／Ｏ状態値を実線で、ディスクＩ／Ｏ使用上限値を一点鎖線で、Ｔ２の時点で新規のファイル配信要求に応じて高データ転送レートファイルＦＨを配信した場合のディスクＩ／Ｏ状態値を破線で示している。また、Ｔ５の時点で高データ転送レートファイルＦＨの配信が終了し、帯域を回復しなかった場合のディスクＩ／Ｏ状態値を破線で示している。
【０１６７】
（Ｔ１の時点）
図２４（ａ）は、図２３のＴ１の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに対して、ＴＳファイルを配信するために割り当てられた帯域の広さを示しており、端末３０ａ及び端末３０ｄには広い帯域が割り当てられ、端末３０ｂ及び端末３０ｃには狭い帯域が割り当てられている状態である。これは、端末３０ａ及び端末３０ｄには高データ転送レートファイルＦＨが配信され、端末３０ｂ及び端末３０ｃには低データ転送レートファイルＦＬが配信されているためである。
【０１６８】
（Ｔ２の時点）
図２４（ｂ）は、図２３のＴ２の時点における状態であり、端末３０ｂへのファイル配信が終了し、新たなファイル配信要求が来た状態である。端末３０ｂからの新たなファイル配信要求で要求されたＴＳファイルのビットレート値が大きいため（高データ転送レートファイルＦＨ）、ステップＳ８０４の処理で、予測ディスクＩ／Ｏ状態値＞空きディスクＩ／Ｏ状態値（ステップＳ８０４，Ｎｏ）に判定される状態である。このビットレート値に応じて帯域を確保すると、ディスクＩ／Ｏのデータ送受信量が増えすぎて、ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を超えることを×印と破線で示している。すなわち、このビットレート値に応じて帯域を確保すると、配信中総帯域が最大配信帯域を超えてしまう可能性が高い。
【０１６９】
（Ｔ３の時点）
図２４（ｃ）は、図２３のＴ３の時点における状態であり、Ｔ２の後のステップＳ２０８（及びステップＳ８１６）の処理で、端末３０ａ、３０ｂ、３０ｄへ高データ転送レートファイルＦＨを配信するために割り当てられた帯域に対して、所定の下げる総帯域量（ｍ）だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定がされ、その後のステップＳ２１０Ａの処理で帯域が割り当てられた状態である。
これにより、図２４（ｃ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ａ、３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図２４（ｂ）で示す帯域よりも狭くなる。
【０１７０】
（Ｔ４の時点）
図２４（ｄ）は、図２３のＴ４の時点における状態であり、未だにディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を超える状態（ステップＳ８１４，Ｎｏ：空きディスクＩ／Ｏ状態値≦０）であったため、再び所定の下げる総帯域量（ｍ）だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定がされ、その後のステップＳ２１０Ａの処理で帯域が割り当てられた状態である。これにより、ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を下回った状態である。
これにより、図２４（ｄ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ａ、３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図２４（ｃ）で示す帯域よりもさらに狭くなる。
【０１７１】
（Ｔ５の時点）
図２４（ｅ）は、図２３のＴ５の時点における状態であり、端末３０ａへのファイル配信が終了したことにより、帯域回復処理が行われた状態である。ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を下回っており（空きディスクＩ／Ｏ状態値＞０）、Ｔ４の後のステップＳ９０６の処理にて、ステップＳ２０８（及びステップＳ８１６）の処理で、帯域を狭くさせられた端末３０ｂ、３０ｄへ配信中のＴＳファイルに対して、下げた総帯域量を割り当てるように帯域更新の設定がされ、その後のステップＳ９０７の処理で帯域が割り当てられた状態である。
これにより、図２４（ｅ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ｂ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図２４（ｂ）で示す帯域（下げた総帯域量（Ｍ））まで回復する（帯域が元に戻る）。
【０１７２】
以上のように、本発明によれば、予め、コンテンツ配信装置１０Ｃのスペック等から、ファイルの配信量とディスクＩ／Ｏ状態値との関係を取得し、（第１実施形態に係る）配信可能な総帯域（最大配信帯域）に基づきディスクＩ／Ｏ使用上限値を設定しておく。これにより、新たにファイル配信を要求通りに行うことでディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を上回ってしまう場合が、第１実施形態における、新たにファイル配信を要求通りに行うことで配信中の各コンテンツの高ビットレート値の総和（配信中総帯域）が配信可能な総帯域（最大配信帯域）を上回ってしまう場合となる。
【０１７３】
一方、ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を下回っている場合に、新たなファイル配信要求を受け入れたことにより、記憶部１３０からそのファイルを読み出すために必要な空きディスクＩ／Ｏ状態値があるならば、その新たなファイル配信要求を受け入れることができる。そのため、本発明のコンテンツ配信装置１０Ｃは、最大配信帯域を無駄なく使用することができるという効果が得られる。
【０１７４】
また、配信制御部１１０Ｃは、空きディスクＩ／Ｏ状態値に基づき、すなわち、現在配信可能な空き配信帯域に基づき、新たなコンテンツのプレイリスト要求を受け付けるため、本発明のコンテンツ配信装置１０Ｃは、最大配信帯域を無駄なく使用することができるという効果が得られる。
【０１７５】
≪第５実施形態≫
第５実施形態に係るコンテンツ配信装置１０Ｄについて説明する。
この第５実施形態では、記憶部１３０とデータの送受信可能にバス１７５（図２６）を介して接続されたインタフェースを監視して、帯域の割り当てを行う。
【０１７６】
≪コンテンツ配信システム１≫
図２５に示すように、第５実施形態におけるコンテンツ配信システム１は、第４実施形態と同様に、コンテンツ配信装置１０Ｄと、複数の端末３０（３０ａ、３０ｂ、３０ｃ、３０ｄ、・・・）と、さらに、コンテンツ変換装置４０を備える。そして、コンテンツ配信装置１０Ｄは、ネットワーク２０を介してコンテンツ変換装置４０とも通信可能に接続される。
ここで、第４実施形態に係るコンテンツ配信システム１を構成する構成部と同名称かつ同符号の構成部は、第４実施形態における処理と同様の処理を行うため、説明を便宜的に省略する。
【０１７７】
（コンテンツ変換装置４０）
コンテンツ変換装置４０は、映像コンテンツであるファイル（映像コンテンツ）をコンテンツ配信装置１０Ｄに供給する装置である。これにより、コンテンツ配信装置１０Ｄは、記憶部１３０に映像コンテンツを蓄積することができ、このファイルを各端末３０にアダプティブストリーミングで配信する。
【０１７８】
このコンテンツ変換装置４０は、コンテンツ配信装置１０Ｄにファイル（映像コンテンツ）の書き込み要求を送信し、コンテンツ配信装置１０Ｄによりその要求の許可を得てから、ファイルをコンテンツ配信装置１０Ｄに送信する。
【０１７９】
≪コンテンツ配信装置１０Ｄ≫
図２６にコンテンツ配信装置１０Ｄの構成を示す。
コンテンツ配信装置１０Ｄは、制御部である配信制御部１１０Ｄ及びコンテンツ管理部１２０Ｄと、記憶部１３０と、送受信部１４０と、エンコーダ１５０とを備える。
【０１８０】
制御部である配信制御部１１０Ｄ及びコンテンツ管理部１２０Ｄは、例えば、ＣＰＵ（Central Processing Unit）で構成される。各構成部の制御部としての機能は、ＣＰＵが記憶部１３０に格納されるプログラムを展開し、実行することによって実現される。
【０１８１】
（コンテンツ管理部１２０Ｄ）
コンテンツ管理部１２０Ｄは、端末３０から要求されたＴＳファイルやプレイリストＰＬを記憶部１３０から取得し、配信制御部１１０Ｄ（通信制御部１１１）に渡す。このコンテンツ管理部１２０Ｄは、バス１７５（ディスクＩ／Ｏ）を介して記憶部１３０からデータを取得する。
【０１８２】
また、コンテンツ管理部１２０Ｄは、コンテンツ変換装置４０（図２５）からのファイルの書き込み要求に対して後記する書込要求対応部１８０が許可した場合に、書込要求対応部１８０からファイル（映像コンテンツ）を受け取り、ファイル毎にＵＲＩを生成する。そして、そのファイルを記憶部１３０に記憶させる。すなわち、コンテンツ変換装置４０からは、高データ転送レートファイルＦＨ、中データ転送レートファイルＦＭ、低データ転送レートファイルＦＬが映像コンテンツとして送信される。
【０１８３】
（配信制御部１１０Ｄ）
第５実施形態において、配信制御部１１０Ｄは、通信制御部１１１と、通信状態監視部１１２と、帯域制御部１１３Ｄ（バッファ１１４を内蔵）と、ディスクＩ／Ｏ状態監視部１７０と、さらに書込要求対応部１８０を備える。
ここで、配信制御部１１０Ｄは、通信制御部１１１と、通信状態監視部１１２とは、第４実施形態における同名称の構成部と同様の処理を行うため、説明を便宜的に省略する。
【０１８４】
（ディスクＩ／Ｏ状態監視部１７０）
ディスクＩ／Ｏ状態監視部１７０は、記憶部１３０とデータの送受信可能にバス１７５を介して接続されたインタフェースを監視して、ディスクＩ／Ｏの状態を取得する。
第５実施形態では、このディスクＩ／Ｏの状態に基づき、帯域の割り当てを行う。第５実施形態において、「ディスクＩ／Ｏの状態」は、記憶部１３０からデータを読み出したり、記憶部１３０にデータを書き込んだりするときの“データ転送速度”とする。つまり、制御部１００（ＣＰＵ）と記憶部１３０（ＨＤＤ）とを接続するバスにおける“１秒間のデータ転送量”である。
【０１８５】
（ディスクＩ／Ｏの状態について）
この「ディスクＩ／Ｏの状態」は、第４実施形態で説明したようにディスクＩ／Ｏの状態に関係する監視対象から得られるディスクＩ／Ｏの状態を数値化可能な情報（ディスクＩ／Ｏ状態値）である。
【０１８６】
（書込要求対応部１８０）
書込要求対応部１８０は、ファイルの書き込み要求があった場合に、ディスクＩ／Ｏの状態から、そのファイルをＨＤＤに書き込む際に要する分を確保する構成部である。
【０１８７】
第５実施形態において、この書込要求対応部１８０は、ファイルの書き込み要求を解析して、データ量やコンテンツ配信装置１０のスペック等に基づき、そのファイルをＨＤＤに書き込む際に要するディスクＩ／Ｏの状態（予約ディスクＩ／Ｏ状態値）を予測し、ディスクＩ／Ｏ使用上限値（≒最大配信帯域）を（強制的に）下げる。これにより、必要な分を確保することができる。
【０１８８】
また、書込要求対応部１８０は、ディスクＩ／Ｏの状態に基づき、ファイルの書き込み要求を受けるか否か（許可/拒否）を判定する機能を有する。この判定は、コンテンツ変換装置４０からファイル（映像コンテンツ）の書き込み要求を受けてから、所定時間内に、現在配信中のビットレートファイルの配信が終了する等して、ファイル（映像コンテンツ）をＨＤＤに書き込む際に要する分（予約ディスクＩ／Ｏ状態値）を確保できたか否かを判定する。確保できた場合に、ファイルの書き込み要求を許可し、コンテンツ変換装置４０からファイル（映像コンテンツ）の供給を受ける。
【０１８９】
また、書込要求対応部１８０は、コンテンツ変換装置４０から送信されたファイル（映像コンテンツ）をコンテンツ管理部１２０Ｄに渡す。これにより、コンテンツ管理部１２０Ｄによりファイルが記憶部１３０に記憶される。
【０１９０】
（帯域制御部１１３Ｄ）
帯域制御部１１３Ｄは、ディスクＩ／Ｏ状態監視部１７０による監視結果（ディスクＩ／Ｏ状態値、ここではデータ転送速度）と、外部装置（図２５において、外部装置は端末３０に対応）からの配信要求を受けてＴＳファイルを配信した場合に予想される未来のディスクＩ／Ｏの状態（予測ディスクＩ／Ｏ状態値）とに応じて、帯域更新の設定を行い、通信制御部１１１が割り当てた帯域の広さを通信制御部１１１に変更させたり、プレイリストＰＬの送信許可判定をしたりする制御手段である。
また、帯域制御部１１３Ｄは、一時的にデータを保存するバッファ１１４を内蔵する。バッファ１１４は揮発性の記憶手段であってもよいし、不揮発性の記憶手段であってもよい。
【０１９１】
コンテンツ配信装置１０Ｄによる、プレイリスト送信処理（図２１）と、ファイル配信処理（図２２）と、帯域回復処理（図２３）とについては、第４実施形態における各構成部と同様の処理を行うため、説明を便宜的に省略する。
【０１９２】
［書込要求受信処理］
図２７は、コンテンツ変換装置４０からファイルの書き込み要求を受信することで実行される書込要求受信処理のフローチャートである。
まず、コンテンツ変換装置４０（図２５）から送受信部１４０がファイル（映像コンテンツ）の書き込み要求を受信したことを通信制御部１１１が検知することで、配信制御部１１０Ｄ（書込要求対応部１８０）は書込要求受信処理を実行する。
この、コンテンツ変換装置４０から送受信部１４０が受信したファイルの書き込み要求を、通信制御部１１１が取得する（ステップＳ１１０１）。
【０１９３】
書込要求対応部１８０は、ファイルの書き込み要求を解析して、そのファイルをＨＤＤに書き込む際に要する予約ディスクＩ／Ｏ状態値を予測する（ステップＳ１１０２）。
そして、書込要求対応部１８０は、ディスクＩ／Ｏ使用上限値（≒最大配信帯域）から予約ディスクＩ／Ｏ状態値の分を（強制的に）下げる（ステップＳ１１０３）。
書込要求対応部１８０は、ディスクＩ／Ｏ状態監視部１７０から現在の使用中ディスクＩ／Ｏ状態値を取得する（ステップＳ１１０４）。
【０１９４】
書込要求対応部１８０は、予約ディスクＩ／Ｏ状態値の分を下げる前のディスクＩ／Ｏ使用上限値から使用中ディスクＩ／Ｏ状態値を減算して、空きディスクＩ／Ｏ状態値を算出する（ステップＳ１１０５）。
書込要求対応部１８０は、ステップＳ１１０２で予測した予約ディスクＩ／Ｏ状態値と、ステップＳ１１０５で算出した空きディスクＩ／Ｏ状態値とを比較する（ステップＳ１１０６：空きディスクＩ／Ｏ状態値＞予約ディスクＩ／Ｏ状態値？）。
【０１９５】
空きディスクＩ／Ｏ状態値の方が大きい場合（ステップＳ１１０６，Ｙｅｓ）、すなわち、ファイル（映像コンテンツ）を書き込むためのディスクＩ／Ｏ状態値が確保できたこととなるため、書込要求対応部１８０は、書き込み要求を許可して（ステップＳ１１０７）、配信許可のメッセージを作成する。そして、通信制御部１１１は、ファイルの書き込み要求の送信元（コンテンツ変換装置４０）を宛先にして、配信許可のメッセージを送受信部１４０に送信させる（ステップＳ１１０８）。そして、書込要求受信処理を終了する。
その後、コンテンツ変換装置４０からファイル（映像コンテンツ）が送信されて、後記するファイル書込処理（図２８）が実行される。
【０１９６】
一方、予約ディスクＩ／Ｏ状態値の方が大きい場合（ステップＳ１１０６，Ｎｏ）、書込要求対応部１８０は、ファイルの書き込み要求を受信してからの時間が、所定時間内であるか否かを判定する（ステップＳ１１０９）。
【０１９７】
所定時間内であれば（ステップＳ１１０９，Ｙｅｓ）、ステップＳ１１０４に戻る。このループ処理は、所定時間内に、配信中のビットレートファイルを構成する最後のＴＳファイルの配信が終了したことにより、帯域にその分の余裕ができた状態（帯域回復処理（図２２）実行前における）となることで、空きディスクＩ／Ｏ状態値が増えることを期待して待機する処理である。
【０１９８】
一方、所定時間を超えたのであれば（ステップＳ１１０９，Ｎｏ）、書込要求対応部１８０は、ディスクＩ／Ｏ使用上限値（≒最大配信帯域）を元に戻す（下げた予約ディスクＩ／Ｏ状態値の分を戻す）（ステップＳ１１１０）。そして、書込要求対応部１８０は、書き込み要求を拒否して（ステップＳ１１１１）、受信拒否のメッセージを作成する。その後、通信制御部１１１は、ファイルの書き込み要求の送信元（コンテンツ変換装置４０）を宛先にして、受信拒否のメッセージを送受信部１４０に送信させる（ステップＳ１１１２）。そして、書込要求受信処理を終了する。
【０１９９】
［ファイル書込処理］
図２８は、コンテンツ変換装置４０からファイルを受信することで実行されるファイル書込処理のフローチャートである。
まず、コンテンツ変換装置４０（図２５）から送受信部１４０がファイル（映像コンテンツ）を受信したことを通信制御部１１１が検知することで、配信制御部１１０Ｄ（書込要求対応部１８０）はファイル書込処理を実行する。
【０２００】
書込要求対応部１８０は、受信したファイルを順番にコンテンツ管理部１２０Ｄに渡す（ステップＳ２１０１）。
コンテンツ管理部１２０Ｄは、書込要求対応部１８０からファイルを順番に受け取り、ファイル毎にＵＲＩを生成する。そして、そのファイルを記憶部１３０に記憶させる（ステップＳ２１０２）。
【０２０１】
その後、通信制御部１１１が、ファイルの送信元（コンテンツ変換装置４０）からファイルを最後まで受信したこと（ステップＳ２１０３）で、書込要求対応部１８０は、書込要求受信処理（図２７）のステップＳ１１０３で下げた予約ディスクＩ／Ｏ状態値の分を戻して、ディスクＩ／Ｏ使用上限値（≒最大配信帯域）を元に戻す（ステップＳ２１０４）。そして、ファイル書込処理を終了する。
【０２０２】
≪タイムチャート≫
図２９及び図３０を用いて、図２７の書込要求受信処理及び図２８のファイル書込処理によるファイル（映像コンテンツ）を書き込むためのディスクＩ／Ｏ状態値の確保、書き込み完了後のディスクＩ／Ｏ使用上限値の回復が行われることによるディスクＩ／Ｏの状態の変化について説明する。
図２９は、コンテンツ配信装置１０Ｄが備えるバス１７５（と接続するインタフェース）のディスクＩ／Ｏ状態値の変化を示すタイムチャートである。図３０は、図２９におけるＴ１〜Ｔ５の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに割り当てられた帯域の広さを示している。
Ｔ１は初期状態、Ｔ１．１は書き込み要求を受信したとき（ファイルを書き込むために必要な空きディスクＩ／Ｏ状態値を確保できなかった）、Ｔ２はＴＳファイルの送信タイミングがきたとき（不足分帯域が発生）、Ｔ３は所定の下げる総帯域量だけ帯域を狭くしたとき、Ｔ３．１は書き込み要求を許可したとき（ファイルの書き込み開始）、Ｔ３．２はファイルの書き込みが完了したとき、それぞれの時点におけるディスクＩ／Ｏ状態値を示している。
【０２０３】
（Ｔ１の時点）
図３０（ａ）は、図２９のＴ１の時点における端末３０ａ、３０ｂ、３０ｃ、３０ｄそれぞれに対して、ＴＳファイルを配信するために割り当てられた帯域の広さを示しており、端末３０ａ及び端末３０ｄには広い帯域が割り当てられ、端末３０ｂ及び端末３０ｃには狭い帯域が割り当てられている状態である。これは、端末３０ａ及び端末３０ｄには高データ転送レートファイルＦＨが配信され、端末３０ｂ及び端末３０ｃには低データ転送レートファイルＦＬが配信されているためである。
（Ｔ１．１の時点）
図２９のＴ１．１の時点は、コンテンツ変換装置４０からファイル（映像コンテンツ）の書き込み要求を受信して、ディスクＩ／Ｏ使用上限値から予約ディスクＩ／Ｏ状態値の分を（強制的に）下げた状態である。このとき、ファイルを書き込むために必要な空きディスクＩ／Ｏ状態値を確保できなかったため、ループ処理が実行されている状態である。
【０２０４】
（Ｔ２の時点）
図２９のＴ２の時点は、（データ転送レートファイルを構成する）１つのＴＳファイルの配信が終了した状態である。このとき、ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を上回っているため、ステップＳ８０４の処理（予測ディスクＩ／Ｏ状態値≦空きディスクＩ／Ｏ状態値？）で、予測ディスクＩ／Ｏ状態値の方が大きい場合（ステップＳ８０４，Ｎｏ）に判定される状態である。このビットレート値に応じて帯域を確保すると、ディスクＩ／Ｏのデータ送受信量が増えすぎて、ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を超えることを×印と破線で示している。すなわち、このビットレート値に応じて帯域を確保すると、配信中総帯域が最大配信帯域を超えてしまう可能性が高い。
【０２０５】
（Ｔ３の時点）
図３０（ｃ）は、図２９のＴ３の時点における状態であり、Ｔ２の後のステップＳ２０８（及びステップＳ８１６）の処理で、端末３０ａ、３０ｄへ高データ転送レートファイルＦＨを配信するために割り当てられた帯域に対して、所定の下げる総帯域量（ｍ）だけ下がるように、高データ転送レートファイルＦＨそれぞれに割り当てられた帯域を一様に狭くさせる帯域更新の設定がされ、その後のステップＳ２１０Ａの処理で帯域が割り当てられた状態である。
これにより、図３０（ｃ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ａ、３０ｄに対して、ファイル配信に割り当てられた帯域は、図３０（ｂ）で示す帯域よりも狭くなる。
【０２０６】
（Ｔ３．１の時点）
図２９のＴ３．１の時点は、ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を下回った状態である。これにより、ファイル（映像コンテンツ）を書き込むための空きディスクＩ／Ｏ状態値が確保できたこととなり、書き込み要求が許可されて、コンテンツ変換装置４０に配信許可のメッセージが送信される。これにより、ファイル（映像コンテンツ）の書き込みが開始される。
【０２０７】
（Ｔ３．２の時点）
図２９のＴ３．２の時点は、ファイル（映像コンテンツ）の書き込みが完了したことにより、Ｔ１．１の時点で下げた予約ディスクＩ／Ｏ状態値の分を戻して、ディスクＩ／Ｏ使用上限値が元に戻った状態である（図２８のステップＳ２１０４）。そして、ファイル書込処理が終了する。
【０２０８】
（Ｔ５の時点）
図３０（ｄ）は、図２９のＴ５の時点における状態であり、端末３０ａへのファイル配信が終了したことにより、帯域回復処理が行われた状態である。ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を下回っており（空きディスクＩ／Ｏ状態値＞０）、Ｔ４の後のステップＳ９０５の処理にて、ステップＳ２０８（及びステップＳ８１６）の処理で、帯域を狭くさせられた端末３０ｂ、３０ｄへ配信中のＴＳファイルに対して、下げた総帯域量（ｍ）を割り当てるように帯域更新の設定がされ、その後のステップＳ９０６の処理で帯域が割り当てられた状態である。
これにより、図３０（ｅ）に示すように、高データ転送レートファイルＦＨが配信される端末３０ｄに対して、ファイル配信に割り当てられた帯域は、図３０（ｂ）で示す帯域（下げた総帯域量（Ｍ））まで回復する（帯域が元に戻る）。
【０２０９】
（Ｔ６の時点）
図３０（ｅ）は、図２９のＴ６の時点における状態であり、端末３０ａからのファイル配信要求を受けて、端末３０ａへ高データ転送レートファイルＦＨを配信するために、帯域が割り当てられた状態である。ファイル書込処理が完了しているため、下げた予約ディスクＩ／Ｏ状態値の分が戻っており、ディスクＩ／Ｏの状態は、ディスクＩ／Ｏ使用上限値の限度まで利用可能になっている。
【０２１０】
以上のように、第５実施形態によれば、コンテンツ変換装置４０からファイル（映像コンテンツ）の書き込み要求があった場合でも、ファイルの書き込みと、ファイルの読み出し（ファイル配信）との双方を行うことができる。
【０２１１】
以上、本発明の実施形態について説明したが、本発明は前記した実施形態に限定されず、適宜変更して実施することが可能である。
例えば、通信制御部１１１が備える帯域制御機能の一部もしくは全てを、帯域制御部１１３が備えてもよい。これにより、帯域更新の設定を行わずとも、帯域制御部１１３は必要に応じて帯域を更新することができる。
【０２１２】
第１の実施形態において、帯域制御部１１３は、ステップＳ２０８の処理にて、帯域更新の設定をする際に、割り当てられた帯域を狭くする対象を、高データ転送レートファイルＦＨだけにしているが、高データ転送レートファイルＦＨに割り当てられた帯域を狭くするだけでは不足分帯域を補えない場合は、中データ転送レートファイルＦＭも対象としてもよい。
【０２１３】
また、第１の実施形態において、ステップＳ２０８の処理では、配信中総帯域が最大配信帯域以下となるように、ファイルそれぞれに割り当てられた帯域を狭くさせる帯域更新の設定がされればよい。そのため、帯域更新の設定をする際に、割り当てられた帯域を狭くする対象を、高データ転送レートファイルＦＨだけでなく、中データ転送レートファイルＦＭ及び低データ転送レートファイルＦＬをも含めた配信中のファイルすべてを対象とし、不足分帯域を配信中のファイル合計数で除算した値の分だけ、配信中のファイルそれぞれに割り当てられた帯域を狭くさせてもよい。
【０２１４】
第３実施形態ではＣＰＵ使用率の値、第４実施形態ではディスクＩ／Ｏの状態に基づき帯域の割り当てを行っているが、組み合わせて両方の値を基準に帯域の割り当てを行ってもよい。この場合、ＣＰＵ使用率がＣＰＵ使用率上限値を超える場合、または、ディスクＩ／Ｏ状態値がディスクＩ／Ｏ使用上限値を超える場合に、帯域を狭くする処理が行われることになる。そのため、第３実施形態及び第４実施形態よりもリソースを有効に利用することができる。
【０２１５】
第５実施形態では、図２５に示すようにコンテンツ配信システム１が１台のコンテンツ変換装置４０を備える場合について記載したが、コンテンツ変換装置４０を複数台配置してもよい。
【符号の説明】
【０２１６】
１      コンテンツ配信システム
１０    コンテンツ配信装置
２０    ネットワーク
３０    端末
１１０  配信制御部
１１１  通信制御部
１１２  通信状態監視部
１１３  帯域制御部
１１４  バッファ
１２０  コンテンツ管理部
１３０  記憶部
１４０  送受信部
１５０  エンコーダ
１７０  ディスクＩ／Ｏ状態監視部
１７５  バス（ディスクＩ／Ｏ）
１８０  書込要求対応部
ＦＨ    高データ転送レートファイル
ＦＭ    中データ転送レートファイル
ＦＬ    低データ転送レートファイル
ＰＬ    プレイリスト
【図１】
2015089113.tif 000003
【図２】
2015089113.tif 000004
【図３】
2015089113.tif 000005
【図４】
2015089113.tif 000006
【図５】
2015089113.tif 000007
【図６】
2015089113.tif 000008
【図７】
2015089113.tif 000009
【図８】
2015089113.tif 000010
【図９】
2015089113.tif 000011
【図１０】
2015089113.tif 000012
【図１１】
2015089113.tif 000013
【図１２】
2015089113.tif 000014
【図１３】
2015089113.tif 000015
【図１４】
2015089113.tif 000016
【図１５Ａ】
2015089113.tif 000017
【図１５Ｂ】
2015089113.tif 000018
【図１６】
2015089113.tif 000019
【図１７】
2015089113.tif 000020
【図１８】
2015089113.tif 000021
【図１９】
2015089113.tif 000022
【図２０】
2015089113.tif 000023
【図２１Ａ】
2015089113.tif 000024
【図２１Ｂ】
2015089113.tif 000025
【図２２】
2015089113.tif 000026
【図２３】
2015089113.tif 000027
【図２４】
2015089113.tif 000028
【図２５】
2015089113.tif 000029
【図２６】
2015089113.tif 000030
【図２７】
2015089113.tif 000031
【図２８】
2015089113.tif 000032
【図２９】
2015089113.tif 000033
【図３０】
2015089113.tif 000034