JP4229807B2 - データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム - Google Patents

データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム Download PDF

Info

Publication number
JP4229807B2
JP4229807B2 JP2003370328A JP2003370328A JP4229807B2 JP 4229807 B2 JP4229807 B2 JP 4229807B2 JP 2003370328 A JP2003370328 A JP 2003370328A JP 2003370328 A JP2003370328 A JP 2003370328A JP 4229807 B2 JP4229807 B2 JP 4229807B2
Authority
JP
Japan
Prior art keywords
proxy device
tcp proxy
tcp
terminal
packet
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 - Fee Related
Application number
JP2003370328A
Other languages
English (en)
Other versions
JP2005136684A (ja
Inventor
涼 黒田
明浩 大▲高▼
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003370328A priority Critical patent/JP4229807B2/ja
Publication of JP2005136684A publication Critical patent/JP2005136684A/ja
Application granted granted Critical
Publication of JP4229807B2 publication Critical patent/JP4229807B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

本発明は、パケット通信網におけるパケット転送技術に係わり、特に、遠隔にある端末に対して大容量データを効率良く高速転送する通信技術に関するものである。
パケット通信網において、ダウンロードやアップロード型の転送を行うには、通常、確実を期すためにTCP(Transmission ControlProtocol)が使用される。
TCPとは、トランスポートレイヤ中のプロトコルであり、通信の信頼性を保証するために用いられる。受信側の端末においてパケットが正しく受信されると、送信側の端末に対して確認応答パケットを返す。送信側の端末は、確認応答パケットを受け取ってパケットが確実に届いたことを確認した後、次のパケットを送信する。送信側の端末において、もしも一定時間確認応答パケットが届かない場合、途中の経路でパケットロスが発生したと判断し、同じパケットの再送を行う。
しかし、このようにパケットごとに確認応答を待っていると時間がかかりすぎるため、転送効率を上げる技術としてウインドウ制御がある。このウインドウ制御においては、送信側の端末は確認応答を待たずに複数のパケットを送信し、受信側の端末では、受け取ったパケットを一旦受信バッファに保存し、順に処理して確認応答を返す。確認応答を待たずに送信することのできるパケットの量をウインドウサイズと呼ぶ。ウインドウサイズが大きければ転送効率は上がるが、ウインドウサイズは受信側の端末のバッファサイズに依存するため、無制限に大きくすることはできない。
また、TCPはネットワークの混雑状況に応じてウインドウサイズを変化させる、輻輳制御を行う。例えば、最初はウインドウサイズを1パケット分とし、確認応答が返ってくるごとにウインドウサイズを上昇させる。もしもパケットロスが発生した場合、送信側の端末は、ネットワークの輻輳が起こっていると判断し、直ちにウインドウサイズを減らして輻輳状態を回避しようとする。通常は、1回のパケットロスでウインドウサイズを半分にする。
このように、TCPは、必ずパケットの確認応答を行うため、正確、確実である反面、処理の多さによって転送速度の低下を引き起こすことがある。特に長距離間のデータ転送では、確認応答の待ち時間のために、非常に転送速度が低くなってしまう。
このため、ストリーミングやVoIP(Voice over Internet Protocol)などの遅延に敏感なアプリケーションのパケットは、TCPではなく、UDP(User Datagram Protocol)で転送されることが多い。UDPではTCPのようなパケット到着確認応答やフロー制御を一切行わないため高速な通信が可能であるが、その分、信頼性に乏しいため、転送先のデータの正確さは保証されない。
また、前述のようにTCPは、輻輳制御によりウインドウサイズを変化させ、パケットロスが起き過ぎないようにネットワークの混雑状況に応じて送信量を調節するが、無線などのパケットロスが起きやすい環境では、伝送エラーによるパケットロスであってもネットワーク輻輳と解釈されてウインドウサイズを落とすため、転送速度が上がらないという問題がある。
この問題を解決するため、例えば特許文献1に記載のように、TCPで接続された端末間にTCPプロキシ装置を設置するという技術がある。このTCPプロキシ装置は、無線通信でのローカル復元や連結切れ処理に用いられる他、サーバに対する外部からの攻撃の防御に使用されることもある。
しかし、このようなTCPプロキシ装置の利用によって、無線区間の転送効率は改善されるものの、長距離間の確認応答の遅延による転送速度の低下を防ぐことはできない。
特表2002−5093927号
解決しようとする問題点は、従来の技術では、相互接続される端末の距離が長くなるに従ってパケット到着確認応答時間が長くなり、データ転送速度が低下する点である。
本発明の目的は、これら従来技術の課題を解決し、距離に依存せず高速で効率的なデータ転送を可能とすることである。
上記目的を達成するため、本発明では、相互接続されるそれぞれの端末の近くにTCPプロキシ装置を設置し、両端末はそれぞれの近くのTCPプロキシ装置とTCPでデータ転送を行う。TCPプロキシ装置間は専用ネットワークで結ばれており、TCPのように距離に依存しない独自の転送技術で高速転送を行う。高速転送はUDPで行うが、データの信頼性を保証するため、アプリケーションレイヤで最低限の確認応答およびフロー制御を行う。これにより、転送速度が距離に依存する部分は、それぞれの端末とTCPプロキシ装置間のみとなるため、長距離間のデータ転送を行う場合にも転送速度が低下することはない。
本発明によれば、パケット通信網でのパケット転送において、距離に依存せず高速で効率的なデータ転送をすることができ、遠隔にある端末に対して大容量データを効率良く高速転送することが可能である。
以下、図を用いて本発明を実施するための最良の形態例を説明する。
図1は、本発明に係わるデータ転送システムの構成例を示すブロック図であり、図2は、通常のTCP転送の手順例を示すシーケンス図、図3は、図1におけるデータ転送システムでのデータ転送の手順例を示すシーケンス図である。
図1において、1,2はパーソナルコンピュータ等からなる端末、3はパケット転送網、4,5はTCPプロキシ装置、6は高速転送用ネットワークである。
端末1,2およびTCPプロキシ装置4,5のそれぞれは、CPU(Central Processing Unit)や主メモリ、表示装置、入力装置、外部記憶装置等を周するコンピュータ構成からなり、光ディスク駆動装置等を介してCD−ROM等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みCPUで処理することにより、各処理部の機能を実行する。
例えば、TCPプロキシ装置4,5のそれぞれは、接続された端末1,2からパケット転送網3にTCPを使用して転送されたパケットを受信する受信部10と、受信部10で受信したパケットに対応する確認応答パケットを送信側の端末(1,2)に返すと共に、受信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)との間で、定期的に再送制御とフロー制御を行いながらUDPを使用して送信側の端末(1,2)からの受信パケットの転送を行う転送部11と、送信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)との間で転送されるパケットを受信し、受信パケットを受信側の端末(1,2)に対してTCPを使用して送信する送信部12とを具備する。
また、TCPプロキシ装置4,5の転送部11は、送信側の端末(1,2)から受信部10により受信したパケットに対応して、受信側の端末(1,2)の論理アドレスを送信元論理アドレスとする確認応答パケットを送信部12を介して送信側の端末(1,2)に返す機能と、送信側の端末(1,2)から受信したパケットを記憶装置に蓄積する機能と、蓄積したパケットからUDPを使用して転送するためのパケットを生成する機能と、送信側の端末(1,2)が接続された相手側のTCPプロキシ装置(4,5)からUDPを使用して転送されるパケットを受信し、このパケットを、送信側の端末(1,2)から受信側の端末(1,2)に対してTCPを使用して転送された元のパケットに復元する機能と、復元したパケットを記憶装置に蓄積する機能と、受信側の端末(1,2)から送信側の端末(1,2)に対して返される確認応答パケットを受信部10により受信すると、記憶装置に蓄積した復元パケットを送信部12を介して受信側の端末(1,2)にTCPを使用して送信する機能を有する。
また、TCPプロキシ装置4,5の転送部11は、送信側の端末(1,2)から受信部10により受信したパケットを相手側のTCPプロキシ装置(4,5)に送信する際、相手側のTCPプロキシ装置(4,5)からの確認応答を待たずに連続して送信する機能と、相手側のTCPプロキシ装置(4,5)から、このTCPプロキシ装置(4,5)が送信側の端末(1,2)から受信したパケットを受信する際、定期的に確認応答および受信速度を相手側のTCPプロキシ装置(4,5)に対して送信する機能と、送信側の端末(1,2)から受信部10により受信したパケットを相手側のTCPプロキシ装置(4,5)に送信する際、相手側のTCPプロキシ装置(4,6)から受信した受信速度を基に計算した速度を越えないように送信速度を調整する機能と、相手側のTCPプロキシ装置(4,5)から受信した確認応答パケットを調べ、損失したパケットをまとめて送信する機能とを有する。
また、TCPプロキシ装置4,5の転送部11は、送信側の端末(1,2)から受信部10により受信したTCP接続要求パケットにTCPプロキシ装置間の転送用の新たなヘッダを付加してカプセル化した後に、受信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)に対して、カプセル化したパケットを用いてTCPプロキシ装置間接続の要求を送信する機能と、相手側のTCPプロキシ装置(4,5)からカプセル化したパケットを用いたTCPプロキシ装置間接続の要求を受信すると、このパケットからTCPプロキシ装置間の転送用のヘッダを取り除き、送信元を送信側の端末としたTCP接続要求を、送信部12を介して接続先の受信側の端末(1,2)に送信する機能と、接続先の受信側の端末(1,2)から受信部10により受信した送信側の端末(1,2)に対するTCP確認応答およびTCP接続要求パケットにTCPプロキシ装置間転送用の新たなヘッダを付加してカプセル化した後に、送信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)に対して送信し、相手側のTCPプロキシ装置(4,5)間での接続を確立する機能とを有する。
また、TCPプロキシ装置4,5の転送部11は、端末(1,2)から受信部10により受信したパケットのTCPヘッダの送受信ポート番号およびIPヘッダのバージョン、プロトコル、送受信論理アドレスを記憶装置に記憶する機能と、送信側の端末(1,2)から受信部10により受信したパケットのTCPヘッダの送受信ポート番号およびIPヘッダのバージョン、プロトコル、送受信論理アドレスを取り除いた後、TCPプロキシ装置間転送用の新たなヘッダを付加して受信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)に送信する機能と、送信先の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)からのTCPプロキシ装置間転送用のヘッダが付加されたパケットを受信する機能と、受信したパケットからTCPプロキシ装置間転送用のヘッダを取り除いた後、記憶したIPヘッダのバージョン、プロトコル、送受信論理アドレスおよび、TCPヘッダの送受信ポート番号を付加し、送信部12を介して受信側の端末(1,2)に送信する機能を有する。
また、TCPプロキシ装置4,5の転送部11は、送信側の端末(1,2)から受信部10により受信した受信側の端末(1,2)に対するTCP接続終了要求パケットにTCPプロキシ装置間転送用の新たなヘッダを付加してカプセル化した後に、受信側の端末に接続された相手側のTCPプロキシ装置(4,5)に対して転送する機能と、相手側のTCPプロキシ装置(4,5)から受信したTCPプロキシ装置間転送用のヘッダが付加されたパケットから当該ヘッダを取り除き、送信元を送信側の端末としたTCP接続終了要求パケットを、受信側の端末間でのパケット転送が完了したことを確認した後、送信部12を介して受信側の端末(1,2)に送信する機能と、受信側の端末(1,2)から受信部10により受信した送信側の端末(1,2)に対するTCP確認応答パケットにTCPプロキシ装置間転送用の新たなヘッダを付加してカプセル化した後に、送信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)に対して送信する機能と、相手側のTCPプロキシ装置(4,5)から受信したTCP確認応答パケットをカプセル化したパケットから当該パケットに付加されたTCPプロキシ装置間転送用のヘッダを取り除いて、送信元を受信側の端末としたTCP確認応答パケットを送信部12を介して送信側の端末(1,2)に送信する機能と、受信側の端末(1,2)から受信部10により受信した送信側の端末(1,2)に対するTCP接続終了要求パケットにTCPプロキシ装置間転送用の新たなヘッダを付加してカプセル化した後に、送信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)に対して送信する機能と、相手側のTCPプロキシ装置(4,5)から受信したTCP接続終了要求パケットをカプセル化したパケットから当該パケットに付加されたTCPプロキシ装置間転送用のヘッダを取り除いて、送信元を受信側の端末としたTCP確認終了要求パケットを送信部12を介して送信側の端末(1,2)に送信する機能と、送信側の端末(1,2)から受信部10により受信した受信側の端末(1,2)に対するTCP確認応答パケットにTCPプロキシ装置間転送用の新たなヘッダを付加してカプセル化した後に、受信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)に対して転送する機能と、相手側のTCPプロキシ装置(4,5)から受信したTCP確認応答パケットをカプセル化したパケットから当該パケットに付加されたTCPプロキシ装置間転送用のヘッダを取り除いて、送信元を送信側の端末としたTCP確認応答パケットを受信側の端末(1,2)に対して送信部12を介して送信する機能と、受信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)にTCP確認応答パケットを送信して一定時間経過後、相手側のTCPプロキシ装置(4,5)に対し、TCPプロキシ装置間転送接続終了要求パケットを送信する機能と、送信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)からのTCPプロキシ装置間転送終了要求パケットを受信すると、相手側のTCPプロキシ装置(4,5)に対し、TCPプロキシ装置間転送接続切断確認応答パケットを送信する機能と、受信側の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)からのTCPプロキシ装置間転送接続切断確認応答パケットを受信すると、相手側のTCPプロキシ装置(4,5)との間で確立されているTCPプロキシ装置間転送接続を切断する機能とを有する。
以下、このような機能・構成からなるTCPプロキシ装置4,5を用いた本例のネットワークシステムの詳細を説明する。尚、ここでは、端末1を送信側の端末、端末2を受信側の端末として説明する。
図1に示すように、端末1の近くにTCPプロキシ装置4が設置され、端末2の近くにTCPプロキシ装置5が設置され、TCPプロキシ装置4,5同士は互いに専用の高速転送用ネットワーク6で結ばれている。
端末1から端末2に対してデータ転送を行う場合、通常のTCP転送では図2のような流れとなる。図2では、ウインドウサイズを2パケット(A,B)に固定した例を示している。端末1aは、端末2aから確認応答パケット(A)が返ってくるまで次のパケット(B)を送ることができないため、端末1a,2a間の距離が長くなるに従って確認応答(A,B)を待つ時間が長くなり、非常に効率が悪い。ウインドウサイズを大きくすれば一度に送ることのできるパケットが増えるので効率が上がりそうであるが、ネットワークが混雑していた場合や、低帯域の回線が途中に存在した場合、一気にパケットを送るとパケットロスとなって再送が増えるため、余計に転送効率が悪くなることもある。
これに対して本例では、図1に示すように、それぞれの端末1,2の近くにTCPプロキシ装置4,5を設置し、各端末1,2はTCPプロキシ装置4,5を通じて転送を行う。例えば、図3に示すように、端末1から端末2へ向けて送信されたパケットは、まずTCPプロキシ装置4に受信され、TCPプロキシ装置4は、パケットを受け取るとすぐに確認応答を端末1に返し、データを蓄積する。
端末1は確認応答が返ってくれば、端末2がパケットを正確に受信したと判断し、次のパケットを送信する。また、TCPプロキシ装置5は、TCPプロキシ装置4から受け取ったデータを蓄積し、端末2に対してTCP転送を行う。TCPプロキシ装置4,5間は距離に依存しない高速転送を行い、実質的にTCP接続がなされているのは各端末1,2と、その近くにあるTCPプロキシ装置4,5の間となる。
これにより、転送速度に影響するのは端末1,2とTCPプロキシ装置4,5間の距離のみとなるため、端末1,2同士の距離が長くなっても、端末1,2の近くにTCPプロキシ装置4,5が設置されている限り転送速度が低下することはない。
更に、送信側の端末1と送信側のTCPプロキシ装置4間、および、受信側のTCPプロキシ装置5と受信側の端末2間でそれぞれ独立したウインドウサイズを使用することができるため、どちらか一方の経路でボトルネックが発生したとしても、全体の転送速度に影響を及ぼすことはない。
TCPプロキシ装置4,5間の高速転送は、UDPで行う。しかし、UDPはパケットの到着確認を全く行わないため、パケットロスが起こってもパケットの再送が行われず、信頼性が低い。そのため、UDPでデータ転送を行う場合には、アプリケーション層で信頼性を確保する仕組が必要である。
本例では、受信側のTCPプロキシ装置5から送信側のTCPプロキシ装置4に向けて、定期的に確認応答と受信速度の情報を返すことにより、再送制御やフロー制御を行っている。
TCPでは、必ず送信した順にデータを受信しなければならないため、パケットロスが起こると、そのパケットが確実に受信されたことが確認されるまで後続のパケットを送信することができない。
これに対し、本例の高速転送では、損失パケットの再送を最後にまとめて行うため、確認応答とは独立して次々にパケットを送信することができる。
送信側のTCPプロキシ装置4は、受信側のTCPプロキシ装置5から返された受信速度情報に従って送信速度を制御する。ただ、前述のように、少量のパケットロスが転送速度に致命的な影響を及ぼすことはないため、TCPのように最低速度から少しずつ送信速度を上げるという、スロースタートを行う必要がなく、1回のパケットロスで転送速度を急激に落とす必要もない。
具体的には、高速転送の接続確立時に互いのTCPプロキシ装置4,5の送受信可能速度を交換し、送信側のTCPプロキシ装置4の送信可能速度と受信側のTCPプロキシ装置5の受信可能速度を比較して小さい方を最大送信速度とする。送信側のTCPプロキシ装置4は始め、最大速度でパケットを送信するが、受信側のTCPプロキシ装置5から返された受信速度が送信速度に比べてあまりにも小さいと、ネットワークが輻輳していると判断して送信速度を少しずつ落とす。こうして、送信速度と受信速度の差が大きくなり過ぎないように調整しながら送信を行う。
さて、端末1,2は、実際には近くのTCPプロキシ装置4,5とデータ(パケット)のTCP転送を行っているが、端末1,2自身は互いの端末1,2とTCP転送をおこなっていることになっているため、宛先の論理アドレスは互いの端末1,2となっている。
しかし、TCPプロキシ装置4,5間の転送は互いのTCPプロキシ装置4,5を宛先論理アドレスとしているため、図4に示すように、TCPプロキシ装置4,5でパケットに新たに高速転送用のヘッダを付加するカプセル化を行う必要がある。
図4は、図1におけるデータ転送システムでのデータカプセル化の手順例を示す説明図であり、本図4では、送信側の端末1から受信側の端末2に向けて送信されたパケットをTCPプロキシ装置4が受信し、高速転送用のヘッダを付加する。高速転送用ヘッダには宛先論理アドレス、送信元論理アドレスが含まれ、この場合、宛先論理アドレスはTCPプロキシ装置5、送信元論理アドレスはTCPプロキシ装置4とする。
TCPプロキシ装置5はTCPプロキシ装置4からのパケットを受信すると、高速転送用ヘッダを削除し、宛先論理アドレスが端末2、送信元論理アドレスが端末1となっている元のパケットを端末2に対して送信する。
確認応答パケットについては図5に示す通りである。図5は、図1におけるデータ転送システムでの確認応答パケットの転送手順例を示す説明図である。送信側の端末1からのパケットを受信したTCPプロキシ装置4は送信側の端末1に対して確認応答パケットを返すが、送信側の端末1は受信側の端末2に対してパケットを送信しているため、確認応答パケットの送信元論理アドレスは端末2となっていなければならない。
そのため、TCPプロキシ装置4は、確認応答を返す際に、送信元論理アドレスを端末2の論理アドレスに書き換えて送信する。また、受信側の端末2は、TCPプロキシ装置5から受け取ったパケットに対して確認応答を返すが、受信したパケットの送信元論理アドレスは端末1となっているため、確認応答パケットの宛先論理アドレスは端末1として送信する。
TCPプロキシ装置5は、宛先論理アドレスが端末1となっている確認応答パケットを受け取ると、端末2が正確にパケットを受信したと判断し、次のパケットを送信する。
ここで、パケットをカプセル化する際に、元のパケットにそのまま高速転送用ヘッダを付加するのではなく、元のパケットのヘッダ内の冗長と考えられる部分を削除することによって、パケットサイズを圧縮する。TCP/IPで送信されるデータは、トランスポートレイヤでTCPヘッダが付加されてセグメントとなり、ネットワークレイヤでIPヘッダが付加されてパケットとなる。
図6は、TCPヘッダの構成例を示す説明図であり、図7は、IPヘッダの構成例を示す説明図である。ここで、TCPヘッダにおける送信元ポート番号と宛先ポート番号、およびIPパケットにおけるバージョンやプロトコル、送信元論理アドレス、宛先論理アドレスは、接続が切断されない限り途中で変わることはない。そのため、接続確立時にTCPプロキシ装置4,5でこれらの情報を記憶しておき、以降は記憶しておいた情報を使用して実際の情報は高速転送用ネットワーク6に流さない。
図8は、図1におけるデータ転送システムでの冗長情報の削除手順例を示す説明図であり、本図8に示すように、TCPプロキシ装置4は、送信側の端末1からパケットを受信すると、前述の接続が切断されない限り普遍である冗長情報をパケットから削除する。このようにしてサイズを小さくしたパケットに高速転送用ヘッダを付加し、TCPプロキシ装置5に対して転送する。
TCPプロキシ装置5では、TCPプロキシ装置4で削除したものと同じデータを記憶しているため、TCPプロキシ装置4から受信したパケットの高速転送用ヘッダを削除した後に記憶しておいたデータを当該パケットに付加し、正確に元のパケットを復元することができる。
次に、端末1,2同士の接続確立技術について述べる。図9は、TCPの3段階ハンドシェーク手順例を示すシーケンス図であり、TCPでは、接続確立の際に、図9に示すような3段階のハンドシェークを行う。最初に接続を要求する方をクライアント、接続を要求される方をサーバとする。互いに接続要求を送信し、それぞれの確認応答を受信すれば接続が確立される。SYNが接続要求、ACKが確認応答である。
端末1(クライアント)と端末2(サーバ)間の経路上に高速転送ネットワークがあった場合、全体の接続は図10のようにして確立される。図10は、図1におけるデータ転送システムでの接続確立手順例を示すシーケンス図であり、クライアント(端末1)からサーバ(端末2)に対して送信された接続要求(SYN)をTCPプロキシ装置4が受信すると、高速転送用ヘッダを付加して、高速転送接続要求(SYN)としてTCPプロキシ装置5に送信する。
TCPプロキシ装置5は、接続要求を受信してもすぐには確認応答を返さず、まず、高速転送用ヘッダを削除して、端末1(クライアント)からの接続要求パケットを復元してから端末2(サーバ)へ転送する。この際、TCPプロキシ装置5は、先に述べた、接続の間不変であるTCPヘッダとIPヘッダの情報を記憶する。
端末2(サーバ)は、接続要求を受信すると、それに対する確認応答(ACK)および端末1(クライアント)への接続要求(SYN)を、端末1(クライアント)に対して送信する。このパケットはTCPプロキシ装置5に受信され、高速転送用ヘッダが付加されて、高速転送確認応答(ACK)としてTCPプロキシ装置4に対して送信される。
TCPプロキシ装置4が高速転送確認応答(ACK)を受信した時点で、TCPプロキシ装置4,5間の高速転送接続が確立される。その後、TCPプロキシ装置4は、受信したパケットの高速転送用ヘッダを削除して端末2からの確認応答(ACK)及び接続要求パケット(SYN)を復元し、端末1へ転送する。
端末1は、パケットを受信すると、端末2の接続要求に対する確認応答(ACK)を、端末2に対して送信する。TCPプロキシ装置4はこのパケットを受信して高速転送用ヘッダを付加してTCPプロキシ装置5に対して送信するが、既にTCPプロキシ装置4,5間の高速転送接続は確立しているため、普通のデータと同じようにTCPプロキシ装置5に高速転送を行う。即ち、元のパケットのTCPヘッダとIPヘッダにある冗長情報を削除して転送し、TCPプロキシ装置5において、記憶しておいた情報を付加して元のパケットを復元する。
最終的に端末1からの確認応答(ACK)が端末2に受信されると、全体の接続が確立する。
TCPは、接続切断時においても、互いに切断要求を出し、それぞれに対する確認応答を受け取ってから接続を切断する。通常のTCPの接続切断手順を、図11に示す。
図11は、通常のTCPの接続切断手順例を示すシーケンス図であり、この図11において、送信側の端末は、全てのデータを転送し終えると、受信側の端末に対して接続切断要求(FIN)を送信する。受信側の端末は、接続切断要求(FIN)を受信すると、送信側の端末に対して確認応答(ACK)を送信し、送信側の端末がこの確認応答(ACK)を受信した時点で送信側の端末から受信側の端末方向の接続が可能となる。次に、受信側の端末から送信側の端末へ送るデータがなくなれば、受信側の端末から送信側の端末に対して接続切断要求(FIN)が送信される。
送信側の端末は受信側の端末からの接続切断要求(FIN)を受信すると、それに対する確認応答(ACK)を返す。受信側の端末は、送信側の端末からの確認応答(ACK)を受信すると接続を切断する。送信側の端末では、最後の確認応答がパケットロスしたときのために一定時間待機して(time wait)から接続を切断する。
これに対して、本例のように、端末間の経路上に高速転送ネットワークがあった場合、送信側の端末は、全てのデータが送信側のTCPプロキシ装置に転送された時点で、転送が完了したと判断するが、実際には、受信側のTCPプロキシ装置から全てのデータが受信側の端末に転送されるまで全体の転送は完了しない。そのため、送信側の端末が接続切断要求を出しても、受信側の端末に全データが転送されるまで接続を切断することはできない。
高速転送用のTCPプロキシ装置を用いた場合の接続切断手順を図12に示す。図12は、図1におけるデータ転送システムでのTCPの接続切断手順例を示すシーケンス図であり、送信側の端末1は、全てのデータが受信されたことを確認すると、受信側の端末2に対して接続切断要求(FIN)を送信する。このとき、送信側の端末1とTCPプロキシ装置4の転送は完了しているが、受信側の端末2までの転送は完了していないため、TCPプロキシ装置4は送信側の端末1に対して確認応答を返さない。
TCPプロキシ装置4は、TCPプロキシ装置5に対する転送の完了を確認後、送信側の端末1から受け取った接続切断要求パケット(FIN)を、TCPプロキシ装置5に対して高速転送する。TCPプロキシ装置5は、受信側の端末2に対する転送の完了を確認した後、最後に受信した接続切断要求(FIN)を受信側の端末2に送信する。
受信側の端末2は、接続切断要求(FIN)を受信すると、送信側の端末1に対して確認応答(ACK)を送信し、その確認応答(ACK)は、TCPプロキシ装置4,5間で高速転送が行われて最終的に送信側の端末1に受信される。
受信側の端末2は、送信側の端末1に対して確認応答(ACK)を送信後、送るデータがなくなれば、送信側の端末1へ向けて接続切断要求(FIN)を送信する。これも同様に、TCPプロキシ装置5ですぐに確認応答を返すのではなく、TCPプロキシ装置5は、全てのデータがTCPプロキシ装置5に受信されたことを確認後、接続切断要求パケット(FIN)をTCPプロキシ装置4に対して送信する。このとき、通常の高速転送ではなく、高速転送接続切断要求(FIN)として送信を行う。
TCPプロキシ装置4は、高速転送接続切断要求(FIN)を受信してもすぐに確認応答を返さず、全てのデータが送信側の端末1に転送されたことを確認した後、送信側の端末1に対して、受信側の端末2からの接続切断要求(FIN)を送信する。
送信側の端末1は、受信側の端末2からの接続切断要求(FIN)に対し、確認応答パケット(ACK)を返し、これをTCPプロキシ装置4が受信する。TCPプロキシ装置4は、これを(ACK)高速転送接続切断要求に対する確認応答としてTCPプロキシ装置5に送信し、TCPプロキシ装置5が受信した時点で、TCPプロキシ装置4,5間の高速転送接続が切断される。
そして、TCPプロキシ装置5は、受信側の端末2に対して、送信側の端末1からの確認応答(ACK)を送信し、受信側の端末2はこれを受信した時点で接続を切断する。送信側の端末1は、最後の確認応答(ACK)を送信後、パケットロスが起こったときのために一定時間待機後(time wait)、接続を切断する。
TCPプロキシ装置4,5間での高速転送は基本的にUDPで送信されるが、TCPとUDPが混在した場合、UDPはTCPの帯域を圧迫するという性質を持つ。特に高速転送の場合、パケットロスが大きくなるまで送信速度を上げ続けるため、高速転送パケットのみで帯域を埋め尽くす。もしもインターネット上の端末同士で高速転送を行った場合、高速転送パケット以外はほとんど通らなくなり、WebブラウザやEメール(E−Mail)が使用不可能になる恐れがある。そのため、高速転送専用のネットワーク(6)を設け、高速転用のパケットと他のパケットとが混在しないようにする必要がある。
このような問題を解決するためのネットワーク構築の一例を図13に示す。図13は、図1におけるデータ転送システムを設けたネットワークの構成例を示すブロック図であり、通常のパケット転送網1301の中に高速転送専用ネットワーク1302をつくり、高速転送専用ネットワーク1302の入り口にTCPプロキシ装置(図中「P」と記載)1303〜1307を設置する。
各端末(図中「T」と記載)1311〜1316は、TCPプロキシ装置1303〜1307を通じて遠隔にある端末とデータ転送を行うが、端末1317,1318で示すように、当然、高速転送を用いずに通常の転送を行うことも可能である。
以上、図1〜図13を用いて説明したように、本例では、相互接続されるそれぞれの端末1,2の近くにTCPプロキシ装置4,5を設置し、両端末1,2はそれぞれの近くのTCPプロキシ装置4,5とTCPでデータ転送を行う。TCPプロキシ装置4,5間は高速転送専用ネットワーク6で結ばれており、TCPのように距離に依存しない独自の転送技術で高速転送を行う。尚、この高速転送はUDPで行うが、データの信頼性を保証するため、アプリケーションレイヤで最低限の確認応答およびフロー制御を行う。これにより、転送速度が距離に依存する部分は、それぞれの端末1,2とTCPプロキシ装置4,5間のみとなるため、長距離間のデータ転送を行う場合にも転送速度が低下することはない。
このように、本例によれば、TCPを用いて端末1,2同士でデータ転送を行う場合において、距離に依存することなく高速転送を行うことが可能である。従来は、端末1,2間の距離が長くなるに従って確認応答の遅延が大きくなり、ネットワークが混雑していなくてもスループットが低下するが、本例の技術により、ネットワークを効率的に使用することができ、ネットワークの帯域に応じた大容量のデータを高速転送することが可能となる。
また、高速転送用に専用のネットワークを構築することで、高速転送パケットによる他トラフィックの圧迫を防ぐことができる。
尚、本発明は、図1〜図13を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、転送部11において、送信先の端末(1,2)に接続された相手側のTCPプロキシ装置(4,5)から受信したパケットからTCPプロキシ装置間転送用のヘッダを取り除いた後、記憶したIPヘッダのバージョン、プロトコル、送受信論理アドレスおよび、TCPヘッダの送受信ポート番号を付加する機能を実行させているが、この機能を、送信部12で実行させる構成とすることでも良い。
本発明に係わるデータ転送システムの構成例を示すブロック図である。 通常のTCP転送の手順例を示すシーケンス図である。 図1におけるデータ転送システムでのデータ転送の手順例を示すシーケンス図である。 図1におけるデータ転送システムでのデータカプセル化の手順例を示す説明図である。 図1におけるデータ転送システムでの確認応答パケットの転送手順例を示す説明図である。 TCPヘッダの構成例を示す説明図である。 IPヘッダの構成例を示す説明図である。 図1におけるデータ転送システムでの冗長情報の削除手順例を示す説明図である。 TCPの3段階ハンドシェーク手順例を示すシーケンス図である。 図1におけるデータ転送システムでの接続確立手順例を示すシーケンス図である。 通常のTCPの接続切断手順例を示すシーケンス図である。 図1におけるデータ転送システムでのTCPの接続切断手順例を示すシーケンス図である。 図1におけるデータ転送システムを設けたネットワークの構成例を示すブロック図である。
符号の説明
1,1a,2,2a,1311〜1318:端末、3,1301:パケット転送網、4,5,1303〜1307:TCPプロキシ装置、6,1302:高速転送用ネットワーク、10:受信部、11:転送部、12:送信部。

Claims (10)

  1. パケット転送網に複数の端末が接続され、送信側の端末においてパケットに受信側の端末のアドレスを付与し、前記パケット転送網を通じて、前記送信側の端末から前記受信側の端末に対してTCPを使用してデータ転送を行うネットワークのデータ転送方法であって、
    前記パケット転送網に複数のTCPプロキシ装置を配置し、
    信側の端末が接続された送信側のTCPプロキシ装置が、前記送信側の端末から、TCPを使用して転送されたデータを受信する手順と、
    前記送信側のTCPプロキシ装置、受信側の端末が接続された受信側のTCPプロキシ装置に対して、UDPを使用してデータ転送を行うと共に、前記送信側の端末に対して確認応答パケットを返す手順と、
    前記受信側のTCPプロキシ装置が、前記送信側のTCPプロキシ装置に対して、定期的に確認応答と受信速度の情報を返すことにより再送制御とフロー制御を行う手順と、
    前記受信側のTCPプロキシ装置が、前記受信側の端末に対して、TCPを使用して前記送信側のTCPプロキシ装置から転送されてきたデータの転送を行う手順と
    含み、
    前記フロー制御は、
    前記送信側のTCPプロキシ装置と前記受信側のTCPプロキシ装置が、TCPプロキシ装置間で接続確立時に互いの送受信可能速度を交換する手順と、
    前記送信側のTCPプロキシ装置が、前記送信側のTCPプロキシ装置の送信可能速度と前記受信側のTCPプロキシ装置の受信可能速度を比較して小さい方を最大送信速度とし、前記最大送信速度でパケットの送信を開始する手順と、
    前記送信側のTCPプロキシ装置が、前記受信側のTCPプロキシ装置から定期的に返される受信速度が自装置の送信速度に比べて予め定められた閾値を超えて小さい場合に、前記送信速度を下げる手順と
    を含むことを特徴とするデータ転送方法。
  2. 請求項1に記載のデータ転送方法であって、
    前記送信側のTCPプロキシ装置
    送信側の端末から受信側の端末に対して送信されたパケットを受信し、該パケットの送信元論理アドレスを前記受信側の端末の論理アドレスとして、前記送信側の端末に確認応答を返す手順と、受信したパケットを蓄積する手順と、蓄積したパケットから、UDPを使用したデータ転送のためのパケットを生成する手順とを実行し、
    前記受信側のTCPプロキシ装置
    前記送信側のTCPプロキシ装置から送信された、UDPを使用したデータ転送のためのパケットを受信して、前記送信側の端末から受信側の端末に対して送信された元のパケットを復元する手順と、復元したパケットを蓄積する手順と、前記受信側の端末から前記送信側の端末に対して送信された確認応答パケットを受信する手順と、受信した前記受信側の端末からの確認応答パケットに応じて、該受信側の端末に対して、蓄積したデータをTCPを使用して転送する手順とを実行する
    ことを特徴とするデータ転送方法。
  3. 請求項1もしくは請求項2のいずれかに記載のデータ転送方法であって、
    前記送信側のTCPプロキシ装置と前記受信側のTCPプロキシ装置の間のデータ転送手順として、
    前記送信側のTCPプロキシ装置が送信側の端末から受信したパケットを前記受信側のTCPプロキシ装置に対して確認応答を待たずに連続して送信する手順と、
    前記受信側のTCPプロキシ装置が、定期的に確認応答および受信速度を前記送信側のTCPプロキシ装置に対して送信する手順と、
    前記送信側のTCPプロキシ装置が、前記受信側のTCPプロキシ装置から受信した受信速度を基に計算した速度を越えないように、送信速度を調整する手順と、
    前記送信側のTCPプロキシ装置が、前記受信側のTCPプロキシ装置から受信した確認応答パケットを調べ、損失したパケットをまとめて送信する手順と
    含むことを特徴とするデータ転送方法。
  4. 請求項1から請求項3のいずれかに記載のデータ転送方法であって、
    端末と端末の間のTCP接続を確立する手順として、
    接続を開始する端末(以下クライアント端末)が接続されたクライアント側のTCPプロキシ装置が、前記クライアント端末から接続を受ける端末(以下サーバ端末)に対して送信されたTCP接続要求を受信する手順と、
    前記クライアント側のTCPプロキシ装置、受信したパケットにTCPプロキシ装置間の転送用の新たなヘッダを付加してカプセル化した後に、前記サーバ端末が接続されたサーバ側のTCPプロキシ装置に対して、前記カプセル化したパケットを用いてTCPプロキシ装置間の接続要求を送信する手順と、
    記サーバ側のTCPプロキシ装置が、前記接続要求を受信し、前記カプセル化したパケットから前記TCPプロキシ装置間装置の転送用のヘッダを取り除き、前記サーバ端末に対して送信元を前記クライアント端末としてTCP接続要求を送信する手順と、
    前記サーバ側のTCPプロキシ装置が、前記TCP接続要求を受信した前記サーバ端末から前記クライアント端末に対して送信されたTCP確認応答及びTCP接続要求を受信する手順と、
    前記サーバ側のTCPプロキシ装置、受信したパケットにTCPプロキシ装置間転送用の新たなヘッダを付加してカプセル化した後に、前記クライアント側のTCPプロキシ装置に対して、TCPプロキシ装置間接続確認応答を送信してTCPプロキシ装置間の接続を確立する手順と、
    前記クライアント側のTCPプロキシ装置が、前記サーバ側のTCPプロキシ装置からのTCPプロキシ装置間接続確認応答を受信し、前記カプセル化したパケットから前記TCPプロキシ装置間装置の転送用のヘッダを取り除き、前記クライアント端末に対して、送信元を前記サーバ端末としてTCP確認応答及びTCP接続要求を送信する手順と、
    前記クライアント側のTCPプロキシ装置が、前記TCP確認応答及びTCP接続要求を受信した前記クライアント端末から前記サーバ端末に対して送信されたTCP確認応答を受信する手順と、
    前記クライアント側のTCPプロキシ装置が、受信したパケットにTCPプロキシ装置間転送用のヘッダを付加してカプセル化した後に、前記サーバ側のTCPプロキシ装置に対して送信する手順と、
    記サーバ側TCPプロキシ装置が、前記クライアント側のTCPプロキシ装置からのパケットを受信し、前記カプセル化したパケットから前記TCPプロキシ装置間転送用のヘッダを取り除いて、前記サーバ端末に対して、送信元を前記クライアント端末としてTCP確認応答を送信し、前記クライアント端末と前記サーバ端末間でのTCP接続を確立する手順と
    含むことを特徴とするデータ転送方法。
  5. 請求項1から請求項4のいずれかに記載のデータ転送方法であって、
    前記受信側のTCPプロキシ装置が、接続確立時に受信したパケットのTCPヘッダの送受信ポート番号および、IPヘッダのバージョン、プロトコル、送受信論理アドレスを含む、接続が切断されない限り途中で変わることのない冗長情報を記憶する手順と、
    前記送信側のTCPプロキシ装置が、接続確立後に前記送信側の端末から受信したパケットから前記冗長情報を取り除いた後、TCPプロキシ装置間転送用の新たなヘッダを付加して前記受信側のTCPプロキシ装置に送信する手順と、
    前記受信側のTCPプロキシ装置、前記送信側のTCPプロキシ装置からのパケットを受信し、受信したパケットからTCPプロキシ装置間転送用のヘッダを取り除いた後、前記記憶した冗長情報を付加して前記受信側の端末に送信する手順と
    を有することを特徴とするデータ転送方法。
  6. 請求項1から請求項4のいずれかに記載のデータ転送方法であって、
    前記送信側のTCPプロキシ装置、前記送信側の端末から受信したパケットのTCPヘッダおよびIPヘッダを取り除くことなく、TCPプロキシ装置間転送用の新たなヘッダを付加して前記受信側のTCPプロキシ装置に送信する手順と、
    前記受信側のTCPプロキシ装置が、前記送信側のTCPプロキシ装置からのパケットを受信し、前記パケットからTCPプロキシ装置間転送用のヘッダを取り除いた後、該パケットを前記受信側の端末に送信する手順と
    含むことを特徴とするデータ転送方法。
  7. 請求項1から請求項6いずれかに記載のデータ転送方法であって、
    前記送信側の端末と前記受信側の端末との間に確立されているTCP接続を切断する手順として、
    前記送信側のTCPプロキシ装置が、前記送信側の端末から前記受信側の端末に対して送信されたTCP接続終了要求を受信する手順と
    前記送信側のTCPプロキシ装置、TCPプロキシ装置間の転送が完了したことを確認した後、受信したTCP接続終了要求パケットにTCPプロキシ装置間の転送用の新たなヘッダを付加してカプセル化した後に、前記受信側のTCPプロキシ装置に対して転送する手順と、
    記受信側のTCPプロキシ装置が、前記送信側のTCPプロキシ装置からのパケットを受信し、前記カプセル化したパケットから前記TCPプロキシ装置間の転送用のヘッダを取り除いて、自装置と前記受信側の端末間の転送が完了したことを確認した後、前記受信側の端末に対して、送信元を前記送信側の端末としてTCP接続終了要求を送信する手順と、
    前記受信側のTCPプロキシ装置が、前記TCP接続終了要求を受信した前記受信側の端末から前記送信側の端末に対して送信されたTCP確認応答を受信する手順と、
    前記受信側のTCPプロキシ装置、受信したTCP確認応答パケットにTCPプロキシ装置間の転送用の新たなヘッダを付加してカプセル化した後に、前記送信側のTCPプロキシ装置に対して送信する手順と、
    記送信側のTCPプロキシ装置が、前記受信側のTCPプロキシ装置からのパケットを受信し、前記カプセル化したパケットから前記TCPプロキシ装置間の転送用のヘッダを取り除いて、前記送信側の端末に対して、送信元を前記受信側の端末としてTCP確認応答を送信する手順と、
    前記受信側のTCPプロキシ装置が、前記受信側の端末から前記送信側の端末に対して送信されたTCP接続終了要求を受信する手順と、
    前記受信側のTCPプロキシ装置において、受信したTCP接続終了要求パケットにTCPプロキシ装置間の転送用の新たなヘッダを付加してカプセル化した後に、前記送信側のTCPプロキシ装置に対して、パケットを送信する手順と、
    前記送信側のTCPプロキシ装置が、前記受信側のTCPプロキシ装置からのパケットを受信し前記カプセル化したパケットから前記TCPプロキシ装置間の転送用のヘッダを取り除いて、前記送信側の端末に対して、送信元を前記受信側の端末としてTCP接続終了要求を送信する手順と、
    前記送信側のTCPプロキシ装置が、前記接続終了要求を受信した前記送信側の端末から前記受信側の端末に対して送信されたTCP確認応答を受信する手順と、
    前記送信側のTCPプロキシ装置、受信したTCP確認応答パケットにTCPプロキシ装置間転送用の新たなヘッダを付加してカプセル化した後に、前記受信側のTCPプロキシ装置に対して、パケットを転送する手順と、
    記受信側のTCPプロキシ装置が、前記送信側のTCPプロキシ装置からのパケットを受信し、前記カプセル化したパケットから前記TCPプロキシ装置間の転送用のヘッダを取り除いて、前記受信側の端末に対して、送信元を前記送信側の端末としてTCP確認応答を送信し、前記送信側の端末とのTCP接続を切断させる手順と、
    記送信側のTCPプロキシ装置、前記受信側のTCPプロキシ装置に対して確認応答を送信した一定時間経過後、前記受信側のTCPプロキシ装置に対し、TCPプロキシ装置間の転送接続終了要求を送信する手順と、
    記受信側のTCPプロキシ装置が、前記送信側のTCPプロキシ装置からのTCPプロキシ装置間転送終了要求を受信し、前記送信側のTCPプロキシ装置に対し、TCPプロキシ装置間の転送接続切断確認応答を送信する手順と、
    記送信側のTCPプロキシ装置が、前記受信側のTCPプロキシ装置からのTCPプロキシ装置間転送接続切断確認応答を受信し、前記TCPプロキシ装置間の転送接続を切断し、全体の接続を切断する手順と
    含むことを特徴とするデータ転送方法。
  8. コンピュータを、複数の端末が接続されたパケット転送網に配置されるTCPプロキシ装置として機能させるプログラムであって、
    コンピュータに、請求項1から請求項7のいずれかに記載のデータ転送方法における前記送信側のTCPプロキシ装置および前記受信側のTCPプロキシ装置として実行する各手順を実行させるプログラム。
  9. 複数の端末が接続されたパケット転送網に配置されるTCPプロキシ装置であって、
    請求項1から請求項7のいずれかに記載のデータ転送方法における前記送信側のTCPプロキシ装置および前記受信側のTCPプロキシ装置として実行する各手順の実行手段を具備したことを特徴とするTCPプロキシ装置。
  10. 複数の端末をパケット転送網に接続したネットワークシステムであって、
    請求項9に記載のTCPプロキシ装置を複数設け、
    該TCPプロキシ装置間を専用ネットワークで接続したことを特徴とするネットワークシステム。
JP2003370328A 2003-10-30 2003-10-30 データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム Expired - Fee Related JP4229807B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003370328A JP4229807B2 (ja) 2003-10-30 2003-10-30 データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003370328A JP4229807B2 (ja) 2003-10-30 2003-10-30 データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム

Publications (2)

Publication Number Publication Date
JP2005136684A JP2005136684A (ja) 2005-05-26
JP4229807B2 true JP4229807B2 (ja) 2009-02-25

Family

ID=34647378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003370328A Expired - Fee Related JP4229807B2 (ja) 2003-10-30 2003-10-30 データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム

Country Status (1)

Country Link
JP (1) JP4229807B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1878126A (zh) * 2005-06-07 2006-12-13 华为技术有限公司 通信网络中实现信令代理的方法
JPWO2011037245A1 (ja) * 2009-09-24 2013-02-21 日本電気株式会社 通信データ伝送装置、通信データ伝送システム、通信データ伝送方法、及び通信データ伝送プログラム
JP5580706B2 (ja) 2010-09-29 2014-08-27 Kddi株式会社 再送制御プロトコルを用いるデータ転送装置、プログラム及び方法
JP5652891B2 (ja) * 2013-02-22 2015-01-14 日本電気株式会社 リモートデスクトップシステム
JP6213059B2 (ja) * 2013-08-27 2017-10-18 富士通株式会社 中継プログラム、中継装置、及び中継方法
JP2015065507A (ja) * 2013-09-24 2015-04-09 日本電気株式会社 ゲートウェイ装置および通信ネットワークおよびゲートウェイ装置の制御方法
CN104767781B (zh) * 2014-01-08 2018-09-04 杭州迪普科技股份有限公司 一种tcp代理装置以及方法
WO2016185616A1 (ja) * 2015-05-21 2016-11-24 富士通株式会社 データ転送処理プログラム、データ転送処理方法及びデータ転送処理装置
CN109525661B (zh) * 2018-11-14 2021-08-13 北京奇艺世纪科技有限公司 数据传输方法及装置
WO2022070348A1 (ja) * 2020-09-30 2022-04-07 日本電信電話株式会社 転送装置、転送方法および転送プログラム
CN114500041B (zh) * 2022-01-25 2024-04-30 上海中通吉网络技术有限公司 一种软件定义边界的实现方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0575666A (ja) * 1991-09-17 1993-03-26 Toshiba Corp 伝送フロー制御方式
JP2576780B2 (ja) * 1993-12-17 1997-01-29 日本電気株式会社 プロトコル終端方式
JPH07250100A (ja) * 1994-03-09 1995-09-26 Kokusai Denshin Denwa Co Ltd <Kdd> 広域網を用いたlan間の相互通信方式及びこれに用いる相互接続装置
JP3231941B2 (ja) * 1994-05-06 2001-11-26 日本電信電話株式会社 輻輳防止方法およびパケット通信システム
JP2000207298A (ja) * 1999-01-14 2000-07-28 Kdd Corp ファイル転送方法
JP2003069615A (ja) * 2001-06-14 2003-03-07 Hitachi Ltd 通信制御装置および通信制御方法
US7023876B2 (en) * 2001-07-09 2006-04-04 Quantum Corporation Point-to-point protocol

Also Published As

Publication number Publication date
JP2005136684A (ja) 2005-05-26

Similar Documents

Publication Publication Date Title
JP5816718B2 (ja) 通信装置、通信システム、およびデータ通信の中継方法
US7385923B2 (en) Method, system and article for improved TCP performance during packet reordering
KR100785293B1 (ko) 다중 tcp확인응답을 이용한 tcp 혼잡 제어 시스템및 그 방법
JP3183343B2 (ja) データ通信方法、端末装置、中継装置、データ通信システム及びその記録媒体
US6757248B1 (en) Performance enhancement of transmission control protocol (TCP) for wireless network applications
US8553572B2 (en) Internet protocol optimizer
JP5523350B2 (ja) Tcpフロー制御のための方法及び装置
JP4164365B2 (ja) デュアル・プロキシ装置を設けることによる無線インタフェースを介するtcp性能の改良技術
US7471681B2 (en) Determining network path transmission unit
CN102006283B (zh) 数据传输的方法和装置
US9577791B2 (en) Notification by network element of packet drops
JP4153502B2 (ja) 通信装置及び論理リンク異常検出方法
WO1998047166A2 (en) Data communication protocol
WO2014092779A1 (en) Notification by network element of packet drops
JPH11252179A (ja) 非対称回線用tcp通信高速化装置
US7480301B2 (en) Method, system and article for improved TCP performance during retransmission in response to selective acknowledgement
JP4229807B2 (ja) データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム
JP2005520374A (ja) Tcp/ipに対する変更
US7623546B1 (en) Latency improvement for file transfers over network connections
JP7067544B2 (ja) 通信システム、通信装置、方法およびプログラム
JP4506430B2 (ja) アプリケーションモニタ装置
JP2005057482A (ja) データ転送方法、データ転送用プログラムおよび記録媒体
KR100913897B1 (ko) 재전송 타임아웃 수를 줄이기 위한 전송 제어 프로토콜혼잡제어방법
JP2001308936A (ja) データ通信方法、中継装置、データ通信システム及びその記録媒体
JP6268027B2 (ja) 通信システム、送信装置、及び通信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080208

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080408

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: 20081202

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: 20081202

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees