JP2001298485A - トランスポート層におけるデータ転送方法 - Google Patents

トランスポート層におけるデータ転送方法

Info

Publication number
JP2001298485A
JP2001298485A JP2000112922A JP2000112922A JP2001298485A JP 2001298485 A JP2001298485 A JP 2001298485A JP 2000112922 A JP2000112922 A JP 2000112922A JP 2000112922 A JP2000112922 A JP 2000112922A JP 2001298485 A JP2001298485 A JP 2001298485A
Authority
JP
Japan
Prior art keywords
data
size
transmitted
window size
window
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
JP2000112922A
Other languages
English (en)
Inventor
Hiroyuki Yamashima
弘之 山島
Toshihiko Kurita
敏彦 栗田
Satoshi Chikuma
智 竹間
Masanaga Tokuyo
雅永 徳世
Tetsuya Taniguchi
徹哉 谷口
Takanori Hisanaga
隆則 久永
Michiyasu Chikada
倫康 近田
Daisuke Kuwata
大介 桑田
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
NTT Docomo Inc
Original Assignee
Fujitsu Ltd
NTT Docomo Inc
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, NTT Docomo Inc filed Critical Fujitsu Ltd
Priority to JP2000112922A priority Critical patent/JP2001298485A/ja
Publication of JP2001298485A publication Critical patent/JP2001298485A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】 信頼性の保証されたデータリンク層を利用し
た通信においてスループットを向上させることができる
トランスポート層におけるデータ転送方法を提供するこ
と。 【解決手段】 ウインドウ・サイズ(確認応答を受けた
際に確認応答を待たずに送信できるデータの大きさ)
が、その最大値である既定サイズより小さいとき、図1
(a)に示すようにウインドウ・サイズを既定サイズま
で一度に拡大する。あるいは、ウィンドウ・サイズをそ
の最大値にしたままでデータを送信する。これにより、
スロースタート制御や輻輳回避制御が行われず、効率の
良いデータ転送を行うことができる。また、タイムアウ
ト発生時、ウィンドウ番号を図1(b)に示すように設
定し、次送信データ番号を保持しておき、タイムアウト
を発生させたデータだけを再送する。これにより、重複
するデータを送ることを最小限に抑えることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ通信中のデ
ータ損失がほとんどないような信頼性が保証されたデー
タリンク層を利用したトランスポート層におけるデータ
通信方法に関し、さらに詳細には、ウインドウサイズの
制御やタイムアウトによるデータ再送などを含めたトラ
ンスポート層におけるデータ転送方法に関するものであ
る。
【0002】
【従来の技術】データ通信中のデータ損失がほとんどな
いような信頼性が保証されたデータリンク層として携帯
電話やPHSなどの無線リンク層やPPP(Point
−to−Point Protocol)などが考えら
れ、また、トランスポート層としてはTCP(Tran
smission Control Protoco
l)が考えられる。例えばトランスポート層にTCPを
考えたとする。従来のTCPのデータ転送方法において
は、データリンク層としてEthernet(登録商
標)のような複数ユーザが共有してデータリンク層を利
用するような形態を考慮しており、データ損失はルータ
などにおいて輻輳が起きてしまいデータが複数個連続し
て損失してしまうことを想定している。そのため、デー
タ転送開始時にはスロースタート制御、タイムアウト発
生時にはスロースタート制御や輻輳回避制御、タイムア
ウトを発生させたデータ以降を全て再送するなどの制御
を行っている。
【0003】図15(a)は上記従来のTCPにおける
確認応答受信時の処理を示すフローチャートである。図
15(a)において、確認応答を受信すると、その時の
ウインドウ・サイズ(確認応答を受信したとき、確認応
答を待たずに送信できるデータの大きさ)が既定サイズ
(確認応答を待たずに送信できるデータの最大値)より
小さいかを調べ、既定サイズの場合には処理を終了す
る。また、既定サイズより小さい場合には、ウィンドウ
・サイズが閾値ss_threshより大きいかを調べ
る。上記閾値ss_threshはスロースタートと輻
輳回避を分ける閾値であり、その初期値は例えば655
35バイトに設定され、輻輳回避制御時には上記閾値s
s_threshはウィンドウ・サイズと既定サイズの
小さい方の半分となる。スロースタート時には、上記閾
値は十分大きいので、ウインドウ・サイズを1パケット
分増加して処理を終了する。また、輻輳回避制御時に
は、ウィンドウ・サイズと等しいパケット数の確認応答
(Ack)を受信毎にウィンドウ・サイズを1パケット
分増加する。
【0004】図15(b)は従来のTCPにおけるタイ
ムアウト発生時の処理を示すフローチャートである。タ
イムアウトが発生すると、図15(b)に示すようにウ
ィンドウ・サイズを1パケット分に設定し、Ack受信
済データ番号とウィンドウ・サイズの和を、ウィンドウ
番号と次送信データ番号に設定する。図15(c)は従
来のTCPにおけるデータ送信処理を示すフローチャー
トである。データ送信に際して、図15(c)に示すよ
うに、次送信データ番号とウィンドウ番号を比較し、次
送信データ番号がウィンドウ番号より大きい場合には処
理を終了する。また、次送信データ番号がウィンドウ番
号より大きくない場合には、データを送信し、送信した
データ番号に1加えたものを次送信データ番号に設定す
る。図15(d)は従来のTCPにおける確認応答受信
時のポインタ設定フローチャートである。確認応答(A
ck)を受信するとAck受信済データ番号にAck内
データ番号を設定し、ウィンドウ番号にAck受信済デ
ータ番号と図15(a)で求めたウィンドウ・サイズの
和を設定する。
【0005】図16は従来のTCPにおけるデータ送信
開始時のデータ送信シーケンスを示す図である。データ
送信開始時、従来のTCPにおいては、図15(a)の
フローチャートに示したように、ウィンドウ・サイズを
既定値に達するまで1パケットずつ増加させる(スロー
スタート時)。したがって、送信するパケット数は図1
6に示すように増加する。なお、以下の説明では送信側
から受信側へ送るべきデータが説明に必要な分は十分あ
るとし、確認応答を待たずに送信できるデータの最大値
である既定サイズは8パケット分(例えば:1460バ
イト×8=11.68kバイト)であるとして説明す
る。
【0006】送信を開始したとき、ウィンドウ・サイズ
は1であり、図16に示すように、まず、送信側から受
信側にデータD1を送信する。受信側から確認応答Ac
k1が送られてくると、ウィンドウ・サイズは2とな
り、送信側から受信側にデータD2,D3を送信する。
次いで、確認応答Ack2を受信すると、ウィンドウ・
サイズは3となり、データD4,D5を送信する(ウィ
ンドウ・サイズが3であり、確認応答Ack2を受信し
ているので、データD3〜D5を送信することができる
がデータD3は送信済)。次に、確認応答Ack3を受
信すると、ウィンドウ・サイズは4となり、データD
6,D7を送信する(ウィンドウ・サイズが4であり、
確認応答Ack3を受信しているのでデータD4〜D7
を送信することができる)。以下同様にして確認応答を
受信する毎にウインドウ・サイズを1ずつ増加させなが
らデータを送信する。図17は上記従来のTCPにおけ
る送信開始時の出力パケット数の変化を示す図であり、
出力パケット数は同図に示すように指数関数的に上昇す
る。
【0007】図18は、タイムアウト発生時におけるデ
ータ送信シーケンスを示す図である。タイムアウト発生
時、従来のTCPにおいては、図15(b)のフローチ
ャートに示したように、ウィンドウ・サイズを1パケッ
トに設定し、Ack受信済データ番号とウィンドウ・サ
イズの和を、ウィンドウ番号と次送信データ番号に設定
する。したがって、図18に示すような送信シーケンス
となる。例えば、データD12を送信したのち、データ
D12の確認応答が送信側で所定時間内に受信できず、
タイムアウトが発生すると、ウィンドウ・サイズを1に
設定し、Ack受信済データ番号Ack11とウィンド
ウ・サイズ1の和を、ウィンドウ番号と次送信データ番
号に設定する。したがって、ウィンドウ番号に12が設
定され、次送信データ番号に12が設定され、確認応答
を受信していないデータD12が再送される。
【0008】一方、確認応答Ack12が受信すると、
図15のフローチャートに示したように、ウィンドウ・
サイズは2となり、データD13,D14を送信する。
次にAck13を受信すると、ウィンドウ・サイズは3
となり、データD15,D16を送信する。次にAck
14を受信すると、ウィンドウ・サイズは4となり、デ
ータD17,D18を送信する。Ack15を受信する
と、ウィンドウ・サイズは5となり、前記図15(a)
に示したss_thresh(既定値8の半分である
4)よりウィンドウ・サイズが大きくなるので、前記し
たようにウインドウ・サイズと等しいパケット数の確認
応答(Ack)を受信毎にウィンドウ・サイズを1パケ
ット分増加する。したがって、確認応答Ack16を受
信してもウィンドウ・サイズは5のままであり(データ
D17〜D21を送信できる)、データD21を送信す
る。以下同様に、Ack17〜Ack19を受信しても
ウィンドウ・サイズは5のままであり、確認応答を受信
する毎にデータD22〜D24を送信する。確認応答A
ck20を受信すると、ウインドウ・サイズと等しいパ
ケット数の確認応答(Ack)が受信されたので、ウィ
ンドウ・サイズを6として、データD25、D26を送
信する。以下、同様に出力パケット数を増加しながらデ
ータを送信する。
【0009】図19は上記従来のTCPにおけるタイム
アウト発生時の出力パケット数の変化を示す図である。
ウィンドウ・サイズがss_threshを越えるまで
は、ウィンドウ・サイズを1パケットずつ増加させるス
ロースタートが行われ、出力パケット数は同図に示すよ
うに増加する。ウィンドウ・サイズがss_thres
hを越えると、輻輳回避制御が行われ、出力パケット数
は同図に示すように増加する。そして、ウィンドウ・サ
イズが既定値に達すると、安定転送状態となる。
【0010】
【発明が解決しようとする課題】以上のように、従来に
おいては、データ転送開始時にはスロースタート制御、
タイムアウト発生時にはスロースタート制御や輻輳回避
制御、タイムアウトを発生させたデータ以降を全て再送
するなどの制御を行っていた。しかし、信頼性の保証さ
れたデータリンク層(データ通信中のデータ損失はほと
んどなくあったとしても単発的に起こるデータリンク
層)においては、データリンク層におけるデータ再送の
ために発生するトランスポート層のタイムアウトに際
し、上記のように、それを発生させたデータ以降をトラ
ンスポート層で再送すると、既に受信側で得た同じデー
タを重複して送ってしまうこととなる。例えば前記図1
8のようにデータD12でタイムアウトが発生した場合
には、データD13〜D19を重複して送ってしまうこ
ととなる。また、従来の方法では、スロースタート制御
・輻輳回避制御によって転送データ量を抑えてしまうた
め、スループットが落ちるという欠点がある。本発明は
上記した事情を考慮してなされたものであって、信頼性
の保証されたデータリンク層を利用した通信において、
スループットを向上させるためのトランスポート層にお
けるデータ転送方法を提供することを目的とする。
【0011】
【課題を解決するための手段】図1(a)は本発明を用
いた確認応答受信時のフローチャートであり、図1
(b)は本発明を用いたタイムアウト発生時のフローチ
ャートである。図1(a)(b)において、ウインドウ
サイズは受信側からの確認応答(Ack)を待たずに送
信側が送信できるデータの大きさ(量)であり、既定サ
イズは受信側からの確認応答(Ack)を待たずに送信
側が送信できるデータの最大値(最大量)である。Ac
k受信済みデータ番号は、受信側から送られる受信側で
受信を完了したデータ番号情報が入った確認応答(Ac
k)を送信側で受けとり、その受信側で受信を完了した
データ番号を送信側で記憶する番号である。ウインドウ
番号はその時点での確認応答を待たずに送信できる最も
大きいデータ番号である(Ack受信ずみデータ番号と
ウインドウサイズを加えたものがこれになる)。
【0012】本発明においては、以下のようにして前記
課題を解決する。 (1)本発明の請求項1,4の発明においては、確認応
答を受けた際に確認応答を待たずに送信できるデータの
大きさであるウインドウサイズが、確認応答を受けた際
に確認応答を待たずに送信できるデータの最大値である
既定サイズより小さいとき、図1(a)に示すようにウ
インドウサイズを上記既定サイズまで一度に拡大した
り、また、ウィンドウサイズを確認応答を待たずに送信
できるデータの最大値にしたままでデータを送信する。
このため、従来のスロースタート制御や輻輳回避制御が
行われず、送信開始時に直ちにデータリンク層にあった
効率の良いデータ量でデータ転送を行うことができる。 (2)本発明の請求項2,4の発明においては、タイム
アウトが発生した場合、ウィンドウ番号を図1(b)に
示すように設定する。そして、次送信データ番号を保持
しておき、タイムアウトを発生させたデータだけを再送
する。すなわち、、データ送信に際して、上記次送信デ
ータ番号と上記ウィンドウ番号を比較し、次送信データ
番号がウィンドウ番号より大きい場合にはデータを送信
せず、次送信データ番号がウィンドウ番号より大きくな
い場合には、上記保持しておいた次送信番号のデータを
送信し、送信したデータ番号に1加えたものを次送信デ
ータ番号に設定する。上記のように次送信データ番号を
保持しているので、データリンク層の再送によりタイム
アウトが発生してしまっても、タイムアウトを発生させ
たデータのみの再送しか行なわず、受信側で重複するデ
ータを送ることを最小限に抑えることができる。 (3)本発明の請求項3,6の発明においては、請求項
1,4の発明において、請求項2,5の発明のように、
タイムアウトが発生した場合、その時点までに送信した
データ番号を保持しておき、タイムアウトを発生させた
データだけを再送する。このため、送信開始時に直ちに
データリンク層にあった効率の良いデータ量でデータ転
送を行うことができるとともに、タイムアウトを発生さ
せたデータのみの再送しか行なわず、受信側で重複する
データを送ることを最小限に抑えることができる。
【0013】
【発明の実施の形態】以下、本発明の実施の形態につい
て説明する。なお、本発明は、例えば、パソコン等の情
報処理装置、携帯電話、通信機器等のCPU、メモリ、
通信インタフェース、外部記憶装置、入力出力装置等か
ら構成されるシステムで実現することができ、以下の説
明ではこれらのシステムにおける処理についてフローチ
ャートにより説明する。また、以下では、前記したよう
に送信側から受信側へ送るべきデータが説明に必要な分
は十分あるとし、確認応答を待たずに送信できるデータ
の最大値である既定サイズは、例えば8パケット分(例
えば:1460バイト×8=11.68kバイト)であ
るとして説明する。
【0014】(1)実施例1 図2は本発明の第1の実施例の処理を示すフローチャー
トである。図2(a)に確認応答受信時のウインドウサ
イズ増加のフローチャート、図2(b)にタイムアウト
発生時のフローチャート、図2(c)にデータ送信フロ
ーチャート、図2(d)に確認応答(Ack)受信時の
ポインタ設定フローチャートを示す。本実施例において
は、図2(a)に示すように確認応答受信時、ウィンド
ウ・サイズと既定サイズを比較し、ウィンドウ・サイズ
が既定サイズより小さい場合には、ウィンドウ・サイズ
を既定サイズまで増加させる。また、確認応答(Ac
k)を受信すると、図2(d)に示すように、Ack受
信済データ番号にAck内データ番号を設定し、Ack
受信済データ番号とウィンドウ・サイズの和をウィンド
ウ番号に設定する。タイムアウト発生時のフローチャー
ト、データ送信のフローチャートは前記図15(b)
(c)と同じである。すなわち、前記したように、タイ
ムアウト発生時にはウィンドウ・サイズを1パケット分
に設定し、Ack受信済データ番号とウィンドウ・サイ
ズの和を、ウィンドウ番号と次送信データ番号に設定す
る。また、データ送信に際して、次送信データ番号とウ
ィンドウ番号を比較し、次送信データ番号がウィンドウ
番号より大きい場合には処理を終了する。また、次送信
データ番号がウィンドウ番号より大きくない場合には、
データを送信し、送信したデータ番号に1加えたものを
次送信データ番号に設定する。
【0015】図3にデータ送信開始時の出力パケット数
の変化を、図4にデータ送信開始時のシーケンス図を示
す。図4において、データ送信開始時、ウインドウサイ
ズは1パケット分であり一番始めのデータを1パケット
分(D1)を送る。それに対するAck1を受信した
ら、ウインドウサイズと既定サイズを比べウインドウサ
イズの方が小さいのでウインドウサイズを8パケット分
まで一度に拡大する(ウインドウサイズに既定サイズを
代入する)。これにより、次にはデータD2〜D9まで
を確認応答なしに一度に送信できるようになる。したが
って、出力パケット数の変化は図3に示すようになる。
これに対し、従来の方法では、前記図15(a)のフロ
ーチャートに示したようにAckを一つ受信するとウイ
ンドウサイズを既定サイズまで一つずつ増加させるた
め、出力パケット数は前記図17に示したように指数的
に増加するが、上記第1の実施例に比べるとデータリン
ク層を有効に利用できていない。
【0016】また、タイムアウトが発生した場合、本実
施例では、従来例と同様ウインドウサイズを1パケット
分に縮小しタイムアウトを発生させたデータを再送する
が〔図2(b)(c)〕、再送パケットに対するAck
を受信すると、一度にウインドウサイズを既定サイズま
で拡大する。図5にタイムアウト発生時の本実施例のシ
ーケンス図を示す。同図に示すように、データD12が
タイムアウトを発生させたとすると、図2(b)のフロ
ーチャートに示すように、ウインドウサイズを1パケッ
ト分に設定し、ウインドウ番号、次送信データ番号を、
AcK受信済みデータ番号「11」にウインドウサイズ
1を足した「12」に設定し、ウインドウ番号「12」
のデータD12を再送する。確認応答Ack12を受信
すると、図2(a)のフローチャートに示すように一度
にウインドウサイズを8パケットまで拡大し、データD
13〜D20を一度に送信する。ついで、確認応答Ac
k13を受信するとデータD21を送信する。以下同様
に確認応答を受信する毎にデータを送信する。タイムア
ウトが発生した場合における本実施例のパケット出力数
の変化を図6に示す。同図に示すように本実施例ではタ
イムアウト発生後、1パケットを送信後、安定転送状態
となる。
【0017】これに対し、従来方法においては、タイム
アウトが発生すると、ウインドウサイズを1パケット分
に縮小しタイムアウトを発生させたデータを再送し、再
送パケットに対するAckを受信すると、前記図18、
図19に示したように、スロースタート/輻輳回避処理
によってウインドウサイズを徐々に増加(回復)する。
【0018】(2)実施例2 図7〜図8に本発明の第2の実施例のフローチャートを
示す。本実施例は、データ送信開始時の動作は前記従来
方法と同じだが、タイムアウト発生時、タイムアウトを
発生させたデータのみの再送しか行なわないようにし、
重複するデータを送ることを最小限に抑えたものであ
る。図7(a)は確認応答受信時のフローチャートであ
り従来例の図15(a)と同じである。図7(b)は本
実施例のタイムアウト発生時のポインタ設定フローチャ
ート、図8(a)はデータ送信フローチヤート、図8
(b)は、確認応答受信時のポインタ設定のフローチャ
ートである。確認応答を受信すると、図7(a)に示す
ように、その時のウインドウ・サイズが既定サイズより
小さいかを調べ既定サイズの場合には処理を終了する。
また、既定サイズより小さい場合には、ウィンドウ・サ
イズが閾値ss_threshより大きいかを調べる。
スロースタート時には、ウインドウ・サイズを1パケッ
ト分増加して処理を終了する。輻輳回避制御時には、ウ
ィンドウ・サイズと等しいパケット数の確認応答(Ac
k)を受信毎にウィンドウ・サイズを1パケット分増加
する。
【0019】タイムアウトが発生すると、図7(b)に
示すように、ウィンドウ・サイズを1パケット分に設定
し、Ack受信済データ番号とウィンドウ・サイズの和
を、ウィンドウ番号に設定し、ウィンドウ番号のデータ
を送信する。また、データ送信に際しては、前記従来例
と違い次送信データ番号を保持しておき、図8(a)に
示すように、次送信データ番号とウィンドウ番号を比較
し、次送信データ番号がウィンドウ番号より大きい場合
には処理を終了する。また、次送信データ番号がウィン
ドウ番号より大きくない場合には、上記保持しておいた
次送信番号のデータを送信し、送信したデータ番号に1
加えたものを次送信データ番号に設定する。また、確認
応答(Ack)を受信すると、図8(b)に示すよう
に、Ack受信済データ番号にAck内データ番号を設
定し、Ack受信済データ番号とウィンドウ・サイズの
和をウィンドウ番号に設定する。
【0020】図9に本実施例におけるタイムアウト発生
時のデータ送信のシーケンス図を示す。図9において、
データD12がタイムアウトを発生させたとすると、そ
の時点でのAck受信済みデータ番号は「11」、次送
信データ番号は「20」、ウインドウ番号は「19」と
なる。次に、図7(b)のフローチャートに示すよう
に、ウインドウサイズを1パケット分に設定し、ウイン
ドウ番号をAcK受信済みデータ番号「11」にウイン
ドウサイズ1を足した「12」に設定する。そして、ウ
インドウ番号「12」のデータD12を再送する。次に
図8(a)に示すデータ送信フローチャートの通り次送
信データ番号「20」とウインドウ番号「12」を比較
し、比較式が成り立つのでデータを送信せずに終了す
る。次に、Ackを受信したら図7(a)、図8
(b)、図8(a)のフローチャートの順に従い処理を
行う。すなわち、Ack12を受信した場合、ウインド
ウサイズは1増えて「2」〔図7(a)〕、AcK受信
済みデータ番号は「12」、ウインドウ番号は「14」
となり〔図8(b)〕、次送信データ番号は「20」な
のでデータは送信されない。
【0021】次にAcK13を受信した場合は、ウイン
ドウサイズは「3」、AcK受信済みデータ番号は「1
3」、ウインドウ番号は「16」となり、次送信データ
番号は「20」なのでまだデータは送信されない。同様
にAck14を受信してもまだデータは送信されない。
Ack15を受信したときに、ウインドウサイズは
「5」、AcK受信済みデータ番号は「15」、ウイン
ドウ番号は「20」となり、次送信データ番号は「2
0」なのでデータD20が送信される。データD20を
送信したら次送信データ番号を「21」に設定する。以
上のように本実施例によれば、次送信データ番号を保持
しておき、送信に際し、次送信データ番号とウィンドウ
番号を比較し、次送信データ番号がウィンドウ番号より
大きい場合にはデータを送信しないようにしているの
で、データD13〜D19が重複して送信されることが
ない。
【0022】(3)実施例3 図10〜図11に本発明の第3の実施例のフローチャー
トを示す。本実施例は、データ送信開始時、前記第1の
実施例のようにウィンドウ・サイズを1パケットから既
定サイズまで一度に拡大し、タイムアウト発生時、前記
第2の実施例に示したようにタイムアウトを発生させた
データのみの再送しか行なわないようにしたものであ
る。図10(a)は確認応答受信時のウィンドウ・サイ
ズ増加のフローチャートであり、前記図2(a)に示し
たフローチャートと同じである。図10(b)はタイム
アウト発生時のポインタ設定フローチャート、図11
(a)はデータ送信フローチヤートであり、前記図7
(b)、図8(a)と同じである。また、図11(b)
は確認応答受信時のポインタ設定のフローチャートであ
り、前記図8(b)と同じである。
【0023】本実施例においては、図10(a)に示す
ように確認応答受信時、ウィンドウ・サイズと既定サイ
ズを比較し、ウィンドウ・サイズが既定サイズより小さ
いか場合には、ウィンドウ・サイズを既定サイズまで増
加させる。したがって、第1の実施例のようにデータ送
信開始時、Ack1を受信したら、ウインドウサイズを
1パケット分から8パケット分まで一度に拡大する。こ
れにより、前記図4に示したようにデータD2〜D9ま
でを確認応答なしに一度に送信できるようになる。した
がって、出力パケット数の変化は図3に示すようにな
る。
【0024】また、タイムアウト発生時には、前記第2
の実施例に示したように重複したデータを送信しないよ
うに動作する。本実施例のタイムアウトを発生時のシー
ケンス図を図12に示す。図12のシーケンス図に示す
ように、データD12がタイムアウトを発生させたとす
ると、その時点でのAck受信済みデータ番号は「1
1」、次送信データ番号は「20」、ウインドウ番号は
「19」となる。次に図10(b)のフローチャートに
示す通りウインドウサイズを1パケット分に設定し、ウ
インドウ番号をAck受信済みデータ番号「11」にウ
インドウサイズ1を足した「12」に設定する。そし
て、ウインドウ番号「12」のデータD12を再送す
る。次いで図11(a)のデータ送信フローチャートの
通り次送信データ番号「20」とウインドウ番号「1
2」を比較し、比較式が成り立つのでデータを送信せず
に終了する。
【0025】次に、確認応答(Ack)を受信したら図
10(a)、図11(b)、図11(a)のフローチャ
ートにより処理を行う。すなわち、Ack12を受信し
たのでウインドウサイズを一度に「8」まで拡張し〔図
10(a)〕、Ack受信済みデータ番号は「12」、
ウインドウ番号は「20」となり〔図11(b)〕、次
送信データ番号は「20」なのでデータD20が送信さ
れる〔図11(a)〕。データD20を送信したら次送
信データ番号を「21」に設定する。次にAck13を
受信すると、ウインドウサイズは「8」、Ack受信済
みデータ番号は「13」、ウインドウ番号は「21」と
なり、次送信データ番号は「21」なのでデータD21
が送信される。データD21を送信したら次送信データ
番号を「22」に設定する。以下同様に順次データが送
信される。以上のように本実施例においては、データ送
信開始時、ウインドウサイズを1パケットから一度に8
パケットまで拡大しているので、第1の実施例のように
効率のよいデータ転送を行うことができる。また、タイ
ムアウト発生時には、本実施例においては、第2の実施
例と同様、データが重複して送信されることがない。
【0026】(4)実施例4 本実施例は、データ送信開始時からウィンドウ・サイズ
を既定値(例えば8パケット分)にしておくようにした
ものである。本実施例のデータ送信開始時の出力パケッ
ト数の変化を図13に示し、また、データ送信開始時の
シーケンス図を図14に示す。図14に示すように、デ
ータ送信開始時、データD1〜D8の8パケット分のデ
ータを送出し、Ack1が受信されたらデータD9を送
信し、Ack2が受信されたらデータD10、Ack3
が受信されたデータD11を送信する。以下、同様にA
ckが受信される毎にデータを順次送信する。以上のよ
うに本実施例においては、データ送信開始時からウイン
ドウサイズを既定サイズの8パケット分にしておくの
で、データD1〜D8を最初から送信が可能となる。
【0027】
【発明の効果】以上説明したように、本発明において
は、以下の効果を得ることができる。 (1)ウインドウサイズを既定サイズまで一度に拡大し
たり、また、ウィンドウサイズを確認応答を待たずに送
信できるデータの最大値にしたままでデータを送信する
ようにしているので、従来のスロースタート制御や輻輳
回避制御が行われず、送信開始時に直ちにデータリンク
層にあった効率の良いデータ量でデータ転送を行うこと
ができる。このため、データ転送のスループットの向上
に寄与することができる。 (2)タイムアウトが発生したとき、タイムアウトを発
生させたデータのみの再送しか行なわないので、受信側
で重複するデータを送ることを最小限に抑えることがで
き、タイムアウト発生時に直ぐにデータリンク層を有効
に利用する状態とすることが可能となる。このため、デ
ータ転送のスループットの向上に寄与することができ
る。
【図面の簡単な説明】
【図1】本発明の原理を示すフローチャートである。
【図2】本発明の第1の実施例の処理を示すフローチャ
ートである。
【図3】第1の実施例のデータ送信開始時の出力パケッ
ト数の変化を示す図である。
【図4】第1の実施例のデータ送信開始時のシーケンス
図である。
【図5】第1の実施例のタイムアウト発生時のシーケン
ス図である。
【図6】第1の実施例においてタイムアウトが発生した
場合のパケット出力数の変化を示す図である。
【図7】本発明の第2の実施例のフローチャート(1)
である。
【図8】本発明の第2の実施例のフローチャート(2)
である。
【図9】第2の実施例のタイムアウト発生時のシーケン
ス図である。
【図10】本発明の第3の実施例のフローチャート
(1)である。
【図11】本発明の第3の実施例のフローチャート
(2)である。
【図12】第3の実施例のタイムアウト発生時のシーケ
ンス図である。
【図13】第4の実施例のデータ送信開始時の出力パケ
ット数の変化を示す図である。
【図14】第4の実施例のデータ送信開始時のシーケン
ス図である。
【図15】従来のTCPにおける処理を示すフローチャ
ートである。
【図16】従来のTCPにおけるデータ送信開始時のデ
ータ送信シーケンスを示す図である。
【図17】従来のTCPにおける送信開始時の出力パケ
ット数の変化を示す図である。
【図18】従来のTCPにおけるタイムアウト発生時に
おけるデータ送信シーケンスを示す図である。
【図19】従来のTCPにおけるタイムアウト発生時の
出力パケット数の変化を示す図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 栗田 敏彦 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 (72)発明者 竹間 智 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 (72)発明者 徳世 雅永 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 (72)発明者 谷口 徹哉 東京都千代田区永田町二丁目11番1号 エ ヌ・ティ・ティ移動通信網株式会社内 (72)発明者 久永 隆則 東京都千代田区永田町二丁目11番1号 エ ヌ・ティ・ティ移動通信網株式会社内 (72)発明者 近田 倫康 東京都千代田区永田町二丁目11番1号 エ ヌ・ティ・ティ移動通信網株式会社内 (72)発明者 桑田 大介 東京都千代田区永田町二丁目11番1号 エ ヌ・ティ・ティ移動通信網株式会社内 Fターム(参考) 5B089 GB01 HB02 KA05 KA08 MC06 ME08 5K030 GA03 HA08 HC09 HC13 HD06 JL01 JL04 JT03 JT09 LA08 LB02 LB18 LC03 LC05 MB02 5K033 AA01 CB06 CC01 DA01 DA06 DA19 DB16 9A001 CC03

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 信頼性が保証されたデータリンク層を利
    用したトランスポート層におけるデータ通信方法であっ
    て、 確認応答を受けた際に確認応答を待たずに送信できるデ
    ータの大きさであるウインドウサイズが、確認応答を受
    けた際に確認応答を待たずに送信できるデータの最大値
    である既定サイズより小さいとき、ウインドウサイズを
    上記既定サイズまで一度に拡大することを特徴とするト
    ランスポート層におけるデータ転送方法。
  2. 【請求項2】 信頼性が保証されたデータリンク層を利
    用したトランスポート層におけるデータ通信方法であっ
    て、 タイムアウトが発生した場合、その時点までに送信した
    データ番号を保持しておき、タイムアウトを発生させた
    データだけを再送することを特徴とするトランスポート
    層におけるデータ転送方法。
  3. 【請求項3】 タイムアウトが発生した場合、その時点
    までに送信したデータ番号を保持しておき、タイムアウ
    トを発生させたデータだけを再送することを特徴とする
    請求項1のトランスポート層におけるデータ転送方法。
  4. 【請求項4】 信頼性が保証されたデータリンク層を利
    用したトランスポート層におけるデータ通信プログラム
    を記録した記録媒体であって、 上記プログラムは、確認応答を受けた際に確認応答を待
    たずに送信できるデータの大きさであるウインドウサイ
    ズが、確認応答を受けた際に確認応答を待たずに送信で
    きるデータの最大値である既定サイズより小さいとき、
    ウインドウサイズを上記既定サイズまで一度に拡大する
    ことを特徴とするトランスポート層におけるデータ転送
    プログラムを記録した記録媒体。
  5. 【請求項5】 信頼性が保証されたデータリンク層を利
    用したトランスポート層におけるデータ通信方法プログ
    ラムを記録した記録媒体であって、 タイムアウトが発生した場合、その時点までに送信した
    データ番号を保持しておき、タイムアウトを発生させた
    データだけを再送することを特徴とするトランスポート
    層におけるデータ転送プログラムを記録した記録媒体。
  6. 【請求項6】 タイムアウトが発生した場合、その時点
    までに送信したデータ番号を保持しておき、タイムアウ
    トを発生させたデータだけを再送することを特徴とする
    請求項3のトランスポート層におけるデータ転送プログ
    ラムを記録した記録媒体。
JP2000112922A 2000-04-14 2000-04-14 トランスポート層におけるデータ転送方法 Pending JP2001298485A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000112922A JP2001298485A (ja) 2000-04-14 2000-04-14 トランスポート層におけるデータ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000112922A JP2001298485A (ja) 2000-04-14 2000-04-14 トランスポート層におけるデータ転送方法

Publications (1)

Publication Number Publication Date
JP2001298485A true JP2001298485A (ja) 2001-10-26

Family

ID=18624984

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000112922A Pending JP2001298485A (ja) 2000-04-14 2000-04-14 トランスポート層におけるデータ転送方法

Country Status (1)

Country Link
JP (1) JP2001298485A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006163577A (ja) * 2004-12-03 2006-06-22 Matsushita Electric Ind Co Ltd 携帯端末装置及びそのデータバックアップ方法
CN1322720C (zh) * 2003-08-14 2007-06-20 株式会社Ntt都科摩 通信控制方法和系统
JP2008182410A (ja) * 2007-01-24 2008-08-07 Ntt Docomo Inc 通信端末、輻輳制御方法および輻輳制御プログラム
US7764616B2 (en) 2003-11-28 2010-07-27 Ntt Docomo, Inc. Transmitter device for controlling data transmission
CN102014055A (zh) * 2010-11-23 2011-04-13 中兴通讯股份有限公司 Mtp2协议中流量控制的方法及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1322720C (zh) * 2003-08-14 2007-06-20 株式会社Ntt都科摩 通信控制方法和系统
US7764613B2 (en) 2003-08-14 2010-07-27 Ntt Docomo, Inc. Communication control method and system
US7764616B2 (en) 2003-11-28 2010-07-27 Ntt Docomo, Inc. Transmitter device for controlling data transmission
JP2006163577A (ja) * 2004-12-03 2006-06-22 Matsushita Electric Ind Co Ltd 携帯端末装置及びそのデータバックアップ方法
JP2008182410A (ja) * 2007-01-24 2008-08-07 Ntt Docomo Inc 通信端末、輻輳制御方法および輻輳制御プログラム
CN102014055A (zh) * 2010-11-23 2011-04-13 中兴通讯股份有限公司 Mtp2协议中流量控制的方法及系统

Similar Documents

Publication Publication Date Title
US20220014312A1 (en) Data transmission method and apparatus
KR101130479B1 (ko) 스퓨리어스 타임아웃에 대한 응답 방법
US9043486B2 (en) Data transfer method, system and protocol
US7296206B2 (en) Communication device, transmission control method, and program product
US7035291B2 (en) TCP transmission acceleration
US8306062B1 (en) Method and apparatus of adaptive large receive offload
JP4898822B2 (ja) 通信システム、通信装置、通信方法
US7609697B2 (en) Optimizing IEEE 802.11 for TCP/IP data transfer
JP3677297B2 (ja) 階層arq方式のための連結された誤り検出コード化及びパケット番号付け
KR20030054981A (ko) 이동 통신 기지국의 티씨피 성능 향상 장치
US6553032B1 (en) Packeting timeout spoofing in a wireless data communications network
US20050117515A1 (en) Transmitter device for controlling data transmission
JP2000156706A (ja) データ送受信方法並びにデータ送信プログラムを記憶した媒体及びデータ受信プログラムを記憶した媒体
CN108432287A (zh) 一种数据传输方法及网络侧设备
JP2001298485A (ja) トランスポート層におけるデータ転送方法
JP3434231B2 (ja) Tcp制御方法
CN109067506A (zh) 一种基于多滑动窗口并发的轻量级异步消息实现方法
KR20060079570A (ko) 통신 시스템에서 데이터 재전송 장치 및 방법
US7313121B2 (en) Acknowledging data transmissions in the presence of multiple shared-communications channels
JP3527111B2 (ja) データ転送制御方法
US7636313B2 (en) Use of internal buffer to reduce acknowledgement related delays in acknowledgement-based reliable communication protocols
US20060067311A1 (en) Method of processing packet data at a high speed
CN114666831B (zh) 一种基于流编码和带宽估计驱动的分组传输方法及其系统
JP2004080413A (ja) 通信システム、通信装置及び通信方法
CN118353974A (zh) 一种网络芯片中进行tcp数据重传的方法及系统

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040921

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050621