特許第6011813号(P6011813)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

<>
  • 特許6011813-通信装置およびその通信制御方法 図000002
  • 特許6011813-通信装置およびその通信制御方法 図000003
  • 特許6011813-通信装置およびその通信制御方法 図000004
  • 特許6011813-通信装置およびその通信制御方法 図000005
  • 特許6011813-通信装置およびその通信制御方法 図000006
  • 特許6011813-通信装置およびその通信制御方法 図000007
  • 特許6011813-通信装置およびその通信制御方法 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6011813
(24)【登録日】2016年9月30日
(45)【発行日】2016年10月19日
(54)【発明の名称】通信装置およびその通信制御方法
(51)【国際特許分類】
   H04L 29/08 20060101AFI20161006BHJP
   H04L 1/16 20060101ALI20161006BHJP
   H04L 12/807 20130101ALI20161006BHJP
【FI】
   H04L13/00 307Z
   H04L1/16
   H04L12/807
【請求項の数】8
【全頁数】14
(21)【出願番号】特願2013-507136(P2013-507136)
(86)(22)【出願日】2012年3月14日
(86)【国際出願番号】JP2012001765
(87)【国際公開番号】WO2012132283
(87)【国際公開日】20121004
【審査請求日】2015年2月5日
(31)【優先権主張番号】特願2011-69323(P2011-69323)
(32)【優先日】2011年3月28日
(33)【優先権主張国】JP
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成22年度、総務省「光空間通信技術の研究開発」委託研究、産業技術力強化法第19条の適用を受ける特許出願
【前置審査】
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100097157
【弁理士】
【氏名又は名称】桂木 雄二
(72)【発明者】
【氏名】長谷川 洋平
(72)【発明者】
【氏名】地引 昌弘
【審査官】 森谷 哲朗
(56)【参考文献】
【文献】 特開2006−129487(JP,A)
【文献】 特開2005−269643(JP,A)
【文献】 Myungjin Lee and Oh-Cheon Kwon,E-RTO: An Enhanced TCP Retransmission Timeout Algorithm using SACK option,Wireless Communications and Networking Conference, 2006. WCNC 2006. IEEE,2006年 4月 3日,pp.74-79,3章 PROPOSED SCHEME、及び、Fig.1−Fig.5
(58)【調査した分野】(Int.Cl.,DB名)
H04L 29/08
H04L 1/16
H04L 12/807
(57)【特許請求の範囲】
【請求項1】
送信したデータに対して確認応答を受信側から受け取る方式の通信システムにおける通信装置であって、
送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定する判定手段と、
前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズを増加させた輻輳ウィンドウを設定する輻輳ウィンドウ設定手段と、
前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定する推定手段と、
前記設定された輻輳ウィンドウで送信すべきデータとして、前記推定データに続くデータを送信するデータ送信手段と、
を有することを特徴とする通信装置。
【請求項2】
前記データ送信手段は、前記設定された輻輳ウィンドウで送信すべきデータを一定の頻度で送信することを特徴とする請求項1に記載の通信装置。
【請求項3】
送信したデータに対して確認応答を受信側から受け取る通信装置における通信制御方法であって、
判定手段が送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定し、
輻輳ウィンドウ設定手段が、前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズを増加させた輻輳ウィンドウを設定し、
推定手段が、前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定し、
データ送信手段が前記設定された輻輳ウィンドウで送信すべきデータとして、前記推定データに続くデータを送信する、
ことを特徴とする通信制御方法。
【請求項4】
前記データ送信手段は、前記設定された輻輳ウィンドウで送信すべきデータを一定の頻度で送信することを特徴とする請求項に記載の通信制御方法。
【請求項5】
送信装置が送信したデータに対して受信装置が確認応答を返信する通信システムであって、
前記送信装置は、
送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を前記受信装置から受信したか否かを判定する判定手段と、
前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズを増加させた輻輳ウィンドウを設定する輻輳ウィンドウ設定手段と、
前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定する推定手段と、
前記設定された輻輳ウィンドウで送信すべきデータとして、前記推定データに続くデータを送信するデータ送信手段と、
を有し、
前記受信装置は前記送信データを受信したことを示す確認応答を送信する送信手段を有する、
ことを特徴とする通信システム。
【請求項6】
前記送信装置と前記受信装置がバーストロスが発生する可能性のあるネットワーク区間を挟んで配置されたことを特徴とする請求項に記載の通信システム。
【請求項7】
送信装置が送信したデータに対して受信装置が確認応答を返信する通信システムにおける通信方法であって、
前記送信装置が送信データを送信し、
前記受信装置が前記送信データを受信した時に確認応答を前記送信装置へ返信し、
前記送信装置が、当該送信から所定の設定時間が経過する前に当該送信データに対する確認応答を前記受信装置から受信しなかった時に前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズを増加させた輻輳ウィンドウを設定し、前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定し、前記設定された輻輳ウィンドウで送信すべきデータとして、前記推定データに続くデータを送信する、
ことを特徴とする通信方法。
【請求項8】
送信したデータに対して確認応答を受信側から受け取る通信装置におけるプログラム制御プロセッサを機能させるプログラムであって、
判定手段が送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定し、
輻輳ウィンドウ設定手段が、前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズを増加させた輻輳ウィンドウを設定し、
推定手段が、前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定し、
データ送信手段が前記設定された輻輳ウィンドウで送信すべきデータとして、前記推定データに続くデータを送信する、
ように前記プログラム制御プロセッサを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は端末間の通信システムに係り、特に送信データに対する確認応答を用いる通信システムにおける通信装置およびその通信制御方法に関する.
【背景技術】
【0002】
インターネットで用いられる代表的な通信プロトコルであるTCP/IP(Transmission Control Protocol/Internet Protocol)では、送信端末がデータを送信すると、それを受信した受信端末が確認応答を送信端末へ返信する。送信端末は、データを送信すると再送タイマを初期時間に設定し、その確認応答が受信端末から帰ってこないまま再送タイマがタイムアウトすると、確認応答がない送信データを1つだけ受信端末へ再送する。この再送を行う際、再送タイマは初期時間の2倍に時間に設定される。こうして再送タイマが作動するたびに、次の再送タイマの設定時間は2倍ずつ長くなるように規定されている。この再送タイマの設定動作は指数バックオフと呼ばれる。指数バックオフは、端末間の通信帯域が極端に小さい場合やネットワークが極端に混雑した場合にも通信を可能とするために用いられる。TCPは多様な通信環境で利用することを前提として設計されているため、このような機能を有する。
【0003】
受信端末は、再送されたパケットを受信すると、既に受信して整列が完了したパケットに対する確認応答を返信する。送信端末は、この確認応答を参照することで次に送信すべきデータを決定することができる。以下、図1を参照しながら具体例を説明する。
【0004】
図1において、送信端末から受信端末へデータが送信されているが、図中の「シグナルロスト」と記された期間、通信信号が断絶し端末間の通信パケットが消失したものとする。この例では、送信端末は、データ3に対する確認応答が受信できないため、データ3の送信後に再送タイマが起動した時に(RTO:Retransmission Time Out)、当該データ3を再送する。受信端末は、再送データ3の到着をトリガとして、データ4まで受信している旨を記した確認応答(ACK4)を返信する。送信端末は、ACK4を受信すると、これに続くデータ5を送信する。
【0005】
なお、受信側からの確認応答に応じてパケットの再送を行う通信システムは多く提案されており、たとえば特許文献1には、マルチメディア通信において、受信側から正常受信の確認応答が所定時間内に得られないときに再送処理が実行されるシステムが開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平10−056480号公報
【特許文献2】特開2010−035033号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、一般的に、ネットワークではキューイング遅延や処理遅延などにより遅延が突発的に増加することがあるため、再送タイマの初期値は十分大きく(1秒ほどに)設定されている。このため、再送タイマが起動されデータが再送される場合には、通信停止による性能低下が生じる。また再送が行われた後も、パケットが端末間を往復するラウンドトリップ遅延時間RTT(Round Trip Time)の間は通信が行われないので、RTTが大きい場合には大きな性能低下となってしまう。
【0008】
近年ではTCP/IP通信の適用範囲が広がり、ますます様々なネットワーク環境で用いられるようになったが、一部の環境ではTCPの通信性能が得られない場合がある。なかでも無線回線や長距離回線を通した通信ではTCPの性能低下が知られている。しかしながら、将来は、より高い周波数領域での無線高速通信の実施が考えられるので、このようなTCP/IP通信は衛星間通信などの長距離通信にも応用されることが期待されている。
【0009】
信号エラーが発生する可能性がある長距離通信では、遅延が大きいことから自動再送要求(ARQ)のような再送方法は通信効率を悪化させる。そこで前方誤訂正符号(FEC)が使用されるが、FECではバースト的な信号エラーを回復するにはオーバヘッドが大きくなるため、バースト的な信号エラーをFECにより完全に防止することは経済的ではない。
【0010】
これに対して、TCPには受信端末が消失したデータの番号を送信者に知らせるセレクティブACK(Selective ACK)オプションがある。しかしながら、バーストロスにより大量のデータが失われた場合や確認応答が1つも返信されて来なかった場合には、最も基本的な確認応答による動作が行われるため、一部到着していたデータがあったとしても多くが再送されることとなり、結果的に通信効率が悪化してしまう。
【0011】
このように、上述したTCPや特許文献1などに記載されている通信方式では、バーストエラーが予想されるネットワークを通してデータ通信が行われると、再送タイムアウトの動作が問題となって著しく性能が低下する。特に、再送タイムアウトが繰り返された場合、TCPでは指数バックオフにより極端な性能低下が生じてしまう。
【0012】
また、バーストエラーが発生した後でネットワークが通信可能となった場合、TCPでは、上述したように再送パケットに対するACKを受信するまで通信が停止状態となっている。すなわち、パケットが送信端末と受信端末との間を一往復するだけの時間は通信性能が得られないこととなる。このためにネットワークの復旧を迅速に検出することができず、ネットワーク性能を低下させるひとつの原因となっている。
【0013】
さらに、再送タイムアウトになると送信端末が再送データを送信し、受信端末がその確認応答を返信する際に受信済みのデータ番号を通知するので、送信端末は当該確認応答を受け取るまで次に送信すべきデータを知ることができない。その結果、受信端末で既に受信しているデータを重複して再送する可能性があり、これもネットワーク性能を低下させる原因である。
【0014】
そこで本発明の目的は、バーストエラーが予想されるネットワークの性能および通信効率を向上させることができる通信装置およびその通信制御方法を提供することにある。
【課題を解決するための手段】
【0015】
本発明による通信装置は、送信したデータに対して確認応答を受信側から受け取る方式の通信システムにおける通信装置であって、送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定する判定手段と、前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズを再送データとそれに続く未送信データとを合わせたサイズに増加させた輻輳ウィンドウを設定する輻輳ウィンドウ設定手段と、前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定する推定手段と、前記設定された輻輳ウィンドウで送信すべきデータとして、前記推定データに続くデータを送信するデータ送信手段と、を有することを特徴とする。
【0016】
本発明による通信制御方法は、送信したデータに対して確認応答を受信側から受け取る通信装置における通信制御方法であって、判定手段が送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定し、輻輳ウィンドウ設定手段が、前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズを再送データとそれに続く未送信データとを合わせたサイズに増加させた輻輳ウィンドウを設定し、推定手段が、前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定し、データ送信手段が前記設定された輻輳ウィンドウで送信すべきデータとして、前記推定データに続くデータを送信する、ことを特徴とする。
【発明の効果】
【0017】
本発明によれば、バーストエラーが予想されるネットワークの性能および通信効率を向上させることができる。
【図面の簡単な説明】
【0018】
図1図1は背景技術によるデータ通信手順を説明するためのシーケンス図である。
図2図2は本発明の一実施形態による通信装置の機能的構成を示すブロック図である。
図3図3は本実施形態による通信制御方法に従ったデータ通信手順を説明するためのシーケンス図である。
図4図4は本実施形態による通信制御方法を示すフローチャートである。
図5図5は本発明の他の実施形態による通信装置を利用した中継ネットワーク図である。
図6図6は、図5におけるTCP中継器の送信機能の構成を示すブロック図である。
図7図7は、図5におけるTCP中継器の受信機能の構成を示すブロック図である。
【発明を実施するための形態】
【0019】
本発明の実施形態によれば、再送タイマが作動した場合に送信側の輻輳ウィンドウを増加させることで、通信信号にバーストエラーがある場合でも再送タイムアウトの動作時の性能を大幅に改善することができる。増加した輻輳ウィンドウにおいて十分な頻度でデータ送信することにより、バーストエラーが解消して通信が再開したことを迅速に検出することが可能となる。さらに、本発明によれば、再送タイムアウトとなった時に受信端末が受信済みであろうデータ番号を推測することで、重複するデータの再送を回避することができ通信効率をさらに改善することができる。以下、本発明の実施形態および実施例について図面を参照しながら詳細に説明する。
【0020】
1.一実施形態
図2において、送信側通信装置10(以下、送信端末10という。)と受信側通信装置20(以下、受信端末20という。)はネットワーク30を介して接続され、TCPコネクションを利用してデータを転送するものとする。送信端末10はデータをネットワーク30を通して受信端末20へ送信し、受信端末20は受信したデータに対する確認応答をネットワーク30を通して送信端末10へ返信する。
【0021】
ネットワーク30は有線あるいは無線を問わないが、通信信号が断続的に消失(バーストロス)する可能性があるネットワークであるものとする。例えば、衛星局と陸上局との長距離無線通信などのように、往復時間RTTが長く遮蔽物などにより信号の遮断が想定されるネットワークなどである。
【0022】
送信端末10は、アプリケーション11と、送信すべきデータを格納するデータ記憶部12と、アプリケーション11からデータを入力しTCPプロトコルに従って本実施形態による通信制御を実行するTCP送信部13と、TCP送信部13から受け取ったデータをパケット化するIP処理部14と、IP処理部14から渡されたパケットをフレーム化してネットワーク30へ出力する入出力処理部15とを含む。
【0023】
TCP送信部13は、アプリケーションから入力したデータをセグメント化しレート制御しつつIP処理部14へ出力するデータ送信部101と、セグメントを記憶するセグメント記憶部102と、データを送信するたびにセットされ所定の設定時間の経過(RTO)を判定する再送タイマ103と、送信したデータに対する確認応答を受信するまでの時間を計測する遅延計測部104と、送信データが受信側に到達していると推定するデータ到達推定部105と、輻輳ウィンドウサイズ(送信可能なデータ量)を決定する輻輳ウィンドウ決定部106と、から構成される。なお、輻輳ウィンドウとは送信側が送信できる最大のデータ番号であり、輻輳ウィンドウサイズとは輻輳ウィンドウから現在送信済みでかつACKが返信されてきていない最小のデータシーケンス番号を減じたもの、すなわち送信可能なデータ量を指す。
【0024】
特に、データ到達推定部105は、遅延計測部104が計算した送信端末10と受信端末20との間の遅延D(D=RTT/2)を参照し、受信している最新の確認応答ACKの受信時刻Rから最新の確認応答ACKが送信された時刻L(=R−D)を推定し、時刻Lよりも前に送信されていたデータは受信端末20に到達していると推定する。この推定時刻Lに基づいて、輻輳ウィンドウ決定部106は、時刻L以降に送信された再送データとこれに続く未送信データとをあわせた合計と等しくなるように輻輳ウィンドウを増加させる。この輻輳ウィンドウは送信端末10と受信端末20との間のパイプを満たすデータ分量に相当する。
【0025】
受信端末20は、アプリケーション21と、受信したデータを記憶するデータ記憶部22と、IP処理部24から受け取ったパケットをデータ化しTCPプロトコルに従って通信制御を実行するTCP受信部23と、入出力処理部25から受け取ったフレームをパケット化しTCP受信部23へと渡すIP処理部24と、ネットワーク30から受け取ったフレームをIP処理部24に渡す入出力処理部25と、から構成される。
【0026】
TCP受信部23は、IP処理部24から受け取ったパケットをデータ化してアプリケーション21へ出力するデータ受信部201と、セグメントを記憶するセグメント記憶部202と、受信したデータに対する確認応答ACKを返信するACK送信部203と、から構成される。
【0027】
なお、TCP送信部13のデータ送信部101、再送タイマ103、遅延計測部104、データ到達推定部105および輻輳ウィンドウ決定部106の各機能は、図示しないメモリに格納されたプログラムをCPU等のプログラム制御プロセッサ上で実行することにより実現することもできる。次に、本実施形態による通信手順を説明するが、受信端末20の動作は既存のTCPと同様であるから、主に送信端末10に着目して説明する。
【0028】
2.通信シーケンス
図3は送信端末10と受信端末20との間のパケットトランザクションの例を示す。まず、ブロック矢印で示す期間に通信信号が断絶する場合を想定する。送信端末10はデータ1から順に送信し、データを送信するごとに当該データに対する再送タイマ103をセットする。再送タイマ103はデータが送信されてから当該データに対するACKが平滑化RTT(sRTT)以内に受信できなかった場合に起動される。sRTTの算出方法はTCPの規定に含まれる。
【0029】
図3では、データ3以降のデータに対するACK3が返信されてないため、再送タイマ103がデータ3の送信時からsRTT時間経過後に起動される。このとき、送信端末10は時刻Rで最も新しいACK2を受信しているので、ACK2の受信時刻Rからネットワークの遅延Dを差し引くことで、ACK2が受信端末20から送信された時刻L (L=R−D)を推定する。すなわち、この推定時刻Lよりも前に送信端末10が送信したデータは受信端末20に到着していると推定する。
【0030】
図3に示す例では、データ4まで受信端末20に到達していると推定されるので、送信端末10は、それに続くデータ5から再送を開始する。その際、データ5から数え、再送タイムアウトRTOが起動される前の輻輳ウィンドウWoと等しいだけのデータをさらに送信する。具体的には、ACK2を受信した直後にデータ3〜データ6まで送信しているのでWo=4であり、これに送信すべき1つのデータ5からWo個のデータを送信できるようにすれば、輻輳ウィンドウW=5+Wo−1=8となる。言い換えれば、本実施形態によれば、再送タイムアウトRTOが起動される前の輻輳ウィンドウWoを増大させてデータを送信する。したがって、この例では、データ5から4つのデータ、つまりデータ5〜データ8までが送信される。
【0031】
さらに、データ5の送信からsRTT(=2D)経過した後でも受信端末20からACKが確認できない場合には、再び再送タイマが起動し、上述と同様にデータ5から4つのデータの送信が繰り返される。この2度目のデータ5〜データ8の送信中に通信が回復し、データ7が正常に受信端末20へ到達し、それに対するACK7が送信端末10へ返信されてきたとする。このACK7を受信した時点で、送信端末10はネットワークが復旧したことを知ることができる。
【0032】
このように、ACK2が受信端末20から送信された時刻L (L=R−D)を算出し、それより前の送信データは受信端末20に到達していると推定できるので、それ以降のデータを送信すればよい。したがって重複したデータの送信を回避することができ、かつ通信の一時停止も防止することができる。
【0033】
3.送信端末の動作
図4において、データ送信部101はTCPコネクションが送信端末10と受信端末20の間で開設され、アプリケーション11からデータが入力されることで処理が開始される。
【0034】
データ送信部101は、送信すべきデータがあるか否かを判定し(動作401)、既に送信すべきデータがなくアプリケーション11からコネクション終了指示があった場合には(動作401のNO)、処理を終了する。送信すべきデータがある場合には(動作401のYES)、データ送信部101は送信すべきデータをセグメント化してIP処理部14へ出力し、当該データに対する再送タイマ103をsRTT後にタイムアウトするようにセットする(動作402)。輻輳ウィンドウ制御に基づいて、送信データはIP処理部14でパケット化され入出力処理部15を通して送信される。
【0035】
データ送信部101は、パケットを送信した後、受信端末20から当該送信パケットに対するACKを受信したか否かを判定する(動作403)。ACKを受信すれば(動作403のYES)、動作401へ戻り、次のデータの送信プロセスへ移行する。ACKを受信しなければ(動作403のNO)、再送タイマ103が起動したか否かを判定する(動作404)。sRTTを経過していなければ(動作404のNO)、ACKの受信を待機する(動作403,404)。
【0036】
ACKを受信しないままsRTTを経過すると(動作404のYES)、データ到達推定部105は、上述したように、受信している最新の確認応答ACKの受信時刻Rから最新の確認応答ACKが送信された時刻L(=R−D)を推定し、時刻Lよりも前に送信されていたデータは受信端末20に到達していると推定する(動作405)。
【0037】
続いて、輻輳ウィンドウ決定部106は、輻輳ウィンドウWを次に送信すべきデータ(n+1)から数えて再送タイマ起動時の輻輳ウィンドウサイズWo分を送信可能な数に更新する(動作406)。すなわち、データn+Wo分のデータまで送信可能とする。そして、動作402へ戻り、以上述べた処理を繰り返す。
【0038】
4.効果
本実施形態によれば、通信が再開した場合にも、受信端末は既に受信したデータを重複して受信することが回避され、かつ、受信端末20がACKを返信してから送信端末10に到達するまでの間も送信端末10は続くデータを送信し続けることができるので、通信の一時停止時間がなく迅速に通信信号の再開を検出できる。
【0039】
5.他の実施形態
本発明による通信装置は、TCP中継器をバーストロスが発生するネットワークで接続した中継ネットワークにも適用可能である。
【0040】
図5に示すように、送信端末501から送信されたデータは、TCP中継器503および504と、それぞれの通信区間でのTCPコネクション508,509および510とを通して、受信端末502へデータを転送する。ここでは、ネットワーク506がバーストロスが発生するリンクであり、ネットワーク505および507が輻輳が発生するネットワークであるとする。このようなシステムにおいて、本実施形態による通信装置はTCP中継器503および506の間のTCPコネクション506にて実施される.送信端末501および受信端末502とそれぞれ通信するTCPコネクション508および510では通常のTCPによる通信が実行される。
【0041】
図6において、TCP中継器503は、データ転送部601、データ記憶部602、TCP送信部603、TCP受信部604、IP処理部605および入出力処理部606を有し、TCP送信部603が図2に示す送信端末10のTCP送信部13と同じ構成を有する。データ転送部601は、TCP受信部604で受信したデータをデータ記憶部602に格納しTCP送信部603へ出力する機能を有する。
【0042】
図7において、TCP中継器504は、データ転送部701、データ記憶部702、TCP送信部703、TCP受信部704、IP処理部705および入出力処理部706を有し、TCP送信部703が図2に示す受信端末20のTCP受信部23と同じ構成を有する。データ転送部701は、TCP受信部704で受信したデータをデータ記憶部702に格納しTCP送信部703へ出力する機能を有する。
【0043】
このように、バーストロスが発生するネットワーク506を挟んで本実施形態によるTCP送信部603とTCP受信部704を設けることにより、この区間だけに本発明による通信方式を実施することができる。リンクの両端にTCP中継器503および504を配置することでトラヒックの合流がなくなるので、輻輳の発生を抑えることができる。またトラヒックの合流がないのでネットワーク遅延の計測精度が向上し、より正確に再送するべきデータを推測できる。
【0044】
また、図5に示すように、一部の区間で本実施形態を適用し、他の区間で既存のTCPを利用することで、TCPの性能への影響を小さくして本実施形態を効果的に利用することができる。
【0045】
6.付記
上述した実施形態の一部あるいは全部は、以下の付記のようにも記載されうるが、これらに限定されるものではない。
【0046】
(付記1)
送信したデータに対して確認応答を受信側から受け取る方式の通信システムにおける通信装置であって、
送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定する判定手段と、
前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズ以上の輻輳ウィンドウを設定する輻輳ウィンドウ設定手段と、
前記設定された輻輳ウィンドウで送信すべきデータを送信するデータ送信手段と、
を有することを特徴とする通信装置。
【0047】
(付記2)
前記データ送信手段は、前記設定された輻輳ウィンドウで送信すべきデータを一定の頻度で送信することを特徴とする付記1に記載の通信装置。
【0048】
(付記3)
前記データ送信手段は、前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定し、当該推定データに続くデータを送信することを特徴とする付記1または2に記載の通信装置。
【0049】
(付記4)
前記受信側装置との間の信号遅延測定値と前記最新の確認応答の受信時刻とを用いて前記受信側装置に到着したデータを推定することを特徴とする付記3に記載の通信装置。
【0050】
(付記5)
送信したデータに対して確認応答を受信側から受け取る通信装置における通信制御方法であって、
判定手段が送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定し、
輻輳ウィンドウ設定手段が、前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズ以上の輻輳ウィンドウを設定し、
データ送信手段が前記設定された輻輳ウィンドウで送信すべきデータを送信する、
ことを特徴とする通信制御方法。
【0051】
(付記6)
前記データ送信手段は、前記設定された輻輳ウィンドウで送信すべきデータを一定の頻度で送信することを特徴とする付記5に記載の通信制御方法。
【0052】
(付記7)
前記データ送信手段は、前記所定の設定時間の経過前に受信した最新の確認応答の受信時刻に基づいて前記受信側装置に到着したデータを推定し、当該推定データに続くデータを送信することを特徴とする付記5または6に記載の通信制御方法。
【0053】
(付記8)
前記受信側装置との間の信号遅延測定値と前記最新の確認応答の受信時刻とを用いて前記受信側装置に到着したデータを推定することを特徴とする付記7に記載の通信制御方法。
【0054】
(付記9)
送信装置が送信したデータに対して受信装置が確認応答を返信する通信システムであって、
前記送信装置は、
送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を前記受信装置から受信したか否かを判定する判定手段と、
前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズ以上の輻輳ウィンドウを設定する輻輳ウィンドウ設定手段と、
前記設定された輻輳ウィンドウで送信すべきデータを送信するデータ送信手段と、
を有し、
前記受信装置は前記送信データを受信したことを示す確認応答を送信する送信手段を有する、
ことを特徴とする通信システム。
【0055】
(付記10)
前記送信装置と前記受信装置がバーストロスが発生する可能性のあるネットワーク区間を挟んで配置されたことを特徴とする付記9に記載の通信システム。
【0056】
(付記11)
送信装置が送信したデータに対して受信装置が確認応答を返信する通信システムにおける通信方法であって、
前記送信装置が送信データを送信し、
前記受信装置が前記送信データを受信した時に確認応答を前記送信装置へ返信し、
前記送信装置が、当該送信から所定の設定時間が経過する前に当該送信データに対する確認応答を前記受信装置から受信しなかった時に前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズ以上の輻輳ウィンドウを設定し、前記設定された輻輳ウィンドウで送信すべきデータを送信する、
ことを特徴とする通信方法。
【0057】
(付記12)
送信したデータに対して確認応答を受信側から受け取る通信装置におけるプログラム制御プロセッサを機能させるプログラムであって、
判定手段が送信データを送信してから所定の設定時間が経過する前に当該送信データに対する確認応答を受信側装置から受信したか否かを判定し、
輻輳ウィンドウ設定手段が、前記確認応答を前記所定の設定時間内に受信しなかった時、前記所定の設定時間が経過する前に設定されていた輻輳ウィンドウサイズ以上の輻輳ウィンドウを設定し、
データ送信手段が前記設定された輻輳ウィンドウで送信すべきデータを送信する、
ように前記プログラム制御プロセッサを機能させるプログラム。
【産業上の利用可能性】
【0058】
本発明はTCP方式の通信システムに適用可能である。
【符号の説明】
【0059】
10 送信端末
11 アプリケーション
12 データ記憶部
13 TCP送信部
14 IP処理部
15 入出力処理部
101 データ送信部
102 セグメント記憶部
103 再送タイマ
104 遅延計測部
105 データ到達推定部
106 輻輳ウィンドウ決定部
20 受信端末
21 アプリケーション
22 データ記憶部
23 TCP受信部
24 IP処理部
25 入出力処理部
201 データ送信部
202 セグメント記憶部
203 ACK送信部
図1
図2
図3
図4
図5
図6
図7