JP2000183873A - データ転送方法 - Google Patents

データ転送方法

Info

Publication number
JP2000183873A
JP2000183873A JP35344298A JP35344298A JP2000183873A JP 2000183873 A JP2000183873 A JP 2000183873A JP 35344298 A JP35344298 A JP 35344298A JP 35344298 A JP35344298 A JP 35344298A JP 2000183873 A JP2000183873 A JP 2000183873A
Authority
JP
Japan
Prior art keywords
terminal
data
retransmission
server
transfer method
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.)
Withdrawn
Application number
JP35344298A
Other languages
English (en)
Inventor
Takahiro Aoki
隆浩 青木
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP35344298A priority Critical patent/JP2000183873A/ja
Priority to US09/327,127 priority patent/US6563822B1/en
Publication of JP2000183873A publication Critical patent/JP2000183873A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
    • H04L12/1877Measures taken prior to transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】ネットワークの負担を低減し、受信側端末のバ
ッファの破綻を可能な限り回避するような、再送制御及
びフロー制御を有するデータ転送方法を提供する。 【解決手段】同一サブネットSN1内の所定の端末(例
えばC1)が、再送要求及び再送データをマルチキャス
トで送出し、該同一サブネットSN1内の該所定の端末
以外の端末(例えばC4)が、該サブネット外の端末T
1に対しては、再送要求及び再送データをユニキャスト
で送出する。また、サーバS1が送信するデータの送信
レート及びサービス時間に応じて相手端末(例えばC
1)が必要バッファ量を確保したり、サーバS1が、相
手端末(例えばC1)からのバッファ量の通知を基に送
出レートを変更する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ転送方法に
関し、特にネットワーク上で複数の端末にデータを送信
する場合のデータ転送方法に関するものである。近年、
インターネットやイントラネットなどのネットワークを
利用した様々なサービスが注目されて来ている。例え
ば、ネットワークを使って映像や音声を配信するサービ
スが挙げられる。これらは、ユーザがサーバに蓄えられ
た映像や音声データにアクセスして、自由に視聴できる
サービスである。
【0002】これらのサービスは通常1対1でデータを
送り合う、ユニキャストというデータ転送方法で行われ
ている。また、複数のユーザに同時にデータを送るサー
ビスもあり、その一例としてマルチキャストがある。以
下に、ユニキャスト及びマルチキャストのそれぞれの動
作を図17及び18を参照して説明する。
【0003】(1)ユニキャスト:図17 ユニキャストでは1対1のデータ送信を行う。すなわち
図17に示されるように、送信側であるサーバS1は送
信相手C1の固有のアドレス「192.168.100.201」を宛
先にしてデータを送信する。このとき、データは宛先で
ある送信相手C1に送信される。
【0004】(2)マルチキャスト:図18 マルチキャストでは、サービス毎にマルチキャスト用の
アドレスを用意しておく。例えば、アドレス「224.1.1.
100」をスポーツ番組用と決めておく。このサービスを
受信したいユーザは「224.1.1.100」というマルチキャ
ストアドレスへ参加することによってデータを受信する
ことができる。
【0005】送信側であるサーバはユニキャストと同様
に、アドレス「224.1.1.100」に対してデータを送れば
よい。すると、データ送信の過程で必要に応じてデータ
のコピーが作られ、最終的に受信を希望した全ての端末
(C1及びC4)にデータが送られることになる。マル
チキャストではデータを受信する端末が何台あろうと、
サーバによるデータ送出は1回でよいので、ネットワー
ク及びサーバの負担が軽くなるという特徴がある。
【0006】従って、マルチキャストは、放送のような
サービス形態でスポーツやイベント、講演映像の中継な
どネットワークやサーバに大きな負担を掛ける映像デー
タなどを送る際に大きな効果が期待できる。しかし、マ
ルチキャストにはデータの到着を保証する仕組みがな
い。つまり、サーバはデータを一方的に送るのみで、途
中でデータがロスしたとしても何ら措置が取られない。
【0007】また、受信側の各端末が映像や音声データ
を消費していくレートと、サーバの送出レートに差があ
ると、受信側端末のバッファがアンダーフローやオーバ
ーフローしてしまう可能性がある。このような観点か
ら、ネットワークでデータを配信する際にロスしたパケ
ットを補償する再送制御と、受信側端末のバッファがオ
ーバーフローやアンダーフローしないように制御するフ
ロー制御とが必要とされる。
【0008】
【従来の技術】(1)再送制御に関する従来の技術 まず送信側端末(例えばサーバ)は、送信パケット中に
パケットデータごとに連続するシーケンス番号を埋め込
む。受信側端末(クライアント)は、シーケンス番号を
調べることでパケットのロスを検出できる。パケットロ
スを検出した受信側端末は、送信側端末にデータの再送
を要求し、送信側端末が要求されたデータを送ることで
データが補償される。
【0009】(2)フロー制御に関する従来の技術 固定レート制御 映像や音声データの場合、データの消費レートが予め決
まっているので、送信側端末はそのレートでデータを送
り続ける。例えば、6Mbpsの映像の場合、送信側端末は6
Mbpsのレートでデータを送る。
【0010】ウィンドウ制御 これは、受信側端末がデータを受信する度に、データを
受け取ったという通知と共に自分のバッファの残り容量
を送信側端末に通知する方法である。送信側端末は受信
側端末のバッファの空き容量を基にデータを送る。図1
9に示されるように、受信側端末のバッファに100K
B空きがあるなら、送信側端末は100KB送るという
様なことを繰り返す(TCPで使われている方法)。
【0011】ACKベース制御 図20に示されるように、まず、送信側端末は一定のレ
ートでデータを送る。送信側端末の送出レートは実際の
映像や音声の消費レートより若干高めに設定しておく。
すると受信側端末のバッファにはデータが溜まってい
く。受信側端末は自分のバッファが溢れそうなのを検知
したら、バッファが溢れそうだという意味のパケット
(=ACKパケット)を送信側端末に送る。このパケッ
トを受け取った送信側端末は一定の時間送出を止めるこ
とで受信側端末のバッファオーバーフローを抑止する。
【0012】
【発明が解決しようとする課題】(1)再送制御に関す
る問題点 上記の従来の再送制御は、ユニキャストのデータ転送に
おいては特に問題はないが、マルチキャストの場合、受
信している端末数を特定することが出来ないため、大量
の再送要求パケットが発生してしまう可能性がある(図
21参照)。この場合、再送処理だけでなく、その他の
データ転送も出来なくなり、ネットワーク全体に悪影響
が及ぶ可能性もある。
【0013】(2)フロー制御に関する問題点 上記固定レート制御における問題点は、送信側端末の
送出レートが一定であったとしても、送出を続けていく
と受信側端末のバッファの破綻は起こり得るということ
である(図22参照)。これは、送信側端末と受信側端
末のクロックの進み方の僅かなズレが原因で起こる。例
えば、送信側端末側のクロックでは1時間経過したの
に、受信側端末では、59分59秒であったりするため
に発生する。このようなズレは、マルチキャストの場合
も同様に各端末について生じる(図23参照)。
【0014】また、上記ウィンドウ制御及びACKベ
ース制御における共通の問題点としては、以下の3点
が挙げられる。 (i)マルチキャストでの利用が考慮されていない ウィンドウ制御の場合、複数の受信側端末から異なる
バッファの空き容量が通知された時、どれだけのデータ
を送ればよいのか分からない。また、ACKベース制御
の場合、最終的に最もバッファの埋まっている受信側
端末のみが制御対象になってしまい、他の受信側端末は
全く考慮されなくなってしまう。
【0015】(ii)ネットワークディレイに弱い ウィンドウ制御の場合、受信側端末から、バッファの
空きを通知するパケットが送信側端末に到着しない限り
送信側端末は次のデータを送ることが出来ない。そのた
めディレイの大きなネットワークではスループット性能
が低下してしまう。
【0016】ACKベース制御の場合、ディレイが大
きいネットワークだと、受信側端末からのACKパケッ
トが送信側端末に着き、送出停止の効果が出る前に受信
側端末のバッファが破綻してしまう可能性がある。つま
り、両者とも大規模なネットワークでの利用には不向き
である。 (iii)通信パケットの増加 ウィンドウ制御の場合、受信側端末が空きバッファを
通知→送信側端末がデータを送出、という流れになって
いるため、送出パケット数と制御パケット数が比例する
関係になる。
【0017】ACKベース制御の場合も送出レート
や、ACKを受け取っての停止時間によるが、やはり送
出パケット数と制御パケット数は比例する関係になる。
すなわち、送出パケット数が多い程、制御パケット数も
多くなり、フロー制御用に多くのパケットがネットワー
クを流れることになる。従って本発明は、ネットワーク
の負担を低減し、受信側端末のバッファの破綻を可能な
限り回避するような、再送制御及びフロー制御を有する
データ転送方法を提供することを課題とする。
【0018】
【課題を解決するための手段】〔1〕上記の課題を解決
するため、本発明に係るデータ転送方法は、同一サブネ
ット内の所定の端末が、再送要求及び再送データをマル
チキャストで送出するローカル再送制御ステップと、該
同一サブネット内の該所定の端末以外の端末が、該サブ
ネット外の端末に対しては、再送要求及び再送データを
ユニキャストで送出するグローバル再送制御ステップと
を有することを特徴としている。
【0019】すなわち、ローカル再送制御ステップで
は、図1に原理的に示す如く、同一サブネットSN1内
の所定の端末C1が受信データ中にパケットロスを検出
した場合、該端末C1は、該サブネットSN1内に対し
ては再送要求をマルチキャストパケットとして送出す
る。該サブネットSN1内で再送要求を受け且つ要求
されているパケットを持っている端末C3は該パケット
を該サブネットSN1内でマルチキャストで再送す
る。
【0020】また、グローバル再送制御ステップでは、
図2に原理的に示す如く、同一サブネットSN1内の所
定の端末以外の端末、例えば端末C4が同一サブネット
SN1外の端末T1に再送要求を送る場合、該端末C4
は予め再送要求する相手の端末T1と(例えばルータR
を介して)コネクションを張っておき、この相手端末T
1との間で再送要求及び再送データをユニキャスト
で送受信する。
【0021】このようにしてローカル再送制御では、各
端末固有のパケットロスをサブネット内という狭い範囲
内に限定することができ、同じデータを持っている端末
がサブネット内にあるならばサブネット内の要求パケッ
ト、再送パケットのやりとりで再送が完了するため、サ
ーバやネットワークにかかる負荷を大幅に低減すること
ができる。
【0022】また、グローバル再送制御では、ルータな
どによるパケットロスのようにサブネット内の全端末に
共通してロスしたパケットを、ユニキャストで再送要求
することにより、ネットワーク全体に余分なデータを送
らないようにすることができる。また、グローバル再送
要求を行う相手をサーバだけに限定せずサブネット外の
端末としたことで、サーバの負荷が低減され、大規模な
ネットワークにも対応が可能である。
【0023】〔2〕また、本発明に係るデータ転送方法
は、上記の本発明〔1〕において、該ローカル再送制御
ステップは、該同一サブネット内の他の端末が再送要求
又は再送データを送出したことを検知したとき、該所定
の端末が該再送要求又は再送データの送出を停止すると
いう条件の下で該マルチキャストを実行することができ
る。
【0024】すなわち、再送要求も再送データも、他端
末が先に送出していることを検出した場合は、自局は送
出しないという一定の条件の下でローカル再送制御をマ
ルチキャストで行うことにより、転送パケット数の抑制
ができる。 〔3〕また、本発明に係るデータ転送方法は、上記の本
発明〔1〕において、該グローバル再送制御ステップ
は、予め固定的に張られたコネクションにより該ユニキ
ャストを実行することができる。
【0025】すなわちこれは、データ送出の有無に関わ
らず、再送要求を出す端末と再送要求を受ける端末が予
め互いのアドレスを教え合っておくことにより常にコネ
クションを張っておく方法であり、ネットワークの構成
が変化しない場合に有効である。このように、常にコネ
クションを張っておくことによって、コネクション確立
までに時間をかけることなく、必要時には即座に再送制
御を行うことができる。
【0026】〔4〕また、本発明に係るデータ転送方法
は、上記の本発明〔1〕において、該グローバル再送制
御ステップは、該ユニキャストで使用するコネクション
のアドレスが、データ送出用アドレスとは異なるように
することができる。これは、再送要求を出す端末と再送
要求を受ける端末がダイナミックにコネクションを張る
場合に有効である。この場合、再送要求を受ける端末は
例えばコネクションを募集するパケットをマルチキャス
トでネットワークに送り、コネクションを張りたい端末
がそのコネクション募集のパケットに応じる形でコネク
ションを張ることになる。
【0027】このときデータ送出用のアドレスを用いて
コネクションの募集及び応募を行う場合、コネクション
を張りたい端末は募集のパケットを該データ送出用のア
ドレスで受信しようとした時点で、該募集のパケット以
外のデータが該データ送出用アドレスに(サーバ等か
ら)送出されていると、このデータを受信してしまう。
すなわち、該端末は必要としないデータまで受信してし
まう可能性がある。
【0028】従って、コネクション管理用とデータ送出
用の各アドレスを別々にしておくことで、必要のないデ
ータが端末に送られないようにすることができる。 〔5〕また、本発明に係るデータ転送方法は、上記の本
発明〔1〕において、該サブネット外の端末をサーバと
することができる。 〔6〕また、本発明に係るデータ転送方法は、上記の本
発明〔5〕において、該サーバが送信するデータの送信
レート及びサービス時間に応じて相手端末が必要バッフ
ァ量を確保するフロー制御ステップをさらに備えること
ができる。(以下、この方式を「可変バッファ方式」と
呼ぶことがある。) すなわち、図3に示す如く、各端末がサービス開始前に
送信されるデータのレート及びサービス時間をサーバに
問い合わせる。各端末は、送信されるデータのレート及
びサービス時間に自局で認識している予想クロック誤差
を加味して、必要とされるバッファ量を計算し、確保す
ることでバッファ破綻を回避する。
【0029】例えば、クロックの誤差を±100ppm
と仮定する。データレート=6Mbpsの映像を2時間
再生するならば、 と計算できる。このように、予想されるクロックの誤
差、データのレート、再生時間が分かれば、必要なバッ
ファ量が決まる。そして、各端末が上記のバッファ量を
確保するので、無駄なバッファを廃し、メモリを効率よ
く利用できる。
【0030】〔7〕また、本発明に係るデータ転送方法
は、上記の本発明〔5〕において、該サーバが相手端末
からのバッファ量の通知を基に送出レートを変更するフ
ロー制御ステップをさらに備えることができる。(以
下、この方式を「可変送出レート方式」と呼ぶことがあ
る。) すなわち、サーバは定められたレート(例えば、6Mb
ps)でデータを送出する一方で、例えば定期的に端末
にバッファ状態を問い合わせ、該端末からのバッファ量
の通知を基に送出レートの変更を行う(図4参照)。こ
のレート決定手順について、ユニキャストの場合を例に
挙げて図5により説明する。
【0031】時間間隔T'の前後で測定したバッファ量
をそれぞれ、b'、bとする。また、その間の送出レー
トをR'、また、バッファ量の目標値をβとする。現在
のバッファ量bと目標バッファ量βとの差(=β−b)
を△βと定義する。次の周期Tでの送出レートRを下記
の式(1)に従って決定する。
【0032】
【数1】 ここで、p,qは0〜1の値をとる任意のパラメータで
ある。そして、式(1)の第1項はバッファを目標値に
近づけるための項目である。つまり目標のバッファ量と
現在のバッファ量の差が△βであるが、△β/Tという
項目は次のT秒間で差△βを埋めるために必要なレート
を表している。一方、同第2項はバッファを安定させる
力を表している。T'秒間でバッファがb'→bと変化し
たため、これを打ち消すためには、(b−b')/T'だ
けレートから差し引けばよい。
【0033】なお、p,qを変化させることでレート修
正の性質を変化させることが出来る。pが大きいと、目
標値への収束が早くなるが、その分、レートの安定性が
損なわれる。qが大きいとバッファは安定するが目標値
への収束には時間がかかる。そのためp,qは利用され
る環境に応じて決定される。 〔8〕また、本発明に係るデータ転送方法は、上記の本
発明〔7〕において、該フロー制御ステップは、該サー
バがマルチキャストによりバッファ量の通知を要求し、
各端末がユニキャストで通知を行うステップを含むこと
ができる。
【0034】すなわち、サーバがマルチキャストでデー
タを送出する場合には、該サーバはマルチキャストで対
象とする全端末にバッファ量の通知を要求する。該端末
は要求に応じてバッファ量の通知を行う。このとき、ユ
ニキャストで通知を行うことにより、ネットワークの負
担を軽減することができる。なお、マルチキャストで端
末に対して通知要求をする場合、サーバは各端末の総バ
ッファに占める該送出データの割合をレート設定の目標
として、上記の発明〔7〕によるレートを調節する。
【0035】n番目の端末の通知バッファ総量をBn
バッファ内のデータ量をbnとする(図6参照)。サー
バの送出レートにより端末のバッファ量が△βだけ増え
たとする。この時の平均バッファ使用率wは、
【0036】
【数2】 と表せる。ここから逆に△βを求めると、次式で与えら
れる。
【0037】
【数3】 例えば、平均値として、各端末のバッファが半分だけ埋
まるようにレートを調節したい場合、w=0.5と指定
する。
【0038】各端末からの通知を基にして、式(3)か
ら△βを計算し、式(1)から送出レートを計算する。
〔9〕また、本発明に係るデータ転送方法は、上記の本
発明〔6〕又は本発明〔8〕において、該フロー制御ス
テップは、該相手端末について、バッファ量に応じてオ
ーバーフローしそうな端末のグループとアンダーフロー
しそうな端末のグループに分け、各グループに対応した
複数の送出レートでデータを送信するステップを含むこ
とができる。
【0039】すなわち、可変送出レート方式において
は、サーバは、相手端末からのバッファ量の通知を基
に、バッファがオーバーフローしそうな端末のグループ
とアンダーフローしそうな端末のグループに分け、それ
ぞれのグループのバッファ量の平均値に対応した送出レ
ートで各グループの端末に送信データを分けてマルチキ
ャストを実行する。
【0040】また、可変バッファ方式においては、予め
予想された時間よりも長い時間のサービスを行う必要が
生じた場合に、新たな送出レートを使用してデータ送出
を行う。複数の送出レートを使用することで、サーバ及
びネットワークの負荷は増えるが、相手端末のバッファ
破綻までの時間を延ばすことが出来る。
【0041】〔10〕また、本発明に係るデータ転送方
法は、上記の本発明〔5〕において、該サーバからデー
タを受信する端末である相手端末が自局のクロックと該
サーバのクロックとを同期させるフロー制御ステップを
さらに備えることができる(クロック同調方式)。すな
わち、本発明は端末のクロックをサーバのクロックの進
み方に合わせるものである。サーバはある時間間隔(一
定でなくて構わない)で対象の端末に対して、「同期化
パケット」を送る。このパケットには、サーバ自身の現
在時刻(あるいは起動してからの時刻)を入れておく。
あるいはデータパケット中にサーバの時刻を埋め込んで
もよい。
【0042】このパケットを受け取った端末は、受け取
った時の自局の時刻(あるいは起動してからの時刻)と
ともにサーバ自身の現在時刻(あるいは起動してからの
時刻)を記録しておく。この操作を何度か繰り返し、プ
ロットすると図7のようになる。このプロットされた点
を最小二乗法などで直線近似する。
【0043】 Ts=aTc+b ・・・式(4) ただし、Tsはサーバの時刻、Tcは端末の時刻である。
上式のaがサーバと端末のクロックの進み方の違いを表
している。端末側で映像や音声をデコードする際には、
サーバから受けた時刻により上記の式(4)に従った時
刻を求めて使う。
【0044】〔11〕また、本発明に係るデータ転送方
法は、上記の本発明〔10〕において、該フロー制御ス
テップとして、該相手端末がサービス開始前に予め該ク
ロックの同期を取ることができる。すなわち、サーバが
上記「同期化パケット」をサービスの有無とは別に送出
しておくことにより、端末がサービス開始前に予め該ク
ロックの同期を取ることができる。これにより、サービ
ス開始直後の誤差が小さくなる。
【0045】〔12〕また、本発明に係るデータ転送方
法は、上記の本発明〔11〕において、予め該クロック
の同期を取るために、該サーバが自局からの時刻通知パ
ケットをデータ送出用アドレスとは異なるアドレスを用
いて該相手端末に通知することができる。すなわち、サ
ーバが上記「同期化パケット」の送出をデータ送出アド
レスと異なるアドレスを用いて行う。これにより、サー
ビスが行われていない端末やネットワークに余計なデー
タが送られなくて済む。
【0046】
【発明の実施の形態】(1)再送制御に関する実施例 本発明に係るデータ転送方法における再送制御の動作を
図8に示すシステム構成例を参照して以下に説明する。
なお同図では、ローカル再送制御とグローバル再送制御
を組み合わせたネットワーク全体での再送制御が例示さ
れている。また、同図においてサーバS1は、サブネッ
トSN1〜SN6をそれぞれ構成する端末(クライアン
ト)C1〜C6に対しマルチキャストでデータを送信し
ているものとする。
【0047】まず、各サブネットSN1〜SN6内で
は、所定の端末がローカル再送制御を行えるように設定
されている。例えば、サブネットSN1,SN2,SN
5,及びSN6における端末C2及びC3、並びにサブ
ネットSN3及びSN4における端末C1及びC3はロ
ーカル制御を行うことができ、これらの端末がパケット
ロスを検出した場合は、再送要求及び再送データをマル
チキャストで送出するものとして予め設定されている。
【0048】また、それぞれのサブネット内で上記所定
の端末以外の端末はグローバル再送制御を行えるように
設定されている。例えば、サブネットSN1,SN2,
SN5,及びSN6における端末C1、並びにサブネッ
トSN3及びSN4における端末C2はグローバル再送
制御を行うことができ、これらの端末がパケットロスを
検出した場合は、サブネット外の端末(サーバを含む)
に対して再送要求及び再送データをユニキャストで送出
するものとして予め設定されている。
【0049】次に、ローカル再送制御においては、例え
ばサブネットSN1における端末C2がNo.100のデータ
のロスを検出したとき、この端末C2は、このデータに
ついて再送要求をマルチキャストで端末C1及びC3に
対して送出する。ただし、同じくNo.100のデータのロス
を検出した端末C3が端末C2よりも先に再送要求を送
出しているときには、端末C3による再送要求がマルチ
キャストで既に送出されているため、端末C2はNo.100
のデータについての再送要求が成されたことを検知する
ことができ、自局から同一の再送要求を送出するのを控
える。同様に、再送データの送出についても重複送出を
避けることができる。
【0050】一方、グローバル再送制御においては、例
えばサブネットSN1の端末C1がパケットロスを検出
したとき、この端末C1は予め固定的にコネクションを
張っていたサーバS1に対してグローバル再送要求を行
い、これに応答してサーバS1は当該データを該端末C
1に再送する。ここで、再送要求を出す端末と再送要求
を受ける端末が、固定的ではなくダイナミックにコネク
ションを張ることも可能である。この場合、図9に示す
如く、コネクション管理用とデータ送出用で同じアドレ
ス「224.1.1.40」を用いると、サービスを受けていない
端末であっても、コネクションを張るためにアドレス
「224.1.1.40」に参加しているため、データが送出され
てしまう可能性がある。
【0051】そこで、図10に示す如く、コネクション
管理用とデータ送出用で異なるアドレスを用いることが
望ましい。この例では、コネクション管理用にアドレス
「224.1.1.50」を使用し、データ送出用にアドレス「22
4.1.1.40」を使用しているが、サービスを受けていない
端末はコネクション管理用アドレス「224.1.1.50」には
参加しているが、データ送出用にアドレス「224.1.1.4
0」には参加していないので、データは送られて来な
い。
【0052】(2)フロー制御に関する実施例 図11は、本発明に係るデータ転送方法におけるフロー
制御のシステム構成例を示したものである。管理サーバ
S10は、記憶装置10、テープ装置20、及びカメラ
・マイク等30が接続されたデータ送出サーバS20が
所定の送信レート及びサービス時間でデータ送出を行う
ように制御している。そこで、各端末(クライアント)
C1〜C4は、管理サーバS10に対しデータの送信レ
ート及びサービス時間を問い合わせ、これに基づいて必
要バッファ量を確保してからサービスを受ける。
【0053】一方、本発明に係るデータ転送方法におけ
るフロー制御では、サーバ側から各端末に対してバッフ
ァ量の状況を要求してもよく、この場合の手順が図12
に示されている。まず、マルチキャスト環境では相手端
末が不特定なため、通知パケットがネットワークで衝突
する可能性がある。これを回避するためには、各端末が
ランダムな時間に自己のバッファ量を通知すればよい。
【0054】具体的には、サーバは、モニター開始時間
(1)、モニター時間(2)、及び通知最大待ち時間
(3)の情報を含んだバッファ量通知要求パケットを送
る。各端末は、このバッファ量通知要求パケットを受信
した後、モニター開始時間(1)が経過した後にバッフ
ァ量の1回目の記録を行う。これは式(1)における
b'に相当する。次に、モニター時間(2)が経過した
後にバッファ量の2回目の記録を行う。これは式(1)
におけるbに相当する。さらに、0から通知最大待ち時
間(3)が経過するまでのランダムの時間だけ待機した
後にバッファ量通知パケットを送出する。
【0055】サーバは、各端末から受信したバッファ量
通知パケットの内容に基づき、式(3)及び式(1)を用
いて目標バッファ量を得るための送出レートを算出した
後、送出レートを変更する。なお、図13はサーバがデ
ータの送出レートを制御しない場合の各端末C1〜C4
のバッファ量の推移をグラフに示したものであり、図1
4はサーバが各端末C1〜C4からのバッファ量の通知
を基に送出レートを制御した場合の各端末のバッファ量
をグラフに示したものである。
【0056】図13と図14を比較すると送出レートを
制御した図14の方がバッファ上限に達するバッファ破
綻までの時間を延ばすことが可能であることが分かる。
また、サーバと各端末のクロックのズレが正規分布して
いると仮定した場合、送出レートの制御無しの図15
(1)と、送出レートを制御した同図(2)を比較する
と、サーバが各端末からのバッファ量の通知を基に送出
レートを制御することにより、最悪時のクロックのズレ
が半分になるという効果が得られる。
【0057】ただし、上記のフロー制御を行ってもサー
ビスを行って行くにつれ、図16(1)に示す如く各端
末のバッファ量に差が出て来る。そこで、バッファが破
綻する前に、オーバーフローしそうな端末のグループ
(端末C1及びC2)(同図(2)参照)とアンダーフ
ローしそうな端末のグループ(端末C3及びC4)(同
図(3)参照)に分けて、サーバが各グループに適する
送出レートでデータを送信してもよい。
【0058】
【発明の効果】以上説明したように、本発明に係るデー
タ転送方法によれば、同一サブネット内の所定の端末
が、再送要求及び再送データをマルチキャストで送出
し、該同一サブネット内の該所定の端末以外の端末が、
該サブネット外の端末に対しては、再送要求及び再送デ
ータをユニキャストで送出するように構成したので、サ
ーバやネットワークへの負担を大幅に軽減できる。ま
た、サーバが送信するデータの送信レート及びサービス
時間に応じて相手端末が必要バッファ量を確保したり、
サーバが、相手端末からのバッファ量の通知を基に送出
レートを変更するフロー制御ステップを実行すれば受信
側の無駄なバッファを廃し、バッファの破綻を可能な限
り回避することができる。
【図面の簡単な説明】
【図1】本発明に係るデータ転送方法におけるローカル
再送制御の動作説明図である。
【図2】本発明に係るデータ転送方法におけるグローバ
ル再送制御の動作説明図である。
【図3】本発明に係るデータ転送方法におけるフロー制
御による可変バッファ方式の説明図である。
【図4】本発明に係るデータ転送方法におけるフロー制
御による可変送出レート方式の説明図(1)である。
【図5】本発明に係るデータ転送方法におけるフロー制
御による可変送出レート方式の説明図(2)である。
【図6】本発明に係るデータ転送方法における端末のバ
ッファ量を説明するための図である。
【図7】本発明に係るデータ転送方法におけるサーバ時
刻と端末時刻の関係を示したグラフ図である。
【図8】本発明に係るデータ転送方法における再送制御
のシステム構成例を示したブロック図である。
【図9】本発明に係るデータ転送方法におけるグローバ
ル再送制御を行うためにコネクション管理用とデータ送
出用で同じアドレスを用いた場合の動作説明図である。
【図10】本発明に係るデータ転送方法におけるグロー
バル再送制御を行うためにコネクション管理用とデータ
送出用で異なるアドレスを用いた場合の動作説明図であ
る。
【図11】本発明に係るデータ転送方法におけるフロー
制御のシステム構成を示したブロック図である。
【図12】本発明に係るデータ転送方法におけるフロー
制御によるバッファ量の通知を示したタイムチャート図
である。
【図13】レート制御しない場合の各端末におけるバッ
ファ量の推移を示したグラフ図である。
【図14】本発明に係るデータ転送方法におけるフロー
制御によってレート制御した場合の各端末におけるバッ
ファ量の推移を示したグラフ図である。
【図15】本発明に係るデータ転送方法におけるフロー
制御によるレート制御の効果を説明するためのグラフ図
である。
【図16】本発明に係るデータ転送方法におけるフロー
制御によるグループ化を説明するためのグラフ図であ
る。
【図17】一般的なユニキャストの動作説明図である。
【図18】一般的なマルチキャストの動作説明図であ
る。
【図19】従来例におけるウインドウ制御によるフロー
制御の動作説明図である。
【図20】従来例におけるACKベース制御によるフロ
ー制御の動作説明図である。
【図21】従来例における再送要求時のパケット衝突例
を説明するための図である。
【図22】ユニキャストにおける端末のバッファ量の変
化を示したグラフ図である。
【図23】マルチキャストにおける各端末のバッファ量
の変化を示したグラフ図である。
【符号の説明】
C1〜C4 端末(クライアント) R ルータ T1 サーバまたは端末 SN1〜SN6 サブネット S1 サーバ S10 管理サーバ S20 データ送出サーバ 10 記憶装置 20 テープ装置 30 カメラ、マイク等 図中、同一符号は同一又は相当部分を示す。
フロントページの続き Fターム(参考) 5B089 GA11 GA18 GB01 JA07 JA33 JB04 JB11 JB22 KA07 KB06 KC23 KC29 KD01 KE09 MA01 MA03 5K030 HA08 HB12 HB15 KA06 KA08 LA01 LA15 LB20 LC01 LD06 LD18 5K033 AA03 AA07 CB03 CB06 CB13 CB15 DB16 5K034 AA02 AA09 BB07 DD02 EE11 HH09 LL01 NN22

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】同一サブネット内の所定の端末が、再送要
    求及び再送データをマルチキャストで送出するローカル
    再送制御ステップと、 該同一サブネット内の該所定の端末以外の端末が、該サ
    ブネット外の端末に対しては、再送要求及び再送データ
    をユニキャストで送出するグローバル再送制御ステップ
    と、 を有することを特徴とするデータ転送方法。
  2. 【請求項2】請求項1において、 該ローカル再送制御ステップは、該同一サブネット内の
    他の端末が再送要求又は再送データを送出したことを検
    知したとき、該所定の端末が該再送要求又は再送データ
    の送出を停止するという条件の下で該マルチキャストを
    実行するステップを含むことを特徴としたデータ転送方
    法。
  3. 【請求項3】請求項1において、 該グローバル再送制御ステップは、予め固定的に張られ
    たコネクションにより該ユニキャストを実行するステッ
    プを含むことを特徴としたデータ転送方法。
  4. 【請求項4】請求項1において、 該グローバル再送制御ステップでは、該ユニキャストで
    使用するコネクションのアドレスがデータ送出用アドレ
    スと異なることを特徴とするデータ転送方法。
  5. 【請求項5】請求項1において、 該サブネット外の端末がサーバであることを特徴とする
    データ転送方法。
  6. 【請求項6】請求項5において、 該サーバが送信するデータの送信レート及びサービス時
    間に応じて相手端末が必要バッファ量を確保するフロー
    制御ステップをさらに備えたことを特徴とするデータ転
    送方法。
  7. 【請求項7】請求項5において、 該サーバが、相手端末からのバッファ量の通知を基に送
    出レートを変更するフロー制御ステップをさらに備えた
    ことを特徴とするデータ転送方法。
  8. 【請求項8】請求項7において、 該フロー制御ステップは、該サーバがマルチキャストに
    よりバッファ量の通知を要求し、各端末がユニキャスト
    で通知を行うステップを含むことを特徴としたデータ転
    送方法。
  9. 【請求項9】請求項6又は請求項8において、 該フロー制御ステップは、該相手端末について、バッフ
    ァ量に応じてオーバーフローしそうな端末のグループと
    アンダーフローしそうな端末のグループに分け、各グル
    ープに対応した複数の送出レートでデータを送信するス
    テップを含むことを特徴としたデータ転送方法。
  10. 【請求項10】請求項5において、 該サーバからデータを受信する端末である相手端末が自
    局のクロックと該サーバのクロックとを同期させるフロ
    ー制御ステップをさらに備えたことを特徴とするデータ
    転送方法。
  11. 【請求項11】請求項10において、 該フロー制御ステップは、該相手端末がサービス開始前
    に予め該クロックの同期を取るステップを含むことを特
    徴としたデータ転送方法。
  12. 【請求項12】請求項11において、 該フロー制御ステップは、予め該クロックの同期を取る
    ために、該サーバが自局からの時刻通知パケットをデー
    タ送出用アドレスとは異なるアドレスを用いて該相手端
    末に通知することを特徴とするデータ転送方法。
JP35344298A 1998-12-11 1998-12-11 データ転送方法 Withdrawn JP2000183873A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP35344298A JP2000183873A (ja) 1998-12-11 1998-12-11 データ転送方法
US09/327,127 US6563822B1 (en) 1998-12-11 1999-06-07 Data Transferring method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35344298A JP2000183873A (ja) 1998-12-11 1998-12-11 データ転送方法

Publications (1)

Publication Number Publication Date
JP2000183873A true JP2000183873A (ja) 2000-06-30

Family

ID=18430882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35344298A Withdrawn JP2000183873A (ja) 1998-12-11 1998-12-11 データ転送方法

Country Status (2)

Country Link
US (1) US6563822B1 (ja)
JP (1) JP2000183873A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002084339A (ja) * 2000-07-06 2002-03-22 Matsushita Electric Ind Co Ltd ストリーミング方法およびそれを実行するシステム
WO2003065662A1 (fr) * 2002-01-30 2003-08-07 Pfu Limited Dispositif, procede et systeme de communication par diffusion, programme correspondant et support d'enregistrement de programme
JP2008085932A (ja) * 2006-09-29 2008-04-10 Fujitsu Ltd データ通信方法
JP2008228290A (ja) * 2007-03-09 2008-09-25 Samsung Electronics Co Ltd データパケット損失の補償のためのクライアントとシステム、及びその方法
US7586913B2 (en) 2001-03-01 2009-09-08 Mitsubishi Denki Kabushiki Kaisha Mobile IP packet communication system
JP4812832B2 (ja) * 2005-05-23 2011-11-09 マイクロソフト コーポレーション メディアストリーミングのフロー制御
JP2012520010A (ja) * 2009-03-06 2012-08-30 アスペラ,インク. I/o駆動の速度適応のための方法およびシステム<関連出願>本出願は、2009年3月6日に出願された仮出願シリアル番号61/158,000に対する優先権を主張し、かつこの出願を参照によって組み込む。この出願はまた、以下の出願の明細書の全体に関連し、かつこれらを参照によって組み込む。以下の出願とは、すなわち、2005年12月23日に出願され“bulkdatatransfer”とタイトルされた米国特許出願11/317,663、および、2007年9月4日に出願され“methodandsystemforaggregatebandwidthcontrol”とタイトルされた米国特許出願11/849,782である。
JP2016529776A (ja) * 2013-07-08 2016-09-23 華為技術有限公司Huawei Technologies Co.,Ltd. ビデオ再生を制御する方法、デバイス及びシステム
US10009245B2 (en) 2014-08-25 2018-06-26 Fujitsu Limited Communication system, failure control device, and failure control method
JP2018186465A (ja) * 2017-04-27 2018-11-22 日本電気株式会社 データ受信装置、システム、方法およびプログラム

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7139838B1 (en) * 1999-10-21 2006-11-21 Nortel Networks Limited Apparatus and method of distributing routing information
US7009971B2 (en) * 2001-07-16 2006-03-07 International Business Machines Corporation Methods and arrangements for multicasting a data stream at different data rates to groups of subscribers
JP2003209576A (ja) * 2002-01-15 2003-07-25 Matsushita Electric Ind Co Ltd マルチキャスト通信方法及びそのシステム
IL157886A0 (en) * 2003-09-11 2009-02-11 Bamboo Mediacasting Ltd Secure multicast transmission
IL157885A0 (en) * 2003-09-11 2004-03-28 Bamboo Mediacasting Ltd Iterative forward error correction
IL158158A (en) * 2003-09-29 2012-05-31 Bamboo Mediacasting Ltd Distribution of multicast data to users
US7490158B2 (en) * 2003-10-30 2009-02-10 Microsoft Corporation Multicast transfer rate probe
WO2006075559A1 (ja) * 2005-01-11 2006-07-20 Matsushita Electric Industrial Co., Ltd. 通信方法および受信端末
US20060227772A1 (en) * 2005-03-30 2006-10-12 Fujitsu Limited Method and system for packet data communication between networks
US9118494B2 (en) * 2011-01-06 2015-08-25 Futurewei Technologies, Inc. Method for group-based multicast with non-uniform receivers
FR3048149B1 (fr) * 2016-02-23 2018-03-23 Sagemcom Energy & Telecom Sas Procede d'adaptation dynamique d'un debit de donnees

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH066382A (ja) 1992-06-23 1994-01-14 Hitachi Ltd パケット通信装置および通信方法
ATE176744T1 (de) * 1992-11-27 1999-02-15 Ibm Mehrfachsende-leitweglenkung zwischen bereichen
JP3392599B2 (ja) 1995-09-18 2003-03-31 株式会社東芝 パケット送信装置及びパケット送受信システム
US5905871A (en) * 1996-10-10 1999-05-18 Lucent Technologies Inc. Method of multicasting
US6078590A (en) * 1997-07-14 2000-06-20 Cisco Technology, Inc. Hierarchical routing knowledge for multicast packet routing

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4596693B2 (ja) * 2000-07-06 2010-12-08 パナソニック株式会社 ストリーミング方法およびそれを実行するシステム
JP2002084339A (ja) * 2000-07-06 2002-03-22 Matsushita Electric Ind Co Ltd ストリーミング方法およびそれを実行するシステム
US7586913B2 (en) 2001-03-01 2009-09-08 Mitsubishi Denki Kabushiki Kaisha Mobile IP packet communication system
WO2003065662A1 (fr) * 2002-01-30 2003-08-07 Pfu Limited Dispositif, procede et systeme de communication par diffusion, programme correspondant et support d'enregistrement de programme
JP4812832B2 (ja) * 2005-05-23 2011-11-09 マイクロソフト コーポレーション メディアストリーミングのフロー制御
US8296460B2 (en) 2006-09-29 2012-10-23 Fujitsu Limited Method and apparatus for communicating data and program thereof
JP2008085932A (ja) * 2006-09-29 2008-04-10 Fujitsu Ltd データ通信方法
JP4680860B2 (ja) * 2006-09-29 2011-05-11 富士通株式会社 データ通信方法
JP2008228290A (ja) * 2007-03-09 2008-09-25 Samsung Electronics Co Ltd データパケット損失の補償のためのクライアントとシステム、及びその方法
JP2012520010A (ja) * 2009-03-06 2012-08-30 アスペラ,インク. I/o駆動の速度適応のための方法およびシステム<関連出願>本出願は、2009年3月6日に出願された仮出願シリアル番号61/158,000に対する優先権を主張し、かつこの出願を参照によって組み込む。この出願はまた、以下の出願の明細書の全体に関連し、かつこれらを参照によって組み込む。以下の出願とは、すなわち、2005年12月23日に出願され“bulkdatatransfer”とタイトルされた米国特許出願11/317,663、および、2007年9月4日に出願され“methodandsystemforaggregatebandwidthcontrol”とタイトルされた米国特許出願11/849,782である。
US9276865B2 (en) 2009-03-06 2016-03-01 International Business Machines Corporation Method and system for I/O driven rate adaptation
US9419907B2 (en) 2009-03-06 2016-08-16 International Business Machines Corporation I/O driven rate adaptation
JP2016529776A (ja) * 2013-07-08 2016-09-23 華為技術有限公司Huawei Technologies Co.,Ltd. ビデオ再生を制御する方法、デバイス及びシステム
US10009245B2 (en) 2014-08-25 2018-06-26 Fujitsu Limited Communication system, failure control device, and failure control method
JP2018186465A (ja) * 2017-04-27 2018-11-22 日本電気株式会社 データ受信装置、システム、方法およびプログラム
JP7027697B2 (ja) 2017-04-27 2022-03-02 日本電気株式会社 データ受信装置、システム、方法およびプログラム

Also Published As

Publication number Publication date
US6563822B1 (en) 2003-05-13

Similar Documents

Publication Publication Date Title
JP2000183873A (ja) データ転送方法
US8171123B2 (en) Network bandwidth detection and distribution
Floyd et al. A reliable multicast framework for light-weight sessions and application level framing
Floyd et al. A reliable multicast framework for light-weight sessions and application level framing
US5553083A (en) Method for quickly and reliably transmitting frames of data over communications links
US9660912B2 (en) Control of packet transfer through a multipath session comprising a single congestion window
US7707303B2 (en) Method and devices for controlling retransmissions in data streaming
US20030023746A1 (en) Method for reliable and efficient support of congestion control in nack-based protocols
CN106210924B (zh) 视频网络传输控制方法和系统
KR20010074883A (ko) 적은 대기 시간 통신 시스템 및 그 방법
JPH05207023A (ja) 大量データ伝送方法
WO2011144141A1 (zh) 拥塞控制方法和系统以及网络设备
US20100017523A1 (en) Communication control apparatus and communication control method
CN112436924B (zh) 一种数据传输方法及电子设备
EP3654563A1 (en) Transmission timeout system
GB2513345A (en) Data communication system and method
JP3492602B2 (ja) データ送信装置及びデータ受信装置
Piecuch et al. Selective retransmission protocol for multimedia on the Internet
CN116233243A (zh) 一种弱网环境下的通信系统及方法
JP2003069613A (ja) データ品質保証システム
JP3848222B2 (ja) 再送方法
El-Marakby et al. Integrating RTP into the World Wide Web
JP2007288428A (ja) 中継装置およびデータ再送方法
Koch et al. A reliable many-to-many multicast protocol for group communication over ATM networks
Liu et al. Mpmtp-ar: Multipath message transport protocol based on application-level relay

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060307