(57)【要約】【課題】  配信サーバの負荷分散の最適化を図る。【解決手段】  コンテンツデータを配信する複数の配信サーバと、該配信サーバにコンテンツデータ配信要求を行い、対応するコンテンツデータを取得する受信端末とからなる配信システムにおいて、前記配信サーバは、前記コンテンツデータを一意に識別するための識別情報を付加する識別情報付加手段と、前記配信サーバの負荷情報とを付加する負荷情報付加手段とを有し、前記受信端末は、受信した配信データから前記識別情報と、前記負荷情報と、前記コンテンツデータを分離する分離手段と、前記分離手段により得られる負荷情報に基づいて、他の配信サーバを決定する配信サーバ決定手段とを有することにより、上記課題を解決する。【選択図】        図１
2006113735.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータの配信要求に対応するコンテンツデータを配信する配信サーバにおいて、
前記配信要求に対応するコンテンツデータを読み出して所定のデータ量毎に出力するデータ読出制御手段と、
前記データ読出制御手段により得られる所定のデータ量毎の連続するコンテンツデータを一意に識別するための識別情報を前記コンテンツデータに付加する識別情報付加手段と、
前記識別情報付加手段により得られるコンテンツデータに負荷情報を付加する負荷情報付加手段とを有することを特徴とする配信サーバ。
【請求項２】
前記負荷情報付加手段は、
前記コンテンツデータの配信要求数を調整するために実際に検出された負荷情報とは異なる負荷情報を付加することを特徴とする請求項１に記載の配信サーバ。
【請求項３】
コンテンツデータを配信する複数の配信サーバにコンテンツデータの配信要求を行い、所望するコンテンツデータを取得する受信端末において、
前記配信要求した配信サーバから得られる配信データから、コンテンツデータの識別情報と、前記配信サーバの負荷情報と、前記コンテンツデータとを分離するデータ分離手段と、
前記負荷情報と、予め設定された負荷情報とを比較する負荷比較手段と、
前記負荷比較手段により得られる負荷比較結果に基づいて、他の配信サーバを決定する配信サーバ決定手段と、
配信サーバに配信要求を送信する配信要求送信手段とを有することを特徴とする受信端末。
【請求項４】
前記負荷比較手段は、
前記配信データから得られる負荷情報を予め設定される負荷情報の閾値と比較して、閾値を超える負荷情報である場合に、他の配信サーバからコンテンツデータが配信されるようサーバ変更信号を前記配信サーバ決定手段に出力することを特徴とする請求項３に記載の受信端末。
【請求項５】
前記配信要求送信手段は、
前記他の配信サーバから配信データを受信する場合、配信データを配信している配信サーバに対して配信中止信号を送信し、前記配信サーバ決定手段により決定された前記他の配信サーバに対して配信要求信号を送信することを特徴とする請求項３又は４に記載の受信端末。
【請求項６】
前記配信要求送信手段は、
前記配信要求信号に、既に取得したコンテンツデータに連続する次のコンテンツデータを識別する識別情報を付加して送信することを特徴とする請求項５に記載の受信端末。
【請求項７】
コンテンツデータの配信要求に対応するコンテンツデータを配信する処理をコンピュータに実行させるための配信プログラムにおいて、
前記配信要求に対応するコンテンツデータを読み出して所定のデータ量毎に出力するデータ読出制御処理と、
前記データ読出制御処理により得られる所定のデータ量毎の連続するコンテンツデータを一意に識別するための識別情報を前記コンテンツデータに付加する識別情報付加処理と、
前記識別情報付加処理により得られるコンテンツデータに負荷情報を付加する負荷情報付加処理とをコンピュータに実行させることを特徴とする配信プログラム。
【請求項８】
コンテンツデータを配信する複数の配信サーバにコンテンツデータの配信要求を行い、所望するコンテンツデータを取得する処理をコンピュータに実行させるための取得プログラムにおいて、
前記配信要求した配信サーバから得られる配信データから、コンテンツデータの識別情報と、前記配信サーバの負荷情報と、前記コンテンツデータとを分離するデータ分離処理と、
前記負荷情報と、予め設定された負荷情報とを比較する負荷比較処理と、
前記負荷比較処理により得られる負荷比較結果に基づいて、他の配信サーバを決定する配信サーバ決定処理とをコンピュータに実行させることを特徴とする取得プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配信システム、配信サーバ、受信端末、配信プログラム、及び取得プログラムに係り、特に、配信サーバの負荷分散の最適化を図るための配信システム、配信サーバ、受信端末、配信プログラム、及び取得プログラムに関する。
【背景技術】
【０００２】
近年では、ブロードバンドネットワーク等の普及にともない、ネットワークを介して映像を端末に配信し、見たいときに見たい映像を視聴できるサービスの必要性が高まっている。そのようなサービスを実現する技術として、例えばネットワーク上に、予め映像が蓄積された映像配信サーバを設置し、受信端末からの配信要求に応じて映像を配信する配信システム等がある。
【０００３】
また、受信端末の配信要求に応じて情報を配信する類似のシステムとしてウェブサーバがあるが、ウェブサーバに情報配信の要求が集中するとサーバの処理能力の限界を超えてしまうため、受信端末では情報配信するのに長い時間待たされたり、あるいは全く配信されないといった障害が発生することがある。
【０００４】
そのため、多数の受信端末が接続する配信サーバでは、サーバの負荷を分散又は軽減させて安定して情報配信を継続できるシステムを構築することが必要である。ここで、従来のサーバの負荷集中を解決する手段としては、クライアント（受信端末）とサーバとでデータの送受信を行うネットワーク上に負荷分散装置を利用する手法が一般的に用いられている（例えば、特許文献１参照。）。
【０００５】
ここで、負荷分散装置を用いた配信システムの従来例について説明する。例えば、同じコンテンツを配信可能な複数台のウェブサーバと、負荷分散装置とを設置する。負荷分散装置には、それぞれのウェブサーバのＩＰアドレスを登録しておくと共に、負荷分散装置自身にも１つのＩＰアドレスを設定し、クライアントとしての受信端末には負荷分散装置のＩＰアドレスを配信サーバのアドレスとして公開する。
【０００６】
また、負荷分散装置は、ウェブサーバの負荷状況を常に収集し、処理能力に余裕のある空きサーバを把握しておく。一方、受信端末は、負荷分散装置をウェブサーバとみなして配信要求を送信し、負荷分散装置は受け取った配信要求を空きサーバに転送する。更に、配信サーバは、配信要求に対する処理結果を負荷分散装置に出力し、負荷分散装置は要求の送信元である受信端末に結果を出力する。
【０００７】
このような処理により、ウェブサーバでは複数台の配信サーバを準備し、負荷分散装置により配信サーバを管理し、更にデータの送信又は受信を行うことで、アクセスが集中しても配信サーバの負荷を分散させることができる。
【特許文献１】特開２００１−２３６２９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、上述のような配信システムにおいて、例えば番組コンテンツ等の映像データを配信する場合、映像を構成するデータ量はウェブサーバ等が配信するテキストデータ等と比較して極端にデータ量が多く、またそのデータを継続的に配信し続ける必要がある。
【０００９】
そのため、映像の配信処理は配信サーバのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）使用時間やネットワーク帯域等の計算資源を大量に消費し、映像データを配信する配信サーバの負荷は高くなりやすい。そこで、映像配信サーバを構成する際には、サーバの負荷分散の技術がより重要となる。
【００１０】
しかしながら、映像配信サーバの場合には、従来負荷分散装置を利用することは困難である。これは、テキストデータ等の容量が少ないデータの配信であれば、負荷分散装置が配信データを受信端末に送信する処理は短時間で済み、送信処理に要する計算資源の量も少なくて済むが、映像配信の場合は、配信サーバが送信するデータが大量であり、更に継続的なデータを負荷分散装置が受信端末に転送し続けなければならないため、転送処理が負荷分散装置の計算資源等を大量に消費し、負荷分散装置自体の負荷が高くなってしまうためである。また、受信端末の接続数が多い場合にも負荷分散装置を使用すると、負荷分散装置がボトルネックとなって映像を安定して配信できなくなってしまう。
【００１１】
このような理由から、負荷分散装置を利用することなく映像配信サーバの負荷を分散し、配信サーバの負荷を軽減するよう制御する手段が必要である。
【００１２】
本発明は、上述した問題点に鑑みなされたものであり、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散することにより、配信サーバの負荷分散の最適化を図るための配信システム、配信サーバ、受信端末、配信プログラム、及び取得プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本件発明は、以下の特徴を有する課題を解決するための手段を採用している。
【００１４】
請求項１に記載された発明は、コンテンツデータの配信要求に対応するコンテンツデータを配信する配信サーバにおいて、前記配信要求に対応するコンテンツデータを読み出して所定のデータ量毎に出力するデータ読出制御手段と、前記データ読出制御手段により得られる所定のデータ量毎の連続するコンテンツデータを一意に識別するための識別情報を前記コンテンツデータに付加する識別情報付加手段と、前記識別情報付加手段により得られるコンテンツデータに負荷情報を付加する負荷情報付加手段とを有することを特徴とする。
【００１５】
請求項１記載の発明によれば、識別情報及び負荷情報をコンテンツデータに付加することにより、負荷情報に基づいて受信端末側で配信サーバを変更させることができる。また、識別情報に基づいて他の配信サーバから継続したコンテンツデータを取得することができる。これにより、配信サーバの負荷分散の最適化を図ることができる。
【００１６】
請求項２に記載された発明は、前記負荷情報付加手段は、前記コンテンツデータの配信要求数を調整するために実際に検出された負荷情報とは異なる負荷情報を付加することを特徴とする。
【００１７】
請求項２記載の発明によれば、例えば、配信を中止したい受信端末には、実際の負荷情報の値よりも値を極端に大きくして、別の配信サーバへ接続し直すよう指示することができる。これにより、配信サーバ側で配信サーバへの配信要求数を調整することができ、配信サーバの負荷分散の最適化を図ることができる。
【００１８】
請求項３に記載された発明は、コンテンツデータを配信する複数の配信サーバにコンテンツデータの配信要求を行い、所望するコンテンツデータを取得する受信端末において、前記配信要求した配信サーバから得られる配信データから、コンテンツデータの識別情報と、前記配信サーバの負荷情報と、前記コンテンツデータとを分離するデータ分離手段と、前記負荷情報と、予め設定された負荷情報とを比較する負荷比較手段と、前記負荷比較手段により得られる負荷比較結果に基づいて、他の配信サーバを決定する配信サーバ決定手段と、配信サーバに配信要求を送信する配信要求送信手段とを有することを特徴とする。
【００１９】
請求項３記載の発明によれば、配信サーバの負荷情報に基づいて受信端末側で、配信データの取得を他の配信サーバに変更することができる。これにより、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散することができ、配信サーバの負荷分散の最適化を図ることができる。
【００２０】
請求項４に記載された発明は、前記負荷比較手段は、前記配信データから得られる負荷情報を予め設定される負荷情報の閾値と比較して、閾値を超える負荷情報である場合に、他の配信サーバからコンテンツデータが配信されるようサーバ変更信号を前記配信サーバ決定手段に出力することを特徴とする。
【００２１】
請求項４記載の発明によれば、閾値に基づいて、配信データを配信している配信サーバの負荷状況を把握して、必要に応じて迅速に配信サーバを変更することができる。
【００２２】
請求項５に記載された発明は、前記配信要求送信手段は、前記他の配信サーバから配信データを受信する場合、配信データを配信している配信サーバに対して配信中止信号を送信し、前記配信サーバ決定手段により決定された前記他の配信サーバに対して配信要求信号を送信することを特徴とする。
【００２３】
請求項５記載の発明によれば、負荷の高い配信サーバに迅速に配信中止要求を行うことで、配信サーバの負荷を軽減することができ、また、迅速に他の配信サーバからコンテンツデータを受信することができる。
【００２４】
請求項６に記載された発明は、前記配信要求送信手段は、前記配信要求信号に、既に取得したコンテンツデータに連続する次のコンテンツデータを識別する識別情報を付加して送信することを特徴とする。
【００２５】
請求項６記載の発明によれば、識別情報に基づいて効率的に次のコンテンツデータを取得することができる。また、配信サーバは、既に受信端末が取得しているコンテンツデータは送信する必要がないため、配信サーバの負荷を軽減することができる。
【００２６】
請求項７に記載された発明は、コンテンツデータの配信要求に対応するコンテンツデータを配信する処理をコンピュータに実行させるための配信プログラムにおいて、前記配信要求に対応するコンテンツデータを読み出して所定のデータ量毎に出力するデータ読出制御処理と、前記データ読出制御処理により得られる所定のデータ量毎の連続するコンテンツデータを一意に識別するための識別情報を前記コンテンツデータに付加する識別情報付加処理と、前記識別情報付加処理により得られるコンテンツデータに負荷情報を付加する負荷情報付加処理とをコンピュータに実行させる。
【００２７】
請求項７記載の発明によれば、識別情報及び負荷情報をコンテンツデータに付加することにより、負荷情報に基づいて受信端末側で配信サーバを変更させることができる。また、識別情報に基づいて他の配信サーバから継続したコンテンツデータを取得することができる。これにより、配信サーバの負荷分散の最適化を図ることができる。また、特別な装置構成を必要とせず、低コストでコンテンツデータの配信処理を実現することができる。更に、プログラムをインストールすることにより、容易にコンテンツデータの配信処理を実現することができる。
【００２８】
請求項８に記載された発明は、コンテンツデータを配信する複数の配信サーバにコンテンツデータの配信要求を行い、所望するコンテンツデータを取得する処理をコンピュータに実行させるための取得プログラムにおいて、前記配信要求した配信サーバから得られる配信データから、コンテンツデータの識別情報と、前記配信サーバの負荷情報と、前記コンテンツデータとを分離するデータ分離処理と、前記負荷情報と、予め設定された負荷情報とを比較する負荷比較処理と、前記負荷比較処理により得られる負荷比較結果に基づいて、他の配信サーバを決定する配信サーバ決定処理とをコンピュータに実行させる。
【００２９】
請求項８記載の発明によれば、配信サーバの負荷情報に基づいて受信端末側で、配信データの取得を他の配信サーバに変更することができる。これにより、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散することができ、配信サーバの負荷分散の最適化を図ることができる。また、特別な装置構成を必要とせず、低コストでコンテンツデータの取得処理を実現することができる。更に、プログラムをインストールすることにより、容易にコンテンツデータの取得処理を実現することができる。
【発明の効果】
【００３０】
本発明によれば、配信サーバの負荷分散の最適化を図ることができる。
【発明を実施するための最良の形態】
【００３１】
＜本発明の概要＞
本発明は、サーバが配信する配信データとしてコンテンツデータにコンテンツデータの識別子とサーバの負荷の状況とを付加して送信することにより、受信端末が配信サーバの負荷状況を判断して別の負荷の軽い配信サーバに接続することで、コンテンツデータの受信を継続して行う。
【００３２】
以下に、本発明における配信システム、配信サーバ、受信端末、配信プログラム、及び取得プログラムを好適に実施した形態について、図面を用いて詳細に説明する。なお、本実施形態では、コンテンツデータの一例として番組を構成する長時間の映像データを配信する例を示すが、本発明におけるコンテンツデータはこの限りではなく、高音質の音声データ等の他のコンテンツデータであってもよい。
【００３３】
＜実施形態＞
図１は、本発明における映像配信システムの概要構成の一例を示す図である。図１に示す映像配信システム１０は、複数の配信サーバ１１−１〜１１−ｍ（ｍ≧２）と、クライアントとしての複数の受信端末１２−１〜１２−ｎ（ｎ≧２）とを有するよう構成されている。また、配信サーバ１１と受信端末１２とは、例えばインターネット等の通信ネットワーク１３により、データの送受信が可能な状態で接続されている。また、配信サーバ１１−１〜１１−ｍのそれぞれには、映像等のコンテンツを蓄積するための蓄積装置１４−１〜１４−ｍが接続されている。
【００３４】
配信サーバ１１は、蓄積装置１４に蓄積された映像データの中から視聴端末である受信端末１２からの配信要求に対応した映像データを読み出す。更に読み出された映像データを一意に識別することが可能な識別情報としての識別子と、配信サーバ１１の現時点の負荷情報とを映像データに付加した配信データを配信要求のあった受信端末１１に送信する。
【００３５】
受信端末１２は、映像配信サーバ１１から配信された配信データを受信し、配信データに付加された配信サーバ１１の負荷情報を取得する。また、その負荷情報に基づき必要に応じて、配信データを配信している接続中の配信サーバ１２に対する接続を切断し、別の配信サーバに接続し直して、配信データと同時に取得した識別子に基づいて、既に取得した映像データの次の映像データの配信を要求する。
【００３６】
蓄積装置１４は、それぞれが同一の映像データやコンテンツ等が蓄積されている。また、蓄積されたデータには、識別子に基づいて対応する映像データを抽出することができるような各種識別情報が蓄積されている。なお、図１では蓄積装置１４は、配信サーバ１１とは別体で構成されているが、配信サーバ１１内に含まれていてもよい。
【００３７】
上述したシステム構成により、負荷情報に基づいて受信端末側で配信サーバを変更することができ、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散することができる。これにより、配信サーバの負荷分散の最適化を図ることができる。
【００３８】
＜識別子について＞
ここで、上述した映像データを一意に識別可能な識別子について、具体的に説明する。上述した本発明における映像配信システム１０では、配信の対象となる全ての映像データについて、送信する所定のデータ量毎に一意に識別可能な識別子を付加し、この識別子の情報に基づいて映像データの要求及び配信が行われる。なお、所定のデータ量は、伝送効率やサーバの処理能力に基づいて設定される。また、所定のデータ量は、複数の配信サーバ１１−１〜１１−ｍで共通の値を設定する。更に、識別子の内容や形式は、時間的に連続する映像データが所定のデータ量毎に分割して配信される場合には、連続する識別子を付加する必要がある。
【００３９】
ここで、本発明における識別子の例について図を用いて説明する。図２は、本発明における識別子の一例を示す図である。図２に示す識別子は、予め蓄積装置１４に蓄積されたテレビ放送番組における映像データを連続して読み出し、配信する際の識別子の例を示している。
【００４０】
図２において、識別子には、映像が実際に放送されたチャンネル２１と、放送年月日２２と、放送時刻２３と、同じ放送時刻中の通し番号２４とを有する文字列で構成された識別子を示している。なお、通し番号２４は、同時刻中（１秒間）の映像データを所定のデータ量で分割した際の通し番号や、同時刻中のフレーム番号等を示している。
【００４１】
つまり、図２の例は、１０３チャンネルで２００４年７月６日の１０時００分００秒から放送された番組を読み出した最初の映像データであることを示している。なお、この識別子の形式についても各配信サーバ１１−１〜１１−ｍで統一されている。
【００４２】
そのため、受信端末１２は、配信サーバ１１に映像データを要求するとき、この識別子を用いて映像データの要求を行い、所望する映像データを取得することができる。なお、識別子に含まれる構成、順序、形式、データ長については、この限りではない。
【００４３】
＜負荷情報について＞
次に、上述した本発明において、映像データと共に付加される負荷情報について具体的に説明する。負荷情報は、配信サーバ１１が現在消費している計算資源の量を示す値である。計算資源の消費量を評価する手法については、１つに限定されず、多様な手法を用いることができる。例えば、映像データの配信を安定して継続できる配信サーバのＣＰＵ利用率を１００とした場合の現在のＣＰＵ利用率の値等を用いる。
【００４４】
この他にも、ネットワークインタフェースの理論帯域に対する現在の配信帯域や、サーバの内部バス帯域に対する現在の利用帯域の値を負荷情報として利用することができる。ここで、ネットワークインタフェースの理論帯域とは、規格等に定められている帯域を示し、例えば１０Ｍｂｐｓ、１００Ｍｂｐｓ等の値が設定されている。なお、何れの値を利用する場合にも、映像配信を安定して継続できる計算資源の消費量を正確に評価しておくことが必要である。
【００４５】
＜配信サーバ１１の機能構成例＞
次に、本発明における配信サーバ１１の具体的な機能構成について、図を用いて説明する。図３は、本発明における配信サーバの機能構成の一例を示す図である。
【００４６】
図３に示す配信サーバ１１は、配信要求受信手段３１と、映像識別子認識手段３２と、映像データ読出制御手段３３と、識別子付加手段３４と、負荷情報付加手段３５と、負荷情報検出手段３６と、配信データ送信手段３７とを有するよう構成されている。
【００４７】
配信要求受信手段３１は、受信端末１２が送信した配信要求データを通信ネットワーク１３を介して受信する。また、配信要求受信手段３１は、受信した配信要求データを映像識別子認識手段３２に出力する。
【００４８】
映像識別子認識手段３２は、入力した配信要求データから、図２に示すような要求された映像データの識別子を抽出して映像データ読出制御手段３３に出力する。映像データ読出制御手段３３は、識別子に基づいて映像データを蓄積装置１４から読み出す。また、映像データ読出制御手段３３は、読み出した映像データを予め設定される適当なデータ長で分割して識別子付加手段３４に出力する。
【００４９】
識別子付加手段３４は、入力された所定のデータ量毎に分割された映像データの先頭又は最後に図２に示すように形式を統一した識別子を付加する。つまり、蓄積手段１４に蓄積されている映像データを識別するための識別情報の形式が異なっている場合であっても、識別子付加手段３４で形式が統一された識別子が付加される。識別子付加手段３４は、識別子を付加した映像データを負荷情報付加手段３５に出力する。負荷情報付加手段３５は、負荷情報検出手段３６にて検出される現時点での配信サーバの負荷の状況を、例えば入力したデータの先頭又は最後に付加して配信データを生成する。
【００５０】
なお、負荷情報付加手段３５は、現在配信している受信端末毎に負荷情報の値を変更することもできるため、複数の受信端末からの配信要求数を調整するために実際に負荷情報検出手段３６にて検出された負荷情報とは異なる負荷情報を付加することができる。これにより、例えば、配信を強制的に終了させたい特定の受信端末１１に対して負荷情報の値が極端に大きくなるよう変更して、受信端末１１が別の配信サーバへ接続し直すよう指示することができる。つまり、設定する負荷情報の値により、配信サーバ側で配信サーバに接続する受信端末の数を調整することができる。
【００５１】
負荷情報付加手段３５は、負荷情報を付加した配信データを配信データ送信手段３７に出力する。配信データ送信手段３７は、映像の配信要求のあった受信端末１１に対して配信データを送信する。
【００５２】
これにより、負荷情報に基づいて受信端末側で配信サーバを変更することで、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散することができ、配信サーバの負荷分散の最適化を図ることができる。
【００５３】
また、集中的な負荷分散装置を使用することなく、一部の配信サーバに負荷が集中しないオンデマンド型の映像配信システムを実現することができる。
【００５４】
ここで、配信サーバ１１が送信する配信データの構造について図を用いて説明する。図４は、配信データのデータ構造例の一例を示す図である。図４に示すように、受信端末１２に送信される多重化された配信データは、データの先頭から負荷情報４１と、識別子４２と、映像データ４３とを有している。配信サーバ１１は、一度配信要求を受け付けた場合、その受信端末１２から配信中止の要求が到着するまで時間的に連続する所定のデータ量毎に分割された映像データを配信する処理を継続して行うことになる。なお、図４に示すデータ構造についてはこの限りではなく、例えば映像データ４３の最後に負荷情報４１及び／又は識別子４２を有していてもよい。
【００５５】
＜受信端末１２の機能構成例＞
次に、本発明における受信端末１２の具体的な機能構成について、図を用いて説明する。図５は、本発明における受信端末の機能構成の一例を示す図である。
【００５６】
図５に示す受信端末１２は、配信サーバ決定手段５１と、配信要求送信手段５２と、配信データ受信手段５３と、データ分離手段５４と、映像復号手段５５と、負荷比較手段５６を有するよう構成されている。
【００５７】
まず、ユーザから映像配信又は映像配信中止等の要求信号が、配信サーバ決定手段５１に入力される。配信サーバ決定手段５１は、ユーザから入力された要求が、映像を取得するための最初の要求信号である場合には、予め設定されているサーバ群のアドレス情報の中から、配信要求のあった映像データ等を配信可能な特定の配信サーバを決定する。
【００５８】
なお、この時点では、配信サーバからのデータを取得していないため、負荷比較手段５７からの情報はない。また、配信サーバ決定手段５１は、決定された配信サーバに映像配信要求を送るために配信要求情報を配信要求送信手段５２に出力する。
【００５９】
配信要求送信手段５２は、配信サーバ決定手段５１により得られる接続先情報及び配信要求情報に基づいて、対象となる配信サーバ１１に対して配信要求する映像データの識別子を付加して配信要求を送信する。なお、所望する映像データの最初の配信要求時には、データ分離手段５４からの識別子が入力されてないため、映像の識別子には初期値等が設定される。
【００６０】
次に、受信端末１２は、配信サーバ１１から通信ネットワーク１３を介して配信された配信データを配信データ受信手段５３で受信する。配信データ受信手段５３で受信した配信データは、図４に示した構造の配信データである。つまり、配信データ受信手段５３は、図４に示すような配信データを、要求した番組の映像データが終了するまで連続して受信することになる。
【００６１】
配信データ受信手段５３は、受信した配信データを負荷データ分離手段５４に出力する。データ分離手段５４は、入力した配信データの先頭部分等に付加された負荷情報と識別子とを取り出し、識別子を配信要求送信手段５２に出力し、負荷情報を負荷比較手段５６に出力する。それらを負荷比較手段５６に出力する。また、分離された残りの映像データは、映像復号手段５５に出力する。
【００６２】
映像復号手段５５は、入力した映像データを復号してモニタやスピーカー等に出力することでユーザに提示する。また、映像復号手段５５には、受信端末１２が他の配信サーバヘの再接続する動作の間に映像データの出力が途切れない程度のバッファを設けておいてもよい。
【００６３】
負荷比較手段５６は、データ分離手段５４から得られる負荷情報の値と、予め設定された負荷情報の閾値と比較する。ここで、負荷情報の閾値は、配信サーバ１１が安定して映像配信を継続できるサーバ負荷の限界値に基づいて設定され、配信サーバ負荷がこの閾値を超えるとサーバ内の計算資源が枯渇し映像配信を継続することができないような状態となる値である。
【００６４】
負荷比較手段５６は、負荷の比較の結果、負荷情報の値が閾値以下で、映像配信に影響はないと考えられる場合には、配信データ受信手段５３は連続して送信された配信データをそのまま受信し続ける。また、比較の結果、負荷情報の値が閾値を超えており、映像配信を安定して継続できない可能性があると判断された場合には、まず、現在接続している配信サーバに対する接続を切断するための中止要求信号を配信サーバ決定手段５１に出力し、更に他の配信サーバから続きの映像を継続して受信するため、サーバ変更信号を配信サーバ決定手段５１に出力する。
【００６５】
配信サーバ決定手段５１は、負荷比較手段５６より得られる中止要求信号及びサーバ変更信号とに基づいて対応する信号を配信要求送信手段５２に出力する。具体的には、配信サーバ決定手段５１は、現時点で受信端末１２と接続されており、映像データを配信している配信サーバ１１に対して、配信中止要求を生成して配信要求送信手段５２に出力する。また、配信サーバ決定手段５１は、同一の映像データが配信可能な他の配信サーバを決定し、決定した配信サーバに対しての映像取得要求を配信要求送信手段５２に出力する。なお、配信サーバ決定手段５１における配信サーバの決定例についての説明は後述する。
【００６６】
また、配信サーバ決定手段５１は、ユーザから直接配信中止要求が入力された場合にも、現時点で映像データを配信している配信サーバに対して配信中止要求を生成して配信要求送信手段５２に出力する。
【００６７】
また、配信要求送信手段５２は、配信サーバ決定手段５１から配信中止要求を受信した場合には、対象となる配信サーバに対して配信中止要求を送信する。また、他の配信サーバに対する映像配信要求である場合は、データ分離手段５４により得られる識別子の情報を更新して配信要求信号に付加して対象となる配信サーバに送信する。
【００６８】
具体的には、最後に受信した映像データの識別子について、その映像データに時間的に連続する映像データの識別子を計算する。なお、本実施形態においては、時間的に連続する映像データの識別子を１増加させて配信要求信号に付加する。
【００６９】
これにより、映像を送信している配信サーバの負荷をリアルタイムで取得し、他の配信サーバから映像データを取得すべきかを受信端末側で判断することができる。また、映像データ等のコンテンツを配信している配信サーバの負荷が高い場合には、配信データの受信処理が影響を受ける前に迅速に対応して、他の配信サーバから取得した映像データの続きのデータを取得することができる。これにより、余分なデータの送受信がなく、伝送効率も向上させることができる。
【００７０】
なお、他の配信サーバに接続し直す場合には、他の配信サーバとの接続が確立した後で、識別子を付加した配信要求信号により、時間的に連続する映像データの配信要求を送信してもよい。つまり、他の配信サーバでも混雑していることがあるため、事前に負荷情報のみを送信するよう配信サーバに負荷情報取得要求を送信する。
【００７１】
また、負荷情報のみを取得できた場合には、負荷比較手段５６において、例えば予め設定された閾値との比較とは別に、複数の配信サーバに対して負荷情報取得要求をして、取得した複数の負荷情報から負荷が一番低い配信サーバを選択して配信要求を行う処理を行うこともできる。
【００７２】
＜配信サーバの決定例＞
ここで、配信サーバ決定手段５１における配信サーバを決定例について説明する。決定例としては、例えば各受信端末１２−１〜１２−ｎが予め利用可能な配信サーバのアドレスの一覧表を、所定の時間間隔毎等に通信ネットワーク１３を介して配信サーバ等から読み込み、その一覧表から任意の一台のサーバを決定する手法がある。
【００７３】
ここで、アドレスの一覧表の例について図を用いて説明する。図６は、本発明における配信サーバの一覧表の一例を示す図である。図６に示す一覧表は、映像データを識別するための識別情報としてのチャンネル番号（＃ｃｈ）と、ＩＰアドレス等の配信サーバを識別する識別情報を示すサーバ名と、アドレス情報としてのネットワークアダプタのポート番号（アドレス）等により構成されている。これらの情報は、配信要求信号に含まれるものである。なお、一覧表では、番組のジャンルや番組時間等の詳細情報も蓄積されている。
【００７４】
ここで、図６に示すような一覧表を用いて配信サーバを決定する場合には、配信サーバの台数が少なく、そのアドレスが殆ど変化しない場合に有効である。
【００７５】
なお、例えば配信サーバ１２の稼働状況を常時監視し現在利用できる配信サーバの一覧表を集中的に管理する管理ホストを別途設置し、各受信端末１２−１〜１２−ｎはこの管理ホストに問い合わせるように構成することもできる。これにより、配信サーバが一時的に利用できなくなった場合やサーバのアドレスが変更になった場合にも、管理ホストが保持するサーバ一覧表だけを更新すれば即時に更新を反映させることができる。なお、受信端末１２と管理ホストの間で送受信される情報は映像データの識別子及びサーバのアドレスだけでありデータ量が少ない。したがって、受信端末１２が発行する一覧表の取得要求が管理ホストに集中しても管理ホストの負荷が問題とはならず、システム全体の性能に影響を与えることはない。
【００７６】
なお、本発明における配信サーバの決定例は、この限りではない。このように、負荷情報に基づいて受信端末が配信サーバを変更することで、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散することができ、配信サーバの負荷分散の最適化を図ることができる。
【００７７】
ここで、上述した配信サーバ１１及び受信端末１２は、上述した専用の装置構成により配信サーバ１１におけるコンテンツデータの配信処理、及び受信端末１２におけるコンテンツデータの取得処理を行うこともできるが、各構成における処理をコンピュータに実行させることができる実行プログラムを生成し、配信サーバ１１及び受信端末１２について、例えば汎用のパーソナルコンピュータ、ワークステーション等にプログラムをインストールすることにより、本発明における上述の配信処理、取得処理を実現することができる。
【００７８】
＜ハードウェア構成＞
ここで、本発明における配信処理、取得処理が実行可能なコンピュータのハードウェア構成例について図を用いて説明する。図７は、本発明におけるコンテンツデータの配信処理及び取得処理が実現可能なハードウェア構成の一例を示す図である。
【００７９】
図７におけるコンピュータ本体には、入力装置７１と、出力装置７２と、ドライブ装置７３と、補助記憶装置７４と、メモリ装置７５と、各種制御を行うＣＰＵ７６と、ネットワーク接続装置７７とを有するよう構成されており、これらはシステムバスＢで相互に接続されている。
【００８０】
入力装置７１は、ユーザが操作するキーボード及びマウス等のポインティングデバイスを有しており、ユーザからのプログラムの実行等、各種操作信号を入力する。出力装置７２は、本発明における処理を行うためのコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイを有し、ＣＰＵ７６が有する制御プログラムにより配信サーバ１１又は受信端末１２における各処理の実行経過や結果等を表示することができる。
【００８１】
ここで、本発明において、コンピュータ本体にインストールされる実行プログラムは、例えば、ＣＤ−ＲＯＭ等の記録媒体７８等により提供される。プログラムを記録した記録媒体７８は、ドライブ装置７３にセット可能であり、記録媒体７８に含まれる実行プログラムが、記録媒体７８からドライブ装置７３を介して補助記憶装置７４にインストールされる。
【００８２】
補助記憶装置７４は、ハードディスク等のストレージ手段であり、本発明における実行プログラムや、コンピュータに設けられた制御プログラム等を蓄積し必要に応じて入出力を行うことができる。
【００８３】
ＣＰＵ７６は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等の制御プログラム、及びメモリ装置７５により読み出され格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御して、コンテンツの配信及び取得における各処理を実現することができる。プログラムの実行中に必要な各種情報等は、補助記憶装置７４から取得することができ、また格納することもできる。
【００８４】
ネットワーク接続装置７７は、ネットワーク網等と接続することにより、実行プログラムを通信ネットワークに接続されている他の端末等から取得したり、プログラムを実行することで得られた実行結果又は本発明における実行プログラム自体を他の端末等に提供することができる。
【００８５】
上述したようなハードウェア構成により、特別な装置構成を必要とせず、低コストで配信処理及び取得処理を実現することができる。また、プログラムをインストールすることにより、容易に配信処理及び取得処理を実現することができる。
【００８６】
＜配信サーバ：コンテンツデータ配信処理手順＞
次に、配信サーバにおけるコンテンツデータ配信処理手順について、フローチャートを用いて説明する。図８は、コンテンツデータ配信処理手順を説明するための一例のフローチャートである。なお、以下の説明では、コンテンツデータとしての映像データを配信する一例を示すが、本発明において配信されるコンテンツデータはこの限りではない。
【００８７】
図８において、まず、受信端末から要求信号を受信する（Ｓ０１）。次に、受信した信号がコンテンツの配信要求であるか否かを判断する（Ｓ０２）。ここで、配信得要求であった場合（Ｓ０２において、ＹＥＳ）、要求信号により要求された映像データを識別するための識別子を認識する（Ｓ０３）。
【００８８】
次に、認識された識別子に基づいて映像データを読み出す（Ｓ０４）。なお、取得した映像データは、伝送効率やサーバの処理能力等により所定のデータ量毎に分割されて配信される。分割された映像データには、その映像データがどの時間帯の情報であるか等、映像データを一意に表す識別情報としての識別子を付加する（Ｓ０５）。
【００８９】
更に、配信サーバの現時点での負荷の状況等から負荷情報を検出し（Ｓ０６）、映像データを配信する配信データに負荷情報を付加する（Ｓ０７）。なお、この場合に上述したように、配信を中止したい受信端末については、実際の負荷情報を変更して、例えば負荷情報を高く設定することにより、その受信端末を他のサーバに接続させることもできる。
【００９０】
次に、配信データを取得要求のあった受信端末に出力する（Ｓ０８）。ここで、配信を終了するかを判断する（Ｓ０９）。具体的には、受信端末から要求された映像データを全て配信しているか、又は、Ｓ０２において、配信要求でない要求を受信しているか（Ｓ０２において、ＮＯ）で判断する。なお、Ｓ０２において、配信要求でない要求は配信中止要求であると判断する。
【００９１】
まだ、配信終了しない場合（Ｓ０９において、ＮＯ）、Ｓ０４により読み出された映像データの残りの映像データについて、Ｓ０５以降の処理を継続して行う。
【００９２】
また、Ｓ０９において、配信を終了する場合（Ｓ０９において、ＹＥＳ）、コンテンツデータ配信処理を終了する。したがって、図８の示すフローチャートでは、Ｓ０４〜Ｓ０８を継続して行っている最中に、Ｓ０１にて中止要求を受信した場合には、未配信データが存在してもコンテンツデータ配信処理を終了する。
【００９３】
上述したように、コンテンツの配信を実行する実行プログラムにより、識別情報及び負荷情報をコンテンツデータに付加することで、負荷情報に基づいて受信端末側で配信サーバを変更させることができる。また、識別情報に基づいて他の配信サーバから継続したコンテンツデータを取得することができる。これにより、配信サーバの負荷分散の最適化を図ることができる。また、特別な装置構成を必要とせず、低コストでコンテンツデータの配信処理を実現することができる。更に、プログラムをインストールすることにより、容易にコンテンツデータの配信処理を実現することができる。
【００９４】
＜受信端末：コンテンツデータ取得処理手順＞
次に、受信端末におけるコンテンツデータ取得処理手順について、フローチャートを用いて説明する。図９は、コンテンツデータ取得処理手順を説明するための一例のフローチャートである。なお、以下の説明では、コンテンツデータとしての映像データを取得する一例を示すが、本発明において取得されるコンテンツデータはこの限りではない。また、図９では、発明の内容を明確にするためユーザからの直接の配信中止要求により、配信サーバ１２に配信中止要求を出力する一般的な処理内容については省略する。
【００９５】
図９において、まず、ユーザからの映像配信要求が入力されると（Ｓ２１）、予め登録された複数の配信サーバの情報から配信要求のあった映像データが配信可能な配信サーバを決定する（Ｓ２２）。
【００９６】
次に、決定された配信サーバに配信要求を送信し（Ｓ２３）、配信サーバ１２から対応する配信データを受信する（Ｓ２４）。なお、受信される配信データは、図４に示すようなデータ構造となっている。ここで、受信した配信データを負荷情報と、識別子と、映像データに分離する（Ｓ２５）。Ｓ２５により分離された映像データは、復号した後、モニタやスピーカー等に出力する（Ｓ２６）。
【００９７】
ここで、取得すべき全ての映像データの受信が完了しているかを判断する（Ｓ２７）。全ての映像データが受信完了していない場合（Ｓ２７において、ＹＥＳ）、配信データに含まれる負荷情報と予め設定される負荷の閾値との比較を行い（Ｓ２８）、現時点で接続されている配信サーバを変更するか否かを判断する（Ｓ２９）。
【００９８】
配信サーバを変更しない場合（Ｓ２９において、ＮＯ）、Ｓ２４に戻り、後続の配信データを受信して上述した処理を行う。また、配信サーバを変更する場合（Ｓ２９において、ＹＥＳ）、他の配信サーバを決定し（Ｓ３０）、Ｓ２５で得られた識別子から受信済みの映像データの次の映像データから取得するために識別子を設定して、配信要求信号に付加する（Ｓ３１）。その後、現時点で接続され、配信データを配信している配信サーバに対し、配信中止要求を送信して新たに決定された配信サーバに配信要求を送信する（Ｓ３２）。
【００９９】
送信後は、Ｓ２４に戻り新たな配信サーバからの配信データを受信して上述した処理を行う。最後に要求した映像データの全ての受信が完了した場合（Ｓ２７において、ＹＥＳ）、コンテンツデータ取得処理を終了する。
【０１００】
上述したように、コンテンツの取得を実行する実行プログラムにより、配信サーバの負荷情報に基づいて受信端末側で、配信データの取得を他の配信サーバに変更することができる。これにより、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散することができ、配信サーバの負荷分散の最適化を図ることができる。また、特別な装置構成を必要とせず、低コストでコンテンツデータの取得処理を実現することができる。更に、プログラムをインストールすることにより、容易にコンテンツデータの取得処理を実現することができる。
【０１０１】
上述したように本発明によれば、配信サーバの負荷分散の最適化を図ることができる。具体的には、配信サーバから得られる配信データに含まれる負荷情報の値が閾値を超えた場合に、配信データの切れ目等で別の配信サーバへ接続し直すことにより、１つの配信サーバに負荷が集中した場合に負荷が軽減するよう配信サーバの負荷を分散して、配信サーバの負荷分散の最適化を図ることができる。
【０１０２】
また、受信端末は配信データに含まれる映像データを識別する識別情報としての識別子を用いて、別の配信サーバに時間的に連続する映像データの配信を要求することができる。ここで、接続し直したサーバも負荷が高く、安定した映像配信ができない場合もあり得るが、その配信サーバが配信したデータに含まれる負荷情報の値も閾値を超えていれば、再び別のサーバに接続し直すことが容易に実現できる。
【０１０３】
また、配信サーバは、接続している端末毎に負荷情報の値を変えて送信することもできるため、配信を中止し接続を強制的に切り離したい受信端末には負荷情報の値を極端に大きくして、別のサーバへ接続し直すよう指示することができる。設定する負荷情報の値により、配信サーバ側で配信サーバに接続する受信端末の数を減らすことができる。結果として、集中的な負荷分散装置を使用することなく、一部の配信サーバに負荷が集中しないオンデマンド映像配信システムを実現することができる。
【０１０４】
以上本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
【図面の簡単な説明】
【０１０５】
【図１】本発明における映像配信システムの概要構成の一例を示す図である。
【図２】本発明における識別子の一例を示す図である。
【図３】本発明における配信サーバの機能構成の一例を示す図である。
【図４】配信データのデータ構造例の一例を示す図である。
【図５】本発明における受信端末の機能構成の一例を示す図である。
【図６】本発明における配信サーバの一覧表の一例を示す図である。
【図７】本発明におけるコンテンツデータの配信処理及び取得処理が実現可能なハードウェア構成の一例を示す図である。
【図８】コンテンツデータ配信処理手順を説明するための一例のフローチャートである。
【図９】コンテンツデータ取得処理手順を説明するための一例のフローチャートである。
【符号の説明】
【０１０６】
１０  映像配信システム
１１  配信サーバ
１２  受信端末
１３  通信ネットワーク
１４  蓄積装置
２１  チャンネル
２２  放送年月日
２３  放送時刻
２４  通し番号
３１  配信要求受信手段
３２  映像識別子認識手段
３３  映像データ読出制御手段
３４  識別子付加手段
３５  負荷情報付加手段
３６  負荷情報検出手段
３７  配信データ送信手段
４１  負荷情報
４２  識別子
４３  映像データ
５１  配信サーバ決定手段
５２  配信要求送信手段
５３  配信データ受信手段
５４  データ分離手段
５５  映像復号手段
５６  負荷比較手段
７１  入力装置
７２  出力装置
７３  ドライブ装置
７４  補助記憶装置
７５  メモリ装置
７６  ＣＰＵ
７７  ネットワーク接続装置
７８  記録媒体
【図１】
2006113735.tif 000003
【図２】
2006113735.tif 000004
【図３】
2006113735.tif 000005
【図４】
2006113735.tif 000006
【図５】
2006113735.tif 000007
【図６】
2006113735.tif 000008
【図７】
2006113735.tif 000009
【図８】
2006113735.tif 000010
【図９】
2006113735.tif 000011