JP2000122951A - 動画配信システム - Google Patents

動画配信システム

Info

Publication number
JP2000122951A
JP2000122951A JP10291743A JP29174398A JP2000122951A JP 2000122951 A JP2000122951 A JP 2000122951A JP 10291743 A JP10291743 A JP 10291743A JP 29174398 A JP29174398 A JP 29174398A JP 2000122951 A JP2000122951 A JP 2000122951A
Authority
JP
Japan
Prior art keywords
client
video
server
video data
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10291743A
Other languages
English (en)
Inventor
Tomohisa Yamaguchi
智久 山口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP10291743A priority Critical patent/JP2000122951A/ja
Publication of JP2000122951A publication Critical patent/JP2000122951A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

(57)【要約】 【課題】 クライアントからの要求に対してサーバから
クライアントにビデオデータを配信し、クライアントで
ビデオデータを再生する際、クライアントとサーバの間
でビデオデータの再生に必要な情報を配受信することに
より、クライアントでのビデオデータの再生を途切れの
ない高品質なものにする。 【解決手段】 クライアントがクライアントの性能を記
した性能情報をサーバに配信し、サーバが配信された性
能情報に基づいて、ビデオデータとビデオデータの再生
に必要なビデオ再生情報をクライアントに配信し、クラ
イアントは配信されたビデオデータを再生すると共に、
ビデオ再生情報とビデオデータの配信状況に基づいて作
成した新たなビデオ再生情報の要求であるフィードバッ
ク要求をサーバに配信し、サーバはフィードバック要求
にに基づいて作成したフィードバック応答をクライアン
トに配信し、クライアントはフィードバック応答に基づ
いてビデオデータを新たな状態で再生し直すようにし
た。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はサーバからクライア
ントへの動画配信に関し、クライアントとサーバの間で
動画配信のための情報のやり取りを繰り返すことにより
動画の配信と動画の再生をする動画配信システムに関す
るものである。
【0002】
【従来の技術】従来のHTTPビデオ配信システムの一例に
は、例えば図13示すものがある。図13は、サーバと
クライアントがそれぞれ別々のネットワークに接続さ
れ、それぞれのネットワークはプロキシサーバで分離さ
れているクライアント・サーバシステムであり、クライ
アントからのビデオデータの要求に対して、サーバがHT
TP応答としてビデオデータを配信するシステムについて
示したものである。
【0003】図13において、51はHTTP要求に応じて
ビデオデータをHTTP応答として返すサーバ、52はサー
バ51にビデオデータの要求をHTTP要求として出し、ま
たサーバ51からHTTP応答として送られてくるビデオデ
ータの再生を行うクライアント、53はサーバ51が接
続されているネットワーク、54はクライアント52が
接続されているネットワーク、55はネットワーク53
とネットワーク54を分離し、ネットワーク53に接続
されているサーバ51とネットワーク54に接続されて
いるクライアント52の間のデータのやり取りをHTTPで
行うプロキシサーバである。なお、サーバ51はクライ
アント52からのHTTP要求によるビデオデータの要求
を、ただ単にHTTP応答としてビデオデータの配信を行な
い、クライアントではビデオデータを受け取り、再生を
行う。
【0004】
【発明が解決しようとする課題】図13のような構成の
システムでは、サーバはクライアントの性能やネットワ
ークの帯域とは関係なしにビデオデータを送ろうとする
ので、データ落ちやビデオデータの再生ができない等の
問題が発生することがある。本発明は以上のような問題
を解決するために、サーバは適切な転送レートでビデオ
データを配信し、クライアントではサーバから配信され
たビデオデータをサーバから配信された転送レートに従
って再生するとともに、さらに最適にビデオデータの配
信を受けるためのビデオ配信要求をサーバにフィードバ
ックし、サーバからの新たな転送レートでビデオデータ
の配信を受け、又この新たな転送レートでビデオデータ
の再生を行うことによって、クライアントでのビデオ再
生を途切れのない高品質なものにすることを目的とす
る。
【0005】
【課題を解決するための手段】第1の発明は、クライア
ントと、上記クライアントにより要求されたデータを上
記クライアントに配信するサーバと、上記クライアント
と上記サーバの間の情報の配受信を行うプロキシサーバ
とを備え、上記クライアントは上記クライアントの性能
を記した性能情報を上記プロキシサーバを介して上記サ
ーバに配信し、上記サーバは上記クライアントにより配
信された上記性能情報に基づいて作成したビデオデータ
の再生に必要なビデオ再生情報を上記プロキシサーバを
介して上記クライアントに配信すると共に、上記性能情
報に基づいてビデオデータを上記プロキシサーバを介し
て上記クライアントに配信し、上記クライアントは上記
サーバにより配信された上記ビデオ再生情報と上記ビデ
オデータとに基づいて上記ビデオデータを上記クライア
ントの性能に適した再生状態で再生し、また配信された
上記ビデオ再生情報と上記ビデオデータの配信状況に基
づいて作成した新たなビデオ再生情報の要求であるフィ
ードバック要求を上記プロキシサーバを介して上記サー
バに配信し、上記サーバは上記クライアントにより配信
された上記フィードバック要求に基づいて作成した上記
ビデオデータの再生に反映される新たなビデオ再生情報
であるフィードバック応答を上記プロキシサーバを介し
て上記クライアントに配信し、上記クライアントは上記
サーバにより配信された上記フィードバック応答に基づ
いて、上記ビデオデータを新たな状態で再生し直すもの
である。
【0006】第2の発明は、上記クライアントが接続さ
れているネットワークの帯域とCPU性能とメモリ容量
と現在の時間とからなる性能情報に基づいて上記ビデオ
データの転送レートを決定し、上記転送レートに基づい
てバッファサイズを決定するサーバ情報処理手段を有す
るサーバと、上記サーバ情報処理手段により決定された
上記転送レートとバッファサイズとからなるビデオ再生
情報を上記クライアントに配信し、又、上記転送レート
に従って上記ビデオデータを上記クライアントに配信す
るデータ配信手段とを備えたものである。
【0007】第3の発明は、上記クライアントは、上記
データ配信手段により配信された上記転送レートに従っ
て上記ビデオデータの再生を行うビデオ再生手段を有す
るクライアントを備えたものである。
【0008】第4の発明は、上記クライアントは、上記
データ配信手段により配信された上記バッファサイズに
基づいて上記ビデオデータのバッファ管理を行うバッフ
ァ管理手段を有するクライアントを備えたものである。
【0009】第5の発明は、上記性能情報の配信時間と
上記ビデオ再生情報の配信時間とに基づいて求めたネッ
トワーク状況と、上記ビデオデータの配信間隔に基づい
て求めたネットワーク混雑状況と、上記ビデオ再生情報
の配信時間と、上記サーバから配信された上記ビデオデ
ータの実際の転送レートとからなるフィードバック要求
に基づいて上記ビデオデータの新たな転送レートを決定
し、上記新たな転送レートに基づいて新たなバッファサ
イズを決定するサーバ情報処理手段と上記新たな転送レ
ートと新たなバッファサイズとからなるフィードバック
応答を上記ビデオデータ再生中の上記クライアントに配
信し、又、上記新たな転送レートに従って上記ビデオデ
ータを上記ビデオデータ再生中の上記クライアントに配
信するデータ配信手段とを備えたものである。
【0010】第6の発明は、上記データ配信手段により
配信された上記新たな転送レートに従って上記ビデオデ
ータの再生途中から上記ビデオデータの再生を行うビデ
オ再生手段を有するクライアントを備えたものである。
【0011】第7の発明は、上記データ配信手段により
配信された上記新たなバッファサイズに基づいて、上記
新たな転送レートに従って配信される上記ビデオデータ
のバッファ管理を上記ビデオデータ再生中に行うバッフ
ァ管理手段を有するクライアントを備えたものである。
【0012】第8の発明は、上記サーバにより配信され
た上記ビデオ再生情報と上記ビデオデータの配信状況に
基づいて上記フィードバック要求を作成するクライアン
ト情報処理手段を有するクライアントを備たものであ
る。
【0013】第9の発明は、上記性能情報の配信時間と
上記ビデオ再生情報の配信時間とに基づいて求めたネッ
トワーク状況と、上記ビデオデータの配信間隔に基づい
て求めたネットワーク混雑状況とに基づき、上記フィー
ドバック要求を配信するタイミングを決定するクライア
ント情報処理手段を備たものである。
【0014】
【発明の実施の形態】実施の形態1 以下、実施の形態1を図面を参照して説明する。図1
は、実施の形態1のHTTP動画配信システムの構成図であ
る。図1において、1はHTTP要求元から送られるHTTP要
求に応じてビデオデータとビデオデータの再生に必要な
ビデオ再生情報をHTTP応答としてHTTP要求元に返送する
HTTPビデオサーバ、2はHTTP要求を受信する要求受信モ
ジュール、3はHTTP応答とビデオデータの配信を行うデ
ータ配信モジュール、4は配信するビデオのビットレー
トやHTTP要求元で使用するバッファサイズの決定などを
行うサーバ情報処理モジュールである。
【0015】また、5はHTTP要求をHTTPビデオサーバに
配信し、HTTPビデオサーバ1から返送されるビデオデー
タの再生を行うHTTP要求元であるクライアント、6はHT
TP要求の配信を行う要求配信モジュール、7はHTTP応答
とビデオデータを受信するデータ受信モジュール、8は
ネットワーク状況やビデオの受信状況を計算するクライ
アント情報処理モジュール、9はビデオデータを蓄積す
るバッファ、10はHTTPビデオサーバ1から配信される
HTTP応答中のバッファサイズに従って、バッファ9を管
理するバッファ管理モジュール、11はビデオデータの
再生を行うビデオ再生モジュールである。
【0016】さらに、12はHTTPビデオサーバ1が接続
されているインターネット、13はクライアント5に接
続されているイントラネット、14はインターネット1
2とイントラネット13を分離し、インターネット12
に接続されているHTTPビデオサーバ1とイントラネット
13に接続されているクライアント5の間のビデオ再生
に必要な情報のやり取りを行うプロキシサーバ、15は
HTTPプロキシを実際に行うHTTPプロキシである。
【0017】また、16はクライアント5がHTTPビデオ
サーバ1にビデオの開始を要求するために送るHTTP要求
であるビデオ配信開始要求、17はHTTPビデオサーバ1
がクライアント5に返信するビデオ配信開始要求16に
対応したHTTP応答であるビデオ配信開始応答、18はHT
TPビデオサーバ1から配信されるビデオデータに対し、
さらにビデオデータの再生に必要な新たなビデオ再生情
報を要求するHTTP要求であるフィードバック要求、19
はフィードバック要求18に対して送られるHTTP応答で
あるフィードバック応答、20はビデオ配信開始要求1
6に従って配信されるビデオデータである。
【0018】図2は、HTTPビデオサーバ1での処理の流
れを示すフローチャートである。図3は、クライアント
5での処理の流れを示すフローチャートである。
【0019】次に、図2、図3のフローチャートに従っ
て、HTTPビデオサーバ1、クライアント5での処理動作
について説明する。まず、HTTPビデオサーバ1は、要求
受信モジュール2がクライアント5からのビデオ配信開
始要求16を待つ(ステップS1)。クライアント5で
は、要求配信モジュール6がHTTPビデオサーバ1にビデ
オ配信開始要求16を送るために、プロキシサーバ14
に対して、ビデオ配信開始要求16を配信する(ステッ
プS21)。
【0020】図4はビデオ配信開始要求16を示す説明
図であり、図5はクライアント情報を示す説明図であ
る。ビデオ配信開始要求16にはHTTPのDateヘッダに現
在の時間が設定され、またEntity Bodyにはクライアン
ト情報21、即ちクライアント5が接続されているネッ
トワークの帯域22、CPU性能23、メモリ容量24が
設定されている。
【0021】プロキシサーバ14では、このビデオ配信
開始要求16をHTTPビデオサーバ1に配信する。ここ
で、プロキシサーバ14のHTTPプロキシ15で行われる
一般的な処理例を図6に示すフローチャートに従って説
明する。なお、HTTPプロキシ15での処理は、ビデオ配
信開始要求16とビデオ配信開始応答17のやり取り
(配信及び受信)、またフィードバック要求18とフィ
ードバック応答19のやり取りとも同様の処理手順によ
り処理が実行される。
【0022】まず、HTTPプロキシ15はHTTPプロキシ用
HTTPポート(例えば8080)でクライアント5からの接続
を待つ(ステップS41)。クライアント5から接続要
求が来ると(ステップS42)、クライアント5からデ
ータを受信する(ステップS43)。ここで、データの
受信が成功したか否か確認して(ステップS44)、デ
ータの受信が成功しない場合にはクライアント5との接
続を切断して(ステップS60)、処理を終了し、デー
タの受信が成功した場合にはデータがHTTP要求か否か確
認する(ステップS45)。
【0023】データがHTTP要求でなかった場合にはクラ
イアント5との接続を切断して(ステップS60)、処
理を終了する。データがHTTP要求であった場合にはHTTP
要求に記述されているURIからHTTPビデオサーバ1のIP
アドレスを調査する(ステップS46)。ここで、アド
レスの調査が成功したか否か確認して(ステップS4
7)、アドレスの調査に成功しない場合にはクライアン
ト5に異常終了を配信し(ステップS59)、クライア
ント5との接続を切断して(ステップS60)、処理を
終了する。また、アドレスの調査に成功した場合にはHT
TPビデオサーバ1に対して接続要求を出す(ステップS
48)。
【0024】次に、接続に成功したか否か確認して(ス
テップS49)、HTTPビデオサーバ1との接続が成功し
ない場合にはクライアント5に異常終了を配信し(ステ
ップS59)、クライアント5との接続を切断して(ス
テップS60)、処理を終了し、接続に成功した場合に
はHTTP要求をHTTPビデオサーバ1に配信する(ステップ
S50)。ここで、配信に成功したか否か確認して(ス
テップS51)、配信が成功しなかった場合にはサーバ
との接続を切断し(ステップS58)、クライアント5
に異常終了を配信し(ステップS59)、クライアント
5との接続を切断して(ステップS60)、処理を終了
する。一方、配信が成功した場合にはプロキシサーバ1
4はHTTPビデオサーバ1からのデータを待つ(ステップ
S52)。
【0025】プロキシサーバ14はHTTPビデオサーバ1
からデータが来るまで待ち、データが来た場合には(ス
テップS53)、データがHTTP応答か否か調べ(ステッ
プS54)、HTTP応答でない場合にはクライアント5に
異常終了を配信し(ステップS59)、クライアント5
との接続を切断して(ステップS60)、処理を終了
し、HTTP応答である場合にはクライアント5にHTTP応答
を配信する(ステップS55)。ここで、配信に成功し
たか否か確認して(ステップS56)、配信が成功しな
かった場合にはクライアント5との接続を切断し(ステ
ップS60)、処理を終了し、配信が成功した場合には
サーバとの接続が切断されていないかを調査する(ステ
ップS57)。サーバとの接続が切断されている場合に
はクライアント5との接続を切断して処理を終了し(ス
テップS60)、サーバとの接続が切断されていない場
合にはプロキシサーバ14はHTTPビデオサーバ1から、
さらにデータの受信を行ない、これをクライアント5に
送る処理を続ける。
【0026】以後、プロキシサーバ14では同様にクラ
イアント5からのHTTP要求を受け取った場合には、HTTP
ビデオサーバ1へ、この要求を配信し、またHTTPビデオ
サーバ1からこのHTTP要求に対するHTTP応答を受け取っ
た場合には、このHTTP応答をクライアント5に配信する
という処理を続ける。
【0027】次に、図2、3に戻ってHTTPビデオサー
バ、クライアント5での処理動作の説明を行う。ステッ
プS1で、HTTPビデオサーバ1がクライアント5からの
ビデオ配信開始要求16を待っているところに、ビデオ
配信開始要求16が来ると、まずHTTPビデオサーバ1の
要求受信モジュール2にビデオ配信開始要求16が入
る。ビデオ配信開始要求16を受信した要求受信モジュ
ール2は、この要求をサーバ情報処理モジュール4に送
る。サーバ情報処理モジュール4ではビデオ配信開始要
求16から各情報を取り出し、クライアント5に配信す
べきビデオデータ20のビットレート(転送レート)の
決定(ステップS2)とクライアント5で使用するバッ
ファサイズの決定(ステップS3)を行う。
【0028】まず、ビットレートは以下のもののなかか
ら一番小さいビットレートを選定する。 (1)クライアント情報21のCPU性能23とメモリ容
量24から推測されるビットレート、(2)URIで指定
されたビデオのもともとのビットレート、(3)クライ
アント情報21のネットワーク帯域22で示されるビッ
トレート。ここで、(1)はクライアント情報21中の
CPU性能23とメモリ容量24から計算で求めるもので
あり、CPUの性能23が高く、メモリ容量24が大きい
方が、ビットレートの値は高くなる。(2)はビデオの
もともとのビットレートで、これは通常ビデオデータの
ヘッダ等に記載されていてHTTPビデオサーバ1側で取り
出すことが可能なものである。(3)はクライアント情
報21の中のクライアント5が接続しているネットワー
ク帯域22をそのまま使用したものである。
【0029】また、バッファサイズを決定するには、ま
ずビデオ配信開始要求16のDataヘッダに設定されてい
る時間と現在の時間から、ビデオ配信開始要求16がク
ライアント5からHTTPビデオサーバ1の間を転送される
のにどれくらいの時間がかかったかを計算する。さら
に、この時間を2倍した時間中に、先に決定したビット
レートでビデオデータ20を配信した場合に配信される
ビデオデータ量を計算する。このビデオデータ量はクラ
イアント5に必要な最低限のバッファサイズを示すもの
であり、さらにこのビデオデータ量に余裕を持たせるた
め、このビデオデータ量の1.5倍〜2倍の値をバッフ
ァサイズとする。ここでクライアント5が最低限必要と
するバッファのサイズを計算する際に、ビデオ配信開始
要求16のクライアント5からHTTPビデオサーバ1の間
の転送にかかった時間の2倍の値を使用したが、この理
由は、クライアント5がビデオ配信開始要求16を行っ
てから、この要求がHTTPビデオサーバ1に届くまでの時
間と、HTTPビデオサーバ1がこの要求に対して応答した
ビデオ配信開始応答17がクライアント5に届くまでの
時間を合わせると2倍の時間になることによる。
【0030】次に、サーバ情報処理モジュール4は現在
のHTTPビデオサーバ1のCPU使用率を求める(ステップ
S4)。
【0031】サーバ情報処理モジュール4は、ここまで
に求めたクライアント5に配信すべきビデオデータ20
のビットレートと、クライアント5で使用するバッファ
サイズと、HTTPビデオサーバ1のCPU使用率と、ビデオ
配信開始要求16がクライアント5からHTTPビデオサー
バ1の間の転送にかかった時間とをビデオ配信開始応答
17としてデータ配信モジュール3に送る。
【0032】次に、データ配信モジュール3は、ビデオ
配信開始要求16の応答としてのビデオ配信開始応答1
7をクライアント5に配信する(ステップS5)。ここ
で、配信に成功したか否か確認して(ステップS6)、
ビデオ配信開始応答17の配信が成功しなかった場合に
はクライアント5との接続を切断して(ステップS1
7)、処理が終了する。配信が成功した場合にはデータ
配信モジュール3は、ビデオ配信開始応答17をクライ
アント5に配信し、さらにクライアント5に対して、先
ほど決定したビットレートに従ってビデオデータ20の
配信を開始する(ステップS7)。ビデオデータ20の
配信が開始されると、ビデオデータ20の配信の終了が
確認されるまでビデオデータの配信が行われ(ステップ
S8、S9)、ビデオデータ20の配信の終了が確認さ
れるとクライアント5との接続を切断して(ステップS
17)、処理が終了する。
【0033】図7は、ビデオ配信開始応答17を示す説
明図であり、図8はサーバ情報を示す説明図である。ビ
デオ配信開始応答17にはHTTPのDateヘッダに現在の時
間が設定され、またEntity Bodyにはサーバ情報25、
即ちクライアント5で使用するバッファサイズ26、HT
TPビデオサーバ1のCPU使用率7、ビデオ配信開始要求
16のクライアント5からHTTPビデオサーバ1の間の転
送にかかった時間28、ビットレート29が設定されて
いる。ここで、ビットレート29は、HTTPビデオサーバ
1がクライアント5に対してビデオを配信する時のビッ
トレートであり、又このビットレートに従ってビデオデ
ータ20の再生が行われる。
【0034】次に、HTTPビデオサーバ1からのビデオ配
信開始応答17をクライアント5のデータ受信モジュー
ル7が受信すると(ステップS23)、データ受信モジ
ュール7はビデオ配信開始応答17をクライアント情報
処理モジュール8に送る。さらに、データ受信モジュー
ル7がビデオデータ20を受信すると、データ受信モジ
ュール7はビデオデータ20をバッファ9に送る。この
ように、クライアント情報処理モジュール8にビデオ配
信開始応答17が送られ、ビデオデータ20のバッファ
9中への受信が開始される(ステップS24)。
【0035】ここで、データ受信モジュール7のこの後
の動作は、HTTPビデオサーバ1から送られてくるデータ
(ビデオデータ20または後述するフードバック応答1
9)を受信し、フードバック応答19であった場合には
クライアント情報処理モジュール8に渡し、ビデオデー
タ20であった場合にはビデオデータ20をバッファ9
に渡し、ビデオデータ20を受信したことと実際に受信
したビデオデータ20のデータサイズであるビットレー
トをクライアント情報処理モジュール8に知らせる。
【0036】ステップS24でビデオデータ20の受信
が開始されると、ビデオデータ20は最終ビデオデータ
になるまでバッファ9に格納される(ステップS25、
S26)。最終ビデオデータであることが確認されると
HTTPビデオサーバ1との接続を切断して(ステップS2
7)、処理が終了する。また、ビデオデータ20の受信
が開始される一方で、ビデオ配信開始応答17中に設定
されたビットレート29に従ってビデオデータ20の再
生が開始されるが(ステップS28)、バッファ9にビ
デオデータ20がある間は、ビデオデータ20の再生が
行われる(ステップS29、S30)。バッファ9にビ
デオデータ20ががなくなると、HTTPビデオサーバ1と
の接続を切断して(ステップS27)、処理が終了す
る。
【0037】一方、データ受信モジュール7からビデオ
配信開始応答17を渡されたクライアント情報処理モジ
ュール8は、ビデオ配信開始応答17から各情報を取り
出し、HTTPビデオサーバ1に対して送るフィードバック
要求18(HTTP要求)の間隔を以下のように決定する
(ステップS31)。まず、ビデオ配信開始応答17の
Dataヘッダに設定されている時間と現在の時間とから、
ビデオ配信開始応答17のHTTPビデオサーバ1からクラ
イアント5の間の転送にかかった時間を計算する。次
に、この計算した値と、サーバ情報25に設定されてい
るクライアント5からHTTPビデオサーバ1の間の転送に
かかった時間28との比較を行ない、ネットワークが込
んできたのか、空いてきたのかというネットワークの状
況を推測する。また、データ受信のそれぞれの間隔、即
ちビデオデータ20が送られてくる間隔を求め、ネット
ワークの混雑状況を推測する。以上のように推測したネ
ットワーク状況とネットワークの混雑状況に基づき、HT
TPビデオサーバ1に対して送るフィードバック要求18
の間隔(タイミング)を決定する。
【0038】次に、クライアント情報処理モジュール8
は、ビデオ配信開始応答17中のサーバ情報25からク
ライアント5で使用するバッファサイズ26を取り出
し、これをバッファ管理モジュール10に送る。バッフ
ァ管理モジュール10では、送られてきたバッファサイ
ズ26により、ビデオデータ20のバッファの管理を行
う(ステップS32)。さらに、クライアント情報処理
モジュール8は、HTTPビデオサーバ1から送られてきた
実際のビデオデータ20のビットレート(実際のビット
レート)を求め、ビデオデータ20の配信状況を調査す
る(ステップS33)。
【0039】クライアント情報処理モジュール8は、以
上のように推測したネットワーク状況と、ネットワーク
の混雑状況と、HTTPビデオサーバ1からクライアント5
の間の転送にかかった時間と、実際のビットレートとを
フィードバック要求18として要求配信モジュール6に
送る。要求配信モジュール6は、HTTPビデオサーバ1に
ビデオデータ20の配信に対する再要求、即ち新たなビ
デオ再生情報を要求をするための情報であるフィードバ
ック情報を含んだフィードバック要求18を配信する
(ステップS34)。
【0040】図9は、フィードバック要求18を示す説
明図であり、図10はクライアントフィードバック情報
を示す説明図である。フィードバック要求18にはHTTP
のDataヘッダに現在の時間が設定され、またEntity Bod
yにはクライアントフィードバック情報30、即ちネッ
トワーク状況31、ネットワークの混雑状況32、HTTP
ビデオサーバ1からクライアント5の間の転送にかかっ
た時間33、実際のビットレート34が設定されてい
る。
【0041】次に、クライアント5の要求配信モジュー
ル6からのフィードバック要求18をHTTPビデオサーバ
1の要求受信モジュール2が受信すると(ステップS1
0)、要求受信モジュール2はフィードバック要求18
をサーバ情報処理モジュール4に送る。サーバ情報処理
モジュール4では、フィードバック要求18から各情報
を取り出し、クライアント5に配信すべきビデオデータ
20のビットレートとクライアント5で使用するバッフ
ァサイズを以下のように再決定する(ステップS11、
S12)。
【0042】ビットレートを再決定するには、まずフィ
ードバック要求18のDataヘッダに設定されている時間
と現在の時間から、クライアント5からHTTPビデオサー
バ1の間の転送にかかった時間を計算する。次に、この
計算した値と、クライアントフィードバック情報30に
設定されているHTTPビデオサーバ1からクライアント5
の間の転送にかかった時間33を比較し、最新のネット
ワークの状況を推測する。さらに、この推測したネット
ワークの状況と、現在配信されているビデオデータ20
のビットレート即ちHTTPビデオサーバ1がクライアント
5に対してビデオを配信する時のビットレート29と、
クライアントフィードバック情報30に設定されている
ネットワークの混雑状況32と、実際のビットレート3
4とに基づいて新しいビットレートを決定する。
【0043】バッファサイズを再計算するには、先に計
算したクライアント5からHTTPビデオサーバ1の間の転
送にかかった時間と、クライアントフィードバック情報
30に設定されているHTTPビデオサーバ1からクライア
ントの5間の転送にかかった時間33と、先に推測した
最新のネットワークの状況とを使用し、クライアント5
からHTTPビデオサーバ1の転送にかかった時間とHTTPビ
デオサーバ1からクライアント5の間の転送にかかった
時間を推測し、これらの両者の時間を2倍した時間中
に、先に決定した新しいビットレートでビデオデータ2
0を配信した場合にのビデオデータ量を計算する。この
ビデオデータ量はクライアント5に必要な最低限のバッ
ファサイズを示すものであり、さらにこのビデオデータ
量に余裕を持たせるため、このビデオデータ量の1.5
〜2倍の値を新しいバッファサイズとする。
【0044】次に、サーバ情報処理モジュール4は現在
のサーバのCPU使用率を求める(ステップS13)。さ
らに、サーバ情報処理モジュール4はここまでに求め
た、クライアント5に配信すべきビデオデータ20の新
しいビットレート、クライアント5で使用するバッファ
サイズ、サーバのCPU使用率、クライアント5−HTTPビ
デオサーバ1の間の転送にかかった時間をフィードバッ
ク応答19としてデータ配信モジュール3に送る。
【0045】データ配信モジュール3は、クライアント
5にフィードバック要求18の応答としてのフィードバ
ック応答19(HTTP応答)を配信する(ステップS1
4)。ここで、配信に成功したか否か確認して(ステッ
プS15)、フィードバック応答19の配信が成功しな
いとクライアント5との接続を切断して(ステップS1
7)、処理を終了する。また、フィードバック応答19
の配信が成功するとデータ配信モジュール3は、フィー
ドバック応答19をクライアント5に配信するととも
に、現在配信しているビデオのビットレートを先ほど決
定したビデオの新しいビットレートに変更(更新)して
(ステップS16)、次のフィードバック要求18を待
つ。
【0046】図11は、フィードバック応答19を示す
説明図であり、図12はサーバフィードバック情報を示
す説明図である。フィードバック応答19にはHTTPのDa
taヘッダに現在の時間が設定され、またEntity Bodyに
はサーバフィードバック情報35、即ちクライアント5
で使用する新しいバッファサイズ36、HTTPビデオサー
バのCPU使用率37、クライアント5からHTTPビデオサ
ーバ1の間の転送にかかった時間38、新しいビットレ
ート39が設定されている。
【0047】次に、HTTPビデオサーバ1からのフィード
バック要求18に対するフィードバック応答19を受信
したクライアント5は、この新しいビットレート39と
新しいバッファサイズ36を反映させてビデオ再生を行
う。一方、フィードバック応答19を受信しビデオ再生
を行なっているクライアント5は、再度フィードバック
要求18をHTTPビデオサーバ1に送る場合は、先のステ
ップS31〜S34で記載のビデオ配信開始応答17か
らフィードバック要求18を配信する時と同様の処理を
行う。即ち、クライアント情報処理モジュール8でフィ
ードバック応答19から各情報を取り出し、HTTPビデオ
サーバ1に対して再度送るフィードバック要求18の間
隔を再決定し(ステップS37)、フィードバック応答
19に設定されている新しいバッファサイズ36をバッ
ファ管理モジュール10に送り、バッファサイズの変更
(先に管理されているバッファサイズの更新)し(ステ
ップS38)、ビデオ配信状況の再調査(ステップS3
9)を行ない、再度フィードバック要求18をHTTPビデ
オサーバ1に送る。以下このようにHTTPビデオサーバ1
とクライアント5の間でフィードバック情報のやり取り
を繰り返すことによりビデオデータ20の再生を行って
いく。
【0048】以上説明したように、本実施の形態によれ
ば、クライアント5、HTTPビデオサーバ1の両方でビデ
オデータ20の配信及び再生に必要な情報がやり取りさ
れるので、ビデオデータ20の配信及び再生に最適なビ
ットレートとバッファを使用することができ、安定した
ビデオデータ20の再生が可能になる。
【0049】即ち、HTTPビデオサーバ1側でクライアン
ト5の性能などのクライアント情報を把握できるので、
クライアント5に対して適切なビットレートのビデオデ
ータ20を配信することができ、またHTTPビデオサーバ
1から配信されるビデオデータ20のビットレートに最
適なバッファサイズがクライアント5で利用できるの
で、ビデオデータ20がバッファに蓄積しきれずにクラ
イアント5でのビデオ再生時にビデオデータ20の再生
が途切れるようなビデオデータ20の再生ができないよ
うなことがない。
【0050】さらに、クライアント5でHTTPビデオサー
バ1の負荷状態がわかるので、HTTPビデオサーバ1の負
荷状態に合わせてビデオデータ20の配信に関する再要
求するフィードバック要求の間隔を決定することがで
き、HTTPビデオサーバ1へのフィードバック要求によっ
てHTTPビデオサーバ1の負荷が増大し、ビデオデータ2
0の配信に悪影響を与えることを防ぐことができる。
【0051】また、HTTPビデオサーバ1から配信されて
いるビデオデータ20に関してのクライアント5からの
フィードバック要求に対してHTTPビデオサーバ1からフ
ィードバック応答が得られるので、現在配信しているビ
デオデータ20の転送レートをビデオデータ20を再生
しながら変更でき、ビデオデータ20のデータ落ちや再
生の途切れなどの問題が生じることがない。
【0052】さらに、HTTPビデオサーバ1から配信され
るビデオデータ20の再生中にビデオデータ20の最適
なバッファサイズがクライアント5で把握でき、このバ
ッファサイズに基づいて、ビデオデータ20の蓄積、再
生ができるので、ビデオデータ20の再生が途切れるよ
うな問題を生じることがない。
【0053】
【発明の効果】この発明は、以上説明したように構成さ
れているので、以下に示すような効果を奏する。
【0054】第1の発明では、サーバにより配信された
ビデオデータとビデオデータの再生に必要なビデオ再生
情報に基づき、クライアントはビデオデータを再生する
と共に、ビデオデータの再生に必要な新たなビデオ再生
情報の要求をサーバに送り、サーバにより作成され配信
された新たなビデオ再生情報に基づいてビデオデータを
新たな状態で再生し直すので、クライアントはデオデー
タの再生が途切れることがなく安定したビデオデータの
再生ができる。
【0055】第2の発明では、サーバがクライアントよ
り配信された性能情報に基づいて決定したビデオデータ
の転送レートとバッファサイズをクライアントに配信
し、又、転送レートに従ってビデオデータをクライアン
トに配信するので、サーバはクライアントに対してビデ
オデータの配信が途切れることがなく安定したビデオデ
ータの配信ができる。
【0056】第3の発明では、データ配信手段により配
信された転送レートに従ってクライアントがビデオデー
タの再生を行うので、クライアントはデオデータの再生
が途切れることがなく安定したビデオデータの再生がで
きる。
【0057】第4の発明では、データ配信手段により配
信された転送レートに基づいてクライアントがビデオデ
ータのバッファ管理を行うので、クライアントはビデオ
データをバッファに最適な状態で格納できる。
【0058】第5の発明では、サーバ情報処理手段がク
ライアントからのフィードバック要求に基づいて決定し
た新たな転送レートと新たなバッファサイズをクライア
ントに配信し、又、新たな転送レートに従ってビデオデ
ータをビデオデータ再生中のクライアントに配信するの
で、サーバはクライアントに対してビデオデータの再生
中にビデオデータの配信が途切れることがなく安定した
ビデオデータの配信ができる。
【0059】第6の発明では、データ配信手段により配
信された新たな転送レートに従ってビデオデータの再生
途中からビデオデータの再生を行うので、クライアント
はビデオデータの再生途中でデオデータの再生が途切れ
ることがなく安定したビデオデータの再生ができる。
【0060】第7の発明では、データ配信手段により配
信された新たなバッファサイズに基づいてクライアント
がビデオ再生中にビデオデータのバッファ管理を行うの
で、クライアントはビデオ再生中にビデオデータをバッ
ファに最適な状態で格納できる。
【0061】第8の発明では、サーバにより配信された
ビデオ再生情報とビデオデータの配信状況に基づいてフ
ィードバック要求を作成するので、クライアントはビデ
オデータの再生に必要な新しい要求を作成することがで
きる。
【0062】第9の発明では、ネットワーク状況とネッ
トワーク混雑状況に基づいてサーバにフィードバック要
求を配信するので、サーバの負荷が増大してビデオデー
タの配信不良が生じることを防止できる。
【図面の簡単な説明】
【図1】 実施の形態1のHTTP動画配信システムの構成
図である。
【図2】 実施の形態1におけるHTTPビデオサーバの処
理の流れを示すフローチャーである。
【図3】 実施の形態1においてクライアントの処理の
流れを示すフローチャートである。
【図4】 実施の形態1におけるビデオ配信開始要求の
説明図である。
【図5】 実施の形態1におけるクライアント情報の説
明図である。
【図6】 実施の形態1におけるHTTPプロキシの処理の
流れを示すフローチャートである。
【図7】 実施の形態1におけるビデオ配信開始応答の
説明図である。
【図8】 実施の形態1におけるフィードバック要求の
説明図である。
【図9】 実施の形態1におけるフィードバック要求の
説明図である。
【図10】 実施の形態1におけるクライアントフィー
ドバック情報の説明図である。
【図11】 実施の形態1におけるフィードバック応答
の説明図である。
【図12】 実施の形態1におけるサーバフィードバッ
ク情報である。
【図13】 従来のHTTPビデオ配信システムの構成図で
ある。
【符号の説明】
1 HTTPビデオサーバ、2 要求受信モジュール、3
データ配信モジュール、4 サーバ情報処理モジュー
ル、5 クライアント、6 要求配信モジュール、7
データ受信モジュール、8 クライアント情報処理モジ
ュール、9 バッファ、10 バッファ管理モジュー
ル、11 ビデオ再生モジュール、12 インターネッ
ト、13 イントラネット、14 プロキシサーバ、1
5 HTTPプロキシ、16 ビデオ配信開始要求、17
ビデオ配信開始応答、18 フィードバック要求、19
フィードバック応答、20 ビデオデータ。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 クライアントと、 上記クライアントにより要求されたデータを上記クライ
    アントに配信するサーバと、 上記クライアントと上記サーバの間の情報の配受信を行
    うプロキシサーバとを備え、 上記クライアントは上記クライアントの性能を記した性
    能情報を上記プロキシサーバを介して上記サーバに配信
    し、 上記サーバは上記クライアントにより配信された上記性
    能情報に基づいて作成したビデオデータの再生に必要な
    ビデオ再生情報を上記プロキシサーバを介して上記クラ
    イアントに配信すると共に、上記性能情報に基づいてビ
    デオデータを上記プロキシサーバを介して上記クライア
    ントに配信し、 上記クライアントは上記サーバにより配信された上記ビ
    デオ再生情報と上記ビデオデータとに基づいて上記ビデ
    オデータを上記クライアントの性能に適した再生状態で
    再生し、また配信された上記ビデオ再生情報と上記ビデ
    オデータの配信状況に基づいて作成した新たなビデオ再
    生情報の要求であるフィードバック要求を上記プロキシ
    サーバを介して上記サーバに配信し、 上記サーバは上記クライアントにより配信された上記フ
    ィードバック要求に基づいて作成した上記ビデオデータ
    の再生に反映される新たなビデオ再生情報であるフィー
    ドバック応答を上記プロキシサーバを介して上記クライ
    アントに配信し、 上記クライアントは上記サーバにより配信された上記フ
    ィードバック応答に基づいて、上記ビデオデータを新た
    な状態で再生し直すことを特徴とする動画配信システ
    ム。
  2. 【請求項2】 上記サーバは、上記クライアントが接続
    されているネットワークの帯域とCPU性能とメモリ容
    量と現在の時間とからなる性能情報に基づいて上記ビデ
    オデータの転送レートを決定し、上記転送レートに基づ
    いてバッファサイズを決定するサーバ情報処理手段と、 上記サーバ情報処理手段により決定された上記転送レー
    トとバッファサイズとからなるビデオ再生情報を上記ク
    ライアントに配信し、又、上記転送レートに従って上記
    ビデオデータを上記クライアントに配信するデータ配信
    手段とを備えたことを特徴とする請求項1記載の動画配
    信システム。
  3. 【請求項3】 上記クライアントは、上記データ配信手
    段により配信された上記転送レートに従って上記ビデオ
    データの再生を行うビデオ再生手段を備えたことを特徴
    とする請求項2記載の動画配信システム。
  4. 【請求項4】 上記クライアントは、上記データ配信手
    段により配信された上記バッファサイズに基づいて上記
    ビデオデータのバッファ管理を行うバッファ管理手段を
    備えたことを特徴とする請求項2記載の動画配信システ
    ム。
  5. 【請求項5】 上記サーバ情報処理手段は、上記性能情
    報の配信時間と上記ビデオ再生情報の配信時間とに基づ
    いて求めたネットワーク状況と、上記ビデオデータの配
    信間隔に基づいて求めたネットワーク混雑状況と、上記
    ビデオ再生情報の配信時間と、上記サーバから配信され
    た上記ビデオデータの実際の転送レートとからなるフィ
    ードバック要求に基づいて上記ビデオデータの新たな転
    送レートを決定し、上記新たな転送レートに基づいて新
    たなバッファサイズを決定し、 上記データ配信手段は、上記新たな転送レートと新たな
    バッファサイズとからなるフィードバック応答を上記ビ
    デオデータ再生中の上記クライアントに配信し、又、上
    記新たな転送レートに従って上記ビデオデータを上記ビ
    デオデータ再生中の上記クライアントに配信することを
    特徴とする請求項2記載の動画配信システム。
  6. 【請求項6】 上記クライアントは、上記データ配信手
    段により配信された上記新たな転送レートに従って上記
    ビデオデータの再生途中から上記ビデオデータの再生を
    行うビデオ再生手段を備えたことを特徴とする請求項5
    記載の動画配信システム。
  7. 【請求項7】 上記クライアントは、上記データ配信手
    段により配信された上記新たなバッファサイズに基づい
    て、上記新たな転送レートに従って配信される上記ビデ
    オデータのバッファ管理を上記ビデオデータ再生中に行
    うバッファ管理手段を備えたことを特徴とする請求項5
    記載の動画配信システム。
  8. 【請求項8】 上記クライアントは、上記サーバにより
    配信された上記ビデオ再生情報と上記ビデオデータの配
    信状況に基づいて上記フィードバック要求を作成するク
    ライアント情報処理手段を備たことを特徴とする請求項
    2記載の動画配信システム。
  9. 【請求項9】 上記クライアント情報処理手段は、上記
    性能情報の配信時間と上記ビデオ再生情報の配信時間と
    に基づいて求めたネットワーク状況と、上記ビデオデー
    タの配信間隔に基づいて求めたネットワーク混雑状況と
    に基づき、上記フィードバック要求を配信するタイミン
    グを決定することを特徴とする請求項8記載の動画配信
    システム。
JP10291743A 1998-10-14 1998-10-14 動画配信システム Pending JP2000122951A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10291743A JP2000122951A (ja) 1998-10-14 1998-10-14 動画配信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10291743A JP2000122951A (ja) 1998-10-14 1998-10-14 動画配信システム

Publications (1)

Publication Number Publication Date
JP2000122951A true JP2000122951A (ja) 2000-04-28

Family

ID=17772841

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10291743A Pending JP2000122951A (ja) 1998-10-14 1998-10-14 動画配信システム

Country Status (1)

Country Link
JP (1) JP2000122951A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004503035A (ja) * 2000-07-07 2004-01-29 テレフォンアクチーボラゲット エル エム エリクソン(パブル) 特定のアクセスに使用されるベアラ能力に応じて情報量を調整する移動体通信システム
JP2009237933A (ja) * 2008-03-27 2009-10-15 Nec Personal Products Co Ltd 情報処理システム、情報端末、及び、サーバ
WO2013042758A1 (ja) 2011-09-21 2013-03-28 日本電気株式会社 コンテンツ配信システム、キャッシュサーバおよびコンテンツ配信方法
US8856358B2 (en) 2000-07-07 2014-10-07 Optis Wireless Technology, Llc System and method for adapting information content according to the capability of the access bearer

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004503035A (ja) * 2000-07-07 2004-01-29 テレフォンアクチーボラゲット エル エム エリクソン(パブル) 特定のアクセスに使用されるベアラ能力に応じて情報量を調整する移動体通信システム
JP4925548B2 (ja) * 2000-07-07 2012-04-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 特定のアクセスに使用されるベアラ能力に応じて情報量を調整する移動体通信システム
US8856358B2 (en) 2000-07-07 2014-10-07 Optis Wireless Technology, Llc System and method for adapting information content according to the capability of the access bearer
US9866617B2 (en) 2000-07-07 2018-01-09 Optis Wireless Technology, Llc System and method for adapting information content according to the capability of the access bearer
JP2009237933A (ja) * 2008-03-27 2009-10-15 Nec Personal Products Co Ltd 情報処理システム、情報端末、及び、サーバ
WO2013042758A1 (ja) 2011-09-21 2013-03-28 日本電気株式会社 コンテンツ配信システム、キャッシュサーバおよびコンテンツ配信方法

Similar Documents

Publication Publication Date Title
US11539768B2 (en) System and method of minimizing network bandwidth retrieved from an external network
US9906573B2 (en) Streaming media
US6085252A (en) Device, system and method for real-time multimedia streaming
US7953883B2 (en) Failover mechanism for real-time packet streaming sessions
US20030126277A1 (en) Apparatus and method for providing multimedia streaming service by using point-to-point connection
JP5464423B2 (ja) ピアツーピア間のファイル転送モデル及びクライアント−サーバ間のファイル転送モデルを用いてクライアントへファイルを転送するための方法及び装置
US7159234B1 (en) System and method for streaming media server single frame failover
US6098180A (en) Robust delivery system
US20160156686A1 (en) System and method for managing media
US20130124747A1 (en) System and method for progressive download using surplus network capacity
US20020032884A1 (en) Robust delivery system
KR20140103338A (ko) 네트워크-시작 콘텐츠 스트리밍 컨트롤
WO2019100831A1 (zh) 传输层协议适配的方法、网元设备及系统
JP2003169091A (ja) ストリーミング配信制御方法及び配信サーバ並びにクライアント端末
JP2000122951A (ja) 動画配信システム
WO2010121531A1 (zh) 一种终端管理系统更新终端状态的方法及终端管理系统
US11843649B2 (en) System and method of minimizing network bandwidth retrieved from an external network
WO2009086763A1 (zh) 一种源切换的方法、系统和设备
US20020065918A1 (en) Method and apparatus for efficient and accountable distribution of streaming media content to multiple destination servers in a data packet network (DPN)
WO2010025635A1 (zh) 一种播放切换方法、媒体服务器、用户终端和系统
EP1597880A2 (fr) Organe de mediation multi-domaines multi-fournisseurs entre fournisseur de service applicatif et fournisseur de ressource dans un reseau de telecommunications
EP1842347A2 (en) Universal port user agent capable of caching route information among sessions and associated method
US7945665B2 (en) Centralized load distribution for an H.323 network
KR20060070339A (ko) Sip 기반의 프리젠스 서버 및 그 제어 방법
JP2006185384A (ja) コンテンツサーバ、コンテンツ受信装置、プログラム及び記録媒体

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040622