JP4599554B2 - TCP congestion control method for broadband, high-delay wireless networks - Google Patents
TCP congestion control method for broadband, high-delay wireless networks Download PDFInfo
- Publication number
- JP4599554B2 JP4599554B2 JP2004362297A JP2004362297A JP4599554B2 JP 4599554 B2 JP4599554 B2 JP 4599554B2 JP 2004362297 A JP2004362297 A JP 2004362297A JP 2004362297 A JP2004362297 A JP 2004362297A JP 4599554 B2 JP4599554 B2 JP 4599554B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- ack
- window size
- congestion
- loss
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Description
本発明は、広帯域かつ高遅延な無線ネットワークにおけるTCP通信を高速化する技術に関するものである。 The present invention relates to a technique for speeding up TCP communication in a broadband and high-delay wireless network.
現在、多くのOSに標準で実装されている従来のTCPの輻輳制御方式では、輻輳ウインドウサイズの増加を2つのアルゴリズム(スロースタートアルゴリズムと輻輳回避アルゴリズム)に基づいて行う。 In the conventional TCP congestion control method that is currently implemented as standard in many OSs, the congestion window size is increased based on two algorithms (slow start algorithm and congestion avoidance algorithm).
スロースタートアルゴリズムは、通信開始時から実行されるアルゴリズムで、輻輳ウインドウサイズがスロースタート閾値と呼ばれる値よりも小さい時に実行される。スロースタートアルゴリズムでは、輻輳ウインドウサイズの初期値を1セグメントサイズ分とし、送信したセグメントに対するACKが1つ戻る毎に1セグメントサイズ分だけ輻輳ウインドウサイズを増加させる。一方、輻輳回避アルゴリズムは、輻輳ウインドウサイズがスロースタート閾値以上の時、実行されるアルゴリズムである。輻輳回避アルゴリズムでは、輻輳ウインドウサイズ分のセグメントに対するACKが戻る毎に1セグメントサイズ分だけ輻輳ウインドウサイズを増加させる。従って、輻輳ウインドウサイズがスロースタート閾値になるまでは、スロースタートアルゴリズムにより指数的に輻輳ウインドウサイズを増加させ、その後は輻輳回避アルゴリズムにより線形的に輻輳ウインドウサイズを増加させる。 The slow start algorithm is executed from the start of communication, and is executed when the congestion window size is smaller than a value called a slow start threshold. In the slow start algorithm, the initial value of the congestion window size is set to one segment size, and the congestion window size is increased by one segment size every time one ACK for the transmitted segment is returned. On the other hand, the congestion avoidance algorithm is an algorithm that is executed when the congestion window size is greater than or equal to the slow start threshold. In the congestion avoidance algorithm, the congestion window size is increased by one segment size each time an ACK for a segment corresponding to the congestion window size is returned. Accordingly, the congestion window size is exponentially increased by the slow start algorithm until the congestion window size reaches the slow start threshold, and thereafter, the congestion window size is linearly increased by the congestion avoidance algorithm.
しかしながら、従来の輻輳ウインドウサイズ増加アルゴリズムには、次のような問題がある。伝搬遅延時間の小さいネットワークでは、データを送信してからACKが戻ってくるまでにかかる時間(ラウンドトリップ時間)が小さいため、迅速に輻輳ウインドウサイズが大きくなる。しかしながら、伝搬遅延時間が大きくなると、ラウンドトリップ時間も大きくなるため、輻輳ウインドウサイズの増加速度が非常に遅くなる。特に衛星回線のような非常に伝搬遅延時間が大きな回線がネットワーク内に存在すると、この増加速度の低下は顕著となる。さらに、利用可能な帯域が非常に大きい(数百Mbpsから数Gbps)場合、最大性能が得られる輻輳ウインドウサイズに増加するまでに非常に時間がかかることになる。 However, the conventional congestion window size increasing algorithm has the following problems. In a network having a small propagation delay time, since the time (round trip time) required from when data is transmitted until ACK returns is small, the congestion window size increases rapidly. However, when the propagation delay time is increased, the round trip time is also increased, so that the increase rate of the congestion window size is very slow. In particular, when a line having a very long propagation delay time such as a satellite line exists in the network, the decrease in the increase speed becomes remarkable. Furthermore, if the available bandwidth is very large (several hundred Mbps to several Gbps), it will take a very long time to increase to the congestion window size where maximum performance is obtained.
この解決策として、Dummyセグメントと呼ばれる特殊なセグメントを利用してネットワークの帯域を測定し、送信開始後すぐに測定帯域を用いて輻輳ウインドウサイズを増加させる改良方式が提案されている。(例えば、非特許文献1参照。)この改良方式で提案されているDummyセグメントは送信データセグメントの複製で、優先度が低く再送は行われない。従って、ルータで輻輳が発生した場合、Dummyセグメントは優先的にルータで破棄される。しかしながら改良方式は、送信側だけではなく受信側と中間に存在するすべてのルータでDummyセグメントを扱う制御を導入する必要がある。従って、インターネットに存在するルータ数は膨大であることを考慮すると、改良方式を実現することは非常に困難であるという問題がある。
As a solution to this problem, an improved method has been proposed in which a network segment is measured using a special segment called a dummy segment, and the congestion window size is increased using the measurement bandwidth immediately after the start of transmission. (For example, refer
次に、従来のTCPの輻輳制御方式ではデータロスが発生すると、輻輳が発生していると判断する。ただし、この場合データロスは、3つ以上の重複ACKの受信により判明する。するとTCPはネットワークの帯域を圧迫して更なる輻輳を発生させないために、輻輳ウインドウサイズをデータロスが発生した時の値の半分の値に設定する。しかしながら、データのロスは輻輳だけが原因ではなく、伝送路で発生するビット誤りによっても起こる。特に、無線ネットワークでは、途中経路における降雨や障害物などにより、有線ネットワークに比べて頻繁にビット誤りが発生する。ビット誤りによるデータロスが発生した場合、輻輳が発生している訳ではないため、ネットワークの帯域を圧迫しないよう輻輳ウインドウサイズを半減する必要はない。従って、従来のTCPを無線ネットワークに適用すると、ビット誤りによるデータロスが有線ネットワークと比較して頻繁に発生するため、性能が大きく劣化する問題がある。 Next, in the conventional TCP congestion control method, when data loss occurs, it is determined that congestion has occurred. In this case, however, the data loss is determined by receiving three or more duplicate ACKs. Then, the TCP sets the congestion window size to a value that is half of the value at the time of data loss in order not to cause further congestion by compressing the network bandwidth. However, data loss is caused not only by congestion but also by bit errors occurring in the transmission path. In particular, in a wireless network, bit errors occur more frequently than in a wired network due to rainfall or obstacles along the route. When data loss due to bit errors occurs, congestion does not occur, so there is no need to halve the congestion window size so as not to compress the network bandwidth. Therefore, when conventional TCP is applied to a wireless network, data loss due to bit errors occurs more frequently than in a wired network, and there is a problem that performance is greatly degraded.
このビット誤りによるデータロス発生時における性能劣化を防ぐために、ネットワークの帯域を測定し、帯域の測定値を基にデータロス後の輻輳ウインドウサイズを決定する改良方式が提案されている。(例えば、非特許文献2参照。)しかしながら、改良方式で提案されているネットワーク帯域の測定方式は、ある特定のネットワークでしか利用できず、様々なネットワークが混在するネットワークで利用すると帯域の追随性能が低下し、測定帯域の精度が下がる問題がある。
In order to prevent performance degradation when data loss occurs due to this bit error, an improved method has been proposed in which the network bandwidth is measured and the congestion window size after data loss is determined based on the measured bandwidth value. (For example, refer to Non-Patent
また、従来のTCPの輻輳制御方式では、再送タイマーと呼ばれるタイマーを保持している。TCPは通信途中にラウンドトリップ時間を測定し、この測定時間を基に再送タイマーの値を設定している。再送タイマーは、データを送信するときにセットされ、再送タイマーが切れる(以下、再送タイムアウトと呼ぶ)とデータを再送するという動作を行う。再送タイムアウトが発生すると、TCPはネットワークに重い輻輳が発生していると判断し、輻輳ウインドウサイズを1セグメントサイズ分に設定し、スロースタートアルゴリズムでデータの送信を再開する。 In the conventional TCP congestion control method, a timer called a retransmission timer is held. TCP measures the round trip time during communication, and sets the value of the retransmission timer based on this measurement time. The retransmission timer is set when data is transmitted, and performs an operation of retransmitting data when the retransmission timer expires (hereinafter referred to as retransmission timeout). When a retransmission timeout occurs, TCP determines that heavy congestion has occurred in the network, sets the congestion window size to one segment size, and resumes data transmission using the slow start algorithm.
従来のTCP輻輳制御方式では再送タイムアウトの原因がすべて輻輳によるデータロスであると想定している。しかしながら、ACKがバースト的にロスするか、またはACKの到着が一時的にそれまでよりも大きく遅れる場合においても再送タイムアウトは発生する。ただし、この場合、データロスは発生しておらず、輻輳も発生していない。ACKのバースト的なロスは無線ネットワークにおけるビット誤りによって良く起こる。また、ACKの遅延によるタイムアウトは、衛星ネットワークのように高速で伝搬遅延時間が非常に安定しているネットワークで起こりやすいことが知られている。従来のTCP輻輳制御方式では、このようなACKのロスまたは遅延について考慮されていない。また、従来のTCP輻輳制御方式は、送信側主導で再送タイムアウトの原因を探る機能を持っていない。しかも、受信側からACKのロスまたは遅延が発生していることを送信側に通知する機能もない。従って、高速で遅延が安定している無線ネットワークにおいてよく発生するACKのロスまたは遅延が発生した場合、再送タイムアウトの原因は輻輳ではないにも関わらず、ACKのロスまたは遅延を検出する方法がないため、従来のTCP輻輳制御方式のようにスロースタートアルゴリズムを実行し転送レートを下げる。さらに、この場合ACKのロスまたは遅延が発生しただけで、データは受信されているにも関わらず、データが失われたと誤った判断を行い、データを誤再送することになる。その結果、著しい性能の低下が起こり問題となる。 In the conventional TCP congestion control method, it is assumed that the cause of retransmission timeout is all data loss due to congestion. However, a retransmission timeout occurs even when the ACK is lost in bursts or when the arrival of the ACK is temporarily delayed more than before. However, in this case, no data loss has occurred and no congestion has occurred. ACK burst loss is often caused by bit errors in wireless networks. Also, it is known that timeout due to ACK delay is likely to occur in a network such as a satellite network that has a high propagation delay time and is very stable. The conventional TCP congestion control method does not consider such ACK loss or delay. Further, the conventional TCP congestion control method does not have a function of searching for the cause of retransmission timeout on the initiative of the transmission side. Moreover, there is no function for notifying the transmission side that an ACK loss or delay has occurred from the reception side. Therefore, when a loss or delay of ACK that occurs frequently in a wireless network with high-speed and stable delay occurs, there is no way to detect the loss or delay of ACK even though the cause of retransmission timeout is not congestion. Therefore, the slow start algorithm is executed as in the conventional TCP congestion control method to lower the transfer rate. Furthermore, in this case, only when an ACK loss or delay occurs, it is erroneously determined that the data has been lost although the data has been received, and the data is erroneously retransmitted. As a result, significant performance degradation occurs and becomes a problem.
この解決策として、再送タイムアウトが発生しデータを再送した後に、再送データのラウンドトリップ時間と再送タイムアウトが発生するまでのラウンドトリップ時間の大小関係を見ることでACKの遅延を検出する改良方式が提案されている。(例えば、非特許文献3参照。)しかしながら、この改良方式はACKの遅延を考慮しているだけで、ACKがロスした場合に対応できないという問題がある。また、改良方式はACKの遅延を検出すると、再送タイムアウト後の輻輳ウインドウサイズを1セグメントサイズ分に設定するため、ACKの遅延を検出できてもスループットの低下を避けることができないという問題もある。
As a solution to this, an improved method for detecting the ACK delay by examining the relationship between the round trip time of the retransmitted data and the round trip time until the retransmission timeout occurs after the retransmission timeout occurs and the data is retransmitted is proposed. Has been. (For example, refer to Non-Patent
本発明は、衛星回線を用いた衛星インターネットのように広帯域、高遅延な無線ネットワークにおいてTCPを利用した際に問題となる、大きな伝搬遅延による輻輳ウインドウ増加率の減少、ビット誤りによるデータロス時に輻輳ウインドウを不必要に低下させる問題、ACKのロスや遅延により発生する再送タイムアウト後にデータの誤再送と不必要な送信レートを低下させる問題すべてを解決し、TCP通信の高速化を実現するTCP輻輳制御方式を提供することを主たる課題とする。 The present invention is a problem when TCP is used in a broadband, high-delay wireless network such as a satellite Internet using a satellite line, a decrease in the increase rate of the congestion window due to a large propagation delay, and a congestion at the time of data loss due to a bit error. TCP congestion control that solves all the problems of unnecessarily reducing the window, the erroneous retransmission of data after the retransmission timeout caused by ACK loss and delay, and the unnecessary reduction of the transmission rate, and speeding up TCP communication The main challenge is to provide a method.
上記課題を解決するために、本発明では、まず、通信中にACKの到着間隔とACKが通知する受信データ量を基に利用可能帯域を測定し、この測定帯域を利用して帯域を最大限に利用できるウインドウサイズ(測定ウインドウサイズ)を導出し、導出した測定ウインドウサイズを、従来TCPのスロースタートアルゴリズムと輻輳回避アルゴリズムに基づく輻輳ウインドウサイズに足すことで、送信開始時から最大性能が得られる大きな輻輳ウインドウサイズでの通信が可能となることを特徴とするTCP輻輳制御方式を提案する。 In order to solve the above problems, the present invention first measures the available bandwidth based on the arrival interval of ACK and the amount of received data notified by ACK during communication, and uses this measurement bandwidth to maximize the bandwidth. The maximum performance can be obtained from the start of transmission by deriving the window size (measurement window size) that can be used for the transmission, and adding the derived measurement window size to the congestion window size based on the conventional TCP slow start algorithm and congestion avoidance algorithm This paper proposes a TCP congestion control method that enables communication with a large congestion window size.
また、本発明では、3つ以上の重複ACKの受信により判明するデータロス発生後の輻輳ウインドウサイズおよびスロースタート閾値の設定を、重複ACK受信時に測定した利用可能帯域から得られた測定ウインドウサイズを利用して設定することを特徴とするTCP輻輳制御方式を提案する。 Further, in the present invention, the setting of the congestion window size and the slow start threshold after occurrence of data loss determined by receiving three or more duplicate ACKs is set to the measurement window size obtained from the available bandwidth measured at the time of receiving the duplicate ACK. We propose a TCP congestion control method characterized by using and setting.
また、本発明では、通信中に行うネットワーク帯域の測定の際に、帯域を平滑化する係数をネットワークに合わせて動的に変化させることで、様々なネットワークに対応可能な追随性に優れた帯域測定方式を持つことを特徴とするTCP輻輳制御方式を提案する。 Also, in the present invention, when measuring the network bandwidth during communication, the bandwidth smoothing bandwidth can be adapted to various networks by dynamically changing the coefficient for smoothing the bandwidth according to the network. A TCP congestion control method characterized by having a measurement method is proposed.
また、本発明では、再送タイムアウトが発生した後、再送タイムアウトの原因がデータのロスであるのか、それとも、ACKのロスまたは遅延によるものかを判断するために、送信側がそれまでに送信した最大のシーケンス番号を持つデータをプローブパケットとして送信し、受信側からそれまでに連続で受信したデータの最大シーケンス番号をACKで通知させる。プローブパケットに対するACKの受信後、プローブパケットのシーケンス番号とプローブパケットに対するACKが通知するシーケンス番号を用いて、データのロス、ACKロスまたは遅延が発生しているかを判断させることを特徴とするTCP輻輳制御方式を提案する。 Further, in the present invention, after a retransmission timeout has occurred, in order to determine whether the cause of the retransmission timeout is a data loss or an ACK loss or delay, Data having a sequence number is transmitted as a probe packet, and the maximum sequence number of data continuously received from the receiving side is notified by ACK. TCP congestion characterized in that after receiving an ACK for a probe packet, it uses the sequence number of the probe packet and the sequence number notified by the ACK for the probe packet to determine whether data loss, ACK loss or delay has occurred A control method is proposed.
さらに、本発明では、上記TCP通信方式において、再送タイムアウトの原因がデータのロスであることが分かれば、従来のTCPの動作と同じく、データ再送後に輻輳ウインドウサイズを1データセグメントサイズ分に設定し、スロースタート閾値を測定ウインドウサイズに設定した後、スロースタートアルゴリズムで送信を再開し、ACKのロスまたは遅延が再送タイムアウトの原因であることが分かれば、輻輳ウインドウサイズとスロースタート閾値を再送タイムアウトが発生する前の値に設定し、続きの新しいデータの送信を行うことを特徴とするTCP輻輳制御方式を提案する。 Further, according to the present invention, if it is known that the cause of retransmission timeout is data loss in the above TCP communication method, the congestion window size is set to one data segment size after data retransmission as in the conventional TCP operation. After setting the slow start threshold to the measurement window size, restart the transmission with the slow start algorithm, and if the loss or delay of the ACK is the cause of the retransmission timeout, the congestion window size and the slow start threshold are set to the retransmission timeout. We propose a TCP congestion control method that is characterized by setting the previous value and transmitting new data.
本発明によれば、広帯域かつ大きな伝搬遅延時間を持つ無線ネットワークであっても、ネットワークの利用可能帯域を迅速にかつ最大限利用でき、高速なTCP通信が可能となる。また、輻輳ではなく無線ネットワークで頻繁に発生するビット誤りによるデータロス時に不要にデータ送信レートを下げることなく高速なTCP通信が可能となる。さらに、広帯域であるために遅延が安定しているネットワークで発生するACKの遅延や、無線ネットワークで発生し易いビット誤りによるACKのロスが原因で起こる不必要なデータの再送と送信レートの低下を防ぐことができ、データのロスだけではなく、ACKのロスまたは遅延が発生した場合にも、高速なTCP通信が可能となる。 According to the present invention, even in a wireless network having a wide band and a large propagation delay time, the available bandwidth of the network can be used quickly and to the maximum, and high-speed TCP communication is possible. In addition, high-speed TCP communication is possible without reducing the data transmission rate unnecessarily at the time of data loss due to bit errors that frequently occur in a wireless network rather than congestion. In addition, ACK delays that occur in networks where the delay is stable due to wide bandwidth, and unnecessary data retransmission and transmission rate reduction caused by ACK loss due to bit errors that are likely to occur in wireless networks. High-speed TCP communication is possible not only when data is lost, but also when ACK loss or delay occurs.
以下、図面を参照して本発明の実施形態を説明する。図1は、本発明に係るTCP輻輳制御方式の全体構成図である。本発明に係るTCP輻輳制御方式は、現在一般的に実装されているTCPの輻輳制御機構10の上に、4つの機構(11、12、13、14)を付け加えた構成となる。ただし、現在、広く一般的に利用されているTCPのバージョンはTCP Renoである。図1において、10は従来のTCPのバージョンであるTCP Renoの輻輳制御機構を示す。11はネットワークの帯域を測定するネットワーク帯域測定機構を示す。12は輻輳ウインドウサイズの増加速度を加速させるLWC(Lift Window Control)機構、13は重複ACKの受信により判明するデータロス発生後の輻輳ウインドウサイズとスロースタート閾値の設定を行うCWS(Congestion Window Setting)機構をそれぞれ示す。12のLWC機構と13のCWS機構は、11の機構から得られたネットワークの利用可能帯域を利用して動作する。また、14は再送タイムアウトの発生後、タイムアウトの原因がデータのロス、ACKロスまたは遅延によるものであるのかを検出し、再送タイムアウト後の輻輳ウインドウサイズとスロースタート閾値の設定を行うAEN(Acknowledgement Error Notification)機構を示す。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is an overall configuration diagram of a TCP congestion control method according to the present invention. The TCP congestion control method according to the present invention has a configuration in which four mechanisms (11, 12, 13, 14) are added to the TCP
本発明方式における、図1のTCP(Original)の輻輳制御機構10は、現在、一般的に実装されているTCPのバージョンであるTCP Renoの輻輳制御機構を示す。また、本発明方式は受信側が複数のデータのロスを通知可能な選択確認応答(Selective ACKnowledgement、SACK)を用いる場合を想定している。ここで、SACKを利用しない通常のACKは、1つのデータのロスのみ通知可能である。従って、本発明では、TCP(Original)の輻輳制御機構10はスロースタートアルゴリズム、輻輳回避アルゴリズム、早期再送アルゴリズム、早期回復アルゴリズムの4つのアルゴリズムを含む。
The TCP (Original)
ネットワーク帯域測定機構11では、受信側から送信されるACKを利用してネットワークの利用可能帯域を測定する。まず、送信側ホストがACKを受信した時刻をt(k)、1つ前のACK受信時刻をt(k-1)、送信データ量をd(k)とする。これらの情報を利用して、帯域のサンプル値BWsample(k)をACKを受信する毎に図2の式を利用して計算する。次に、計算した帯域サンプル値と過去の帯域値を利用し図3の式で平滑化することで、利用可能帯域BWkを導出する。図3において、ある時刻t(k)における利用可能帯域BWkは、過去の利用可能帯域BWk-1および時刻t(k)で取得した帯域のサンプル値BWsample(k)と前回測定の帯域サンプル値BWsample(k-1)の平均値から得られる。ただし、図3において、aは平滑化係数(0<a<1)を示し、通信を行うネットワーク毎に最適な値を設定する必要がある。また、平滑化係数aはネットワークの変動に敏感に反応させるときは、平滑化係数の値を小さくする(0に近づける)。逆にネットワークの激しい変動に対してあまり敏感に反応させたくないときは、平滑化係数を大きくする(1に近づける)。
The network
また、図3における平滑化係数aは、衛星回線のみを使った衛星ネットワークのような特定のネットワークのみを利用して通信する場合、それぞれのネットワークに適した固定値を利用する。インターネットのように、多種多様なネットワークを経由する場合は、ネットワークの状況に合わせて動的に平滑化係数aを設定すると、追随性が向上し、より精度の良い利用可能帯域が導出できる。また、利用可能帯域は平滑化係数が極限値(最大値1、最小値0)に近いと平滑化係数の変化に敏感となる。そこで、動的に平滑化係数aを設定する方法として、極限値に近づくにつれ増減が緩やかになり、それ以外の部分においては線形的に増減する曲線を描く数式の利用が考えられる。ただし、多種多様なネットワークを経由するインターネット上でTCP通信を行う際に、平滑化係数として固定値を利用しても、十分精度の良い帯域値を得ることは可能である。
Further, the smoothing coefficient a in FIG. 3 uses a fixed value suitable for each network when communication is performed using only a specific network such as a satellite network using only a satellite line. When passing through a variety of networks such as the Internet, if the smoothing coefficient a is dynamically set in accordance with the network conditions, the followability is improved and a usable bandwidth with higher accuracy can be derived. Also, the usable bandwidth becomes sensitive to changes in the smoothing coefficient when the smoothing coefficient is close to the limit value (
LWC機構12では、上記、ネットワーク帯域測定機構11により得られた利用可能帯域を用いて輻輳ウインドウサイズを増加させる。LWC機構は、まず、図4の式により、帯域を最大限利用できる測定ウインドウサイズcwnd_abeを導出する。図4において、BWは図3の式により得られる利用可能帯域(ただし、BWk=BWとしている。)、MSSは最大セグメントサイズ、RTTminはラウンドトリップ時間RTTの最小値を示す。ここで送信側は、送信開始時から、あるデータの送信時間とそのデータに対するACKの受信時間から得られるRTTを記録しておき、常に最小となる値をRTTminとして保持している。次に、TCP(Original)の輻輳制御機構(図1の10)のスロースタートアルゴリズムと輻輳回避アルゴリズムにより得られる輻輳ウインドウサイズcwnd_renoに、測定ウインドウサイズcwnd_abeを足すことで、輻輳ウインドウサイズcwndを図5で示される式で導出する。
The
LWC機構12において利用する、TCP(Original)の輻輳制御機構(図1の10)のスロースタートアルゴリズムと輻輳回避アルゴリズムでは、図6に示される式により輻輳ウインドウサイズcwnd_renoが設定される。図6において、スロースタートアルゴリズムは、データ送信開始時およびデータロスによる再送タイムアウトが発生したときに実行され、1つのACKを受信する毎に1セグメントサイズ分だけ輻輳ウインドウサイズcwnd_renoを増加させる。輻輳回避アルゴリズムは、輻輳ウインドウサイズcwnd_renoがスロースタート閾値ssthreshよりも大きくなると実行され、輻輳ウインドウサイズcwnd_reno分のACKを受信するごとに1セグメントサイズ分、輻輳ウインドウサイズcwnd_renoを増加させる。
In the slow start algorithm and congestion avoidance algorithm of the TCP (Original) congestion control mechanism (10 in FIG. 1) used in the
CWS機構13では、ネットワーク帯域測定機構11で導出された利用可能帯域から計算する測定ウインドウサイズcwnd_abeを利用して、3つ以上の重複ACKの受信により判明するデータロス発生後の輻輳ウインドウサイズcwndとスロースタート閾値ssthreshを設定する。図7はCWS機構における輻輳ウインドウサイズとスロースタート閾値の設定の式を示す。図7より、cwndがssthreshよりも小さい場合、ssthreshを測定ウインドウサイズcwnd_abeに設定し、cwndはそれまでの値を保持する。もしcwndがssthresh以上であれば、ssthreshを測定ウインドウサイズcwnd_abeに設定し、cwndはssthresh(つまり測定ウインドウサイズ)に設定する。また、データロスが発生し、上記の方法でcwndを設定した後、TCP(Original)の輻輳制御機構(図1の10)で保持されている輻輳ウインドウサイズcwnd_renoは、TCP Renoの通常の動作に従い、半分の値に設定される。
The
AEN機構14では、再送タイムアウトが発生すると、タイムアウトの原因がデータロスかまたは、ACKのロス/遅延によるもののどちらであるかを調査する。その結果、AEN機構は再送タイムアウトの原因が分かると、データロスの場合とACKロスまたは遅延の場合でそれぞれ別の動作を行う。
When a retransmission timeout occurs, the
まず、AENの動作概要を説明する。図8の(a)はデータロスにより再送タイムアウトが発生した場合、(b)はACKのロスまたは遅延により再送タイムアウトが発生した場合のAENの動作例をそれぞれ示す。図8において、RTOは再送タイムアウト時間、RTTはラウンドトリップ時間を示す。まず、時刻t0に送信したデータがロスまたは、送信したデータに対するACKがロス/遅延し、時刻t1に再送タイムアウトが発生すると、再送タイムアウトの原因を調査するために、プローブパケットを送信する。ここで、このプローブパケット(以下、AEN-Proveと呼ぶ)として、送信側がそれまでに送信しているデータの内、最大のシーケンス番号を持つデータを利用する。つまり、最新のシーケンス番号を持つ送信済みデータを再送することになる。なお、プローブパケットは、確実に送信するために複数個出すことも可能である。AEN-Proveを受け取った受信側は、それまでに連続して受信したデータの最大のシーケンス番号を示すACK(以下、AEN-ACKと呼ぶ)を送信側に返す。時刻t2でAEN−ACKを受信した送信側は、AEN-Proveのシーケンス番号PsegとAEN-ACKが通知するそれまでに連続して受信したデータの最大シーケンス番号Packを利用して、図9に示すように再送タイムアウトの原因がデータロスであるのか、そえともACKのロスまたは遅延であるのかを判断する。図9において、PsegはAEN-Probeのシーケンス番号、PackはAEN-ACKが通知するシーケンス番号を示す。図9より、PsegがPackよりも大きければ(Pseg>Pack)、データのロスが発生していると判断し、PsegがPack以下であれば(Pseg<=Pack)、ACKのロスまたは遅延が発生していると判断する。 First, an outline of AEN operation will be described. FIG. 8A shows an example of AEN operation when a retransmission timeout occurs due to data loss, and FIG. 8B shows an AEN operation example when a retransmission timeout occurs due to ACK loss or delay. In FIG. 8, RTO indicates a retransmission timeout time, and RTT indicates a round trip time. First, when the data transmitted at time t0 is lost or the ACK for the transmitted data is lost / delayed and a retransmission timeout occurs at time t1, a probe packet is transmitted to investigate the cause of the retransmission timeout. Here, as the probe packet (hereinafter referred to as AEN-Prove), data having the maximum sequence number among the data transmitted by the transmission side is used. That is, the transmitted data having the latest sequence number is retransmitted. It should be noted that a plurality of probe packets can be sent out for reliable transmission. The receiving side that has received AEN-Prove returns an ACK (hereinafter referred to as AEN-ACK) indicating the maximum sequence number of the data that has been received so far to the transmitting side. The transmitting side that has received the AEN-ACK at time t2 uses the sequence number Pseg of AEN-Prove and the maximum sequence number Pack of data that has been received continuously until then, as shown in FIG. In this way, it is determined whether the cause of the retransmission timeout is a data loss or an ACK loss or delay. In FIG. 9, Pseg indicates the sequence number of AEN-Probe, and Pack indicates the sequence number notified by AEN-ACK. From FIG. 9, if Pseg is larger than Pack (Pseg> Pack), it is judged that data loss has occurred. If Pseg is less than Pack (Pseg <= Pack), ACK loss or delay occurs. Judge that you are doing.
シーケンス番号を用いて判定を行った結果、再送タイムアウトの原因がデータロスである場合、AEN-ACKの通知するシーケンス番号が示すロスしたデータを再送し(図8(a)の時刻t3)、輻輳ウインドウサイズcwndを1セグメントサイズ分にし、スロースタートアルゴリズムで送信を再開する。ただし、スロースタート閾値はネットワーク帯域測定機構から得られる帯域から導出する測定ウインドウサイズに設定する。一方、再送タイムアウトの原因がACKのロスまたは遅延である場合、輻輳ウインドウサイズとスロースタート閾値はそのままの値で、新しい続きのデータ送信を開始する(図8(b)の時刻t3)。 As a result of the determination using the sequence number, if the cause of retransmission timeout is data loss, the lost data indicated by the sequence number notified by AEN-ACK is retransmitted (time t3 in FIG. 8 (a)), and congestion occurs. The window size cwnd is set to one segment size, and transmission is restarted with the slow start algorithm. However, the slow start threshold value is set to the measurement window size derived from the bandwidth obtained from the network bandwidth measurement mechanism. On the other hand, when the cause of the retransmission timeout is the loss or delay of ACK, the congestion window size and the slow start threshold value remain unchanged, and new continuous data transmission is started (time t3 in FIG. 8B).
また、上記の判定において、TCP(Original)の輻輳制御機構(図1の10)では、再送タイムアウトの原因がデータロスであった場合、輻輳ウインドウサイズcwnd_renoは1セグメントサイズ分に設定する。再送タイムアウトの原因がACKのロスまたは遅延である場合は、cwnd_renoの値は変化させない。 In the above determination, in the congestion control mechanism of TCP (Original) (10 in FIG. 1), when the cause of retransmission timeout is data loss, the congestion window size cwnd_reno is set to one segment size. When the cause of retransmission timeout is loss or delay of ACK, the value of cwnd_reno is not changed.
次に、AENの詳細な動作について図10の状態遷移図を用いて説明する。図10では、ある状態から別の状態に遷移するときの条件とその時に行う動作を(1)から(14)までの番号で示している。図10の(1)から(14)までの項目において、上段はある状態から別の状態に遷移するための条件、下段はある状態から別の状態に遷移する際に行う動作をそれぞれ示す。また、図10において、PsegはAEN-Probeのシーケンス番号、PackはAEN-ACKが通知するシーケンス番号、NackはAEN-ACKではない通常のACKのシーケンス番号を示す。 Next, the detailed operation of AEN will be described using the state transition diagram of FIG. In FIG. 10, conditions when transitioning from one state to another state and operations performed at that time are indicated by numbers from (1) to (14). In the items from (1) to (14) in FIG. 10, the upper stage shows the conditions for transitioning from one state to another state, and the lower stage shows the operations performed when transitioning from one state to another state. In FIG. 10, Pseg indicates the sequence number of AEN-Probe, Pack indicates the sequence number notified by AEN-ACK, and Nack indicates the sequence number of normal ACK that is not AEN-ACK.
ここで、AENで利用するプローブ用のデータ(AEN-Probe)およびプローブに応答するACK(AEN-ACK)は、通常のデータおよびACKとは異なることを示すために、TCPヘッダの予約フィールド(6ビット)の内1ビットを利用することを考える。つまり、TCPヘッダの予約フィールドの1ビットに1が立っていれば、このパケットはAENで利用されるパケット(AEN_ProbeまたはAEN_ACK)であることを示す。なお、通常のTCP通信では、TCPヘッダの予約フィールドの値はすべて0となっている。 Here, in order to indicate that the probe data (AEN-Probe) used in AEN and the ACK (AEN-ACK) in response to the probe are different from the normal data and ACK, a reserved field (6 in the TCP header) is used. Consider using one bit). That is, if 1 is set in 1 bit of the reserved field of the TCP header, this indicates that this packet is a packet (AEN_Probe or AEN_ACK) used in AEN. In normal TCP communication, the values of the reserved fields in the TCP header are all 0.
図10において、再送タイムアウトが発生していない時の通信状態をNORMAL_STATE20、AEN-Probeを送信した後の状態をAEN-ACK_WAIT21、AEN-ACK_WAIT21の状態で重複ACKを受信した後の状態をDUP-ACK_RCVD22とそれぞれ呼ぶ。ただし、図10において、図を分かり易く書く都合上NORMAL_STATE20を2ヶ所に書いているが、同じものを示す。まず、NORMAL_STATE20の状態からAEN-ACK_WAIT21の状態に遷移する場合を示す。NORMAL_STATE20の状態で再送タイムアウトが発生するとAEN-Probeを送信しAEN-ACK_WAIT21状態に遷移する(1)。次に、AEN-ACK_WAIT21の状態から遷移しない場合を示す。AEN-ACK_WAIT21の状態で、Pseg>Nackとなる通常のACKを受信した場合、何もせず(ACKは無視する)状態は遷移しない(2)。次に、AEN-ACK_WAIT21の状態から、NORMAL_STATE20の状態に戻る場合を示す。AEN-ACK_WAIT21の状態で、Pseg<=PackとなるAEN-ACKを受信した場合、ACKのロスまたは遅延が発生したと判断し、続きの新しいデータの送信を開始しNORMAL_STATE20に遷移する(3)。AEN-ACK_WAIT21の状態で、Pseg>PackとなるAEN-ACKを受信した場合、データがロスしたと判断し、AEN-ACKが示すロスしたデータを再送すると同時にスロースタートアルゴリズムを開始し、NORMAL_STATE20に遷移する(4)。AEN-ACK_WAIT21の状態で、AEN-Probeが再送タイムアウトを起こした場合、到達未確認データを再送すると同時にスロースタートアルゴリズムを開始し、NORMAL_STATE20に遷移する(5)。AEN-ACK_WAIT21の状態で、Pseg<=Nackとなる通常のACKを受信した場合、タイムアウトを起こしたデータはすでに受信されていると判断し、新しい続きのデータの送信をただちに開始し、NORMAL_STATE20に遷移する(6)。次に、AEN-ACK_WAIT21の状態から、DUP-ACK_RCVD22の状態に遷移する場合を示す。AEN-ACK_WAIT21の状態で、再送タイムアウトを起こしたデータ以外のデータに対する重複ACKを受信した場合、何もせず(ACKは無視する)DUP-ACK_RCVD22に遷移する(7)。次に、DUP-ACK_RCVD22の状態から遷移しない場合を示す。DUP-ACK_RCVD22の状態で、Pseg>Nackとなる通常のACKを受信した場合、何もせず(ACKは無視する)状態も遷移しない(8)。DUP-ACK_RCVD22の状態で、再送タイムアウトを起こしたデータ以外のデータに対する3つに達しない重複ACKを受信した場合、何もせず(ACKは無視する)状態も遷移しない(9)。DUP-ACK_RCVD22の状態で、再送タイムアウトを起こしたデータ以外のデータに対する3つに達する重複ACKを受信した場合、ただちに重複ACKが示すロスしたデータを再送し状態は遷移しない(10)。最後に、DUP-ACK_RCVD22の状態からNORMAL_STATE20の状態に遷移する場合を示す。DUP-ACK_RCVD22の状態で、Pseg<=PackとなるAEN-ACKを受信した場合、ACKのロスまたは遅延が発生したと判断し、続きの新しいデータの送信を開始しNORMAL_STATE20に遷移する(11)。DUP-ACK_RCVD22の状態で、Pseg>PackとなるAEN-ACKを受信した場合、データがロスしたと判断し、AEN-ACKが示すロスしたデータを再送すると同時にスロースタートアルゴリズムを開始し、NORMAL_STATE20に遷移する(12)。DUP-ACK_RCVD22の状態で、AEN-Probeが再送タイムアウトを起こした場合、到達未確認データを再送すると同時にスロースタートアルゴリズムを開始し、NORMAL_STATE20に遷移する(13)。DUP-ACK_RCVD22の状態で、Pseg<=Nackとなる、通常のACKを受信した場合、タイムアウトを起こしたデータはすでに受信されていると判断し、新しい続きのデータの送信を開始し、NORMAL_STATE20に遷移する(14)。
In FIG. 10, the communication state when retransmission timeout has not occurred is NORMAL_STATE 20, the state after transmitting AEN-Probe is AEN-
次に、図10において、(1)から(14)までの状態遷移を行う際の、輻輳ウインドウサイズとスロースタート閾値の設定について説明する。まず、(4)(5)(12)(13)の場合は、輻輳ウインドウサイズを1つ分のデータセグメントサイズ、スロースタート閾値を帯域値から得られた測定ウインドウサイズに設定する。その他の場合については、輻輳ウインドウサイズとスロースタート閾値は変化させず状態遷移前の値を保持させる。 Next, setting of the congestion window size and the slow start threshold when performing the state transition from (1) to (14) in FIG. 10 will be described. First, in cases (4), (5), (12), and (13), the congestion window size is set to one data segment size, and the slow start threshold is set to the measurement window size obtained from the band value. In other cases, the congestion window size and the slow start threshold are not changed, and the values before the state transition are held.
また、上記AENの輻輳ウインドウサイズとスロースタート閾値の設定において、ACKロスまたは遅延が判明した時は、再送タイムアウトが発生する前の値を保持させている。しかしながら、プローブパケットを送信している間にネットワークの状態が急変(帯域が減少/増加)している可能性ある。このような場合においては、ACKロスまたは遅延が発生後の輻輳ウインドウサイズとスロースタート閾値を、ネットワークの帯域から得られた測定ウインドウサイズを利用して設定させることで、対応可能となる。 In addition, when the AEN congestion window size and slow start threshold are set, when an ACK loss or delay is found, the values before the occurrence of retransmission timeout are held. However, there is a possibility that the state of the network suddenly changes (bandwidth decreases / increases) while transmitting the probe packet. In such a case, the congestion window size after the occurrence of ACK loss or delay and the slow start threshold can be set by using the measurement window size obtained from the network bandwidth.
AEN機構において、AEN-ProbeとAEN_ACKはTCPヘッダの予約フィールド(6ビット)を使って通常のデータおよびACKと区別しているが、本発明方式は予約フィールドを利用しない場合においても動作することが可能である。この時、図10において、(1)(3)(4)(5)のみ利用すればよい。この場合、受信側はAENを扱うための実装の変更を行う必要がなく、送信側のみの変更で済む。 In the AEN mechanism, AEN-Probe and AEN_ACK are distinguished from normal data and ACK by using the reserved field (6 bits) in the TCP header, but the method of the present invention can operate even when the reserved field is not used. It is. At this time, only (1), (3), (4), and (5) are used in FIG. In this case, the receiving side does not need to change the implementation for handling AEN, and only the transmitting side needs to be changed.
上記までに説明した各機構の送信開始から送信終了までの動作について図11を利用して説明する。まず始めに、通信を開始するため、送信側と受信側の間にコネクションを設定する(S101)。コネクション設定が完了すると(C101)、データ送信を開始する(S102)。データ送信が開始されると、ACKを受信する毎にネットワーク帯域測定機構モジュール30によりネットワークの利用可能帯域を測定し、LWC機構モジュール31とCWS機構モジュール32の測定ウインドウサイズ計算処理(S103、S106)に測定帯域を通知する。データ送信処理(S102)を行う際に利用する輻輳ウインドウサイズの設定は、3つ以上の重複ACKにより判明するデータロスおよび再送タイムアウトが発生したとき以外は常にLWC機構モジュール31によって行われる。LWC機構モジュール31では、測定ウインドウサイズ計算処理(S103)から得られた測定ウインドウサイズとTCP(Original)の輻輳ウインドウサイズ設定処理(S104)から得られるTCP Renoに基づく輻輳ウインドウサイズを足して、送信ウインドウサイズを設定する(S105)。送信側はこの処理(S105)で得られた輻輳ウインドウサイズを用いて送信処理を行う。もし、3つの重複ACKを受信しデータロスを検出すると(C102)、CWS機構モジュール32において、測定ウインドウサイズ計算処理(S106)から得られる測定ウインドウサイズを利用して、スロースタート閾値と輻輳ウインドウサイズの設定を行う(S107)。CWS機構の処理が完了すると(C103)、データ再送処理を行い続きのデータ送信を再開する(S102)。また、データ送信中に、再送タイムアウトが発生すると(C104)、AEN機構モジュール33において、まず再送タイムアウトの原因がデータロスかまたはACKロス/遅延なのかを判定する(S108)。再送タイムアウトの原因の判明後、スロースタート閾値と輻輳ウインドウサイズの設定を行う(S109)。AEN機構の処理が完了すると(C105)、データロスが再送タイムアウトの原因であれば、ロスしたデータの再送後、データ送信を再開する(S102)。ACKロス/遅延が再送タイムアウトの原因であれば、ただちに新しい続きのデータ送信を再開する(S102)。すべてのデータ送信が完了すると(C106)、コネクションを切断し(S110)、通信を終了する。
The operation from the transmission start to the transmission end of each mechanism described above will be described with reference to FIG. First, in order to start communication, a connection is set between the transmission side and the reception side (S101). When the connection setting is completed (C101), data transmission is started (S102). When data transmission is started, every time an ACK is received, the network bandwidth
以上、本発明方式によれば、広帯域かつ高遅延な無線ネットワークにおけるTCP通信を高速化することが可能である。さらに、同様なネットワーク特性を持つ、広帯域かつ高遅延な有線ネットワーク(ギガビットネットワーク等)においても、本発明方式は利用可能である。 As described above, according to the method of the present invention, it is possible to increase the speed of TCP communication in a broadband and high-delay wireless network. Furthermore, the system of the present invention can also be used in a wide-band and high-delay wired network (gigabit network or the like) having similar network characteristics.
10: TCP(Original)の輻輳制御機構
11: ネットワーク帯域測定機構
12: LWC(Lift Window Control)機構
13: CWS(Congestion Window Setting)機構
14: AEN(Acknowledgement Error Notification)機構
20: AENが動作していない通常の通信状態
21: AEN-Probe送出後、AEN-ACKを待っている状態
22: AEN-Probe送出後、AEN-ACKを待っている状態で重複ACKを受信した後の状態
30: ネットワーク帯域測定機構モジュール
31: LWC機構モジュール
32: CWS機構モジュール
33: AEN機構モジュール
10: TCP (Original) congestion control mechanism 11: Network bandwidth measurement mechanism 12: LWC (Lift Window Control) mechanism 13: CWS (Congestion Window Setting) mechanism 14: AEN (Acknowledgement Error Notification) mechanism 20: AEN is operating Normal communication state 21: Waiting for AEN-ACK after sending AEN-Probe 22: State after receiving duplicate ACK after sending AEN-Probe and waiting for AEN-ACK 30: Network bandwidth Measuring mechanism module 31: LWC mechanism module 32: CWS mechanism module 33: AEN mechanism module
Claims (6)
5. When determining the loss of data and the loss or delay of ACK in claim 4, the sequence number of the probe packet (hereinafter referred to as Pseg) and the latest data received by the data receiver notified by ACK for the probe packet. If the data sequence number (hereinafter referred to as Pack) is used and Pseg is greater than Pack (Pseg> Pack), it is determined that data loss has occurred and Pseg is less than Pack. If (Pseg <= Pack), it is determined that an ACK loss or delay has occurred.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004362297A JP4599554B2 (en) | 2004-12-15 | 2004-12-15 | TCP congestion control method for broadband, high-delay wireless networks |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004362297A JP4599554B2 (en) | 2004-12-15 | 2004-12-15 | TCP congestion control method for broadband, high-delay wireless networks |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006173961A JP2006173961A (en) | 2006-06-29 |
| JP4599554B2 true JP4599554B2 (en) | 2010-12-15 |
Family
ID=36674249
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004362297A Expired - Fee Related JP4599554B2 (en) | 2004-12-15 | 2004-12-15 | TCP congestion control method for broadband, high-delay wireless networks |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4599554B2 (en) |
Families Citing this family (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101523828B (en) | 2006-10-05 | 2012-10-03 | 株式会社Ntt都科摩 | Communication system, communication device, and communication method |
| JP4793580B2 (en) * | 2006-12-04 | 2011-10-12 | 日本電気株式会社 | Protocol type determination method, system and program thereof |
| JP4778453B2 (en) * | 2007-01-24 | 2011-09-21 | 株式会社エヌ・ティ・ティ・ドコモ | Communication terminal, congestion control method, and congestion control program |
| JP4367505B2 (en) | 2007-03-06 | 2009-11-18 | 日本電気株式会社 | Communication terminal, communication system, congestion control method, and congestion control program |
| JP4942040B2 (en) * | 2007-07-18 | 2012-05-30 | 国立大学法人電気通信大学 | Communication apparatus and communication method |
| CN101146033B (en) * | 2007-10-31 | 2010-04-14 | 重庆邮电大学 | A Method for Improving the Performance of Wireless Ad Hoc Networks Based on Cross-Layer Cooperation Mechanism |
| JP2009231857A (en) | 2008-03-19 | 2009-10-08 | Sony Corp | Communication control apparatus, communication control method and communication control program |
| JP6101046B2 (en) * | 2012-10-31 | 2017-03-22 | 日本放送協会 | Packet transmission apparatus and program thereof |
| JP6515436B2 (en) * | 2014-01-07 | 2019-05-22 | 株式会社リコー | Transmission system, transmission terminal, and program |
| EP2961113B1 (en) * | 2014-06-24 | 2017-05-24 | Alcatel Lucent | Control of protection switching in a communication network |
| CN111163120A (en) * | 2018-11-08 | 2020-05-15 | 阿里巴巴集团控股有限公司 | Data storage and transmission method and device for distributed database, and storage medium |
| CN115941617A (en) * | 2022-12-08 | 2023-04-07 | 邵阳学院 | A data transmission control method based on long delay and high bit error rate environment |
| CN119728030B (en) * | 2024-12-17 | 2025-10-17 | 广西电网有限责任公司 | RDMA storage network optimization method based on Go-Back-N retransmission mechanism |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3044658B1 (en) * | 1999-01-18 | 2000-05-22 | 株式会社超高速ネットワーク・コンピュータ技術研究所 | Flow control method |
| JP2001308939A (en) * | 2000-02-17 | 2001-11-02 | Fujitsu Ltd | Communication system and method for controlling throughput |
| JP2001352339A (en) * | 2000-06-07 | 2001-12-21 | Nippon Telegr & Teleph Corp <Ntt> | Communications system |
| JP2002152308A (en) * | 2000-11-09 | 2002-05-24 | Nec Corp | Data communication system, data communication method, and recording medium with communication program recorded therein |
| JP2003198612A (en) * | 2001-12-26 | 2003-07-11 | Nippon Telegr & Teleph Corp <Ntt> | File transfer method in packet communication network |
-
2004
- 2004-12-15 JP JP2004362297A patent/JP4599554B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2006173961A (en) | 2006-06-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10064073B2 (en) | Optimizing bandwidth of cognitive radios | |
| US7460472B2 (en) | System and method for transmitting information in a communication network | |
| US6535482B1 (en) | Congestion notification from router | |
| US8605590B2 (en) | Systems and methods of improving performance of transport protocols | |
| US7564792B2 (en) | Transparent optimization for transmission control protocol flow control | |
| CN103986548B (en) | A kind of method and terminal for determining packet loss reason | |
| US7489637B2 (en) | Method of enhancing the efficiency of data flow in communication systems | |
| JP5020076B2 (en) | High performance TCP suitable for low frequency ACK system | |
| JP4599554B2 (en) | TCP congestion control method for broadband, high-delay wireless networks | |
| Samaraweera et al. | Reinforcement of TCP error recovery for wireless communication | |
| KR100912178B1 (en) | Congestion Control Method and Recording Media in Wireless Environment | |
| Francis et al. | Techniques for enhancing TCP performance in wireless networks | |
| US20070076598A1 (en) | Method and apparatus for preventing activation of a congestion control process | |
| CN104580171B (en) | Transmission method, device and system of TCP (Transmission control protocol) | |
| Bassil | TCP congestion control scheme for wireless networks based on tcp reserved field and snr ratio | |
| Patel et al. | TCP over Wireless Networks: Issues, Challenges and Survey of Solutions | |
| Molia et al. | A conceptual exploration of TCP variants | |
| Ghaleb-Seddik et al. | Coupling loss and delay differentiation to enhance TCP performance within wireless multi-hop ad-hoc networks | |
| Kim et al. | TCP CAE: an improved congestion control using comparative ACK-based estimator | |
| Rani et al. | Cross layer based schemes for improving the performance of TCP in wireless networks | |
| KR20050013777A (en) | Method for controlling congestion of TCP for reducing the number of retransmission timeout | |
| Ahmed et al. | Enhancing TCP performance in mobile ad hoc networks | |
| Sreekumari et al. | A Timestamp based Detection of fast retransmission loss for improving the performance of TCP NewReno over wireless networks | |
| Lin et al. | Enhanced Westwood+ TCP for wireless/heterogeneous networks | |
| Ezil Sam Leni et al. | Bandwidth Estimation in Wireless Networks (TCP-bwiw): to Improve TCP Performance in Wireless Communication Networks |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071213 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20071213 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20071213 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100416 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100511 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100624 |
|
| 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: 20100804 |
|
| 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: 20100902 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4599554 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |