JP2013121028A - Data packet transmission method and system - Google Patents

Data packet transmission method and system Download PDF

Info

Publication number
JP2013121028A
JP2013121028A JP2011267526A JP2011267526A JP2013121028A JP 2013121028 A JP2013121028 A JP 2013121028A JP 2011267526 A JP2011267526 A JP 2011267526A JP 2011267526 A JP2011267526 A JP 2011267526A JP 2013121028 A JP2013121028 A JP 2013121028A
Authority
JP
Japan
Prior art keywords
data
transmission
tcp connection
unit
divided data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011267526A
Other languages
Japanese (ja)
Inventor
Yoshiro Yamada
義朗 山田
Kei Kitamura
圭 北村
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 JP2011267526A priority Critical patent/JP2013121028A/en
Publication of JP2013121028A publication Critical patent/JP2013121028A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To restrict a reduction in transmission rate by congestion control in a transmission line in which packets do not disappear due to congestion.SOLUTION: In a data packet transmission system of the invention herein applied for, a counter device 20 on the transmitting side comprises: a plurality of TCP connection units 21 which, when a congestion window exceeds a prescribed value, notify to the effect that TCP connections are in a standby state; a management unit 22 which manages the usage state of the TCP connection units; and a transmitting unit 23 which acquires sockets for TCP connections in a standby state from the management unit 22, divides the original data to be transmitted to which a single TCP connection belongs, and packetizes the divided data and the beginning positions of the divided data and then assigns them to a plurality of sockets in a standby state.

Description

本発明は、データパケット伝送方法及びシステムに係り、特に、データ送信側とデータ受信側の間の伝送路が物理帯域すべてを使用もしくは帯域保障された上限帯域において輻輳が無いシステムにおいて、TCP(Transmission Control Protocol)の並列コネクションを用いて高速且つ安定的にデータ伝送するデータパケット伝送方法及びシステムに関する。   The present invention relates to a data packet transmission method and system, and more particularly to a TCP (Transmission) in a system in which a transmission path between a data transmission side and a data reception side uses the entire physical band or is not congested in an upper limit band in which bandwidth is guaranteed. The present invention relates to a data packet transmission method and system for performing high-speed and stable data transmission using a parallel connection of (Control Protocol).

非特許文献1に示されるように、TCPによるデータ伝送では、送信側が独自に持つ輻輳ウィンドウのサイズに基づいてデータ送信のレートを決定し、この輻輳ウィンドウサイズはデータ伝送開始時点では非常に小さい値で、受信側からの確認応答パケットが返ってくる毎に僅かずつ増加させる(スロースタート)という方法をとっている。従って、データ送信の開始時点からのパケット数が一定数を超えないと理論値に近いスループットは得られない。また、一定期間データ伝送が行われなかった場合も輻輳ウィンドウサイズを初期値にするよう推奨されている。   As shown in Non-Patent Document 1, in data transmission by TCP, the data transmission rate is determined based on the size of the congestion window uniquely owned by the transmission side, and this congestion window size is a very small value at the time of starting data transmission. Thus, every time an acknowledgment packet from the receiving side is returned, it is increased slightly (slow start). Therefore, a throughput close to the theoretical value cannot be obtained unless the number of packets from the start of data transmission exceeds a certain number. It is also recommended to set the congestion window size to the initial value even when data transmission is not performed for a certain period.

[HTTP1.1 Keep Alive 機能]に示されるように、アプリケーションからの要求ごとにTCPのコネクションを確立/終了するのではなく、最初にセッションを確立した後はすぐに終了せずに再利用することで、TCPのコネクションの確立/終了にかかる時間を省く工夫がなされてきた。[HTTP1.1 Keep Alive 機能]は結果的に比較的短い間隔でデータ転送要求があった場合には輻輳ウィンドウサイズが維持されるが、TCPのコネクションを確立直後やデータ転送要求の間隔が長い場合にはTCPのスロースタートの機能が働く。   As shown in [HTTP1.1 Keep Alive Function], instead of establishing / terminating a TCP connection for each request from an application, the session should be reused without being immediately terminated after the first session is established. Thus, a device has been devised to save time for establishing / ending a TCP connection. [HTTP1.1 Keep Alive function] results in the congestion window size being maintained when there is a data transfer request at a relatively short interval, but immediately after establishing a TCP connection or when the interval between data transfer requests is long. TCP has a slow start function.

M.Allman, V. Paxon and W.Stevens, “TCP congestion Control”, RFC2581, April 1999,http://www.ietf.org/rfc/rfc2581.txtM.M. Allman, V.M. Paxon and W.M. Stevens, “TCP congestion control”, RFC2581, April 1999, http: // www. ietf. org / rfc / rfc2581. txt M. Mathis, et al.,“TCP Extended Statistics MIB.”, Network Working Group, Request for Comments: 4898, Category: Standards Track, May 2007,http://www.ietf.org/rfc/rfc4898.txtM.M. Mathis, et al. , “TCP Extended Statistics MIB.”, Network Working Group, Request for Comments: 4898, Category: Standards Track, May 2007, http: // www. ietf. org / rfc / rfc4898. txt

データ送信側とデータ受信側を直結もしくは帯域が厳密に管理された伝送路などで輻輳によるパケット消失が起こらない場合において本来輻輳制御は不要であるが、伝送開始時もしくは一定期間データ伝送が行われなかった場合にはスロースタートの機能が働く。また、伝送エラーによりパケットが消失しても輻輳制御が働き輻輳ウィンドウサイズの減少により帯域が半分に制限されてしまう。   When packet loss due to congestion does not occur in a transmission path where the data transmission side and data reception side are directly connected or the bandwidth is strictly controlled, congestion control is not necessary, but data transmission is performed at the start of transmission or for a certain period of time. If not, the slow start function works. Even if a packet is lost due to a transmission error, congestion control works and the bandwidth is limited to half due to a decrease in the congestion window size.

本発明は、輻輳によるパケット消失が起こらない伝送路において、輻輳制御による伝送レートの低下を抑制することを目的とする。   An object of the present invention is to suppress a decrease in transmission rate due to congestion control in a transmission path in which packet loss due to congestion does not occur.

上記目的を達成するために、本願発明のデータパケット伝送システムは、1以上の物理リンク上でTCPコネクションを用いて対向装置間でデータ伝送を行うデータパケット伝送システムであって、送信側の前記対向装置は、TCPコネクションを確立して待機中状態である旨を通知する複数のTCP接続部と、前記TCP接続部からの通知を受信することによって前記TCP接続部の使用状態を管理する管理部と、前記管理部から待機中状態にあるTCPコネクションのソケットを取得し、伝送対象となるオリジナルデータを分割し、当該分割データ及び当該分割データの先頭位置をパケット化して前記待機中状態の複数のソケットに割り振る送信部と、を備え、受信側の前記対向装置は、TCPコネクションを確立して前記分割データを受信する複数のTCP接続部と、前記分割データの先頭位置を示すポインタに対応した位置から受信バッファに書き込み、全ての前記分割データの前記受信バッファへの書き込みの完了後に前記オリジナルデータを出力する受信部を備える。   In order to achieve the above object, a data packet transmission system according to the present invention is a data packet transmission system that performs data transmission between opposing devices using a TCP connection on one or more physical links, wherein A plurality of TCP connection units that establish a TCP connection and notify that the TCP connection unit is in a waiting state; and a management unit that manages a usage state of the TCP connection unit by receiving a notification from the TCP connection unit The socket of the TCP connection in the standby state is acquired from the management unit, the original data to be transmitted is divided, the divided data and the start position of the divided data are packetized, and the plurality of sockets in the standby state A transmitting unit for allocating the divided data to the receiving side, the opposite device on the receiving side establishes a TCP connection and A plurality of TCP connection units to be received and a reception that writes to the reception buffer from a position corresponding to a pointer indicating the start position of the divided data, and outputs the original data after completion of writing all the divided data to the reception buffer A part.

本願発明のデータパケット伝送システムは、送信側の対向装置が複数のTCP接続部、管理部及び送信部を備え、受信側の対向装置がTCP接続部及び受信部を備えるため、伝送対象となる分割されたオリジナルデータを含むパケットを複数のTCPコネクションに割り振り、TCP層で並列伝送を行い、伝送後にオリジナルデータに戻すことができる。したがって、本願発明のデータパケット伝送システムは、輻輳によるパケット消失が起こらない伝送路において、輻輳制御による伝送レートの低下を抑制することができる。   In the data packet transmission system according to the present invention, the transmission-side counter device includes a plurality of TCP connection units, a management unit, and a transmission unit, and the reception-side counter device includes a TCP connection unit and a reception unit. Packets including the original data can be allocated to a plurality of TCP connections, and can be transmitted in parallel in the TCP layer, and returned to the original data after transmission. Therefore, the data packet transmission system of the present invention can suppress a decrease in transmission rate due to congestion control in a transmission path where packet loss due to congestion does not occur.

本願発明のデータパケット伝送システムでは、前記送信側のTCP接続部は、輻輳ウィンドウの所定値以下への低下又はリンクの異常を検出し、前記管理部は、輻輳ウィンドウの低下又はリンクの異常を検出した前記送信側のTCP接続部にソケット異常が発生した旨を前記送信部に通知し、前記送信部は、ソケット異常の発生したソケットに割り振っていた前記分割データを、前記待機中状態のソケットに割り振る。
本発明により、複数のTCPコネクションのいずれかで輻輳ウィンドウの所定値以下への低下又はリンクの異常が発生すると、予め設定しているが実際のデータ伝送に用いていない待機中状態のTCPコネクションに切り替えることができる。これにより、輻輳ウィンドウの所定値以下への低下又はリンクの異常への対応を迅速に行うことができるとともに、未転送データの発生を防ぐことができる。
In the data packet transmission system according to the present invention, the TCP connection unit on the transmission side detects a decrease in a congestion window to a predetermined value or a link abnormality, and the management unit detects a decrease in the congestion window or a link abnormality. The transmission unit notifies the transmission unit that a socket abnormality has occurred in the TCP connection unit on the transmission side, and the transmission unit assigns the divided data allocated to the socket in which the socket abnormality has occurred to the standby socket. Allocate.
According to the present invention, when a congestion window falls below a predetermined value or a link abnormality occurs in any of a plurality of TCP connections, a TCP connection in a standby state that is set in advance but is not used for actual data transmission is set. Can be switched. As a result, it is possible to quickly cope with a decrease in the congestion window to a predetermined value or lower or a link abnormality, and it is possible to prevent occurrence of untransferred data.

本願発明のデータパケット伝送システムでは、前記送信側のTCP接続部は、輻輳ウィンドウが設定値を超えるまでダミーデータパケットを送出することによって前記待機中状態とする。
本発明により、分割されたオリジナルデータを割り振る複数のTCPコネクションの送信側の輻輳ウィンドウサイズを大きくしておくことができる。
In the data packet transmission system according to the present invention, the TCP connection unit on the transmission side enters the waiting state by sending a dummy data packet until the congestion window exceeds a set value.
According to the present invention, it is possible to increase the congestion window size on the transmission side of a plurality of TCP connections to which divided original data is allocated.

上記目的を達成するために、本願発明のデータパケット伝送方法は、1以上の物理リンク上でTCPコネクションを用いて対向装置間でデータ伝送を行うデータパケット伝送方法であって、送信側のTCP接続部が、輻輳ウィンドウが所定値超となった待機中状態である旨を管理部に通知することによって、管理部が送信側のTCP接続部の使用状態を管理する使用状態管理手順と、送信部が、伝送対象となるオリジナルデータを分割し、当該分割データ及び当該分割データの先頭位置をパケット化して前記待機中状態の複数のソケットに割り振り、送信側のTCP接続部が送信部からの指示に従って前記分割データを送信する分割データ送信手順と、受信側のTCP接続部がTCPコネクションを確立して前記分割データを受信し、受信部が、前記分割データの先頭位置を示すポインタに対応した位置から前記分割データを受信バッファに書き込む分割データ受信手順と、受信部が、全ての前記分割データの前記受信バッファへの書き込みの完了後に前記オリジナルデータを読み出すオリジナルデータ読み出し手順と、を順に有する。   In order to achieve the above object, a data packet transmission method of the present invention is a data packet transmission method for performing data transmission between opposing devices using a TCP connection on one or more physical links, and a TCP connection on the transmission side The management unit manages the usage state of the TCP connection unit on the transmission side by notifying the management unit that the congestion window has exceeded the predetermined value, and the transmission unit The original data to be transmitted is divided, the divided data and the head position of the divided data are packetized and allocated to the plurality of standby sockets, and the TCP connection unit on the transmission side follows the instruction from the transmission unit. A divided data transmission procedure for transmitting the divided data, and a TCP connection unit on the receiving side establishes a TCP connection to receive the divided data, and a receiving unit A divided data reception procedure for writing the divided data into a reception buffer from a position corresponding to a pointer indicating a head position of the divided data, and a receiving unit after the writing of all the divided data into the reception buffer is completed An original data reading procedure for reading data in order.

本願発明のデータパケット伝送方法は、使用状態管理手順と、分割データ送信手順と、分割データ受信手順と、オリジナルデータ読み出し手順と、を順に有するため、伝送対象となる分割されたオリジナルデータを含むパケットを複数のTCPコネクションに割り振り、TCP層で並列伝送を行い、伝送後にオリジナルデータに戻すことができる。したがって、本願発明のデータパケット伝送方法は、輻輳によるパケット消失が起こらない伝送路において、輻輳制御による伝送レートの低下を抑制することができる。   Since the data packet transmission method of the present invention has a use state management procedure, a divided data transmission procedure, a divided data reception procedure, and an original data reading procedure in order, a packet including divided original data to be transmitted Can be allocated to a plurality of TCP connections, parallel transmission can be performed in the TCP layer, and the original data can be restored after transmission. Therefore, the data packet transmission method of the present invention can suppress a decrease in transmission rate due to congestion control in a transmission path where packet loss due to congestion does not occur.

本願発明のデータパケット伝送方法では、送信側のTCP接続部が、輻輳ウィンドウの所定値以下への低下又はリンクの異常を検出するソケット異常検出手順と、前記送信部が、ソケット異常の発生したソケットに割り振っていた前記分割データを、前記待機中状態のソケットに割り振るソケット代替手順と、を前記分割データ送信手順と前記分割データ受信手順の間にさらに有してもよい。
本発明により、複数のTCPコネクションのいずれかで輻輳ウィンドウの低下又はリンクの異常が発生すると、予め設定しているが実際のデータ伝送に用いていない他のTCPコネクションに切り替えることができる。これにより、パケット損失の対応を迅速に行うことができるとともに、未転送データの発生を防ぐことができる。
In the data packet transmission method of the present invention, the TCP connection unit on the transmission side detects a decrease in the congestion window to a predetermined value or lower or a link abnormality detection procedure, and the transmission unit is a socket in which a socket abnormality has occurred. A socket replacement procedure for allocating the divided data allocated to the socket in the waiting state between the divided data transmission procedure and the divided data reception procedure.
According to the present invention, when a congestion window decreases or a link abnormality occurs in any of a plurality of TCP connections, it is possible to switch to another TCP connection that is set in advance but is not used for actual data transmission. As a result, packet loss can be dealt with quickly, and occurrence of untransferred data can be prevented.

本願発明のデータパケット伝送方法では、前記使用状態管理手順において、輻輳ウィンドウが設定値を超えるまで送信側のTCP接続部がダミーデータパケットを送出することによって前記待機中状態とする。
本発明により、分割されたオリジナルデータを割り振る複数のTCPコネクションの送信側の輻輳ウィンドウサイズを大きくしておくことができる。
In the data packet transmission method of the present invention, in the use state management procedure, the TCP connection unit on the transmission side transmits the dummy data packet until the congestion window exceeds a set value, thereby setting the standby state.
According to the present invention, it is possible to increase the congestion window size on the transmission side of a plurality of TCP connections to which divided original data is allocated.

なお、上記各発明は、可能な限り組み合わせることができる。   The above inventions can be combined as much as possible.

本発明によれば、輻輳の起きない伝送路において、伝送エラー等によるパケットの消失による輻輳ウィンドウの低下が起きる状況においてもTCP輻輳制御によるスループット低下の影響を低減することが可能になる。   According to the present invention, it is possible to reduce the influence of a decrease in throughput due to TCP congestion control even in a situation where a congestion window decreases due to packet loss due to a transmission error or the like in a transmission path in which congestion does not occur.

本発明の第一の実施形態に係るデータパケット伝送システムの一例を示す。1 shows an example of a data packet transmission system according to a first embodiment of the present invention. 本発明の第二の実施形態の概略の構成を示すブロック図である。It is a block diagram which shows the structure of the outline of 2nd embodiment of this invention. 本発明の第三の実施形態の概略の動作を示す説明図である。It is explanatory drawing which shows the operation | movement of the outline of 3rd embodiment of this invention. 本発明の第四の実施形態の概略の動作を示す説明図である。It is explanatory drawing which shows the operation | movement of the outline of 4th embodiment of this invention.

添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施の例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。   Embodiments of the present invention will be described with reference to the accompanying drawings. The embodiments described below are examples of the present invention, and the present invention is not limited to the following embodiments. In the present specification and drawings, the same reference numerals denote the same components.

(第一の実施形態)
図1に、本発明の第一の実施形態に係るデータパケット伝送システムの一例を示す。本実施形態に係るデータパケット伝送システムは、任意のアプリケーション10が対向装置20を用いてデータを送信し、任意のアプリケーション40が対向装置30を用いてデータを受信する。送信側の対向装置20は、複数のTCP接続部21と、管理部22と、送信部23と、を備える。受信側の対向装置30は、複数のTCP接続部31と、受信部32と、を備える。本実施形態に係るデータ伝送方法は、使用状態管理手順と、分割データ送信手順と、分割データ受信手順と、オリジナルデータ読み出し手順と、を順に有する。
(First embodiment)
FIG. 1 shows an example of a data packet transmission system according to the first embodiment of the present invention. In the data packet transmission system according to the present embodiment, an arbitrary application 10 transmits data using the opposite device 20, and an arbitrary application 40 receives data using the opposite device 30. The transmission-side counter device 20 includes a plurality of TCP connection units 21, a management unit 22, and a transmission unit 23. The reception-side counter device 30 includes a plurality of TCP connection units 31 and a reception unit 32. The data transmission method according to the present embodiment includes a use state management procedure, a divided data transmission procedure, a divided data reception procedure, and an original data reading procedure in this order.

使用状態管理手順では、TCP接続部21は、TCPコネクションを確立してパケットを送信し、輻輳ウィンドウが所定値超となった場合は待機中状態である旨を通知する。そして、管理部22は、TCP接続部21からの通知を受信することによってTCP接続部21の使用状態を管理する。ここで、TCP接続部21は、輻輳ウィンドウが設定値を超えるまでダミーデータパケットを送出することで待機中状態とする。   In the usage state management procedure, the TCP connection unit 21 establishes a TCP connection and transmits a packet. When the congestion window exceeds a predetermined value, the TCP connection unit 21 notifies the standby state. Then, the management unit 22 manages the usage state of the TCP connection unit 21 by receiving a notification from the TCP connection unit 21. Here, the TCP connection unit 21 enters a standby state by sending dummy data packets until the congestion window exceeds the set value.

分割データ送信手順では、送信部23が、送信側のアプリケーションから送信要求を受信し、管理部22から待機中状態にあるTCPコネクションのソケットを取得し、伝送対象となるオリジナルデータを分割し、当該分割データ及び当該分割データの先頭位置をパケット化して待機中状態の複数のソケットに割り振る。本実施形態では、送信部23が送信側の対向装置20に備わる例について説明するが、アプリケーションが送信部23の機能を有していてもよい。   In the divided data transmission procedure, the transmission unit 23 receives a transmission request from an application on the transmission side, acquires a socket of a TCP connection in a standby state from the management unit 22, divides original data to be transmitted, The divided data and the start position of the divided data are packetized and allocated to a plurality of standby sockets. In the present embodiment, an example in which the transmission unit 23 is provided in the transmission-side counter device 20 will be described, but an application may have the function of the transmission unit 23.

分割データ受信手順では、受信部32が、TCP接続部31を介して分割データを受信し、分割データの先頭位置を示すポインタに対応した位置から受信バッファ321に書き込む。全ての分割データの受信バッファ321への書き込みの完了後に、オリジナルデータ読み出し手順を実行する。   In the divided data reception procedure, the receiving unit 32 receives the divided data via the TCP connection unit 31 and writes it into the reception buffer 321 from the position corresponding to the pointer indicating the head position of the divided data. After the writing of all the divided data to the reception buffer 321 is completed, the original data reading procedure is executed.

オリジナルデータ読み出し手順では、受信部32が、オリジナルデータを受信側のアプリケーション40に出力する。   In the original data reading procedure, the receiving unit 32 outputs the original data to the receiving-side application 40.

以上の手順を順に実行することで、輻輳ウィンドウサイズが大きい状態でソケットを送信部23に渡すことができるため、TCPのスロースタートの影響を無くす事が出来る。これにより、輻輳の起きない伝送路において、伝送エラー等によるパケットの消失による輻輳ウィンドウの低下が起きる状況においてもTCP輻輳制御によるスループット低下の影響を低減することが可能になる。   By executing the above procedure in order, the socket can be passed to the transmission unit 23 in a state where the congestion window size is large, so that the influence of the TCP slow start can be eliminated. As a result, even in a situation where a congestion window is lowered due to packet loss due to a transmission error or the like in a transmission path in which congestion does not occur, it is possible to reduce the influence of throughput reduction due to TCP congestion control.

ここで、分割データ送信手順と分割データ受信手順の間に、ソケット異常検出手順及びソケット代替手順をさらに有していてもよい。   Here, a socket abnormality detection procedure and a socket replacement procedure may be further provided between the divided data transmission procedure and the divided data reception procedure.

ソケット異常検出手順では、TCP接続部21が、輻輳ウィンドウの所定値以下への低下又はリンクの異常を検出する。管理部22が、輻輳ウィンドウの低下又はリンクの異常を検出したTCP接続部にソケット異常が発生した旨を送信部23に通知する。
ソケット代替手順では、送信部23が、ソケット異常の発生したソケットに割り振っていた分割データを、待機中状態にある別のソケットに割り振る。
In the socket abnormality detection procedure, the TCP connection unit 21 detects a decrease of the congestion window to a predetermined value or a link abnormality. The management unit 22 notifies the transmission unit 23 that a socket abnormality has occurred in the TCP connection unit that has detected a decrease in the congestion window or a link abnormality.
In the socket replacement procedure, the transmission unit 23 allocates the divided data allocated to the socket in which the socket abnormality has occurred to another socket in the standby state.

ここで、パケット損失の際にTCPコネクションを切り替える場合、切り替え前のコネクションにおいて転送が完了していない分割データを伝送する必要がある。この場合、以下の動作のいずれかを行う必要がある。
(A)転送が完了していない分割データ全体を転送。
(B)受信側が分割データの受信済みの領域、もしくは未受信の領域を送信側に通知して完了していない分割データを伝送する。
(A)もしくは(B)の動作を行うことで、未転送データの発生を防ぐことができる。
Here, when the TCP connection is switched in the event of packet loss, it is necessary to transmit the divided data that has not been transferred in the connection before the switching. In this case, one of the following operations needs to be performed.
(A) The entire divided data that has not been transferred is transferred.
(B) The receiving side notifies the transmitting side of the area where the divided data has been received or has not been received, and transmits the divided data that has not been completed.
By performing the operation (A) or (B), generation of untransferred data can be prevented.

以上のソケット異常検出手順及びソケット代替手順を有することで、輻輳ウィンドウの低下又はリンクの異常が起こった場合に、別の待機中状態のソケットと交換することができる。これにより、パケット消失による輻輳ウィンドウサイズ半減の影響を無くす事が可能になる。   By having the socket abnormality detection procedure and the socket replacement procedure described above, when a congestion window is lowered or a link abnormality occurs, the socket can be replaced with another waiting socket. This makes it possible to eliminate the influence of halving the congestion window size due to packet loss.

(第二の実施形態)
図2は本発明の第二の実施形態の概略の構成を示している。
装置間の接続において各装置では接続開始要求に基づき複数のコネクションスレッド100及び管理スレッド110が生成される。各コネクションスレッドはコネクション開始101として対向装置とTCPコネクションを確立する。
(Second embodiment)
FIG. 2 shows a schematic configuration of the second embodiment of the present invention.
In connection between devices, each device generates a plurality of connection threads 100 and management threads 110 based on a connection start request. Each connection thread establishes a TCP connection with the opposite apparatus as a connection start 101.

ここで、コネクションスレッド100はTCP接続部21として機能し、管理スレッド110は管理部22として機能する。コネクションスレッド100は、コネクション開始部101と、ウォームアップ状態部102と、待機中状態部103と、使用中状態部104と、異常検出状態部105と、コネクション終了状態部106と、を備える。管理スレッド110は、待機中コネクションリスト111と、使用中コネクションリスト112と、を備える。   Here, the connection thread 100 functions as the TCP connection unit 21, and the management thread 110 functions as the management unit 22. The connection thread 100 includes a connection start unit 101, a warm-up state unit 102, a standby state unit 103, a busy state unit 104, an abnormality detection state unit 105, and a connection end state unit 106. The management thread 110 includes a standby connection list 111 and a busy connection list 112.

コネクション開始部101がTCPコネクションを確立すると、ウォームアップ状態部102の動作によってウォームアップ状態に移行し、対向装置との間で高頻度にダミーデータを交換して、輻輳ウィンドウを拡大させる。設定値以上に輻輳ウィンドウを拡大したら待機中状態部103に移行し、管理スレッド110に通知を行う。管理スレッド110は待機中コネクションリスト111にそのコネクションスレッドを登録する。待機中状態103のコネクションスレッド100は、輻輳ウィンドウが縮小しないように待機中状態部103が低頻度にダミーデータを交換する。これにより、TCPコネクションの送信側の輻輳ウィンドウサイズを大きくしておくことができる。   When the connection start unit 101 establishes the TCP connection, the operation is shifted to the warm-up state by the operation of the warm-up state unit 102, and dummy data is exchanged with the opposite device at a high frequency to expand the congestion window. When the congestion window is enlarged beyond the set value, the process shifts to the waiting state unit 103 and notifies the management thread 110. The management thread 110 registers the connection thread in the waiting connection list 111. In the connection thread 100 in the waiting state 103, the waiting state unit 103 exchanges dummy data at a low frequency so that the congestion window is not reduced. As a result, the congestion window size on the transmission side of the TCP connection can be increased.

管理スレッド110は、送信側のアプリケーションからソケットの要求を受けると待機中コネクションリスト111から必要数のコネクション情報(ソケット等)をアプリケーションに渡し、該当コネクションスレッド100への通知および待機コネクションリスト111からの削除・使用中コネクションリスト112への登録を行う。送信側のアプリケーションは、送信部23としての機能を有する。管理スレッド110から通知を受けたコネクションスレッド100は、使用中状態部104に移行する。   When the management thread 110 receives a socket request from the application on the transmission side, the management thread 110 passes the necessary number of connection information (sockets, etc.) from the waiting connection list 111 to the application, and notifies the corresponding connection thread 100 and receives information from the waiting connection list 111. Registration in the deleted / in-use connection list 112 is performed. The application on the transmission side has a function as the transmission unit 23. The connection thread 100 that has received the notification from the management thread 110 shifts to the busy state unit 104.

管理スレッド110は、アプリケーションからソケット解放を受けると、該当コネクションスレッド100への通知および使用中コネクションリスト112からの削除・待機コネクションリスト111への登録を行う。通知を受けたコネクションスレッド100は使用中状態部103に移行する。各コネクションスレッド100では通信の異常を検出した場合、異常検出状態部105に移行する。   When the management thread 110 receives a socket release from the application, the management thread 110 notifies the connection thread 100 and registers it in the deletion / waiting connection list 111 from the in-use connection list 112. The connection thread 100 that has received the notification shifts to the busy state unit 103. When each connection thread 100 detects a communication abnormality, the process proceeds to the abnormality detection state unit 105.

使用中状態部103において異常検出した場合には管理スレッド110に通知し、管理スレッド110はアプリケーションにソケット異常を通知する。異常検出状態部105はコネクション回復可能な場合にはウォームアップ状態部102に移行し、回復不可能な場合にはコネクション終了状態部106に移行する。対向装置間の接続終了時には使用しているすべてのコネクションスレッド100がコネクション終了状態部106に移行後、すべてのスレッドを終了する。   When an abnormality is detected in the in-use state unit 103, the management thread 110 is notified, and the management thread 110 notifies the application of a socket abnormality. The abnormality detection state unit 105 shifts to the warm-up state unit 102 when the connection can be recovered, and shifts to the connection end state unit 106 when the connection cannot be recovered. At the end of the connection between the opposing devices, all the connection threads 100 used shift to the connection end state unit 106, and then all the threads are ended.

(第三の実施形態)
図3は本発明の第三の実施形態の概略の動作を示している。
この例では、装置A(201)、装置B(221)間が物理リンクLA1(202)〜LB1(222)、LA2(203)〜LB2(223)で接続され、LA1〜LB1にはTCPコネクション(204,224)CA1〜CB1,CA2〜CB2,CA3〜CB3、LA2〜LB2にはCA4〜CB4,CA5〜CB5が張られているものとする。また、縦軸は時間の進行を示している。
(Third embodiment)
FIG. 3 shows the schematic operation of the third embodiment of the present invention.
In this example, apparatus A (201) and apparatus B (221) are connected by physical links LA1 (202) to LB1 (222) and LA2 (203) to LB2 (223), and TCP connections ( 204, 224) CA1 to CB1, CA2 to CB2, CA3 to CB3, and LA2 to LB2 are stretched with CA4 to CB4 and CA5 to CB5. The vertical axis shows the progress of time.

この例での初期状態においてはCA1〜CB1,CA2〜CB2が使用中状態(205、225)、CA3〜CB3,CA4〜CB4,CA5〜CB5はウォームアップ状態(206、226)から待機中状態(207、227)に移行する。TCPコネクションCA2〜CB2で輻輳ウィンドウの低下(208)が検出されると、待機中状態のコネクションのうちCA2〜CB2の物理リンクLA1〜LB1ではない物理リンクLA2〜LB2から優先的に選択される(ここではCA4〜CB4が選択)。これは物理リンク障害の前兆として伝送エラー率上昇によるパケット消失が起こりやすいことを考慮している。リンク障害(209)の場合にはすべての使用中状態のコネクションを別のリンクの待機中状態のコネクションに移行し、使用中状態(210,230)とする。リンクの障害が回復した段階で直ちにウォームアップ状態(211,231)に移行する。   In the initial state in this example, CA1 to CB1, CA2 to CB2 are in use (205, 225), and CA3 to CB3, CA4 to CB4, CA5 to CB5 are in a standby state from the warm-up state (206, 226) ( 207, 227). When a decrease in the congestion window (208) is detected in the TCP connections CA2 to CB2, the connections are preferentially selected from the physical links LA2 to LB2 that are not the physical links LA1 to LB1 of the CA2 to CB2 among the waiting connections ( Here, CA4 to CB4 are selected). This takes into account that packet loss is likely to occur due to an increase in the transmission error rate as a precursor to a physical link failure. In the case of a link failure (209), all the connections in use are transferred to connections in the standby state of another link, and are set in use (210, 230). Immediately after the failure of the link is recovered, the state shifts to the warm-up state (211, 231).

(第四の実施形態)
図4は本発明の第四の実施形態の概略の動作を示している。
この例ではアプリケーションの送信バッファ(310)がTCPコネクション(320)を介して、対向装置のアプリケーションの受信バッファ(330)にデータを送信する様子を示している。
(Fourth embodiment)
FIG. 4 shows the schematic operation of the fourth embodiment of the present invention.
In this example, the transmission buffer (310) of the application transmits data to the reception buffer (330) of the application of the opposite apparatus via the TCP connection (320).

アプリケーションは転送するデータを書き込み済データ(313)の最後から送信バッファ空き領域(314)に追記していく。送信済データ(311)の次の領域に書込み済データ(313)が存在する場合、使用中状態(320a)のTCPコネクションに分割して受け渡し、送信中データ(312)とする。各コネクションに渡された分割データ(312a〜312c)はデータの開始位置を示すポインタを付加してパケット化して(322a〜322c)受信側に転送される。   The application appends the data to be transferred to the transmission buffer empty area (314) from the end of the written data (313). When written data (313) is present in the area next to transmitted data (311), the data is divided and transferred to a TCP connection in use (320a) to be transmitted data (312). The divided data (312a to 312c) passed to each connection is packetized with a pointer indicating the start position of the data (322a to 322c) and transferred to the receiving side.

転送中に輻輳ウィンドウの低下(324)を検出した場合、待機中状態(320b)のTCPコネクションを代替として割り当て、データパケットの再送(323b)を行う。   When a decrease in congestion window (324) is detected during transfer, the TCP connection in the waiting state (320b) is assigned as an alternative, and the data packet is retransmitted (323b).

対向装置のアプリケーションではパケットに含まれる分割データの開始位置を示すポインタに対応した位置から分割データを受信バッファに書込み、受信済データ(331)とする。   In the application of the opposite apparatus, the divided data is written into the reception buffer from the position corresponding to the pointer indicating the start position of the divided data included in the packet, and is set as received data (331).

受信側のアプリケーションは受信バッファ(330)から受信済データ(331)を読み出した後、受信バッファ空き領域(334)とする。   The application on the reception side reads the received data (331) from the reception buffer (330) and sets it as a reception buffer free area (334).

以上、第一の実施形態〜第四の実施形態において説明したように、本発明の第一の観点によると、対向装置間で輻輳が起こらない1以上の物理リンクで接続されるTCPの並列コネクションによるデータ伝送において、ユーザーデータの伝送が開始されるよりも前に各TCPコネクションを確立して管理スレッドにおいて待機中状態とする。アプリケーションから管理スレッドにソケット要求があると待機中状態のTCPコネクションを選択し、そのソケットをアプリケーションに渡す。輻輳ウィンドウの低下やリンク異常を検出した場合、管理スレッドはアプリケーションにソケット異常を通知して、アプリケーションは該当ソケットを解放し、代替えのソケットをアプリケーションに渡して未送信データの送信を行う。   As described above in the first embodiment to the fourth embodiment, according to the first aspect of the present invention, the parallel connection of TCP connected by one or more physical links that do not cause congestion between the opposing devices. In the data transmission according to the above, each TCP connection is established before the transmission of user data is started, and the management thread is set to a waiting state. When there is a socket request from the application to the management thread, the TCP connection in the waiting state is selected and the socket is passed to the application. When a congestion window drop or link abnormality is detected, the management thread notifies the application of the socket abnormality, the application releases the corresponding socket, passes the alternative socket to the application, and transmits unsent data.

輻輳ウィンドウの取得・監視は非特許文献2にある[TCP Extended Statistics MIB]に対応したOS/プロダクトであれば直接行う事が出来る。間接的には通信遅延時間(RTT)を基にTCPの読み出し側のタイムアウトを設定することでパケット消失もしくは輻輳ウィンドウの低下を知る事が出来る。また、RTO(Retransmission Time Out)や遅延ACK等のTCPのフロー制御で用いるタイマと同等のタイマや、重複ACKを用いるか、或いは受信側で所定のバイト数の転送に要する時間を計測し実効的なスループットに換算して送信側に通知することで、輻輳ウィンドウの低下を知る事が出来る。   The acquisition / monitoring of the congestion window can be directly performed by any OS / product corresponding to [TCP Extended Statistics MIB] in Non-Patent Document 2. Indirectly, it is possible to know the packet loss or the decrease in the congestion window by setting a timeout on the reading side of the TCP based on the communication delay time (RTT). In addition, the timer equivalent to the timer used in TCP flow control such as RTO (Retransmission Time Out) and delayed ACK, duplicate ACK is used, or the time required for transferring a predetermined number of bytes on the receiving side is measured and effective. It is possible to know a decrease in the congestion window by converting to a proper throughput and notifying the transmission side.

異常検出されたコネクションは障害事由によりダミーデータのパケットの伝送を開始して待機中状態とするか、コネクションを終了させ使用不可とする。待機中状態のコネクションは輻輳ウィンドウを維持するために低頻度でダミーデータパケットの送出を行う。   The connection in which the abnormality is detected starts transmission of dummy data packets due to a failure reason and enters a waiting state, or terminates the connection and disables the connection. The connection in the waiting state transmits dummy data packets at a low frequency in order to maintain the congestion window.

このように、輻輳ウィンドウサイズが大きい状態でソケットをアプリケーションに渡すことで、TCPのスロースタートの影響を無くす事が出来る。また、パケット消失が起こった場合、別の待機中状態のソケットと交換することで、パケット消失による輻輳ウィンドウサイズ半減の影響を無くす事が可能になる。   In this way, the influence of the TCP slow start can be eliminated by passing the socket to the application in a state where the congestion window size is large. In addition, when packet loss occurs, it is possible to eliminate the influence of the congestion window size halving due to packet loss by exchanging with another waiting socket.

本発明はTCP輻輳制御方式とは独立であるので、TCP輻輳制御方式を複数の中から選択できる場合には、実使用環境において最も輻輳ウィンドウサイズが大きい方式を採用する。TCP輻輳制御方式の選択により平均スループットの向上が期待される。本発明において輻輳ウィンドウの低下検出閾値を平均スループットに設定することにより、輻輳ウィンドウサイズが変動する環境においても平均スループットの最低帯域保証を行うことが可能になる。   Since the present invention is independent of the TCP congestion control method, when the TCP congestion control method can be selected from a plurality of methods, the method having the largest congestion window size in the actual use environment is adopted. The average throughput is expected to be improved by selecting the TCP congestion control method. In the present invention, by setting the congestion window lowering detection threshold value to the average throughput, it is possible to guarantee the minimum bandwidth of the average throughput even in an environment where the congestion window size varies.

本発明の第二の観点によると、2以上の物理リンクを使用している場合、第一の観点に加えてソケット異常を通知した場合に別の物理リンク上のTCPコネクションのソケットを優先的に選択して代替えとしてアプリケーションに渡す。このように、別の物理リンクのTCPコネクションを選択することで、物理リンク自体に障害の原因があった場合に、代替えのソケットも輻輳ウィンドウの低下が起こることを回避する事が出来る。   According to the second aspect of the present invention, when two or more physical links are used, the socket of the TCP connection on another physical link is given priority when notifying the socket abnormality in addition to the first aspect. Select and pass to the application as an alternative. In this way, by selecting a TCP connection of another physical link, it is possible to avoid the congestion window from being lowered in the alternative socket when there is a cause of failure in the physical link itself.

本発明の第三の観点によると、第一の観点における管理スレッドとアプリケーションの中間に送信スレッド及び受信スレッドを配置する。送信スレッドでは送信バッファを用意してアプリケーションから送信要求があるとデータを送信バッファの空き領域に未送信データとして書き込む。一方、必要数のソケットを管理スレッドから受け取り、送信バッファ内に未送信データが存在する場合にそのデータを分割し、分割したデータの先頭位置と分割データをパケット化してそれぞれソケットを介して送信する。輻輳ウィンドウの低下等送信異常が検出された場合そのソケットを解放し、代替えのソケットを管理スレッドから受け取り該当する分割データを再送信する。受信スレッドでは受信バッファを用意して、ソケットを介してパケットを受信すると、パケットに含まれる分割データの先頭位置に対応する受信バッファアドレスから受信した分割データを書き込み、受信済データとする。アプリケーションから受信要求があると受信済データを渡し、対応する受信バッファを解放する。このように、受信スレッド及び送信スレッドを用いることで、並列コネクションであることを意識することなくアプリケーションを構成する事が出来る。また、ソケットを直接的に使用することで、輻輳ウィンドウの低下をより早く検出することが可能になる。   According to the third aspect of the present invention, the transmission thread and the reception thread are arranged between the management thread and the application in the first aspect. In the transmission thread, a transmission buffer is prepared, and when there is a transmission request from the application, the data is written in the empty area of the transmission buffer as untransmitted data. On the other hand, the necessary number of sockets are received from the management thread, and when there is unsent data in the transmission buffer, the data is divided, and the start position of the divided data and the divided data are packetized and transmitted through the sockets. . When a transmission abnormality such as a decrease in the congestion window is detected, the socket is released, an alternative socket is received from the management thread, and the corresponding divided data is retransmitted. In the reception thread, a reception buffer is prepared, and when a packet is received via a socket, the divided data received from the reception buffer address corresponding to the head position of the divided data included in the packet is written and used as received data. When there is a reception request from the application, the received data is passed and the corresponding reception buffer is released. As described above, by using the reception thread and the transmission thread, it is possible to configure an application without being aware of the parallel connection. Further, by directly using the socket, it becomes possible to detect a decrease in the congestion window earlier.

本発明の第四の観点によると、第三の観点に第二の観点と同様に、送信異常が検出された場合代替えとして別の物理リンクのTCPコネクションを選択することで、物理リンク自体に障害の原因があった場合に、代替えのソケットも輻輳ウィンドウの低下が起こることを回避する事が出来る。   According to the fourth aspect of the present invention, when a transmission abnormality is detected in the third aspect, the TCP connection of another physical link is selected as an alternative when the transmission abnormality is detected. If there is a cause of the problem, the alternative socket can also avoid the decrease in the congestion window.

本発明は情報通信産業に適用することができる。   The present invention can be applied to the information communication industry.

10:送信側のアプリケーション
20:送信側の対向装置
21:コネクションスレッド
22:管理スレッド
23:送信スレッド
24:送信バッファ
31:コネクションスレッド
32:受信スレッド
33:受信バッファ
40:受信側のアプリケーション
100:コネクションスレッド
101:コネクション開始状態部
102:ウォームアップ状態部
103:待機中状態部
104:使用中状態部
105:異常検出状態部
106:コネクション終了状態部
110:管理スレッド
111:待機中コネクションリスト
112:使用中コネクションリスト
120:アプリケーション
201:装置A
202:物理リンクLA1
203:物理リンクLA2
204:TCPコネクション(CA1〜CA5)
205:使用中状態(CA1〜CA2)
206:ウォームアップ状態(CA3〜CA5)
207:待機中状態(CA3〜CA5)
208:パケット消失、209リンク障害
210:使用中状態(CA4〜CA5)
211:ウォームアップ状態(CA1〜CA3)
221:装置B
222:物理リンクLB1
223:物理リンクLB2
224:TCPコネクション(CB1〜CB5)
225:使用中状態(CB1〜CB2)
226:ウォームアップ状態(CB3〜CB5)
227:待機中状態(CB3〜CB5)
230:使用中状態(CB4〜CB5)
231:ウォームアップ状態(CB1〜CB3)
310:送信バッファ
311:送信済データ
312(312a〜312c):送信中データ
313:書込済データ
314:送信データ空領域
320:TCPコネクション
321:送信済パケット
322(322a〜322c):送信中パケット
323b:再送信中パケット
324:伝送障害
330:受信バッファ
331:受信済データ
332:受信中データ(332a〜332c)
334:受信バッファ空き領域
10: Transmission-side application 20: Transmission-side counter device 21: Connection thread 22: Management thread 23: Transmission thread 24: Transmission buffer 31: Connection thread 32: Reception thread 33: Reception buffer 40: Reception-side application 100: Connection Thread 101: Connection start state portion 102: Warm-up state portion 103: Waiting state portion 104: In-use state portion 105: Abnormality detection state portion 106: Connection end state portion 110: Management thread 111: Waiting connection list 112: Use Medium connection list 120: Application 201: Device A
202: Physical link LA1
203: Physical link LA2
204: TCP connection (CA1 to CA5)
205: State in use (CA1 to CA2)
206: Warm-up state (CA3 to CA5)
207: Waiting state (CA3 to CA5)
208: Packet loss, 209 link failure 210: Busy state (CA4 to CA5)
211: Warm-up state (CA1 to CA3)
221: Device B
222: Physical link LB1
223: Physical link LB2
224: TCP connection (CB1 to CB5)
225: State in use (CB1 to CB2)
226: Warm-up state (CB3 to CB5)
227: Waiting state (CB3 to CB5)
230: State in use (CB4 to CB5)
231: Warm-up state (CB1 to CB3)
310: transmission buffer 311: transmitted data 312 (312a to 312c): transmitting data 313: written data 314: transmission data empty area 320: TCP connection 321: transmitted packet 322 (322a to 322c): transmitting packet 323b: Retransmitting packet 324: Transmission failure 330: Receive buffer 331: Received data 332: Received data (332a to 332c)
334: Receive buffer free area

Claims (6)

1以上の物理リンク上でTCP(Transmission Control Protocol)コネクションを用いて対向装置間でデータ伝送を行うデータパケット伝送システムであって、
送信側の前記対向装置は、
TCPコネクションを確立して待機中状態である旨を通知する複数のTCP接続部と、
前記TCP接続部からの通知を受信することによって前記TCP接続部の使用状態を管理する管理部と、
前記管理部から待機中状態にあるTCPコネクションのソケットを取得し、伝送対象となるオリジナルデータを分割し、当該分割データ及び当該分割データの先頭位置をパケット化して前記待機中状態の複数のソケットに割り振る送信部と、
を備え、
受信側の前記対向装置は、
TCPコネクションを確立して前記分割データを受信する複数のTCP接続部と、
前記分割データの先頭位置を示すポインタに対応した位置から受信バッファに書き込み、全ての前記分割データの前記受信バッファへの書き込みの完了後に前記オリジナルデータを出力する受信部を備える、
データパケット伝送システム。
A data packet transmission system that performs data transmission between opposing devices using a TCP (Transmission Control Protocol) connection on one or more physical links,
The opposite device on the transmission side is
A plurality of TCP connections for establishing a TCP connection and notifying that it is in a standby state;
A management unit that manages a usage state of the TCP connection unit by receiving a notification from the TCP connection unit;
Obtains a TCP connection socket in the standby state from the management unit, divides the original data to be transmitted, packetizes the divided data and the start position of the divided data, and sends it to the plurality of sockets in the standby state. A transmitter to allocate;
With
The opposite device on the receiving side is
A plurality of TCP connection units for establishing a TCP connection and receiving the divided data;
A receiving unit that writes to the reception buffer from a position corresponding to a pointer indicating the start position of the divided data, and outputs the original data after completion of writing all the divided data to the reception buffer,
Data packet transmission system.
前記送信側のTCP接続部は、輻輳ウィンドウの所定値以下への低下又はリンクの異常を検出し、
前記管理部は、輻輳ウィンドウの低下又はリンクの異常を検出した前記送信側のTCP接続部にソケット異常が発生した旨を前記送信部に通知し、
前記送信部は、ソケット異常の発生したソケットに割り振っていた前記分割データを、前記待機中状態のソケットに割り振る
請求項1に記載のデータパケット伝送システム。
The TCP connection unit on the transmission side detects a decrease in the congestion window to a predetermined value or less or a link abnormality,
The management unit notifies the transmission unit that a socket abnormality has occurred in the TCP connection unit on the transmission side that has detected a decrease in congestion window or link abnormality,
The data packet transmission system according to claim 1, wherein the transmission unit allocates the divided data allocated to the socket in which the socket abnormality has occurred to the standby socket.
前記送信側のTCP接続部は、輻輳ウィンドウが設定値を超えるまでダミーデータパケットを送出することによって前記待機中状態となることを特徴とする請求項1又は2に記載のデータパケット伝送システム。   3. The data packet transmission system according to claim 1, wherein the TCP connection unit on the transmission side enters the standby state by sending a dummy data packet until a congestion window exceeds a set value. 4. 1以上の物理リンク上でTCPコネクションを用いて対向装置間でデータ伝送を行うデータパケット伝送方法であって、
送信側のTCP接続部が、輻輳ウィンドウが所定値超となった待機中状態である旨を管理部に通知することによって、管理部が送信側のTCP接続部の使用状態を管理する使用状態管理手順と、
送信部が、伝送対象となるオリジナルデータを分割し、当該分割データ及び当該分割データの先頭位置をパケット化して前記待機中状態の複数のソケットに割り振り、送信側のTCP接続部が送信部からの指示に従って前記分割データを送信する分割データ送信手順と、
受信側のTCP接続部がTCPコネクションを確立して前記分割データを受信し、受信部が、前記分割データの先頭位置を示すポインタに対応した位置から前記分割データを受信バッファに書き込む分割データ受信手順と、
受信部が、全ての前記分割データの前記受信バッファへの書き込みの完了後に前記オリジナルデータを読み出すオリジナルデータ読み出し手順と、
を順に有するデータパケット伝送方法。
A data packet transmission method for performing data transmission between opposing devices using a TCP connection on one or more physical links,
Usage state management in which the management unit manages the usage state of the TCP connection unit on the transmission side by notifying the management unit that the TCP connection unit on the transmission side is in a standby state in which the congestion window exceeds a predetermined value Procedure and
The transmission unit divides the original data to be transmitted, packetizes the divided data and the start position of the divided data, and allocates the packets to the plurality of standby sockets. A divided data transmission procedure for transmitting the divided data according to an instruction;
A divided data reception procedure in which a TCP connection unit on the receiving side establishes a TCP connection to receive the divided data, and the receiving unit writes the divided data into a reception buffer from a position corresponding to a pointer indicating the head position of the divided data When,
An original data reading procedure in which the receiving unit reads the original data after completing the writing of all the divided data to the reception buffer;
A data packet transmission method comprising:
送信側のTCP接続部が、輻輳ウィンドウの所定値以下への低下又はリンクの異常を検出するソケット異常検出手順と、
前記送信部が、ソケット異常の発生したソケットに割り振っていた前記分割データを、前記待機中状態のソケットに割り振るソケット代替手順と、
を前記分割データ送信手順と前記分割データ受信手順の間にさらに有する
ことを特徴とする請求項4に記載のデータパケット伝送方法。
A socket abnormality detection procedure in which the TCP connection unit on the transmission side detects a decrease in the congestion window below a predetermined value or a link abnormality;
A socket replacement procedure for allocating the divided data allocated to the socket in which the socket abnormality has occurred to the socket in the waiting state;
The data packet transmission method according to claim 4, further comprising: between the divided data transmission procedure and the divided data reception procedure.
前記使用状態管理手順において、輻輳ウィンドウが設定値を超えるまで送信側のTCP接続部がダミーデータパケットを送出することによって前記待機中状態となることを特徴とする請求項4又は5に記載のデータパケット伝送方法。   6. The data according to claim 4, wherein, in the use state management procedure, the TCP connection unit on the transmission side enters the waiting state by sending a dummy data packet until a congestion window exceeds a set value. Packet transmission method.
JP2011267526A 2011-12-07 2011-12-07 Data packet transmission method and system Pending JP2013121028A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011267526A JP2013121028A (en) 2011-12-07 2011-12-07 Data packet transmission method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011267526A JP2013121028A (en) 2011-12-07 2011-12-07 Data packet transmission method and system

Publications (1)

Publication Number Publication Date
JP2013121028A true JP2013121028A (en) 2013-06-17

Family

ID=48773491

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011267526A Pending JP2013121028A (en) 2011-12-07 2011-12-07 Data packet transmission method and system

Country Status (1)

Country Link
JP (1) JP2013121028A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015155996A1 (en) * 2014-04-10 2015-10-15 日本電気株式会社 Communication control apparatus, communication control method, and recording medium on which communication control program has been stored
JP2015204466A (en) * 2014-04-10 2015-11-16 株式会社東芝 Data transfer device, data transfer method, and communication device
JP2016152569A (en) * 2015-02-19 2016-08-22 株式会社シミュラティオ File transfer method and file transfer program
JP2018061287A (en) * 2017-12-12 2018-04-12 株式会社東芝 Data transfer device, data transfer method, and communication apparatus
JP2019520745A (en) * 2016-05-31 2019-07-18 アンカーフリー, インク.Anchorfree Inc. System and method for improving the total throughput of simultaneous connections

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015155996A1 (en) * 2014-04-10 2015-10-15 日本電気株式会社 Communication control apparatus, communication control method, and recording medium on which communication control program has been stored
JP2015204466A (en) * 2014-04-10 2015-11-16 株式会社東芝 Data transfer device, data transfer method, and communication device
JP2016152569A (en) * 2015-02-19 2016-08-22 株式会社シミュラティオ File transfer method and file transfer program
US10241929B2 (en) 2015-02-19 2019-03-26 Simulatio Corporation Data transfer method for parallel transfer of data divided into a plurality of data groups over multiple TCP connections simultaneously
JP2019520745A (en) * 2016-05-31 2019-07-18 アンカーフリー, インク.Anchorfree Inc. System and method for improving the total throughput of simultaneous connections
JP2018061287A (en) * 2017-12-12 2018-04-12 株式会社東芝 Data transfer device, data transfer method, and communication apparatus

Similar Documents

Publication Publication Date Title
JP6875545B2 (en) Providing communication for mobile communication devices using aggregated unit nodes and distributed unit nodes
JP2013121028A (en) Data packet transmission method and system
US9577791B2 (en) Notification by network element of packet drops
JP6094357B2 (en) COMMUNICATION METHOD, COMMUNICATION SYSTEM, AND COMMUNICATION DEVICE
WO2014092779A1 (en) Notification by network element of packet drops
JP2009147786A (en) Communication apparatus, data frame transmission control method, and program
Zhang et al. Taming TCP incast throughput collapse in data center networks
WO2015169057A1 (en) Packet transmission method and device, and interconnection interface
JPWO2008023656A1 (en) Communication device
CN102801508A (en) Control method for processing network packet loss
CN108632869B (en) Transmission control method and device
US9876727B2 (en) Physical-layer signaling of flow control updates
JP2010011255A (en) Wireless communication apparatus, and packet transfer method thereof
WO2016119415A1 (en) Method, apparatus and system for handling wlan link anomaly in msa
JP2011077795A (en) Ethernet transfer device
WO2018082603A1 (en) Information processing method and device
WO2008116399A1 (en) Dynamically adjusting method and apparatus for link state and bundled link state
WO2011155392A1 (en) Congestion control system, congestion control method and signalling device
BR112019015070A2 (en) METHOD AND APPLIANCES FOR DATA TRANSMISSION AND EQUIPMENT OF CUSTOMER FACILITIES
EP3202213A1 (en) Rlc delivery failure resolution
JP2012170014A (en) Controlling and monitoring high-speed millimeter wave link using out-of-band wireless channel
JP4645839B2 (en) Security communication apparatus and sequence number management method
WO2010045798A1 (en) Method and apparatus for setting the path state
WO2021249190A1 (en) Protocol data unit processing method and apparatus, sending device and storage medium
JP5558436B2 (en) Network system and network failure avoidance method