JP4924285B2 - Communication apparatus, communication system, transfer efficiency improvement method, and transfer efficiency improvement program - Google Patents
Communication apparatus, communication system, transfer efficiency improvement method, and transfer efficiency improvement program Download PDFInfo
- Publication number
- JP4924285B2 JP4924285B2 JP2007217405A JP2007217405A JP4924285B2 JP 4924285 B2 JP4924285 B2 JP 4924285B2 JP 2007217405 A JP2007217405 A JP 2007217405A JP 2007217405 A JP2007217405 A JP 2007217405A JP 4924285 B2 JP4924285 B2 JP 4924285B2
- Authority
- JP
- Japan
- Prior art keywords
- network
- rtt
- transmission
- receiver
- transfer efficiency
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Description
本発明は、複数経路にデータを分散させて帯域拡大を図る通信技術であって、送信機と受信機が複数の網によって接続されているマルチパス環境において、到着順序保証を行う通信装置、通信システム、転送効率向上方法及び転送効率向上プログラムに関する。 The present invention relates to a communication technique for spreading data by distributing data in a plurality of paths, and a communication apparatus and communication for guaranteeing arrival order in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks. The present invention relates to a system, a transfer efficiency improvement method, and a transfer efficiency improvement program.
従来、送信端末と受信端末の間の通信で用いられる1つの通信フローのデータを複数のフローに分岐させ、その後、元のフローを復元するという通信方法がある。このような通信方法としては、例えば送信端末が属する第1のLAN(Local Area Network)と受信端末が属する第2のLANに、それぞれゲートウェイを設置する方法がある。具体的には、送信端末から送出されたTCP(Transmission Control Protocol)コネクションのデータを、第1のLANのゲートウェイにおいてパケット単位でそれぞれの通信経路に振り分ける。そして、第2のLANのゲートウェイでは複数の通信経路から受信したパケットの順序逆転をTCPのシーケンス番号に従って補正してデータを復元するという方法が提案されている(例えば、特許文献1参照)。 Conventionally, there is a communication method in which data of one communication flow used in communication between a transmission terminal and a reception terminal is branched into a plurality of flows, and then the original flow is restored. As such a communication method, for example, there is a method in which a gateway is installed in each of a first LAN (Local Area Network) to which a transmitting terminal belongs and a second LAN to which a receiving terminal belongs. Specifically, TCP (Transmission Control Protocol) connection data transmitted from the transmission terminal is distributed to each communication path in units of packets in the gateway of the first LAN. In the second LAN gateway, a method has been proposed in which data is restored by correcting the order inversion of packets received from a plurality of communication paths in accordance with the TCP sequence number (see, for example, Patent Document 1).
また従来、複数の通信回線を効率的に利用し、回線利用率を向上させる方法として、端末のTCPに機能を追加することにより、従来1本のTCPコネクションを用いていた通信を複数のTCPコネクションを利用するように変更する方法がある(例えば、特許文献2参照)。この方法では、送信端末と受信端末間の通信で1つの通信フローで行われていた通信を、複数の通信フローに分割して並列的に送る。送信端末から受信端末へとデータを送信する場合、送信端末の通信プロトコルは、1つの通信フローのデータを分割して複数の通信フローに振り分ける。その際、分割した複数の通信フローを元の1つの通信フローに復元するための復元情報として新たなヘッダをTCP/IPパケットに付加して(つまり2系統のシーケンス番号を用いて)、複数の通信フローでデータを送信する。受信端末の通信プロトコルは、複数の通信フローから受信したデータの復元情報を参照し、1つの通信フローを復元する。
上述した特許文献1に記載の技術及び特許文献2に記載の技術は、ともに遅いパスを経由するパケットが到着するまで、早いパスを経由して到着したパケットが、受信機側の順序保証バッファで待たされてしまうという、ヘッドオブラインブロッキング問題が発生する。上記のヘッドオブラインブロッキング問題が発生すると、転送効率が大幅に低下し、順序保証バッファも大量に必要になる。
In the technique described in
更に、特許文献1に記載の技術及び特許文献2に記載の技術は、ともに転送に用いる経路(パス)の中に、他のパスと速度が異なるパスが存在する場合、受信側機器に「速度差×遅延時間差」分の順序保証バッファが必要になる。この「速度差×遅延時間差分の順序保証バッファ」を、パス毎に設置することは、メモリ容量が膨大になるため現実的ではない。このため、バッファあふれによるパケットロスが頻発し、転送効率(性能)が大幅に低下する。
Furthermore, the technique described in
そこで、本発明は、送信機と受信機が複数の網によって接続されているマルチパス環境において、到着順序保証を行う場合に、少ない順序保証バッファで、転送効率を向上させるための通信装置、通信システム、転送効率向上方法及び転送効率向上プログラムを提供することを目的とする。 Therefore, the present invention provides a communication device and communication for improving transfer efficiency with a small number of order guarantee buffers when performing arrival order guarantee in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks. It is an object to provide a system, a transfer efficiency improvement method, and a transfer efficiency improvement program.
本発明によれば、第1の装置として、受信機と複数の網で接続されている通信装置において、受信機から送信されてきたACKに基づいて網ごとのRTTを計算する、RTT計算手段と、前記RTT計算手段の計算結果から各網のRTTの偏差を求め、RTTが他の網と比較して大きな網又はRTTが他の網と比較して小さな網を障害リンクと判定するばらつき検出手段と、前記ばらつき検出手段において障害リンクと判定された網以外の網へラウンドロビンにより送信データを振り分ける送信振分手段と、を備えることを特徴とする通信装置が提供される。
また、第2の装置として、受信機と複数の網で接続されている通信装置において、受信機から送信されてきたACKに基づいて網ごとのRTT、最小RTTを計算する、RTT計算手段と、前記RTT計算手段から通知される各網の最新測定RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定する、網毎に複数設置されたレート計算手段と、各網の送信レートの偏差を求め、送信レートが他の網と比較して大きな網又は送信レートが他の網と比較して小さな網を障害リンクと判定するばらつき検出手段と、を備え、前記ばらつき検出手段は、前記障害リンクと判定された網の送信レートを零とすることを特徴とする通信装置が提供される。
また、第1の方法として、受信機と複数の網で接続されている通信装置における転送効率向上方法であって、受信機から送信されてきたACKに基づいて網ごとのRTTを計算する、RTT計算ステップと、前記RTT計算ステップの計算結果から各網のRTTの偏差を求め、RTTが他の網と比較して大きな網又はRTTが他の網と比較して小さな網を障害リンクと判定するばらつき検出ステップと、前記ばらつき検出ステップにおいて障害リンクと判定された網以外の網へラウンドロビンにより送信データを振り分ける送信振分ステップと、を備えることを特徴とする転送効率向上方法が提供される。
また、第2の方法として、受信機と複数の網で接続されている通信装置における転送効率向上方法であって、受信機から送信されてきたACKに基づいて網ごとのRTT、最小RTTを計算する、RTT計算ステップと、前記RTT計算ステップの算出した各網の最新測定RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定する、という動作を網毎に行うレート計算ステップと、各網の送信レートの偏差を求め、送信レートが他の網と比較して大きな網又は送信レートが他の網と比較して小さな網を障害リンクと判定するばらつき検出ステップと、を備え、前記ばらつき検出手段は、前記障害リンクと判定された網の送信レートを零とすることを特徴とする転送効率向上方法が提供される。
また、第1のプログラムとして、受信機と複数の網で接続されている通信装置における転送効率向上プログラムであって、受信機から送信されてきたACKに基づいて網ごとのRTTを計算する、RTT計算機能と、前記RTT計算機能の計算結果から各網のRTTの偏差を求め、RTTが他の網と比較して大きな網又はRTTが他の網と比較して小さな網を障害リンクと判定するばらつき検出機能と、前記ばらつき検出機能において障害リンクと判定された網以外の網へラウンドロビンにより送信データを振り分ける送信振分機能と、をコンピュータに実現させることを特徴とする転送効率向上プログラムが提供される。
また、第2のプログラムとして、受信機と複数の網で接続されている通信装置における転送効率向上プログラムであって、受信機から送信されてきたACKに基づいて網ごとのRTT、最小RTTを計算する、RTT計算機能と、前記RTT計算機能から通知される各網の最新測定RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定する、網毎に複数設置されたレート計算機能と、各網の送信レートの偏差を求め、送信レートが他の網と比較して大きな網又は送信レートが他の網と比較して小さな網を障害リンクと判定するばらつき検出機能と、をコンピュータに実現させ、前記ばらつき検出機能は、前記障害リンクと判定された網の送信レートを零とすることを特徴とする転送効率向上プログラムが提供される。
According to the present invention, as a first apparatus, in a communication apparatus connected to a receiver through a plurality of networks, an RTT calculation means for calculating an RTT for each network based on an ACK transmitted from the receiver Then, the deviation of RTT of each network is obtained from the calculation result of the RTT calculation means, and the variation detection in which the RTT is larger than the other networks or the RTT is smaller than the other networks is judged as a failure link. There is provided a communication apparatus comprising: means; and transmission distribution means for distributing transmission data by round robin to a network other than the network determined to be a failed link by the variation detection means.
Further, as a second device, in a communication device connected to the receiver through a plurality of networks, RTT calculation means for calculating RTT and minimum RTT for each network based on ACK transmitted from the receiver; A queuing delay for each network is calculated based on the difference between the latest measured RTT of each network notified from the RTT calculating means and the minimum RTT for each network, and each network is calculated based on the queuing delay. A plurality of rate calculation means installed in each network for determining the transmission rate, and the deviation of the transmission rate of each network is obtained, and the transmission rate is higher than that of other networks or the transmission rate is compared with other networks. Variation detecting means for determining a small network as a failed link, and the variation detecting means provides a communication apparatus characterized in that the transmission rate of the network determined as the failed link is set to zero. It is.
A first method is a method for improving transfer efficiency in a communication apparatus connected to a receiver through a plurality of networks, and calculates an RTT for each network based on an ACK transmitted from the receiver. The RTT deviation of each network is obtained from the calculation step and the calculation result of the RTT calculation step, and the RTT is compared to other networks and the RTT is compared to other networks, and the small network is determined as a faulty link. There is provided a method for improving transfer efficiency, comprising: a variation detection step; and a transmission distribution step of distributing transmission data by round robin to a network other than the network determined as a failed link in the variation detection step.
A second method is a method for improving transfer efficiency in a communication apparatus connected to a receiver through a plurality of networks, and calculates RTT and minimum RTT for each network based on ACK transmitted from the receiver. Calculating the queuing delay for each network based on the difference between the RTT calculating step, the latest measured RTT of each network calculated by the RTT calculating step, and the minimum RTT for each network, and based on the queuing delay A rate calculation step for determining the transmission rate of each network for each network, and obtaining a deviation of the transmission rate of each network, so that the transmission rate is higher than that of other networks A variation detecting step of determining a small network as a failed link compared to other networks, wherein the variation detecting means determines a transmission rate of the network determined as the failed link. Transfer efficiency method characterized by the is provided.
In addition, as a first program, a transfer efficiency improvement program in a communication apparatus connected to a receiver through a plurality of networks, which calculates an RTT for each network based on an ACK transmitted from the receiver. The RTT deviation of each network is obtained from the calculation function and the calculation result of the RTT calculation function, and the RTT is larger than the other networks, or the RTT is compared to the other networks, and the smaller network is determined as the failure link. Provided is a transfer efficiency improvement program that causes a computer to implement a variation detection function and a transmission distribution function that distributes transmission data by round robin to a network other than a network determined as a failed link in the variation detection function. Is done.
Also, as a second program, a transfer efficiency improvement program in a communication apparatus connected to a receiver through a plurality of networks, and calculates RTT and minimum RTT for each network based on ACK transmitted from the receiver. And calculating a queuing delay for each network based on a difference between the RTT calculation function and the latest measured RTT of each network notified from the RTT calculation function and the minimum RTT for each network. The transmission rate of each network is determined based on a plurality of rate calculation functions installed for each network, the deviation of the transmission rate of each network is obtained, and the transmission rate is higher than that of other networks or the transmission rate. And a variation detection function for determining a small network as a failure link compared to other networks, and the variation detection function is determined to be the failure link. Transfer efficiency program, characterized by the transmission rate to zero are provided.
本発明によれば、送信機と受信機が複数の網によって接続されているマルチパス環境において、ACKが1度も到着しないリンクを障害リンクと判定し、送信時の振り分け先から除外することから、到着順序保証を行う場合に少ない順序保証バッファで、転送効率を向上させることが可能となる。 According to the present invention, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, a link in which an ACK never arrives is determined as a failed link and excluded from a distribution destination at the time of transmission. When the arrival order is guaranteed, the transfer efficiency can be improved with a small number of order guarantee buffers.
次に、本発明の実施形態について図面を用いて説明する。 Next, embodiments of the present invention will be described with reference to the drawings.
なお、以下の説明においては、1対の送信機と受信機との間の通信を、1フローと定義する。また、あるフローが流れる経路をパスと定義する。例えば、1フローを4つの網(ネットワーク)に分散させて通信する場合は、4パスを用いて通信すると言い、2つのフローを4つの網(ネットワーク)に分散させて通信する場合は、8つのパスを用いて通信するという。ただし以下の説明では、1つのフローに着目して説明を行うため、結果的に網とパスが同義になっている。 In the following description, communication between a pair of transmitter and receiver is defined as one flow. Also, a route through which a certain flow flows is defined as a path. For example, when communicating by distributing one flow to four networks (networks), it is said that communication is performed using four paths. When communicating by distributing two flows to four networks (networks), there are eight Communicate using a path. However, in the following description, since description will be made focusing on one flow, as a result, the network and the path are synonymous.
(第1の実施の形態)
(構成の説明)
図1を参照して、本実施の形態における構成について説明する。第1の実施形態では、送信機1及び受信機2を備える。
(First embodiment)
(Description of configuration)
With reference to FIG. 1, the structure in this Embodiment is demonstrated. In the first embodiment, a
送信機1は、データ送信部11、SEQ付与部12、送信バッファ13、送信振分部14、PHY151〜154、未着カウンタ161〜164、再送タイマ19を備える。
The
データ送信部11は、受信機2に対して送信するデータを生成し、SEQ付与部12に渡す。なお、一般的にデータ送信部にあたる部分としては、サーバアプリケーションなどが例示できる。
The
SEQ付与部12は、データ送信部11から受信機2に対して送信するデータを受け取り、前記データを網31〜網34で転送可能な大きさに分割する。そして、分割した個々のデータ(以下パケットと呼ぶ)に対して転送に必要なヘッダや整序番号(シーケンスナンバーともいう、以下SEQと表記する。)を設定し、送信バッファ13に渡す。
The
送信バッファ13は、FIFO(First-In First-Out)バッファであり、以下の動作をおこなう。
(1)SEQ付与部12からSEQつきのパケットを受け取り格納する。
(2)あらかじめ決められた速度や個数にしたがい、前記パケットの複製を送信振分部14に送る。このとき、再送タイマ19をセットする。
(3)未着カウンタ161〜164より送達確認(ACK)を受け取り、ACKに記載された受信済シーケンスナンバー以下の値の格納パケットを消去する。このとき、再送タイマ19を再セットする。
(4)(3)において、もしACKに記載されたシーケンスナンバーが、前回受信したACKに記載されたシーケンスナンバーと同一である場合は、再送要求(重複ACK)であるとみなし、ACKに記載されたシーケンスナンバー以降のパケットを、(2)と同様あらかじめ決められた速度や個数にしたがい、前記パケットの複製を送信振分部14に再送信する。また、未着カウンタ161〜164に、再送実施を通知する。
(5)再送タイマ19の満了時に、前回受信したACKに記載されたシーケンスナンバー以降のパケットを、(2)と同様あらかじめ決められた速度や個数にしたがい、前記パケットの複製を送信振分部14に再送信する。また、未着カウンタ161〜164に、再送実施を通知する。
The
(1) Receive and store a packet with a SEQ from the
(2) Send a copy of the packet to the
(3) A delivery confirmation (ACK) is received from the
(4) In (3), if the sequence number described in the ACK is the same as the sequence number described in the previously received ACK, it is regarded as a retransmission request (duplicate ACK) and is described in the ACK. The packets after the sequence number are retransmitted to the
(5) When the
送信振分部14は、送信バッファ13から到着したパケットを、ラウンドロビンによりPHY151〜PHY154を通じて網31〜34に順次振り分ける。
The
PHY151は送信振分部14からパケットを受信し、網31で伝送可能な形式(電気信号、光信号)に変換して、前記パケットを網31に送出する。また逆に、網31からパケットを受信し、未着カウンタ161に転送する。
The
PHY152〜154は、網32〜34について、PHY151と同様の動作を行う。
The
未着カウンタ161は、以下に示す動作を行う。
(1)送信バッファ13から再送実施の通知を受信するごとに、カウンタをインクリメントする。そして、カウンタが一定閾値(例えば3)を超えた場合に、送信振分部14に、網31(PHY151)宛の振り分けを停止するよう指示する。
(2)PHY151からACKパケットを受信した場合は、カウンタを0にリセットし、前記ACKを送信バッファ13に転送する。このとき、もし送信振分部14に、網31(PHY151)宛の振り分けを停止するよう指示していた場合は、この指示を解除する。
The
(1) The counter is incremented every time a retransmission execution notification is received from the
(2) When an ACK packet is received from the
未着カウンタ162〜164は、網32〜34について、未着カウンタ161と同様の動作を行う。
The
再送タイマ19は、再送バッファ13からセット要求を受信すると、あらかじめ設定された時間が経過した際に、再送バッファ13に対してタイマ満了通知を行う。
When receiving a set request from the
受信機2は、PHY211〜214、取出制御部22、順序バッファ231〜234、ACK送信部24、出力バッファ25、SEQ削除部26、データ受信部27を備える。
The
PHY211はACK送信部24からパケットを受信し、網31で伝送可能な形式(電気信号、光信号)に変換して、前記パケットを網31に送出する。また逆に、網31からパケットを受信し、順序バッファ231に転送する。
The
PHY212〜214は、網32〜34について、PHY211と同様の動作を行う。
The
取出制御部22は、順序バッファ231〜234からの格納完了通知を受け、順序確認手段221を実行する。なお、順序確認手段221の詳細な内容については、後述する。次に、取出制御部22は、SEQの順番に従い、出力バッファ25へのパケット出力を行うように順序バッファ231〜234に指示する。このとき、ACK送信部24に対して、出力バッファ25に転送したパケットのSEQ、順序バッファの番号を通知する。更に、もしも前記パケットのヘッダに前記パケットの送信時刻が含まれているのであれば、前記パケットの送信時刻も通知する。
Upon receiving the storage completion notification from the order buffers 231 to 234, the take-out
順序バッファ231は、FIFOバッファであり、網31からパケットを受信して一旦格納し、取出制御部22に格納完了通知を行う。また取出制御部22からの指示に従い、出力バッファ25に格納したパケットを転送する。
The
順序バッファ231は、網31より到着したパケットのシーケンスナンバーと、前回に網31より到着したパケットのシーケンスナンバーを比較して、今回到着したパケットのシーケンスナンバーが、前回到着したパケットのシーケンスナンバーより小さいか、もしくは同じである場合は、再送が発生したとみなして、格納済パケットをすべて廃棄する。
The
また、順序バッファ232〜234は、網32〜34に関して、順序バッファ231と同様の動作を行う。
Further, the order buffers 232 to 234 perform the same operation as the
ACK送信部24は、以下の動作を行う。なお本願では出力バッファ25へ1パケット転送が完了する毎に1パケットのACKを送信する1ACK方式を採用する場合についての説明を行うが、N(Nは1以上)個のパケット到着報告を1つのACKでまとめて行うN_ACK方式を用いても良い。
The
取り出し制御部22から出力バッファ25に転送したパケットのSEQと、パケットが保管されていた順序バッファ番号(つまり網識別子)、さらにパケット送信時刻(もし情報があれば)の通知を受け、前記SEQおよびパケット送信時刻(もし通知があれば)を含む送達確認パケット(以下ACKと示す)を生成する。そして、通知を受けた網識別子に対応する網(網31〜34のいずれか1つ)を用いて、未着カウンタ161〜164のいずれかに通知する。つまり、順序バッファ232から出力バッファ25にパケットを転送した場合は、網32を通じて未着カウンタ162に、ACKを通知する。
Upon receiving the SEQ of the packet transferred from the take-out
出力バッファ25は、FIFOバッファであり、順序バッファ231〜234よりパケットを受け取り格納する。そしてSEQ削除部26から要求があった際に、格納された順にSEQ削除部26に出力する。
The
SEQ削除部26は、出力バッファ25よりパケットを受け取り、SEQやヘッダを削除して、SEQ削除後のデータをデータ受信部27に転送する。
The
データ受信部27は、SEQ削除部26よりデータを受信する。なお、データ受信部27は、一般的にはクライアントアプリケーションとも呼ばれる。
The
網31は、送信機1と受信機2の間を結ぶイーサネット(登録商標)などのネットワークである。なお、図1において網31は1本の線で表現されているが、実際にはリンクの他にスイッチ等が存在しても良い。また、網31、32、33、34はそれぞれ物理的に、もしくはVLAN等で論理的に遮断されており、互いに交わることがない。
The
網32〜網34は、網31と同様のネットワークである。
The
(順序確認手段221の動作の説明)
図2の流れ図を参照して、取出制御部22における順序確認手段221について説明する。
(Description of operation of order confirmation means 221)
With reference to the flowchart of FIG. 2, the
順序バッファ231〜234の何れかに1つのパケットが格納されると、取出制御部22に格納完了通知が行われ、順序確認手段221が起動する。(ステップ22101)
順序バッファ231の先頭(出力バッファ25側)に格納されているパケットのSEQを確認する。(ステップ22102)
ステップ22102において確認した順序バッファ231の先頭パケットのSEQ(先頭SEQ)と、取出制御部22が次に出力バッファ25に送信しようとしているSEQ(受信期待SEQ、以下期待SEQと記す)を比較する。(ステップ22103)
ステップ22103において先頭SEQと期待SEQが一致した場合には、順序バッファ231より前記パケットを取り出して、出力バッファ25に送付する。(ステップ22104)
次に、ACK送信部24に対して、送達確認パケット(ACK)の送信を要求する。このACKには期待SEQのSEQが格納され、期待SEQまでの受信と整序が完了したことを送信機1に通知する。(ステップ22105)
期待SEQをインクリメントする。つまり、期待SEQ=期待SEQ+1とする。(ステップ22106)
ステップ22107〜22111は、順序バッファ232に関して、ステップ22102〜22106と同様の動作を行う。
When one packet is stored in any of the order buffers 231 to 234, a storage completion notification is sent to the
The SEQ of the packet stored at the head of the order buffer 231 (on the
The SEQ (head SEQ) of the head packet of the
If the leading SEQ and the expected SEQ match at step 22103, the packet is taken out of the
Next, the
Increment expected SEQ. That is, expected SEQ = expected
ステップ22112〜22116は、順序バッファ233に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22117〜22121は、順序バッファ234に関して、ステップ22102〜22106と同様の動作を行う。
ステップ22102〜ステップ22121の実行中に、順序バッファから取り出して出力バッファへ送付したパケットの数をカウントし、もし1以上である場合には、再度ステップ22102以降を実行する。もし順序バッファから取り出して出力バッファへ送付したパケットの数が0である場合、つまり出力バッファ23に転送可能な(つまり整序可能な)パケットが、順序バッファ231〜234のいずれにも存在しない場合、動作を終了する。(ステップ22122)
(動作例)
(動作概要)
以下、図1を参照して、本実施の形態における送信機1および受信機2の動作概要を説明する。
During the execution of
(Operation example)
(Overview of operation)
Hereinafter, with reference to FIG. 1, the operation | movement outline | summary of the
送信機1において、データ送信部11が、データ受信部27に対して送信するデータを生成し、SEQ付与部12に送付する。
In the
SEQ付与部12は、データ送信部11からのデータを、網31〜34で転送可能な大きさに分割してヘッダを取り付けてパケットを生成する。さらに受信機2がデータを復元できるよう、パケットに対して整序のためにシーケンスナンバー(SEQ)を割り振り、送信バッファ13に転送する。
The
送信バッファ13は、SEQ付与部12よりパケットを受け取り一旦格納する。そしてあらかじめ設定された送信レートやウインドウサイズ等に従って、格納したパケットの複製を送信振分部14に送出する。
The
送信振分部14は、送信バッファ13から受け取ったパケットを、ラウンドロビン等により、PHY151〜154を通じて網31〜34の各網に分散させて送出する。例えばSEQ15のパケットは網31、SEQ16のパケットは網32、SEQ17のパケットは網33、SEQ18のパケットは網34というように、一連のSEQが付加されたパケットを、網31〜34に振り分ける。以降は、SEQ17のパケットが網33に振り分けられた場合を例に説明する。
The
網33は送信機1から送出されたパケットを、受信機2に送る。
The
順序バッファ233は、網33から到着したパケットを格納し、取出制御部22に格納完了を通知する。取出制御部22は、順序バッファ233からの格納完了通知を受け、順序確認手段221を起動する。
The
順序確認手段221は、順序バッファ231〜234の先頭に格納されているパケットのSEQを調べ、次に出力バッファ25に送るべきSEQと一致した場合は、このパケットを取り出して出力バッファ25に送り、ACK送信部に対してACKの送信を要求する。
The
ここでは以前にSEQ=16まで出力バッファ25に転送完了していたとすると、順序バッファ233の何れかの先頭に、SEQ=17のパケットが格納されていた場合は、これを取り出して出力バッファ25に転送し、SEQ=17のACK送信を要求する。このとき、SEQ=17のパケットは、網33(PHY213,順序バッファ233)を通じて転送されたことも通知する。
Here, assuming that transfer to the
ACK送信部24は、取出制御部22から、網33に対してSEQ=17のACKを送信するよう要求を受け、ACKパケットを生成して、PHY213に送信する。
The
未着カウンタ163は、PHY153からACKパケットを受信し、未着カウンタを0にリセットする。さらに、受信したACKパケットを、送信バッファ13に転送する。
The
送信バッファ13は、未着カウンタ163より、SEQ=17のACKパケットを受信する。このACKのSEQは前回受信したACKのSEQよりも大きいとすると、当該SEQ(SEQ=17)までのパケットを送信バッファ13から消去する。
The
(未着カウンタの動作)
動作概要に示したように、受信機2内のACK送信部24は、ACK送信の対象となるパケットを受信した網にのみ、ACKパケットを送信する。つまり、何らかの異常が発生しており、データの流れてこない網に対しては、ACKパケットを送信しない。
(Non-arrival counter operation)
As shown in the operation outline, the
ここで、送信機1内の未着カウンタ161〜164は、送信バッファ13から再送発生の通知を受けるごとにカウンタをインクリメントし、ACKを受信するとカウンタを0にリセットする。このため、再送が一定回数(たとえば3回)発生する間に、1度もACKを受信していない場合に、未着カウンタは、当該リンクをパケット送信時の振分け対象から外すよう、送信振分部14に通知する。
Here, the
上記の動作により、障害発生リンク、つまりACKの到着しないリンクを切り離すことで、Head Of Line Blocking問題の発生を回避し、転送効率を向上できる。 By the above operation, the failure link, that is, the link where the ACK does not arrive is disconnected, so that the occurrence of the Head Of Line Blocking problem can be avoided and the transfer efficiency can be improved.
(本実施形態の効果)
次に、本実施の形態の効果について説明する。
(Effect of this embodiment)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、到着順序保証を行う場合に、少ない順序保証バッファで、転送効率を向上させることができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, the transfer efficiency is improved with a small number of order guarantee buffers when guaranteeing the arrival order. be able to.
これは、前記受信機が、データパケットが到着したPHY(網)に対して、対応するACKパケットを送出し、前記送信機内に、再送発生ごとにカウンタをインクリメントし、ACK到着でカウンタをリセットする未着カウンタを網毎に複数設け、一定回数の再送が発生する間に、ACKが1度も到着しないリンクを障害リンクと判定し、送信時の振り分け先から除外するからである。 This is because the receiver sends a corresponding ACK packet to the PHY (network) where the data packet has arrived, increments the counter every time a retransmission occurs in the transmitter, and resets the counter when the ACK arrives. This is because a plurality of non-arrival counters are provided for each network, and a link in which ACK never arrives is determined as a failed link while a certain number of retransmissions occur, and is excluded from a distribution destination at the time of transmission.
(第2の実施の形態)
本発明の第2の実施の形態の概要は、網毎にラウンドトリップタイム(RTT)を測定し、各網のRTTの標準偏差を大きく外れる網を、送信時の振分先から除外することで、Head Of Line Blocking問題を回避し、少ない順序保証バッファ容量で高い転送効率を実現するというものである。
(Second Embodiment)
The outline of the second embodiment of the present invention is that a round trip time (RTT) is measured for each network, and networks that greatly deviate from the standard deviation of the RTT of each network are excluded from distribution destinations at the time of transmission. The head of line blocking problem is avoided, and high transfer efficiency is realized with a small order guarantee buffer capacity.
(構成の説明)
次に、図3を参照して、本実施の形態における構成について説明する。
(Description of configuration)
Next, the configuration in the present embodiment will be described with reference to FIG.
第2の実施の形態における送信機1は、第1の実施の形態における送信機1と比較して、未着カウンタ161〜164がRTT計算部161A〜164Aに変わっている点、さらにレート計算部17およびばらつき検出器18を備える点において異なる。
The
一方、受信機2は、第1の実施の形態における受信機2と同様である。
On the other hand, the
RTT計算部161Aは、PHY151からACKパケットを受信し、ACKパケットに含まれる送信時刻と、内蔵時計19Aから得られる現在時刻との差分から、網31の往復遅延時間(RTT)を計算し、レート計算部17およびばらつき検出器18に通知する。この際、網31のRTTの最大値(最大RTT)および最小値(最小RTT)も保持する。
The
RTT計算部162A〜164Aは、網32〜34に関して、RTT計算部161Aと同様の動作を行う。
The
レート計算部17は、RTT計算部161A〜164AよりRTTの通知を受け、今回通知を受けたRTTと、今回通知を受けた網の最低RTTとの差より、網31〜34のキューイング遅延(すなわち混雑)を計算し、これをもとに送信バッファ13からのパケット送信レート(帯域)を決定し、送信バッファ13に通知する。
The
レート計算部17における新規レートR’は、Rを現在のレート、αを増加定数、βを減少定数、RTTをRTT計算部より通知を受けたRTT、RTTminをRTT計算部より通知を受けた最小RTT、Tcをレート計算間隔とすると、以下の式で表せる。
The new rate R ′ in the
R’=R+(α/RTT−β×(RTT−RTTmin)×R/RTT)×Tc
ばらつき検出器18は、RTT計算部161A〜164Aより、網31〜34のRTTの通知を受け、ばらつき(偏差)が一定値以上の網があるばあい、この網を切り離すよう、送信振分部14に指示する。
R ′ = R + (α / RTT−β × (RTT−RTTmin) × R / RTT) × Tc
The
たとえば網31のRTTが300ms、網32のRTTが310ms、網33のRTTが560ms、網34のRTTが305msであった場合、RTTが他の網と比較して大きい網である網33にパケットを振り分けないよう、送信振分部14に指示する。
For example, when the RTT of the
たとえば逆に、網31のRTTが300ms、網32のRTTが310ms、網33のRTTが100ms、網34のRTTが305msであった場合に、RTTが他の網と比較して小さい網である網33にパケットを振り分けないよう、送信振分部14に指示する。
For example, conversely, when the RTT of the
内蔵時計19Aは、現在時刻を送信振分部14およびRTT計算部161A〜164Aに通知する。
The built-in
(発明の効果)
次に、本実施の形態の効果について説明する。
(The invention's effect)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、到着順序保証を行う場合に、少ない順序保証バッファで、転送効率を向上させることができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, the transfer efficiency is improved with a small number of order guarantee buffers when guaranteeing the arrival order. be able to.
これは、前記受信機が、データパケットが到着したPHY(網)に対して、対応するACKパケットを送出し、前記送信機内に、RTT、最小RTT,最大RTTを計算するRTT計算部を、網毎に複数設け、ばらつき検出器が、RTTの偏差が大きなリンクを、送信振り分け部における送信時の振り分け先から除外するからである。 This is because the receiver sends out a corresponding ACK packet to the PHY (network) where the data packet has arrived, and an RTT calculator for calculating the RTT, minimum RTT, and maximum RTT is provided in the transmitter. This is because a plurality of variation detectors are provided for each, and the variation detector excludes a link having a large RTT deviation from a distribution destination at the time of transmission in the transmission distribution unit.
(第3の実施の形態)
本発明の第3の実施の形態の概要は、網毎のラウンドトリップタイム(RTT)をもとに、網毎に送信レートを算出し、各網の送信レートの偏差を大きく外れる網のレートを強制的に0にすることで、送信時の振分先から除外し、Head Of Line Blocking問題を回避し、少ない順序保証バッファ容量で高い転送効率を実現するというものである。
(Third embodiment)
The outline of the third embodiment of the present invention is that the transmission rate is calculated for each network based on the round trip time (RTT) for each network, and the network rate that greatly deviates from the deviation of the transmission rate of each network is calculated. By forcibly setting it to 0, it is excluded from the distribution destination at the time of transmission, the problem of Head Of Line Blocking is avoided, and high transfer efficiency is realized with a small order guarantee buffer capacity.
(構成の説明)
図4を参照して、本実施の形態における構成について説明する。
(Description of configuration)
With reference to FIG. 4, the structure in this Embodiment is demonstrated.
第3の実施の形態における送信機1は、第2の実施の形態における送信機1と比較して、レート計算部17をフロー毎に用意し、レート計算部171〜174として備えている点において異なる。また、送信振分部14を送信振分部14Aに、送信バッファ13を送信バッファ13Aに変更し、送信振分部14Aは、送信バッファ13Aから指定された網にパケットを転送する点において異なる。
The
レート計算部171は、RTT計算部161AよりRTTの通知を受け、今回通知を受けたRTTと、今回通知を受けた網の最低RTTとの差より、網31のキューイング遅延(すなわち混雑)を計算し、これをもとに送信バッファ13からの網31に対するパケット送信レート(帯域)を決定し、送信バッファ13Aおよびばらつき検出器18に通知する。
The rate calculation unit 171 receives the RTT notification from the
レート計算部171における新規レートR’は、Rを現在のレート、αを増加定数、βを減少定数、RTTをRTT計算部より通知を受けたRTT、RTTminをRTT計算部より通知を受けた最小RTT、Tcをレート計算間隔とすると、以下の式で表せる。 The new rate R ′ in the rate calculation unit 171 is the minimum rate that R is the current rate, α is an increase constant, β is a decrease constant, RTT is received from the RTT calculation unit, and RTTmin is received from the RTT calculation unit. If RTT and Tc are rate calculation intervals, they can be expressed by the following equations.
R’=R+(α/RTT−β×(RTT−RTTmin)×R/RTT)×Tc
レート計算部171は、ばらつき検出器18より、転送除外指示を受けると、上記の式によらずレートを強制的に0にし、送信バッファ13Aに通知する。
R ′ = R + (α / RTT−β × (RTT−RTTmin) × R / RTT) × Tc
When the rate calculation unit 171 receives a transfer exclusion instruction from the
レート計算部172〜174は、網32〜34に関して、レート計算部171と同様の動作を行う。
The rate calculation units 172 to 174 perform the same operation as the rate calculation unit 171 with respect to the
送信バッファ13Aは、第2の実施の形態における送信バッファ13と比較して、レート計算部171〜174より通知を受けた網毎の送信レートによりパケットを送出する点において異なる。この際、パケットを転送すべき網も決定し、送信振分部14Aに通知する。
The transmission buffer 13A is different from the
送信振分部14Aは、送信バッファ13Aより通知を受けた網に、受信したパケットを転送する。 The transmission distribution unit 14A transfers the received packet to the network that has received the notification from the transmission buffer 13A.
ばらつき検出器18Aは、レート計算部171〜174より、網31〜34への送信レートの通知を受け、送信レートのばらつき(偏差)が一定値以上の網がある場合、この網への送信レートを0にするよう、レート計算部171〜174に指示する。
The
たとえば網31の送信レートが300kbit/sec、網32の送信レートが310kbit/sec、網33の送信レートが560kbit/sec、網34の送信レートが305kbit/secであった場合、送信レートが高い網である網33の送信レートを0にするよう、レート計算部173に指示する。
For example, when the transmission rate of the
たとえば逆に、網31の送信レートが300kbit/sec、網32の送信レートが310kbit/sec、網33の送信レートが100kbit/sec、網34の送信レートが305kbit/secであった場合に、送信レートが低い網である網33の送信レートを0にするよう、レート計算部173に指示する。
For example, if the transmission rate of the
(発明の効果)
次に、本実施の形態の効果について説明する。
(The invention's effect)
Next, the effect of this embodiment will be described.
本実施の形態に挙げた発明を利用すると、送信機と受信機が複数の網によって接続されているマルチパス環境において、到着順序保証を行う場合に、少ない順序保証バッファで、転送効率を向上させることができる。 When the invention described in this embodiment is used, in a multipath environment in which a transmitter and a receiver are connected by a plurality of networks, the transfer efficiency is improved with a small number of order guarantee buffers when guaranteeing the arrival order. be able to.
これは、前記受信機が、データパケットが到着したPHY(網)に対して、対応するACKパケットを送出し、前記送信機内に、RTT、最小RTT,最大RTTを計算するRTT計算部と、各網毎の送信レートを決定するレート計算部を、網毎に複数設け、ばらつき検出器が、送信レートの偏差が大きなリンクについて、送信レートを0にすることで、送信レートのばらつきが大きな網を切り離すからである。 This is because the receiver sends out a corresponding ACK packet to the PHY (network) where the data packet has arrived, and calculates an RTT, a minimum RTT, and a maximum RTT in the transmitter, A plurality of rate calculators for determining the transmission rate for each network are provided for each network, and the variation detector sets a transmission rate to 0 for a link with a large transmission rate deviation, thereby allowing a network with a large transmission rate variation to be obtained. Because it separates.
以上の実施の形態及び実施例では、パケットという用語を用いて説明を行ったが、フレーム(イーサネットフレーム等)でも同様に実施できる。また、パケットという用語を用いて説明を行った、分割されたデータは、本発明における「送信データ」に相当するものである。 In the above embodiments and examples, the description has been made using the term “packet”, but the present invention can be similarly applied to a frame (such as an Ethernet frame). The divided data described using the term “packet” corresponds to “transmission data” in the present invention.
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。また、当然ながら、以上に述べた実施の形態及び実施例を、相互に組み合わせて実施することもできる。なお、本発明の実施形態における通信システムは、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。 Although the present invention has been described with reference to the preferred embodiments and examples, the present invention is not necessarily limited to the above-described embodiments and examples, and various modifications can be made within the scope of the technical idea. Can be implemented. Needless to say, the embodiments and examples described above can also be implemented in combination with each other. Note that the communication system according to the embodiment of the present invention can be realized by hardware, software, or a combination thereof.
本発明は、複数の網を利用して大容量のデータを高速転送するイーサネットスイッチやルータ等といった用途に適用できる。また、サーバ間を高速に結ぶネットワークインターフェースカード(NIC)等といった用途にも適用できる。 The present invention can be applied to uses such as an Ethernet switch and a router that transfer a large amount of data at high speed using a plurality of networks. The present invention can also be applied to uses such as a network interface card (NIC) that connects servers at high speed.
1 送信機
2 受信機
11 データ送信部
12 SEQ付与部
13 送信バッファ
13A 送信バッファ
14 送信振分部
14A 送信振分部
17 レート計算部
18 ばらつき検出器
18A ばらつき検出器
19 再送タイマ
19A 内蔵時計
22 取出制御部
24 ACK送信部
25 出力バッファ
26 SEQ削除部
27 データ受信部
151 PHY
152 PHY
153 PHY
154 PHY
161 未着カウンタ
162 未着カウンタ
163 未着カウンタ
164 未着カウンタ
161A RTT計算部
162A RTT計算部
163A RTT計算部
164A RTT計算部
171 レート計算部
172 レート計算部
173 レート計算部
174 レート計算部
211 PHY
212 PHY
213 PHY
214 PHY
221 順序確認動作
231 順序バッファ
232 順序バッファ
233 順序バッファ
234 順序バッファ
DESCRIPTION OF
152 PHY
153 PHY
154 PHY
161 Not arrived counter 162 Not arrived counter 163 Not arrived counter 164 Not arrived counter
212 PHY
213 PHY
214 PHY
221
Claims (13)
受信機から送信されてきたACKに基づいて網ごとのRTTを計算する、RTT計算手段と、
前記RTT計算手段の計算結果から各網のRTTの偏差を求め、RTTが他の網と比較して大きな網又はRTTが他の網と比較して小さな網を障害リンクと判定するばらつき検出手段と、
前記ばらつき検出手段において障害リンクと判定された網以外の網へラウンドロビンにより送信データを振り分ける送信振分手段と、
を備えることを特徴とする通信装置。 In a communication device connected to the receiver via multiple networks,
RTT calculating means for calculating RTT for each network based on ACK transmitted from the receiver;
A variation detecting means for obtaining an RTT deviation of each network from a calculation result of the RTT calculating means, wherein the RTT has a larger network compared to other networks or an RTT compared to the other networks and determined a smaller network as a faulty link; ,
Transmission distribution means for distributing transmission data by round robin to a network other than the network determined as a failure link in the variation detection means;
A communication apparatus comprising:
前記RTT計算手段は、受信機から送信されてきたACKに基づいて網ごとの最低RTTを更に算出し、 The RTT calculation means further calculates a minimum RTT for each network based on the ACK transmitted from the receiver,
前記RTT計算手段から通知される各網の最新計測RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定するレート計算手段を更に備えることを特徴とする通信装置。 The queuing delay for each network is calculated based on the difference between the latest measured RTT of each network notified from the RTT calculation means and the minimum RTT for each network, and each network is calculated based on the queuing delay. A communication apparatus further comprising rate calculation means for determining a transmission rate.
受信機から送信されてきたACKに基づいて網ごとのRTT、最小RTTを計算する、RTT計算手段と、
前記RTT計算手段から通知される各網の最新測定RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定する、網毎に複数設置されたレート計算手段と、
各網の送信レートの偏差を求め、送信レートが他の網と比較して大きな網又は送信レートが他の網と比較して小さな網を障害リンクと判定するばらつき検出手段と、
を備え、
前記ばらつき検出手段は、前記障害リンクと判定された網の送信レートを零とすることを特徴とする通信装置。 In a communication device connected to the receiver via multiple networks,
RTT calculation means for calculating RTT and minimum RTT for each network based on ACK transmitted from the receiver;
Based on a difference amount of the latest measured RTT and the minimum RTT for each of the networks of the network notified from the RTT calculation means calculates the queuing delay for each of the network, each network based on the queuing delay A plurality of rate calculation means installed in each network for determining each transmission rate;
Variation detecting means for obtaining a transmission rate deviation of each network, and determining a network having a transmission rate larger than that of another network or a network having a transmission rate smaller than that of another network as a failure link;
With
The communication apparatus according to claim 1, wherein the variation detecting means sets a transmission rate of a network determined as the failed link to zero .
前記レート計算手段は以下の数式に基づいて新たな送信レートであるR’を決定し、該数式とは、 The rate calculating means determines a new transmission rate R ′ based on the following equation,
R’=R+(α/RTT−β×(RTT−RTTmin)×R/RTT)×Tc R ′ = R + (α / RTT−β × (RTT−RTTmin) × R / RTT) × Tc
但し、However,
Rを現在の送信レート、αを増加定数、βを減少定数、RTTを前記各網の最新計測RTT、RTTminを前記最小RTT、Tcをレート計算間隔とする、R is a current transmission rate, α is an increase constant, β is a decrease constant, RTT is the latest measurement RTT of each network, RTTmin is the minimum RTT, and Tc is a rate calculation interval.
であることを特徴とする通信装置。 A communication apparatus characterized by being.
前記送信機が請求項1乃至4の何れか1項に記載の通信装置であり、
前記受信機が、
前記送信機から送信データを受け取る手段と、
ACKの送信契機となった前記送信データを受信した網を用いて、前記送信機に折り返しACKを送信するACK送信手段と、
を備えることを特徴とする通信システム。 In a communication system in which a transmitter and a receiver are connected by a plurality of networks,
The transmitter is the communication device according to any one of claims 1 to 4,
The receiver is
Means for receiving transmission data from the transmitter;
ACK transmission means for transmitting a return ACK to the transmitter, using the network that has received the transmission data that triggered the transmission of ACK;
A communication system comprising:
受信機から送信されてきたACKに基づいて網ごとのRTTを計算する、RTT計算ステップと、
前記RTT計算ステップの計算結果から各網のRTTの偏差を求め、RTTが他の網と比較して大きな網又はRTTが他の網と比較して小さな網を障害リンクと判定するばらつき検出ステップと、
前記ばらつき検出ステップにおいて障害リンクと判定された網以外の網へラウンドロビンにより送信データを振り分ける送信振分ステップと、
を備えることを特徴とする転送効率向上方法。 A method for improving transfer efficiency in a communication device connected to a receiver through a plurality of networks,
RTT calculation step for calculating RTT for each network based on ACK transmitted from the receiver;
A variation detection step of obtaining an RTT deviation of each network from the calculation result of the RTT calculation step, wherein the RTT has a larger network compared to the other network, or the RTT has a smaller network compared to the other network to determine a faulty link. ,
A transmission distribution step of distributing transmission data by round robin to a network other than the network determined to be a faulty link in the variation detection step;
A method for improving transfer efficiency, comprising:
前記RTT計算ステップでは、受信機から送信されてきたACKに基づいて網ごとの最低RTTを更に算出し、 In the RTT calculation step, a minimum RTT for each network is further calculated based on the ACK transmitted from the receiver,
前記RTT計算ステップの算出した各網の最新計測RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定するレート計算ステップを更に備えることを特徴とする転送効率向上方法。 A queuing delay for each network is calculated based on the difference between the latest measured RTT of each network calculated by the RTT calculating step and the minimum RTT for each network, and the transmission of each network based on the queuing delay is calculated. A method for improving transfer efficiency, further comprising a rate calculation step of determining a rate.
受信機から送信されてきたACKに基づいて網ごとのRTT、最小RTTを計算する、RTT計算ステップと、
前記RTT計算ステップの算出した各網の最新測定RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定する、という動作を網毎に行うレート計算ステップと、
各網の送信レートの偏差を求め、送信レートが他の網と比較して大きな網又は送信レートが他の網と比較して小さな網を障害リンクと判定するばらつき検出ステップと、
を備え、
前記ばらつき検出手段は、前記障害リンクと判定された網の送信レートを零とすることを特徴とする転送効率向上方法。 A method for improving transfer efficiency in a communication device connected to a receiver through a plurality of networks,
RTT calculation step for calculating RTT and minimum RTT for each network based on ACK transmitted from the receiver;
Based on said RTT calculated latest measured RTT and the minimum RTT for each of the network portion of the halftone calculated in step calculates the queuing delay for each of the network, wherein each respective network based on the queuing delay A rate calculation step that performs an operation for each network to determine the transmission rate of
A variation detecting step for obtaining a transmission rate deviation of each network, and determining a network having a transmission rate larger than that of another network or a network having a transmission rate smaller than that of another network as a faulty link;
With
The method for improving transfer efficiency , wherein the variation detecting means sets a transmission rate of a network determined as the failed link to zero .
前記レート計算ステップでは以下の数式に基づいて新たな送信レートであるR’を決定し、該数式とは、 In the rate calculation step, R ′, which is a new transmission rate, is determined based on the following formula:
R’=R+(α/RTT−β×(RTT−RTTmin)×R/RTT)×Tc R ′ = R + (α / RTT−β × (RTT−RTTmin) × R / RTT) × Tc
但し、However,
Rを現在の送信レート、αを増加定数、βを減少定数、RTTを前記各網の最新計測RTT、RTTminを前記最小RTT、Tcをレート計算間隔とする、R is a current transmission rate, α is an increase constant, β is a decrease constant, RTT is the latest measurement RTT of each network, RTTmin is the minimum RTT, and Tc is a rate calculation interval.
であることを特徴とする転送効率向上方法。 A method for improving transfer efficiency, characterized in that:
前記送信機が請求項6乃至9の何れか1項に記載の転送効率向上方法を行い、
前記受信機が、前記送信機から送信データを受け取るステップと、
前記受信機が、ACKの送信契機となった前記送信データを受信した網を用いて、前記送信機に折り返しACKを送信するACK送信ステップと、
を備えることを特徴とする転送効率向上方法。 A method for improving transfer efficiency in a communication system in which a transmitter and a receiver are connected by a plurality of networks,
The transmitter performs the transfer efficiency improvement method according to any one of claims 6 to 9,
The receiver receives transmission data from the transmitter;
An ACK transmission step in which the receiver uses the network that has received the transmission data that triggered the transmission of ACK to transmit a return ACK to the transmitter;
A method for improving transfer efficiency, comprising:
受信機から送信されてきたACKに基づいて網ごとのRTTを計算する、RTT計算機能と、
前記RTT計算機能の計算結果から各網のRTTの偏差を求め、RTTが他の網と比較して大きな網又はRTTが他の網と比較して小さな網を障害リンクと判定するばらつき検出機能と、
前記ばらつき検出機能において障害リンクと判定された網以外の網へラウンドロビンにより送信データを振り分ける送信振分機能と、
をコンピュータに実現させることを特徴とする転送効率向上プログラム。 A transfer efficiency improvement program in a communication device connected to a receiver through a plurality of networks,
An RTT calculation function for calculating an RTT for each network based on an ACK transmitted from a receiver;
A variation detection function for obtaining an RTT deviation of each network from the calculation result of the RTT calculation function, and determining that a network having a larger RTT compared to other networks or a network having a smaller RTT compared to other networks is a failed link. ,
A transmission distribution function for distributing transmission data by round robin to a network other than the network determined to be a failure link in the variation detection function;
A transfer efficiency improvement program characterized by causing a computer to realize the above.
前記RTT計算機能は、受信機から送信されてきたACKに基づいて網ごとの最低RTTを更に算出し、 The RTT calculation function further calculates a minimum RTT for each network based on the ACK transmitted from the receiver,
前記コンピュータに、前記RTT計算機能から通知される各網の最新測定RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定するレート計算機能を更に実現させることを特徴とする転送効率向上プログラム。 The computer calculates a queuing delay for each network based on the difference between the latest measured RTT of each network notified from the RTT calculation function and the minimum RTT for each network, and based on the queuing delay, A transfer efficiency improvement program characterized by further realizing a rate calculation function for determining a transmission rate of each network.
受信機から送信されてきたACKに基づいて網ごとのRTT、最小RTTを計算する、RTT計算機能と、
前記RTT計算機能から通知される各網の最新測定RTT及び前記網毎の最小RTTの差分に基づいて、前記網毎のキューイング遅延を算出し、該キューイング遅延に基づいて前記各網それぞれの送信レートを決定する、網毎に複数設置されたレート計算機能と、
各網の送信レートの偏差を求め、送信レートが他の網と比較して大きな網又は送信レートが他の網と比較して小さな網を障害リンクと判定するばらつき検出機能と、
をコンピュータに実現させ、
前記ばらつき検出機能は、前記障害リンクと判定された網の送信レートを零とすることを特徴とする転送効率向上プログラム。 A transfer efficiency improvement program in a communication device connected to a receiver through a plurality of networks,
RTT calculation function for calculating RTT and minimum RTT for each network based on ACK transmitted from the receiver;
On the basis of the difference amount of the latest measured RTT and the minimum RTT for each of the networks of the network notified from RTT calculation function calculates the queuing delay for each of the network, each network based on the queuing delay Multiple rate calculation functions installed in each network to determine each transmission rate,
A variation detection function for obtaining a transmission rate deviation of each network, and determining a network having a transmission rate larger than that of another network or a network having a transmission rate smaller than that of another network as a failure link,
Is realized on a computer ,
The program for improving transfer efficiency , wherein the variation detection function sets a transmission rate of a network determined as the failed link to zero .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007217405A JP4924285B2 (en) | 2007-08-23 | 2007-08-23 | Communication apparatus, communication system, transfer efficiency improvement method, and transfer efficiency improvement program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007217405A JP4924285B2 (en) | 2007-08-23 | 2007-08-23 | Communication apparatus, communication system, transfer efficiency improvement method, and transfer efficiency improvement program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009055114A JP2009055114A (en) | 2009-03-12 |
JP4924285B2 true JP4924285B2 (en) | 2012-04-25 |
Family
ID=40505817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007217405A Active JP4924285B2 (en) | 2007-08-23 | 2007-08-23 | Communication apparatus, communication system, transfer efficiency improvement method, and transfer efficiency improvement program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4924285B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11349739B2 (en) | 2018-10-16 | 2022-05-31 | Samsung Electronics Co., Ltd. | Method and apparatus for splitting data in multi-connectivity |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4587053B2 (en) | 2007-08-28 | 2010-11-24 | 日本電気株式会社 | Communication apparatus, communication system, packet loss detection method, and packet loss detection program |
WO2010140292A1 (en) * | 2009-06-04 | 2010-12-09 | 日本電気株式会社 | Communication system |
US9007904B2 (en) * | 2011-11-17 | 2015-04-14 | International Business Machines Corporation | System to improve an ethernet network |
JP2014096674A (en) * | 2012-11-08 | 2014-05-22 | Hitachi High-Technologies Corp | Network device, network device control method, and network system |
EP2941842B1 (en) * | 2013-01-07 | 2018-10-03 | Microsemi Frequency and Time Corporation | Universal asymmetry correction for packet timing protocols |
KR101637841B1 (en) * | 2015-06-25 | 2016-07-07 | 연세대학교 산학협력단 | Method and Device for Controlling and Detecting Transmission Error in Multiple Path |
JP7533401B2 (en) * | 2021-09-03 | 2024-08-14 | 株式会社デンソー | COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMMUNICATION PROGRAM |
US20240048277A1 (en) * | 2022-08-03 | 2024-02-08 | Google Llc | Early Retransmission for Hardware Reliable Transport |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3229746B2 (en) * | 1994-03-18 | 2001-11-19 | 富士通株式会社 | Buffer exhaustion prevention method in multilink procedure |
JPH08186601A (en) * | 1994-12-29 | 1996-07-16 | Fuji Xerox Co Ltd | Data transfer method for communication equipment |
JP3596609B2 (en) * | 2001-04-09 | 2004-12-02 | 日本電気株式会社 | Packet relay method |
JP3930802B2 (en) * | 2002-12-13 | 2007-06-13 | 株式会社エヌ・ティ・ティ・ドコモ | Data transmission method, data transmission apparatus, and data transmission system |
JP4430597B2 (en) * | 2005-08-26 | 2010-03-10 | 日本電信電話株式会社 | NETWORK SYSTEM, TRANSMITTER DISTRIBUTION DEVICE, PACKET COMMUNICATION METHOD, AND PACKET COMMUNICATION PROGRAM |
-
2007
- 2007-08-23 JP JP2007217405A patent/JP4924285B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11349739B2 (en) | 2018-10-16 | 2022-05-31 | Samsung Electronics Co., Ltd. | Method and apparatus for splitting data in multi-connectivity |
Also Published As
Publication number | Publication date |
---|---|
JP2009055114A (en) | 2009-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4924285B2 (en) | Communication apparatus, communication system, transfer efficiency improvement method, and transfer efficiency improvement program | |
JP4587053B2 (en) | Communication apparatus, communication system, packet loss detection method, and packet loss detection program | |
Lakshman et al. | Window-based error recovery and flow control with a slow acknowledgement channel: a study of TCP/IP performance | |
US20210297350A1 (en) | Reliable fabric control protocol extensions for data center networks with unsolicited packet spraying over multiple alternate data paths | |
JP4497322B2 (en) | Communication method | |
US20210297351A1 (en) | Fabric control protocol with congestion control for data center networks | |
US9467390B2 (en) | Method and device for data transmission | |
US8717871B2 (en) | Packet retransmission control system, method and program | |
JP5258938B2 (en) | Communication device | |
JP5867188B2 (en) | Information processing apparatus, congestion control method, and congestion control program | |
Chen et al. | Mp-rdma: enabling rdma with multi-path transport in datacenters | |
Tam et al. | Preventing TCP incast throughput collapse at the initiation, continuation, and termination | |
Sreekumari et al. | Transport protocols for data center networks: a survey of issues, solutions and challenges | |
US20080062875A1 (en) | Communication Terminal, Communication Control Method, and Communication Control Program | |
JP4930275B2 (en) | Communication system, communication method, transmitter, receiver, rate calculation method, and program | |
US10063489B2 (en) | Buffer bloat control | |
US20210297343A1 (en) | Reliable fabric control protocol extensions for data center networks with failure resilience | |
JP2010074855A (en) | Communication device, communication system, method of detecting missing packet, and program for detecting missing packet | |
Ho et al. | Performance improvement of delay-based TCPs in asymmetric networks | |
JP5761193B2 (en) | Communication apparatus, communication system, packet retransmission control method, and packet retransmission control program | |
Sreekumari et al. | A simple and efficient approach for reducing TCP timeouts due to lack of duplicate acknowledgments in data center networks | |
Arthur et al. | Keeping order: Determining the effect of TCP packet reordering | |
Shimonishi et al. | A congestion control algorithm for data center area communications | |
JP5382556B2 (en) | Communication apparatus, communication system, packet loss detection method, and packet loss detection program | |
Jaiswal et al. | A comparative performance analysis of TCP congestion control algorithm: elastic TCP vs. e-Elastic TCP |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100716 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20101022 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20101022 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110930 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111013 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111212 |
|
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: 20120110 |
|
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: 20120123 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150217 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4924285 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |