JP2005277704A - Data distribution management device and data distribution management method - Google Patents
Data distribution management device and data distribution management method Download PDFInfo
- Publication number
- JP2005277704A JP2005277704A JP2004087130A JP2004087130A JP2005277704A JP 2005277704 A JP2005277704 A JP 2005277704A JP 2004087130 A JP2004087130 A JP 2004087130A JP 2004087130 A JP2004087130 A JP 2004087130A JP 2005277704 A JP2005277704 A JP 2005277704A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- distribution management
- data
- buffer
- data distribution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 94
- 239000000872 buffer Substances 0.000 claims abstract description 110
- 230000005540 biological transmission Effects 0.000 claims abstract description 24
- 238000012790 confirmation Methods 0.000 claims description 28
- 238000000034 method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 13
- 238000011084 recovery Methods 0.000 description 12
- 239000000523 sample Substances 0.000 description 5
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
この発明は、例えばTCP(Transmission Control Protocol)によるデータ転送を行うデータ配信管理装置に関するものである。 The present invention relates to a data distribution management apparatus that performs data transfer by, for example, TCP (Transmission Control Protocol).
いわゆる受信ウィンドウとして知られるTCPのフロー制御においては、受信端末装置が送信端末装置に対し、送達確認応答なしに受信可能な最大情報量である受信ウィンドウサイズを通知し、送信端末装置は、通知されたウィンドウサイズを超過しない情報量のデータを送ることで、受信端末装置では送信された全てのデータを溢れることなく受信することが可能である。
例えば衛星回線のような伝送遅延の大きな通信回線を介する場合に、このようなTCPによるデータ転送を効率的に行うために、例えば特許文献1に開示された従来のデータ配信管理装置においては、送信元のスループット情報をもとに、受信したデータセグメントを記憶するバッファのバッファサイズを可変設定するようにしている。
In TCP flow control known as a so-called reception window, the reception terminal device notifies the transmission terminal device of the reception window size, which is the maximum amount of information that can be received without a delivery confirmation response, and the transmission terminal device is notified. By transmitting data having an amount of information that does not exceed the window size, the receiving terminal device can receive all transmitted data without overflowing.
For example, in the conventional data distribution management apparatus disclosed in
特許文献1に開示された従来のデータ配信管理装置においては、バッファサイズを可変設定するという複雑な制御が必要であるという問題点があった。
The conventional data distribution management device disclosed in
この発明は、上述のような課題を解決するためになされたもので、データ配信管理装置において、例えばTCPのフロー制御におけるバッファ操作の簡略化を目的としている。 The present invention has been made to solve the above-described problems, and aims to simplify buffer operations in, for example, TCP flow control in a data distribution management apparatus.
この発明に係るデータ配信管理装置は、受信したデータパケットを宛先に転送するパケット転送部と、前記パケット転送部で転送されるデータパケットのセグメントをバッファに記憶し、前記宛先からの送達確認応答パケットの受信に対応して、前記バッファにおける前記セグメントの記憶領域を空きとする記憶部と、前記バッファの空きと所定のセグメントサイズに基づいて受信ウィンドウサイズを求め、この受信ウィンドウサイズを、前記パケット転送部で受信したデータパケットの送信元に返送する返送部と、を備えるものである。 A data distribution management device according to the present invention stores a packet transfer unit that transfers a received data packet to a destination, a segment of the data packet transferred by the packet transfer unit in a buffer, and a delivery confirmation response packet from the destination Corresponding to the reception of the segment, the storage unit that makes the storage area of the segment empty in the buffer, the reception window size is obtained based on the empty space of the buffer and a predetermined segment size, and the reception window size is determined as the packet transfer And a return unit that returns the data packet received by the unit to the transmission source.
この発明は、データ配信管理装置において、バッファの空きと所定のセグメントサイズに基づいて受信ウィンドウサイズを求めるようにすることにより、例えばTCPのフロー制御におけるバッファ操作の簡略化を実現することができる。 According to the present invention, in the data distribution management device, the buffer operation in, for example, TCP flow control can be simplified by obtaining the reception window size based on the buffer free space and a predetermined segment size.
実施の形態1.
この発明の実施の形態1によるデータ配信管理装置は、バッファの空きに記憶可能なセグメント数と所定の最大セグメントサイズとの積として受信ウィンドウサイズを求めることにより、例えば衛星回線のような伝送遅延の大きな通信回線を介する場合にも、TCPのフロー制御におけるバッファ操作の簡略化を実現することができるものである。
The data distribution management device according to
図1は、この発明の実施の形態1によるデータ配信管理装置を示す構成図である。
図1において、第1の端末装置1から第2の端末装置2に対し、TCPのデータ転送が行われ、データ配信管理装置3はその間に配置される。また、第1の端末装置1とデータ配信管理装置3の間は、LANを用いた高速な通信回線で接続され、データ配信管理装置3と第2の端末装置2の間は、例えば衛星回線のような伝送遅延の大きな通信回線で接続される。なお、データ配信管理装置3を配置することにより、衛星回線のような伝送遅延の大きな通信回線を介する場合にも、第2の端末装置2において、第1の端末装置1から送信された全てのデータを溢れることなく受信することが可能となるのである。
FIG. 1 is a block diagram showing a data distribution management apparatus according to
In FIG. 1, TCP data transfer is performed from the
また、データ配信管理装置3は、第1の端末装置1から送信されるTCPデータパケットを受信し、第2の端末装置2に転送する転送部31と、受信した該TCPデータパケットに対する送達確認TCP−ACK(Acknowledgement)パケットを生成し、第1の端末装置1に返送する返送部32、転送する該TCPデータパケットのセグメントを記憶するバッファ34、転送した該TCPデータパケットを第2の端末装置2が受信したことにより、第2の端末装置2から返送され、受信した送達確認TCP−ACKパケットを終端し、それまで対応するTCPデータパケットのセグメントをバッファ34が保持するように制御する保持部33、該コネクションの最大セグメントサイズなどの情報を保持する情報管理部35から構成される。
なお、バッファ34と保持部33が記憶部を構成する。
Further, the data
Note that the
なお、この実施の形態1では、第1の端末装置1と第2の端末装置2間の1本のTCPコネクションにおけるデータ転送として説明するが、バッファ部34をコネクション毎に分割することにより、複数のコネクションに対応することができる。また、第1の端末装置1と第2の端末装置2以外に端末装置があっても良い。
In the first embodiment, the data transfer in one TCP connection between the
次に動作について説明する。
図2において、任意の時点、この例ではデータ配信管理装置3から第1の端末装置1に受信ウィンドウサイズの通知となるパケットAKo1を送信する時点で、該コネクションのデータ保持用バッファ34に5つのパケットバッファBuff1〜Buff5が空いているとする。なお、パケットAKo1は、第1の端末装置1からのTCPデータパケットの受信に対応して返送されるものであるが、図2ではこの受信以前を省略している。
Next, the operation will be described.
In FIG. 2, at the time of transmitting a packet AKo1 that is a notification of the reception window size from the data
該コネクション開設時に第1の端末装置1と第2の端末装置2との間で設定される最大セグメントサイズは、情報管理部35に記録されており、ここでは1460バイトとする。従って、パケットバッファが5つ空いていることから、AKo1で通知される受信ウィンドウサイズは次式となる。
受信ウィンドウサイズ=1460バイト×5個=7300バイト (式1)
The maximum segment size set between the first
Reception window size = 1460 bytes × 5 = 7300 bytes (Formula 1)
その後、ある時点で第1の端末装置1から第2の端末装置2に多量のデータ配信が発生すると、第1の端末装置1は、データ配信管理装置3からの送達確認TCP−ACKパケットを待つことなく、7300バイト分のデータをパケットDTr1〜DTr5までにデータセグメント(以下セグメントと略称する)として分割し、順次送信する。
Thereafter, when a large amount of data distribution occurs from the first
データ配信管理装置3では、転送部31により、第1の端末装置1が送信したTCPデータパケットDTr1〜DTr5が受信され、バッファ34のパケットバッファBuff1〜Buff5で記憶され、転送部31により、第2の端末装置2に対しパケットDTr1〜DTr5と同じデータが格納されるパケットDTs1〜DTs5が送信される。また、返送部32により、第1の端末装置1に対し送達確認TCP−ACKパケットAKs1〜AKs5が返送される。また、パケットDTr1〜DTr5のセグメントが記憶されるパケットバッファBuff1〜Buff5が保持部33の制御により保持される。
In the data
データ配信管理装置3がパケットDTr1を受信した時点で、空いているパケットバッファは4つとなるので、返送される送達確認TCP−ACKパケットAKs1で通知される受信ウィンドウサイズは次式となる。
受信ウィンドウサイズ=1460バイト×4個=5840バイト (式2)
また、同様にパケットAKs5で通知される受信ウィンドウサイズは次式となる。
受信ウィンドウサイズ=1460バイト×0個=0バイト (式3)
When the data
Receive window size = 1460 bytes × 4 = 5840 bytes (Formula 2)
Similarly, the reception window size notified by the packet AKs5 is as follows.
Receive window size = 1460 bytes x 0 = 0 bytes (Formula 3)
この時点で、データ配信管理装置3がそれ以上データを受信することができないため、第1の端末装置1は、受信ウィンドウが回復するまで次のデータ送信を中断する。
At this time, since the data
第2の端末装置2は、データ配信管理装置3が転送したTCPデータパケットDTs1〜DTs5を順に受信すると、送達確認TCP−ACKパケットAKr1〜AKr5を順に返送する。データ配信管理装置3の保持部33では、これを終端し、対応するTCPデータパケットのセグメントが記憶されているパケットバッファBuff1〜Buff5を再利用できるように解放する(すなわち空きとする)。なお、空きとするということは、この時点で、パケットバッファを上書き可能状態とすることでも良いし、また、パケットバッファの記憶を消去することでも良い。
When the
この例では、パケットAKr3を終端し、対応するTCPデータパケットのセグメントが記憶されるパケットバッファBuff3を解放した時点で、第1の端末装置1からのウィンドウプローブパケットAKo2を受信する。データ配信管理装置3は、ウィンドウプローブパケットAKo2に対する応答として、パケットAKo3を返送する。パケットAKo3で通知される受信ウィンドウサイズは、その時点でパケットバッファが3つ空いているので次式となる。
受信ウィンドウサイズ=1460バイト×3個=4380バイト (式4)
In this example, the window probe packet AKo2 from the
Reception window size = 1460 bytes × 3 = 4380 bytes (Formula 4)
第1の端末装置1は、パケットAKo3の受信により、データ配信管理装置3の受信ウィンドウの回復を知り、続くデータのうち4380バイト分の送信を再開する。データは、TCPデータパケットDTr6〜DTr8に分割され、順にデータ配信管理装置3に送信される。
The first
データ配信管理装置3では、パケットDTr6を受信した時点で、さらにパケットバッファが解放されており、パケットAKs6により次式の受信ウィンドウサイズを第1の端末装置1に通知する。
受信ウィンドウサイズ=1460バイト×4個=5840バイト (式5)
In the data
Receive window size = 1460 bytes × 4 = 5840 bytes (Formula 5)
第1の端末装置1では、送達確認TCP−ACKパケットDTr6の受信ウィンドウサイズとして式6に示す値を期待していたが、式5と式6との受信ウィンドウサイズの差分について、更にデータ配信管理装置3が受信可能であると判断し、最後のデータを格納するパケットDTr9を送信する。
受信ウィンドウサイズ=1460バイト×2個=2920バイト (式6)
In the
Reception window size = 1460 bytes × 2 = 2920 bytes (Formula 6)
以上のように、この発明の実施の形態1によるデータ配信管理装置においては、データ保持用バッファのうち、空いているパケットバッファ数(すなわちバッファの空きに記憶可能なセグメント数)と最大セグメントサイズを乗算して求めた受信ウィンドウサイズを通知することにより、例えば衛星回線のような伝送遅延の大きな通信回線を介する場合にも、TCPのフロー制御におけるバッファ操作の簡略化を実現することができる。
As described above, in the data distribution management device according to
実施の形態2.
実施の形態1では、第1の端末装置1に対して通知する受信ウィンドウサイズとして、該コネクションのデータ保持用バッファ34の空きパケットバッファ数(すなわちバッファの空きに記憶可能なセグメント数)に最大セグメントサイズを乗算した値を使用したが、実施の形態2では、さらにこの値に所定の係数を乗算するようにしたものである。
In the first embodiment, the reception window size notified to the
図3は、この発明の実施の形態2によるデータ配信管理装置を示す構成図である。図3において、データ配信管理装置3は、さらに該係数を保持する設定管理部36を有する。
FIG. 3 is a block diagram showing a data distribution management apparatus according to
次に動作について説明する。ここでは、該係数を0.7とする。
図4において、実施の形態1と同様に、パケットAKo1によりデータ配信管理装置3から第1の端末装置1に次式の受信ウィンドウサイズが通知される。
受信ウィンドウサイズ=1460バイト×5個×0.7=5110バイト (式7)
Next, the operation will be described. Here, the coefficient is set to 0.7.
In FIG. 4, as in the first embodiment, the data
Reception window size = 1460 bytes × 5 × 0.7 = 5110 bytes (Formula 7)
その後、ある時点で第1の端末装置1から第2の端末装置2に多量のデータ配信が発生すると、第1の端末装置1では、データ配信管理装置3からの送達確認TCP−ACKパケットを待つことなく、5110バイト分のデータをパケットDTr1〜DTr4に分割し、順次送信する。それぞれのTCPデータパケットに格納されるセグメントは、最大セグメントサイズであるとは限らないが、この例ではパケットDTr1で1460バイト、パケットDTr2で1200バイト、パケットDTr3で1250バイト、パケットDTr4で1200バイトであり、合計5110バイトとなる。
Thereafter, when a large amount of data distribution occurs from the first
データ配信管理装置3では、転送部31により、第1の端末装置1が送信したTCPデータパケットDTr1〜DTr4が受信され、バッファ34のパケットバッファBuff1〜Buff4で記憶し、転送部31により、第2の端末装置2に対しパケットDTr1〜DTr4と同じデータが格納されるパケットDTs1〜DTs4が送信される。また、返送部32により、第1の端末装置1に対し送達確認TCP−ACKパケットAKs1〜AKs4が返送される。また、TCPデータパケットDTr1〜DTr4のセグメントが記憶されるバッファ34のパケットバッファBuff1〜Buff4が保持部33の制御により保持される。
In the data
データ配信管理装置3がパケットDTr1を受信した時点で、空いているパケットバッファは4つとなるので、返送される送達確認TCP−ACKパケットAKs1で通知される受信ウィンドウサイズは次式となる。
受信ウィンドウサイズ=1460バイト×4個×0.7=4088バイト (式8)
また、同様にパケットAKs4で通知される受信ウィンドウサイズは次式となる。
受信ウィンドウサイズ=1460バイト×1個×0.7=1022バイト (式9)
When the data
Reception window size = 1460 bytes × 4 × 0.7 = 4088 bytes (Formula 8)
Similarly, the reception window size notified by the packet AKs4 is as follows.
Receive window size = 1460 bytes × 1 × 0.7 = 1022 bytes (Formula 9)
第1の端末装置1は、データ配信管理装置3が次のデータを受信することができると分かるので、さらにパケットDTr5を送信する。データ配信管理装置3は、パケットDTr5を受信すると空きパケットバッファが枯渇するので、送達確認TCP−ACKパケットのウィンドウサイズ値として次式の値を通知する。
受信ウィンドウサイズ=1460バイト×0個×0.7=0バイト (式10)
データ配信管理装置3がそれ以上データを受信することができないため、第1の端末装置1では、受信ウィンドウが回復するまで、続くデータの送信を待つ。
Since the first
Receive window size = 1460 bytes × 0 × 0.7 = 0 bytes (Formula 10)
Since the data
第2の端末装置2は、データ配信管理装置3が転送したパケットDTs1〜DTs5を順に受信すると、送達確認TCP−ACKパケットAKr1〜AKr5を順に返送する。データ配信管理装置3の保持部33では、これを終端し、対応するデータパケットのセグメントが記憶されるパケットバッファを再利用できるように解放する(すなわち空きとする)。
When the second
この例では、パケットAKr4を受信し、対応するTCPデータパケットのセグメントが記憶されるパケットバッファBuff4を解放した時点で、第1の端末装置1からのウィンドウプローブパケットAKo2を受信する。データ配信管理装置3は、ウィンドウプローブAKo2に対する応答として、パケットAKo3を返送する。パケットAKo3で通知される受信ウィンドウサイズは、その時点でパケットバッファが4つ空いているので次式となる。
受信ウィンドウサイズ=1460バイト×4個×0.7=4088バイト (式11)
In this example, when the packet AKr4 is received and the packet buffer Buff4 in which the segment of the corresponding TCP data packet is stored is released, the window probe packet AKo2 from the first
Reception window size = 1460 bytes × 4 × 0.7 = 4088 bytes (Formula 11)
第1の端末装置1は、パケットAKo3の受信により、データ配信管理装置3の受信ウィンドウの回復を知り、続くデータのうち、4088バイト分の送信を再開する。データは、TCPデータパケットDTr6〜DTr8に分割され、順にデータ配信管理装置3に送信される。
The first
データ配信管理装置3では、パケットDTr6を受信した時点で、さらにパケットバッファが解放されており、パケットDTr8に対する送達確認TCP−ACKパケットにより次式のウィンドウサイズが第1の端末装置1に通知される。
受信ウィンドウサイズ=1460バイト×2個×0.7=2044バイト (式12)
第1の端末装置1は、データ配信管理装置3がさらに次のデータを受信可能と分かるので、最後のデータを格納するパケットDTr9を送信する。
In the data
Reception window size = 1460 bytes × 2 pieces × 0.7 = 2044 bytes (Formula 12)
Since the first
以上のように、この発明の実施の形態2によるデータ配信管理装置においては、データ保持用バッファのうち、空いているパケットバッファ数(すなわちバッファの空きに記憶可能なセグメント数)と最大セグメントサイズと所定の係数を乗算して求めた受信ウィンドウサイズを通知することにより、最大セグメントサイズに満たないデータパケットが混在する場合においても、TCPのフロー制御におけるバッファ操作の簡略化を実現することができる。 As described above, in the data distribution management device according to the second embodiment of the present invention, among the data holding buffers, the number of free packet buffers (that is, the number of segments that can be stored in the buffer free space) and the maximum segment size By notifying the reception window size obtained by multiplying by a predetermined coefficient, it is possible to simplify the buffer operation in the TCP flow control even when data packets less than the maximum segment size coexist.
実施の形態3.
実施の形態1では、第1の端末装置1に対して通知する受信ウィンドウサイズとして、該コネクションのデータ保持用バッファ34の空きパケットバッファ数(すなわちバッファの空きに記憶可能なセグメント数)に最大セグメントサイズを乗算した値を使用したが、実施の形態3では、最大セグメントサイズに代わり、平均セグメントサイズを使用するようにしたものである。
In the first embodiment, as the reception window size notified to the first
図5は、この発明の実施の形態3によるデータ配信管理装置を示す構成図である。図5において、平均長算出部37は、複数個の最新のデータパケットについて、それらのセグメントサイズを保持し、平均セグメントサイズを算出する。
FIG. 5 is a block diagram showing a data distribution management apparatus according to
次に動作について説明する。
基本的な動作は実施の形態1の動作と同様であるが、第1の端末装置1からTCPデータパケットを受信する際、そのセグメントサイズを、該パケットの受信用に使用したパケットバッファの番号に対応する平均長算出部37のセグメントサイズ記憶位置に記憶する。例えば、セグメントをパケットバッファBuff3で受信した場合、そのセグメントサイズを平均算出部37のセグメントサイズ記憶位置Buff3sizeに記憶する。
Next, the operation will be described.
The basic operation is the same as that of the first embodiment, but when receiving a TCP data packet from the first
第1の端末装置1に送達確認TCP−ACKパケットとして受信ウィンドウサイズを通知する際、平均長算出部に保持される各セグメントサイズを合算し、保持数で除算した値を平均セグメントサイズとして使用する。
When notifying the first
以上のように、この発明の実施の形態3によるデータ配信管理装置においては、データ保持用バッファのうち、空いているパケットバッファ数(すなわちバッファの空きに記憶可能なセグメント数)と平均セグメントサイズを乗算して求めた受信ウィンドウサイズを通知することにより、コネクション開設時に設定された最大セグメントサイズに比べて、TCPデータパケットの実際のセグメントサイズが小さい場合にも、受信データを溢れさせることなく、TCPのフロー制御におけるバッファ操作の簡略化を実現することができる。 As described above, in the data distribution management device according to the third embodiment of the present invention, the number of free packet buffers (that is, the number of segments that can be stored in the buffer space) and the average segment size among the data holding buffers are calculated. By notifying the reception window size obtained by multiplication, even if the actual segment size of the TCP data packet is smaller than the maximum segment size set at the time of connection establishment, the TCP does not overflow the received data. The buffer operation in the flow control can be simplified.
実施の形態4.
実施の形態3では、第1の端末装置1に対して通知する受信ウィンドウサイズとして、該コネクションのデータ保持用バッファ34のうち空きパケットバッファ数に平均セグメントサイズを乗算した値を使用したが、実施の形態4では、さらに所定の係数を乗算して使用するようにしたものである。
In the third embodiment, the reception window size notified to the first
図6は、この発明の実施の形態4によるデータ配信管理装置を示す構成図である。図6において、データ配信管理装置3は、該係数を保持するため、設定管理部36を有する。
FIG. 6 is a block diagram showing a data distribution management device according to
次に動作について説明する。
図6において、基本的な動作は実施の形態3の動作と同様であるが、第1の端末装置1に送達確認TCP−ACKパケットとして受信ウィンドウサイズを通知する際、空きパケットバッファ数に平均セグメントサイズを乗算した値に、さらに設定管理部37に保持される係数を乗算して使用する。
Next, the operation will be described.
In FIG. 6, the basic operation is the same as the operation of the third embodiment, but when the reception terminal size is notified to the first
以上のように、この発明の実施の形態4によるデータ配信管理装置においては、データ保持用バッファのうち、空いているパケットバッファ数(すなわちバッファの空きに記憶可能なセグメント数)と平均セグメントサイズと所定の係数を乗算して求めた受信ウィンドウサイズを通知することにより、コネクション開設時に折衝された最大セグメントサイズに比べ、TCPデータパケットのセグメントサイズが比較的小さく、かつパケット毎にセグメントのサイズにばらつきが多い場合にも、受信データを溢れさせることなく、TCPのフロー制御におけるバッファ操作の簡略化を実現することができる。 As described above, in the data distribution management device according to the fourth embodiment of the present invention, among the data holding buffers, the number of free packet buffers (that is, the number of segments that can be stored in the buffer space) and the average segment size By notifying the reception window size obtained by multiplying a predetermined coefficient, the segment size of the TCP data packet is relatively small compared to the maximum segment size negotiated at the time of establishing the connection, and the segment size varies from packet to packet. Even when there are many, it is possible to realize simplification of buffer operation in TCP flow control without overflowing received data.
実施の形態5.
実施の形態1では、複数のコネクションに対応する場合には、第1の端末装置1が送信するデータパケットを記憶するパケットバッファをコネクション毎に予め割当てるようにするが、実施の形態5では、各コネクションが共用するパケットバッファを設ける。
In the first embodiment, when a plurality of connections are supported, a packet buffer that stores a data packet transmitted by the first
図7は、この発明の実施の形態5によるデータ配信管理装置を示す構成図である。図7おいて、バッファ34において、341、342、343は、コネクション毎に予めパケットバッファを割当てたプール1、プール2、プール3、344は、各コネクションのTCPデータパケットの受信が可能な共用プールである。
なお、共用プール344が共用記憶領域に該当する。
FIG. 7 is a block diagram showing a data distribution management apparatus according to
The shared
次に動作について説明する。
図7おいて、第1の端末装置1と第2の端末装置2の間に複数のコネクションが開設され、それぞれ第1の端末装置1から第2の端末装置2にデータが送信される。ここでは同一端末間でのコネクションとして説明するが、同一端末間ではなく複数の端末による複数のコネクションでも良い。また、コネクションが開設される際、使用するプールが設定されるものとする。
Next, the operation will be described.
In FIG. 7, a plurality of connections are established between the first
各コネクションのデータ転送は、まず、コネクション毎に割当てられたプールのパケットバッファを使用する。パケットバッファが枯渇すると、共用プール344から1つまたは複数の空きパケットバッファを獲得し、自プールの空きパケットバッファとして使用する。
Data transfer of each connection first uses a packet buffer of a pool allocated for each connection. When the packet buffer is depleted, one or more free packet buffers are acquired from the shared
図8に一例を示す。あるコネクションのデータ転送用にプール3 343が使用され、さらに共用プール344のパケットバッファBuff0−1〜Buff0−6が使用される。なお、パケットバッファBuff0−7〜Buff0−9は、プール3 343で追加使用することもできるし、プール1 341およびプール2 342で使用することもできる。また、第2の端末装置2からの送達確認TCP−ACKパケットの応答により、該パケットバッファが解放されるとき、共用プール344に返却するようにしても良い。
An example is shown in FIG.
以上のように、この発明の実施の形態5によるデータ配信管理装置においては、各コネクションで共用するパケットバッファを設けることにより、各コネクションの通信条件に柔軟に対応することができる。例えば、データ量またはパケット量の多いコネクション、および送達確認TCP−ACKパケットのレスポンスに時間がかかるコネクションに対しては、データ配信管理装置内でデータ量を多く保持するようにできるので、データ転送性能を改善することができる。
As described above, in the data distribution management device according to
実施の形態6.
実施の形態1〜5では、パケットバッファが枯渇後、第2の端末装置からの送達確認TCP−ACKパケットの受信によりパケットバッファが回復しても、第1の端末装置1からのパケット受信がない場合には、第1の端末装置1に対してウィンドウの回復を通知しないが、実施の形態6では、第1の端末装置1からのパケット受信がない場合にも、第2の端末装置からの送達確認TCP−ACKパケットの受信に対応して、これを通知するようにする。
Embodiment 6 FIG.
In the first to fifth embodiments, after the packet buffer is depleted, no packet is received from the first
図9は、この発明の実施の形態6によるデータ配信管理装置の動作を説明するための説明図である。図9において、データ配信管理装置3は、第1の端末装置1からのパケットDTr5を受信すると、最後の空きパケットバッファであるパケットバッファBuff5でこれを記憶し、パケットバッファが枯渇したことを受信ウィンドウサイズ=0としてパケットバッファAKs5により通知する。
FIG. 9 is an explanatory diagram for explaining the operation of the data distribution management device according to the sixth embodiment of the present invention. In FIG. 9, when the data
データ配信管理装置3では、パケットDTs1を受信したことを示す第2の端末装置からのパケットAKr1を受信すると、該TCPデータパケットを保持するパケットバッファBuff1が解放される(すなわち空きとされる)ので、バッファ34が回復する。データ配信管理装置3は、パケットAKr1の受信に対応して回復した受信ウィンドウサイズ値を格納したパケットAKs6を第1の端末装置1に通知する。
When the data
第1の端末装置1では、パケットAKs6の受信により受信ウィンドウが回復したことが分かるので、続くデータをパケットDTr6として送信する。
Since the first
以上のように、この発明の実施の形態6によるデータ配信管理装置においては、第2の端末装置からの送達確認TCP−ACKパケットの受信に対応して、受信ウィンドウの回復を通知するようにしたことにより、第1の端末装置1によるウィンドウプローブパケットを受信しなくても、データ配信管理装置3がデータ転送を再開可能となった直後に、第1の端末装置1からデータの送信が可能となり、転送時間を短縮することができる。
As described above, in the data distribution management device according to the sixth embodiment of the present invention, the reception window recovery is notified in response to the receipt of the delivery confirmation TCP-ACK packet from the second terminal device. Thus, even if the window probe packet is not received by the first
実施の形態7.
実施の形態6では、パケットバッファが枯渇後、回復を契機として第1の端末装置1に受信ウィンドウの回復通知を行うが、実施の形態7では、パケットバッファの回復量が所定の閾値に達したことを契機として受信ウィンドウの回復通知を行う。
In the sixth embodiment, after the packet buffer is depleted, the recovery of the reception window is notified to the first
図10は、この発明の実施の形態7によるデータ配信管理装置の動作を説明するための説明図である。この例では、受信ウィンドウの回復通知の契機として、パケットバッファが4つ以上回復したときを閾値とする。パケットAKr4の受信により、パケットバッファBuff1〜Buff4の4つが解放される。データ配信管理装置3は、第1の端末装置1に受信ウィンドウの回復をパケットAKs6により通知する。受信ウィンドウの回復通知を受けた第1の端末装置1は、続くデータの送信を再開し、パケットDTr6〜DTr9を送信する。
FIG. 10 is an explanatory diagram for explaining the operation of the data distribution management device according to the seventh embodiment of the present invention. In this example, the threshold value is when four or more packet buffers are recovered as a trigger for receiving window recovery notification. Upon reception of the packet AKr4, four packet buffers Buff1 to Buff4 are released. The data
以上のように、この発明の実施の形態7によるデータ配信管理装置においては、パケットバッファの空きが所定の閾値以上に回復したとき受信ウィンドウの回復を通知するようにしたことにより、第1の端末装置は、ある程度まとまったデータ量を送信再開することができるようになり、さらに転送時間を短縮することができる。 As described above, in the data distribution management device according to the seventh embodiment of the present invention, the reception of the reception window is notified when the packet buffer vacancy is recovered to a predetermined threshold value or more, so that the first terminal The apparatus can resume transmission of a certain amount of data and further reduce the transfer time.
実施の形態8.
実施の形態6および7では、受信ウィンドウの回復通知を一旦パケットバッファが枯渇した後としたが、パケットバッファの空きが一旦所定の閾値以下に縮小した後、回復したとき、これを通知するようにしても良い。これにより、例えば第1の端末装置1が、データ配送管理装置3の受信ウィンドウサイズの枯渇ではなく、ある程度小さくなったらデータ送信を中断するような場合に、その回復をすばやく通知することができる。
In the sixth and seventh embodiments, the recovery notification of the reception window is once after the packet buffer is depleted, but when the packet buffer is temporarily reduced to a predetermined threshold or less and then recovered, this is notified. May be. As a result, for example, when the first
なお、上述のように、この発明の実施の形態1〜8では、通信プロトコルとしてTCPを用いる場合を示したが、通信プロトコルがこれに限られるものでないことは言うまでもなく、TCPと同様のフロー制御に対応したものであれば良い。
As described above, in
3 データ配信管理装置
31 転送部
32 返送部
33 保持部
34 バッファ
344 共用プール
3 Data
Claims (10)
前記転送部で転送されるデータパケットのセグメントをバッファに記憶し、前記宛先からの送達確認応答パケットの受信に対応して、前記バッファにおける前記セグメントの記憶領域を空きとする記憶部と、
前記バッファの空きと所定のセグメントサイズに基づいて受信ウィンドウサイズを求め、この受信ウィンドウサイズを、前記転送部で受信したデータパケットの送信元に返送する返送部と、
を備えることを特徴とするデータ配信管理装置。 A transfer unit for transferring the received data packet to the destination;
Storing a segment of the data packet transferred by the transfer unit in a buffer, and in response to receiving a delivery confirmation response packet from the destination, a storage unit that frees the storage area of the segment in the buffer;
A return unit that obtains a reception window size based on the buffer space and a predetermined segment size, and returns the reception window size to the transmission source of the data packet received by the transfer unit;
A data distribution management device comprising:
前記転送工程で転送されるデータパケットのセグメントをバッファに記憶し、前記宛先からの送達確認応答パケットの受信に対応して、前記バッファにおける前記セグメントの記憶領域を空きとする記憶工程と、
前記バッファの空きと所定のセグメントサイズに基づいて受信ウィンドウサイズを求め、この受信ウィンドウサイズを、前記転送工程で受信したデータパケットの送信元に返送する返送工程と、
を備えることを特徴とするデータ配信管理方法。 A transfer step of transferring the received data packet to a destination;
Storing a segment of the data packet transferred in the transfer step in a buffer, and in response to receiving a delivery confirmation response packet from the destination, a storage step of emptying the storage area of the segment in the buffer;
A return step for obtaining a reception window size based on the free space of the buffer and a predetermined segment size, and returning the reception window size to the transmission source of the data packet received in the transfer step;
A data distribution management method comprising:
を備えることを特徴とする請求項9に記載のデータ配信管理方法。 Corresponding to the reception of the delivery confirmation response packet from the destination, a reception window size is obtained based on the empty space of the buffer and a predetermined segment size, and the reception window size is determined from the transmission source of the data packet received in the transfer step Sending process to send to,
The data distribution management method according to claim 9, further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004087130A JP2005277704A (en) | 2004-03-24 | 2004-03-24 | Data distribution management device and data distribution management method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004087130A JP2005277704A (en) | 2004-03-24 | 2004-03-24 | Data distribution management device and data distribution management method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005277704A true JP2005277704A (en) | 2005-10-06 |
Family
ID=35176909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004087130A Pending JP2005277704A (en) | 2004-03-24 | 2004-03-24 | Data distribution management device and data distribution management method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005277704A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9515939B2 (en) | 2013-11-12 | 2016-12-06 | Fujitsu Limited | Apparatus and method for controlling a window size of packet transmission based on a free space of buffer |
-
2004
- 2004-03-24 JP JP2004087130A patent/JP2005277704A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9515939B2 (en) | 2013-11-12 | 2016-12-06 | Fujitsu Limited | Apparatus and method for controlling a window size of packet transmission based on a free space of buffer |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11934340B2 (en) | Multi-path RDMA transmission | |
US10430374B2 (en) | Selective acknowledgement of RDMA packets | |
US6947997B2 (en) | Method for controlling ethernet data flow on a synchronous digital hierarchy transmission network | |
US20050135415A1 (en) | System and method for supporting TCP out-of-order receive data using generic buffer | |
EP2978171B1 (en) | Communication method, communication device, and communication program | |
EP2797269A1 (en) | System, apparatus, computer-readable medium and method for timing packet transmissions when using link aggregation | |
US9081905B2 (en) | Low latency interconnect bus protocol | |
US7616566B2 (en) | Data flow control apparatus and method of mobile terminal for reverse communication from high speed communication device to wireless network | |
WO2021212438A1 (en) | Data transmission method, apparatus and system, terminal device, and storage medium | |
JP5475790B2 (en) | Wireless communication apparatus and communication program | |
CN113572582B (en) | Data transmission and retransmission control method and system, storage medium and electronic device | |
JPWO2008013209A1 (en) | CPU connection circuit, data processing device, arithmetic device, portable communication terminal using these, and data transfer method | |
JP2006217242A (en) | Radio communication method and radio communication device | |
US20050041606A1 (en) | Data communication apparatus, data communication method, data communication program and recording medium in which data communication program was recorded | |
US9544401B2 (en) | Device and method for data communication using a transmission ring buffer | |
JP2019114947A (en) | Communication device, control method of communication device, and program | |
US10372667B2 (en) | Communication apparatus and control method thereof | |
JP2005277704A (en) | Data distribution management device and data distribution management method | |
JP2009188508A (en) | Data transmission and reception device | |
EP3229145A1 (en) | Parallel processing apparatus and communication control method | |
CN109905447B (en) | Method and device for information transmission | |
JP2012064090A (en) | Information processor, information processing system, and communication method of information processing system | |
JP2004260562A (en) | Method and device for transmitting and receiving packet | |
JP2006191368A (en) | Network transmission device | |
JP2014222466A (en) | Information processing device, information processing system, and information processing system communication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061225 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081211 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081224 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090130 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090602 |