JP2005348107A - Data communication device - Google Patents
Data communication device Download PDFInfo
- Publication number
- JP2005348107A JP2005348107A JP2004165625A JP2004165625A JP2005348107A JP 2005348107 A JP2005348107 A JP 2005348107A JP 2004165625 A JP2004165625 A JP 2004165625A JP 2004165625 A JP2004165625 A JP 2004165625A JP 2005348107 A JP2005348107 A JP 2005348107A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transmission
- buffer
- communication
- amount
- 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.)
- Granted
Links
Images
Landscapes
- Communication Control (AREA)
Abstract
Description
本発明は、TCP/IP(Transmission Control Protocol/Internet Protocol)に基づいた通信を最適化するデータ通信装置に関する。 The present invention relates to a data communication apparatus that optimizes communication based on TCP / IP (Transmission Control Protocol / Internet Protocol).
インターネットにおいて信頼性のあるデータ転送を実現するためのプロトコルとして、TCPが広く使用されている。インターネットにおいては、ネットワークのトラヒックが増加することにより、有効な通信を行うことができなくなる輻輳状態が発生することがあり、輻輳状態にならないように通信を制御する輻輳制御に関する事項がTCPにおいて規定されている。また、TCPにおいては、送信側と受信側との間で行われる通信データ量の制御を行うフロー制御に関する事項も規定されている。 TCP is widely used as a protocol for realizing reliable data transfer on the Internet. In the Internet, there is a case where a congestion state in which effective communication cannot be performed due to an increase in network traffic occurs, and matters related to congestion control for controlling communication so as not to become a congestion state are defined in TCP. ing. In TCP, matters relating to flow control for controlling the amount of communication data performed between the transmission side and the reception side are also defined.
TCPに基づいたフロー制御および輻輳制御は、以下のような特徴を有する。
1.送信端末が確認応答(ACK:ACKnowledgement)なしに送信することができるデータ量(ウィンドウサイズ)が端末のTCP実装および設定に依存しており、常に十分なウィンドウサイズが確保される保証はない。
2.データ送信方向とは逆方向にACKを返送するための一定の回線帯域が必要である。
3.パケット紛失をネットワークの輻輳によるものと仮定し、パケットの紛失時にデータ送信レートを抑制してしまう。
このため、遅延の大きな回線や、ダウンリンクとアップリンクとの間で伝送速度が異なる非対称性の高い回線、伝送誤り率の大きな回線等においては、回線帯域を有効に利用することが困難であった。
The flow control and congestion control based on TCP have the following characteristics.
1. The amount of data (window size) that the transmitting terminal can transmit without an acknowledgment (ACK: ACKnowledgement) depends on the TCP implementation and settings of the terminal, and there is no guarantee that a sufficient window size is always secured.
2. A certain line bandwidth is required for returning the ACK in the direction opposite to the data transmission direction.
3. Assuming that packet loss is due to network congestion, the data transmission rate is suppressed when packets are lost.
For this reason, it is difficult to effectively use the line bandwidth in a line with a large delay, a line with a high asymmetry in which the transmission speed differs between the downlink and the uplink, a line with a large transmission error rate, and the like. It was.
これを解決するための一手法として、上記の特性を有する回線向けに最適化された各種のTCP通信中継装置(PEP:Performance Enhanced Proxy)装置を設置する手法が提案されている(例えば、特許文献1参照)。PEP装置の多くは、上記の特性を有する回線の両端あるいは送信端末側の端点に設置され、送信端末と受信端末との間でエンドエンドに確立されるTCPコネクションを明示的あるいは透過的に分割する。 As a technique for solving this problem, there has been proposed a technique of installing various TCP communication relay device (PEP: Performance Enhanced Proxy) devices optimized for a line having the above characteristics (for example, Patent Literature 1). Most PEP devices are installed at both ends of a line having the above-mentioned characteristics or at an end point on the transmitting terminal side, and explicitly or transparently divide the TCP connection established at the end end between the transmitting terminal and the receiving terminal. .
TCPコネクションの分割方式としては以下の2方式が一般的である。
1.送信端末−PEP装置間ならびにPEP装置−受信端末間の2つのTCPコネクションに分割する(2コネクション分割方式)。
2.送信端末−第1のPEP装置間、第1のPEP装置−第2のPEP装置間、ならびに第2のPEP装置−受信端末間の3つのTCPコネクション(2つのPEP装置間は独自のプロトコルの場合もある)に分割する(3コネクション分割方式)。
The following two methods are generally used as the TCP connection division method.
1. It is divided into two TCP connections between the transmission terminal and the PEP device and between the PEP device and the reception terminal (two-connection division method).
2. Three TCP connections between the sending terminal and the first PEP device, between the first PEP device and the second PEP device, and between the second PEP device and the receiving terminal (in the case of a unique protocol between the two PEP devices) (3 connection division method).
図3は、2コネクション分割方式による従来の通信システムの構成を示す概略構成図である。以下、図中の各構成について説明する。サーバ1は動画コンテンツデータ等のデータを、インターネット2を介して配信する。送信地球局3は、通信衛星4を介して加入者ネットワーク5と通信を行う。この送信地球局3は、上記のPEP装置としての役割を担うTCPゲートウェイ31、データ中継用のルータ32、および通信衛星4とデータの送受信を行うアンテナ33を備えている。加入者ネットワーク5は、通信衛星4とデータの送受信を行うアンテナ51、データ中継用のルータ52、およびサーバ1から動画コンテンツデータ等を受信するクライアント端末6を備えている。
FIG. 3 is a schematic configuration diagram showing a configuration of a conventional communication system using a two-connection division method. Hereinafter, each component in the figure will be described. The
なお、サーバ1とTCPゲートウェイ31との間の伝送遅延は、TCPゲートウェイ31とクライアント端末6との間の伝送遅延よりも小さいものとする。すなわち、サーバ1とTCPゲートウェイ31との間の帯域幅遅延積は、TCPゲートウェイ31とクライアント端末6との間の帯域幅遅延積よりも大きいものとする。
It is assumed that the transmission delay between the
図4は、従来の通信システムによる通信のシーケンスを示している。図4(a)は、PEP装置を設けない場合の通信のシーケンスを示している。サーバによって送信されたデータ(DT)は、ルータを介してクライアント端末によって受信される。データを誤りなく受信した場合、クライアント端末はACKをサーバへ返信する。サーバはクライアント端末からACKが返信されるまで待機しており、クライアント端末からのACKを受信した場合に、次のデータを送信する。 FIG. 4 shows a communication sequence by the conventional communication system. FIG. 4A shows a communication sequence when no PEP device is provided. Data (DT) transmitted by the server is received by the client terminal via the router. If the data is received without error, the client terminal returns an ACK to the server. The server waits until an ACK is returned from the client terminal, and transmits the next data when receiving an ACK from the client terminal.
図4(b)は、図3に示される通信システムによる通信のシーケンスを示している。TCPゲートウェイ31はサーバ1からデータを受信し、クライアント端末6へデータを転送すると共に、このデータに対するACKを、クライアント端末6に代わって作成し、サーバ1へ送信する。サーバ1は、このACKを受信すると、クライアント端末6によってデータが正常に受信されたと判断し、次のデータを送信する。クライアント端末6はTCPゲートウェイ31からデータを受信し、そのデータに対応したACKを送信する。TCPゲートウェイ31はそのACKを受信するが、サーバ1への転送は行わない。
FIG. 4B shows a communication sequence by the communication system shown in FIG. The TCP
TCPゲートウェイ31は、クライアント端末6からデータの再送要求がなされた場合にデータを再送することができるようにするため、ACKを受信するまではデータを保持する。図3に示される通信システムによれば、TCPゲートウェイ31を設けたことにより、サーバ1におけるデータの送信からACKの到着までの時間を削減することができるので、サーバ1とクライアント端末6との間の通信を高速化することができる。
The TCP
図5は、3コネクション分割方式による従来の通信システムの構成を示す概略構成図である。図5においては、図4と同一の構成には同一の符号が付与されている。この通信システムにおいては、加入者ネットワーク5にTCPゲートウェイ53が設けられている。図6は、この通信システムによる通信のシーケンスを示している。TCPゲートウェイ31とTCPゲートウェイ53との間の通信は独自のプロトコルに基づいて行われる。図3に示される通信システムによる通信の場合と同様に、この通信システムによれば、サーバ1とクライアント端末6との間の通信を高速化することができる。
特に、遅延の大きい回線におけるTCP通信を高速化するためのPEP装置には、以下の動作が必要である。
1.送信端末から大量のパケットを先読みしてPEP装置内に蓄積する。
2.送信端末から先読みしたパケットを受信端末へ順次送信する。
3.ACKが返送されるまでパケットを保持する。
In particular, a PEP device for speeding up TCP communication on a line with a large delay requires the following operation.
1. A large number of packets are prefetched from the transmitting terminal and stored in the PEP device.
2. Packets prefetched from the transmitting terminal are sequentially transmitted to the receiving terminal.
3. Hold packet until ACK is returned.
図7は、これを実現するためのPEP装置の機能を階層的に示している。図において、送信端末側とPEP装置との間のコネクションをTCP connection #1とし、受信端末側とPEP装置との間のコネクションをTCP connection #2とする。NIC(Network Interface Card)81およびNIC82は、PEP装置の物理的なインタフェースである。
FIG. 7 hierarchically shows the functions of the PEP device for realizing this. In the figure, the connection between the transmitting terminal side and the PEP device is
ドライバ83は、NIC81および82と上位層とのデータの橋渡しを行う。IPモジュール84はIPを実行するソフトウェアである。TCPモジュール85はTCPを実行するソフトウェアである。ドライバ83、IPモジュール84、およびTCPモジュール85は、OS(Operating System)の中核部分をなすKernelによって管理される。PEPプロセス86は、PEP装置が実行するアプリケーションプログラムを制御する。
The
TCPモジュール85の機能の一つは、受信バッファ23aおよび送信バッファ23bの管理を行うことである。一般的なPEP実装においては、送信端末−PEP装置間には、一般的な(小さい)ウィンドウサイズに対応した受信バッファ23a(バッファサイズをRbufとする)が用意される。この受信バッファ23aは、送信端末側から受信されたデータを一時的に保持する。また、PEP装置−受信端末間には、大きなウィンドウサイズに対応した大容量の送信バッファ23b(バッファサイズをTbufとする)が用意される。この送信バッファ23bは、受信端末へ送信されるデータを一時的に保持する。
One of the functions of the
送信端末側から受信されたデータは、受信バッファ23aに格納される。PEPプロセス86は、受信バッファ23aが空になるか、送信バッファ23bが満杯となるまで、受信バッファ23aからデータを読み出して、送信バッファ23bに格納する。受信バッファ23aおよび23bのバッファサイズは固定的であり、PEP装置が送信端末に広告するウィンドウサイズ(Rwin)は、送信バッファ23bが満杯になるまで縮小しない。
Data received from the transmission terminal side is stored in the
特に遅延の大きい回線においては、回線帯域の変動や、低速受信端末・アプリケーションの存在、あるいは想定外のパケット紛失等により、受信端末への送信が滞る場合が考えられる。このような場合には、TCPコネクション単位で大量のパケット(受信バッファ23a+送信バッファ23b分)がPEP装置に滞留し、以下の問題が発生していた。
1.エンドエンドの端末間で予期しない転送遅延が発生する。
2.PEP装置内のバッファ容量が逼迫する。
In particular, in a line with a large delay, transmission to the receiving terminal may be delayed due to fluctuations in the line bandwidth, existence of low-speed receiving terminals and applications, or unexpected packet loss. In such a case, a large amount of packets (for
1. An unexpected transfer delay occurs between end-to-end terminals.
2. The buffer capacity in the PEP device is tight.
本発明は、上述した問題点に鑑みてなされたものであって、エンドエンドの端末間での大幅なデータ転送遅延の増大を避けると共に、バッファ容量の逼迫を緩和することができるデータ通信装置を提供することを目的とする。 The present invention has been made in view of the above-described problems, and provides a data communication device capable of avoiding a significant increase in data transfer delay between end-to-end terminals and alleviating buffer capacity tightness. The purpose is to provide.
本発明は上記の課題を解決するためになされたもので、請求項1に記載の発明は、データ通信を行う送信装置および受信装置の間に設けられ、前記送信装置および前記受信装置の間で行われるデータ通信を高速化するデータ通信装置において、前記送信装置によって送信されたデータを受信する受信手段と、前記受信手段によって受信された前記データを前記受信装置へ送信する送信手段と、前記受信手段によって受信された前記データを保持する受信データ保持手段と、前記送信手段によって送信される送信待ちの前記データを保持する送信データ保持手段と、前記受信データ保持手段から前記データを読み出して、前記送信データ保持手段に格納するデータ格納手段と、前記受信装置との通信における通信制御に用いられる通信制御変数の値に応じて、前記送信データ保持手段が保持するデータ量を決定するデータ量決定手段とを具備することを特徴とするデータ通信装置である。
The present invention has been made to solve the above problems, and the invention according to
請求項2に記載の発明は、請求項1に記載のデータ通信装置において、前記データ量決定手段はさらに、前記通信制御変数の値に応じて、前記受信データ保持手段が新たに保持することができるデータ量を決定することを特徴とする。 According to a second aspect of the present invention, in the data communication device according to the first aspect, the data amount determining means may be further held by the received data holding means in accordance with a value of the communication control variable. It is characterized by determining the amount of data that can be generated.
請求項3に記載の発明は、請求項1に記載のデータ通信装置において、前記データ量決定手段はさらに、前記送信データ保持手段が保持するデータ量に応じて、前記受信データ保持手段が新たに保持することができるデータ量を決定することを特徴とする。 According to a third aspect of the present invention, in the data communication device according to the first aspect, the data amount determining means further includes a new reception data holding means according to a data amount held by the transmission data holding means. It is characterized by determining the amount of data that can be held.
請求項4に記載の発明は、請求項1〜請求項3のいずれかの項に記載のデータ通信装置において、前記通信制御変数は、輻輳ウィンドウであることを特徴とする。 According to a fourth aspect of the present invention, in the data communication apparatus according to any one of the first to third aspects, the communication control variable is a congestion window.
本発明によれば、送信待ちのデータを保持する送信データ保持手段が保持するデータ量を、通信制御変数の値に基づいて決定するようにしたので、エンドエンドの端末間での大幅なデータ転送遅延の増大を避けると共に、バッファ容量の逼迫を緩和することができるという効果が得られる。 According to the present invention, the amount of data held by the transmission data holding means holding the data waiting for transmission is determined based on the value of the communication control variable, so that a large amount of data transfer between end-end terminals can be achieved. There is an effect that an increase in delay can be avoided and the buffer capacity can be alleviated.
以下、図面を参照し、本発明を実施するための最良の形態について説明する。本実施形態においては、2コネクション分割方式による通信システムにおいて用いられるデータ通信装置(PEP装置)を想定するものとする。本実施形態によるデータ通信装置は、例えば文献(T.Hasegawa、他2名,「TCP Gateway for Satellite−based Internet Service Considering Accommodation of Multiple Customers」,情報処理学会論文誌,社団法人情報処理学会,第43巻,第12号,p.3869−3877)に記載されたTCP−Vegasベースの輻輳制御を行う。 The best mode for carrying out the present invention will be described below with reference to the drawings. In the present embodiment, a data communication device (PEP device) used in a communication system based on the two-connection division method is assumed. The data communication apparatus according to the present embodiment is, for example, a document (T. Hasegawa, two others, “TCP Gateway for Satellite-based Internet Consuming of Multiple Customers”, Information Processing Society of Japan, Journal of Information Processing Society of Japan, 43. Vol. 12, No. 12, p. 3869-3877), which performs TCP-Vegas based congestion control.
図1は、本発明の一実施形態によるデータ通信装置の機能を階層的に示している。図において、送信端末側とPEP装置との間のコネクションをTCP connection #1とし、受信端末側とPEP装置との間のコネクションをTCP connection #2とする。NIC71およびNIC72は、このデータ通信装置の物理的なインタフェースである。
FIG. 1 hierarchically shows functions of a data communication apparatus according to an embodiment of the present invention. In the figure, the connection between the transmitting terminal side and the PEP device is
ドライバ73は、NIC71および72と上位層とのデータの橋渡しを行う。IPモジュール74はIPを実行するソフトウェアである。TCPモジュール75(データ量決定手段)はTCPを実行するソフトウェアである。特に、TCPモジュール75は受信バッファ13a(受信データ保持手段)および送信バッファ13b(送信データ保持手段)の管理ならびに輻輳制御を行う。ドライバ73、IPモジュール74、およびTCPモジュール75は、OSの中核部分をなすKernelによって管理される。PEPプロセス76(データ格納手段)は、データ通信装置が実行するアプリケーションプログラムを制御する。
The
TCPモジュール75は、送信バッファ13bがデータ通信装置と受信端末との間で保持すべきデータ量Tbuf2(送信バッファ13bによって既に保持されているデータ量と、PEPプロセス76が送信バッファ13bに新たに書き込むことができるデータ量との和)を、輻輳制御に用いられる輻輳制御変数(通信制御変数)である輻輳ウィンドウcwndに基づいて決定する。TCPモジュール75は、データ通信装置−受信端末間の遅延変動等に応じて、輻輳ウィンドウcwndを増減させる。例えば、TCPモジュール75は、データ通信装置−受信端末間の遅延を測定し、遅延が増加した場合に輻輳ウィンドウcwndを減少させる。あるいは、受信端末側へ送信されたパケットが紛失した場合に、輻輳ウィンドウcwndを減少させる。このように輻輳ウィンドウcwndには、TCP connection #2における送信レートの変動が反映される。TCPモジュール75は、送信バッファ13bが保持するデータ量Tbuf2を、以下の式に基づいて決定する。
Tbuf2=C×cwnd ・・・(1)
ただし、Cは正の定数(デフォルト値:2)であるとする。
The
Tbuf2 = C × cwnd (1)
Note that C is a positive constant (default value: 2).
また、TCPモジュール75は、送信端末に対して広告する受信ウィンドウサイズ(Rwin:受信バッファ13aが新たに保持することができるデータ量)を以下の式に基づいて決定する。
Rwin=min(max(0,Tbuf2−DTsum),Rbuf) ・・・(2)
ただし、min(X,Y)=X(X≦Y)、min(X,Y)=Y(X>Y)、max(X,Y)=Y(X≦Y)、min(X,Y)=X(X>Y)である。
Further, the
Rwin = min (max (0, Tbuf2-DTsum), Rbuf) (2)
However, min (X, Y) = X (X ≦ Y), min (X, Y) = Y (X> Y), max (X, Y) = Y (X ≦ Y), min (X, Y) = X (X> Y).
DTsumは、送信バッファ13bが現在保持しているデータ量である。このデータ量は、データ通信装置−受信端末間において、ACKが返送されるまで送信バッファ13bに保持されている送信済みのデータパケット、およびこれから送信される送信待ちのデータパケットの総量(蓄積パケット量)を表している。また、Rbufは受信バッファ量(送信端末に対して広告可能なウィンドウサイズの最大値)を表す。このように、受信ウィンドウサイズRwinは、送信バッファ13bが保持すべきデータ量Tbuf2に基づいて決定される。すなわち、輻輳ウィンドウcwndの値が、送信端末−データ通信装置間の受信ウィンドウサイズRwinに反映される。
DTsum is the amount of data currently held in the
次に、上記のデータ通信装置の動作について説明する。TCPコネクション(TCP connection #1およびTCP connection #2)が確立すると、、送信端末から送信されたデータがNIC71を介して入力される。このデータは、ドライバ73によって上位層に渡され、IPモジュール74によって処理される。続いて、データはTCPモジュール75に渡され、TCPモジュール75は、このデータの誤りを検査し、データに誤りがなかった場合、データを受信バッファ13aに格納すると共に、ACKを作成する。このACKは、IPモジュール74、ドライバ73、およびNIC71を介して送信端末へ送信される。
Next, the operation of the data communication apparatus will be described. When the TCP connection (
TCPモジュール75は、受信端末側の遅延変動等に応じて輻輳ウィンドウcwndを決定し、(1)式に基づいて、送信バッファ13bが保持すべきデータ量Tbuf2を決定する。また、(2)式に基づいて、送信側に広告する受信バッファサイズRwinを決定する。PEPプロセス76は、受信バッファ13aが空になるか、送信バッファ13bによって保持されるデータ量がTbuf2となるまで、受信バッファ13aからデータを読み出し、送信バッファ13bに格納する。
The
TCPモジュール75は、送信バッファ13bからデータを読み出し、IPモジュール74、ドライバ73、およびNIC72を介して受信端末へデータを送信する。受信端末へ送信されるデータはTCPモジュール75によってコピーされ、受信端末からACKが返信されるまでの間、送信バッファ13bによって保持される。受信端末からのACKが受信された場合、TCPモジュール75は、そのACKに対応した送信バッファ13b中のデータを削除する。
The
次に、上記の機能および動作を実現するデータ通信装置のハードウェア構成について説明する。図2は、本実施形態によるデータ通信装置の構成を示すブロック図である。以下、図中の各構成について説明する。I/F部10aおよび10bは、データが入出力されるインタフェースであり、図1におけるNIC71および72に相当する構成である。送受信部11(送信手段、受信手段)は、データの送受信に係る処理を行い、図1におけるドライバ73およびIPモジュール74に相当する機能を有する。
Next, a hardware configuration of the data communication apparatus that realizes the above functions and operations will be described. FIG. 2 is a block diagram showing the configuration of the data communication apparatus according to the present embodiment. Hereinafter, each component in the figure will be described. The I /
バッファ/ウィンドウ管理部12(データ量決定手段、データ格納手段)は、TCPモジュール75、およびPEPプロセス76の一部に相当する機能を有する。特に、バッファ/ウィンドウ管理部12は、バッファ13の管理を行うと共に、TCPに基づいた輻輳制御、フロー制御、および誤り制御(データ中の誤りの検査およびACKの作成等)等を行う。バッファ13は、図1における受信バッファ13aおよび送信バッファ13bを含むバッファであり、受信されたデータを一時的に記憶する。
The buffer / window management unit 12 (data amount determination means, data storage means) has a function corresponding to a part of the
なお、本実施形態においては、2コネクション分割方式による通信システムへの適用を想定して説明を行ったが、本実施形態によるデータ通信装置を3コネクション分割方式による通信システムに適用した場合も同様である。また、本実施形態のデータ通信装置はTCP−Vegasベースの輻輳制御を行うとしたが、このデータ通信装置に他のTCP(TCP−Reno等)を適用してもよい。また、(1)式における定数Cの値は2に限定されるものではなく、他の固定値を用いてもよいし、輻輳ウィンドウcwnd等に応じて値が変化する値であってもよい。 In this embodiment, the description has been made on the assumption that it is applied to a communication system using the two-connection division method. is there. The data communication apparatus according to the present embodiment performs TCP-Vegas-based congestion control. However, another TCP (TCP-Reno or the like) may be applied to the data communication apparatus. Further, the value of the constant C in the expression (1) is not limited to 2, but another fixed value may be used, or a value that changes depending on the congestion window cwnd or the like.
上述したように、本実施形態において、TCPモジュール75(バッファ/ウィンドウ管理部12)は、送信バッファ13bが保持するデータ量Tbuf2を、受信端末との通信における通信制御に用いられる輻輳ウィンドウcwndの値に応じて決定する。この場合、TCPモジュール75は、輻輳ウィンドウcwndが増加した場合には、Tbuf2を増加させ、輻輳ウィンドウcwndが減少した場合には、Tbuf2を減少させる。これにより、受信端末側で大きな遅延が発生しているにも関わらず、データ通信装置がデータを大量に蓄積するということがなくなるので、エンドエンドの端末間における予期しない転送遅延の発生を避けることができる。また、バッファ容量の逼迫を緩和することもできる。
As described above, in this embodiment, the TCP module 75 (buffer / window management unit 12) uses the data amount Tbuf2 held by the
また、送信バッファ13bが保持すべきデータ量Tbuf2(または輻輳ウィンドウcwnd)に応じて、受信バッファ13aが新たに保持することができるデータ量をTCPモジュール75(バッファ/ウィンドウ管理部12)が決定することにより、上記の効果をより高めることができる。本実施形態によるデータ通信装置は、特に、無線通信路のように遅延の大きな回線や、非対称性の高い回線、伝送誤り率の大きな回線等に好適である。
Further, the TCP module 75 (buffer / window management unit 12) determines the data amount that can be newly held by the
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成はこれらの実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。 As described above, the embodiments of the present invention have been described in detail with reference to the drawings, but the specific configuration is not limited to these embodiments, and includes design changes and the like within a scope not departing from the gist of the present invention. It is.
1・・・サーバ、2・・・インターネット、3・・・送信地球局、4・・・通信衛星、5・・・加入者ネットワーク、6・・・クライアント端末、10a,10b・・・I/F部、11・・・送受信部、12・・・バッファ/ウィンドウ管理部、13・・・バッファ、13a,23a・・・受信バッファ、13b,23b・・・送信バッファ、31,53・・・TCPゲートウェイ、32,52・・・ルータ、33,51・・・アンテナ、71,72,81,82・・・NIC、73,83・・・ドライバ、74,84・・・IPモジュール、75,85・・・TCPモジュール、76,86・・・PEPプロセス。
DESCRIPTION OF
Claims (4)
前記送信装置によって送信されたデータを受信する受信手段と、
前記受信手段によって受信された前記データを前記受信装置へ送信する送信手段と、
前記受信手段によって受信された前記データを保持する受信データ保持手段と、
前記送信手段によって送信される送信待ちの前記データを保持する送信データ保持手段と、
前記受信データ保持手段から前記データを読み出して、前記送信データ保持手段に格納するデータ格納手段と、
前記受信装置との通信における通信制御に用いられる通信制御変数の値に応じて、前記送信データ保持手段が保持するデータ量を決定するデータ量決定手段と、
を具備することを特徴とするデータ通信装置。 In a data communication apparatus that is provided between a transmission apparatus and a reception apparatus that perform data communication, and that speeds up data communication performed between the transmission apparatus and the reception apparatus,
Receiving means for receiving data transmitted by the transmitting device;
Transmitting means for transmitting the data received by the receiving means to the receiving device;
Received data holding means for holding the data received by the receiving means;
Transmission data holding means for holding the data waiting for transmission transmitted by the transmission means;
Data storage means for reading the data from the received data holding means and storing it in the transmission data holding means;
Data amount determining means for determining a data amount held by the transmission data holding means according to a value of a communication control variable used for communication control in communication with the receiving device;
A data communication apparatus comprising:
The data communication apparatus according to any one of claims 1 to 3, wherein the communication control variable is a congestion window.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004165625A JP4510524B2 (en) | 2004-06-03 | 2004-06-03 | Data communication device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004165625A JP4510524B2 (en) | 2004-06-03 | 2004-06-03 | Data communication device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005348107A true JP2005348107A (en) | 2005-12-15 |
JP4510524B2 JP4510524B2 (en) | 2010-07-28 |
Family
ID=35500066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004165625A Expired - Fee Related JP4510524B2 (en) | 2004-06-03 | 2004-06-03 | Data communication device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4510524B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013014963A1 (en) | 2011-07-26 | 2013-01-31 | 株式会社日立製作所 | Communication device |
WO2019244966A1 (en) * | 2018-06-22 | 2019-12-26 | 日本電気株式会社 | Communication device, communication method, and program |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07250100A (en) * | 1994-03-09 | 1995-09-26 | Kokusai Denshin Denwa Co Ltd <Kdd> | Mutual communication system between lans using wide area network and mutual connection device used therefor |
JPH07273828A (en) * | 1994-03-28 | 1995-10-20 | Nippon Telegr & Teleph Corp <Ntt> | Repeater of data communication system and its repeating method |
JPH07273829A (en) * | 1994-03-28 | 1995-10-20 | Nippon Telegr & Teleph Corp <Ntt> | Repeater for data communication system and its repeating method |
JPH10247944A (en) * | 1997-03-05 | 1998-09-14 | Kokusai Denshin Denwa Co Ltd <Kdd> | Relay controller and its method |
JPH11252179A (en) * | 1998-03-05 | 1999-09-17 | Kdd Corp | Tcp communication high speed device for asymmetrical line |
JP2000209224A (en) * | 1999-01-18 | 2000-07-28 | Chokosoku Network Computer Gijutsu Kenkyusho:Kk | Flow control method |
-
2004
- 2004-06-03 JP JP2004165625A patent/JP4510524B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07250100A (en) * | 1994-03-09 | 1995-09-26 | Kokusai Denshin Denwa Co Ltd <Kdd> | Mutual communication system between lans using wide area network and mutual connection device used therefor |
JPH07273828A (en) * | 1994-03-28 | 1995-10-20 | Nippon Telegr & Teleph Corp <Ntt> | Repeater of data communication system and its repeating method |
JPH07273829A (en) * | 1994-03-28 | 1995-10-20 | Nippon Telegr & Teleph Corp <Ntt> | Repeater for data communication system and its repeating method |
JPH10247944A (en) * | 1997-03-05 | 1998-09-14 | Kokusai Denshin Denwa Co Ltd <Kdd> | Relay controller and its method |
JPH11252179A (en) * | 1998-03-05 | 1999-09-17 | Kdd Corp | Tcp communication high speed device for asymmetrical line |
JP2000209224A (en) * | 1999-01-18 | 2000-07-28 | Chokosoku Network Computer Gijutsu Kenkyusho:Kk | Flow control method |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013014963A1 (en) | 2011-07-26 | 2013-01-31 | 株式会社日立製作所 | Communication device |
US8811419B2 (en) | 2011-07-26 | 2014-08-19 | Hitachi, Ltd. | Communication device |
WO2019244966A1 (en) * | 2018-06-22 | 2019-12-26 | 日本電気株式会社 | Communication device, communication method, and program |
JPWO2019244966A1 (en) * | 2018-06-22 | 2021-06-24 | 日本電気株式会社 | Communication equipment, communication methods and programs |
US11588736B2 (en) | 2018-06-22 | 2023-02-21 | Nec Corporation | Communication apparatus, communication method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP4510524B2 (en) | 2010-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6091733A (en) | Communication device using communication protocol including transport layer and communication method using communication protocol including transport layer | |
US5519699A (en) | Method of protocol termination and a packet data communication system applied the method | |
US7912064B2 (en) | System and method for handling out-of-order frames | |
AU2004272192B2 (en) | Internet protocol optimizer | |
US7397800B2 (en) | Method and system for data placement of out-of-order (OOO) TCP segments | |
JP5020076B2 (en) | High performance TCP suitable for low frequency ACK system | |
CN112583874B (en) | Message forwarding method and device of heterogeneous network | |
US7139268B1 (en) | Performance of intermediate nodes with flow splicing | |
US11743192B2 (en) | Managing transmission control protocol (TCP) traffic | |
US7957409B2 (en) | Methods and devices for transmitting data between storage area networks | |
US9509450B2 (en) | Snoop virtual receiver time | |
US20070291782A1 (en) | Acknowledgement filtering | |
US8578040B2 (en) | Method, system and article for client application control of network transmission loss tolerance | |
Farber et al. | Thinwire protocol for connecting personal computers to the Internet | |
JP4229807B2 (en) | Data transfer method, TCP proxy device, and network system using the same | |
EP1460804B1 (en) | System and method for handling out-of-order frames (fka reception of out-of-order tcp data with zero copy service) | |
JP4510524B2 (en) | Data communication device | |
US6742041B1 (en) | Method for improving performance in computer networks based on lossy channels | |
Ha et al. | On the characteristics of TCP/NC tunneling in heterogeneous environments | |
JP2020043486A (en) | Communication device, communication device control method, and program | |
CN117692389A (en) | RDMA message information retransmission method, device, electronic equipment and storage medium | |
CN115632748A (en) | Data processing method and device, electronic equipment and storage medium | |
Farber et al. | RFC0914: Thinwire protocol for connecting personal computers to the Internet | |
JPH11205332A (en) | Data transfer system and method | |
JP2006067132A (en) | Congestion control system of communication based on tcp, router, congestion control method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070308 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20070309 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20071011 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071011 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090624 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090721 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090915 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090917 |
|
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: 20100423 |
|
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: 20100430 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4510524 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |