JP5539161B2 - Data transmission method and multi-site data distribution method - Google Patents

Data transmission method and multi-site data distribution method Download PDF

Info

Publication number
JP5539161B2
JP5539161B2 JP2010247727A JP2010247727A JP5539161B2 JP 5539161 B2 JP5539161 B2 JP 5539161B2 JP 2010247727 A JP2010247727 A JP 2010247727A JP 2010247727 A JP2010247727 A JP 2010247727A JP 5539161 B2 JP5539161 B2 JP 5539161B2
Authority
JP
Japan
Prior art keywords
packet
received
transmission
packets
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010247727A
Other languages
Japanese (ja)
Other versions
JP2012100165A (en
Inventor
和輝 國分
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TOKYO BROADCASTING SYSTEM TELEVISION, INC.
Original Assignee
TOKYO BROADCASTING SYSTEM TELEVISION, INC.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TOKYO BROADCASTING SYSTEM TELEVISION, INC. filed Critical TOKYO BROADCASTING SYSTEM TELEVISION, INC.
Priority to JP2010247727A priority Critical patent/JP5539161B2/en
Publication of JP2012100165A publication Critical patent/JP2012100165A/en
Application granted granted Critical
Publication of JP5539161B2 publication Critical patent/JP5539161B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

本発明は、データを高速に伝送する通信制御方式に関する。また、当該通信制御方式を利用した複数拠点データ配信方式に関する。   The present invention relates to a communication control method for transmitting data at high speed. The present invention also relates to a multi-site data distribution method using the communication control method.

従来、ファイルの伝送にはTCP(Transmission Control Protocol)が一般的であるが、TCPでは一定量のパケットを投げたあと、応答パケットを待つため、拠点間の往復遅延(RTT)が通信速度に非常に影響する。標準的な64KBのウィンドウサイズで、東京−大阪間(RTTが20msと仮定)の場合、理論上、どんなに速い回線を用意したとしても、25.6Mbpsまでしか速度がでない。ウィンドウサイズを大きくすれば、一度に送信できるデータのサイズが増えるため理論上の通信速度は上がるが、パケットロスが発生した場合には、再送に時間がかかり転送速度が遅くなるなど、かえって転送効率が落ちてしまう場合もある。   Conventionally, TCP (Transmission Control Protocol) is generally used for file transmission. However, TCP throws a certain amount of packets and then waits for a response packet, so the round-trip delay (RTT) between bases is extremely high in communication speed. Affects. In the case of a standard 64 KB window size between Tokyo and Osaka (assuming RTT is 20 ms), the speed is theoretically only up to 25.6 Mbps, no matter how fast a line is prepared. If the window size is increased, the theoretical communication speed increases because the size of data that can be transmitted at one time increases. However, if packet loss occurs, the transfer speed slows down due to the time required for retransmission and the transfer efficiency. May fall.

一方、UDP(User Datagram Protocol)を用いてデータ転送を行う技術自体は既存の技術が存在するが、利用する回線に対して最適なパラメータを設定しなければならないものや、パケットロスや遅延のゆらぎが発生すると転送速度が低下してしまうもの、回線のキャパシティいっぱいまでは使いきれないものなど、従来では解決できていない課題が多い。   On the other hand, although there is an existing technology for performing data transfer using UDP (User Datagram Protocol), it is necessary to set an optimum parameter for the line to be used, and packet loss and fluctuation of delay. There are many problems that have not been solved in the past, such as the transfer rate being reduced when the problem occurs, and the line capacity not being fully used.

また従来、複数拠点に同時伝送を行うには、中央にサーバを置き各拠点に配信する方式が知られている。また、マルチキャストというプロトコルも存在するが、一般的なインターネットでの適応は難しく、または、パケットロスに対する制御などが別途必要になる(特許文献1参照)。   Conventionally, in order to perform simultaneous transmission to a plurality of sites, a system in which a server is placed in the center and distributed to each site is known. Although there is a protocol called multicast, it is difficult to adapt to the general Internet, or control for packet loss is required separately (see Patent Document 1).

特開2008−85932号公報JP 2008-85932 A 特開2000−207298号公報JP 2000-207298 A

従来のデータ伝送方式の多くは、パケットロスを輻輳と定義し、パケットロスが発生した場合には、輻輳が起きているものとみなしている。そして、パケットロスが発生しないように制御したり、また、パケットロスが発生した場合には、輻輳が抑止されるように転送レートやパケット転送間隔を制御したりすることが一般的である。   In many conventional data transmission systems, packet loss is defined as congestion, and when packet loss occurs, it is considered that congestion has occurred. In general, control is performed so that packet loss does not occur, and when packet loss occurs, a transfer rate and a packet transfer interval are controlled so that congestion is suppressed.

このため、従来のデータ伝送方式は、パケットロスが生じると通信速度が大幅に低下してしまうという課題を有している。他にも、従来のデータ伝送方式は、パケット遅延のゆらぎにより通信速度が低下する、通信開始当初の通信速度が遅い、RTTが大きいと通信速度が影響を受けてしまう、といった点が指摘されている。   For this reason, the conventional data transmission system has the subject that communication speed will fall significantly, if packet loss arises. In addition, it has been pointed out that the conventional data transmission method has a communication speed lowering due to fluctuations in packet delay, a communication speed at the beginning of communication being slow, and a communication speed being affected if RTT is large. Yes.

また、複数拠点にデータをほぼ同時に伝送する配信方式においては、中央サーバをおく方式では、複数拠点同時配信に耐えうる高性能な中央サーバと、配信先の数に応じた広帯域な回線が必要である。マルチキャスト配信を用いる場合、特別な回線が必要となり、かつ、パケットロスに対応するためサーバから個別に再送などを制御しなければならない。   In addition, in the distribution method that transmits data to multiple sites almost simultaneously, the central server method requires a high-performance central server that can withstand simultaneous distribution at multiple sites and a broadband line that matches the number of distribution destinations. is there. When multicast distribution is used, a special line is required, and retransmission and the like must be individually controlled from the server to cope with packet loss.

本発明はかかる実情に鑑みてなされたものであり、データ伝送中にパケットロスや遅延のゆらぎが発生することを前提とし、パケットロス等が生じても、データ伝送速度が大きく低下することのない高速なデータ伝送方式を提供しようとするものである。また、このようなデータ伝送方式を利用して、複数拠点にデータをほぼ同時に配信する配信方式を提供しようとするものである。   The present invention has been made in view of such circumstances, and on the premise that packet loss and delay fluctuation occur during data transmission, even if packet loss occurs, the data transmission speed is not greatly reduced. It intends to provide a high-speed data transmission system. In addition, using such a data transmission method, a distribution method for distributing data to a plurality of locations almost simultaneously is provided.

本発明の一実施形態に係るデータ伝送方法は、送信側装置から受信側装置に対してパケット通信網を介してデータを伝送する方法であって、送信側装置が、受信側装置に対して複数のパケットを連続的に送出する第一のステップと、受信側装置から送出された、受信側装置が複数のパケットのうち少なくとも一部を受領したことを示す受領確認を受信する第二のステップと、受領確認によって受信先による受領が確認されたパケットよりも前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送する第三のステップと、を備える。すなわち、本発明の一実施形態においては、パケットを連続送信後、受領確認(Ack)が返って来たパケットより前に送信したパケットをパケットロスとみなすことにより、従来のデータ伝送方式とは異なり、送信後一定時間経過する前に受領が確認されなくても、パケットの再送を行わずに、そのままパケットを送信し続ける。ネットワークスイッチ等はパケットをバッファに受信してから処理を行うため、パケットを送り込む間隔を短くすればするほど、バッファにそのパケットが入る確率を上げることが出来る。本発明は、回線のキャパシティよりも速い速度でパケットを送り込むことで、より高速なデータ転送を可能としている。回線のキャパシティを溢れた分はパケットロスとなるが、本発明においては、パケットロスが起こることを前提としているため、データ伝送上の問題は生じない。   A data transmission method according to an embodiment of the present invention is a method for transmitting data from a transmission-side device to a reception-side device via a packet communication network. And a second step of receiving an acknowledgment sent from the receiving device, indicating that the receiving device has received at least some of the plurality of packets, and A third step of retransmitting a packet that has been sent before the packet whose receipt has been confirmed by the receipt confirmation and that has not received the receipt confirmation. That is, in one embodiment of the present invention, a packet transmitted before a packet for which an acknowledgment (Ack) is returned after continuous transmission of packets is regarded as a packet loss, which is different from the conventional data transmission method. Even if the receipt is not confirmed before a certain period of time elapses after transmission, the packet is continuously transmitted without being retransmitted. Since the network switch or the like performs processing after receiving a packet in the buffer, the probability that the packet enters the buffer can be increased as the interval between sending packets is shortened. The present invention enables higher-speed data transfer by sending packets at a speed faster than the capacity of the line. The amount of overflow of the line capacity is packet loss. However, in the present invention, since it is assumed that packet loss occurs, there is no problem in data transmission.

近年、IP網を構成している装置はほとんどがスイッチであり、装置内部にバッファを備えている。装置間は全二重で任意のタイミングで通信可能であり、送られてきたパケットはスイッチ内部のバッファに一旦溜められ、そのバッファから送るべき通信相手にパケット送信される。バッファがいっぱいにならない限り、同じ機器に対するパケットが複数個所から送られてきたとしても、順番に処理されるだけでパケットロスは発生しない。ただし、遅延時間は変化する。バッファがいっぱいになると、バッファに空きができるまで、その後に届いたパケットは破棄されてしまう(パケットロス)が、バッファに入った分のパケットについては正しく処理される。したがって、従来の通信制御方式が前提としている「輻輳」は、誰も正常な通信をできないような状況のことを指すが、そのような状況は、現在の装置間では発生しにくい。   In recent years, most of the devices constituting the IP network are switches, and have a buffer inside the device. The devices can communicate with each other at full timing in full duplex. The transmitted packets are temporarily stored in a buffer in the switch, and the packets are transmitted from the buffer to a communication partner to be transmitted. As long as the buffer is not full, even if packets for the same device are sent from a plurality of locations, they are only processed in sequence and no packet loss occurs. However, the delay time changes. When the buffer is full, packets that arrive thereafter are discarded (packet loss) until the buffer is full, but the packets that have entered the buffer are processed correctly. Therefore, “congestion” premised on the conventional communication control method refers to a situation where no one can perform normal communication, but such a situation is unlikely to occur between current devices.

好適には、第三のステップは、受領確認によって受信先による受領が確認されたパケットのうち最も直近に送出されたパケットの送出時刻よりも所定時間以上前に送出されたパケットを再送する。パケットがリオーダーで届く場合もあるので、パケットロスと判定する時刻に若干の遊びを持たせることにより、受信側ですでに受信済みのパケットを再度受信してしまうことがほぼなくなり、効率の良いデータ伝送が可能となる。   Preferably, the third step retransmits a packet sent a predetermined time or more before the sending time of the packet sent most recently among the packets whose receipts have been confirmed by the receiving confirmation. Since packets may arrive in reorder, by giving a little play to the time when packet loss is determined, it is almost impossible to receive a packet that has already been received again on the receiving side. Data transmission is possible.

第一のステップは、パケットを送出する際に、当該パケットを識別可能な識別情報と当該パケットの送出時刻とを対応付けて記録するステップを含むことが好ましい。好適には、受領確認は、受信先が受領したパケットの識別情報を含む。さらに、受領確認は、過去所定回分の受領確認に含まれていた識別情報を含むことが好ましい。過去数回分の受領確認情報を、受領確認パケットに入れて送付することにより、受領確認パケットのパケットロスも考慮したデータ伝送方式を提供することができる。   It is preferable that the first step includes a step of recording identification information that can identify the packet and a transmission time of the packet in association with each other when the packet is transmitted. Preferably, the receipt confirmation includes identification information of the packet received by the recipient. Furthermore, it is preferable that the receipt confirmation includes identification information included in the past predetermined number of receipt confirmations. By sending the receipt confirmation information for the past several times in the receipt confirmation packet, it is possible to provide a data transmission method that takes into account the packet loss of the receipt confirmation packet.

また、本発明の一実施形態に係るデータ配信方法は、上述のデータ伝送方法によるデータ送受信が可能な複数の送受信装置の間で、数珠つなぎにデータ伝送を行うことによって、複数の送受信装置間で略同時にデータ伝送を行う。すなわち、上述のデータ伝送方法を基本技術として利用して、A拠点からB拠点に投げたパケットを、B拠点はC拠点に中継する、といった処理を繰り返す。基本的には1対1の通信のため、中央サーバは必要ない。また、特別な広帯域回線は必要なく、一般的なBフレッツに代表される上下対称な光ファイバーブロードバンド回線を利用可能である。さらに、パケット単位で中継されるため、最小単位でデータ配信が行われる。これにより、ファイル全体が転送完了するのを待つことなく、パケット単位でデータ転送できるため、1対1で通信するのとほぼ同等な時間で、複数拠点への同時伝送が可能である。   In addition, a data distribution method according to an embodiment of the present invention performs data transmission between a plurality of transmission / reception devices by performing data transmission between a plurality of transmission / reception devices capable of data transmission / reception by the above-described data transmission method. Data transmission is performed almost simultaneously. That is, using the above-described data transmission method as a basic technique, a process in which a packet thrown from the A site to the B site is relayed to the C site by the B site is repeated. Basically, a central server is not necessary for one-to-one communication. In addition, a special broadband line is not required, and a vertically symmetric optical fiber broadband line represented by a general B FLET'S can be used. Furthermore, since data is relayed in units of packets, data distribution is performed in the minimum units. As a result, data can be transferred in units of packets without waiting for the transfer of the entire file to be completed, and simultaneous transmission to a plurality of locations is possible in substantially the same time as one-to-one communication.

本発明のデータ伝送方式によれば、データ伝送中にパケットロスや遅延のゆらぎが起こっても、データ伝送速度が大きく低下することがなく、高速にデータを伝送可能なデータ伝送方式を提供することができる。また、このようなデータ伝送方式を利用して、複数拠点にデータを略同時に配信する配信方式を提供することが可能である。   According to the data transmission system of the present invention, it is possible to provide a data transmission system capable of transmitting data at high speed without causing a significant decrease in data transmission speed even if packet loss or delay fluctuation occurs during data transmission. Can do. In addition, it is possible to provide a distribution method that distributes data to a plurality of locations substantially simultaneously using such a data transmission method.

より具体的には、本発明の所定の実施形態によれば、インターネット等のIP通信網を用いて、回線のキャパシティいっぱいまで活用して高速に拠点から拠点へデータを転送するためのプロトコルおよび制御方式を提供できる。パケットロスが頻発するような回線であっても、ほとんど影響を受けずに安定したデータ転送が可能である。また、回線速度、回線品質にほとんど影響されず、ユーザが回線にあわせた特別な設定を行うこともなく、回線のキャパシティいっぱいまで利用して高速なデータ転送が可能である。   More specifically, according to a predetermined embodiment of the present invention, a protocol for transferring data from a base to a base at high speed using an IP communication network such as the Internet and making full use of the capacity of the line, and A control method can be provided. Even on a line where packet loss frequently occurs, stable data transfer is possible with almost no influence. In addition, it is hardly affected by the line speed and the line quality, and the user can perform high-speed data transfer by using up to the capacity of the line without performing any special setting according to the line.

また、本発明の所定の実施形態によれば、上述のデータ伝送方式を応用し、ある拠点から複数拠点を数珠つなぎにパケットを中継し、データの同時伝送を可能としている。特別な回線は必要なく、一般的なBフレッツに代表される光ファイバーブロードバンドを用いて回線のキャパシティいっぱいまで利用した上で、複数拠点への高速な同時転送を可能としている。   In addition, according to a predetermined embodiment of the present invention, the above-described data transmission method is applied to relay a packet from a certain base to a plurality of bases, thereby enabling simultaneous transmission of data. No special line is required, and high-speed simultaneous transfer to multiple sites is possible after using the optical fiber broadband typified by general B FLET'S to the full line capacity.

本発明の一実施形態に係るデータ伝送システム1のアーキテクチャを示す図である。It is a figure which shows the architecture of the data transmission system 1 which concerns on one Embodiment of this invention. 本発明の一実施形態に係る送信側装置10及び受信側装置20の機能構成を示すブロック図である。It is a block diagram which shows the function structure of the transmission side apparatus 10 and the receiving side apparatus 20 which concern on one Embodiment of this invention. 本発明の一実施形態におけるデータ伝送処理の制御プロトコルを示すフローチャートである。It is a flowchart which shows the control protocol of the data transmission process in one Embodiment of this invention. 本発明の一実施形態におけるデータ伝送の概略を示す概念図である。It is a conceptual diagram which shows the outline of the data transmission in one Embodiment of this invention. 本発明の一実施形態に係るデータ伝送方式のアルゴリズムを説明するための模式図である。It is a schematic diagram for demonstrating the algorithm of the data transmission system which concerns on one Embodiment of this invention. 本発明の一実施形態に係るデータ伝送方式のアルゴリズムを説明するための模式図である。It is a schematic diagram for demonstrating the algorithm of the data transmission system which concerns on one Embodiment of this invention. 本発明の一実施形態に係るデータ伝送方式を利用した複数拠点配信システムのアーキテクチャを示す図である。It is a figure which shows the architecture of the multi-site distribution system using the data transmission system which concerns on one Embodiment of this invention. 本発明の一実施形態に係る送信側装置10、受信側装置20、及びこれらを含む送受信装置70の機能構成を示すブロック図である。It is a block diagram which shows the function structure of the transmission side apparatus 10, the receiving side apparatus 20, and the transmission / reception apparatus 70 containing these which concern on one Embodiment of this invention. 本発明の一実施形態における複数拠点配信処理の概略を示すフローチャートである。It is a flowchart which shows the outline of the multi-site delivery process in one Embodiment of this invention.

以下、本発明の実施の形態について図面を参照しつつ詳細に説明する。なお、同一の要素には同一の符号を付し、重複する説明を省略する。また、以下の実施の形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。さらに、本発明は、その要旨を逸脱しない限り、さまざまな変形が可能である。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In addition, the same code | symbol is attached | subjected to the same element and the overlapping description is abbreviate | omitted. Further, the following embodiments are exemplifications for explaining the present invention, and are not intended to limit the present invention only to the embodiments. Furthermore, the present invention can be variously modified without departing from the gist thereof.

図1は、本発明の一実施形態に係るデータ伝送システム1のアーキテクチャを示す図である。データ伝送システム1は、送信側装置10と受信側装置20とがネットワークNを介して接続されて構成される。   FIG. 1 is a diagram showing an architecture of a data transmission system 1 according to an embodiment of the present invention. The data transmission system 1 is configured by connecting a transmission side device 10 and a reception side device 20 via a network N.

送信側装置10は、ネットワークNを介して受信側装置20に向けてデータを送信するための装置である。受信側装置20は、送信側装置10から送信されたデータを受信するための装置である。送信側装置10と受信側装置20はそれぞれ、専用の装置により構成してもよいし、汎用のコンピュータが送信側装置10及び/又は受信側装置20の機能を備えるよう構成してもよい。   The transmission side device 10 is a device for transmitting data to the reception side device 20 via the network N. The reception side device 20 is a device for receiving data transmitted from the transmission side device 10. Each of the transmission side device 10 and the reception side device 20 may be configured by a dedicated device, or a general-purpose computer may be configured to have the functions of the transmission side device 10 and / or the reception side device 20.

ネットワークNは、送信側装置10と受信側装置20との間でデータを伝送するための通信回線である。これはLANやインターネット網に代表されるパケット通信網(またはその組み合わせ)であればよく、物理層には左右されない。よって、物理層としては、イーサネット(登録商標)、無線通信網、公衆電話通信網、一般電話回線網、その他の通信回線、それらの組み合わせ等のいずれであってもよい。また、各通信網間を接続するためのゲートウェイや各種基地局、交換機などもネットワークNに含まれ得る。   The network N is a communication line for transmitting data between the transmission side device 10 and the reception side device 20. This may be a packet communication network (or a combination thereof) typified by a LAN or the Internet network, and does not depend on the physical layer. Therefore, the physical layer may be any of Ethernet (registered trademark), wireless communication network, public telephone communication network, general telephone line network, other communication lines, combinations thereof, and the like. The network N can also include gateways, various base stations, and exchanges for connecting the communication networks.

図2は、本発明の一実施形態に係る送信側装置10及び受信側装置20の機能構成を示すブロック図である。   FIG. 2 is a block diagram illustrating functional configurations of the transmission-side device 10 and the reception-side device 20 according to an embodiment of the present invention.

送信側装置10は、送出時刻記録モジュール11と、パケット送出モジュール12と、送出レート調整モジュール13と、受領確認(Ack)受信モジュール14と、再送判定モジュール15とを含んで構成される。   The transmission side device 10 includes a transmission time recording module 11, a packet transmission module 12, a transmission rate adjustment module 13, an acknowledgment (Ack) reception module 14, and a retransmission determination module 15.

送出時刻記録モジュール11は、パケット単位で、パケットを識別するためのパケット番号と、当該パケットを送出した日時に関する送信時刻情報とを対応付けて記録する。なお、パケット番号に換えて、パケットを識別可能な任意の情報を利用可能である。パケット送出モジュール12は、送信するデータをパケットに分けて、ネットワークNに送出する。送出レート調整モジュール13は、ネットワークNに送信するビットレート等、パケットの送出レートを調整する。受領確認(Ack)受信モジュール14は、受信側装置20から受領確認(Ack)を受信して、受信側装置20がパケットを受信したか否かをパケット番号毎に管理する。再送判定モジュール15は、所定の条件を満たすパケットを受信側装置20に再送する。   The transmission time recording module 11 records, in packet units, a packet number for identifying a packet and transmission time information related to the date and time when the packet was transmitted. Note that any information that can identify a packet can be used instead of the packet number. The packet transmission module 12 divides data to be transmitted into packets and transmits the packets to the network N. The transmission rate adjustment module 13 adjusts a packet transmission rate such as a bit rate transmitted to the network N. The receipt confirmation (Ack) reception module 14 receives the receipt confirmation (Ack) from the reception side device 20, and manages whether or not the reception side device 20 has received a packet for each packet number. The retransmission determination module 15 retransmits a packet that satisfies a predetermined condition to the reception side device 20.

受信側装置20は、パケット受信モジュール21と、受信パケット番号記録モジュール22と、受領確認(Ack)送信モジュール23と、過去分受領確認(Ack)情報記憶モジュール24と、ソート処理モジュール25と、受信レート計算モジュール26と、タイマー27とを含んで構成される。   The receiving-side device 20 includes a packet receiving module 21, a received packet number recording module 22, a receipt confirmation (Ack) transmission module 23, a past receipt confirmation (Ack) information storage module 24, a sort processing module 25, and a reception process. A rate calculation module 26 and a timer 27 are included.

パケット受信モジュール21は、送信側装置10から送出されたパケットを受信する。受信パケット番号記録モジュール22は、受信したパケットのパケット番号を記録する。受領確認(Ack)送信モジュール23は、パケットを受領したときに、受領したパケットの受領確認を送信側装置10に向けて送信する。このとき、受領したパケットを一定個数分まとめて、又は、所定時間が経過した場合にそれまでに受領したパケットをまとめて、受領確認を返送することが好ましい。過去分受領確認(Ack)情報記憶モジュール24は、過去に送出した受領確認を、パケット番号と対応付けて記憶する。ソート処理モジュール25は、受信したパケットを結合してデータを読み出すためのものである。受信レート計算モジュール26は、受信したパケットに基づいて、受信レートを計算する。タイマー27は、受領時間等を測定し、また、受領確認を送信するタイミングを計るためのものである。   The packet reception module 21 receives a packet transmitted from the transmission side device 10. The received packet number recording module 22 records the packet number of the received packet. When receiving a packet, the acknowledgment (Ack) transmission module 23 transmits an acknowledgment of the received packet to the transmitting apparatus 10. At this time, it is preferable to return a receipt confirmation by collecting a certain number of received packets or by collecting all the packets received so far when a predetermined time has elapsed. The past receipt confirmation (Ack) information storage module 24 stores the receipt confirmation sent in the past in association with the packet number. The sort processing module 25 is for combining received packets and reading data. The reception rate calculation module 26 calculates a reception rate based on the received packet. The timer 27 measures the reception time and the like and measures the timing for transmitting the receipt confirmation.

次に、上記のように構成されるデータ伝送システム1の動作の概要について説明する。   Next, an outline of the operation of the data transmission system 1 configured as described above will be described.

図3は、本発明の一実施形態におけるデータ伝送処理の制御プロトコルを示すフローチャートである。本実施形態では、データの伝送及び制御にUDPプロトコルのみを用いるものとする。そのため、特許文献2にあるようなTCPを制御、UDPをデータ転送に用いるようなプロトコルと比較して、TCP分の帯域を確保する必要はなく、回線キャパシティをフルに利用できる。なお、コネクションレスのデータグラム型プロトコルであれば、UDPプロトコルに限らず適用可能である。送信データのパケットは、UDPパケットのヘッダを除いた先頭4バイトをパケット番号とする。先頭4バイトを除いた残りのデータを、転送すべきデータの一部(ペイロード)とする。ペイロードのサイズは、送るべきデータの最終パケットを除き、固定の大きさとする。しかし、パケット番号やペイロードのサイズ等は、これらに限定されない。   FIG. 3 is a flowchart showing a control protocol for data transmission processing according to an embodiment of the present invention. In this embodiment, only the UDP protocol is used for data transmission and control. For this reason, it is not necessary to secure a bandwidth for TCP as compared to a protocol that controls TCP as in Patent Document 2 and uses UDP for data transfer, and can fully utilize the line capacity. Any connectionless datagram protocol can be applied without being limited to the UDP protocol. The packet of the transmission data has a packet number of the first 4 bytes excluding the UDP packet header. The remaining data excluding the first 4 bytes is a part of the data to be transferred (payload). Payload size is fixed except for the last packet of data to be sent. However, the packet number, payload size, etc. are not limited to these.

送信側装置10のパケット送出モジュール12は、送信側装置10から受信側装置20に転送するデータをペイロードサイズごとに分け、パケット番号を付加した上で、受信側装置20にパケット送出する(S41)。その際、送出時刻記録モジュール11は、パケット送信をした時刻をパケット番号毎に記録しておく。   The packet transmission module 12 of the transmission side device 10 divides the data to be transferred from the transmission side device 10 to the reception side device 20 for each payload size, adds a packet number, and transmits the packet to the reception side device 20 (S41). . At that time, the transmission time recording module 11 records the packet transmission time for each packet number.

データ転送開始当初、送信側装置10から受信側装置20までの回線がどの程度のキャパシティがあるのか不明であるため、送信側装置10は可能な限り速い速度で次々にパケットを送出する。なお、ネットワークNのキャパシティを超えた分のパケットは、ネットワークN上で破棄されることになる。   At the beginning of data transfer, since it is unclear how much capacity the line from the transmission side device 10 to the reception side device 20 has, the transmission side device 10 sends out packets one after another at the highest possible speed. Packets that exceed the capacity of the network N are discarded on the network N.

受信側装置20のパケット受信モジュール21がパケットを受信すると、送信側装置10から届いたパケットをソート処理モジュール25がパケット番号順にソートし、パケット番号が連続して受信できた部分について、ディスク装置や後の処理系にデータを出力する(S42)。ただし、受信パケットのパケット番号がすでに受信済みのパケット番号だった場合は、この処理を行わない。   When the packet receiving module 21 of the receiving side device 20 receives the packet, the sort processing module 25 sorts the packets received from the transmitting side device 10 in the order of the packet number. Data is output to the subsequent processing system (S42). However, this processing is not performed when the packet number of the received packet is already received.

受信側装置20の受信パケット番号記録モジュール22は、届いたパケットのパケット番号を記録する。受領確認送信モジュール23は、前回の受領確認パケット送付から、一定個数(例えば64個)パケットが届いた場合、または、直近の通信速度から換算して一定個数のパケットが届くはずの時間に所定時間を加えた時間が経過した場合に、送信側装置10に対し受領確認(Ack)を送付する(S43)。送付した受領確認のログは、過去分受領確認情報記憶モジュール24に記録される。なお、届いたパケットのパケット番号を記録する際、過去に受信済みのパケット番号も処理対象とする。   The received packet number recording module 22 of the receiving device 20 records the packet number of the received packet. The receipt confirmation transmission module 23 receives a predetermined number of packets when a certain number of packets (for example, 64) have arrived since the last receipt confirmation packet transmission or when a certain number of packets should arrive after conversion from the latest communication speed. When the time after adding elapses, a receipt confirmation (Ack) is sent to the transmitting side device 10 (S43). The sent receipt confirmation log is recorded in the past receipt confirmation information storage module 24. When recording the packet number of the received packet, the packet number that has been received in the past is also processed.

受領確認(Ack)パケットは、UDPパケットのヘッダを除いた先頭4バイトを受領確認パケット番号とし、その後ろに、直近の一定時間(例えば、1/3秒をタイマー27で計測)で算出したビットレートの情報を付加する。そして、その後ろに、届いたパケット番号(4バイト)を列挙する。パケット番号が連続している場合は、連続しているパケット番号の先頭と最終のパケット番号に連続フラグをつけて、受領確認パケットのサイズを圧縮する。また、受領確認パケットがパケットロスになる可能性を考慮し、過去N回分(例えば、N=1)の受領確認パケットに列挙したパケット番号情報を付加する。これにより、受領確認パケットが連続で(N+1)回パケットロスしない限り、受領確認情報は正しく送信側装置10に伝わる。ビットレートの情報は、受信レート計算モジュール26が、一定時間に受信したパケット数(重複パケットを含む)を用いて算出する。過去の受領確認は過去分受領確認情報記憶モジュール24から取得される。   The receipt confirmation (Ack) packet uses the first 4 bytes excluding the UDP packet header as the receipt confirmation packet number, followed by a bit calculated in the latest fixed time (for example, 1/3 second is measured by the timer 27). Add rate information. After that, the received packet numbers (4 bytes) are listed. If the packet numbers are continuous, a continuous flag is attached to the head and the last packet number of the continuous packet numbers, and the size of the receipt confirmation packet is compressed. Further, considering the possibility that the receipt confirmation packet becomes a packet loss, the packet number information listed in the past N receipt confirmation packets (for example, N = 1) is added. As a result, the receipt confirmation information is correctly transmitted to the transmission side device 10 as long as the receipt confirmation packets are not continuously lost (N + 1) times. The bit rate information is calculated by the reception rate calculation module 26 using the number of packets (including duplicate packets) received in a certain time. The past receipt confirmation is acquired from the past receipt confirmation information storage module 24.

なお、本実施形態においては、データ伝送中にパケットロスが発生することを前提としているため、受信されたデータは歯抜け状態となることが多い。しかし、ソート処理モジュール25からディスク装置等にデータを出力する際には、シーケンシャルにデータを書き出さないと性能が劣化してしまう。そのため、受信側装置20は適切な量のバッファを持ち、歯抜け状態が解消された部分までをシーケンシャルデータとして、ディスク装置に書き出したり、後の処理系に出力したりする。   In the present embodiment, since it is assumed that a packet loss occurs during data transmission, the received data is often in a missing state. However, when data is output from the sort processing module 25 to a disk device or the like, the performance deteriorates unless the data is written sequentially. For this reason, the receiving-side apparatus 20 has an appropriate amount of buffer, and writes up to the part where the tooth missing state has been eliminated as sequential data to the disk device or outputs it to a later processing system.

送信側装置10は、受領確認パケットが届くと、受領確認受信モジュール14が受領確認パケットを受信する(S44)。そして、再送判定モジュール15は、受領確認パケットに列挙された受信済みパケット番号について、それぞれのパケットを送信側装置10が元々送付した時刻のうち最も直近の時刻を、「応答済み最終パケット送信時刻」(T)とし、まだ受領確認が返ってきていないパケットの送信時刻(S)との差(T−S)が、所定の閾値β(例えば、β=200ミリ秒)以上になった場合に、その受領確認が返ってきていないパケットについて、次に新規に送るべきパケットに割り込む形で、再送を行う(S45)。なお、再送時にも、そのパケットを再送した時刻を記録しておく。   In the transmission side apparatus 10, when the receipt confirmation packet arrives, the receipt confirmation reception module 14 receives the receipt confirmation packet (S44). Then, for the received packet numbers listed in the receipt confirmation packet, the retransmission determination module 15 sets the most recent time among the times when the transmitting side device 10 originally sent each packet as the “response last packet transmission time”. (T), and when the difference (TS) from the transmission time (S) of the packet for which the receipt confirmation has not yet returned is equal to or greater than a predetermined threshold β (for example, β = 200 milliseconds), The packet whose acknowledgment has not been returned is retransmitted in such a way as to interrupt the next packet to be sent (S45). Note that, at the time of retransmission, the time when the packet was retransmitted is recorded.

送信側装置10の送出レート調整モジュール13は、受領確認パケットに記載された直近のビットレート情報をもとに、次以降、パケットを送出する時間間隔を制御する(S46)。具体的には、転送開始からのビットレート情報で最も高い数値(最大値)に対し、θ倍(例えば、θ=1.2)の速度でパケットを送出する。本発明においては、パケットロスは発生することが前提であるため、回線のキャパシティを超えてパケットを送信し、パケットロスが発生してもデータ伝送上の問題は生じない。また、通信開始当初、回線が過度に混雑していてあまり高いレートが出なかった場合でも、回線が空けば速度は回復する。逆に、通信開始当初、回線が空いていて、次第に混雑した場合でも、混雑した分の実転送速度は落ちるが、パケットロスが多めに発生するようになるだけであり、通信の信頼性には影響しない。仮に通信中に回線が混雑したとしても、本来、ビットレート情報の最大値までのキャパシティはあるはずであるため、転送速度を遅くすることはしない。   The transmission rate adjustment module 13 of the transmission side apparatus 10 controls the time interval for transmitting the packets thereafter, based on the most recent bit rate information described in the receipt confirmation packet (S46). Specifically, the packet is transmitted at a rate of θ times (for example, θ = 1.2) with respect to the highest numerical value (maximum value) in the bit rate information from the start of transfer. In the present invention, since it is assumed that a packet loss will occur, even if a packet is transmitted exceeding the capacity of the line and a packet loss occurs, no problem in data transmission will occur. Even if the line is excessively congested at the beginning of communication and the rate is not too high, the speed is recovered if the line is freed. On the contrary, even if the line is vacant at the beginning of communication and gradually becomes congested, the actual transfer rate for the congested area will drop, but only a small amount of packet loss will occur. It does not affect. Even if the line is congested during communication, the capacity up to the maximum value of the bit rate information is supposed to exist, so the transfer rate is not slowed down.

送信側装置10は、送信すべきデータのパケットがまだ残っている場合(S47:No)、上記S41〜S46の処理を繰り返してパケットを送信する。送信すべきデータの最後のパケットまで送信した場合(S47:Yes)、送信データの終わりを示すパケットを送信し、さらに、受領確認がまだ返ってきていない(と送信側装置10が認識している)パケットについて強制的に再送を行う(S48)。この強制再送モードでは、受領確認が返ってきていないパケットを未送信と同じ状態として扱い、S41〜S47の処理を行う。転送をやめたり、一時停止したりすることはしない。なお、この送信データの終わりを示すパケットもパケットロス時は再送対象となる。   If there is still a packet of data to be transmitted (S47: No), the transmitting apparatus 10 transmits the packet by repeating the processes of S41 to S46. When the data has been transmitted up to the last packet to be transmitted (S47: Yes), a packet indicating the end of the transmission data is transmitted, and the receipt confirmation has not yet returned (the transmitting side device 10 recognizes that). ) The packet is forcibly retransmitted (S48). In this forced retransmission mode, a packet for which no acknowledgment has been returned is treated as being in the same state as untransmitted, and the processing of S41 to S47 is performed. Never stop or pause the transfer. Note that the packet indicating the end of the transmission data is also subject to retransmission when the packet is lost.

受信側装置20は、全てのパケットを受信した場合、受信完了のステータスとするが、まだ送信側装置10からパケットがまだ送られてくる場合は、受領確認パケットを返す処理は続行する。   The reception side device 20 sets the reception completion status when all the packets are received, but if the packet is still sent from the transmission side device 10, the process of returning the receipt confirmation packet continues.

送信側装置10は、受領確認パケットを受信するまで、S48の処理を繰り返す(S49:No)。そして、受領確認パケットにより、受信側装置20が全てのパケットを受信したことを検出した時点で送信処理を完了する(S49:Yes)。   The transmission side apparatus 10 repeats the process of S48 until it receives the receipt confirmation packet (S49: No). Then, the transmission processing is completed when it is detected by the receipt confirmation packet that the receiving side apparatus 20 has received all the packets (S49: Yes).

図4は、本発明の一実施形態におけるデータ伝送の概略を示す概念図である。同図に示すように、本実施形態では、送信側装置10から受信側装置20に対して、データパケットを、回線速度を超えて連続的に送信する。ネットワークN上のルータ等のバッファ30で処理しきれないパケットは捨てられる(矢印32)が、送信側装置10からルータ等のバッファ30に絶え間なくパケットが来るため、この速度が速ければ速いほど、送信側装置10から送信されたパケットがルータ等のバッファ30に入る確率が上がる(矢印34)。受信側装置20は、パケットを受信すると、受領確認(Ack)パケットを返送するが、このとき、複数個分のデータパケットの受領確認を、1つの受領確認パケットにまとめて送信側装置10に返送する。   FIG. 4 is a conceptual diagram showing an outline of data transmission in one embodiment of the present invention. As shown in the figure, in this embodiment, data packets are continuously transmitted from the transmission side device 10 to the reception side device 20 exceeding the line speed. Packets that cannot be processed by the buffer 30 such as the router on the network N are discarded (arrow 32). However, since packets are constantly coming from the transmission side device 10 to the buffer 30 such as the router, the faster this speed, The probability that a packet transmitted from the transmission side apparatus 10 enters the buffer 30 such as a router increases (arrow 34). When receiving the packet, the receiving side device 20 returns an acknowledgment (Ack) packet. At this time, the reception side device 10 collects a plurality of data packet acknowledgments into one acknowledgment packet and returns it to the transmitting side device 10. To do.

図5及び図6は、本発明の一実施形態に係るデータ伝送方式のアルゴリズムを説明するための模式図である。   5 and 6 are schematic views for explaining an algorithm of a data transmission method according to an embodiment of the present invention.

図5は、送信側装置10からのデータの転送速度が8.192Mbps、ペイロードのサイズは1024バイト、すなわち1ミリ秒毎に絶えずデータパケットが送信され続けるものとし、RTT=0ミリ秒と仮定している。例えば、パケット番号1のデータパケットは送信時刻1ミリ秒に送信され、パケット番号2のデータパケットは送信時刻2ミリ秒に送信され、以降、パケット番号259のデータパケットまで1ミリ秒毎に送信されている。送信されたデータパケットは、パケット番号と送信時刻とが対応付けて記録される。また、送信時刻に閾値β(本実施例では、β=200ミリ秒とする。)を足した値が、再送判定時刻である。なお、説明の便宜上、図5では、送信時刻と再送判定時刻とを併記している。   FIG. 5 assumes that the data transfer rate from the transmission side device 10 is 8.192 Mbps, the payload size is 1024 bytes, that is, data packets are continuously transmitted every 1 millisecond, and RTT = 0 millisecond. ing. For example, a data packet with a packet number 1 is transmitted at a transmission time of 1 millisecond, a data packet with a packet number 2 is transmitted at a transmission time of 2 milliseconds, and thereafter a data packet with a packet number of 259 is transmitted every millisecond. ing. The transmitted data packet is recorded with the packet number and the transmission time associated with each other. A value obtained by adding a threshold value β (in this embodiment, β = 200 milliseconds) to the transmission time is the retransmission determination time. For convenience of explanation, FIG. 5 shows the transmission time and the retransmission determination time together.

一方、受信側装置20は、送信側装置10から送信されたデータパケットを受信する。同図では、パケット番号1のデータパケットが受信時刻1ミリ秒に受信され、パケット番号3のデータパケットが受信時刻3ミリ秒に受信され、以降、データ伝送の遅延が生じることなく、パケット番号259のデータパケットまで1ミリ秒毎にパケットを受信している。しかし、パケット番号2のデータパケットは、パケットロスのため、受信側装置20に受信されていない。   On the other hand, the receiving device 20 receives the data packet transmitted from the transmitting device 10. In the figure, the data packet with the packet number 1 is received at the reception time of 1 millisecond, the data packet with the packet number 3 is received at the reception time of 3 milliseconds, and thereafter the packet number 259 is generated without causing a delay in data transmission. Packets are received every 1 millisecond until the next data packet. However, the data packet with the packet number 2 is not received by the receiving-side device 20 due to packet loss.

このとき、受信側装置20は、64個のデータパケットを受信するたびに、この64個のデータパケットの受領確認を1つの受領確認パケットにまとめて、送信側装置10に返送する。受領確認パケット51は、パケット番号1及び3〜65のデータパケットの受領確認が1つにまとめられている。パケット番号65のデータパケットは、受信時刻65ミリ秒に受信され、このパケットの受信後に、この場合は処理に1ミリ秒かかったと仮定して、時刻66ミリ秒に受領確認パケット51が送信側装置10に返送される。   At this time, each time the receiving side apparatus 20 receives 64 data packets, the receiving side apparatus 20 collects the reception confirmation of the 64 data packets into one reception confirmation packet and returns it to the transmitting side apparatus 10. In the receipt confirmation packet 51, the receipt confirmations of the data packets having the packet numbers 1 and 3 to 65 are combined into one. The data packet with the packet number 65 is received at a reception time of 65 milliseconds, and after reception of this packet, it is assumed that the processing took 1 millisecond in this case, and the receipt confirmation packet 51 is transmitted at the time of 66 milliseconds. 10 is returned.

送信側装置10は、受領確認パケット51を受信すると、当該パケットに含まれるパケット番号に基づいて、受信側装置20で受信されたデータパケットを特定し、パケット番号に対応付けて受信の済または未済を表すフラグを立てる。図5の例では、パケット番号1及び3〜65に受信「済」フラグを立てる。これにより、受信側装置20が受信したデータパケット及び受信していないデータパケットが管理される。   Upon receiving the receipt confirmation packet 51, the transmission side device 10 identifies the data packet received by the reception side device 20 based on the packet number included in the packet, and has been received or not received in association with the packet number. Set a flag to indicate. In the example of FIG. 5, reception “done” flags are set for packet numbers 1 and 3 to 65. As a result, data packets received by the receiving side apparatus 20 and data packets not received are managed.

続けて、受領確認パケットに含まれる受領済みパケットのうち最終のパケット(最も直近に送信されたパケット)の送信時刻と、受信が未済のパケットの再送判定時刻とが比較される。受領確認パケット51から得られる応答済み最終パケット送信時刻は65ミリ秒であり、受信が未済のパケット番号2の再送判定時刻は202ミリ秒である。応答済み最終パケット送信時刻(65ミリ秒)がパケット番号2の再送判定時刻(202ミリ秒)を超えていないので、パケット2はまだ再送不要と判断される。   Subsequently, the transmission time of the last packet (the packet transmitted most recently) among the received packets included in the reception confirmation packet is compared with the retransmission determination time of the packet that has not been received yet. The response-completed last packet transmission time obtained from the receipt confirmation packet 51 is 65 milliseconds, and the retransmission determination time of the packet number 2 that has not been received is 202 milliseconds. Since the response final packet transmission time (65 milliseconds) does not exceed the retransmission determination time (202 milliseconds) of the packet number 2, it is determined that the packet 2 is not yet required to be retransmitted.

この間も、送信側装置10から受信側装置20へのデータパケットの送信は絶えず続き、時刻129ミリ秒のときパケット番号129のデータパケットが受信され、これにより、受領確認を未送信のものがパケット番号66からパケット番号129までの計64個たまった状態になる。そこで、時刻130ミリ秒のときに受領確認パケット52が受信側装置20から送信側装置10に送信される。この受領確認パケット52は、今回新たに発生したパケット番号66〜129の64個のデータパケットの受領確認のみならず、前回送信したパケット番号1及び3〜65の受領確認も含む。送信側装置10は、受領確認パケット52を受信すると、このパケットに含まれるパケット番号に基づいて、パケット番号66〜129の受信「済」フラグをたてる。その後、応答済み最終パケット送信時刻の129ミリ秒と、まだ受信されていないパケット番号2の再送判定時刻202ミリ秒とが比較され、応答済み最終パケット送信時刻(129ミリ秒)がパケット番号2の再送判定時刻(202ミリ秒)を超えていないので、パケット2はまだ再送不要と判断される。   During this time, the transmission of the data packet from the transmission side apparatus 10 to the reception side apparatus 20 continues continuously, and the data packet with the packet number 129 is received at the time 129 milliseconds. A total of 64 packets from number 66 to packet number 129 are collected. Therefore, the reception confirmation packet 52 is transmitted from the reception-side device 20 to the transmission-side device 10 when the time is 130 milliseconds. This receipt confirmation packet 52 includes not only the receipt confirmation of 64 data packets of the newly generated packet numbers 66 to 129 but also the receipt confirmation of the previously transmitted packet numbers 1 and 3 to 65. Upon receiving the receipt confirmation packet 52, the transmission side device 10 sets a reception “completed” flag of packet numbers 66 to 129 based on the packet number included in this packet. After that, 129 milliseconds of the response final packet transmission time is compared with the retransmission determination time 202 milliseconds of the packet number 2 not yet received, and the response final packet transmission time (129 milliseconds) of the packet number 2 is compared. Since the retransmission determination time (202 milliseconds) has not been exceeded, it is determined that packet 2 is not yet required to be retransmitted.

その後も同様に処理が続けられ、データパケットの送信は引き続き絶えず行われ、パケット番号130〜193の受領確認を含む受領確認パケット53が受信側装置20から送信側装置10に送信される。この受領確認パケット53を受信した送信側装置10では、パケット番号130〜193が受信済みと判断される。また、応答済み最終パケット送信時刻(193ミリ秒)がパケット番号2の再送判定時刻(202ミリ秒)を超えていないので、パケット2はまだ再送不要と判断される。   Thereafter, the processing is continued in the same manner, and the transmission of the data packet is continuously performed. The reception confirmation packet 53 including the reception confirmation of the packet numbers 130 to 193 is transmitted from the reception side apparatus 20 to the transmission side apparatus 10. In the transmission side apparatus 10 that has received the receipt confirmation packet 53, it is determined that the packet numbers 130 to 193 have been received. Further, since the last packet transmission time that has been responded (193 milliseconds) does not exceed the retransmission determination time (202 milliseconds) of packet number 2, it is determined that packet 2 is not yet required to be retransmitted.

その後、パケット番号194〜257の受領確認を含む受領確認パケット54が受信側装置20から送信される。送信側装置10が受領確認パケット54を受信して、パケット番号194〜257の受信「済」フラグを立てた後、応答済み最終パケット送信時刻と、受信が未済のパケット番号2の再送判定時刻とが比較される。このとき、応答済み最終パケット送信時刻(257ミリ秒)がパケット番号2の再送判定時刻(202ミリ秒)を超えているので、再送が必要と判断される。つまり、パケット番号2のパケットが送信されてから200ミリ秒後に送信されたデータパケットですら既に受信されているので、パケット2はパケットロスしたものと判断され、再送されることになる。再送処理を受領確認パケット54の受信直後に行ったとしても、すでに送信しようとするパケットデータが送信側装置10のバッファにたまっているので、実際にパケット番号2のデータパケットが再送されるのは、この例では、時刻300ミリ秒である。   Thereafter, a reception confirmation packet 54 including reception confirmations of the packet numbers 194 to 257 is transmitted from the reception side apparatus 20. After the transmission side device 10 receives the receipt confirmation packet 54 and sets the reception “completed” flag of the packet numbers 194 to 257, the response final packet transmission time, the retransmission determination time of the packet number 2 that has not been received, Are compared. At this time, it is determined that retransmission is necessary because the response last packet transmission time (257 milliseconds) exceeds the retransmission determination time (202 milliseconds) of the packet number 2. That is, even a data packet transmitted 200 milliseconds after the transmission of the packet with the packet number 2 has already been received. Therefore, it is determined that the packet 2 has been lost and is retransmitted. Even if the retransmission process is performed immediately after reception of the receipt confirmation packet 54, the packet data to be transmitted has already accumulated in the buffer of the transmission side device 10, so that the data packet of the packet number 2 is actually retransmitted. In this example, the time is 300 milliseconds.

再送処理の間、及び、再送処理の後も、送信側装置10はデータパケットを送信し続け、受信側装置20はパケット番号258〜321の受領確認を含む受領確認パケット55を送信する。送信側装置10は受領確認パケット55を受信して、受信「済」パケットの管理と再送判定処理を実施する。   During the retransmission process and after the retransmission process, the transmission side apparatus 10 continues to transmit data packets, and the reception side apparatus 20 transmits a reception confirmation packet 55 including reception confirmation of packet numbers 258 to 321. The transmission-side apparatus 10 receives the receipt confirmation packet 55, and manages the received “done” packet and performs retransmission determination processing.

図6は、図5と同様のセッティングの実施例において、途中で、データ伝送の遅延が発生した場合の実施例である。同図の例では、時刻129ミリ秒までは、図5と同じ処理が行われる。すなわち、送信側装置10からは1ミリ秒ごとにデータパケットが送信され続ける。受信側装置20は、受領確認パケット61と62を返している。そして、パケット番号2のデータパケットがパケットロスしている。   FIG. 6 shows an embodiment in the case where a data transmission delay occurs in the middle of the setting example similar to FIG. In the example of the figure, the same processing as in FIG. 5 is performed until the time of 129 milliseconds. In other words, data packets continue to be transmitted from the transmission side device 10 every 1 millisecond. The receiving side device 20 returns receipt confirmation packets 61 and 62. The data packet with the packet number 2 is lost.

このような状況で、図6の例では、パケット番号129のパケットを受信した後、データ伝送の遅延が発生し、パケット番号130のデータパケットを受信したのは500ミリ秒後、すなわち時刻630ミリ秒であり、その後、1ミリ秒毎に1つのデータパケットが受信されている。   In such a situation, in the example of FIG. 6, a data transmission delay occurs after receiving the packet with the packet number 129, and the data packet with the packet number 130 is received 500 milliseconds later, that is, at a time of 630 milliseconds. Second, and then one data packet is received every millisecond.

このとき、受領確認パケット63は、時刻694ミリ秒で受信側装置20から送信されている。送信側装置10は受領確認パケット63を受信すると、受領確認パケット63に含まれるパケット番号に基づいて、パケット番号130〜193が受信済みと判断される。また、応答済み最終パケット送信時刻(193ミリ秒)がパケット番号2の再送判定時刻(202ミリ秒)を超えていないので、パケット2はまだ再送不要と判断される。   At this time, the reception confirmation packet 63 is transmitted from the receiving-side apparatus 20 at time 694 milliseconds. When receiving the receipt confirmation packet 63, the transmission side apparatus 10 determines that the packet numbers 130 to 193 have been received based on the packet number included in the receipt confirmation packet 63. Further, since the last packet transmission time that has been responded (193 milliseconds) does not exceed the retransmission determination time (202 milliseconds) of packet number 2, it is determined that packet 2 is not yet required to be retransmitted.

その後、パケット番号194〜257の受領確認を含む受領確認パケット64が、時刻758ミリ秒に、受信側装置20から送信される。送信側装置10が受領確認パケット64を受信して、パケット番号194〜257の受信「済」フラグを立てた後、応答済み最終パケット送信時刻と、受信が未済のパケット番号2の再送判定時刻とが比較される。このとき、応答済み最終パケット送信時刻(257ミリ秒)がパケット番号2の再送判定時刻(202ミリ秒)を超えているので、再送が必要と判断される。そして、例えば時刻800ミリ秒に、パケット番号2のデータパケットが再送される。   Thereafter, the reception confirmation packet 64 including the reception confirmation of the packet numbers 194 to 257 is transmitted from the reception-side apparatus 20 at time 758 milliseconds. After the transmission side apparatus 10 receives the receipt confirmation packet 64 and sets the reception “completed” flag of the packet numbers 194 to 257, the response final packet transmission time, the retransmission determination time of the packet number 2 that has not been received, Are compared. At this time, it is determined that retransmission is necessary because the response last packet transmission time (257 milliseconds) exceeds the retransmission determination time (202 milliseconds) of the packet number 2. For example, the data packet with the packet number 2 is retransmitted at a time of 800 milliseconds.

図5と図6を比較すると明らかなように、本実施形態では、仮にネットワークが混雑して大幅な遅延が発生しても、比較対象が変わらないので、問題にならない。これに対し、通常のデータ伝送方式では、ネットワークにデータ転送の遅延が生じた時点で、データパケットの送信が中断され、輻輳を回避するためにデータ伝送速度を落として、パケットの再送処理が行われることになるため、データの伝送時間が遅くなる。   As is apparent from a comparison between FIG. 5 and FIG. 6, in this embodiment, even if the network is congested and a large delay occurs, the comparison target does not change, so there is no problem. In contrast, in the normal data transmission method, when a data transfer delay occurs in the network, the transmission of the data packet is interrupted, and the data transmission rate is reduced to avoid congestion, and the packet retransmission process is performed. Therefore, the data transmission time is delayed.

このように、本発明においては、パケットロスや遅延のゆらぎは発生するものという前提に立ち、回線のキャパシティよりも速い速度でパケットを送り込む。これにより、スイッチのバッファに空きが出た際に自分のパケットがバッファに入る確率を上げることが出来る。   Thus, in the present invention, on the assumption that packet loss and delay fluctuations occur, packets are sent at a speed faster than the capacity of the line. This can increase the probability that one's own packet enters the buffer when the switch buffer becomes available.

実際にパケットロスが発生した場合、そのことを素早く検知し、再送を行わなければならないが、「パケットを送信後一定時間を経過しても受領確認(Ack)が来ない場合にパケットロスとする」といった従来のTCPなどにおける制御方式だと、遅延に揺らぎが発生した場合に実際はパケットロスしていなかったのに待ち時間の閾値を越えてしまう場合がある。実際、スイッチのバッファがいっぱいになると、遅延量が数百ミリ秒以上、酷いときには1秒を超えることもあり、それだけの揺らぎが発生することを考慮しなければならない。また、従来の技術では、「遅延の発生」=「回線混雑度の増加」=「パケットロスの発生確率の上昇」と考え、遅延が発生しないように制御するものがほとんどであった。   If a packet loss actually occurs, it must be detected quickly and retransmitted. However, “If a receipt confirmation (Ack) does not come even after a certain period of time has passed since the packet was sent, it is considered a packet loss. In the case of a conventional control method in TCP or the like, there may be a case where the delay time threshold is exceeded when there is a fluctuation in the delay but no packet loss actually occurs. In fact, when the buffer of the switch is full, the amount of delay may exceed several hundred milliseconds, and in severe cases it may exceed 1 second. In addition, in the prior art, most of the devices are controlled so as not to generate a delay, considering that “occurrence of delay” = “increase in the degree of congestion” = “increase in the probability of occurrence of packet loss”.

これに対し、本発明では、パケットロスや遅延は発生するものという前提で通信が制御され、どれだけ揺らぎや遅延が発生しても問題が発生しない方式として、「パケットを連続送信後、受領確認(Ack)が返って来たパケットより前に送信したが受領確認が返ってきていないパケットをパケットロスとする」という制御方式を採用している。パケットの受領確認が返ってくる時間を予定していないという点で、従来の制御方式とは異なる制御方式である。ただし、実際には、パケットがリオーダーで届く場合もあるので、パケットロスと判定する時刻に若干の遊びを持たせることが好ましい。これにより、受信側ですでに受信済みのパケットを再度受信してしまうことがほぼなくなり、非常に効率の良い転送が可能となる。   On the other hand, in the present invention, communication is controlled on the assumption that packet loss and delay occur, and as a method that does not cause a problem no matter how much fluctuation or delay occurs, “acknowledgment confirmation after continuous transmission of packets” A control method is adopted in which a packet that has been transmitted before (Ack) is returned but has not been acknowledged is regarded as a packet loss. This is a control method that is different from the conventional control method in that it does not schedule a time when the packet receipt confirmation is returned. However, in actuality, there is a case where the packet arrives in a reorder, and therefore it is preferable to give some play to the time when the packet loss is determined. As a result, a packet that has already been received on the receiving side is almost never received again, and very efficient transfer is possible.

また、本高速転送プロトコルは、回線のキャパシティをほとんど使い切ってしまうため、自分が専有して良い回線であれば問題ないが、他者と共有する回線の場合、問題が発生する場合がありうる。そのため、転送効率指定を可能とすることが好ましい。これは、例えば、70%と指定した場合、回線のキャパシティの70%まで使用して転送する方式である。   In addition, this high-speed transfer protocol uses up the capacity of the line, so there is no problem if it is a line that you can occupy. However, if the line is shared with others, problems may occur. . Therefore, it is preferable to be able to specify transfer efficiency. For example, when 70% is designated, transfer is performed using up to 70% of the capacity of the line.

そのためには、定期的かつ瞬間的に(例えば10秒に1秒間)、回線のキャパシティを計るため、速い速度でパケットを投げ、そこで得られたレート情報に転送効率を掛けたレートを通常の上限レートとして制御する。これは、瞬間的に回線を圧迫するが、他の時間は回線に空きがあるため、他の通信が途切れてしまうことはない。   To do this, periodically and instantaneously (for example, 1 second in 10 seconds), the packet capacity is thrown at a high speed in order to measure the capacity of the line, and the rate obtained by multiplying the obtained rate information by the transfer efficiency is set to the normal rate. Control as the maximum rate. This momentarily compresses the line, but other communication is not interrupted because the line is free at other times.

さらに、サーバに対し、UDPの1ポートのみで、データ転送および制御を行うことが好ましい。これにより、クライアントやサーバがNAT環境であっても問題なくデータ転送が可能である。   Furthermore, it is preferable to perform data transfer and control with only one UDP port for the server. As a result, even if the client or server is a NAT environment, data can be transferred without any problem.

次に、本発明の一実施形態によるデータ伝送方式を利用した複数拠点配信処理について説明する。   Next, a multi-site distribution process using a data transmission method according to an embodiment of the present invention will be described.

図7は、本発明の一実施形態に係るデータ伝送方式を利用した複数拠点配信システム80のアーキテクチャを示す図である。複数拠点配信システムは、送信側装置10と受信側装置20と複数の送受信装置70とがネットワークNを介して接続されて構成される。   FIG. 7 is a diagram showing an architecture of a multi-site distribution system 80 using a data transmission method according to an embodiment of the present invention. The multi-site distribution system is configured by connecting a transmission-side device 10, a reception-side device 20, and a plurality of transmission / reception devices 70 via a network N.

送信側装置10、受信側装置20、及びネットワークNは上述の例と同じ構成であるので詳細を省略する。送受信装置70は、送信側装置10の機能と受信側装置20の機能を含んで構成される。そして、送信側装置10(送受信装置70に含まれる送信側装置10を含む)と受信側装置20(送受信装置70に含まれる受信側装置20を含む)の間を本発明による高速データ伝送方式で通信を制御し、これらを数珠繋ぎに直列的に繋ぎ合わせることによって複数拠点配信処理を実現している。   Since the transmission side apparatus 10, the reception side apparatus 20, and the network N have the same configuration as the above-described example, the details are omitted. The transmission / reception device 70 is configured to include the function of the transmission side device 10 and the function of the reception side device 20. A high-speed data transmission method according to the present invention is used between the transmission side device 10 (including the transmission side device 10 included in the transmission / reception device 70) and the reception side device 20 (including the reception side device 20 included in the transmission / reception device 70). Multi-site distribution processing is realized by controlling communication and connecting them in series in a daisy chain.

図8は、本発明の一実施形態に係る送信側装置10、受信側装置20、及びこれらを含む送受信装置70の機能構成を示すブロック図である。   FIG. 8 is a block diagram showing a functional configuration of the transmission side device 10, the reception side device 20, and the transmission / reception device 70 including these according to an embodiment of the present invention.

同図に示すように、送受信装置70は受信側装置20と送信側装置10とが一つの機器に納められている。そして、受信側装置20のパケット受信モジュール21で受信したデータパケットが、そのまま同一の機器内にある送信側装置10のパケット送出モジュール12に渡される。その他、送信側装置10及び受信側装置20の機能構成は上述の実施形態と同様である。   As shown in the figure, the transmission / reception device 70 includes a reception-side device 20 and a transmission-side device 10 in one device. Then, the data packet received by the packet reception module 21 of the reception side device 20 is transferred to the packet transmission module 12 of the transmission side device 10 in the same device as it is. In addition, the functional configurations of the transmission side device 10 and the reception side device 20 are the same as those in the above-described embodiment.

図9は、本発明の一実施形態における複数拠点配信処理の概略を示すフローチャートである。なお、本実施例では、A拠点から、B拠点を経由して、C拠点に配信する場合を想定している。なお、同図は一例にすぎず、実際は拠点数に制限はない。   FIG. 9 is a flowchart showing an outline of the multi-site distribution process in one embodiment of the present invention. In this embodiment, it is assumed that distribution is performed from the A site to the C site via the B site. This figure is only an example, and there is actually no limit on the number of bases.

まず、A拠点はB拠点に対し、上述の高速データ転送プロトコルを用い、データ転送を開始する(S91)。   First, the A site starts data transfer to the B site using the above-described high-speed data transfer protocol (S91).

B拠点は、上述の高速データ伝送における受信側装置20と同様の処理を行いつつ、送信側装置10としても機能し、A拠点から受信したデータパケットをC拠点に転送する(S92)。ただし、B拠点がすでに受信済みのパケットを再度受信した場合は、C拠点への転送は行わない。B拠点とC拠点間では、上述の高速データ伝送における送信側装置10と受信側装置20と同様に、経路中でパケットロスが発生した場合は、B拠点から再送処理を行う。拠点数が多い場合でも、上記のB拠点に相当する拠点が増えるだけで、全体の効率としてはほとんど変わらない。   The site B performs the same processing as that of the reception side device 20 in the above-described high-speed data transmission, and also functions as the transmission side device 10, and transfers the data packet received from the site A to the site C (S92). However, when the B site has received a packet that has already been received, the transfer to the C site is not performed. In the same way as the transmitting side device 10 and the receiving side device 20 in the high-speed data transmission described above, between the B site and the C site, when packet loss occurs in the route, retransmission processing is performed from the B site. Even when the number of bases is large, the number of bases corresponding to the above-mentioned base B only increases, and the overall efficiency hardly changes.

このように、上述の受信側装置20と送信側装置10の機能を備え、上述のデータ伝送方式による受信と送信をほぼ同時に行うことのできる送受信装置70を前提に、これらの拠点間を数珠つなぎにデータ転送することで、複数拠点に高速略同時データ伝送を可能としている。なお、光ファイバー等の全二重で上下対象の回線網であれば、上下の両方の帯域が活用できる。従来の技術や製品では、転送をファイル単位で扱うため、ひとつのファイルの転送が終らないと、次の転送が行えなかったり、TCPを用いているため、パケットロスや遅延のゆらぎにより転送レートが劣化するものがほとんどであったところ、本複数拠点配信方式では、上述の高速データ伝送の制御プロトコル、および、各拠点が同程度の回線に接続されていることを前提とし、サーバは、パケット単位で受信したデータを、次のサーバにそのまま転送する。上下対称の回線であれば、受信と送信は同時に行えるため、効率はほとんど落ちない。これにより、複数の拠点に対し、1対向のみで転送する場合と比べて、ほとんど同じ時間で複数の拠点に高速で転送が可能である。   Thus, on the premise of the transmission / reception device 70 that has the functions of the above-described reception-side device 20 and the transmission-side device 10 and can perform reception and transmission by the above-described data transmission method almost simultaneously, it is connected between these bases. By transferring data to the network, high-speed, almost simultaneous data transmission to multiple sites is possible. In addition, in the case of a full-duplex line network such as an optical fiber, both the upper and lower bands can be used. In conventional technologies and products, transfer is handled in units of files, so if one file transfer is not completed, the next transfer cannot be performed, or TCP is used, so the transfer rate is reduced due to packet loss and delay fluctuations. Most of them deteriorated, but this multi-site distribution method assumes that the above high-speed data transmission control protocol and each base are connected to the same level of line, and the server The data received at is transferred as it is to the next server. If the line is vertically symmetrical, reception and transmission can be performed at the same time, so the efficiency is hardly reduced. Thereby, compared with the case of transferring to a plurality of bases with only one facing, it is possible to transfer to a plurality of bases at high speed in almost the same time.

以上、詳述したとおり、本発明は、インターネット等のIP通信網を用いて、回線のキャパシティいっぱいまで活用して高速に拠点から拠点へデータを転送するためのプロトコルおよび制御方式に関する。本発明によれば、パケットロスが頻発するような回線であっても、ほとんど影響を受けずに安定したデータ伝送が可能である。   As described above in detail, the present invention relates to a protocol and a control method for transferring data from a base to a base at high speed by using an IP communication network such as the Internet to make full use of the capacity of the line. According to the present invention, stable data transmission can be achieved with little influence even on a line where packet loss occurs frequently.

具体的には、UDPのようなAck応答を要しないプロトコルを用いて、信頼性を確保しつつ、高速なデータ伝送を可能とする制御方式であり、本発明の実施形態はさらにその効率を高め、回線速度、回線品質にほとんど影響されず、ユーザが回線にあわせた特別な設定を行うこともなく、回線のキャパシティいっぱいまで利用して高速なデータ伝送を可能とする制御方式である。   Specifically, it is a control method that enables high-speed data transmission while ensuring reliability using a protocol such as UDP that does not require an Ack response, and the embodiment of the present invention further increases its efficiency. It is a control method that enables high-speed data transmission by using up to the full capacity of the line, without being affected by the line speed and line quality, and without any special setting by the user.

また、このデータ伝送システムを応用し、ある拠点から複数拠点を数珠つなぎにパケットを中継し、データの同時伝送を可能とする。本実施形態によれば、特別な回線は必要なく、一般的なBフレッツに代表される光ファイバーブロードバンドを用いて回線のキャパシティいっぱいまで利用した上で、複数拠点への高速な同時転送を可能としている。   In addition, by applying this data transmission system, packets can be relayed from one base to multiple bases in a daisy chain, enabling simultaneous transmission of data. According to the present embodiment, a special line is not necessary, and high-speed simultaneous transfer to a plurality of bases is possible after using up to the capacity of the line by using optical fiber broadband represented by general B FLET'S. Yes.

なお、本発明は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。このため、上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。例えば、上述の各処理ステップは処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。   The present invention is not limited to the above-described embodiment, and can be implemented in various other forms without departing from the gist of the present invention. For this reason, the said embodiment is only a mere illustration in all points, and is not interpreted limitedly. For example, the above-described processing steps can be executed in any order or in parallel as long as there is no contradiction in the processing contents.

1…データ伝送システム、10…送信側装置、11…送出時刻記録モジュール、12…パケット送出モジュール、13…送出レート調整モジュール、14…受領確認受信モジュール、15…再送判定モジュール、20…受信側装置、21…パケット受信モジュール、22…受信パケット番号記録モジュール、23…受領確認送信モジュール、24…過去分受領確認情報記憶モジュール、25…ソート処理モジュール、26…受信レート計算モジュール、27…タイマー、70…送受信装置、80…複数拠点配信システム DESCRIPTION OF SYMBOLS 1 ... Data transmission system, 10 ... Transmission side apparatus, 11 ... Transmission time recording module, 12 ... Packet transmission module, 13 ... Transmission rate adjustment module, 14 ... Receipt confirmation reception module, 15 ... Retransmission determination module, 20 ... Reception side apparatus , 21 ... Packet reception module, 22 ... Reception packet number recording module, 23 ... Receipt confirmation transmission module, 24 ... Past receipt confirmation information storage module, 25 ... Sort processing module, 26 ... Reception rate calculation module, 27 ... Timer, 70 ... Transceiver, 80 ... Multi-site distribution system

Claims (26)

送信側装置から受信側装置に対してパケット通信網を介してデータを伝送する方法であって、前記送信側装置が、
前記受信側装置に対して複数のパケットを前記パケット通信網の回線キャパシティより速い速度で連続的に送出する第一のステップと、
前記受信側装置から送出された、前記受信側装置が前記複数のパケットのうち少なくとも一部を受領したことを示す受領確認を受信する第二のステップと、
前記受領確認によって前記受信側装置による受領が確認されたパケットよりも前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送する第三のステップと、
を備えるデータ伝送方法。
A method of transmitting data from a transmission side device to a reception side device via a packet communication network, wherein the transmission side device comprises:
A first step of continuously sending a plurality of packets to the receiving side device at a speed faster than a line capacity of the packet communication network ;
A second step of receiving an acknowledgment sent from the receiving device indicating that the receiving device has received at least some of the plurality of packets;
A third step of retransmitting a packet that has been sent before a packet that has been confirmed to be received by the receiving device by the receipt confirmation and that has not received a receipt confirmation;
A data transmission method comprising:
前記データ伝送方法は、前記送信側装置が、更に、In the data transmission method, the transmitting device further includes:
前記パケットを連続的に送出する速度が、前記受信側装置が受信したパケットに基づいて算出したビットレート情報より速い速度となるように、送出レートを調整する送出レート調整ステップ  A transmission rate adjustment step for adjusting the transmission rate so that the rate at which the packets are continuously transmitted is faster than the bit rate information calculated based on the packets received by the receiving side device.
を備える請求項1に記載のデータ伝送方法。A data transmission method according to claim 1.
前記第三のステップは、前記受領確認によって前記受信側装置による受領が確認されたパケットのうち最も直近に送出されたパケットの送出時刻よりも所定時間以上前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送することを特徴とする請求項1又は2に記載のデータ伝送方法。 The third step is a packet sent a predetermined time or more before the sending time of the packet sent most recently among the packets confirmed to be received by the receiving device by the receipt confirmation; and The data transmission method according to claim 1 or 2 , wherein a packet for which an acknowledgment has not been received is retransmitted. 前記第一のステップは、パケットを送出する際に、当該パケットを識別可能な識別情報と当該パケットの送出時刻とを対応付けて記録するステップを含むことを特徴とする請求項1乃至3のいずれかに記載のデータ伝送方法。 The first step, when sending a packet, one of the claims 1 to 3, characterized in that it comprises the step of recording the packet in association with transmission time of the identification information capable of identifying and the packet data transmission method according to any. 前記受領確認は、前記受信側装置が受領したパケットの識別情報を含むことを特徴とする請求項記載のデータ伝送方法。 5. The data transmission method according to claim 4 , wherein the receipt confirmation includes identification information of a packet received by the receiving apparatus. 前記受領確認は、過去の受領確認に含まれていた識別情報を含むことを特徴とする請求項記載のデータ伝送方法。 6. The data transmission method according to claim 5 , wherein the receipt confirmation includes identification information included in a past receipt confirmation. 受信側装置に対してパケット通信網を介してデータを伝送する送信側装置であって、
受信側装置に対して複数のパケットを前記パケット通信網の回線キャパシティより速い速度で連続的に送出するパケット送出モジュールと、
前記受信側装置から送出された、前記受信側装置が前記複数のパケットのうち少なくとも一部を受領したことを示す受領確認を受信する受領確認受信モジュールと、
前記受領確認によって前記受信側装置による受領が確認されたパケットよりも前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送する再送判定モジュールと、
を備える送信側装置。
A transmission-side device that transmits data to a reception-side device via a packet communication network,
A packet sending module for continuously sending a plurality of packets to a receiving side device at a speed faster than the line capacity of the packet communication network ;
A receipt confirmation receiving module that receives a receipt confirmation sent from the receiving apparatus and indicating that the receiving apparatus has received at least some of the plurality of packets;
A retransmission determination module that retransmits a packet that has been sent before the packet that has been confirmed to be received by the receiving device by the receipt confirmation and that has not received the receipt confirmation;
A transmission-side device comprising:
前記送信側装置は、更に、  The transmitting device further includes:
前記パケットを連続的に送出する速度が、前記受信側装置が受信したパケットに基づいて算出したビットレート情報より速い速度となるように、送出レートを調整する送出レート調整モジュール  A transmission rate adjustment module that adjusts the transmission rate so that the rate at which the packets are continuously transmitted is faster than the bit rate information calculated based on the packets received by the receiving side device.
を備える請求項7に記載の送信側装置。The transmission side apparatus according to claim 7.
前記再送判定モジュールは、前記受領確認によって前記受信側装置による受領が確認されたパケットのうち最も直近に送出されたパケットの送出時刻よりも所定時間以上前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送することを特徴とする請求項7又は8に記載の送信側装置。 The retransmission determination module is a packet transmitted a predetermined time or more before the transmission time of the most recently transmitted packet among the packets confirmed to be received by the reception side device by the reception confirmation, and 9. The transmission side apparatus according to claim 7 , wherein a packet for which confirmation has not been received is retransmitted. 送信側装置と受信側装置とを備え、パケット通信網を介してデータを伝送するデータ伝送システムにおいて、
前記送信側装置は、
受信側装置に対して複数のパケットを前記パケット通信網の回線キャパシティより速い速度で連続的に送出するパケット送出モジュールと、
前記受信側装置から送出された、前記受信側装置が前記複数のパケットのうち少なくとも一部を受領したことを示す受領確認を受信する受領確認受信モジュールと、
前記受領確認によって前記受信側装置による受領が確認されたパケットよりも前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送する再送判定モジュールと、
を備え、
前記受信側装置は、
前記送信側装置から受信したパケットの受領確認を送信する受領確認送信モジュールを備える、
ことを特徴とするデータ伝送システム。
In a data transmission system comprising a transmission side device and a reception side device and transmitting data via a packet communication network,
The transmitting device is:
A packet sending module for continuously sending a plurality of packets to a receiving side device at a speed faster than the line capacity of the packet communication network ;
A receipt confirmation receiving module that receives a receipt confirmation sent from the receiving apparatus and indicating that the receiving apparatus has received at least some of the plurality of packets;
A retransmission determination module that retransmits a packet that has been sent before the packet that has been confirmed to be received by the receiving device by the receipt confirmation and that has not received the receipt confirmation;
With
The receiving side device
A receipt confirmation sending module for sending a receipt confirmation of a packet received from the sending device;
A data transmission system characterized by that.
前記データ伝送システムは、前記送信側装置が、更に、In the data transmission system, the transmitting device further includes:
前記パケットを連続的に送出する速度が、前記受信側装置が受信したパケットに基づいて算出したビットレート情報より速い速度となるように、送出レートを調整する送出レート調整モジュール  A transmission rate adjustment module that adjusts the transmission rate so that the rate at which the packets are continuously transmitted is faster than the bit rate information calculated based on the packets received by the receiving side device.
を備える請求項10に記載のデータ伝送システム。The data transmission system according to claim 10.
前記再送判定モジュールは、前記受領確認によって前記受信側装置による受領が確認されたパケットのうち最も直近に送出されたパケットの送出時刻よりも所定時間以上前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送することを特徴とする請求項10又は11に記載のデータ伝送システム。 The retransmission determination module is a packet transmitted a predetermined time or more before the transmission time of the most recently transmitted packet among the packets confirmed to be received by the reception side device by the reception confirmation, and 12. The data transmission system according to claim 10 , wherein a packet for which confirmation has not been received is retransmitted. 請求項1乃至6のいずれかに記載のデータ伝送方法をコンピュータに実行させるためのプログラム。   The program for making a computer perform the data transmission method in any one of Claims 1 thru | or 6. 請求項13に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium on which the program according to claim 13 is recorded. 前記請求項1乃至6のいずれかに記載のデータ伝送方法によるデータ送受信が可能な複数の送受信装置の間で、数珠つなぎにデータ伝送を行うことによって、前記複数の送受信装置間で略同時にデータ伝送を行うことを特徴とするデータ転送方法。   Data transmission between the plurality of transmission / reception devices is performed almost simultaneously by performing data transmission between the plurality of transmission / reception devices capable of data transmission / reception by the data transmission method according to any one of claims 1 to 6. The data transfer method characterized by performing. パケット通信網を介して、一の装置から受信したデータを他の装置に転送する方法であって、
前記一の装置から前記パケット通信網の回線キャパシティより速い速度で送出された複数のパケットを受信する第一のステップと、
前記他の装置に対して、前記受信した複数のパケットを送出する第二のステップと、
前記他の装置から送出された、前記他の装置が前記複数のパケットのうち少なくとも一部を受領したことを示す受領確認を受信する第三のステップと、
前記受領確認によって前記他の装置による受領が確認されたパケットよりも前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送する第四のステップと、
を備えるデータ転送方法。
A method of transferring data received from one device to another device via a packet communication network,
A first step of receiving a plurality of packets sent from the one device at a speed faster than a line capacity of the packet communication network ;
A second step of sending the received plurality of packets to the other device;
A third step of receiving an acknowledgment sent from the other device indicating that the other device has received at least some of the plurality of packets;
A fourth step of retransmitting a packet that has been sent before the packet that has been confirmed to be received by the other device by the receipt confirmation and that has not received the receipt confirmation;
A data transfer method comprising:
前記データ転送方法は、更に、前記一の装置が、In the data transfer method, the one apparatus further includes:
前記パケットを連続的に送出する速度が、前記受信側装置が受信したパケットに基づいて算出したビットレート情報より速い速度となるように、送出レートを調整する送出レート調整ステップ  A transmission rate adjustment step for adjusting the transmission rate so that the rate at which the packets are continuously transmitted is faster than the bit rate information calculated based on the packets received by the receiving side device.
を備える請求項16に記載のデータ転送方法。The data transfer method according to claim 16.
前記一の装置から受信したパケットの受領確認を送信する第五のステップをさらに備えることを特徴とする請求項16又は17に記載のデータ転送方法。 The data transfer method according to claim 16 or 17 , further comprising a fifth step of transmitting a receipt confirmation of a packet received from the one device. 前記第四のステップは、前記受領確認によって前記他の装置による受領が確認されたパケットのうち最も直近に送出されたパケットの送出時刻よりも所定時間以上前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送することを特徴とする請求項16乃至18のいずれかに記載のデータ転送方法。 The fourth step is a packet sent a predetermined time or more before the sending time of the packet sent most recently among the packets confirmed to be received by the other device by the receipt confirmation; and The data transfer method according to any one of claims 16 to 18, wherein a packet for which an acknowledgment has not been received is retransmitted. パケット通信網を介して、一の装置から受信したデータを他の装置に転送する送受信装置であって、
前記一の装置から前記パケット通信網の回線キャパシティより速い速度で送出されたパケットを受信するパケット受信モジュールと、
前記他の装置に対して、前記受信したパケットを送出するパケット送出モジュールと、
前記他の装置から送出された、前記他の装置が前記送出したパケットのうち少なくとも一部を受領したことを示す受領確認を受信する受領確認受信モジュールと、
前記受領確認によって前記他の装置による受領が確認されたパケットよりも前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送する再送判定モジュールと、
を備える送受信装置。
A transmission / reception device that transfers data received from one device to another device via a packet communication network,
A packet receiving module for receiving a packet transmitted from the one device at a speed faster than a line capacity of the packet communication network ;
A packet transmission module for transmitting the received packet to the other device;
An acknowledgment receiving module that receives an acknowledgment sent from the other device and indicating that the other device has received at least a part of the transmitted packet;
A retransmission determination module that retransmits a packet that has been sent before a packet that has been confirmed to be received by the other device by the receipt confirmation and that has not received the receipt confirmation;
A transmission / reception device comprising:
前記送受信装置は、前記一の装置が、更に、In the transmitting / receiving device, the one device is
前記パケットを連続的に送出する速度が、前記受信側装置が受信したパケットに基づいて算出したビットレート情報より速い速度となるように、送出レートを調整する送出レート調整モジュール  A transmission rate adjustment module that adjusts the transmission rate so that the rate at which the packets are continuously transmitted is faster than the bit rate information calculated based on the packets received by the receiving side device.
を備える請求項20に記載の送受信側装置。The transmitting / receiving apparatus according to claim 20.
前記一の装置から受信したパケットの受領確認を送信する受領確認送信モジュールを更に備えることを特徴とする請求項20又は21に記載の送受信装置。 The transmission / reception apparatus according to claim 20 or 21 , further comprising an acknowledgment transmission module that transmits an acknowledgment of a packet received from the one apparatus. 前記再送判定モジュールは、前記受領確認によって前記他の装置による受領が確認されたパケットのうち最も直近に送出されたパケットの送出時刻よりも所定時間以上前に送出されたパケットであり、かつ、受領確認を受信していないパケットを再送することを特徴とする請求項20乃至22のいずれかに記載の送受信装置。 The retransmission determination module is a packet that has been sent a predetermined time or more before the sending time of the most recently sent packet among the packets that have been confirmed to be received by the other device by the receipt confirmation, and 23. The transmitting / receiving apparatus according to claim 20 , wherein a packet for which confirmation has not been received is retransmitted. 前記請求項20乃至23のいずれかに記載された送受信装置を複数備え、当該複数の送受信装置の間で、数珠つなぎにデータ伝送を行うことによって、前記複数の送受信装置間で略同時にデータ伝送を行うことを特徴とするデータ転送システム。   A plurality of the transmission / reception devices according to any one of claims 20 to 23 are provided, and data transmission is performed between the plurality of transmission / reception devices at approximately the same time by performing data transmission between the plurality of transmission / reception devices. A data transfer system characterized by performing. 請求項16乃至19のいずれかに記載のデータ転送方法をコンピュータに実行させるためのプログラム。   A program for causing a computer to execute the data transfer method according to claim 16. 請求項25に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   The computer-readable recording medium which recorded the program of Claim 25.
JP2010247727A 2010-11-04 2010-11-04 Data transmission method and multi-site data distribution method Active JP5539161B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010247727A JP5539161B2 (en) 2010-11-04 2010-11-04 Data transmission method and multi-site data distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010247727A JP5539161B2 (en) 2010-11-04 2010-11-04 Data transmission method and multi-site data distribution method

Publications (2)

Publication Number Publication Date
JP2012100165A JP2012100165A (en) 2012-05-24
JP5539161B2 true JP5539161B2 (en) 2014-07-02

Family

ID=46391570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010247727A Active JP5539161B2 (en) 2010-11-04 2010-11-04 Data transmission method and multi-site data distribution method

Country Status (1)

Country Link
JP (1) JP5539161B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104022961A (en) * 2014-05-29 2014-09-03 华为技术有限公司 Data transmission method, apparatus and system
CN104158804A (en) * 2014-08-07 2014-11-19 中国海洋大学 Multi-screen interaction method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6111892A (en) * 1998-07-29 2000-08-29 Motorola, Inc. Method and apparatus for conveying data packets in a communication system without using communication device timers to trigger data retransmission
JP3158357B2 (en) * 1998-09-03 2001-04-23 株式会社超高速ネットワーク・コンピュータ技術研究所 Retransmission control method
JP2005167352A (en) * 2003-11-28 2005-06-23 Ntt Docomo Inc Transmission apparatus and program
WO2011108480A1 (en) * 2010-03-03 2011-09-09 日本電気株式会社 Packet retransmission control system, packet retransmission control method, and program

Also Published As

Publication number Publication date
JP2012100165A (en) 2012-05-24

Similar Documents

Publication Publication Date Title
JP5544430B2 (en) Communication apparatus and communication system
JP4587053B2 (en) Communication apparatus, communication system, packet loss detection method, and packet loss detection program
US9467390B2 (en) Method and device for data transmission
US8014287B2 (en) Communications apparatus
EP2316182B1 (en) Method for transporting data over a data connection and network component
EP1157496B1 (en) System for managing multiple acknowledgments within a data network
EP2479941A1 (en) Communication apparatus and communication system for enhancing speed of communications between terminals
US7496038B2 (en) Method for faster detection and retransmission of lost TCP segments
US10075382B2 (en) Communication device, relay device, and communication method for a plurality of packets
CN102413503B (en) Method for adaptively determining packet delayed sending for Semi-TCP (transmission control protocol)
EP2978171B1 (en) Communication method, communication device, and communication program
CN107852371B (en) Data packet network
CN102148662A (en) Adjusting method and device for data transmitting speed
JP2007053588A (en) Packet retransmission method, packet retransmission system, packet retransmission program, and program recording medium
JP5832335B2 (en) Communication apparatus and communication system
CN107852372B (en) Data packet network
CN101227478B (en) Method for confronting link circuit out-of-order
JP7067544B2 (en) Communication systems, communication devices, methods and programs
JP5539161B2 (en) Data transmission method and multi-site data distribution method
JP5046197B2 (en) Communication apparatus, communication system, packet loss detection method, and packet loss detection program
JP2000022744A (en) Packet communication system, packet communication device and packet communication method
CN104580171A (en) TCP (transmission control protocol) transmission method, device and system
CN111669733A (en) Method for transmitting data packet at node in Bluetooth Mesh network
JP2008199431A (en) Communication device
US6957374B1 (en) Method of acknowledging receipt of data packets

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131209

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: 20140408

R150 Certificate of patent or registration of utility model

Ref document number: 5539161

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140430

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250