JP2000172599A - マルチキャストストリームデータ転送方法およびシステム - Google Patents
マルチキャストストリームデータ転送方法およびシステムInfo
- Publication number
- JP2000172599A JP2000172599A JP10350963A JP35096398A JP2000172599A JP 2000172599 A JP2000172599 A JP 2000172599A JP 10350963 A JP10350963 A JP 10350963A JP 35096398 A JP35096398 A JP 35096398A JP 2000172599 A JP2000172599 A JP 2000172599A
- Authority
- JP
- Japan
- Prior art keywords
- server
- client
- stream data
- data
- packets
- 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
Links
Landscapes
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
(57)【要約】
【課題】 多数のコンピュータが接続されたコンピュ
ータネットワークにおけるストリームデータのマルチキ
ャストによる転送方法およびシステムに関するものであ
る。 【解決手段】 クライアント側にレート変更要求部を備
えて、受信バッファの空き容量を監視し、該空き容量に
応じたレート変更要求をユニキャストでサーバに出すよ
うにする。一方、サーバ側にレート変更要求処理部を備
えるようにして、上記のようにクライアント側より出さ
れるレート変更要求に基づいて、上記レート制御部に設
定された送出レートを更新する構成とする。
ータネットワークにおけるストリームデータのマルチキ
ャストによる転送方法およびシステムに関するものであ
る。 【解決手段】 クライアント側にレート変更要求部を備
えて、受信バッファの空き容量を監視し、該空き容量に
応じたレート変更要求をユニキャストでサーバに出すよ
うにする。一方、サーバ側にレート変更要求処理部を備
えるようにして、上記のようにクライアント側より出さ
れるレート変更要求に基づいて、上記レート制御部に設
定された送出レートを更新する構成とする。
Description
【0001】
【発明の属する技術分野】本発明は、多数のコンピュー
タが接続されたコンピュータネットワークにおけるデー
タ転送方法およびシステムに関し、特に、時間的に連続
するデータであるストリームデータのマルチキャストに
よる転送方法およびシステムに関するものである。
タが接続されたコンピュータネットワークにおけるデー
タ転送方法およびシステムに関し、特に、時間的に連続
するデータであるストリームデータのマルチキャストに
よる転送方法およびシステムに関するものである。
【0002】
【従来の技術】近年、コンピュータの能力の向上、コン
ピュータのネットワーク接続の一般化によって、コンピ
ュータネットワークを介してストリームデータのリアル
タイムな転送が要求されている。また、サーバより複数
のクライアントに同時に同一データを転送するマルチキ
ャストでのデータ転送の要求も高まっている。ここでス
トリームデータとは、映像、音声などの時間的に連続な
データをいう。このストリームデータは当然パケットに
編集されてネットワーク上で転送されるが、このとき、
パケットの所定数の集合体単位で扱う場合、あるいはそ
のような集合体単位に関係なく扱われる場合を問わずこ
こではストリームデータという。
ピュータのネットワーク接続の一般化によって、コンピ
ュータネットワークを介してストリームデータのリアル
タイムな転送が要求されている。また、サーバより複数
のクライアントに同時に同一データを転送するマルチキ
ャストでのデータ転送の要求も高まっている。ここでス
トリームデータとは、映像、音声などの時間的に連続な
データをいう。このストリームデータは当然パケットに
編集されてネットワーク上で転送されるが、このとき、
パケットの所定数の集合体単位で扱う場合、あるいはそ
のような集合体単位に関係なく扱われる場合を問わずこ
こではストリームデータという。
【0003】図11は従来のマルチキャストストリーム
データ転送システムの一例を示すものである。このシス
テムはデータを提供する側のサーバ500と、データの
提供を受ける側の複数のクライアント508、518、
528とよりなり、その間にネットワーク507が介在
した構成となっている。複数のクライアント508、5
18、528は全く同じ構成である。以下、図11に基
づいて従来のシステムについて、その動作とともに更に
説明する。クライアント508、518、528に関し
ては全く同じ構成であるため、以下クライアント508
を例に説明する。
データ転送システムの一例を示すものである。このシス
テムはデータを提供する側のサーバ500と、データの
提供を受ける側の複数のクライアント508、518、
528とよりなり、その間にネットワーク507が介在
した構成となっている。複数のクライアント508、5
18、528は全く同じ構成である。以下、図11に基
づいて従来のシステムについて、その動作とともに更に
説明する。クライアント508、518、528に関し
ては全く同じ構成であるため、以下クライアント508
を例に説明する。
【0004】サーバ500は、以下のように構成され
る。すなわち、以下に説明するように、クライアント5
08側からストリームデータの転送開始要求が出される
と、該要求はパケット受信部501を介して開始要求処
理部516に渡され、該開始要求処理部516がレート
制御部505を起動することになる。該レート制御部5
05はハードディスク等の補助記憶装置503よりスト
リームデータを読み出して、一旦送信バッファ504に
蓄積する。
る。すなわち、以下に説明するように、クライアント5
08側からストリームデータの転送開始要求が出される
と、該要求はパケット受信部501を介して開始要求処
理部516に渡され、該開始要求処理部516がレート
制御部505を起動することになる。該レート制御部5
05はハードディスク等の補助記憶装置503よりスト
リームデータを読み出して、一旦送信バッファ504に
蓄積する。
【0005】上記レート制御部505には、クライアン
ト508の再生レートとネットワークの転送可能容量に
応じて予め所定の送出レートが設定されおり、送信バッ
ファ504に蓄積されたストリームデータは該レート制
御部505の制御に基づいて上記所定の送出レートで読
み出されてパケット送信部502に転送され、該パケッ
ト送信部502では該ストリームデータをパケットに組
み込んでネットワーク507にマルチキャストで送出す
ることになる。
ト508の再生レートとネットワークの転送可能容量に
応じて予め所定の送出レートが設定されおり、送信バッ
ファ504に蓄積されたストリームデータは該レート制
御部505の制御に基づいて上記所定の送出レートで読
み出されてパケット送信部502に転送され、該パケッ
ト送信部502では該ストリームデータをパケットに組
み込んでネットワーク507にマルチキャストで送出す
ることになる。
【0006】一方、クライアント508は以下のように
なっている。すなわち、ネットワーク507より受信し
たデータパケットはパケット受信部509に受け取ら
れ、ここでパケットが解かれて受信バッファ511に順
次蓄積される。データ再生部512は上記のように受信
バッファ511に蓄積されたデータを順次所定の再生レ
ートで読み出して表示装置に渡すようになっている。
なっている。すなわち、ネットワーク507より受信し
たデータパケットはパケット受信部509に受け取ら
れ、ここでパケットが解かれて受信バッファ511に順
次蓄積される。データ再生部512は上記のように受信
バッファ511に蓄積されたデータを順次所定の再生レ
ートで読み出して表示装置に渡すようになっている。
【0007】転送の開始を制御するために、クライアン
ト508側に転送開始要求部517が備えられ、オペレ
ータの指示に従って、この転送開始要求部517が転送
開始要求を出す。この転送開始要求はパケット送信部5
10に渡され、ここで転送開始要求パケットに編集さ
れ、ネットワーク507を介してサーバ500に転送さ
れる。これによって、サーバ500の開始要求処理部5
16が上記したようにレート制御部505を起動してデ
ータ転送が開始されることになる。
ト508側に転送開始要求部517が備えられ、オペレ
ータの指示に従って、この転送開始要求部517が転送
開始要求を出す。この転送開始要求はパケット送信部5
10に渡され、ここで転送開始要求パケットに編集さ
れ、ネットワーク507を介してサーバ500に転送さ
れる。これによって、サーバ500の開始要求処理部5
16が上記したようにレート制御部505を起動してデ
ータ転送が開始されることになる。
【0008】以上の動作を繰り返しサーバとクライアン
ト間でストリームデータの転送が行われることになる
が、一般にコンピュータネットワークは該ネットワーク
の状態によってある程度のパケット落ちが発生し、ま
た、クライアントの処理能力の不足、ストリームデータ
の再生レートの揺らぎ等で受信バッファのあふれが発生
した場合にはデータ欠落が発生する。
ト間でストリームデータの転送が行われることになる
が、一般にコンピュータネットワークは該ネットワーク
の状態によってある程度のパケット落ちが発生し、ま
た、クライアントの処理能力の不足、ストリームデータ
の再生レートの揺らぎ等で受信バッファのあふれが発生
した場合にはデータ欠落が発生する。
【0009】そこで、上記従来のシステムにおいても、
データが欠落した場合の補償をすることがなされてい
る。
データが欠落した場合の補償をすることがなされてい
る。
【0010】すなわち、まず、クライアント508の欠
落率報告部513が受信バッファ511を常時監視する
ようにしておき、データ欠落が発生したときにデータ欠
落率の報告をパケット送信部に渡す。ここで、サーバ5
00のアドレスと送出レート変更要求パケットである旨
の識別子と上記欠落率が載せられたレート変更要求パケ
ットを作成し、ネットワークに送出する。
落率報告部513が受信バッファ511を常時監視する
ようにしておき、データ欠落が発生したときにデータ欠
落率の報告をパケット送信部に渡す。ここで、サーバ5
00のアドレスと送出レート変更要求パケットである旨
の識別子と上記欠落率が載せられたレート変更要求パケ
ットを作成し、ネットワークに送出する。
【0011】このように送出されたレート変更要求パケ
ットはサーバ500のパケット受信部501に受け取ら
れ、ここで、レート変更要求パケットである旨の判別が
なされてレート変更部506に渡される。このレート変
更部506には、例えば上記レート変更要求パケットに
含まれる上記クライアント508での欠落率に応じた送
出レートがテーブルとして備えられており、レート変更
部506は該テーブルを参照して新たな送出レートを決
定し、該送出レートをレート制御部505に転送する。
これによって、レート制御部505は送出レートを下げ
て(あるいは上げて)送信バッファ504からストリー
ムデータを読み出しパケット送信部502に渡すことに
なる。
ットはサーバ500のパケット受信部501に受け取ら
れ、ここで、レート変更要求パケットである旨の判別が
なされてレート変更部506に渡される。このレート変
更部506には、例えば上記レート変更要求パケットに
含まれる上記クライアント508での欠落率に応じた送
出レートがテーブルとして備えられており、レート変更
部506は該テーブルを参照して新たな送出レートを決
定し、該送出レートをレート制御部505に転送する。
これによって、レート制御部505は送出レートを下げ
て(あるいは上げて)送信バッファ504からストリー
ムデータを読み出しパケット送信部502に渡すことに
なる。
【0012】
【発明が解決しようとする課題】しかしながら、このよ
うな従来のストリームデータ転送システムでは、上記の
ようにクライアント508がデータの欠落を検出してか
らはじめてサーバ500からの送出レートを下げるとい
う手順で処理されているため、一旦欠落したデータの再
生はできなくなり、更に、欠落が生じた状態のデータを
再生した場合には画像の乱れや音の途切れが発生すると
いう欠点を有していた。
うな従来のストリームデータ転送システムでは、上記の
ようにクライアント508がデータの欠落を検出してか
らはじめてサーバ500からの送出レートを下げるとい
う手順で処理されているため、一旦欠落したデータの再
生はできなくなり、更に、欠落が生じた状態のデータを
再生した場合には画像の乱れや音の途切れが発生すると
いう欠点を有していた。
【0013】尚、ストリームデータ以外の例えばテキス
トデータをサーバ500からクライアント508に転送
する方法として、図12に示すような方法がある。すな
わち、所定サイズ単位のデータ“Data”がサーバ500
からクライアント508に転送される毎に確認信号“Ac
k ”がクライアント508からサーバ500に返えさ
れ、該確認信号“Ack ”を受けてサーバ500が新たな
データ“Data”を送出するようになっている。
トデータをサーバ500からクライアント508に転送
する方法として、図12に示すような方法がある。すな
わち、所定サイズ単位のデータ“Data”がサーバ500
からクライアント508に転送される毎に確認信号“Ac
k ”がクライアント508からサーバ500に返えさ
れ、該確認信号“Ack ”を受けてサーバ500が新たな
データ“Data”を送出するようになっている。
【0014】この方法でストリームデータを転送する
と、クライアント508はデータ抜けのデータを受け取
ると確認信号“Ack ”を返さないことになり、サーバは
次のデータ“Data”を送出できなくなる。この状態にな
ると、例えば所定時間T0 が経過するまで次のデータは
転送されないので、受信バッファ511にデータ欠乏が
発生することになり、画像が止まったり、乱れたりす
る。
と、クライアント508はデータ抜けのデータを受け取
ると確認信号“Ack ”を返さないことになり、サーバは
次のデータ“Data”を送出できなくなる。この状態にな
ると、例えば所定時間T0 が経過するまで次のデータは
転送されないので、受信バッファ511にデータ欠乏が
発生することになり、画像が止まったり、乱れたりす
る。
【0015】本発明は、上記従来のストリームデータ転
送システムの欠点に鑑みて提案されたものであって、ク
ライアントのバッファにデータ欠落を発生するする前に
サーバからの送出レートを下げ、また、たとえクライア
ントのバッファにデータが欠落した場合であっても、該
欠落データを再送したり復元することによって、より信
頼性のあるマルチキャストストリームデータ転送方法お
よびシステムを提供することを目的とする。
送システムの欠点に鑑みて提案されたものであって、ク
ライアントのバッファにデータ欠落を発生するする前に
サーバからの送出レートを下げ、また、たとえクライア
ントのバッファにデータが欠落した場合であっても、該
欠落データを再送したり復元することによって、より信
頼性のあるマルチキャストストリームデータ転送方法お
よびシステムを提供することを目的とする。
【0016】
【課題を解決するための手段】上記目的を達成するため
に本発明は以下の手段を採用している。先ず、本発明が
適用されるマルチキャストストリームデータ転送システ
ムは、以下のサーバ400と、クライアント470、4
71、472、…を備えた構成となっている。上記サー
バ400は、記憶手段(図1上では補助記憶装置403
と送信バッファ404)よりレート制御部405の制御
に基づいて所定の送出レートで読み出したストリームデ
ータをパケット送信部402でパケットに編集してネッ
トワーク300を介して上記クライアント470、47
1、…にマルチキャストで転送するとともに、上記クラ
イアント470、471、…よりの要求をパケット受信
部401で受けて必要な処理をする。
に本発明は以下の手段を採用している。先ず、本発明が
適用されるマルチキャストストリームデータ転送システ
ムは、以下のサーバ400と、クライアント470、4
71、472、…を備えた構成となっている。上記サー
バ400は、記憶手段(図1上では補助記憶装置403
と送信バッファ404)よりレート制御部405の制御
に基づいて所定の送出レートで読み出したストリームデ
ータをパケット送信部402でパケットに編集してネッ
トワーク300を介して上記クライアント470、47
1、…にマルチキャストで転送するとともに、上記クラ
イアント470、471、…よりの要求をパケット受信
部401で受けて必要な処理をする。
【0017】また、上記クライアント470(クライア
ント471、…も同様)は、上記サーバ400よりネッ
トワーク300を介して所定の送出レートで送出される
マルチキャストストリームデータをパケット受信部41
0で受信して受信バッファ412に一旦蓄積して再生す
るとともに、上記サーバ400に対する必要な指示をパ
ケット送信部411より送出する。
ント471、…も同様)は、上記サーバ400よりネッ
トワーク300を介して所定の送出レートで送出される
マルチキャストストリームデータをパケット受信部41
0で受信して受信バッファ412に一旦蓄積して再生す
るとともに、上記サーバ400に対する必要な指示をパ
ケット送信部411より送出する。
【0018】上記システムにおいて、本発明は上記受信
バッファ412の空き状態に対応してクライアント47
0側よりユニキャストでレート変更要求を上記サーバ4
00に出し、該レート変更要求に基づいて上記サーバ4
00側の送出レートを変更するようにする。
バッファ412の空き状態に対応してクライアント47
0側よりユニキャストでレート変更要求を上記サーバ4
00に出し、該レート変更要求に基づいて上記サーバ4
00側の送出レートを変更するようにする。
【0019】具体的には、クライアント470側にレー
ト変更要求部413を備えて、受信バッファ412の空
き容量を監視し、該空き容量に応じたレート変更要求を
ユニキャストで上記サーバ400に出すようにする。一
方、上記サーバ400側にレート変更要求処理部416
を備えるようにして、上記のようにクライアント470
側より出されるレート変更要求に基づいて、上記レート
制御部405に設定された送出レートを更新するととも
に、上記サーバ400が他のクライアントより上記レー
ト変更要求と同一内容のレート変更要求を受信した場
合、これらレート変更要求を無効とする構成とする。
ト変更要求部413を備えて、受信バッファ412の空
き容量を監視し、該空き容量に応じたレート変更要求を
ユニキャストで上記サーバ400に出すようにする。一
方、上記サーバ400側にレート変更要求処理部416
を備えるようにして、上記のようにクライアント470
側より出されるレート変更要求に基づいて、上記レート
制御部405に設定された送出レートを更新するととも
に、上記サーバ400が他のクライアントより上記レー
ト変更要求と同一内容のレート変更要求を受信した場
合、これらレート変更要求を無効とする構成とする。
【0020】これによって、受信バッファ412よりの
ストリームデータのオーバーフローはなくなり、上記サ
ーバの負荷上昇を抑えつつ、上記レート変更ができるこ
とになる。
ストリームデータのオーバーフローはなくなり、上記サ
ーバの負荷上昇を抑えつつ、上記レート変更ができるこ
とになる。
【0021】また、上記パケット受信部410で受信さ
れたストリームデータの欠落に対応してクライアント4
70側より出される再送要求に基づいて、サーバ400
側の記憶手段より該欠落データに対応するデータを送出
するようにもする。
れたストリームデータの欠落に対応してクライアント4
70側より出される再送要求に基づいて、サーバ400
側の記憶手段より該欠落データに対応するデータを送出
するようにもする。
【0022】具体的には、クライアント470側に再送
要求部414を備え、上記パケット受信部410が受信
するデータ欠落を監視するとともに、該欠落データに対
応するデータを上記サーバ400にユニキャストで再送
要求を出すようにする。一方、サーバ400側に再送制
御部407を備えて上記再送要求に基づいて、欠落デー
タに対応するストリームデータの再送処理を行うととも
に、他のクライアントより上記再送要求と同一内容の再
送要求を受信した場合、これら再送要求を無効とするよ
うにする。
要求部414を備え、上記パケット受信部410が受信
するデータ欠落を監視するとともに、該欠落データに対
応するデータを上記サーバ400にユニキャストで再送
要求を出すようにする。一方、サーバ400側に再送制
御部407を備えて上記再送要求に基づいて、欠落デー
タに対応するストリームデータの再送処理を行うととも
に、他のクライアントより上記再送要求と同一内容の再
送要求を受信した場合、これら再送要求を無効とするよ
うにする。
【0023】これによって、たとえデータ欠落が発生し
ても、上記サーバ400とネットワーク300の負荷上
昇を抑えつつ、該欠落を補完できることになる。
ても、上記サーバ400とネットワーク300の負荷上
昇を抑えつつ、該欠落を補完できることになる。
【0024】また、上記クライアント470で受信され
たパケットがあらかじめ設定された所定数になる毎に受
信が完了したことを示す受信応答を上記クライアント4
70よりユニキャストで上記サーバ400に送出するこ
ともできる。
たパケットがあらかじめ設定された所定数になる毎に受
信が完了したことを示す受信応答を上記クライアント4
70よりユニキャストで上記サーバ400に送出するこ
ともできる。
【0025】この場合、上記サーバ400側で上記所定
数のパケット送出毎に上記ストリームデータの送出を一
時中止し、該所定数のパケットに対応する上記受信応答
を全てのクライアントから受信することにより次の所定
数のパケットの送出を再開するようにする。あるいは、
上記サーバ400が上記所定数のパケット単位に上記ス
トリームデータを連続に送出するとともに該送出に並行
して、送出済の上記所定数のパケットに対応する上記受
信応答を受信し、全てのクライアントから受信していな
い場合、現在送出中の上記所定数のパケット送出後に上
記ストリームデータの送出を一時中止し、全てのクライ
アントから上記受信応答を受信することにより上記スト
リームデータの送出を再開するようにすることができ
る。
数のパケット送出毎に上記ストリームデータの送出を一
時中止し、該所定数のパケットに対応する上記受信応答
を全てのクライアントから受信することにより次の所定
数のパケットの送出を再開するようにする。あるいは、
上記サーバ400が上記所定数のパケット単位に上記ス
トリームデータを連続に送出するとともに該送出に並行
して、送出済の上記所定数のパケットに対応する上記受
信応答を受信し、全てのクライアントから受信していな
い場合、現在送出中の上記所定数のパケット送出後に上
記ストリームデータの送出を一時中止し、全てのクライ
アントから上記受信応答を受信することにより上記スト
リームデータの送出を再開するようにすることができ
る。
【0026】具体的には、上記サーバ400に、あらか
じめ設定された所定数のパケット送出毎に上記ストリー
ムデータの送出を一時中止し、上記所定数になる毎に受
信が完了したことを示す上記クライアントより出される
受信応答を全てのクライアントから受信することにより
次の所定数のパケットの送出を再開する受信応答処理部
420を、上記クライアント470に、受信したパケッ
トがあらかじめ設定された所定数になる毎に受信が完了
したことを示す受信応答をユニキャストで上記サーバ4
00に送出する受信応答部421を備える構成とする。
じめ設定された所定数のパケット送出毎に上記ストリー
ムデータの送出を一時中止し、上記所定数になる毎に受
信が完了したことを示す上記クライアントより出される
受信応答を全てのクライアントから受信することにより
次の所定数のパケットの送出を再開する受信応答処理部
420を、上記クライアント470に、受信したパケッ
トがあらかじめ設定された所定数になる毎に受信が完了
したことを示す受信応答をユニキャストで上記サーバ4
00に送出する受信応答部421を備える構成とする。
【0027】あるいは、上記サーバ400に、あらかじ
め設定された所定数のパケット単位に上記ストリームデ
ータを連続に送出するとともに該送出に並行して、送出
済の上記所定数のパケットの受信が完了したことを示す
上記クライアントより出される受信応答を受信し、全て
のクライアントから受信していない場合、現在送出中の
上記所定数のパケット送出後に上記ストリームデータの
送出を一時中止し、全てのクライアントから上記受信応
答を受信することにより上記ストリームデータの送出を
再開する受信応答処理部420と、上記クライアント4
70に上記受信応答部421を備える構成とする。
め設定された所定数のパケット単位に上記ストリームデ
ータを連続に送出するとともに該送出に並行して、送出
済の上記所定数のパケットの受信が完了したことを示す
上記クライアントより出される受信応答を受信し、全て
のクライアントから受信していない場合、現在送出中の
上記所定数のパケット送出後に上記ストリームデータの
送出を一時中止し、全てのクライアントから上記受信応
答を受信することにより上記ストリームデータの送出を
再開する受信応答処理部420と、上記クライアント4
70に上記受信応答部421を備える構成とする。
【0028】よって、上記受信応答部421が受信バッ
ファ412の空きを監視し、上記所定数のパケットを受
け取れるだけの空きがない場合には上記受信応答の送信
を空きができるまで待つことによって、受信バッファ4
12よりのストリームデータのオーバーフローはなくな
ることになる。
ファ412の空きを監視し、上記所定数のパケットを受
け取れるだけの空きがない場合には上記受信応答の送信
を空きができるまで待つことによって、受信バッファ4
12よりのストリームデータのオーバーフローはなくな
ることになる。
【0029】また、上記サーバ400側で送出するパケ
ットの数があらかじめ設定された所定数になる毎に、該
所定数のパケットに対応するパリティ情報をパリティパ
ケットとして上記クライアント470に転送し、該クラ
イアント470が上記パリティパケットに基づいて欠落
したパケットを復元することもできる。
ットの数があらかじめ設定された所定数になる毎に、該
所定数のパケットに対応するパリティ情報をパリティパ
ケットとして上記クライアント470に転送し、該クラ
イアント470が上記パリティパケットに基づいて欠落
したパケットを復元することもできる。
【0030】具体的には、上記サーバ400に、送出す
るパケットの数があらかじめ設定された所定数になる毎
に、該所定数のパケットに対応するパリティ情報を生成
するパリティ生成部430と、上記クライアント470
に、上記サーバ400より送信された上記パリティ情報
に基づいて欠落したパケットを復元するパリティ処理部
431を備える構成とする。
るパケットの数があらかじめ設定された所定数になる毎
に、該所定数のパケットに対応するパリティ情報を生成
するパリティ生成部430と、上記クライアント470
に、上記サーバ400より送信された上記パリティ情報
に基づいて欠落したパケットを復元するパリティ処理部
431を備える構成とする。
【0031】これによって、たとえデータ欠落が発生し
ても該欠落に対応するデータを再送することなく補完で
きることになる。
ても該欠落に対応するデータを再送することなく補完で
きることになる。
【0032】本発明は、上記レート変更処理に係る構
成、上記再送処理に係る構成、上記パリティ処理に係る
構成、上記受信応答処理に係る構成についてそれぞれ単
独で使用することも可能である。更に、上記各処理を併
用する構成とすることも可能である。また、上記各処理
に係る構成をすべて備え、ストリームデータの転送に要
求される信頼性等に応じて使用する機能を選択するよう
に構成することも可能である。
成、上記再送処理に係る構成、上記パリティ処理に係る
構成、上記受信応答処理に係る構成についてそれぞれ単
独で使用することも可能である。更に、上記各処理を併
用する構成とすることも可能である。また、上記各処理
に係る構成をすべて備え、ストリームデータの転送に要
求される信頼性等に応じて使用する機能を選択するよう
に構成することも可能である。
【0033】
【実施の形態】(実施の形態1)図1は本発明のマルチ
キャストストリームデータ転送システムの1実施例を示
すものであり、以下図1に基づいて本発明のシステムの
構成についてその動作とともに説明する。
キャストストリームデータ転送システムの1実施例を示
すものであり、以下図1に基づいて本発明のシステムの
構成についてその動作とともに説明する。
【0034】本システムはサーバ400と複数のクライ
アント470、471、472がネットワーク300で
結ばれている点は上記従来のシステムと全く同様であ
る。また、複数のクライアント470、471、472
は全く同じ構成であるため、以下クライアント470を
例に説明する。
アント470、471、472がネットワーク300で
結ばれている点は上記従来のシステムと全く同様であ
る。また、複数のクライアント470、471、472
は全く同じ構成であるため、以下クライアント470を
例に説明する。
【0035】オペレータがキーボード、あるいはカーソ
ル等の入力手段と画面を用いて特定のファイルの転送指
示を出すと、クライアント470の転送開始要求部48
0が開始要求をパケット送信部411に通知し、これを
受けて、パケット送信部411は図6(d) に示すように
発信元アドレス、送信先アドレス、パケット種別識
別子(転送開始要求)、ファイルを特定する事項(フ
ァイル名あるいはファイル番号)、更に必要に応じて
以下に説明する転送開始位置番号を載せた転送要求パ
ケットをネットワーク300に送出する。
ル等の入力手段と画面を用いて特定のファイルの転送指
示を出すと、クライアント470の転送開始要求部48
0が開始要求をパケット送信部411に通知し、これを
受けて、パケット送信部411は図6(d) に示すように
発信元アドレス、送信先アドレス、パケット種別識
別子(転送開始要求)、ファイルを特定する事項(フ
ァイル名あるいはファイル番号)、更に必要に応じて
以下に説明する転送開始位置番号を載せた転送要求パ
ケットをネットワーク300に送出する。
【0036】上記転送開始位置番号とは、後述するよう
にサーバ400側のレート制御部405で生成され、パ
ケット送信部402で送信されるデータパケットに付さ
れるパケット番号とは別の当該データのファイル上の位
置を示す番号であって、後述する再送処理に必要とな
る。すなわち、図4に示すように上記指定されたファイ
ルFを特定のバイト単位〔例えば1パケット相当のバイ
ト数(例えば1Kb)〕で区切って形成したセクション
に、順次割り振った番号(fのサフィックスを付して表
している)の中の読み出し開始位置に相当する番号であ
って、ファイルの先頭から読み出すときは、該番号はも
ちろん0であるが、途中から読み出すときは該当位置に
対応する番号を示すことになる。もっとも、オペレータ
は例えば先頭から読み出し開始位置に対応する迄の時間
等オペレータの理解できる数値で当該転送開始位置を指
定し、該数値を上記転送開始要求部480が上記のセク
ションの番号に変換することになる。もっとも、この位
置番号は後述する再送処理をする場合には上記データパ
ケットに載せる必要があるが、再送処理をしない場合に
は上記データパケットに載せる必要はないことになる。
にサーバ400側のレート制御部405で生成され、パ
ケット送信部402で送信されるデータパケットに付さ
れるパケット番号とは別の当該データのファイル上の位
置を示す番号であって、後述する再送処理に必要とな
る。すなわち、図4に示すように上記指定されたファイ
ルFを特定のバイト単位〔例えば1パケット相当のバイ
ト数(例えば1Kb)〕で区切って形成したセクション
に、順次割り振った番号(fのサフィックスを付して表
している)の中の読み出し開始位置に相当する番号であ
って、ファイルの先頭から読み出すときは、該番号はも
ちろん0であるが、途中から読み出すときは該当位置に
対応する番号を示すことになる。もっとも、オペレータ
は例えば先頭から読み出し開始位置に対応する迄の時間
等オペレータの理解できる数値で当該転送開始位置を指
定し、該数値を上記転送開始要求部480が上記のセク
ションの番号に変換することになる。もっとも、この位
置番号は後述する再送処理をする場合には上記データパ
ケットに載せる必要があるが、再送処理をしない場合に
は上記データパケットに載せる必要はないことになる。
【0037】このようにネットワーク300に送出され
た転送要求パケットはサーバ400のパケット受信部4
01に受け取られて、ここで上記パケット識別子より
転送要求パケットである旨の判断がなされ開始要求処理
部417に転送される。これによって、開始要求処理部
417では上記のように特定されたファイル名、ファイ
ル番号等のファイルを特定する事項、および転送開始
位置番号をレート制御部405に渡し、該レート制御
部405を起動する。これによって、該レート制御部4
05は補助記憶装置403の上記転送開始位置番号に
対応するアドレスよりストリームデータを順次読み出し
て送信バッファ404に一旦蓄積する。
た転送要求パケットはサーバ400のパケット受信部4
01に受け取られて、ここで上記パケット識別子より
転送要求パケットである旨の判断がなされ開始要求処理
部417に転送される。これによって、開始要求処理部
417では上記のように特定されたファイル名、ファイ
ル番号等のファイルを特定する事項、および転送開始
位置番号をレート制御部405に渡し、該レート制御
部405を起動する。これによって、該レート制御部4
05は補助記憶装置403の上記転送開始位置番号に
対応するアドレスよりストリームデータを順次読み出し
て送信バッファ404に一旦蓄積する。
【0038】上記レート制御部405には、以下に説明
するクライアント470の再生レートとネットワーク3
00の伝送可能容量に依存して決定される送出レートが
設定されており、上記のように送信バッファ404に蓄
積されたストリームデータは該送信バッファ404から
上記の送出レートで読み出されてパケット送信部402
に転送される。パケット送信部402ではこのようにし
て得られたストリームデータを、データパケットに組み
込んでネットワーク300に送出する。このデータパケ
ットには、図6(a) に示すように、発信元アドレス(サ
ーバ400のアドレス)、受信先マルチキャストアド
レス、データパケットである旨のパケット識別子、
データサイズ、パケットの順序を表すパケット番号
がヘッダ部に載せられ、実データがそれに続くようにな
っている。
するクライアント470の再生レートとネットワーク3
00の伝送可能容量に依存して決定される送出レートが
設定されており、上記のように送信バッファ404に蓄
積されたストリームデータは該送信バッファ404から
上記の送出レートで読み出されてパケット送信部402
に転送される。パケット送信部402ではこのようにし
て得られたストリームデータを、データパケットに組み
込んでネットワーク300に送出する。このデータパケ
ットには、図6(a) に示すように、発信元アドレス(サ
ーバ400のアドレス)、受信先マルチキャストアド
レス、データパケットである旨のパケット識別子、
データサイズ、パケットの順序を表すパケット番号
がヘッダ部に載せられ、実データがそれに続くようにな
っている。
【0039】尚、再送処理機能を持たせる場合には、上
記パケット番号とは別にレート制御部405で形成され
るファイル上の位置が特定出来る情報、例えば図4を用
いて上記に説明したファイルを所定量のデータブロック
で区切ったときのセクションの番号(位置番号)をパケ
ットのヘッダに載せるようにする。ファイルを該ファイ
ルの先頭から読み出すときであって、上記1セクション
の容量単位が1パケットの容量単位と一致するときには
上記パケット番号と当該位置番号は一致することになる
が、両者の容量が異なるとき、あるいは上記のようにフ
ァイルの途中から読み出すときには一致しないことにな
る(図5参照)。
記パケット番号とは別にレート制御部405で形成され
るファイル上の位置が特定出来る情報、例えば図4を用
いて上記に説明したファイルを所定量のデータブロック
で区切ったときのセクションの番号(位置番号)をパケ
ットのヘッダに載せるようにする。ファイルを該ファイ
ルの先頭から読み出すときであって、上記1セクション
の容量単位が1パケットの容量単位と一致するときには
上記パケット番号と当該位置番号は一致することになる
が、両者の容量が異なるとき、あるいは上記のようにフ
ァイルの途中から読み出すときには一致しないことにな
る(図5参照)。
【0040】上記のようにネットワーク300に送出さ
れたデータパケットはクライアント470のパケット受
信部410に受け取られ、ここでパケット種の識別子
よりデータパケットである旨の判別がなされるととも
に、上記パケット番号とパケットサイズを参照して、受
信バッファ412の所定のアドレスに書き込むようにす
る。
れたデータパケットはクライアント470のパケット受
信部410に受け取られ、ここでパケット種の識別子
よりデータパケットである旨の判別がなされるととも
に、上記パケット番号とパケットサイズを参照して、受
信バッファ412の所定のアドレスに書き込むようにす
る。
【0041】ここで、パケット受信部410は上記のよ
うにサーバ400側のパケット送信部402で付された
パケット番号を管理しており、何らかの原因でパケッ
ト受信部410に順次到達するパケットのパケット番号
が前後しても、当該パケット受信部410で順番が整理
されるようになっている。
うにサーバ400側のパケット送信部402で付された
パケット番号を管理しており、何らかの原因でパケッ
ト受信部410に順次到達するパケットのパケット番号
が前後しても、当該パケット受信部410で順番が整理
されるようになっている。
【0042】また、パケットの欠落なく転送されてきた
ストリームデータは、各パケット番号に対応して図5
(a) に示すように受信バッファ412に隙間無く書き込
まれるようになる。ところが、パケットに欠落があった
場合には図5(b) に示すように、該欠落パケットのデー
タサイズだけ受信バッファ412上に空白をあけてスト
リームデータが書き込まれるようになる。尚、図5にお
いてpのサフィックスが付された番号はパケット番号で
あり、fのサフィックスが付された番号はファイル上の
位置番号であり、後に説明するように、再送処理をする
場合はクライアント470のパケット受信部410は、
上記のようにパケット番号を管理するとともに、上記フ
ァイル上の位置番号をも管理する機能をも持つようにす
る。
ストリームデータは、各パケット番号に対応して図5
(a) に示すように受信バッファ412に隙間無く書き込
まれるようになる。ところが、パケットに欠落があった
場合には図5(b) に示すように、該欠落パケットのデー
タサイズだけ受信バッファ412上に空白をあけてスト
リームデータが書き込まれるようになる。尚、図5にお
いてpのサフィックスが付された番号はパケット番号で
あり、fのサフィックスが付された番号はファイル上の
位置番号であり、後に説明するように、再送処理をする
場合はクライアント470のパケット受信部410は、
上記のようにパケット番号を管理するとともに、上記フ
ァイル上の位置番号をも管理する機能をも持つようにす
る。
【0043】尚、図5においてパケット番号は0から順
次インクリメントしているが、ファイル上の位置番号は
途中から(300番目から)始まっているいる例を示し
ている。すなわち、ファイルを先頭からではなく、途中
から読み出す場合に相当する。
次インクリメントしているが、ファイル上の位置番号は
途中から(300番目から)始まっているいる例を示し
ている。すなわち、ファイルを先頭からではなく、途中
から読み出す場合に相当する。
【0044】このように受信バッファ412に書き込ま
れたデータはデータ再生部490により所定の再生レー
トで読み出されて再生されるようになっている。再生レ
ートは画像種によっては時間的に変動することがある
が、上記送出レートと再生レートは均衡を保つように設
定される必要があることはもちろんである。また、この
とき受信バッファ412にデータがない状態でデータ再
生部490が受信バッファ412をアクセスする状態を
回避する必要があるところから、該受信バッファ412
に一定量のデータが蓄積された状態から再生開始がなさ
れるようにする。
れたデータはデータ再生部490により所定の再生レー
トで読み出されて再生されるようになっている。再生レ
ートは画像種によっては時間的に変動することがある
が、上記送出レートと再生レートは均衡を保つように設
定される必要があることはもちろんである。また、この
とき受信バッファ412にデータがない状態でデータ再
生部490が受信バッファ412をアクセスする状態を
回避する必要があるところから、該受信バッファ412
に一定量のデータが蓄積された状態から再生開始がなさ
れるようにする。
【0045】以上の動作を繰り返すことによって、サー
バとクライアント間でストリームデータの転送が行われ
ることになるが、上記の処理はファイル上の位置を特定
する情報(位置番号)に関する記述を除いて従来のシス
テムにおける手順と全く同じである。
バとクライアント間でストリームデータの転送が行われ
ることになるが、上記の処理はファイル上の位置を特定
する情報(位置番号)に関する記述を除いて従来のシス
テムにおける手順と全く同じである。
【0046】上記において、サーバ400側のパケット
送信部402の送出レートとクライアント470側のデ
ータ再生部490の再生レートが平衡している場合に
は、受信バッファ412の空きは一定に保たれることに
なる。ところが、クライアント470の処理能力の不
足、ストリームデータの再生レートの揺らぎ等に起因し
て受信バッファ412の空き容量が減少する場合があ
り、この状態が継続すると、受信バッファ412がオー
バフローになることになりデータ欠落が発生する。そこ
で、以下のようにサーバ400側の送出レートを変更す
る処理を行う。
送信部402の送出レートとクライアント470側のデ
ータ再生部490の再生レートが平衡している場合に
は、受信バッファ412の空きは一定に保たれることに
なる。ところが、クライアント470の処理能力の不
足、ストリームデータの再生レートの揺らぎ等に起因し
て受信バッファ412の空き容量が減少する場合があ
り、この状態が継続すると、受信バッファ412がオー
バフローになることになりデータ欠落が発生する。そこ
で、以下のようにサーバ400側の送出レートを変更す
る処理を行う。
【0047】すなわち、クライアント470のレート変
更要求部413は受信バッファ412の空き容量を常に
監視しておき、受信バッファ412の空き容量が所定の
設定値(例えば空き容量が20%)より減ったことを検
出したとき、送出レートを下げることを要求するレート
変更要求を要求レートとともにパケット送信部411に
通知する。このレート変更要求通知を受けたパケット送
信部411は図6(b)に示すように、発信元アドレス
(クライアント470のアドレス)、送信先アドレス
(サーバ400のアドレス)、レート変更要求である
旨のパケット識別子、要求レートを組み込んだレー
ト変更要求パケットをネットワーク300に送出する
(図2、ステップS21→S22→S25参照)。
更要求部413は受信バッファ412の空き容量を常に
監視しておき、受信バッファ412の空き容量が所定の
設定値(例えば空き容量が20%)より減ったことを検
出したとき、送出レートを下げることを要求するレート
変更要求を要求レートとともにパケット送信部411に
通知する。このレート変更要求通知を受けたパケット送
信部411は図6(b)に示すように、発信元アドレス
(クライアント470のアドレス)、送信先アドレス
(サーバ400のアドレス)、レート変更要求である
旨のパケット識別子、要求レートを組み込んだレー
ト変更要求パケットをネットワーク300に送出する
(図2、ステップS21→S22→S25参照)。
【0048】サーバ400のパケット受信部401はネ
ットワーク300から上記レート変更要求パケットを受
け取り、その識別子からレート変更要求パケットである
旨の判断をして、その内容をレート変更要求処理部40
6に渡す。これによってレート変更要求処理部406は
新しい送出レートをレート制御部405に渡して送出レ
ートを下げる要求を行い、レート制御部405は送出レ
ートを下げて送信バッファ404からストリームデータ
を読み出しパケット送信部402に渡すことになる。
ットワーク300から上記レート変更要求パケットを受
け取り、その識別子からレート変更要求パケットである
旨の判断をして、その内容をレート変更要求処理部40
6に渡す。これによってレート変更要求処理部406は
新しい送出レートをレート制御部405に渡して送出レ
ートを下げる要求を行い、レート制御部405は送出レ
ートを下げて送信バッファ404からストリームデータ
を読み出しパケット送信部402に渡すことになる。
【0049】このように、データパケットの送出レート
を下げると、受信バッファ412の空き容量は次第に増
えることになるが、この状況も、上記レート変更要求部
413に監視されており、該空き容量が所定値(例えば
80%)以上に増加すると上記レート変更要求部413
は送出レートを上げるレート変更要求をパケット送信部
411に通知し、該通知を受けてパケット送信部411
は上記と同様の処理を行いレート変更要求パケットを作
成しネットワーク300へ送信する(図2、ステップS
23→S24→S25参照)。
を下げると、受信バッファ412の空き容量は次第に増
えることになるが、この状況も、上記レート変更要求部
413に監視されており、該空き容量が所定値(例えば
80%)以上に増加すると上記レート変更要求部413
は送出レートを上げるレート変更要求をパケット送信部
411に通知し、該通知を受けてパケット送信部411
は上記と同様の処理を行いレート変更要求パケットを作
成しネットワーク300へ送信する(図2、ステップS
23→S24→S25参照)。
【0050】サーバ400のパケット受信部401がネ
ットワーク300からパケットを受け取り、上記の送出
レートを低くする場合のレート変更と同様、レート変更
要求処理部406が要求された送出レートをレート制御
部405に渡すことによって、該レート制御部405は
増加された送出レートでの送出を行うことになる。
ットワーク300からパケットを受け取り、上記の送出
レートを低くする場合のレート変更と同様、レート変更
要求処理部406が要求された送出レートをレート制御
部405に渡すことによって、該レート制御部405は
増加された送出レートでの送出を行うことになる。
【0051】このように動作することによって、クライ
アント470の受信バッファ412がオーバフローする
前にストリームデータの転送レートが下げられるために
データの欠落が発生しなくなるとともに、クライアント
470の受信バッファ412に蓄積されたストリームデ
ータが欠乏する前にストリームデータの送出レートが上
げられるため、ストリームデータが欠落なく受信バッフ
ァ412に蓄積されることになる。
アント470の受信バッファ412がオーバフローする
前にストリームデータの転送レートが下げられるために
データの欠落が発生しなくなるとともに、クライアント
470の受信バッファ412に蓄積されたストリームデ
ータが欠乏する前にストリームデータの送出レートが上
げられるため、ストリームデータが欠落なく受信バッフ
ァ412に蓄積されることになる。
【0052】尚、上記の例ではクライアント470側で
送出レートを決定するようになっているが、クライアン
ト470からはレート変更要求と受信バッファ412の
空き容量(例えば%で表した空き容量)のみを出力し、
実際の送出レートはサーバ400側のレート変更要求処
理部406で上記空き容量に対応する送出レートを決定
してレート制御部405に設定するようにしてもよい。
送出レートを決定するようになっているが、クライアン
ト470からはレート変更要求と受信バッファ412の
空き容量(例えば%で表した空き容量)のみを出力し、
実際の送出レートはサーバ400側のレート変更要求処
理部406で上記空き容量に対応する送出レートを決定
してレート制御部405に設定するようにしてもよい。
【0053】また、上記の説明では受信バッファ412
の空き容量が所定値以下になったときに送出レートを下
げ、所定値以上になったときに送出レートを上げるよう
にしているが、別の方法として、受信バッファ412の
空き容量が所定値以下(例えば20%以下)になったと
きに送出レートを0にして、サーバ400よりの送出を
ストップするようにし、所定値以上(例えば80%以
上)になったときに送出レートを所定の値に戻すように
してもよい。
の空き容量が所定値以下になったときに送出レートを下
げ、所定値以上になったときに送出レートを上げるよう
にしているが、別の方法として、受信バッファ412の
空き容量が所定値以下(例えば20%以下)になったと
きに送出レートを0にして、サーバ400よりの送出を
ストップするようにし、所定値以上(例えば80%以
上)になったときに送出レートを所定の値に戻すように
してもよい。
【0054】なお、上記のように上記レート変更要求を
ユニキャストで上記サーバ400に送出しているので、
この場合該サーバ400は複数のクライアント470、
471、472から複数のレート変更要求を受け取るこ
とになるが、上記サーバのレート変更要求処理部406
は、同一内容のレート変更要求に関しては、このうち最
初に受信したレート変更要求を有効にし、その内容をレ
ート制御部405に通知する。
ユニキャストで上記サーバ400に送出しているので、
この場合該サーバ400は複数のクライアント470、
471、472から複数のレート変更要求を受け取るこ
とになるが、上記サーバのレート変更要求処理部406
は、同一内容のレート変更要求に関しては、このうち最
初に受信したレート変更要求を有効にし、その内容をレ
ート制御部405に通知する。
【0055】例えば、上記クライアント470およびク
ライアント471から、同一内容のレート変更要求を上
記所定時間内に受けた場合(ここでは、上記クライアン
ト470からのレート変更要求が先であるとする)、上
記レート変更要求処理部406は上記クライアント47
0からのレート変更要求を有効にし、上記クライアント
471からのレート変更要求は無効として扱う。これに
よってレート変更要求処理部406は上記クライアント
470からのレート変更要求に基づいて新しい送出レー
トをレート制御部405に渡して、レート制御部405
は新しい送出レートにより送信バッファ404からスト
リームデータを読み出しパケット送信部402に通知す
ることになる。
ライアント471から、同一内容のレート変更要求を上
記所定時間内に受けた場合(ここでは、上記クライアン
ト470からのレート変更要求が先であるとする)、上
記レート変更要求処理部406は上記クライアント47
0からのレート変更要求を有効にし、上記クライアント
471からのレート変更要求は無効として扱う。これに
よってレート変更要求処理部406は上記クライアント
470からのレート変更要求に基づいて新しい送出レー
トをレート制御部405に渡して、レート制御部405
は新しい送出レートにより送信バッファ404からスト
リームデータを読み出しパケット送信部402に通知す
ることになる。
【0056】以上のように送出レートを調整したも、何
らかの原因、例えばネットワーク300の状況によって
はデータパケットの欠落が発生することがあり、また、
ノイズ等の外的な要因によってもデータパケットの欠落
が発生することがある。
らかの原因、例えばネットワーク300の状況によって
はデータパケットの欠落が発生することがあり、また、
ノイズ等の外的な要因によってもデータパケットの欠落
が発生することがある。
【0057】そこで、クライアント470の受信バッフ
ァ412に蓄積されるストリームデータに図5(b) に示
すような欠落ができるか否かを、再送要求部414が検
出するようになっている。現実には再送要求部414は
パケット受信部410を常時監視しており、上記ファイ
ル上の位置番号(図5上fのサフィックスが付されてい
る)に欠落があったとき、その前後の位置番号より欠落
パケットに対応する位置番号を算出する。このように算
出された位置番号は、データの再送を要求する再送要求
とともにパケット送信部411に通知される。
ァ412に蓄積されるストリームデータに図5(b) に示
すような欠落ができるか否かを、再送要求部414が検
出するようになっている。現実には再送要求部414は
パケット受信部410を常時監視しており、上記ファイ
ル上の位置番号(図5上fのサフィックスが付されてい
る)に欠落があったとき、その前後の位置番号より欠落
パケットに対応する位置番号を算出する。このように算
出された位置番号は、データの再送を要求する再送要求
とともにパケット送信部411に通知される。
【0058】パケット送信部411では、上記再送要求
を受けて発信元アドレス(クライアント470のアドレ
ス)、送信先アドレス(サーバ400のアドレス)
、パケット種別識別子(再送要求)、再送要求に係
る位置番号、および再送されるデータのサイズを載
せた図6(c) に示す再送要求パケットをネットワーク3
00に送出する(図3、ステップS31→S32→S3
3参照)。
を受けて発信元アドレス(クライアント470のアドレ
ス)、送信先アドレス(サーバ400のアドレス)
、パケット種別識別子(再送要求)、再送要求に係
る位置番号、および再送されるデータのサイズを載
せた図6(c) に示す再送要求パケットをネットワーク3
00に送出する(図3、ステップS31→S32→S3
3参照)。
【0059】このようにネットワーク300に送出され
た再送要求パケットは、サーバ400のパケット受信部
401に受け取られ、ここで、再送要求パケットである
旨の判断がなされ、該パケットの内容が再送制御部40
7に通知される。これによって、再送制御部407は再
送要求に含まれる位置番号に従って送信バッファ404
から所定のサイズのストリームデータを読み出しパケッ
ト送信部402に渡すことになる。
た再送要求パケットは、サーバ400のパケット受信部
401に受け取られ、ここで、再送要求パケットである
旨の判断がなされ、該パケットの内容が再送制御部40
7に通知される。これによって、再送制御部407は再
送要求に含まれる位置番号に従って送信バッファ404
から所定のサイズのストリームデータを読み出しパケッ
ト送信部402に渡すことになる。
【0060】パケット送信部402は通常のデータ転送
と同様、受け取ったデータを、図6(a) に示すデータパ
ケットに組み込んでネットワーク300へ送出する。
と同様、受け取ったデータを、図6(a) に示すデータパ
ケットに組み込んでネットワーク300へ送出する。
【0061】上記したように、パケット受信部410は
受信バッファ412に蓄積されているデータに対応する
パケット番号と上記ファイル上の位置番号を管理してい
る。この状態で、パケット受信部410にデータパケッ
トが受け取られると、当該パケットに付された上記ファ
イル上の位置番号より、格納すべき受信バッファ412
上のアドレスを演算して、データが欠落したアドレスに
挿入するようになっている。
受信バッファ412に蓄積されているデータに対応する
パケット番号と上記ファイル上の位置番号を管理してい
る。この状態で、パケット受信部410にデータパケッ
トが受け取られると、当該パケットに付された上記ファ
イル上の位置番号より、格納すべき受信バッファ412
上のアドレスを演算して、データが欠落したアドレスに
挿入するようになっている。
【0062】このように動作することによって、ネット
ワークでのパケット落ちが発生した場合でも高速に再送
を行うことができるためデータの欠落が発生しないこと
になる。
ワークでのパケット落ちが発生した場合でも高速に再送
を行うことができるためデータの欠落が発生しないこと
になる。
【0063】なお、上記のように上記再送要求をユニキ
ャストで上記サーバ400に送出しているので、この場
合該サーバ400は複数のクライアント470、47
1、472から複数の再送要求を受け取ることになる
が、上記サーバの再送制御部407は、同一パケットの
再送要求に関しては、このうち最初に受信した再送要求
を有効とする。
ャストで上記サーバ400に送出しているので、この場
合該サーバ400は複数のクライアント470、47
1、472から複数の再送要求を受け取ることになる
が、上記サーバの再送制御部407は、同一パケットの
再送要求に関しては、このうち最初に受信した再送要求
を有効とする。
【0064】例えば、上記クライアント470およびク
ライアント471から、同一パケットの再送要求を上記
所定時間内に受けた場合(ここでは、上記クライアント
470からの再送要求が先であるとする)、上記再送制
御部407は上記クライアント470からの再送要求を
有効にし、上記クライアント471からの再送要求は無
効として扱う。これによって再送制御部407は上記ク
ライアント470からの再送要求に含まれる位置番号に
従って送信バッファ404から所定のサイズのストリー
ムデータを読み出しパケット送信部402に通知するこ
とになる。
ライアント471から、同一パケットの再送要求を上記
所定時間内に受けた場合(ここでは、上記クライアント
470からの再送要求が先であるとする)、上記再送制
御部407は上記クライアント470からの再送要求を
有効にし、上記クライアント471からの再送要求は無
効として扱う。これによって再送制御部407は上記ク
ライアント470からの再送要求に含まれる位置番号に
従って送信バッファ404から所定のサイズのストリー
ムデータを読み出しパケット送信部402に通知するこ
とになる。
【0065】尚、上記の説明においては、ファイル上の
位置が特定出来る情報として上記位置番号を用い、該位
置番号をパケットのヘッダに載せる構成で説明を行って
いるが、これに代えてファイル上の位置が特定出来る情
報としてストリームデータ内での時間を用い、該時間を
パケットのヘッダに載せる構成とすることも可能であ
る。
位置が特定出来る情報として上記位置番号を用い、該位
置番号をパケットのヘッダに載せる構成で説明を行って
いるが、これに代えてファイル上の位置が特定出来る情
報としてストリームデータ内での時間を用い、該時間を
パケットのヘッダに載せる構成とすることも可能であ
る。
【0066】更に、上記のようなファイル上の位置が特
定出来る情報をパケットのヘッダに載せる構成に代え
て、上記再送制御部407において、転送対象のデータ
に対応するパケット番号から該データのファイル上の位
置が特定出来る情報を管理することとし、上記クライア
ント470の再送要求部414が上記パケット番号を含
む再送要求を行う構成とすることも可能である。
定出来る情報をパケットのヘッダに載せる構成に代え
て、上記再送制御部407において、転送対象のデータ
に対応するパケット番号から該データのファイル上の位
置が特定出来る情報を管理することとし、上記クライア
ント470の再送要求部414が上記パケット番号を含
む再送要求を行う構成とすることも可能である。
【0067】以上のように本実施の形態のデータ転送方
法によれば、クライアントの処理能力の不足、ストリー
ムデータの再生レートの揺らぎ等が発生してもデータの
欠落が発生せず、さらにネットワークでのパケット落ち
が発生した場合でもデータの欠落が発生せずにストリー
ムデータを転送することができる。
法によれば、クライアントの処理能力の不足、ストリー
ムデータの再生レートの揺らぎ等が発生してもデータの
欠落が発生せず、さらにネットワークでのパケット落ち
が発生した場合でもデータの欠落が発生せずにストリー
ムデータを転送することができる。
【0068】(実施の形態2)上記実施の形態1のよう
にレート変更要求を送出する代りに、図7に示すように
上記サーバ400に受信応答処理部420、上記クライ
アント470に受信応答部421を備えた構成(クライ
アント471、472についても同様)とし、図8に示
すような受信応答を送出することによってバッファのオ
ーバフローが起こらないようにすることもできる。以
下、図7、8に基づいて上記実施の形態1と相違する部
分についてシステムの構成についてその動作とともに説
明する。
にレート変更要求を送出する代りに、図7に示すように
上記サーバ400に受信応答処理部420、上記クライ
アント470に受信応答部421を備えた構成(クライ
アント471、472についても同様)とし、図8に示
すような受信応答を送出することによってバッファのオ
ーバフローが起こらないようにすることもできる。以
下、図7、8に基づいて上記実施の形態1と相違する部
分についてシステムの構成についてその動作とともに説
明する。
【0069】まず、上記のように転送要求を受けた上記
サーバ400の上記開始要求処理部417は、あらかじ
め設定された所定数のパケット、例えば256個のパケ
ットの送出を行うように上記レート制御部405に指示
する。これによって、該レート制御部405は上記と同
様にして上記送信バッファ404に蓄積されたストリー
ムデータを該送信バッファ404から読み出されて上記
パケット送信部402に転送する。次に、パケット送信
部402ではこのようにして得られたストリームデータ
を、データパケットに組み込んでネットワーク300に
送出する。また、上記開始要求処理部417は上記転送
要求を行った上記クライアント470および上記所定数
を受信応答処理部420に通知する。
サーバ400の上記開始要求処理部417は、あらかじ
め設定された所定数のパケット、例えば256個のパケ
ットの送出を行うように上記レート制御部405に指示
する。これによって、該レート制御部405は上記と同
様にして上記送信バッファ404に蓄積されたストリー
ムデータを該送信バッファ404から読み出されて上記
パケット送信部402に転送する。次に、パケット送信
部402ではこのようにして得られたストリームデータ
を、データパケットに組み込んでネットワーク300に
送出する。また、上記開始要求処理部417は上記転送
要求を行った上記クライアント470および上記所定数
を受信応答処理部420に通知する。
【0070】一方、クライアント470の受信応答部4
21はパケット受信部が上記所定数のパケット、例えば
256個を全部受け取る毎に、受信応答をパケット送信
部411に通知し、該通知を受けてパケット送信部41
1は上記と同様の処理を行い図6(e) に示すような発信
元アドレス(クライアント470のアドレス)、送信
先アドレス(サーバ400のアドレス)、パケット種
別識別子(受信応答)、受信した上記所定数のパケッ
トを示す情報Prを載せた受信応答パケットを作成しネ
ットワーク300へ送出する。上記サーバ400のパケ
ット受信部401がネットワーク300からパケットを
受け取り、その識別子から受信応答パケットである旨の
判断をして、その内容を受信応答処理部420に通知す
る。これによって受信応答処理部420は次の256個
のパケットの送出をレート制御部405に指示し、該レ
ート制御部405は上記新たな256個のパケットを送
出する。
21はパケット受信部が上記所定数のパケット、例えば
256個を全部受け取る毎に、受信応答をパケット送信
部411に通知し、該通知を受けてパケット送信部41
1は上記と同様の処理を行い図6(e) に示すような発信
元アドレス(クライアント470のアドレス)、送信
先アドレス(サーバ400のアドレス)、パケット種
別識別子(受信応答)、受信した上記所定数のパケッ
トを示す情報Prを載せた受信応答パケットを作成しネ
ットワーク300へ送出する。上記サーバ400のパケ
ット受信部401がネットワーク300からパケットを
受け取り、その識別子から受信応答パケットである旨の
判断をして、その内容を受信応答処理部420に通知す
る。これによって受信応答処理部420は次の256個
のパケットの送出をレート制御部405に指示し、該レ
ート制御部405は上記新たな256個のパケットを送
出する。
【0071】ここで、現在マルチキャストで送信されて
いるストリームデータを新たに他のクライアント、例え
ばクライアント471が受信しようとする場合、その旨
を該クライアント471が上記サーバ400に対して通
知を行う。該通知を受けた上記転送開始要求部480
は、上記受信応答処理部420に上記クライアント47
1が受信を開始したことを通知する。逆に、現在ストリ
ームデータを受信しているクライアント、例えばクライ
アント471が受信を途中で中止しようしようとする場
合、その旨を上記クライアントが上記サーバ400に対
して通知を行う。該通知を受けた上記転送開始要求部4
80は、上記受信応答処理部420に上記クライアント
471が受信を中止したことを通知する。
いるストリームデータを新たに他のクライアント、例え
ばクライアント471が受信しようとする場合、その旨
を該クライアント471が上記サーバ400に対して通
知を行う。該通知を受けた上記転送開始要求部480
は、上記受信応答処理部420に上記クライアント47
1が受信を開始したことを通知する。逆に、現在ストリ
ームデータを受信しているクライアント、例えばクライ
アント471が受信を途中で中止しようしようとする場
合、その旨を上記クライアントが上記サーバ400に対
して通知を行う。該通知を受けた上記転送開始要求部4
80は、上記受信応答処理部420に上記クライアント
471が受信を中止したことを通知する。
【0072】このように上記受信応答処理部420に
は、現在マルチキャストでデータを受信しているクライ
アントが通知されているので、例えば複数のクライアン
ト470、471、472がデータを受信している場合
には、上記サーバ400の上記受信応答処理部420は
これらクライアント470、471、472全てから受
信応答を受信した時点で次のパケットの送出を上記レー
ト制御部405に指示する。
は、現在マルチキャストでデータを受信しているクライ
アントが通知されているので、例えば複数のクライアン
ト470、471、472がデータを受信している場合
には、上記サーバ400の上記受信応答処理部420は
これらクライアント470、471、472全てから受
信応答を受信した時点で次のパケットの送出を上記レー
ト制御部405に指示する。
【0073】なお、図8(a) に示す例では、クライアン
ト470、471、472から受信応答があってから次
の所定数(256個)のパケットを送出するようにして
いるため、受信応答待ち時間とその処理時間との合計時
間t0が送出と次の送出の間に入ることになって、全体の
送出時間を遅らせることになる。そこで、図8(b) に示
すように上記サ−バ400からのパケットの送出とクラ
イアント470、471、472から受信応答を時間的
に並行させるようにする。これによって、上記インター
バルt0をなくすことができる。但し、この場合上記所定
数のパケットの2回目の送出は、受信応答を確認しない
で行われることになり、3回目の送出は1回目の送出に
対応する受信応答を確認して実行することになる。
ト470、471、472から受信応答があってから次
の所定数(256個)のパケットを送出するようにして
いるため、受信応答待ち時間とその処理時間との合計時
間t0が送出と次の送出の間に入ることになって、全体の
送出時間を遅らせることになる。そこで、図8(b) に示
すように上記サ−バ400からのパケットの送出とクラ
イアント470、471、472から受信応答を時間的
に並行させるようにする。これによって、上記インター
バルt0をなくすことができる。但し、この場合上記所定
数のパケットの2回目の送出は、受信応答を確認しない
で行われることになり、3回目の送出は1回目の送出に
対応する受信応答を確認して実行することになる。
【0074】ここでパケットが欠落した場合、図8(c)
に示すように上記再送要求部414が再送要求を行い上
記サ−バ400から欠落パケットが再送されることにな
るが、上記受信応答部421は上記所定数(256個)
のパケットが受信されるべき時間に上記欠落パケットが
再送されていなければ、この時点では受信応答を出さな
い。そして、上記再送要求に基づいて上記欠落パケット
が再送されて上記所定数(256個)のパケットが全部
揃った時点で、上記受信応答部421は受信応答を出す
ことになる。
に示すように上記再送要求部414が再送要求を行い上
記サ−バ400から欠落パケットが再送されることにな
るが、上記受信応答部421は上記所定数(256個)
のパケットが受信されるべき時間に上記欠落パケットが
再送されていなければ、この時点では受信応答を出さな
い。そして、上記再送要求に基づいて上記欠落パケット
が再送されて上記所定数(256個)のパケットが全部
揃った時点で、上記受信応答部421は受信応答を出す
ことになる。
【0075】また、上記クライアント470の受信応答
部421は受信バッファ412の空きを常に監視してお
き、受信バッファ412に所定数のパケットを受信する
だけの空きがない場合は空きができるまで受信応答をパ
ケット送信部411に通知しないようにすることによっ
てバッファのオーバフローが起こらないようにすること
ができる。
部421は受信バッファ412の空きを常に監視してお
き、受信バッファ412に所定数のパケットを受信する
だけの空きがない場合は空きができるまで受信応答をパ
ケット送信部411に通知しないようにすることによっ
てバッファのオーバフローが起こらないようにすること
ができる。
【0076】(実施の形態3)上記実施の形態2の構成
に追加して図9に示すように上記サーバ400にパリテ
ィ生成部430、上記クライアント470にパリティ処
理部431を備えた構成(クライアント471、472
についても同様)とした場合について、以下図9、図8
(d) に基づいて上記実施の形態1と相違する部分につい
てシステムの構成についてその動作とともに説明する。
に追加して図9に示すように上記サーバ400にパリテ
ィ生成部430、上記クライアント470にパリティ処
理部431を備えた構成(クライアント471、472
についても同様)とした場合について、以下図9、図8
(d) に基づいて上記実施の形態1と相違する部分につい
てシステムの構成についてその動作とともに説明する。
【0077】上記サーバ400のパリティ生成部430
は、送出するパケットについてあらかじめ設定された所
定数単位(例えば256個)毎に排他論理和パリティを
計算し、上記所定数のパケットが送出された後にパリテ
ィ計算結果を含む図6(f) に示すような発信元アドレス
(サーバ400のアドレス)、受信先マルチキャスト
アドレス、データパケットである旨のパケット識別子
、データサイズ、パケットの順序を表すパケット番
号、パリティ情報Pdを載せたパリティパケットをマ
ルチキャストで送出する。例えば上記所定数が256個
の場合、図8(d) に示すようにパケット0〜255の送
出後に該パケット0〜255に対応するパリティパケッ
トP1 を送出する。以下、同様にパケット256〜51
1、512〜767、…の送出後に該パケット256〜
511、512〜767、…に対応するパリティパケッ
トP2 、P3 、…が送出される。
は、送出するパケットについてあらかじめ設定された所
定数単位(例えば256個)毎に排他論理和パリティを
計算し、上記所定数のパケットが送出された後にパリテ
ィ計算結果を含む図6(f) に示すような発信元アドレス
(サーバ400のアドレス)、受信先マルチキャスト
アドレス、データパケットである旨のパケット識別子
、データサイズ、パケットの順序を表すパケット番
号、パリティ情報Pdを載せたパリティパケットをマ
ルチキャストで送出する。例えば上記所定数が256個
の場合、図8(d) に示すようにパケット0〜255の送
出後に該パケット0〜255に対応するパリティパケッ
トP1 を送出する。以下、同様にパケット256〜51
1、512〜767、…の送出後に該パケット256〜
511、512〜767、…に対応するパリティパケッ
トP2 、P3 、…が送出される。
【0078】一方、クライアント470のパケット受信
部401はネットワーク300から上記パリティパケッ
トを受け取ると、その識別子からパリティパケットであ
る旨の判断をして、その内容をパリティ処理部431に
通知する。
部401はネットワーク300から上記パリティパケッ
トを受け取ると、その識別子からパリティパケットであ
る旨の判断をして、その内容をパリティ処理部431に
通知する。
【0079】該パリティ処理部431は上記パケット受
信部410を常時監視しており、クライアント470の
受信バッファ412に蓄積されるストリームデータに図
5(b) に示すような欠落ができるか否かを検出するよう
になっている。
信部410を常時監視しており、クライアント470の
受信バッファ412に蓄積されるストリームデータに図
5(b) に示すような欠落ができるか否かを検出するよう
になっている。
【0080】ここで上記所定数の内のパケット1つが欠
落した場合、上記パリティ処理部431は上記パリティ
パケットに含まれるパリティ計算結果および正常に受信
した他のデータパケットのデータに基づいて、上記欠落
したパケットのデータを復元し、該データを上記受信バ
ッファ412に蓄積されたストリームデータの欠落箇所
に挿入する。
落した場合、上記パリティ処理部431は上記パリティ
パケットに含まれるパリティ計算結果および正常に受信
した他のデータパケットのデータに基づいて、上記欠落
したパケットのデータを復元し、該データを上記受信バ
ッファ412に蓄積されたストリームデータの欠落箇所
に挿入する。
【0081】また、上記所定数のパケットのうち1つが
欠落すると通常上記受信応答は送出されないが、上記の
ようにパリティパケットにより復元されれば、この時点
において上記受信応答部421は受信応答を送出する
(図8(d) パケット0〜255の転送を参照)。
欠落すると通常上記受信応答は送出されないが、上記の
ようにパリティパケットにより復元されれば、この時点
において上記受信応答部421は受信応答を送出する
(図8(d) パケット0〜255の転送を参照)。
【0082】次に上記所定数の内の2つ以上のパケット
の欠落が生じた場合、上記パリティ処理部431は上記
再送要求部414に対してこの欠落したパケットの情報
を通知し、該再送要求部414は上記と同様に再送要求
を発行することになる。この場合、上記受信応答は該再
送要求に基づいて欠落パケットが再送されて上記所定数
(256個)のパケットが全部揃った時点で、上記受信
応答部421は受信応答を出すことになる。(図8(d)
パケット512〜767の転送を参照)。
の欠落が生じた場合、上記パリティ処理部431は上記
再送要求部414に対してこの欠落したパケットの情報
を通知し、該再送要求部414は上記と同様に再送要求
を発行することになる。この場合、上記受信応答は該再
送要求に基づいて欠落パケットが再送されて上記所定数
(256個)のパケットが全部揃った時点で、上記受信
応答部421は受信応答を出すことになる。(図8(d)
パケット512〜767の転送を参照)。
【0083】以上のように、上記クライアントは上記所
定数のパケットのうち1つが欠落した場合は、上記パリ
ティパケットから欠落したパケットを復元できることに
なる。よって、上記で説明した再送要求の送信は上記所
定数の内の2つ以上のパケットが欠落した場合にのみ行
えば良く、再送処理の頻度を下げることができる。
定数のパケットのうち1つが欠落した場合は、上記パリ
ティパケットから欠落したパケットを復元できることに
なる。よって、上記で説明した再送要求の送信は上記所
定数の内の2つ以上のパケットが欠落した場合にのみ行
えば良く、再送処理の頻度を下げることができる。
【0084】また、この様なストリームデータをサービ
スするサーバでは、ハードディスク等の補助記憶装置に
パリティ情報を含むRAID構成を取っている場合が多くあ
るため、このパリティ情報からパリティパケットを生成
することによって、サーバの負荷を上げることなくパリ
ティパケットを作ることができる。
スするサーバでは、ハードディスク等の補助記憶装置に
パリティ情報を含むRAID構成を取っている場合が多くあ
るため、このパリティ情報からパリティパケットを生成
することによって、サーバの負荷を上げることなくパリ
ティパケットを作ることができる。
【0085】また、上記各実施の形態で説明した構成を
すべて備え、ストリームデータの転送に要求される信頼
性等に応じて使用する機能を選択するように構成するこ
とも可能である。
すべて備え、ストリームデータの転送に要求される信頼
性等に応じて使用する機能を選択するように構成するこ
とも可能である。
【0086】
【発明の効果】以上の説明から明らかなように本発明に
よると、受信バッファ上でストリームデータのオーバフ
ローがなくなるので、データの欠落が発生しないことに
なる。また、何らかの原因でたとえデータ欠落が発生し
ても欠落データを復元したり再送できるので該欠落が補
完できることになる。
よると、受信バッファ上でストリームデータのオーバフ
ローがなくなるので、データの欠落が発生しないことに
なる。また、何らかの原因でたとえデータ欠落が発生し
ても欠落データを復元したり再送できるので該欠落が補
完できることになる。
【図1】本発明の一実施の形態のブロック図である。
【図2】本発明の動作手順を示すフロー図である。
【図3】本発明の動作手順を示すフロー図である。
【図4】ファイル上の位置番号を示す概念図である。
【図5】受信バッファのデータ配列を示す概念図であ
る。
る。
【図6】本発明に使用する各種のパケット構造を示す概
念図である。
念図である。
【図7】本発明の他の実施の形態のブロック図である。
【図8】本発明の他の実施の形態のタイムチャートであ
る。
る。
【図9】本発明の他の実施の形態のブロック図である。
【図10】可搬媒体による本発明の実施形態を示す概念
図である。
図である。
【図11】従来のストリームデータ転送方法のブロック
図である。
図である。
【図12】従来の方法によるトラブルの例を示す概念図
である。
である。
300 ネットワーク 400 サーバ 402 パケット送信部 403 補助記憶装置 404 送信バッファ 405 レート制御部 406 レート変更要求処理部 407 再送制御部 410 パケット受信部 411 パケット送信部 412 受信バッファ 413 レート変更要求部 414 再送要求部 417 開始要求処理部 420 受信応答処理部 421 受信応答部 430 パリティ生成部 431 パリティ処理部 470 クライアント 480 転送開始要求部 490 データ再生部
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B089 GA11 GA21 GB01 JA07 JB06 JB23 KA12 KD01 KD09 KE07 KF03 ME08 5K034 AA05 HH01 HH02 HH06 HH23 HH50 MM03 MM08
Claims (25)
- 【請求項1】 サーバ側で、ストリームデータを所定の
送出レートでネットワークを介して、同一マルチキャス
トグループに属する単一もしくは複数のクライアントに
転送するとともに、クライアント側で、上記サーバより
送出されるストリームデータを受信して受信バッファに
一旦蓄積するマルチキャストストリームデータ転送方法
において、 上記クライアントで受信されたデータの欠落に対応して
該クライアントより再送要求をユニキャストで上記サー
バに出し、 該再送要求に基づいて上記サーバより該欠落データに対
応するデータをマルチキャストで送出するとともに、上
記サーバが他のクライアントより上記再送要求と同一内
容の再送要求を受信した場合、これら再送要求を無効と
することを特徴とするマルチキャストストリームデータ
転送方法。 - 【請求項2】 サーバ側で、ストリームデータを所定の
送出レートでネットワークを介して、同一マルチキャス
トグループに属する単一もしくは複数のクライアントに
転送するとともに、クライアント側で、上記サーバより
送出されるストリームデータを受信して受信バッファに
一旦蓄積するマルチキャストストリームデータ転送方法
において、 上記クライアントの受信バッファの空き状態に対応して
該クライアントよりレート変更要求をユニキャストで上
記サーバに出し、 該レート変更要求に基づいて上記サーバの送出レートを
変更するとともに、上記サーバが他のクライアントより
上記レート変更要求と同一内容のレート変更要求を受信
した場合、これらレート変更要求を無効とすることを特
徴とするマルチキャストストリームデータ転送方法。 - 【請求項3】 サーバ側で、ストリームデータを所定の
送出レートでネットワークを介して、同一マルチキャス
トグループに属する単一もしくは複数のクライアントに
転送するとともに、クライアント側で、上記サーバより
送出されるストリームデータを受信して受信バッファに
一旦蓄積するマルチキャストストリームデータ転送方法
において、 上記クライアントで受信されたデータの欠落に対応して
該クライアントより再送要求をユニキャストで上記サー
バに出し、 該再送要求に基づいて上記サーバより該欠落データに対
応するデータをマルチキャストで送出するとともに、上
記サーバが他のクライアントより上記再送要求と同一内
容の再送要求を受信した場合、これら再送要求を無効と
し、 上記クライアントの受信バッファの空き状態に対応して
該クライアントよりレート変更要求をユニキャストで上
記サーバに出し、 該レート変更要求に基づいて上記サーバの送出レートを
変更するとともに、上記サーバが他のクライアントより
上記レート変更要求と同一内容のレート変更要求を受信
した場合、これらレート変更要求を無効とすることを特
徴とするマルチキャストストリームデータ転送方法。 - 【請求項4】 サーバ側で、ストリームデータを所定の
送出レートでネットワークを介して、同一マルチキャス
トグループに属する単一もしくは複数のクライアントに
転送するとともに、クライアント側で、上記サーバより
送出されるストリームデータを受信して受信バッファに
一旦蓄積するマルチキャストストリームデータ転送方法
において、 上記クライアントで受信されたパケットがあらかじめ設
定された所定数になる毎に受信が完了したことを示す受
信応答を上記クライアントよりユニキャストで上記サー
バに送出することを特徴とするマルチキャストストリー
ムデータ転送方法。 - 【請求項5】 上記サーバ側で上記所定数のパケット送
出毎に上記ストリームデータの送出を一時中止し、該所
定数のパケットに対応する上記受信応答を全てのクライ
アントから受信することにより次の所定数のパケットの
送出を再開する請求項4に記載のマルチキャストストリ
ームデータ転送方法。 - 【請求項6】 上記サーバは上記所定数のパケット単位
に上記ストリームデータを連続に送出するとともに該送
出に並行して、送出済の上記所定数のパケットに対応す
る上記受信応答を受信し、全てのクライアントから受信
していない場合、現在送出中の上記所定数のパケット送
出後に上記ストリームデータの送出を一時中止し、全て
のクライアントから上記受信応答を受信することにより
上記ストリームデータの送出を再開する請求項4に記載
のマルチキャストストリームデータ転送方法。 - 【請求項7】 更に、上記クライアントで受信されたデ
ータの欠落に対応して該クライアントより再送要求をユ
ニキャストで上記サーバに出し、 該再送要求に基づいて上記サーバより該欠落データに対
応するデータをマルチキャストで送出するとともに、上
記サーバが他のクライアントより上記再送要求と同一内
容の再送要求を受信した場合、これら再送要求を無効と
する請求項4〜請求項6に記載のマルチキャストストリ
ームデータ転送方法。 - 【請求項8】 サーバ側で、ストリームデータを所定の
送出レートでネットワークを介して、同一マルチキャス
トグループに属する単一もしくは複数のクライアントに
転送するとともに、クライアント側で、上記サーバより
送出されるストリームデータを受信して受信バッファに
一旦蓄積するマルチキャストストリームデータ転送方法
において、 上記サーバ側で送出するパケットの数があらかじめ設定
された所定数になる毎に、該所定数のパケットに対応す
るパリティ情報をパリティパケットとして上記クライア
ントに転送し、該クライアントが上記パリティパケット
に基づいて欠落したパケットを復元することを特徴とす
るマルチキャストストリームデータ転送方法。 - 【請求項9】 更に、上記パリティパケットを用いても
パケットの復元が不可能になった場合、上記クライアン
トより該パケットの再送要求をユニキャストで上記サー
バに出し、 該再送要求に基づいて上記サーバより該欠落データに対
応するデータをマルチキャストで送出するとともに、上
記サーバが他のクライアントより上記再送要求と同一内
容の再送要求を受信した場合、これら再送要求を無効と
する請求項8に記載のマルチキャストストリームデータ
転送方法。 - 【請求項10】 更に、上記クライアントの受信バッフ
ァの空き状態に対応して該クライアントよりレート変更
要求をユニキャストで上記サーバに出し、 該レート変更要求に基づいて上記サーバの送出レートを
変更するとともに、上記サーバが他のクライアントより
上記レート変更要求と同一内容のレート変更要求を受信
した場合、これらレート変更要求を無効とする請求項8
または請求項9に記載のマルチキャストストリームデー
タ転送方法。 - 【請求項11】 更に、上記クライアントで受信された
パケットがあらかじめ設定された所定数になる毎に受信
が完了したことを示す受信応答を上記クライアントより
ユニキャストで上記サーバに送出する請求項8または請
求項9に記載のマルチキャストストリームデータ転送方
法。 - 【請求項12】 上記サーバ側で上記所定数のパケット
送出毎に上記ストリームデータの送出を一時中止し、該
所定数のパケットに対応する上記受信応答を全てのクラ
イアントから受信することにより次の所定数のパケット
の送出を再開する請求項11に記載のマルチキャストス
トリームデータ転送方法。 - 【請求項13】 上記サーバは上記所定数のパケット単
位に上記ストリームデータを連続に送出するとともに該
送出に並行して、送出済の上記所定数のパケットに対応
する上記受信応答を受信し、全てのクライアントから受
信していない場合、現在送出中の上記所定数のパケット
送出後に上記ストリームデータの送出を一時中止し、全
てのクライアントから上記受信応答を受信することによ
り上記ストリームデータの送出を再開する請求項11に
記載のマルチキャストストリームデータ転送方法。 - 【請求項14】 サーバ側で、ストリームデータを所定
の送出レートでネットワークを介して、同一マルチキャ
ストグループに属する単一もしくは複数のクライアント
に転送するとともに、クライアント側で、上記サーバよ
り送出されるストリームデータを受信して受信バッファ
に一旦蓄積するマルチキャストストリームデータ転送シ
ステムにおいて、 上記サーバに:上記クライアントが受信したデータのデ
ータ欠落の状態に基づいて該クライアントが出した再送
要求に基づいて、該欠落データに対応するデータをマル
チキャストで再送処理を行うとともに、他のクライアン
トより上記再送要求と同一内容の再送要求を受信した場
合、これら再送要求を無効とする再送制御部と、 上記クライアントに:受信したデータの欠落を監視する
とともに、該欠落データに対応するデータを上記サーバ
にユニキャストで再送要求する再送要求部を備えたこと
を特徴とするマルチキャストストリームデータ転送シス
テム。 - 【請求項15】 サーバ側で、ストリームデータを所定
の送出レートでネットワークを介して、同一マルチキャ
ストグループに属する単一もしくは複数のクライアント
に転送するとともに、クライアント側で、上記サーバよ
り送出されるストリームデータを受信して受信バッファ
に一旦蓄積するマルチキャストストリームデータ転送シ
ステムにおいて、 上記サーバに:上記クライアントの受信バッファの空き
容量の状態に対応して該クライアントより出されるレー
ト変更要求に基づいて、上記レート制御部に設定された
送出レートを更新するとともに、他のクライアントより
上記レート変更要求と同一内容のレート変更要求を受信
した場合、これらレート変更要求を無効とするレート変
更要求処理部と、 上記クライアントに:上記受信バッファの空き容量を監
視するとともに、該空き容量に対応したレート変更要求
をユニキャストで上記サーバに出すレート変更要求部を
備えたことを特徴とするマルチキャストストリームデー
タ転送システム。 - 【請求項16】 サーバ側で、ストリームデータを所定
の送出レートでネットワークを介して、同一マルチキャ
ストグループに属する単一もしくは複数のクライアント
に転送するとともに、クライアント側で、上記サーバよ
り送出されるストリームデータを受信して受信バッファ
に一旦蓄積するマルチキャストストリームデータ転送シ
ステムにおいて、 上記サーバに:上記クライアントが受信したデータのデ
ータ欠落の状態に基づいて該クライアントが出した再送
要求に基づいて、該欠落データに対応するデータをマル
チキャストで再送処理を行うとともに、他のクライアン
トより上記再送要求と同一内容の再送要求を受信した場
合、これら再送要求を無効とする再送制御部と、 上記クライアントの受信バッファの空き容量の状態に対
応して該クライアントより出されるレート変更要求に基
づいて、上記レート制御部に設定された送出レートを更
新するとともに、他のクライアントより上記レート変更
要求と同一内容のレート変更要求を受信した場合、これ
らレート変更要求を無効とするレート変更要求処理部
と、 上記クライアントに:受信したデータの欠落を監視する
とともに、該欠落データに対応するデータを上記サーバ
にユニキャストで再送要求する再送要求部と、 上記受信バッファの空き容量を監視するとともに、該空
き容量に対応したレート変更要求をユニキャストで上記
サーバに出すレート変更要求部とを備えたことを特徴と
するマルチキャストストリームデータ転送システム。 - 【請求項17】 サーバ側で、ストリームデータを所定
の送出レートでネットワークを介して、同一マルチキャ
ストグループに属する単一もしくは複数のクライアント
に転送するとともに、クライアント側で、上記サーバよ
り送出されるストリームデータを受信して受信バッファ
に一旦蓄積するマルチキャストストリームデータ転送シ
ステムにおいて、 上記サーバに:あらかじめ設定された所定数のパケット
送出毎に上記ストリームデータの送出を一時中止し、上
記所定数になる毎に受信が完了したことを示す上記クラ
イアントより出される受信応答を全てのクライアントか
ら受信することにより次の所定数のパケットの送出を再
開する受信応答処理部と、 上記クライアントに:受信したパケットがあらかじめ設
定された所定数になる毎に受信が完了したことを示す受
信応答をユニキャストで上記サーバに送出する受信応答
部を備えたことを特徴とするマルチキャストストリーム
データ転送システム。 - 【請求項18】 サーバ側で、ストリームデータを所定
の送出レートでネットワークを介して、同一マルチキャ
ストグループに属する単一もしくは複数のクライアント
に転送するとともに、クライアント側で、上記サーバよ
り送出されるストリームデータを受信して受信バッファ
に一旦蓄積するマルチキャストストリームデータ転送シ
ステムにおいて、 上記サーバに:あらかじめ設定された所定数のパケット
単位に上記ストリームデータを連続に送出するとともに
該送出に並行して、送出済の上記所定数のパケットの受
信が完了したことを示す上記クライアントより出される
受信応答を受信し、全てのクライアントから受信してい
ない場合、現在送出中の上記所定数のパケット送出後に
上記ストリームデータの送出を一時中止し、全てのクラ
イアントから上記受信応答を受信することにより上記ス
トリームデータの送出を再開する受信応答処理部と、 上記クライアントに:受信したパケットがあらかじめ設
定された所定数になる毎に受信が完了したことを示す受
信応答をユニキャストで上記サーバに送出する受信応答
部を備えたことを特徴とするマルチキャストストリーム
データ転送システム。 - 【請求項19】 更に、上記サーバに:上記クライアン
トが受信したデータのデータ欠落の状態に基づいて該ク
ライアントが出した再送要求に基づいて、該欠落データ
に対応するデータをマルチキャストで再送処理を行うと
ともに、他のクライアントより上記再送要求と同一内容
の再送要求を受信した場合、これら再送要求を無効とす
る再送制御部と、上記クライアントに:受信したデータ
の欠落を監視するとともに、該欠落データに対応するデ
ータを上記サーバにユニキャストで再送要求する再送要
求部を備えた請求項17または請求項18に記載のマル
チキャストストリームデータ転送システム。 - 【請求項20】 サーバ側で、ストリームデータを所定
の送出レートでネットワークを介して、同一マルチキャ
ストグループに属する単一もしくは複数のクライアント
に転送するとともに、クライアント側で、上記サーバよ
り送出されるストリームデータを受信して受信バッファ
に一旦蓄積するマルチキャストストリームデータ転送シ
ステムにおいて、 上記サーバに:送出するパケットの数があらかじめ設定
された所定数になる毎に、該所定数のパケットに対応す
るパリティ情報を生成するパリティ生成部と、 上記クライアントに:上記サーバより送信された上記パ
リティ情報に基づいて欠落したパケットを復元するパリ
ティ処理部を備えたことを特徴とするマルチキャストス
トリームデータ転送システム。 - 【請求項21】 更に、上記クライアントに:上記パリ
ティ情報を用いてもパケットの復元が不可能になった場
合、該復元不可能なパケットに対応するデータを上記サ
ーバにユニキャストで再送要求する再送要求部と、 上記サーバに:上記再送要求に基づいて、該欠落データ
に対応するデータをマルチキャストで再送処理を行うと
ともに、他のクライアントより上記再送要求と同一内容
の再送要求を受信した場合、これら再送要求を無効とす
る再送制御部を備えた請求項20に記載のマルチキャス
トストリームデータ転送システム。 - 【請求項22】 更に、上記サーバに:上記クライアン
トの受信バッファの空き容量の状態に対応して該クライ
アントより出されるレート変更要求に基づいて、上記レ
ート制御部に設定された送出レートを更新するととも
に、他のクライアントより上記レート変更要求と同一内
容のレート変更要求を受信した場合、これらレート変更
要求を無効とするレート変更要求処理部と、 上記クライアントに:上記受信バッファの空き容量を監
視するとともに、該空き容量に対応したレート変更要求
をユニキャストで上記サーバに出すレート変更要求部を
備えた請求項20または請求項21に記載のマルチキャ
ストストリームデータ転送システム。 - 【請求項23】 更に、上記サーバに:あらかじめ設定
された所定数のパケット送出毎に上記ストリームデータ
の送出を一時中止し、上記所定数になる毎に受信が完了
したことを示す上記クライアントより出される受信応答
を全てのクライアントから受信することにより次の所定
数のパケットの送出を再開する受信応答処理部と、 上記クライアントに:受信したパケットがあらかじめ設
定された所定数になる毎に受信が完了したことを示す受
信応答をユニキャストで上記サーバに送出する受信応答
部を備えた請求項20または請求項21に記載のマルチ
キャストストリームデータ転送システム。 - 【請求項24】 更に、上記サーバに:あらかじめ設定
された所定数のパケット単位に上記ストリームデータを
連続に送出するとともに該送出に並行して、送出済の上
記所定数のパケットの受信が完了したことを示す上記ク
ライアントより出される受信応答を受信し、全てのクラ
イアントから受信していない場合、現在送出中の上記所
定数のパケット送出後に上記ストリームデータの送出を
一時中止し、全てのクライアントから上記受信応答を受
信することにより上記ストリームデータの送出を再開す
る受信応答処理部と、 上記クライアントに:受信したパケットがあらかじめ設
定された所定数になる毎に受信が完了したことを示す受
信応答をユニキャストで上記サーバに送出する受信応答
部を備えた請求項20または請求項21に記載のマルチ
キャストストリームデータ転送システム。 - 【請求項25】 上記請求項1〜13に記載の各手順を
プログラムとして記憶させた記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10350963A JP2000172599A (ja) | 1998-12-10 | 1998-12-10 | マルチキャストストリームデータ転送方法およびシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10350963A JP2000172599A (ja) | 1998-12-10 | 1998-12-10 | マルチキャストストリームデータ転送方法およびシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000172599A true JP2000172599A (ja) | 2000-06-23 |
Family
ID=18414113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10350963A Pending JP2000172599A (ja) | 1998-12-10 | 1998-12-10 | マルチキャストストリームデータ転送方法およびシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000172599A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003090427A1 (fr) * | 2002-04-19 | 2003-10-30 | Matsushita Electric Industrial Co., Ltd. | Dispositif de reception de donnees et systeme de distribution de donnees |
WO2003090282A1 (fr) * | 2002-04-19 | 2003-10-30 | Matsushita Electric Industrial Co., Ltd. | Appareil de reception de donnees et systeme de repartition de donnees |
WO2004036842A1 (ja) * | 2002-10-15 | 2004-04-29 | Sharp Kabushiki Kaisha | コンテンツを配信することのできるデータ配信装置 |
KR100437168B1 (ko) * | 2002-02-04 | 2004-06-25 | 삼성전자주식회사 | 엠펙-4 시스템 기반의 통신방법 |
US7756927B2 (en) | 2000-10-18 | 2010-07-13 | Nec Corporation | Object filtering method and client device using the same |
US8327011B2 (en) | 2000-09-12 | 2012-12-04 | WAG Acquistion, LLC | Streaming media buffering system |
US8364839B2 (en) | 2000-09-12 | 2013-01-29 | Wag Acquisition, Llc | Streaming media delivery system |
US8595372B2 (en) | 2000-09-12 | 2013-11-26 | Wag Acquisition, Llc | Streaming media buffering system |
WO2016088244A1 (ja) * | 2014-12-05 | 2016-06-09 | 富士通株式会社 | サーバの画像配信方法 |
-
1998
- 1998-12-10 JP JP10350963A patent/JP2000172599A/ja active Pending
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9742824B2 (en) | 2000-09-12 | 2017-08-22 | Wag Acquisition, L.L.C. | Streaming media delivery system |
US8327011B2 (en) | 2000-09-12 | 2012-12-04 | WAG Acquistion, LLC | Streaming media buffering system |
US8364839B2 (en) | 2000-09-12 | 2013-01-29 | Wag Acquisition, Llc | Streaming media delivery system |
US10567453B2 (en) | 2000-09-12 | 2020-02-18 | Wag Acquisition, L.L.C. | Streaming media delivery system |
US8595372B2 (en) | 2000-09-12 | 2013-11-26 | Wag Acquisition, Llc | Streaming media buffering system |
US10298639B2 (en) | 2000-09-12 | 2019-05-21 | Wag Acquisition, L.L.C. | Streaming media delivery system |
US10298638B2 (en) | 2000-09-12 | 2019-05-21 | Wag Acquisition, L.L.C. | Streaming media delivery system |
US9762636B2 (en) | 2000-09-12 | 2017-09-12 | Wag Acquisition, L.L.C. | Streaming media delivery system |
US9729594B2 (en) | 2000-09-12 | 2017-08-08 | Wag Acquisition, L.L.C. | Streaming media delivery system |
US7756927B2 (en) | 2000-10-18 | 2010-07-13 | Nec Corporation | Object filtering method and client device using the same |
KR100437168B1 (ko) * | 2002-02-04 | 2004-06-25 | 삼성전자주식회사 | 엠펙-4 시스템 기반의 통신방법 |
US7392322B2 (en) | 2002-04-19 | 2008-06-24 | Matsushita Electric Industrial Co., Ltd. | Data reception device and data distribution system |
WO2003090427A1 (fr) * | 2002-04-19 | 2003-10-30 | Matsushita Electric Industrial Co., Ltd. | Dispositif de reception de donnees et systeme de distribution de donnees |
US7817551B2 (en) | 2002-04-19 | 2010-10-19 | Panasonic Corporation | Data reception apparatus and data distribution system |
WO2003090282A1 (fr) * | 2002-04-19 | 2003-10-30 | Matsushita Electric Industrial Co., Ltd. | Appareil de reception de donnees et systeme de repartition de donnees |
WO2004036842A1 (ja) * | 2002-10-15 | 2004-04-29 | Sharp Kabushiki Kaisha | コンテンツを配信することのできるデータ配信装置 |
WO2016088244A1 (ja) * | 2014-12-05 | 2016-06-09 | 富士通株式会社 | サーバの画像配信方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100302263B1 (ko) | 스트림 데이터 전송방법 및 시스템 | |
JP4203140B2 (ja) | ストリームデータ転送方法およびシステム | |
US7467221B2 (en) | Video server for video distribution system | |
JP3825099B2 (ja) | 映像データ転送方式およびビデオサーバ装置 | |
US7424519B2 (en) | Distributed storage system, storage device and method of copying data | |
JP4709304B2 (ja) | 安価でスケーラブルなオープンアーキテクチャメディアサーバ | |
JP2006165928A (ja) | 移動体向けデータ配信支援方法 | |
JP2004070712A (ja) | データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム | |
JP3472511B2 (ja) | データ伝送装置 | |
WO2008040199A1 (fr) | Système et procédé de diffusion en direct de flux média entre homologues et serveur collecteur | |
WO2006008885A1 (ja) | 接続態様制御装置、接続態様制御方法及び接続態様制御用プログラム | |
US8336075B2 (en) | Information distribution system, program-for-management-apparatus recording medium, and program-for-information-processor recording medium | |
JP2000172599A (ja) | マルチキャストストリームデータ転送方法およびシステム | |
JP4882756B2 (ja) | 視聴状況監視方法、視聴状況監視装置、視聴状況監視プログラムおよび視聴状況監視システム | |
US20020147827A1 (en) | Method, system and computer program product for streaming of data | |
JP2000339279A (ja) | 映像分散キャッシュ装置、及び映像収集再生装置 | |
JP4869028B2 (ja) | 映像蓄積配信システム及び映像蓄積配信方法 | |
JP2003258885A (ja) | ストリーム配信方法,ストリーム配信装置,ストリーム品質管理装置,ストリーム配信用プログラムおよびストリーム品質管理用プログラム | |
JP2000358232A (ja) | Vodシステム | |
JP2003348186A (ja) | 電子データの送信方法および装置 | |
JP2002026942A (ja) | 情報配信/再生システム、情報配信/再生方法、記憶媒体 | |
JP2000148710A (ja) | 動画像サーバシステム | |
JP2002202929A (ja) | 要高速伝送データ処理方法およびその装置 | |
JP2000183958A (ja) | 通信制御装置及び制御方法及び記憶媒体及びシステム | |
JP2004221756A (ja) | 情報処理装置および情報処理方法、並びにコンピュータ・プログラム |