JP4531302B2 - Packet relay apparatus and method thereof - Google Patents
Packet relay apparatus and method thereof Download PDFInfo
- Publication number
- JP4531302B2 JP4531302B2 JP2001215808A JP2001215808A JP4531302B2 JP 4531302 B2 JP4531302 B2 JP 4531302B2 JP 2001215808 A JP2001215808 A JP 2001215808A JP 2001215808 A JP2001215808 A JP 2001215808A JP 4531302 B2 JP4531302 B2 JP 4531302B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- congestion
- transmission section
- transmission
- transmitted
- 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.)
- Expired - Lifetime
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、異なる伝送遅延を有した二つの伝送区間の間でパケットを中継するパケット中継装置、及びその方法に関する。
【0002】
【従来の技術】
異なる伝送遅延を有した二つの伝送区間の間でパケットを中継する従来のパケット中継装置として、例えば特開平11−252179号公報に記載される装置が知られている。図12は、この従来のパケット中継装置(ゲートウェイ)41を備えた衛星通信システムの全体構成を示すブロック図である。
【0003】
この図12において、符号1は通信衛星である。符号2は通信衛星1による衛星回線6、7を利用して通信を行う通信事業者の通信システム(以下、通信事業者システムと称する)である。この通信事業者システム2は、ゲートウェイ41と、衛星ルータ22と、衛星アンテナ23とから構成される。符号3は通信事業者システム2の加入者が備えるローカルエリアネットワーク(LAN)システムである。この加入者LANシステム3は、加入者が使用する端末3と、衛星ルータ22と、衛星アンテナ23と、端末3および衛星ルータ22をそれぞれ接続するLAN32とから構成される。複数の加入者LANシステム3が通信衛星1を介して通信事業者システム2との間で通信を行う。
【0004】
符号4は、TCPおよびIPに基づいたパケット(以下、単にパケットと称する)により、端末31との間でデータ通信を行うサーバである。符号5は、サーバ4とゲートウェイ41を接続するインターネットと呼ばれるコンピュータネットワークである。
【0005】
上記図12の衛星通信システムにおいて、通信事業者システム2は、複数の加入者LANシステム3との間で一つの衛星回線6を共有して使用し、下り方向(通信事業者設備2から加入者LANシステム3へ)の通信を行う。一方、上り方向(加入者LANシステム3から通信事業者設備2へ)の通信については、加入者LANシステム3毎にそれぞれ個別の衛星回線7を使用して通信する。
【0006】
また、これら衛星回線6、7は伝送遅延時間が大きい回線である。例えば、上り下りの往復遅延時間は600m秒であり、これはインターネット5を利用した通信の往復遅延時間よりも大きい。
【0007】
従来のゲートウェイ41は、サーバ4からインターネット5を介して受信したパケットを、衛星回線6を介して端末31へ転送するために衛星ルータ22へ出力する。また、端末31から衛星回線7を介して衛星アンテナ23および衛星ルータ22により受信されたパケットについては、インターネット5へ出力するが、送達確認応答パケットは廃棄する。
【0008】
その代わりに、ゲートウェイ41は、サーバ4から受信したパケットについての送達確認応答パケットを生成し、該サーバ4へ送信する送達確認応答代行機能を有する。この送達確認応答代行機能は、サーバ4から端末31へ送信されたパケットについての送達確認応答パケットを、該端末31からの受信を待たずに代行して送信する機能である。この送達確認応答代行機能によって、図9に示すように、複数のパケット(DATA1〜5)についての送達確認応答パケット(FACK1〜5)が、端末31からの送達確認応答パケット(ACK1〜5)の受信前に、ゲートウェイ21からサーバ4へ送信される。
【0009】
また、ゲートウェイ41は、端末31から通知された受信ウインドウサイズ(rwin;最大受信可能データ量)を超えて、サーバ4から受信したパケットを端末31へ送信する。
【0010】
このように従来のゲートウェイ41は、遅延の大きい衛星回線を介して伝送される端末31からの達確認応答パケットを待たずに、サーバ4へ達確認応答パケットを代行して送信し、サーバ4にパケットをさらに送信させる。このサーバ4から受信したパケットを端末31から通知された受信ウインドウサイズを超えて、端末31へ送信する。これにより、異なる伝送遅延を有した二つの伝送区間(インターネット区間と衛星回線区間)からなる伝送路において、遅延の大きな伝送区間の影響を受けることがなくなり、この結果、伝送効率を向上することが可能となっている。
【0011】
【発明が解決しようとする課題】
しかし、上述した従来のパケット中継装置では、遅延の大きな伝送区間の下り回線と上り回線とが双方ともに十分なデータ伝送速度を有するものであることを前提としている。このために、遅延の大きな伝送区間の下り回線と上り回線のデータ伝送速度が非対称であった場合には、データ伝送速度が小さい方の回線が輻輳し、伝送効率が低下するという問題が生じる。
【0012】
上記図12に示す衛星通信システムにおいては、一般的に、上りの衛星回線7は、下りの衛星回線6に比してデータ伝送速度が小さい。例えば、下りの衛星回線6のデータ伝送速度は毎秒10Mビットであり、上りの衛星回線7のデータ伝送速度は毎秒64Kビットである。このようなシステムにおいては、上り衛星回線7の輻輳により、遅延の増大や達確認応答パケットの紛失等が発生し、この結果として、パケットの再送等により伝送効率が低下してしまう。
【0013】
また、ゲートウェイ41を複数備え、これらゲートウェイ41が下り衛星回線6を共有して使用する場合がある。この場合に、各ゲートウェイ41は、下り衛星回線6に空きの伝送帯域があれば、それぞれ端末31から通知された受信ウインドウサイズを超えてパケットを送信する。しかしながら、各ゲートウェイ41は、下り衛星回線6の空いている伝送帯域量を考慮することなく、送信しようとする。このため、それらゲートウェイ41から下り衛星回線6の伝送帯域以上のパケットが送信された場合には、下り衛星回線6で輻輳が発生することになる。この輻輳によっても、遅延の増大やパケットの紛失等が発生して、伝送効率が低下するという問題が生じる。
【0014】
また、従来のパケット中継装置では、遅延の大きな伝送区間へのパケット再送時においても、その受信装置の受信ウインドウサイズ(最大受信可能データ量)を超えてパケットを送信する。このために、さらに上り回線の輻輳が発生し、この輻輳からの回復に時間がかかるという問題も生じている。
【0015】
上記図12の衛星通信システムにおいて、例えば、図13に示すように、ゲートウェイ41が複数のパケット(DATA1〜8)を送達確認応答パケット(ACK1)の受信前に、端末31へ順次先送りし、パケット(DATA2)が端末31の輻輳により紛失したとする。この場合、ゲートウェイ41は、パケット(DATA1)についての送達確認応答パケット(ACK1)を連続して受信し、パケット(DATA2)の紛失を検出する。この例では、送達確認応答パケット(ACK1)を重複して三つ受信したことにより、パケット(DATA2)の紛失を検出してパケットの再送を開始している。なお、通常、TCPの再送手順では、内容が同一である送達確認応答パケットを四つ連続して受信すると、パケットの再送を行う。
【0016】
ここで、ゲートウェイ41は、再送対象のパケット(DATA2〜8)を端末31の受信ウインドウサイズを超えて、連続して端末31へ送信する。これにより、端末31の輻輳がさらに拡大し、また、端末31がそれら再送パケットについての送達確認応答パケット(ACK2〜8)を送信する際に、その上り衛星回線7にも輻輳が発生する。この結果、輻輳回復までにさらに時間がかかることになる。また、さらにパケットが紛失して輻輳がより拡大し、回復困難な輻輳状態に陥る場合もある。
【0017】
また、端末31が何らかの理由でウインドウを閉塞し、パケットの受信を行わない状態となった場合には、ゲートウェイ41が先送りしたパケットを端末31は廃棄するが、ゲートウェイ41は、端末31がウインドウ閉塞中であるにもかかわらず、先送りしたパケットの再送を行ってしまう。この結果、無駄なパケットを送信することになり、パケットの再送を効率よく行うことができないという問題がある。さらに、無駄なパケットを送信することによって、複数の加入者で共有している下りの衛星回線6の伝送効率を低下させるという問題も生じる。
【0018】
本発明は、このような事情を考慮してなされたもので、その目的は、異なる伝送遅延を有した二つの伝送区間からなる伝送路において、遅延の大きな伝送区間の影響を受けることなく伝送効率を向上することが可能であり、且つ、遅延の大きな伝送区間の下り回線と上り回線のデータ伝送速度が非対称であった場合に、データ伝送速度が小さい方の回線の輻輳により伝送効率が低下することを防止することができるパケット中継装置、及びその方法を提供することにある。
【0019】
さらに、本発明は、遅延の大きな伝送区間へパケットを再送する場合に、輻輳からの回復時間を短縮することができるパケット中継装置、及びその方法を提供することも目的とする。
【0020】
また、本発明は、受信装置のウインドウ閉塞により紛失したパケットの再送を効率よく行うことができるパケット中継装置、及びその方法を提供することも目的とする。
【0021】
【課題を解決するための手段】
上記の課題を解決するために、請求項1に記載の発明は、第1の伝送区間と前記第1の伝送区間よりも伝送遅延が大きい第2の伝送区間との間で、前記第1の伝送区間を介して伝送されたパケットを前記第2の伝送区間へ転送するパケット中継装置であって、前記第2の伝送区間へ転送済みのパケットを蓄えておくバッファ手段と、前記転送されたパケットを受信する受信装置から通知された最大受信可能データ量を超えて、前記第1の伝送区間から受信したパケットを前記第2の伝送区間へ送信し、また、前記バッファ手段内のパケットを使用して送達未確認パケットの再送を行うパケット転送手段と、前記第2の伝送区間へ送信されたパケットについての送達確認応答パケットを、前記受信装置からの受信を待たずに代行して前記第1の伝送区間へ送信する送達確認応答代行手段と、前記第2の伝送区間へパケットを送信してから、該パケットの送達確認応答パケットを前記受信装置から受信するまでの往復遅延時間に基づいて、前記パケット転送手段の最大送信可能データ量を増加または減少させる輻輳回避手段と、を具備し、前記最大送信可能データ量は、前記最大受信可能データ量に一定の先送り可能なデータ量を加えた値、あるいは、最後に送達確認されたパケットから送信可能な最大データ量を示す輻輳ウインドウ、のいずれか小さい値であり、前記輻輳ウインドウが前記最大受信可能データ量よりも大きい値をとることができるようにしたことを特徴とする。
【0022】
請求項2に記載の発明は、送達未確認のパケットがあることを検出した場合に、最前の送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として設定し、前記パケット転送手段に前記再送を指示し、前記受信装置から送達確認応答パケットを受信する毎に、順次、次の送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として設定する輻輳回復手段を具備することを特徴とする請求項1に記載のパケット中継装置である。
【0023】
請求項3に記載の発明は、前記輻輳回復手段は、再送タイムアウトによって前記検出がなされた場合には、前記再送された送達未確認パケットの送達確認応答パケットを受信するまで、該送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として使用し続けることを特徴とする請求項2に記載のパケット中継装置である。
【0024】
請求項4に記載の発明は、前記受信装置からウインドウ閉塞通知を受信した場合、該通知受信時点からウインドウ回復通知受信時点までの時間を計測し、この計測の結果、所定時間以上の経過を条件として前記パケット転送手段に前記再送を指示するウインドウ閉塞対処手段を具備することを特徴とする請求項1乃至請求項3のいずれかの項に記載のパケット中継装置である。
【0025】
請求項5に記載の発明は、前記ウインドウ閉塞対処手段は、再送タイムアウトが発生した場合には、前記パケット転送手段に少なくとも一つの送達未確認パケットの再送を指示することを特徴とする請求項4に記載のパケット中継装置である。
【0026】
請求項6に記載の発明は、第1の伝送区間と前記第1の伝送区間よりも伝送遅延が大きい第2の伝送区間との間で、前記第1の伝送区間を介して伝送されたパケットを前記第2の伝送区間へ転送するパケット中継装置におけるパケット中継方法であって、前記転送されたパケットを受信する受信装置から通知された最大受信可能データ量を超えて、前記第1の伝送区間から受信したパケットを前記第2の伝送区間へ送信する過程と、前記第2の伝送区間へ転送済みのパケットを蓄えておき、この蓄えておいたパケットを使用して送達未確認パケットの再送を行う過程と、前記第2の伝送区間へ送信されたパケットについての送達確認応答パケットを、前記受信装置からの受信を待たずに代行して前記第1の伝送区間へ送信する過程と、前記第2の伝送区間へパケットを送信してから、該パケットの送達確認応答パケットを前記受信装置から受信するまでの往復遅延時間を計測する過程と、この往復遅延時間に基づいて、前記第2の伝送区間への最大送信可能データ量を増加または減少させる過程と、を含み、前記最大送信可能データ量は、前記最大受信可能データ量に一定の先送り可能なデータ量を加えた値、あるいは、最後に送達確認されたパケットから送信可能な最大データ量を示す輻輳ウインドウ、のいずれか小さい値であり、前記輻輳ウインドウが前記最大受信可能データ量よりも大きい値をとることができるようにしたことを特徴とする。
【0027】
請求項7に記載の発明は、送達未確認のパケットがあることを検出する過程と、送達未確認のパケットがあった場合に、最前の送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として設定し、前記再送を指示する輻輳回復過程とをさらに含み、前記輻輳回復過程は、前記受信装置から送達確認応答パケットを受信する毎に、順次、次の送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として設定する処理を含むことを特徴とする請求項6に記載のパケット中継方法である。
【0028】
請求項8に記載の発明は、前記輻輳回復過程は、再送タイムアウトによって前記検出がなされた場合には、前記再送された送達未確認パケットの送達確認応答パケットを受信するまで、該送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として使用し続ける処理をさらに含むことを特徴とする請求項7に記載のパケット中継方法である。
【0029】
請求項9に記載の発明は、前記受信装置からウインドウ閉塞通知を受信した場合、該通知受信時点からウインドウ回復通知受信時点までの時間を計測する過程と、この計測の結果、所定時間以上の経過を条件として前記再送を指示するウインドウ閉塞対処過程をさらに含むことを特徴とする請求項6乃至請求項8のいずれかの項に記載のパケット中継方法である。
【0030】
請求項10に記載の発明は、前記ウインドウ閉塞対処過程は、再送タイムアウトが発生した場合には、少なくとも一つの送達未確認パケットの再送を指示する処理をさらに含むことを特徴とする請求項9に記載のパケット中継方法である。
【0031】
【発明の実施の形態】
以下、図面を参照し、本発明の一実施形態について説明する。
図1は、本発明の一実施形態によるゲートウェイ(パケット中継装置)21を備えた衛星通信システムの全体構成を示すブロック図である。この図1において上記図12の各部に対応する部分には同一の符号を付け、その説明を省略する。
【0032】
図1の衛星通信システムにおいて、通信事業者システム2は、従来のゲートウェイ41の代わりに本発明の一実施形態によるゲートウェイ21を備える。この通信事業者システム2は、複数の加入者LANシステム3との間で一つの衛星回線6を共有して使用し、下り方向(通信事業者設備2から加入者LANシステム3へ)の通信を行う。一方、上り方向(加入者LANシステム3から通信事業者設備2へ)の通信については、加入者LANシステム3毎にそれぞれ個別の衛星回線7を使用して通信する。上記上りの衛星回線7は、下りの衛星回線6に比してデータ伝送速度が小さい。例えば、下りの衛星回線6は毎秒10Mビットのデータ伝送速度であり、上りの衛星回線7は毎秒64Kビットである。
【0033】
また、これら衛星回線6、7は伝送遅延時間が大きい回線である。例えば、上り下りの往復遅延時間は600m秒であり、これはインターネット5を利用した通信の往復遅延時間よりも大きい。
【0034】
図2は、図1に示すゲートウェイ21の構成を示すブロック図である。この図2に示すゲートウェイ21は、衛星回線6、7を利用して加入者LANシステム3との間でパケット通信を行う衛星回線対応通信部51と、インターネット5を利用してサーバ4との間でパケット通信を行うインターネット対応通信部52とから構成される。
【0035】
衛星回線対応通信部51は、インターネット対応通信部52から入力されたパケットを衛星回線6を介して端末31へ転送する。また、衛星回線7を介して受信したパケットについては、インターネット対応通信部52へ出力するが、送達確認応答パケットは廃棄する。
【0036】
インターネット対応通信部52は、サーバ4からインターネット5を介して受信したパケットを衛星回線対応通信部51に出力する。また、衛星回線対応通信部51から入力されたパケットをインターネット5へ出力する。また、サーバ4から受信したパケットについての送達確認応答パケットを生成し、該サーバ4へ送信する送達確認応答代行機能を有する。この送達確認応答代行機能は、サーバ4から端末31へ送信されたパケットについての送達確認応答パケットを、該端末31からの受信を待たずに代行して送信する機能である。この送達確認応答代行機能によって、図9に示すように、複数のパケット(DATA1〜5)についての送達確認応答パケット(FACK1〜5)が、端末31からの送達確認応答パケット(ACK1〜5)の受信前に、ゲートウェイ21からサーバ4へ送信される。
【0037】
図3は、図2に示す衛星回線対応通信部51の構成を示すブロック図である。この図3において、符号61は、インターネット対応通信部52から入力されたパケットを端末31へ転送するために、そのまま出力する送信処理部である。この送信処理部61は、端末31から通知された受信ウインドウサイズ(rwin;最大受信可能データ量)を超えて、サーバ4から受信したパケットを端末31へ送信する。また、送信処理部61は、送信したパケットをバッファ62に蓄積し、このバッファ62に蓄積したパケットを使用して送達未確認パケットの再送を行う。上記送信処理部61は、図9に示すように、インターネット対応通信部52から入力されたパケットDATA1〜5をそのまま端末31へ転送する。
【0038】
符号63は、端末31または衛星回線6、7等の輻輳状況に応じて送信処理部61の送信動作を制御する輻輳制御部である。この輻輳制御部63は、輻輳を回避するための処理を行う輻輳回避部66と、輻輳を回復させるための処理を行う輻輳回復部67と、端末31のウインドウ閉塞時における対処を行うウインドウ閉塞対処部68とから構成される。この輻輳制御部63は、端末31から送達確認応答パケットを受信すると、この送達確認応答パケットに含まれる受信ウインドウサイズを送信処理部61へ通知する。
【0039】
符号64は、端末31から受信したパケットをサーバ4へ転送するために、そのままインターネット対応通信部52へ出力する受信処理部である。ただし、送達確認応答パケットは廃棄し、出力しない。
【0040】
符号65は、送信処理部61から入力されたパケットを衛星ルータ22へ出力し、また、衛星ルータ22から入力されたパケットを輻輳制御部63および受信処理部64へ出力する送受インタフェース部である。この送受インタフェース部65から出力されたパケットは、衛星ルータ22および衛星アンテナ23により下り衛星回線6へ送出される。また、上り衛星回線7から入力されたパケットは、衛星アンテナ23および衛星ルータ22により送受インタフェース部65へ入力される。
【0041】
なお、上記衛星回線対応通信部52およびインターネット回線対応通信部52の各処理部は専用のハードウェアにより実現されるものであってもよく、また、これら処理部はメモリおよびCPU(中央処理装置)により構成され、各処理部の機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。
【0042】
次に、上記図3の送信処理部61および輻輳制御部63の動作について詳細に説明する。初めに、図4を参照して、送信処理部61がサーバ4から受信したパケットを端末31へ転送する動作を説明する。図4は、図3に示す送信処理部61が行うパケット転送処理の流れを示すフローチャートである。
先ず、送信処理部61は、TCPコネクションが確立すると、輻輳ウインドウ(cwnd)に予め設定されている初期値(cwnd_init)を設定する。この輻輳ウインドウ(cwnd)は、輻輳制御用のデータ送信制御値であって、最後に送達確認されたパケットから送信可能な最大データ量を示す値である。また、この輻輳ウインドウ(cwnd)は、輻輳制御部63に通知される(図4のステップS1、S2)。
【0043】
次いで、送信処理部61は、送信ウインドウ(sndwin;最大送信可能データ量)を(1)式により、端末31から通知された受信ウインドウサイズ(rwin)に一定の先送り可能なデータ量(winoffset)を加えた値、あるいは、輻輳ウインドウ(cwnd)のいずれか小さい値に決定する。送信処理部61は、この送信ウインドウ(sndwin)の範囲内において、受信ウインドウサイズ(rwin)を超えて端末31へパケットを送信可能である。
sndwin=min(rwin+winoffset,cwnd) …(1)
ただし、min(A,B)は、AまたはBのいずれか小さい値を示す。
【0044】
また、送信処理部61は、(2)式により、輻輳回避閾値(ssthresh)を決定する。この輻輳回避閾値(ssthresh)は、輻輳制御部63の動作状態である緩開始状態(slow_start)と輻輳回避状態(congestion_avoidance)とを切り替えるために使用されるものである。また、この輻輳回避閾値(ssthresh)は輻輳制御部63に通知される(図4のステップS3)。
ssthresh=c×winofsset/(確立中のTCPコネクション数) …(2)
ただし、確立中のTCPコネクション数とは、自身のコネクションに加えて他のコネクションも加味した値である。
cは予め設定された定数であり、その値cは、ゲートウェイ21の台数や、下り衛星回線6の共有形態に応じて決定する。
【0045】
次いで、送信処理部61は、上記送信ウインドウ(sndwin)の範囲内で、インターネット対応通信部52から入力されたパケットを端末31へ送信する。ここで、送信処理部61は、パケットを送信する度にその送信時刻を記録する。また、送信処理部61は、送信したパケットをバッファ62へ蓄積する。送信処理部61は、この送信動作を当該TCPコネクションが切断されるまで継続する(図4のステップS4、S5)。
【0046】
次に、図5を参照して、輻輳制御部63の輻輳回避部66が行う輻輳回避動作を説明する。図5は、図3に示す輻輳回避部66が行う輻輳回避処理の流れを示すフローチャートである。
先ず、輻輳回避部66は、端末31から送達確認応答(ACK)パケットを受信すると、このACKパケットに該当の送信パケットの送信時刻を送信処理部61から取得して、そのパケット送信からACKパケット受信迄の往復遅延時間(RTTreal)を求める(図5のステップS11、S12)。
【0047】
また、輻輳回避部66は、一定期間経過毎に、往復遅延時間(RTTreal)の総和を算出し、この総和から平均往復遅延時間(RTTave)を求める。ここで、往復遅延時間(RTTreal)の中で最小の値を基本往復遅延時間(BaseRTT)とする。(図5のステップS13、S14)。上記一定期間とは、前回、平均往復遅延時間(RTTave)を計算した時点における送信済データ(snd_nxt)が、全て送達確認されるまでの期間を指す。従って、ほぼ往復遅延時間毎に平均往復遅延時間(RTTave)の計算を行うことになる。
【0048】
次いで、輻輳回避部66は、(3)式により、前回、平均往復遅延時間(RTTave)を計算した時点からの、パケットの実送信レート(actual_rate)を算出する。
actual_rate=(snd_nxtnow-snd_nxtold)/(今回計算したRTTave)…(3)
ただし、snd_nxtnowは、今回の平均往復遅延時間(RTTave)を計算した時点における送信済データ量を示す。
snd_nxtoldは、前回の平均往復遅延時間(RTTave)を計算した時点における送信済データ量を示す。
【0049】
また、(4)式により、前回、平均往復遅延時間(RTTave)を計算した時点からの、パケットの予測送信レート(pred_rate)を算出する(図5のステップS15)。
pred_rate=(snd_nxtnow-(snd_una+max(ack_no-snd_una−MSS,0))/BaseRTT …(4)
ただし、ack_noはACKパケットのシーケンス番号を示す。
snd_unaはACパケット受信前における送信済パケットの最小シーケンス番号を示す。
MSSはTCPデータパケットの最大長を示す。
max(A,B)は、、AまたはBのいずれか大きい値を示す。
なお、(snd_una+max(ack_no-snd_una−MSS,0)は、snd_nxtoldに相当する値となる。
【0050】
次いで、輻輳回避部66は、現在の輻輳制御部63の動作状態が緩開始状態(slow_start)である場合、送信処理部61の輻輳ウインドウ(cwnd)を1増加させる。このように、ACKパケットの受信毎に輻輳ウインドウ(cwnd)を1増加させると、輻輳ウインドウ(cwnd)は指数関数的に増加することになる。
【0051】
次いで、輻輳回避部66は、輻輳ウインドウ(cwnd)が輻輳回避閾値(ssthresh)に達するか、あるいは、(5)式が成立した場合に、輻輳制御部63の動作状態を輻輳回避状態(congestion_avoidance)に移行させる(図5のステップS16〜S20)。
pred_rate-actual_rate≧α ・・・(5)
ただし、αは正の実数である。
【0052】
一方、輻輳回避部66は、現在の輻輳制御部63の動作状態が輻輳回避状態(congestion_avoidance)であった場合には、以下の(6)〜(8)のいずれかの処理を行う(図5のステップS21)。
(6)pred_rate-actual_rate>βである場合は、送信処理部61の輻輳ウインドウ(cwnd)を1減らす。ただし、βは正の実数である。
(7)pred_rate-actual_rate<αである場合は、以後のACKパケット受信毎に送信処理部61の輻輳ウインドウ(cwnd)を1/cwnd増やす。これにより、送信処理部61の輻輳ウインドウ(cwnd)は線形的に増加することになる。
(8)α<pred_rate-actual_late<βである場合は、送信処理部61の輻輳ウインドウ(cwnd)を変更しない。
【0053】
このように、輻輳回避部66は、輻輳回避状態(congestion_avoidance)において、往復遅延時間(RTTreal)に基づいて送信処理部61の輻輳ウインドウ(cwnd)を増減する。したがって、送信処理部61の送信ウインドウ(sndwin;最大送信可能データ量)が往復遅延時間(RTTreal)に基づいて増加または減少されることになる。
【0054】
上述した実施形態によれば、異なる伝送遅延を有した二つの伝送区間(インターネット回線区間および衛星回線区間)からなる伝送路において、遅延の大きな伝送区間(衛星回線区間)の影響を受けることなく伝送効率を向上することが可能である。さらに、遅延の大きな伝送区間の下り回線(衛星回線6)と上り回線(衛星回線7)のデータ伝送速度が非対称であった場合に、衛星回線区間の輻輳状況に応じてパケットの送信を行い、該伝送区間の輻輳を回避することが可能となる。この結果、データ伝送速度が小さい方の回線(衛星回線7)の輻輳により伝送効率が低下することを防止することができるという効果も得られる。
【0055】
次に、図6を参照して、輻輳制御部63の輻輳回復部67が行う第1の輻輳回復動作を説明する。図6は、図3に示す輻輳回復部67が行う第1の輻輳回復処理の流れを示すフローチャートである。
先ず、輻輳回復部67は、端末31から同一送信パケットについてのACKパケットを重複して受信すると、輻輳回避閾値(ssthresh)に、送信処理部61の輻輳ウインドウ(cwnd)の1/2の値を設定する。また、最前の送達未確認パケットを送信可能な最少のデータ量を送信処理部61の輻輳ウインドウ(cwnd)に設定する(図6のステップS31〜S33)。
【0056】
次いで、輻輳回復部67は、送信処理部61に対して送達未確認パケットがあれば再送を指示し、この指示によって送信処理部61は送達未確認パケットの再送を開始する(図6のステップS34)。
【0057】
次いで、輻輳回復部67は、端末31から再送パケットのACKパケットを受信すると、送信処理部61の輻輳ウインドウ(cwnd)に、輻輳回避閾値(ssthresh)の値を設定し、輻輳制御部63の動作状態を輻輳回避状態(congestion_avoidance)に移行させる(図6のステップS35、S38)。
【0058】
一方、再送パケットのACKパケットを未受信のまま、再度、ACKパケットを重複して受信すると、次の送達未確認パケットを送信可能な最少のデータ量分(増加レート分)を送信処理部61の輻輳ウインドウ(cwnd)に加え、送信処理部61に対して送達未確認パケットがあれば再送を指示する(図6のステップS36、S37)。これにより、送信処理部61の送信ウインドウ(sndwin;最大送信可能データ量)は、次の送達未確認パケットを送信可能な最少のデータ量となる。ただし、これは、その最少のデータ量が端末31の受信ウインドウサイズの範囲内であった場合であるが、一般的に、受信ウインドウサイズは一パケット分以上のデータ量として通知される。
【0059】
このように、端末31または衛星回線6等の輻輳により、例えば送信パケットが紛失して送達未確認のパケットが発生した場合には、再送パケットのACKパケットを受信するまで、端末31から重複したACKパケットを受信する毎に一パケットずつ順次、送達未確認パケットを再送する。
【0060】
例えば、図10に示すように、ゲートウェイ21が端末31の受信ウインドウサイズ分(DATA1、2)を超えてパケット(DATA3〜8)を先送りしたとする。ここで、端末31の輻輳によって送信パケット(DATA2)が紛失した場合には、当該パケット(DATA2)に加えて、既に先送り済みのパケット(DATA3〜8)も再送することになる。これらパケット(DATA2〜8)の再送の際に、本実施形態によれば、端末31からのACKパケット(ACK1;DATA1の送達確認応答パケット)を受信する毎に、1パケットずつ再送する。この結果、輻輳発生時には、端末31の受信可能速度(端末31の受信ウインドウサイズ)の範囲内で、パケットを再送することができるようになる。
なお、この図10の例では、送達確認応答パケット(ACK1)を重複して三つ受信したことにより、パケット(DATA2)の紛失を検出してパケットの再送を開始している。これは、TCPの通常の再送手順である。
【0061】
上述した実施形態によれば、遅延の大きな伝送区間(衛星回線区間)へパケットを再送する場合に、受信装置(端末31)の受信速度に合わせてパケットを再送することが可能となるので、パケット再送による輻輳の拡大を防止して輻輳からの回復時間を短縮することができるという効果が得られる。
【0062】
次に、図7を参照して、輻輳制御部63の輻輳回復部67が行う第2の輻輳回復動作を説明する。図7は、図3に示す輻輳回復部67が行う第2の輻輳回復処理の流れを示すフローチャートである。
先ず、輻輳回復部67は、再送タイムアウトが発生すると、以下の処理を行う。なお、送信処理部61は、送達確認対象のパケットを送信する毎に、再送タイマを起動しており、輻輳制御部63から当該パケットについてのACKパケット受信が通知されると、該再送タイマを停止する。したがって、送信したパケットについてのACKパケットが、再送タイムアウト時間までに受信されなかった場合には再送タイムアウトとなり、送信処理部61が輻輳回復部67へ再送タイムアウトの発生を通知する。
【0063】
初めに、輻輳回復部67は、輻輳回避閾値(ssthresh)に、送信処理部61の輻輳ウインドウ(cwnd)の1/2の値を設定し、また、最前の送達未確認パケットを送信可能な最少のデータ量を送信処理部61の輻輳ウインドウ(cwnd)に設定する(図7のステップS41〜S43)。これにより、送信処理部61の送信ウインドウ(sndwin;最大送信可能データ量)は、送達確認済みであるパケットの次の送達未確認パケットのみを送信可能な最少のデータ量となる。
【0064】
次いで、輻輳回復部67は、送信処理部61に対して送達未確認パケットを一パケットのみ再送するように指示し、この指示によって送信処理部61は送達未確認パケットを一パケットのみ再送する(図7のステップS44)。
【0065】
次いで、輻輳回復部67は、再送したパケットのACKパケットを端末31から受信するまで待つ。再送したパケットのACKパケットを端末31から受信すると、輻輳回復部67は、輻輳制御部63の動作状態を緩開始状態(slow_start)に移行させる(図7のステップS45、46)。
【0066】
このように本実施形態によれば、端末31または衛星回線6等の輻輳により、再送タイムアウトが発生した場合には、一つの送達未確認パケットの送達確認が完了するまで、次の送達未確認パケットを再送しない。このように、再送タイムアウトのように重度の輻輳発生時には、受信装置との間で相互に送達確認を行いながら一パケットずつ送達未確認パケットを再送するので、輻輳が拡大することがなく、結果的に、輻輳からの回復時間を短縮することができるという効果が得られる。
【0067】
次に、図8、図11を参照して、輻輳制御部63のウインドウ閉塞対処部68が行うウインドウ閉塞対処動作を説明する。図8は、図3に示すウインドウ閉塞対処部68が行うウインドウ閉塞対処処理の流れを示すフローチャートである。
初めに、図11に示すように、端末31がファイルのダウンロードをサーバ4に対して要求し、サーバ4からパケット(DATA)が送信される。ここで、ゲートウェイ21は、端末31の受信ウインドウサイズを超えて、通常転送分に加えて先送りのパケットを端末31に転送する。
【0068】
次いで、端末31は、受信ウインドウサイズの範囲内の通常転送分のパケットを蓄積し、ウインドウ閉塞状態になる。このウインドウ閉塞は、端末31の利用者からの入力待ち(ダウンロードするファイルについての出力先ファイル名の入力待ち)によるものである。このウインドウ閉塞時には、端末31は、受信したデータを廃棄するので、ゲートウェイ21から先送りされたパケットは廃棄される。また、端末31は、ウインドウ閉塞を通知するために、ウインドウ閉塞中にパケットを受信する度、winsize_field値が0であるACKパケット(以下、ZWAパケットと称する)を送信する。
【0069】
次いで、ウインドウ閉塞対処部68は、このZWAパケットを所定数連続して受信すると、このZWAパケットの受信時刻を記録する。また、ウインドウ閉塞からのウインドウ回復時に、緩開始状態(slow_start)で使用する輻輳回避閾値(ssthresh)として、(9)式により、値(old_ssthresh)を記録しておく(図8のステップS51〜S53)。
old_ssthresh=max(ssthresh,cwnd) ・・・(9)
これにより、緩開始状態(slow_start)で使用する輻輳回避閾値(ssthresh)の値が不必要に小さくなることを防ぐことができる。
【0070】
なお、ZWAパケットについては、上記図6の輻輳回復部67の第1の輻輳回復処理における重複したACKパケットには含めない。これにより、ウィンドウ閉塞中において、重複したZWAパケットの受信により、無駄なパケットの再送を防止することができる。また、ZWAパケットを送信処理部61の輻輳ウインドウ(cwnd)増加の対象とはしない。これにより、ウインドウ閉塞中に輻輳ウインドウ(cwnd)が拡大して新規にパケットが送信されることを防止することができる。
【0071】
なお、ZWAパケットを重複したACKパケット受信の対象にしないため、再送タイムアウトが発生するまでパケット紛失が検出できない可能性も考えられる。しかし、ゲートウェイ21では、先送りにより多数のパケットを送信するため、端末31の一時的な受信ウインドウ閉塞の場合は、受信ウインドウ回復後に、ZWAパケットではなく、受信ウインドウサイズを含んだ(winsize_field値が0ではない)ACKパケットが検出できると考えられるので、特に問題は生じない。
【0072】
次いで、端末31にファイル名が入力され、端末31がウインドウ閉塞からウインドウ開状態になり、ウインドウ閉塞対処部68は、端末31からウインドウ開通知のACKパケットを受信すると、記録しておいたZWAパケットの受信時刻からの経過時間と閾値(Thr_ztm)を比較する。この比較の結果、閾値を越えていた場合に、ウインドウ閉塞対処部68は、送信処理部61の輻輳ウインドウ(cwnd)に初期値(cwnd_init)を設定し、また、輻輳回避閾値(ssthresh)に記録しておいた値(old_ssthresh)を設定する(図8のステップS54〜S57)。
【0073】
次いで、ウインドウ閉塞対処部68は、輻輳制御部63の動作状態を緩開始状態(slow_start)に移行し、送信処理部61に対して送達未確認パケットの再送を指示する。この指示によって送信処理部61は送達未確認パケットの再送を開始する(図8のステップS58)。
【0074】
一方、上記ステップS55の比較の結果、閾値を越えていなかった場合には、ウインドウ閉塞対処部68は、記録しておいたZWAパケットの受信時刻をリセットし、その処理を終了する(図8のステップS61)。
【0075】
また、ウインドウ閉塞から回復する前に、再送タイムアウトが発生した場合には、ウインドウ閉塞対処部68は、送信処理部61の輻輳ウインドウ(cwnd)にに1を設定して、送達未確認パケットを1パケットのみ再送するように指示する(図8のステップS59、S60)。これにより、ウインドウ開通知のACKパケットの受信を待つことなく、いち早く端末31がウインドウ閉塞から回復したか確認することができる。この結果として、パケットの再送完了までの時間を短縮することができるという効果が得られる。
【0076】
上述した実施形態によれば、無駄なパケットを送信することがなくなるので、受信装置(端末31)のウインドウ閉塞により紛失したパケットの再送を効率よく行うことができる。また、再送パケットを伝送する下り回線(衛星回線6)を共有している場合には、無駄なパケットを送信することによってその下り回線の伝送効率が低下するという問題も解消する。
【0077】
なお、上述した実施形態においては、送信処理部がパケット転送手段に対応する。また、インターネット回線対応通信部が送達確認応答代行手段として機能する。また、第1の伝送区間がインターネット回線区間に対応し、第2の伝送区間が衛星回線区間に対応する。
【0078】
なお、上述した実施形態においては、上り回線と下り回線のデータ伝送速度が非対称な伝送路として衛星回線を適用したが、他の伝送路にも同様に適用可能である。このような非対称な伝送路としては、例えば、移動通信網における移動端末と基地局間の通信回線がある。
【0079】
以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【0080】
【発明の効果】
以上説明したように、本発明によれば、第1の伝送区間からこの第1の伝送区間よりも伝送遅延が大きい第2の伝送区間へ転送されたパケットを受信する受信装置から通知された最大受信可能データ量を超えて、第1の伝送区間から受信したパケットを第2の伝送区間へ送信し、また、バッファ手段に蓄積した転送済みのパケットを使用して送達未確認パケットの再送を行い、また、第2の伝送区間へ送信されたパケットについての送達確認応答パケットを、該受信装置からの受信を待たずに代行して第1の伝送区間へ送信する。これにより、異なる伝送遅延を有した二つの伝送区間からなる伝送路において、遅延の大きな伝送区間の影響を受けることなく伝送効率を向上することが可能である。さらに、第2の伝送区間へパケットを送信してから、該パケットの送達確認応答パケットを該受信装置から受信するまでの往復遅延時間に基づいて、第2の伝送区間への最大送信可能データ量を増加または減少させるようにしたので、遅延の大きな伝送区間の下り回線と上り回線のデータ伝送速度が非対称であった場合に、遅延の大きな伝送区間の輻輳状況に応じてパケットの送信を行い、該伝送区間の輻輳を回避することが可能となる。この結果、データ伝送速度が小さい方の回線の輻輳により伝送効率が低下することを防止することができるという効果も得られる。
【0081】
さらに、送達未確認のパケットがあることを検出した場合に、最前の送達未確認パケットを送信可能な最少のデータ量を最大送信可能データ量として設定し、送達未確認パケットの再送を指示し、受信装置から送達確認応答パケットを受信する毎に、順次、次の送達未確認パケットを送信可能な最少のデータ量を最大送信可能データ量として設定するようにすれば、遅延の大きな伝送区間へパケットを再送する場合に、受信装置の受信速度に合わせてパケットを再送することが可能となるので、パケット再送による輻輳の拡大を防止して輻輳からの回復時間を短縮することができるという効果が得られる。
【0082】
さらに、再送タイムアウトによって送達未確認のパケットがあることの検出がなされた場合には、再送された送達未確認パケットの送達確認応答パケットを受信するまで、該送達未確認パケットを送信可能な最少のデータ量を最大送信可能データ量として使用し続けるようにすれば、一つの送達未確認パケットの送達確認が完了するまで、次の送達未確認パケットを再送しなくすることができる。このように、再送タイムアウトのように重度の輻輳発生時には、受信装置との間で相互に送達確認を行いながら一パケットずつ送達未確認パケットを再送するので、輻輳が拡大することがなく、結果的に、輻輳からの回復時間を短縮することができるという効果が得られる。
【0083】
また、受信装置からウインドウ閉塞通知を受信した場合、該通知受信時点からウインドウ回復通知受信時点までの時間を計測し、この計測の結果、所定時間以上の経過を条件として送達未確認パケットの再送を指示するようにすれば、無駄なパケットを送信することがなくなるので、受信装置のウインドウ閉塞により紛失したパケットの再送を効率よく行うことができる。また、再送パケットを伝送する下り回線を共有している場合には、無駄なパケットを送信することによってその下り回線の伝送効率が低下するという問題も解消する。
【0084】
さらに、再送タイムアウトが発生した場合には、少なくとも一つの送達未確認パケットの再送を指示するようにすれば、ウインドウ開通知の送達確認応答パケット(ACKパケット)の受信を待つことなく、いち早く受信装置がウインドウ閉塞から回復したか確認することができる。この結果として、パケットの再送完了までの時間を短縮することができるという効果が得られる。
【図面の簡単な説明】
【図1】 本発明の一実施形態によるパケット中継装置(ゲートウェイ)21を備えた衛星通信システムの全体構成を示すブロック図である。
【図2】 図1に示すゲートウェイ21の構成を示すブロック図である。
【図3】 図2に示す衛星回線対応通信部51の構成を示すブロック図である。
【図4】 図3に示す送信処理部61が行うパケット転送処理の流れを示すフローチャートである。
【図5】 図3に示す輻輳回避部66が行う輻輳回避処理の流れを示すフローチャートである。
【図6】 図3に示す輻輳回復部67が行う第1の輻輳回復処理の流れを示すフローチャートである。
【図7】 図3に示す輻輳回復部67が行う第2の輻輳回復処理の流れを示すフローチャートである。
【図8】 図3に示すウインドウ閉塞対処部68が行うウインドウ閉塞対処処理の流れを示すフローチャートである。
【図9】 図1に示すゲートウェイ21の動作を説明するための第1のシーケンス図である。
【図10】 図1に示すゲートウェイ21の動作を説明するための第2のシーケンス図である。
【図11】 図1に示すゲートウェイ21の動作を説明するための第3のシーケンス図である。
【図12】 従来のパケット中継装置(ゲートウェイ)41を備えた衛星通信システムの全体構成を示すブロック図である。
【図13】 図12に示すゲートウェイ41の動作を説明するためのシーケンス図である。
【符号の説明】
1 通信衛星
2 通信事業者システム
3 加入者LANシステム
4 サーバ
5 インターネット
6、7 衛星回線
21 パケット中継装置(ゲートウェイ)
22 衛星ルータ
23 衛星アンテナ
31 端末
32 LAN
51 衛星回線対応通信部
52 インターネット回線対応通信部
61 送信処理部
62 バッファ
63 輻輳制御部
64 受信処理部
65 送受インタフェース部
66 輻輳回避部
67 輻輳回復部
68 ウインドウ閉塞対処部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a packet relay apparatus that relays a packet between two transmission sections having different transmission delays, and a method thereof.
[0002]
[Prior art]
As a conventional packet relay device that relays a packet between two transmission sections having different transmission delays, for example, a device described in JP-A-11-252179 is known. FIG. 12 is a block diagram showing the overall configuration of a satellite communication system provided with this conventional packet relay device (gateway) 41.
[0003]
In FIG. 12,
[0004]
[0005]
In the satellite communication system of FIG. 12, the telecommunications carrier system 2 shares one satellite line 6 with a plurality of subscriber LAN systems 3 and uses it in the downstream direction (from the telecommunications carrier equipment 2 to the subscribers). To the LAN system 3). On the other hand, for communication in the upstream direction (from the subscriber LAN system 3 to the communication carrier facility 2), communication is performed using a
[0006]
These
[0007]
The
[0008]
Instead, the
[0009]
Further, the
[0010]
As described above, the
[0011]
[Problems to be solved by the invention]
However, the conventional packet relay apparatus described above is based on the premise that both the downlink and the uplink in the transmission section with a large delay have a sufficient data transmission rate. For this reason, when the data transmission rate of the downlink and the uplink in the transmission section with a large delay is asymmetric, the channel with the smaller data transmission rate is congested, resulting in a problem that the transmission efficiency is lowered.
[0012]
In the satellite communication system shown in FIG. 12, the
[0013]
In some cases, a plurality of
[0014]
In addition, the conventional packet relay device transmits a packet exceeding the reception window size (maximum receivable data amount) of the receiving device even when the packet is retransmitted to a transmission section with a large delay. For this reason, there is another problem that uplink congestion occurs and it takes time to recover from the congestion.
[0015]
In the satellite communication system of FIG. 12, for example, as shown in FIG. 13, the
[0016]
Here, the
[0017]
In addition, when the terminal 31 closes the window for some reason and does not receive a packet, the terminal 31 discards the packet postponed by the
[0018]
The present invention has been made in view of such circumstances, and its object is to achieve transmission efficiency without being affected by a transmission section having a large delay in a transmission path composed of two transmission sections having different transmission delays. If the data transmission rate of the downlink and uplink in the transmission section with a large delay is asymmetric, the transmission efficiency decreases due to the congestion of the channel with the lower data transmission rate. It is an object of the present invention to provide a packet relay apparatus and a method thereof that can prevent this.
[0019]
Furthermore, another object of the present invention is to provide a packet relay apparatus and method for reducing the recovery time from congestion when a packet is retransmitted to a transmission section having a large delay.
[0020]
It is another object of the present invention to provide a packet relay apparatus and method for efficiently retransmitting a packet lost due to the window closing of the receiving apparatus.
[0021]
[Means for Solving the Problems]
In order to solve the above problems, the invention according to
[0022]
According to the second aspect of the present invention, when it is detected that there is an unacknowledged packet, the minimum data amount that can transmit the previous unacknowledged packet is set as the maximum transmittable data amount, and the packet transfer means Congestion recovery means for sequentially setting the minimum data amount that can transmit the next unacknowledged packet as the maximum transmittable data amount each time the retransmission is instructed and a delivery confirmation response packet is received from the receiving device. The packet relay device according to
[0023]
According to a third aspect of the present invention, the congestion recovery means transmits the unconfirmed delivery packet until receiving a delivery confirmation response packet of the retransmitted unconfirmed packet when the detection is made due to a retransmission timeout. 3. The packet relay device according to claim 2, wherein the smallest possible data amount is continuously used as the maximum transmittable data amount.
[0024]
According to a fourth aspect of the present invention, when a window closing notification is received from the receiving device, the time from the notification receiving time to the window recovery notification receiving time is measured. 4. The packet relay device according to
[0025]
The invention according to
[0026]
According to a sixth aspect of the present invention, there is provided a packet transmitted through the first transmission section between the first transmission section and a second transmission section having a transmission delay larger than that of the first transmission section. Is a packet relay method in a packet relay apparatus that transfers the packet to the second transmission section, and exceeds the maximum receivable data amount notified from the receiving apparatus that receives the transferred packet, and the first transmission section The process of transmitting the packet received from the second transmission section and the packet transferred to the second transmission section are stored, and the unconfirmed delivery packet is retransmitted using the stored packet. A process of transmitting an acknowledgment packet for a packet transmitted to the second transmission section to the first transmission section on behalf of the packet without waiting for reception from the receiving apparatus; A process of measuring a round-trip delay time from when a packet is transmitted to the transmission section until reception of the packet acknowledgment response packet from the receiving device, and based on the round-trip delay time, the second transmission section Increasing or decreasing the maximum amount of data that can be transmitted to The maximum transmittable data amount is a value obtained by adding a certain amount of data that can be forwarded to the maximum receivable data amount, or a congestion window indicating the maximum data amount that can be transmitted from a packet that has been confirmed to be delivered last, The congestion window can take a value larger than the maximum receivable data amount. It is characterized by that.
[0027]
The invention according to
[0028]
In the invention according to claim 8, in the congestion recovery process, when the detection is performed due to a retransmission timeout, the delivery unconfirmed packet is transmitted until a delivery confirmation response packet of the retransmitted unconfirmed packet is received. The packet relay method according to
[0029]
According to the ninth aspect of the present invention, when a window closing notification is received from the receiving device, a process of measuring a time from the notification receiving time to a window recovery notification receiving time, and a lapse of a predetermined time or more as a result of the measurement The packet relay method according to any one of claims 6 to 8, further comprising a window blockage coping process instructing the retransmission on the condition of.
[0030]
The invention according to claim 10 is characterized in that the window blocking countermeasure process further includes a process of instructing retransmission of at least one unacknowledged packet when a retransmission timeout occurs. This is a packet relay method.
[0031]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing an overall configuration of a satellite communication system including a gateway (packet relay device) 21 according to an embodiment of the present invention. In FIG. 1, portions corresponding to the respective portions in FIG. 12 are given the same reference numerals, and description thereof is omitted.
[0032]
In the satellite communication system of FIG. 1, the carrier system 2 includes a
[0033]
These
[0034]
FIG. 2 is a block diagram showing a configuration of the
[0035]
The satellite line
[0036]
The internet
[0037]
FIG. 3 is a block diagram showing the configuration of the satellite channel
[0038]
Reference numeral 63 denotes a congestion control unit that controls the transmission operation of the transmission processing unit 61 in accordance with the congestion status of the terminal 31 or the
[0039]
[0040]
[0041]
The processing units of the satellite line
[0042]
Next, operations of the transmission processing unit 61 and the congestion control unit 63 in FIG. 3 will be described in detail. First, with reference to FIG. 4, an operation in which the transmission processing unit 61 transfers a packet received from the
First, when the TCP connection is established, the transmission processing unit 61 sets an initial value (cwnd_init) set in advance in the congestion window (cwnd). This congestion window (cwnd) is a data transmission control value for congestion control, and is a value indicating the maximum amount of data that can be transmitted from a packet that has been confirmed to be delivered last. The congestion window (cwnd) is notified to the congestion control unit 63 (steps S1 and S2 in FIG. 4).
[0043]
Next, the transmission processing unit 61 sets the transmission window (sndwin; maximum transmittable data amount) to a certain amount of data that can be forwarded (winoffset) to the reception window size (rwin) notified from the terminal 31 by the equation (1). The added value or the congestion window (cwnd) is determined to be the smaller value. The transmission processing unit 61 can transmit a packet to the terminal 31 exceeding the reception window size (rwin) within the range of the transmission window (sndwin).
sndwin = min (rwin + winoffset, cwnd) (1)
However, min (A, B) indicates a smaller value of either A or B.
[0044]
Further, the transmission processing unit 61 determines a congestion avoidance threshold (ssthresh) according to equation (2). This congestion avoidance threshold (ssthresh) is used to switch between a slow start state (slow_start) and a congestion avoidance state (congestion_avoidance), which are the operation states of the congestion control unit 63. Further, the congestion avoidance threshold (ssthresh) is notified to the congestion control unit 63 (step S3 in FIG. 4).
ssthresh = c × winofsset / (number of TCP connections being established) (2)
However, the number of established TCP connections is a value that takes into account other connections in addition to its own connection.
c is a preset constant, and the value c is determined according to the number of
[0045]
Next, the transmission processing unit 61 transmits the packet input from the Internet
[0046]
Next, the congestion avoiding operation performed by the
First, when receiving the acknowledgment (ACK) packet from the terminal 31, the
[0047]
In addition, the
[0048]
Next, the
actual_rate = (snd_nxtnow-snd_nxtold) / (RTTave calculated this time)… (3)
However, snd_nxtnow indicates the amount of transmitted data at the time of calculating the current average round-trip delay time (RTTave).
snd_nxtold indicates the amount of transmitted data when the previous average round-trip delay time (RTTave) is calculated.
[0049]
Further, the predicted transmission rate (pred_rate) of the packet from the time when the average round-trip delay time (RTTave) was calculated last time is calculated by the equation (4) (step S15 in FIG. 5).
pred_rate = (snd_nxtnow- (snd_una + max (ack_no-snd_una-MSS, 0)) / BaseRTT (4)
Here, ack_no indicates the sequence number of the ACK packet.
snd_una indicates the minimum sequence number of the transmitted packet before the AC packet is received.
MSS indicates the maximum length of the TCP data packet.
max (A, B) indicates a larger value of A or B.
Note that (snd_una + max (ack_no-snd_una-MSS, 0)) is a value corresponding to snd_nxtold.
[0050]
Next, when the current operation state of the congestion control unit 63 is the slow start state (slow_start), the
[0051]
Next, when the congestion window (cwnd) reaches the congestion avoidance threshold value (ssthresh) or when the expression (5) is satisfied, the
pred_rate-actual_rate ≧ α (5)
Here, α is a positive real number.
[0052]
On the other hand, when the current operation state of the congestion control unit 63 is the congestion avoidance state (congestion_avoidance), the
(6) When pred_rate-actual_rate> β, the congestion window (cwnd) of the transmission processing unit 61 is decreased by 1. Here, β is a positive real number.
(7) pred_rate-actual_rate If <α, the congestion window (cwnd) of the transmission processing unit 61 is increased by 1 / cwnd every time an ACK packet is received thereafter. As a result, the congestion window (cwnd) of the transmission processing unit 61 increases linearly.
(8) α <pred_rate-actual_late If <β, the congestion window (cwnd) of the transmission processing unit 61 is not changed.
[0053]
As described above, the
[0054]
According to the above-described embodiment, transmission is performed without being affected by a transmission section (satellite line section) having a large delay in a transmission path composed of two transmission sections (internet line section and satellite line section) having different transmission delays. Efficiency can be improved. Further, when the data transmission speed of the downlink (satellite line 6) and the uplink (satellite line 7) in the transmission section with a large delay is asymmetric, the packet is transmitted according to the congestion state of the satellite line section, It becomes possible to avoid congestion in the transmission section. As a result, it is possible to prevent the transmission efficiency from being lowered due to the congestion of the line (satellite line 7) having the lower data transmission rate.
[0055]
Next, a first congestion recovery operation performed by the
First, when the
[0056]
Next, the
[0057]
Next, when receiving the ACK packet of the retransmission packet from the terminal 31, the
[0058]
On the other hand, if the ACK packet is received again without receiving the ACK packet of the retransmission packet, the minimum amount of data (increase rate) that can transmit the next unacknowledged packet is congested by the transmission processing unit 61. In addition to the window (cwnd), if there is an unconfirmed delivery packet, the transmission processing unit 61 is instructed to retransmit (steps S36 and S37 in FIG. 6). Thereby, the transmission window (sndwin; maximum transmittable data amount) of the transmission processing unit 61 becomes the minimum data amount that can transmit the next unconfirmed delivery packet. However, this is a case where the minimum data amount is within the range of the reception window size of the terminal 31, but generally the reception window size is notified as a data amount of one packet or more.
[0059]
In this way, when the terminal 31 or the satellite circuit 6 is congested, for example, when a transmission packet is lost and an unacknowledged packet is generated, duplicate ACK packets are received from the terminal 31 until the ACK packet of the retransmission packet is received. Each time a packet is received, the unconfirmed delivery packet is retransmitted sequentially one packet at a time.
[0060]
For example, as illustrated in FIG. 10, it is assumed that the
In the example of FIG. 10, since three acknowledgment packets (ACK1) are received in duplicate, the loss of the packet (DATA2) is detected and packet retransmission is started. This is a normal retransmission procedure of TCP.
[0061]
According to the above-described embodiment, when a packet is retransmitted to a transmission section (satellite line section) having a large delay, the packet can be retransmitted in accordance with the reception speed of the receiving device (terminal 31). It is possible to prevent the increase of congestion due to retransmission and shorten the recovery time from the congestion.
[0062]
Next, a second congestion recovery operation performed by the
First, the
[0063]
First, the
[0064]
Next, the
[0065]
Next, the
[0066]
As described above, according to this embodiment, when a retransmission timeout occurs due to congestion of the terminal 31 or the satellite line 6 or the like, the next unacknowledged packet is retransmitted until the delivery confirmation of one unacknowledged packet is completed. do not do. In this way, when severe congestion such as retransmission timeout occurs, the unacknowledged packet is retransmitted one packet at a time while confirming delivery with the receiving device, so congestion does not increase, and as a result The effect that the recovery time from congestion can be shortened is obtained.
[0067]
Next, with reference to FIG. 8 and FIG. 11, the window blockage coping operation performed by the window
First, as shown in FIG. 11, the terminal 31 requests the
[0068]
Next, the terminal 31 accumulates packets for normal transfer within the range of the reception window size and enters a window closed state. This window blockage is caused by waiting for input from the user of the terminal 31 (waiting for input of an output destination file name for a file to be downloaded). When the window is closed, the terminal 31 discards the received data, so that the packet forwarded from the
[0069]
Next, when a predetermined number of the ZWA packets are continuously received, the window
old_ssthresh = max (ssthresh, cwnd) (9)
Thereby, it is possible to prevent the congestion avoidance threshold value (ssthresh) used in the slow start state (slow_start) from becoming unnecessarily small.
[0070]
Note that the ZWA packet is not included in the duplicate ACK packet in the first congestion recovery process of the
[0071]
Since ZWA packets are not targeted for receiving duplicate ACK packets, there is a possibility that packet loss cannot be detected until a retransmission timeout occurs. However, since the
[0072]
Next, when the file name is input to the terminal 31, the terminal 31 changes from the window closing to the window opening state, and the window
[0073]
Next, the window
[0074]
On the other hand, as a result of the comparison in step S55, if the threshold value is not exceeded, the window
[0075]
If a retransmission timeout occurs before recovery from window blockage, the window
[0076]
According to the above-described embodiment, useless packets are not transmitted, so that packets lost due to the window closing of the receiving device (terminal 31) can be efficiently retransmitted. Further, when the downlink (satellite line 6) for transmitting the retransmission packet is shared, the problem that the transmission efficiency of the downlink is reduced by transmitting a useless packet is also solved.
[0077]
In the above-described embodiment, the transmission processing unit corresponds to the packet transfer unit. In addition, the communication unit corresponding to the Internet line functions as a delivery confirmation response proxy means. Further, the first transmission section corresponds to the Internet line section, and the second transmission section corresponds to the satellite line section.
[0078]
In the above-described embodiment, the satellite channel is applied as a transmission channel in which the uplink and downlink data transmission rates are asymmetric. However, the present invention can be similarly applied to other transmission channels. Such an asymmetric transmission path includes, for example, a communication line between a mobile terminal and a base station in a mobile communication network.
[0079]
The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes design changes and the like within a scope not departing from the gist of the present invention.
[0080]
【The invention's effect】
As described above, according to the present invention, the maximum notified from the receiving apparatus that receives the packet transferred from the first transmission section to the second transmission section having a transmission delay larger than that of the first transmission section. Transmit the packet received from the first transmission section to the second transmission section exceeding the receivable data amount, and retransmit the unconfirmed delivery packet using the transferred packet stored in the buffer means, In addition, a delivery confirmation response packet for a packet transmitted to the second transmission section is transmitted to the first transmission section instead of waiting for reception from the receiving apparatus. Thereby, it is possible to improve transmission efficiency without being affected by a transmission section having a large delay in a transmission path including two transmission sections having different transmission delays. Furthermore, the maximum amount of data that can be transmitted to the second transmission section based on the round-trip delay time from when the packet is transmitted to the second transmission section until the reception acknowledgment packet of the packet is received from the receiving device Since the data transmission speed of the downlink and the uplink of the transmission section with a large delay is asymmetric, the packet is transmitted according to the congestion situation of the transmission section with a large delay, It becomes possible to avoid congestion in the transmission section. As a result, it is possible to prevent the transmission efficiency from being lowered due to the congestion of the line with the lower data transmission rate.
[0081]
Further, when it is detected that there is an unacknowledged packet, the minimum amount of data that can be transmitted in the previous unacknowledged packet is set as the maximum transmittable data amount, the retransmission of the unacknowledged packet is instructed, and the receiving device Each time a delivery confirmation response packet is received, if the minimum amount of data that can be transmitted in the next unacknowledged packet is set as the maximum transmittable data amount, the packet is resent to a transmission section with a large delay. In addition, since the packet can be retransmitted in accordance with the reception speed of the receiving apparatus, it is possible to prevent an increase in congestion due to the packet retransmission and shorten the recovery time from the congestion.
[0082]
Furthermore, when it is detected that there is an unacknowledged packet due to a retransmission timeout, the minimum amount of data that can be transmitted until the unacknowledged packet of the resent unacknowledged packet is received. By continuing to use it as the maximum transmittable data amount, it is possible to prevent the next unacknowledged packet from being retransmitted until the delivery confirmation of one unacknowledged packet is completed. In this way, when severe congestion such as retransmission timeout occurs, the unacknowledged packet is retransmitted one packet at a time while confirming delivery with the receiving device, so congestion does not increase, and as a result The effect that the recovery time from congestion can be shortened is obtained.
[0083]
In addition, when a window closing notification is received from the receiving device, the time from the notification reception time to the window recovery notification reception time is measured, and as a result of this measurement, the retransmission of unconfirmed delivery packets is instructed on the condition that a predetermined time or more has elapsed By doing so, unnecessary packets are not transmitted, so that packets lost due to window closing of the receiving apparatus can be efficiently retransmitted. In addition, when the downlink that transmits the retransmission packet is shared, the problem that the transmission efficiency of the downlink is reduced by transmitting a useless packet is also solved.
[0084]
Further, when a retransmission timeout occurs, if the retransmission of at least one unacknowledged packet is instructed, the receiving apparatus can promptly receive without waiting for the receipt of the acknowledgment response packet (ACK packet) of the window opening notification. It is possible to confirm whether or not the window has been recovered. As a result, it is possible to shorten the time until completion of packet retransmission.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an overall configuration of a satellite communication system including a packet relay device (gateway) 21 according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of a
3 is a block diagram showing a configuration of a satellite channel
4 is a flowchart showing a flow of packet transfer processing performed by a transmission processing unit 61 shown in FIG.
FIG. 5 is a flowchart showing a flow of congestion avoidance processing performed by the
6 is a flowchart showing a flow of a first congestion recovery process performed by a
FIG. 7 is a flowchart showing a flow of second congestion recovery processing performed by the
FIG. 8 is a flowchart showing a flow of window blocking countermeasure processing performed by the window
FIG. 9 is a first sequence diagram for explaining an operation of
FIG. 10 is a second sequence diagram for explaining the operation of the
FIG. 11 is a third sequence diagram for explaining the operation of the
FIG. 12 is a block diagram showing the overall configuration of a satellite communication system including a conventional packet relay device (gateway) 41.
13 is a sequence diagram for explaining the operation of the
[Explanation of symbols]
1 Communication satellite
2 Telecommunications carrier system
3. Subscriber LAN system
4 servers
5 Internet
6, 7 Satellite line
21 Packet relay device (gateway)
22 Satellite router
23 Satellite antenna
31 terminals
32 LAN
51 Communication part for satellite communication
52 Communication Department for Internet Line
61 Transmission processor
62 buffers
63 Congestion control unit
64 Reception processing unit
65 Transmission / Reception Interface Unit
66 Congestion Avoidance Unit
67 Congestion recovery unit
68 Window Blocking Countermeasure
Claims (10)
前記第2の伝送区間へ転送済みのパケットを蓄えておくバッファ手段と、
前記転送されたパケットを受信する受信装置から通知された最大受信可能データ量を超えて、前記第1の伝送区間から受信したパケットを前記第2の伝送区間へ送信し、また、前記バッファ手段内のパケットを使用して送達未確認パケットの再送を行うパケット転送手段と、
前記第2の伝送区間へ送信されたパケットについての送達確認応答パケットを、前記受信装置からの受信を待たずに代行して前記第1の伝送区間へ送信する送達確認応答代行手段と、
前記第2の伝送区間へパケットを送信してから、該パケットの送達確認応答パケットを前記受信装置から受信するまでの往復遅延時間に基づいて、前記パケット転送手段の最大送信可能データ量を増加または減少させる輻輳回避手段と、を具備し、
前記最大送信可能データ量は、前記最大受信可能データ量に一定の先送り可能なデータ量を加えた値、あるいは、最後に送達確認されたパケットから送信可能な最大データ量を示す輻輳ウインドウ、のいずれか小さい値であり、
前記輻輳ウインドウが前記最大受信可能データ量よりも大きい値をとることができるようにしたことを特徴とするパケット中継装置。A packet transmitted through the first transmission section is transferred to the second transmission section between the first transmission section and a second transmission section having a transmission delay larger than that of the first transmission section. A packet relay device,
Buffer means for storing packets transferred to the second transmission section;
The packet received from the first transmission section exceeds the maximum receivable data amount notified from the receiving apparatus that receives the transferred packet, and is transmitted to the second transmission section. Packet transfer means for retransmitting undelivered packets using the packets of
A delivery confirmation response proxy means for sending a delivery confirmation response packet for a packet transmitted to the second transmission section to the first transmission section instead of waiting for reception from the reception device;
Increase the maximum transmittable data amount of the packet transfer means based on the round-trip delay time from when the packet is transmitted to the second transmission period until the packet is received from the receiving device. A congestion avoiding means for reducing ,
The maximum transmittable data amount is a value obtained by adding a certain amount of data that can be forwarded to the maximum receivable data amount, or a congestion window indicating the maximum data amount that can be transmitted from a packet that has been confirmed to be delivered last. Or a small value,
A packet relay apparatus characterized in that the congestion window can take a value larger than the maximum receivable data amount .
を具備することを特徴とする請求項1に記載のパケット中継装置。When it is detected that there is an unacknowledged packet, the minimum amount of data that can be transmitted by the previous unacknowledged packet is set as the maximum transmittable data amount, the retransmission is instructed to the packet transfer means, and the reception A congestion recovery means for setting, as the maximum transmittable data amount, a minimum data amount capable of sequentially transmitting a next unacknowledged packet every time a delivery confirmation response packet is received from a device. 1. The packet relay device according to 1.
再送タイムアウトによって前記検出がなされた場合には、前記再送された送達未確認パケットの送達確認応答パケットを受信するまで、該送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として使用し続ける
ことを特徴とする請求項2に記載のパケット中継装置。The congestion recovery means includes
When the detection is performed due to a retransmission timeout, the minimum amount of data that can be transmitted in the unacknowledged packet is used as the maximum amount of data that can be transmitted until the acknowledgment packet of the resent unacknowledged packet is received. The packet relay device according to claim 2, wherein the packet relay device continues.
を具備することを特徴とする請求項1乃至請求項3のいずれかの項に記載のパケット中継装置。When a window closing notification is received from the receiving device, the time from the notification receiving time to the window recovery notification receiving time is measured, and as a result of this measurement, the retransmission is sent to the packet transfer means on the condition that a predetermined time or more has passed. The packet relay apparatus according to any one of claims 1 to 3, further comprising: a window blocking countermeasure unit that instructs.
再送タイムアウトが発生した場合には、前記パケット転送手段に少なくとも一つの送達未確認パケットの再送を指示する
ことを特徴とする請求項4に記載のパケット中継装置。The window closing countermeasure means
The packet relay device according to claim 4, wherein when a retransmission timeout occurs, the packet transfer unit is instructed to retransmit at least one unacknowledged packet.
前記転送されたパケットを受信する受信装置から通知された最大受信可能データ量を超えて、前記第1の伝送区間から受信したパケットを前記第2の伝送区間へ送信する過程と、
前記第2の伝送区間へ転送済みのパケットを蓄えておき、この蓄えておいたパケットを使用して送達未確認パケットの再送を行う過程と、
前記第2の伝送区間へ送信されたパケットについての送達確認応答パケットを、前記受信装置からの受信を待たずに代行して前記第1の伝送区間へ送信する過程と、
前記第2の伝送区間へパケットを送信してから、該パケットの送達確認応答パケットを前記受信装置から受信するまでの往復遅延時間を計測する過程と、
この往復遅延時間に基づいて、前記第2の伝送区間への最大送信可能データ量を増加または減少させる過程と、を含み、
前記最大送信可能データ量は、前記最大受信可能データ量に一定の先送り可能なデータ量を加えた値、あるいは、最後に送達確認されたパケットから送信可能な最大データ量を示す輻輳ウインドウ、のいずれか小さい値であり、
前記輻輳ウインドウが前記最大受信可能データ量よりも大きい値をとることができるようにしたことを特徴とするパケット中継方法。A packet transmitted through the first transmission section is transferred to the second transmission section between the first transmission section and a second transmission section having a transmission delay larger than that of the first transmission section. A packet relay method in the packet relay device,
Transmitting the packet received from the first transmission section to the second transmission section in excess of the maximum receivable data amount notified from the receiving device that receives the transferred packet;
Storing a packet that has been transferred to the second transmission section, and retransmitting an unconfirmed delivery packet using the stored packet;
A process of transmitting a delivery confirmation response packet for a packet transmitted to the second transmission section to the first transmission section instead of waiting for reception from the reception device;
A step of measuring a round trip delay time from when a packet is transmitted to the second transmission section until reception of a delivery confirmation response packet of the packet from the receiving device;
Based on the round trip time, it looks including the the steps of increasing or decreasing the maximum transmittable data amount to said second transmission section,
The maximum transmittable data amount is a value obtained by adding a certain amount of data that can be forwarded to the maximum receivable data amount, or a congestion window indicating the maximum data amount that can be transmitted from a packet that has been confirmed to be delivered last. Or a small value,
A packet relay method characterized in that the congestion window can take a value larger than the maximum receivable data amount .
送達未確認のパケットがあった場合に、最前の送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として設定し、前記再送を指示する輻輳回復過程とをさらに含み、
前記輻輳回復過程は、
前記受信装置から送達確認応答パケットを受信する毎に、順次、次の送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として設定する処理
を含むことを特徴とする請求項6に記載のパケット中継方法。Detecting the presence of unacknowledged packets;
A congestion recovery process in which when there is an unacknowledged packet, the minimum amount of data that can be transmitted in the previous unacknowledged packet is set as the maximum transmittable data amount, and the retransmission is instructed.
The congestion recovery process includes:
7. A process of sequentially setting a minimum data amount that can transmit a next unconfirmed delivery packet as the maximum transmittable data amount every time a delivery confirmation response packet is received from the receiving device. The packet relay method described in 1.
再送タイムアウトによって前記検出がなされた場合には、前記再送された送達未確認パケットの送達確認応答パケットを受信するまで、該送達未確認パケットを送信可能な最少のデータ量を前記最大送信可能データ量として使用し続ける処理
をさらに含むことを特徴とする請求項7に記載のパケット中継方法。The congestion recovery process includes:
When the detection is performed due to a retransmission timeout, the minimum amount of data that can be transmitted to the unacknowledged packet is used as the maximum amount of data that can be transmitted until the acknowledgment packet of the retransmitted unacknowledged packet is received. The packet relay method according to claim 7, further comprising: a process of continuing.
この計測の結果、所定時間以上の経過を条件として前記再送を指示するウインドウ閉塞対処過程
をさらに含むことを特徴とする請求項6乃至請求項8のいずれかの項に記載のパケット中継方法。When receiving a window closing notification from the receiving device, measuring the time from the notification reception time to the window recovery notification reception time,
The packet relay method according to any one of claims 6 to 8, further comprising a window blocking countermeasure process instructing the retransmission on the condition that a predetermined time or more has passed as a result of the measurement.
再送タイムアウトが発生した場合には、少なくとも一つの送達未確認パケットの再送を指示する処理
をさらに含むことを特徴とする請求項9に記載のパケット中継方法。The window blocking countermeasure process includes:
The packet relay method according to claim 9, further comprising a process of instructing retransmission of at least one unacknowledged packet when a retransmission timeout occurs.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001215808A JP4531302B2 (en) | 2001-07-16 | 2001-07-16 | Packet relay apparatus and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001215808A JP4531302B2 (en) | 2001-07-16 | 2001-07-16 | Packet relay apparatus and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003032295A JP2003032295A (en) | 2003-01-31 |
JP4531302B2 true JP4531302B2 (en) | 2010-08-25 |
Family
ID=19050379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001215808A Expired - Lifetime JP4531302B2 (en) | 2001-07-16 | 2001-07-16 | Packet relay apparatus and method thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4531302B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4214793B2 (en) | 2003-02-19 | 2009-01-28 | 日本電気株式会社 | Wireless communication system, server, base station, mobile terminal, and retransmission timeout time determination method used for them |
KR101231793B1 (en) * | 2004-11-24 | 2013-02-08 | 아이에스티 인터내셔널 인코포레이티드 | Methods and apparatus for optimizing a tcp session for a wireless network |
JP4627669B2 (en) | 2005-03-16 | 2011-02-09 | アラクサラネットワークス株式会社 | Packet transfer apparatus and transfer control method thereof |
JP6464911B2 (en) | 2015-05-01 | 2019-02-06 | 富士通株式会社 | Information processing system, information processing system control method, and receiving apparatus |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000216811A (en) * | 1999-01-22 | 2000-08-04 | Chokosoku Network Computer Gijutsu Kenkyusho:Kk | Flow controlling method |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3448481B2 (en) * | 1998-03-05 | 2003-09-22 | Kddi株式会社 | TCP communication speed-up device for asymmetric line |
-
2001
- 2001-07-16 JP JP2001215808A patent/JP4531302B2/en not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000216811A (en) * | 1999-01-22 | 2000-08-04 | Chokosoku Network Computer Gijutsu Kenkyusho:Kk | Flow controlling method |
Also Published As
Publication number | Publication date |
---|---|
JP2003032295A (en) | 2003-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100785293B1 (en) | System and Method for TCP Congestion Control Using Multiple TCP ACKs | |
US6741555B1 (en) | Enhancement of explicit congestion notification (ECN) for wireless network applications | |
US7876678B2 (en) | Congestion control for signalling transport protocols | |
US8014287B2 (en) | Communications apparatus | |
JP5816718B2 (en) | Communication apparatus, communication system, and data communication relay method | |
US7028094B2 (en) | Data communication method, system, and transmitter and receiver constituting the system | |
KR100600607B1 (en) | A apparatus for ARQ controlling in wireless portable internet system and method therof | |
US20040052234A1 (en) | Method and system for dispatching multiple TCP packets from communication systems | |
KR100547749B1 (en) | Congestion Control Method and System of Transmission Control Protocol to Reduce the Number of Retransmission Timeouts | |
EP1762052A1 (en) | Network feedback method and device | |
WO2003015337A1 (en) | Uplink session extension | |
Wang et al. | Use of TCP decoupling in improving TCP performance over wireless networks | |
JP3003095B1 (en) | Flow control method | |
EP1278348A1 (en) | Long-lived TCP connection using ICMP messages in wireless mobile communications | |
WO2018155406A1 (en) | Communication system, communication device, method, and program | |
JP3727198B2 (en) | Gateway device | |
JP4531302B2 (en) | Packet relay apparatus and method thereof | |
JP2006101339A (en) | Data communication apparatus | |
JP2000022744A (en) | Packet communication system, packet communication device and packet communication method | |
CA2372023A1 (en) | Overload control method for a packet-switched network | |
CN110912831B (en) | TCP transmission method, device and storage medium | |
KR100913897B1 (en) | Method for controlling congestion of TCP for reducing the number of retransmission timeout | |
WO2008049018A2 (en) | Method and system for traffic flow control in a communication network | |
KR101396785B1 (en) | Method for performing tcp functions in network equipmment | |
JP2003198612A (en) | File transferring method in packet communication network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20071009 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071009 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080303 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080304 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100316 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100513 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100514 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100601 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100609 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4531302 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130618 Year of fee payment: 3 |
|
EXPY | Cancellation because of completion of term |