JP2006020130A - Data transmission system and method, data transmission device, data reception device, and its computer program - Google Patents
Data transmission system and method, data transmission device, data reception device, and its computer program Download PDFInfo
- Publication number
- JP2006020130A JP2006020130A JP2004196684A JP2004196684A JP2006020130A JP 2006020130 A JP2006020130 A JP 2006020130A JP 2004196684 A JP2004196684 A JP 2004196684A JP 2004196684 A JP2004196684 A JP 2004196684A JP 2006020130 A JP2006020130 A JP 2006020130A
- Authority
- JP
- Japan
- Prior art keywords
- data
- packet
- predetermined
- transmission
- sequence number
- 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.)
- Withdrawn
Links
Images
Abstract
Description
本発明は,データ伝送システムおよび方法,データ送信装置,データ受信装置,並びに,そのコンピュータプログラムに関する。 The present invention relates to a data transmission system and method, a data transmission device, a data reception device, and a computer program therefor.
無線ネットワークに関する標準的な規格の一例として米国電子技術者協会IEEE(The Institute of Electrical and Electronics Engineers)802.11,HiperLAN/2,IEEE302.15.3,Bluetoothなどが挙げられる。 As an example of a standard regarding a wireless network, the Institute of Electronic Engineers of the United States (IEEE) (The Institute of Electrical and Engineering Engineers) 802.11, HiperLAN / 2, IEEE 302.15.3, Bluetooth, and the like can be given.
上記IEEE802.11規格には,無線通信方式や使用する周波数帯域の違いなどにより,IEEE802.11a規格,IEEE802.11b規格などの各種無線通信プロトコルが存在する。 The IEEE802.11 standard includes various wireless communication protocols such as the IEEE802.11a standard and the IEEE802.11b standard depending on the wireless communication method and the frequency band to be used.
従来から知られているこのような無線通信プロトコルでは,データを送信する側でデータ列をパケットに分割し,かかるパケットを送信単位にしてデータの伝送を行っている。上記の通信が正常に行われているかどうかを認識するため,データの受信側ではパケットの受信に応じて受信完了信号(ACK)を送信側に送信し,送信側ではその応答を受けてパケットの送信が確実に行われたことを確認している。また,上記受信完了信号(ACK)が確認されない場合,パケットは正しく伝送されなかったものとみなされ同パケットを再送する処理が行われていた。 In such a known wireless communication protocol, a data sequence is divided into packets on the data transmission side, and data transmission is performed using such packets as transmission units. In order to recognize whether the above communication is normally performed, the data receiving side transmits a reception completion signal (ACK) to the transmitting side in response to the reception of the packet, and the transmitting side receives the response and receives the packet. Confirming that the transmission was performed reliably. Further, when the reception completion signal (ACK) is not confirmed, it is considered that the packet has not been correctly transmitted, and a process of retransmitting the packet has been performed.
しかし,上記の受信完了信号(ACK)の応答が無い場合,何回も同パケットの再送が行われ,その間,次のパケットを送信できずデータの伝送が進まない等の問題があった。 However, when there is no response to the reception completion signal (ACK), the same packet is retransmitted many times. During this time, the next packet cannot be transmitted and data transmission does not proceed.
この問題を解決するために,IEEE802.11e等の通信プロトコルでは,送信側において受信完了信号(ACK)を待つことなく,複数のパケットを送信し,後からまとめて受信完了信号(ACK)の応答があったかを判断するグループACKなどの方法がとられている。しかし,かかる技術も,ACKが返信されないパケットに関しては何回もの再送が行われ,通信状況によってデータの伝送速度が変化してしまう事情は変わっていない。 In order to solve this problem, in a communication protocol such as IEEE802.11e, a plurality of packets are transmitted without waiting for a reception completion signal (ACK) on the transmission side, and a response of a reception completion signal (ACK) is collectively collected later. A method such as group ACK is used to determine whether or not there is. However, this technique also does not change the situation in which the data transmission rate changes depending on the communication status because the retransmission is performed many times for the packet for which the ACK is not returned.
また,再送が必要なパケットを細かく分割し,繰り返し分割パケットを送信することによってエラー数の期待値を低減するデータ送信技術も知られている(例えば,特許文献1)。しかし,かかる送信技術も完璧なデータ通信を目的とするものであって,パケットが完全に伝達されるまでパケットの分割が繰り返されることに変わりはない。 There is also known a data transmission technique that reduces the expected number of errors by finely dividing a packet that needs to be retransmitted and repeatedly transmitting the divided packet (for example, Patent Document 1). However, this transmission technique is also intended for perfect data communication, and packet division is repeated until the packet is completely transmitted.
例えば,DVD(Digital Versatile Disk)等のメディアを取り上げてみると動画データの再生にはリアルタイム性が最優先に要求され,エラーが無い完全な動画を表示するより多少画像の乱れがあったとしても遅延のない動画が必要とされる。即ち,欠落したパケットを時間をかけて埋めるより,むしろ欠落したままでも良いから動画再生の流れに影響しないデータ通信を行うことが課題となる。 For example, when taking up media such as a DVD (Digital Versatile Disk), real-time performance is required for playback of video data with the highest priority, and even if there is some image disturbance than displaying a complete video with no errors. A video with no delay is required. That is, rather than filling in the lost packets over time, it is possible to leave them missing, so it is a problem to perform data communication that does not affect the flow of moving image playback.
本発明は,従来のデータ伝送システムが有する上記問題点に鑑みてなされたものであり,本発明の目的は,パケットの伝送エラーがあったとしてもデータ伝送効率を変化させることなく,データ再生のリアルタイム性を維持することが可能な,新規かつ改良されたデータ伝送システムおよび方法,データ送信装置,データ受信装置,並びに,そのコンピュータプログラムを提供することである。 The present invention has been made in view of the above problems of the conventional data transmission system, and the object of the present invention is to perform data reproduction without changing the data transmission efficiency even if there is a packet transmission error. To provide a new and improved data transmission system and method, a data transmission device, a data reception device, and a computer program thereof that can maintain real-time performance.
上記課題を解決するために,本発明の第1の観点によれば,データを複数のパケットに分割して各々固有のシーケンス番号を付与し,当該シーケンス番号に応じて上記パケットを送信するデータ送信装置と,上記データ送信装置から送信された上記パケットを受信して上記データ送信装置に受信完了信号を送信し,上記シーケンス番号順に並べられる所定数のパケット群を受信した後,上記パケット群をデータに復号して当該データの処理を開始するデータ受信装置と,からなるデータ伝送システムにおいて:上記データ送信装置は,受信完了信号を受信しないシーケンス番号のパケットを所定の第1時間間隔で再送信するパケット再送信手段と;所定の第2時間内に上記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し,再送信の中止を示す所定の処理を行う中止処理手段と;を備え,上記データ受信装置は,上記所定の処理に応じて,上記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と;を備えることを特徴とする,データ伝送システムが提供される。かかるデータ伝送システムは無線通信によるパケットの伝送を目的とするとしても良い。 In order to solve the above-described problem, according to a first aspect of the present invention, data transmission is performed by dividing data into a plurality of packets, assigning unique sequence numbers to the packets, and transmitting the packets according to the sequence numbers. Receiving the packet transmitted from the device and the data transmitting device, transmitting a reception completion signal to the data transmitting device, receiving a predetermined number of packet groups arranged in order of the sequence number, and then transmitting the packet group to the data In a data transmission system comprising: a data receiving device that decodes the data and starts processing the data: the data transmitting device retransmits a packet with a sequence number that does not receive a reception completion signal at a predetermined first time interval A packet retransmission unit; stopping retransmission of a packet with a sequence number that does not receive the reception completion signal within a predetermined second time period; And a cancellation processing means for performing a predetermined process indicating cancellation of retransmission, wherein the data receiving device performs predetermined data processing in a state where the predetermined number of packet groups are not aligned in accordance with the predetermined process. And a data processing system for performing the data transmission. Such a data transmission system may be intended for packet transmission by wireless communication.
上記データ送信装置は,データを複数のパケットに分割し,各々固有のシーケンス番号を付与するシーケンス付与手段と;上記シーケンス番号に応じて上記パケットの送信順を決定する送信決定手段と;パケットの上記送信順に従って,データ受信装置にパケットを送信するパケット送信手段と;上記パケットを最初に送信してからの経過時間を上記パケット毎にカウントするカウント手段と;上記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と;受信完了信号を受信しないシーケンス番号のパケットを,上記カウント手段を用いて所定の第1時間間隔で再送信するパケット再送信手段と;所定の第2時間内に上記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し,再送信の中止を示す所定の処理を行う中止処理手段と;を備えるとしても良く,上記データ受信装置は,データ送信装置から送信されたパケットを受信するパケット受信手段と;上記パケットの受信に応じて上記データ送信装置に受信完了信号を送信する受信応答手段と;シーケンス番号順に並べられる所定数のパケット群を受信した後,上記パケット群をデータに復号して当該データの処理を開始する処理開始手段と;上記データ送信装置における所定の処理に応じて,上記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と;を備えるとしても良い。 The data transmitting apparatus includes: a sequence adding unit that divides data into a plurality of packets and assigns unique sequence numbers; a transmission determining unit that determines a transmission order of the packets according to the sequence numbers; A packet transmitting means for transmitting packets to the data receiving apparatus in accordance with a transmission order; a counting means for counting the elapsed time since the packet was first transmitted for each packet; a reception completion signal received from the data receiving apparatus A count stop means for stopping the counting of packets corresponding to the above; a packet retransmission means for retransmitting a packet having a sequence number not receiving a reception completion signal at a predetermined first time interval using the count means; Stop retransmission of packets with sequence numbers that do not receive the above reception completion signal within the second time , A cancellation processing unit that performs a predetermined process indicating cancellation of retransmission, and the data reception device includes a packet reception unit that receives a packet transmitted from the data transmission device; In response, a reception response means for transmitting a reception completion signal to the data transmission device; a process of receiving a predetermined number of packet groups arranged in sequence number order, and then decoding the packet groups into data and starting processing of the data Start means; and data processing means for performing predetermined data processing in a state in which the predetermined number of packet groups are not arranged in accordance with predetermined processing in the data transmission device.
上記データ送信装置やデータ受信装置は,パーソナルコンピュータ,PDA(Personal Digital Assistant),携帯電話,テレビ会議システムやこれらの機器に内蔵または接続されて動作する通信機器を含む。 The data transmitting device and the data receiving device include a personal computer, a PDA (Personal Digital Assistant), a mobile phone, a video conference system, and a communication device that is built in or connected to these devices.
本発明は,上記データ送信装置において,ある程度再送信を繰り返したパケットのさらなる再送信を中止(断念)し,データ受信装置において,データを形成するパケット群が完全に揃っていない(欠落している)にも拘わらずデータ処理をすることを特徴としている。また,以下に示すように,データ送信装置においてパケットの再送信を中止したことをデータ受信装置が容易に判断することができ,両装置において有効なデータと無効なデータの同期を確実にとることが可能となる。即ち,データ送信装置で無効としたデータはデータ受信装置においても無効データとして扱われ,データ送信装置で有効としたデータはデータ受信装置においても誤った判断をすることなく有効データとして取り扱われる。また,かかる再送信の中止により,データ再送信のためのメモリ容量を削減できる。 The present invention stops (abortions) further retransmission of a packet that has been retransmitted to some extent in the data transmission device, and the data reception device does not have a complete packet group (missing). However, it is characterized by data processing. In addition, as shown below, the data receiving device can easily determine that the retransmission of the packet has been stopped at the data transmitting device, and synchronization between valid data and invalid data can be ensured in both devices. Is possible. That is, data invalidated by the data transmitting apparatus is treated as invalid data also by the data receiving apparatus, and data validated by the data transmitting apparatus is treated as valid data by the data receiving apparatus without making an erroneous determination. In addition, the memory capacity for data retransmission can be reduced by canceling such retransmission.
上記データ送信装置がパケットの再送信を中止(断念)するということは,パケットの確実な伝送より,データ受信装置側におけるデータ処理のリアルタイム性を優先したものであり,「パケットが完全に送信されるのを待たなくて良い。」ということをデータ受信装置に意図的に伝達していると考えることができる。 The fact that the above data transmission device cancels (abortions) retransmission of a packet gives priority to the real-time property of data processing on the data receiving device side over reliable transmission of the packet. It can be considered that it is intentionally transmitted to the data receiving device.
このような伝達を受けたデータ受信装置では,かかるパケット群が揃っていないデータを処理し,データ送信装置と同期を保ちながら,通常の通信を再開する。このとき上記データ処理手段では,かかるパケット群が揃っていないデータを放棄するとしても良いし,残ったパケット(欠落した状態のパケット)を利用して何らかの処理を行うとしても良い。 The data receiving apparatus that has received such transmission processes data that does not have such a packet group, and resumes normal communication while maintaining synchronization with the data transmitting apparatus. At this time, the data processing means may abandon data that does not have such a packet group, or may perform some processing using the remaining packets (packets in a missing state).
また,上記シーケンス番号は,データ列を含むデータを複数のパケットに分割した後,一応送信する順を定めるために付与される番号である。ここで一応と述べたのは,パケットの送信には,上記パケット再送信手段により,過去に送信したパケットの再送信が割り込んでくるので,上記パケット送信手段によるシーケンス番号順にパケットが送信されるとは限らないからである。かかるシーケンス番号は,一定の値(例えば,1)をインクリメントして付与される。データ受信装置では,かかるシーケンス番号順に所定数のパケット群として並べ,データに復号する。従って,たとえデータ受信装置で受信するパケットの順番が変わったとしても,シーケンス番号を昇順または降順に並び替えることによって,確実にデータへと復元することができる。また,データ受信装置で同じパケットを重複して受信した場合でも,シーケンス番号により正しいデータへの復号が実行される。 The sequence number is a number assigned to determine the order in which data including a data string is divided into a plurality of packets and then transmitted. Here, it is said that the packet re-transmission means interrupts the packet re-transmission in the past, and the packet transmission means transmits the packets in the order of the sequence number by the packet transmission means. Because there is no limit. Such a sequence number is given by incrementing a certain value (for example, 1). In the data receiving apparatus, a predetermined number of packet groups are arranged in the order of the sequence numbers and decoded into data. Therefore, even if the order of packets received by the data receiving device changes, it can be reliably restored to data by rearranging the sequence numbers in ascending or descending order. Even when the same packet is received twice by the data receiving device, decoding to correct data is executed by the sequence number.
また,上記第1時間はパケットの再送信間隔を示し,上記第2時間はパケットの再送信を中止(断念)するまでの有効期限を示す。両時間は,データの利用用途に応じて任意に設定することができる。通常,第2時間は第1時間より長く,第1時間の整数倍,例えば,2,3,4倍とすることができる。ここでは,上記第1時間や第2時間とカウント手段によるカウント値(カウント時間)とを比較している。時間は割り込み毎にインクリメントされるカウント値で表すことができ,カウント値は割り込み間隔との積によって時間で表現することができるので上記の比較が可能となる。 The first time indicates a packet retransmission interval, and the second time indicates an expiration date until the packet retransmission is stopped (abandoned). Both times can be arbitrarily set according to the usage of data. Usually, the second time is longer than the first time and can be an integer multiple of the first time, for example 2, 3, 4 times. Here, the first time or the second time is compared with the count value (count time) by the counting means. The time can be expressed by a count value incremented for each interrupt, and the count value can be expressed by time by a product with the interrupt interval, so that the above comparison is possible.
上記所定の処理は,上記第2時間後に送信するパケットのシーケンス番号を所定値変位させる処理であり,上記データ処理手段は,上記所定値の変移を検知して上記所定のデータ処理を行うとしても良い。 The predetermined processing is processing for shifting a sequence number of a packet transmitted after the second time by a predetermined value, and the data processing means may detect the change of the predetermined value and perform the predetermined data processing. good.
かかる構成により,データ送信装置は,別途の手段を利用することなく,シーケンス番号を変更するといった簡単かつ単純な処理によってデータ受信装置にパケット再送信の中止を伝達することが可能となる。 With this configuration, the data transmission device can transmit the packet retransmission cancellation to the data reception device by a simple and simple process such as changing the sequence number without using a separate means.
ここで,上記所定値は,上記シーケンス番号の最大値の略半分の値としても良く,上記データ処理手段は,上記所定値が上記シーケンス番号の最大値の略4分の1の値以上変移していることを検知して上記所定のデータ処理を行うとしても良い。 Here, the predetermined value may be a value approximately half of the maximum value of the sequence number, and the data processing means may change the predetermined value by more than about a quarter of the maximum value of the sequence number. It is also possible to perform the predetermined data processing by detecting that the
所定値をシーケンス番号の最大値の略半分としたのは,巡回するシーケンス番号において,かかる数値が最大の距離(偏差)を示すからである。また,上記所定値の変移を判断するため,さらに所定値の略半分を閾値としている。いずれの数値も実施の一例であって,計算がし易いあらゆる数値等を選択することができる。 The reason why the predetermined value is approximately half of the maximum value of the sequence number is that the numerical value indicates the maximum distance (deviation) in the sequence number to be circulated. Further, in order to determine the transition of the predetermined value, approximately half of the predetermined value is set as a threshold value. Any numerical value is an example of implementation, and any numerical value that can be easily calculated can be selected.
上記所定の処理は,上記第2時間後に送信するパケットのシーケンス番号を所定値にリセットする処理であり,上記データ処理手段は,上記所定値へのリセットを検知して上記所定のデータ処理を行うとしても良い。 The predetermined processing is processing for resetting a sequence number of a packet to be transmitted after the second time to a predetermined value, and the data processing means detects the reset to the predetermined value and performs the predetermined data processing. It is also good.
かかる構成においても,データ送信装置は,別途の手段を利用することなく,シーケンス番号をある値にリセットするといった簡単かつ単純な処理によってデータ受信装置にパケット再送信の中止を伝達することが可能となる。 Even in such a configuration, the data transmission device can transmit the cancellation of packet retransmission to the data reception device by a simple and simple process such as resetting the sequence number to a certain value without using a separate means. Become.
ここで,上記所定値は,0(ゼロ)としても良く,上記データ処理手段は,上記シーケンス番号が0(ゼロ)であることを検知して上記所定のデータ処理を行うとしても良い。所謂NULLで表される所定値0は,カウント値をハードウェア的にリセットすることで得られ,利用し易い。
Here, the predetermined value may be 0 (zero), and the data processing means may perform the predetermined data processing by detecting that the sequence number is 0 (zero). The
上記所定の処理は,上記第2時間後に送信する次のパケットに再送信の中止を示すフラグを立てるとしても良く,上記データ処理手段は,受信したパケットに上記フラグが立っていた場合,上記所定のデータ処理を行うとしても良い。 The predetermined processing may set a flag indicating that retransmission is to be stopped in the next packet to be transmitted after the second time, and the data processing means may perform the predetermined processing when the flag is set in the received packet. The data processing may be performed.
かかる構成により,データ送信装置は,別途の手段を利用することなく,引き続きパケットの送信を行うという簡単かつ単純な処理のみをもってデータ受信装置にパケット再送信の中止を伝達することが可能となる。 With such a configuration, the data transmission apparatus can transmit the cancellation of packet retransmission to the data reception apparatus with only a simple and simple process of continuously transmitting a packet without using a separate means.
上記所定の処理は,上記第2時間後に再送信の中止を示し,フレームが相違する別のパケットを送信する処理であっても良く,上記データ処理手段は,上記別のパケットを受信して上記所定のデータ処理を行うとしても良い。 The predetermined process may be a process of indicating that the retransmission is stopped after the second time and transmitting another packet having a different frame, and the data processing means receives the other packet and Predetermined data processing may be performed.
かかる構成により,送信すべきパケットとは別パケットでパケット再送信の中止をデータ受信装置に伝達することができる。 With such a configuration, it is possible to transmit a packet retransmission stop to the data receiving apparatus in a packet different from the packet to be transmitted.
ここで,上記中止処理手段は,パケットの伝送レートを落として上記別のパケットを送信するとしても良い。かかる構成により,データ送信装置は,パケット再送信の中止を確実にデータ受信装置に伝送することができる。 Here, the cancellation processing means may transmit the other packet at a reduced packet transmission rate. With this configuration, the data transmission device can reliably transmit the cancellation of packet retransmission to the data reception device.
上記所定の処理は,上記第2時間後に,再送信の中止を示すビーコンを打つことであるとしても良く,上記データ処理手段は,上記ビーコンを受信して上記所定のデータ処理を行うとしても良い。 The predetermined processing may be a beacon indicating that retransmission is stopped after the second time, and the data processing means may receive the beacon and perform the predetermined data processing. .
上記ビーコンは,互いに優劣がない通信機器同士のネットワークにおいて,データ送信装置やデータ受信装置からその装置がどういった装置であり,どの装置と通信を希望しているか,また,どういった状況下にあるかを他の装置に知らしめるために一定期間毎もしくは常時発信する情報伝達フレームを含む。 The above-mentioned beacon is a network of communication devices that are not superior to each other, what kind of device the data transmission device or data reception device is, what device is desired to communicate with, and under what circumstances In order to let other devices know whether there is any information, the information transmission frame is transmitted at regular intervals or constantly.
また,上記ビーコンは,データ送信装置のデータの送信処理の有無に拘わらず発信されている。従って,かかる既存の発信手段を利用して,別途新たな手段を設けることなくパケット再送信の中止をデータ受信装置に伝達することができる。 The beacon is transmitted regardless of whether or not the data transmission apparatus performs data transmission processing. Therefore, using this existing transmission means, it is possible to notify the data reception device of the suspension of packet retransmission without providing a new means.
上記所定の処理は,上記パケットの送信を一定期間停止する処理であっても良く,上記データ処理手段は,上記一定期間パケットが受信されないことを検知して上記所定のデータ処理を行うとしても良い。 The predetermined process may be a process for stopping transmission of the packet for a certain period, and the data processing means may perform the predetermined data process upon detecting that the packet is not received for the certain period. .
上記中止処理手段が一定期間送信を中止するのは,データ受信装置に再送信の中止を意図的に示すためであり,送信エラーによるタイムアウトの構成とは相違している。これはパケットの再送信を中止する決定権がデータ送信装置側にあることを示す。 The reason why the cancellation processing unit cancels the transmission for a certain period is to intentionally indicate to the data receiving device that the retransmission is stopped, which is different from the configuration of a timeout due to a transmission error. This indicates that the data transmission apparatus side has the decision right to cancel the retransmission of the packet.
かかる構成により,データ送信装置は,特別な情報を送信することなく,データ受信装置にパケットの再送信の中止を伝達することができる。この場合,上記一定期間は,予めデータ受信装置に定められるとしても良いが,初期化時にデータ送信装置から指定されるとしても良い。いずれの場合も,データ送信装置は,上記一定期間が経過した後,パケットの送信を再開する。 With this configuration, the data transmitting apparatus can transmit the cancellation of packet retransmission to the data receiving apparatus without transmitting special information. In this case, the predetermined period may be determined in advance in the data receiving device, but may be specified from the data transmitting device at the time of initialization. In either case, the data transmission device resumes packet transmission after the predetermined period has elapsed.
また,上記のデータ伝送システムを構成するデータ送信装置やデータ受信装置,コンピュータを上記データ送信装置やデータ受信装置として機能させるコンピュータプログラム,さらには,上記データ送信装置と上記データ受信装置とを利用してデータを伝送するデータ伝送方法も提供される。 In addition, a data transmission device and a data reception device constituting the data transmission system, a computer program for causing a computer to function as the data transmission device and the data reception device, and the data transmission device and the data reception device are used. A data transmission method for transmitting data is also provided.
上記課題を解決するために,本発明の第2の観点によれば,データを複数のパケットに分割し,各々固有のシーケンス番号を付与するシーケンス付与手段と;上記シーケンス番号に応じて上記パケットの送信順を決定する送信決定手段と;パケットの上記送信順に従って,データ受信装置にパケットを送信するパケット送信手段と;上記パケットを最初に送信してからの経過時間を上記パケット毎にカウントするカウント手段と;上記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と;受信完了信号を受信しないシーケンス番号のパケットを,上記カウント手段を用いて所定の第1時間間隔で再送信するパケット再送信手段と;上記パケットの送信時に利用されるバッファが所定容量を超えたとき,次以降のパケットの送信を中止し,送信の中止を示す所定の処理を行う中止処理手段と;を備えることを特徴とする,データ送信装置が提供される。 In order to solve the above-mentioned problem, according to a second aspect of the present invention, there is provided sequence providing means for dividing data into a plurality of packets and assigning unique sequence numbers to each of the packets; A transmission determining means for determining a transmission order; a packet transmitting means for transmitting a packet to the data receiving device in accordance with the transmission order of the packets; a count for counting an elapsed time from the first transmission of the packet for each of the packets Means; a count stop means for stopping counting of packets corresponding to the reception completion signal received from the data receiving device; and a packet having a sequence number not receiving the reception completion signal for a predetermined first time using the counting means. A packet retransmission means for retransmitting at an interval; a buffer used at the time of transmitting the packet has a predetermined capacity; When there was example, it stops transmission of the next subsequent packet, the abort processing means performs predetermined processing that indicates the termination of transmission; characterized in that it comprises a data transmission device is provided.
第1の観点で説明した第2時間との比較によってパケットの再送信が中止される頻度より,再送信によるバッファのオーバーフローが生じる頻度が大きい場合,バッファのオーバーフローによりデータが無効になる確率が高くなる。かかる構成により,バッファのオーバーフローをも防止することができる。 When the frequency of occurrence of buffer overflow due to retransmission is higher than the frequency at which retransmission of packets is canceled by comparison with the second time described in the first aspect, there is a high probability that data will be invalidated due to buffer overflow. Become. With this configuration, buffer overflow can also be prevented.
上記中止処理手段は,上記バッファが所定容量を超えたとき,さらに上記バッファの入力データをクリアするとしても良い。上記オーバーフローによりパケットが廃棄される構成で,バッファ内に依然として残っているパケットはデータ受信装置において無効データとして取り扱われる。従って,バッファに蓄積されたパケットは無効なパケットとしてクリアしても良い。また,かかるクリアを行わずにデータの処理を継続すると,すぐさま同様のオーバーフローが起こりうる。 The cancellation processing means may further clear the input data of the buffer when the buffer exceeds a predetermined capacity. In the configuration in which the packet is discarded due to the overflow, the packet still remaining in the buffer is handled as invalid data in the data receiving apparatus. Therefore, the packet stored in the buffer may be cleared as an invalid packet. Also, if data processing is continued without such clearing, the same overflow can occur immediately.
第1および第2の観点におけるデータの伝送は,互いに優劣がない通信機器同士のネットワークであるCWネットで利用されるとしても良い。かかるCWネットワークでは,特定の制御局が無く,各通信機器がそれぞれ自身を管理して優劣の関係を有していない。従って,各通信機器は自律分散的に動作し,アドホック・ネットワークを形成する。 The data transmission in the first and second aspects may be used in a CW network that is a network of communication devices that are not superior to each other. In such a CW network, there is no specific control station, and each communication device manages itself and has no superiority or inferiority relationship. Accordingly, each communication device operates in an autonomous and distributed manner to form an ad hoc network.
上記データは,リアルタイムな画像の動作を表現する動画データであるとしても良い。本発明は,例えば,DVD(Digital Versatile Disk)等のようなリアルタイム性が最優先に要求される動画データの再生に主に利用でき,欠落したパケットの確実な復帰より,動画再生の流れが変化しない,即ち,多少の画像の乱れを許容するデータ通信に適している。 The data may be moving image data representing real-time image operation. The present invention can be used mainly for reproducing moving image data that requires the highest priority on real-time performance, such as a DVD (Digital Versatile Disk), and the flow of moving image reproduction changes due to reliable restoration of missing packets. No, that is, it is suitable for data communication that allows some image disturbance.
また,コンピュータを上記データ送信装置として機能させるコンピュータプログラム,さらには,上記データ送信装置と上記データ受信装置とを利用してデータを伝送するデータ伝送方法も提供される。 Also provided are a computer program for causing a computer to function as the data transmission device, and a data transmission method for transmitting data using the data transmission device and the data reception device.
また,上記データ送信装置と上記データ受信装置は1つの装置として構成することもできる。 Further, the data transmitting device and the data receiving device can be configured as one device.
以上説明したように本発明によれば,パケットの伝送エラーがあったとしてもデータ伝送効率を変化させることなく,データ再生のリアルタイム性を維持することが可能となる。従って,連続して高速にパケットを伝送する場合においても,データの重複や順序の入れ替え等が生じることなく,伝送エラーから強制的に復帰することが可能な高速無線ネットワークを実現することができる As described above, according to the present invention, even if there is a packet transmission error, it is possible to maintain real-time data reproduction without changing the data transmission efficiency. Therefore, it is possible to realize a high-speed wireless network that can forcibly recover from a transmission error without duplicating data or changing the order even when packets are continuously transmitted at high speed.
以下に添付図面を参照しながら,本発明の好適な実施の形態について詳細に説明する。なお,本明細書及び図面において,実質的に同一の機能構成を有する構成要素については,同一の符号を付することにより重複説明を省略する。 Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the present specification and drawings, components having substantially the same functional configuration are denoted by the same reference numerals, and redundant description is omitted.
(第1の実施形態:データ伝送システム)
本実施形態では,様々な通信経路を利用してデータの交換が可能な複数の通信機器によるデータの伝送システムを提供する。また,かかる通信経路の中でも,特に無線の伝送路による通信を想定し,複数の通信機器間で相互にデータの交換を行っている。各通信機器はそれぞれ無線通信のための通信局を有す。各通信局は単一のチャネルまたは複数の周波数チャネル(マルチチャネル)からなる伝送媒体を用いて無線通信を行う。
(First embodiment: data transmission system)
In this embodiment, a data transmission system using a plurality of communication devices capable of exchanging data using various communication paths is provided. Among such communication paths, data is exchanged between a plurality of communication devices, particularly assuming communication via a wireless transmission path. Each communication device has a communication station for wireless communication. Each communication station performs radio communication using a transmission medium composed of a single channel or a plurality of frequency channels (multi-channel).
図1は,データ伝送システムにおける通信機器の配置例を示した概略図である。このデータ伝送システムでは通信局としての特定の制御局が無く,各通信機器が自律分散的に動作し,アドホック・ネットワークが形成される。ここでは,4つの通信機器102,104,106,108が示され,各通信機器102,104,106,108は,それぞれ自己の通信可能範囲120内にある他の通信機器102,104,106,108と無線による通信を行う。例えば,通信機器102は通信機器104,106と,通信機器104は通信機器102,106と,通信機器106は通信機器102,104,108と,通信機器108は通信機器106と無線による通信伝送路を形成する。ここで各通信機器102,104,106,108は,通信可能範囲120内にある通信機器を通信可能な通信機器として,また,自己の通信データが干渉する可能性がある通信機器として認識する。
FIG. 1 is a schematic diagram illustrating an arrangement example of communication devices in a data transmission system. In this data transmission system, there is no specific control station as a communication station, and each communication device operates in an autonomous distributed manner to form an ad hoc network. Here, four
また,本実施形態は上記の自律分散型の無線通信に限られず,制御局を有する無線通信や有線による通信にも適応可能である。 Further, the present embodiment is not limited to the above-described autonomous distributed wireless communication, but can also be applied to wireless communication having a control station and wired communication.
図2は,本実施形態の他の通信経路を説明するためのブロック図である。かかる通信機器102と通信機器104は,上記で示した自律分散型の無線通信を形成している。通信機器102,104はさらに制御局150と無線による通信を行うこともできる。この場合,通信機器102,104は制御局150からの制御信号に従ってデータの送受信を行う。また,通信網152等の有線の伝送路を介してユーザ端末154に接続し,通信を行うことも可能である。このように本実施形態は無線有線を問わずあらゆる通信網に適応可能である。
FIG. 2 is a block diagram for explaining another communication path of the present embodiment. The
図3A,Bは,図1や図2で表したデータ伝送システムの個々の装置構成を示すブロック図である。図3Aによると上記データ伝送システムは,データを送信するデータ送信装置210と,データ送信装置210から送信されたデータを受信するデータ受信装置220とからなる。また,図3Bに示すように,データ送信装置210として機能するデータ送信部230と,データ受信装置220として機能するデータ受信部232とを1つの通信機器234に備えることもできる。かかる通信機器234では,一方のデータ送信部230から他方のデータ受信部232に対してデータを送信することができ(図中矢印で示す。),相互のデータ交換が可能になる。
3A and 3B are block diagrams showing individual device configurations of the data transmission system shown in FIG. 1 and FIG. Referring to FIG. 3A, the data transmission system includes a
ここでは,理解を容易にするため図3Aに示すデータ送信装置210とデータ受信装置220をとりあげ,詳細に説明する。
Here, in order to facilitate understanding, the
本実施形態は,データ送信装置210において,ある程度再送信を繰り返したパケットのさらなる再送信を中止(断念)し,データ受信装置220において,このようなパケットの欠落に拘わらず上記再送信の中止(断念)を受けてデータ処理することを特徴としている。また,以下に示すように,パケットが再送信されないことをデータ受信装置220が容易に判断することができ,両装置で有効なデータと無効なデータの同期を確実にとることが可能となる。即ち,データ送信装置210で無効としたデータはデータ受信装置220においても無効データとして扱われ,データ送信装置210で有効としたデータはデータ受信装置220においても誤った判断がなされることなく有効データとして取り扱われる。
In the present embodiment, the
上記データ送信装置210がパケットの再送信を中止するということは,パケットの確実な伝送より,データ受信装置側におけるデータ処理のリアルタイム性を優先したものであり,「パケットが完全に送信されるのを待たなくて良い。」ということをデータ受信装置220に伝達していると考えることができる。
The fact that the
このような伝達を受けたデータ受信装置220では,かかるパケットが欠落したデータを処理し,データ送信装置と同期を保ちながら,通常の通信を再開する。このとき上記データ受信装置220では,かかるパケットが欠落したデータを放棄するとしても良いし,残ったパケット(欠落した状態のパケット)を利用して何らかの処理を行うとしても良い。
The
(データ送信装置210)
図4は,データ送信装置210の構成を示すブロック図である。上記データ送信装置210は,データ送信制御部250と,シーケンス付与手段252と,送信決定手段254と,パケット送信手段256と,アンテナ部258と,カウント手段260と,カウント停止手段262と,パケット再送信手段264と,中止処理手段266とを含んで構成される。
(Data transmission device 210)
FIG. 4 is a block diagram showing the configuration of the
上記データ送信制御部250は,中央処理装置(CPU)を含む制御装置によりデータ送信装置210における一連の処理を一元的に管理および制御する。
The data
上記シーケンス付与手段252は,データ送信装置210における送信すべきデータを所定のフレームで表される複数のパケットに分割し,この複数のパケットを送信する順に並べ,各パケットに,例えば連続する数字で表される固有のシーケンス番号を付与する。
The sequence assigning means 252 divides the data to be transmitted in the
上記送信決定手段254は,シーケンス付与手段252で付与されたシーケンス番号に応じてパケットの一応の送信順を決定する。ここで一応と述べたのは,後述するパケット再送信手段264により,過去に送信したパケットが再度送信パケットとして割り込むので,パケット送信手段256によるシーケンス番号順にパケットが送信されるとは限らないからである。かかるシーケンス番号は,一定の値(例えば,1)をインクリメントして付与される。このようなシーケンス番号により,たとえデータ受信装置で受信するパケットの順番が前後したとしても確実に分割前のデータへと復元することができる。
The
上記パケット送信手段256は,送信決定手段254で決定された送信順に従って,データ受信装置220にパケットを送信する。また,パケット送信手段256もしくは上記送信決定手段254は,送信決定手段254やパケット再送信手段264からのパケットを一時的に格納するデータバッファを有すとしても良く,かかるバッファに入力されたパケットを,バッファに入力された順にアンテナ部258を介して送出する。
The
上記アンテナ部258は,データ受信装置220に対して電磁波による信号を所定の周波数チャネル上で無線送信し,データ受信装置220から送られる受信完了信号(以下,ACKという。)を受信する。また,後述する別パケットやビーコン等も送信することができる。
The
上記カウント手段260は,パケット送信手段256がパケットを最初に送信した時(同パケットの再送信時は含まない),このパケットの送信をトリガにして経過時間をカウントする。かかるカウントは,各パケット毎に設けられたカウンタを利用して行われるとしても良いが,1つのカウンタを利用して全てのパケットの送信経過時間をカウントするとしても良い。
When the
図5は,1つのカウンタを利用して全ての送信経過時間をカウントする一例を示した説明図である。カウント手段260のカウンタ280は,例えば1msecの割り込みに応じて0〜9999の数字をカウントしている。従って,カウント値は0,1,2,3,…といった具合に進み,0〜9999を繰り返す。かかるカウント値が「102」になった時,上記パケット送信手段256によってパケットAが送信された場合,パケットAの送信時のカウント値282は「102」となる。同様にカウント値が「203」の時パケットBが,カウント値が「405」の時パケットCが送信された場合,パケットBの送信時のカウント値284は「203」にパケットCの送信時のカウント値286は「405」になる。
FIG. 5 is an explanatory diagram showing an example of counting all transmission elapsed times using one counter. The
ある時点の経過時間を算出する場合,その時点のカウント値と送信時のカウント値との差をとる。例えば,ある時点のカウント値290が「1010」であった場合,この時点での経過時間は,かかるカウント値290と送信時のカウント値との差をとることによって計算される。従って,パケットAの経過時間292は「908」,パケットBの経過時間294は「807」,パケットCの経過時間296は「605」となる。このときの経過時間はカウント値として表されているが,実際の経過時間を計算する場合,割り込み間隔である1msecとの積をとって計算する。このようにして,1つのカウンタにより全てのパケットの送信からの経過時間をカウントすることができる。
When calculating the elapsed time at a certain point, the difference between the count value at that point and the count value at the time of transmission is taken. For example, if the
上記カウント停止手段262は,データ受信装置220からのACKの返信があった場合,そのACKに対応するパケットのカウント手段260によるカウントを停止する。例えば,上記図5に示した例では,経過時間のインクリメントを停止するか,カウント対象パケットからそのパケットを削除することによってカウントを停止することができる。
When the ACK is returned from the
上記パケット再送信手段264は,データ受信装置220からのACKを受信していないシーケンス番号のパケットを,上記カウント手段260を用いて所定の第1時間間隔で再送信する。即ち,カウント手段260のカウントが継続中であり,かつカウント値が所定の第2時間を超えていない場合,所定の第1時間毎に,送信決定手段254に送信順を変更させパケットを再送信させる。上記第2時間はカウント値で表すと例えば「3000」(3秒)であり,上記第1時間はカウント値で表すと例えば「1000」(1秒)である。上記の条件で経過時間を示すカウント値が「1000」を越えた場合,対象となるパケットは正しく伝送されなかったものとみなされ,通常シーケンス番号に従って並べられているパケットに,かかる再送信するパケットを割り込ませる。このパケットの再送信からさらに第1時間が経過してもデータ受信装置220からACKの返信が無い場合,パケット再送信手段264は再びパケットの再送信を行う。
The packet retransmitting means 264 retransmits a packet having a sequence number that has not received an ACK from the
図6は,送信決定手段254によるパケットの送信順の決定を説明するための説明図である。通常,送信決定手段254では,シーケンス付与手段252内でパケット310毎に付与されたシーケンス番号312に従って送信順314が設定される。しかし,過去に送信されたシーケンス番号「1」のパケット316に関して,第1時間を経過してもデータ受信装置220からのACK返信がない場合,かかるシーケンス番号「1」のパケット316が送信すべきパケットの最後尾318に追加される。このシーケンス番号「1」のパケット316の位置に本来並べられるべきシーケンス番号「12」のパケットは1回分追加が待たされ,送信決定手段254によって決定された送信順は,「9」,「10」,「11」,「1」,「12」,…となる。
FIG. 6 is an explanatory diagram for explaining the determination of the transmission order of packets by the transmission determination means 254. Usually, the
ここでシーケンス番号「1」のパケット316は,送信決定手段254で送信すべきパケットの最後尾318に追加されるとしたが,最前列であるシーケンス番号「9」のパケットの前に強制的に追加されるとしても良い。
Here, it is assumed that the
上記中止処理手段266は,所定の第2時間内にACKを受信しないシーケンス番号のパケットの再送信を中止し,再送信の中止を示す所定の処理を行う。即ち,カウントが継続中であり,かつカウント値が所定の第2時間を超えた場合,上記パケットの再送信を中止し,所定の処理によりデータ受信装置220に再送信の中止を伝達する。かかる中止処理手段266については,後で詳細に説明する。
The cancel processing means 266 cancels retransmission of a packet having a sequence number that does not receive an ACK within a predetermined second time, and performs a predetermined process indicating that the retransmission is stopped. That is, when the count is continuing and the count value exceeds a predetermined second time, the retransmission of the packet is stopped, and the stop of the retransmission is transmitted to the
また,中止処理手段266は,カウント値が所定の第2時間を超えたかどうかの判断によりパケットの再送信を中止する代わりに,パケット再送信手段264によってパケットの送信に利用されるバッファが所定容量を超えたときパケットの再送信を中止する構成をとることもできる。この再送信の中止においては,上述した所定の処理が行われるとしても良い。
In addition, the
上述した第2時間との比較によってパケットの再送信が中止される頻度より,再送信によるバッファのオーバーフローが生じる頻度が大きい場合,バッファのオーバーフローによりデータが無効になる確率が高くなる。このときパケットの再送信を中止することによって伝送効率の高い通信を再開できる。オーバーフローによる中止処理手段266は単独に構成されるとしても良いし,第2時間とカウント値を比較してパケットの再送信を中止する構成と併用されるとしても良い。
When the frequency of occurrence of buffer overflow due to retransmission is greater than the frequency at which packet retransmission is stopped by comparison with the second time described above, the probability that data will be invalidated due to buffer overflow increases. At this time, communication with high transmission efficiency can be resumed by stopping the retransmission of the packet. The
また,中止処理手段266は,バッファが所定容量を超えたとき,さらにバッファの入力データをクリアするとしても良い。上記のオーバーフローによりパケットが廃棄される構成で,バッファ内に依然として残っているパケットはデータ受信装置において無効データとして取り扱われる。従って,バッファに蓄積されたパケットは無効なパケットとしてクリアするとしても良い。
Further, the
(データ受信装置220)
図7は,データ送信装置220の構成を示すブロック図である。上記データ受信装置220は,データ受信制御部350と,アンテナ部352と,パケット受信手段354と,受信応答手段356と,処理開始手段358と,データ処理手段360とを含んで構成される。
(Data receiving device 220)
FIG. 7 is a block diagram illustrating a configuration of the
上記データ受信制御部350は,中央処理装置(CPU)を含む制御装置によりデータ受信装置220における一連の処理を一元的に管理および制御する。
The data
上記アンテナ部352は,データ送信装置210からの電磁波による信号を受信し,データ送信装置210に対してACK信号を送信する。また,後述する相違するフレームから成る別パケットやビーコン等も受信することができる。
The
上記パケット受信手段354は,データ送信装置210から送信されたパケットをアンテナ部352を介して受信する。
The
上記受信応答手段356は,パケット受信手段354が受信したパケットに応じてデータ送信装置210にACKの応答を行う。ここで,受信したパケットのエラーチェック,例えば,CRC(Cyclic Redundancy Check)チェック等が行われ,そのチェックによりエラーが検出されなかったパケットのみACKを返信するとしても良い。
The
上記処理開始手段358は,シーケンス番号順に並べられる所定数のパケット群を受信した後,上記パケット群をデータ受信装置220で処理可能なデータに復号し,データ受信装置220は,当該データの処理を開始する。
After receiving a predetermined number of packet groups arranged in the order of sequence numbers, the process starting means 358 decodes the packet groups into data that can be processed by the
上記データ処理手段360は,データ送信装置210における上記パケットの再送信を中止する所定の処理に応じて,現在処理しようとしているパケットの完全な復元をあきらめ,パケット群が完全に揃っていない状態(パケットが欠落した状態)のデータをそのまま処理し,データ送信装置と同期を保ちながら,通常の通信を再開する。このときデータ処理手段360では,かかるパケットが欠落したデータを放棄するとしても良いし,残ったパケットを利用して強制的に処理する等何らかの処理を行うとしても良い。かかるデータ処理手段360については,中止処理手段266と共に後で詳細に説明する。
The
(データ伝送システム)
上記データ伝送システムについて理解を深めるため,データ伝送システムにおけるデータ送信の基本的な流れを説明する。
(Data transmission system)
In order to deepen the understanding of the data transmission system, the basic flow of data transmission in the data transmission system will be described.
図8は,データ伝送システムにおけるデータの流れを説明した図である。ここでは,データ送信装置210からデータ受信装置220へデータ410が伝送される。
FIG. 8 is a diagram for explaining the flow of data in the data transmission system. Here,
まず,データ送信装置210では,シーケンス付与手段252によって送信すべきデータ410が,同じ構成のフレームから形成される複数のパケット412に分割され,かかるパケット412にシーケンス番号414として「1」,「2」,「3」,…が付与される。本実施形態における通信は上記のパケット単位で行われる。その後,送信決定手段254によりパケットの送信順が決定されるが,ここでは,簡単のためシーケンス番号順に送信されるとする。
First, in the
図8において,シーケンス番号「1」,「2」のパケット412は,既にデータ受信装置に送信され,データ受信装置220では,受信した順に拘わらず,パケットをシーケンス番号順に並べ直す。ここで,受信した順に拘わらずとしたのは,送信されたパケットが何らかの原因でデータ受信装置220に届かない場合があり,例えデータ送信装置210がシーケンス番号順にパケットを送信したとしても必ずしもその順番にデータ受信装置220で受信されるとは限らないからである。
In FIG. 8,
このようにして受信されたパケットは,シーケンス番号順416に並べられ,パケット群として所定数のパケットが揃った時点で元のデータ410に復元される。
The packets received in this way are arranged in the
図9は,データ伝送システムにおいて伝送されるパケットのフレームを示した説明図である。上記フレームは,PHYヘッダ450,宛先アドレス452,送信元アドレス454,フレーム長456,シーケンス番号458,分割データ460,CRC462を含んで構成される。
FIG. 9 is an explanatory diagram showing a frame of a packet transmitted in the data transmission system. The frame includes a
上記PHYヘッダ450には本フレームのヘッダ情報が記載され,上記宛先アドレス452には本パケットの送信先のアドレス,即ちデータ受信装置220のアドレスが記載される。上記送信元アドレス454には当該データ送信装置210のアドレスが記載される。上記フレーム長456には当該パケットのフレームの長さが示される。上記シーケンス番号458はシーケンス付与手段252によって各パケットに付与さえたシーケンス番号が記載される。上記分割データ460には元となるデータをパケット単位に分割した後の所定長のデータが記載される。上記CRC462にはデータの伝送エラーをチェックするための巡回符号(Cyclic code)が記載される。
The
次に本実施形態によるパケットの伝送を,ACKが返信されるまで何回も同パケットを再送信する従来のIEEE802.11a規格による伝送と比較する。 Next, packet transmission according to the present embodiment is compared with transmission according to the conventional IEEE802.11a standard in which the packet is retransmitted many times until ACK is returned.
図10は,IEEE802.11a規格による送信側通信機器470と受信側通信機器472との通信を示したフローチャートである。かかるIEEE802.11a規格による無線通信プロトコルでは,送信側通信機器でデータをパケットに分割し,かかるパケットを受信側通信機器に送信する。図10においては,分割したパケットの内,1番目に送信したシーケンス番号「1」のパケット480に関するACK応答が得られず,複数回,かかるパケット480を再送している。この場合,次に送信すべきシーケンス番号「2」のパケット486は,シーケンス番号「1」のパケットの送信が完了するまで待たされ,データ受信装置からのACK488があって初めて送信処理が行われる。このような伝送システムでは,ACK信号の応答が無い場合何回も同パケットの再送が行われ,その間,次のパケットを送信することができず,データの伝送が遅延する等の問題があった。
FIG. 10 is a flowchart showing communication between the transmission-side communication device 470 and the reception-side communication device 472 according to the IEEE 802.11a standard. In the wireless communication protocol based on the IEEE802.11a standard, data is divided into packets by the transmission side communication device, and the packet is transmitted to the reception side communication device. In FIG. 10, an ACK response regarding the
続いて,本実施形態によるデータ伝送システムの流れを説明する。ここでは,本実施形態の特徴として挙げられる中止処理手段266,データ処理手段360を中心に説明する。
Next, the flow of the data transmission system according to this embodiment will be described. Here, the description will focus on the
図11は,本実施形態におけるデータ送信装置210とデータ受信装置220との通信を示したフローチャートである。ここでは,分割したパケットをACKを待つことなく,順次送信する。例えば,送信するデータを分割してシーケンス番号を「1」から付与したとすると,シーケンス番号「1」のパケット510を送信した後,かかるパケットに関するACKを待たずして,次のシーケンス番号「2」,「3」,「4」のパケット512が送信される。
FIG. 11 is a flowchart showing communication between the
この連続するパケットの送信に対して,データ受信装置220では,受信を完了したパケットに関するACKを返信する。このACK信号は,パケット毎に送信されるとしても良いが,複数のパケットに対してまとめて送信(グループACK514)されるとしても良い。
In response to this continuous packet transmission, the
シーケンス番号が「4」のパケット512を送信し終えたとき,シーケンス番号「1」のパケット510のカウンタが所定の第1時間516経過したとすると,パケット再送信手段264によってパケット510と同一のパケット520が再送信される。送信済みの「2」,「3」,「4」のシーケンス番号を有する他のパケット512に関してはデータ受信装置220からACKが返信されているので,次に送信されるパケットは通常の送信順によるシーケンス番号「5」のパケット522となる。また,パケット520に対しても同様にACKが返信されない場合,上記パケット520の送信時からさらに第1時間516経過後にパケット510と同一のパケット524が送信される。
When the transmission of the
このようにしてシーケンス番号「1」のパケット510の再送信が繰り返され,一定の第2時間530が経過した場合,中止処理手段266によってかかるパケット510の再送信をあきらめる合図がなされる。ここでは,次に送信すべきパケットのシーケンス番号を所定値である「128」ほど変移する。従って,次に送信すべきパケット532のシーケンス番号「11」は,「128」との和をとって「139」に書き換えられ,新たなシーケンス番号が付与された状態でデータ受信装置220に送信される。同様にして,パケット536のシーケンス番号「12」は「140」に,パケット540のシーケンス番号「13」は「141」に書き換えられてデータ受信装置220に送信される。
In this manner, the retransmission of the packet 510 with the sequence number “1” is repeated, and when the fixed
上記シーケンス付与手段252によるシーケンス番号の付与は「0」〜「255」の番号を巡回しており,上記所定値「128」はシーケンス番号の巡回数(または最大値)である「256」を等分したものである。 Sequence number assignment by the sequence assigning means 252 circulates numbers “0” to “255”, and the predetermined value “128” is “256”, which is the number of times the sequence number is circulated (or the maximum value). Divided.
データ受信装置220のデータ処理手段360では所定値の変移を検知して処理を進める。データ処理手段360では,かかる所定値の変移を判断するため,さらに所定値「128」の半分である「64」を閾値としている。従って,データ処理手段360は,少し前に受信したパケット544のシーケンス番号「10」と次に受信したパケット532のシーケンス番号「139」との差が「64」以上であることを判断し,受信してはいるがデータとして復元されていないパケット群,例えば,シーケンス番号が「2」,「3」,「4」,「5」,「6」,「7」,「8」,「9」,「10」からなるパケット群を無効データとして廃棄する。
The
このとき,上記の通信データが動画データ等の多少画像の乱れがあったとしても許されるデータであった場合,上述のようにパケット群を廃棄せず,パケットが欠落したままで強制的に元のデータに復元するとすることもできる。もちろんこの場合,かかるデータが表示されるときに,完全な画像が表示されることを期待することはできない。 At this time, if the above communication data is acceptable even if there is some disturbance in the image such as moving image data, the packet group is not discarded as described above, and the original packet is forcibly left missing. It can also be restored to the data. Of course, in this case, it is not possible to expect a complete image to be displayed when such data is displayed.
続いて,中止処理手段266が上記と相違する処理でパケットの再送信を中止する場合を説明する。
Next, a case where the cancel
図12は,本実施形態におけるデータ送信装置210とデータ受信装置220との通信を示したフローチャートである。ここでは,上述した通信と同様に,分割したパケットをACKを待つことなく順次送信する。図11で示した実施形態における構成要素として既に述べた通信手順については図12においても実質的に機能が同一なので重複説明を省略し,図11と図12とで相違するシーケンス番号のリセットについて詳細に述べる。
FIG. 12 is a flowchart showing communication between the
図11同様に,シーケンス番号「1」のパケット510に対するACKが返信されず,一定の第2時間530が経過した場合,中止処理手段266によってかかるパケット510の再送信をあきらめる合図がなされる。ここでは,次に送信すべきパケットのシーケンス番号を所定値である「0」にリセットしている。従って,次に送信すべきパケット532のシーケンス番号「11」は「0」となり,新たなシーケンス番号が付与された状態でデータ受信装置220に送信される。同様にして,パケット536のシーケンス番号「12」は「1」に,パケット540のシーケンス番号「13」は「2」に書き換えられデータ受信装置220に送信される。
Similarly to FIG. 11, when the ACK for the packet 510 with the sequence number “1” is not returned and the fixed
上記所定値「0」は,所謂NULLで表され,カウント値をハードウェア的にリセットすることで簡単にセットできる。 The predetermined value “0” is represented by so-called NULL, and can be easily set by resetting the count value in hardware.
パケットの送信後,データ受信装置220のデータ処理手段360では所定値「0」へのリセットを検知して処理を進める。従って,データ受信装置220のデータ処理手段360は,受信したパケット532のシーケンス番号が「0」であり,かつ,その前に受信したパケット544のシーケンス番号「10」がシーケンス番号の最大値「255」では無いことを判断し,受信してはいるがデータとして復元されていないパケット群,例えば,シーケンス番号が「2」,「3」,「4」,「5」,「6」,「7」,「8」,「9」,「10」からなるパケット群を無効データとして廃棄する。ここでも,上記の通信データが動画データ等の多少画像の乱れがあったとしても許されるデータであった場合,上述のようにパケット群を廃棄せず,パケットが欠落したままで強制的に元のデータに復元するとすることもできる。
After the packet is transmitted, the
また,中止処理手段266は,フラグを立てる処理によりパケット再送信の中止を表現することができる。カウントが継続中であり,かつカウント値が所定の第2時間を超えた場合,中止手段266は,次にデータ受信装置220に送信されるパケットに設けられた再送信の中止を示すフラグを立てる。また,データ受信装置220のデータ処理手段360は,受信したパケットに再送信の中止を示すフラグが立っているか判断して処理を進める。
Also, the
図13は,フラグ570を追加した場合のパケットのフレームを示した説明図である。上記フラグ570はフレーム長456とシーケンス番号458との間に配され,少なくともパケット再送信の中止に関する1ビットの情報を有している。また,フラグ570の配置は,上記の場合に限られず,フレーム中のどこに配置しても良い。
FIG. 13 is an explanatory diagram showing a packet frame when a
また,中止処理手段266は,データを分割した本パケットとは別のパケットによりパケット再送信の中止を表現することができる。カウントが継続中であり,かつカウント値が所定の第2時間を超えた場合,上記パケットの再送信の中止をデータとして含む上記別のパケットを送信する。これに対してデータ処理手段360は,受信したパケットが上記別のパケットであることを判断して次の処理を進める。この場合,別パケットも受信できない状態を回避するため伝送レートを落として別パケットを送信することもできる。
Also, the
図14は,このような別パケットのフレームの一例を示した説明図である。かかる別パケットのフレーム内では,当該フレームが,前述したデータフレームではなく制御用のフレームであることを示すフレーム種別580のフィールドを持ち,制御内容を示す制御データ582のフィールドにシーケンス番号の不整合が発生したことを示すシーケンス番号エラーを示す。データ処理手段360は,上記別パケットを受信すると,それがパケット再送信を中止する合図であることを認識し,パケットが欠落した状態でデータの処理を進める。
FIG. 14 is an explanatory view showing an example of a frame of such another packet. Within the frame of such another packet, the frame has a field of the
また,中止処理手段266は,ビーコンにパケット再送信の中止を示す信号を乗せて表現することもできる。このビーコンは,データ送信装置210のデータの送信処理の有無に拘わらず,特にCWネットにおいては,全てのデータ送信装置210から発信されている。従って,かかる既存の発信手段を利用して,別途新たな手段を設けることなくパケット再送信の中止をデータ受信装置220に伝達することができる。
In addition, the
上記ビーコンは,互いに優劣がない通信機器同士のネットワークにおいて,データ送信装置やデータ受信装置からその装置がどういった装置であり,どの装置と通信を希望しているか,また,どういった状況下にあるかを他の装置に知らしめるために一定期間毎もしくは常時発信する情報伝達フレームを含んでいる。 The above-mentioned beacon is a network of communication devices that are not superior to each other, what kind of device the data transmission device or data reception device is, what device is desired to communicate with, and under what circumstances In order to let other devices know whether or not there is an information transmission frame, the information transmission frame is transmitted at regular intervals or constantly.
図15は,このようなビーコンのフレームの一例を示した説明図である。かかるビーコンのフレーム内では,当該フレームが,前述したデータフレームではなくビーコンであることを示すビーコン種別590を示すフィールドを有し,同一のネットワーク内の無線局を制御する制御フィールド592を有す。かかる制御フィールド592は,さらに制御種別,第1対象局,第2対象局のフィールドを有し,例えば,シーケンス番号エラー,第1対象局のMACアドレス,第2対象局のMACアドレスが記されている。このようなビーコンにより,データストリームの送信局と受信局に対してシーケンス番号を初期化することを伝達し,ビーコンを受信した無線局のデータ処理手段360は,自局のデータ通信にシーケンス番号エラーが発生していることを把握して,パケットが欠落した状態でデータの処理を進める。このようにして各局の同期が確立される。
FIG. 15 is an explanatory diagram showing an example of such a beacon frame. In such a beacon frame, the frame has a field indicating a
また,中止処理手段266は,パケットの送信時間を変化させることによってパケット再送信の中止を表現することもできる。カウントが継続中であり,かつカウント値が所定の第2時間を超えた場合,パケット送信手段256によるパケットの送信を一時停止し,一定期間後,例えば1秒後に送信再開する。データ処理手段360は,一定期間パケットが受信されないことを検知して処理を進める。
In addition, the
(第2の実施形態:データ伝送方法)
次に,上述したデータ送信装置210とデータ受信装置220とを利用してデータを伝送するデータ伝送方法を説明する。
(Second Embodiment: Data Transmission Method)
Next, a data transmission method for transmitting data using the
図16は,データ伝送方法の概念的な流れを説明したフローチャート図である。上記伝送方法では,先ず,データ送信装置210が,送信対象としてのデータを同フレームからなる複数のパケットに分割し,昇順または降順で表されるシーケンス番号をこの複数のパケットに順次付与する(S700)。そして,このシーケンス番号に応じて実際に送信するパケットの送信順を決定する(S702)。このとき,後述するパケット再送信工程(S722)によるパケットの再送信が要求されていなかったら,送信順はシーケンス番号と同じ順番とすることができる。続いて,データ送信装置210は,送信決定工程(S702)によるパケットの送信順に従って,データ受信装置220に対し,無線もしくは有線の伝送経路を経由してパケットを送信し(S704),当該パケットを送信した直後から経過時間のカウントを開始する(S706)。かかるカウントは,パケット毎に管理される。
FIG. 16 is a flowchart illustrating a conceptual flow of the data transmission method. In the above transmission method, first, the
次に,データ受信装置220は,データ送信装置210から送信されたパケットを受信し(S710),このパケットがエラーを伴わない正常なパケットであることを,CRCチェック等を用いて確認し,データ送信装置210に受信完了信号であるACKを送信する(S712)。そして,シーケンス番号順に並べられる所定数のパケット群を形成するパケットが全て受信されると,このパケット群をデータに復号して当該データの処理を開始する(S714)。
Next, the
続いて,データ送信装置210は,データ受信装置220からACKを受信した場合,そのACKに関するパケットのカウントのみを中止する(S720)。かかるACKが受信されないまま,即ち,特定のパケットに関するカウントが継続中でさらに所定の第1時間を経過した場合,送信決定工程(S702)で決定された送信順を変更し,ACKの返信が無いパケットを再送信させる(S722)。また,ACKが受信されないままさらにカウントが継続され,所定の第2時間をも経過すると,データ送信装置210は,パケットの再送信を中止(断念)し,所定の処理によりデータ受信装置220に再送信の中止を伝達する(S724)。
Subsequently, when receiving an ACK from the
データ受信装置220は,データ送信装置210における所定の処理に応じて,パケットが完全に揃っていない状態(パケットが欠落した状態)でデータの処理もしくは次の処理を進める(S730)。
In response to the predetermined processing in the
ここで記載される所定の処理は,第1の実施形態におけるデータ伝送システムで説明した所定の処理と実質的に機能が同一なので重複説明を省略する。 The predetermined processing described here has substantially the same function as the predetermined processing described in the data transmission system according to the first embodiment, and thus a duplicate description is omitted.
このようにデータ伝送方法は,大きく,シーケンス付与工程(S700),送信決定工程(S702),パケット送信工程(S704),カウント工程(S706),パケット受信工程(S710),受信応答工程(S712),処理開始工程(S714),カウント停止工程(S720),パケット再送信工程(S722),中止処理工程(S724),データ処理工程(S730)を含んで構成される。以下に,かかる工程を詳細に説明する。 Thus, the data transmission method is largely divided into a sequence adding step (S700), a transmission determining step (S702), a packet transmitting step (S704), a counting step (S706), a packet receiving step (S710), and a reception response step (S712). , A process start step (S714), a count stop step (S720), a packet retransmission step (S722), a stop processing step (S724), and a data processing step (S730). Below, this process is demonstrated in detail.
上記データ伝送方法は,所定のサンプリングタイム毎に割り込みを発生させ,その割り込み毎に以下の処理を行うことで実現される。ここでは,データ送信装置210における処理と,データ受信装置220における処理とに分けて説明する。
The data transmission method is realized by generating an interrupt at every predetermined sampling time and performing the following processing for each interrupt. Here, the processing in the
図17は,シーケンス付与工程(S700)の流れを示したフローチャートである。図17〜図21は,データ送信装置210における処理を説明している。上記シーケンス付与工程(S700)では,割り込みを受けて(S750),送信すべくデータを入力する(S752)。この入力されたデータを同フレームに形成される複数のパケットに分割し(S754),かかる分割されたパケットを1つずつ入力する(S756)。このとき再送信の断念,即ち,パケットに対するACKが所定の第2時間を過ぎても返信されないことによる再送信の中止が示されると(S758),シーケンス番号を新たに設定する(S760)。この新たなシーケンス番号は,元のシーケンス番号にシーケンス番号の最大値の略半分の値を追加した値であっても良いし,所定値,例えば,ゼロ(0)であっても良い。このようにシーケンス番号が決定すると,上記分割されたパケットに,かかる新たなシーケンス番号が付与される(S762)。
FIG. 17 is a flowchart showing the flow of the sequence assigning step (S700). 17 to 21 describe processing in the
シーケンス番号が付与されると,同シーケンス番号を他のパケットに振らないため,かつ,パケット送信工程(S704)によるパケットの送信順を規定するためにデータ送信装置210で保持しているシーケンス番号を更新,即ち,所定値分だけインクリメントする(S764)。そして,分割されたパケットがまだ残っているかどうか判断し(S766),残っていれば,パケット入力工程(S756)から繰り返し,残っていなければ,一旦,シーケンス付与工程(S700)を終了する。
When the sequence number is given, the sequence number held in the
図18は,送信決定工程(S702)の流れを示したフローチャートである。上記送信決定工程(S702)では,データ送信装置210内に設けられ,パケットを一時的に保持するバッファ(FIFO等)が空いているかどうか,即ち,バッファの容量に余裕があって,入力が可能な状態であるかどうかが確認される(S770)。かかるバッファが空いていることが確認されると,後述するパケット再送信工程(S722)による再送信されるパケットがあるかどうか確認される(S772)。この確認工程(S772)で再送信パケットがあることが分かると,かかるパケットがバッファにロードされる(S774)。また,再送信パケットがない場合,上記シーケンス付与工程(S700)で付与されたシーケンス番号に従って,新たに送信すべきパケットがバッファにロードされる(S776)。
FIG. 18 is a flowchart showing the flow of the transmission determination step (S702). In the transmission determination step (S702), whether or not a buffer (such as a FIFO) that is provided in the
図19は,パケット送信工程(S704)およびカウント工程(S706)の流れを示したフローチャートである。上記パケット送信工程(S704)では,送信デバイスの送信準備ができているかどうか確認し(S780),送信できる状態であれば,バッファに入力された送信順に従って,データ受信装置220に対してパケットの送信を行う(S782)。このパケットの送信と同時に,上記カウント工程(S706)の一環として,かかるパケットに関するカウントが開始される(S784)。このカウントは,上述した割り込み単位でインクリメントされる。
FIG. 19 is a flowchart showing the flow of the packet transmission step (S704) and the counting step (S706). In the packet transmission step (S704), it is confirmed whether or not the transmission device is ready for transmission (S780). If the transmission device is ready for transmission, the packet is transmitted to the
図20は,カウント停止工程(S720)の流れを示したフローチャートである。上記カウント停止工程(S720)は,上記パケット送信工程(S704)で送信されたパケットに対するデータ受信装置220のACKを確認している(S800)。ここで,ACKが受信されるとそのACKに関するカウント工程(S706)のカウントが中止され,そのパケットの送信は完了する(S802)。
FIG. 20 is a flowchart showing the flow of the count stop step (S720). In the count stop step (S720), the ACK of the
図21は,パケット再送信工程(S722)および中止処理工程(S724)の流れを示したフローチャートである。上記パケット再送信工程(S722)では,カウント工程(S706)によるカウント値が第2時間を越しているかどうか比較され(S810),カウント値が第2時間に満たない場合,続いて第1時間と比較される(S812)。ここでカウント値が上記第1時間を越している場合,かかるパケットの再送信が指令され,送信決定工程(S702)で決定された送信順が変更される(S814)。このパケットの再送信(S814)は,第1時間経過毎に行われる。また,カウント値と第2時間との比較(S810)においてカウント値が第2時間を超過すると,パケットの再送信を中止(断念)し,所定の処理によりデータ受信装置220に再送信の中止を伝達する(S816)。こうして割り込み処理が終了する(S818)。
FIG. 21 is a flowchart showing the flow of the packet retransmission step (S722) and the cancellation processing step (S724). In the packet retransmission step (S722), whether the count value in the counting step (S706) exceeds the second time is compared (S810). If the count value is less than the second time, They are compared (S812). If the count value exceeds the first time, the packet is retransmitted, and the transmission order determined in the transmission determination step (S702) is changed (S814). This packet retransmission (S814) is performed every time the first time elapses. When the count value exceeds the second time in the comparison between the count value and the second time (S810), the packet retransmission is stopped (abandoned), and the
図22は,パケット受信工程(S710),受信応答工程(S712)および処理開始工程(S714)の流れを示したフローチャートである。図22,図23は,データ受信装置220における処理を説明している。上記パケット受信工程(S710)では,割り込みを受けて(S830)繰り返される処理の中で,データ送信装置210からのパケットの受信があったかどうか確認する(S832)。ここでパケットの受信が確認されると,かかるパケットは,そのパケット長やパリティ,CRC等の演算によりそのパケットが正常なパケットであるかどうか確認される(S834)。ここでパケットが正常であると判断された場合,かかる受信パケットを保存し,データ送信装置210に対し上記受信応答工程(S712)としてACKが返信される(S836)。続いて,受信したパケットによりシーケンス番号順に並べられる所定数のパケット群が揃っていか確認され(S838),パケット群が揃っていれば上記処理開始工程(S714)として,このパケット群をデータに復号し,当該データの処理を開始する(S840)。
FIG. 22 is a flowchart showing the flow of the packet reception process (S710), the reception response process (S712), and the process start process (S714). 22 and 23 illustrate processing in the
図23は,データ処理工程(S730)の流れを示したフローチャートである。上述したパケット受信工程(S710)では,データ送信装置210から送信される複数のパケットを受信し,規定のパケットが揃うと所定の処理単位を形成するデータに復元される。しかし,データ送信装置210の所定の処理により再送信の中止が行われると,上記データ処理工程(S730)を遂行する。先ず,データ送信装置210において再送信の中止があったかどうかを検知し(S850),再送信中止が検知されると,受信完了し,データに復元されていないパケットの欠落が確定する。データ受信装置220は,パケットが欠落した状態のままでデータを処理,または,その欠落データを無視してデータ処理を進める(S852)。こうして割り込み処理が終了する(S854)。
FIG. 23 is a flowchart showing the flow of the data processing step (S730). In the packet receiving step (S710) described above, a plurality of packets transmitted from the
このようなデータ伝送方法により,パケットの伝送エラーがあったとしてもデータ伝送効率を変化させることなく,データ再生のリアルタイム性を維持することが可能となる。 By such a data transmission method, even if there is a packet transmission error, it is possible to maintain real-time data reproduction without changing the data transmission efficiency.
以上,添付図面を参照しながら本発明の好適な実施形態について説明したが,本発明は係る例に限定されないことは言うまでもない。当業者であれば,特許請求の範囲に記載された範疇内において,各種の変更例または修正例に想到し得ることは明らかであり,それらについても当然に本発明の技術的範囲に属するものと了解される。 As mentioned above, although preferred embodiment of this invention was described referring an accompanying drawing, it cannot be overemphasized that this invention is not limited to the example which concerns. It will be apparent to those skilled in the art that various changes and modifications can be made within the scope of the claims, and these are of course within the technical scope of the present invention. Understood.
例えば,上記の実施形態において,数点の例を挙げてパケットの再送信中止の伝達を説明したが,データ送信装置が意図的にパケットの送信を中止し,それをデータ受信装置に確実に伝達できるものであれば,本実施形態の例に限らず,データフレームの長さを変化させて伝達するなど様々な実施手段が考えられる。 For example, in the above embodiment, the transmission of the packet retransmission stop was described by giving several examples. However, the data transmission apparatus intentionally stops the packet transmission and reliably transmits it to the data reception apparatus. As long as it is possible, various implementation means such as changing the length of the data frame are possible without being limited to the example of the present embodiment.
また,上記実施の形態においては,データ送信装置からデータ受信装置に対して,所定の処理による再送信の中止を伝達しているが,かかる場合に限らず,データ送信装置が意図的にデータ受信装置のパケットまたはデータを初期化する場合等にも本実施形態の所定の処理を利用することができる。 Further, in the above embodiment, the data transmission device notifies the data reception device of the suspension of retransmission by a predetermined process. However, this is not the case, and the data transmission device intentionally receives data. The predetermined processing of this embodiment can also be used when initializing a packet or data of an apparatus.
本発明は,データ伝送システムおよび方法,データ送信装置,データ受信装置,並びに,そのコンピュータプログラムに適用可能である。 The present invention is applicable to a data transmission system and method, a data transmission device, a data reception device, and a computer program thereof.
210 データ送信装置
220 データ受信装置
252 シーケンス付与手段
254 送信決定手段
256 パケット送信手段
260 カウント手段
262 カウント停止手段
264 パケット再送信手段
266 中止処理手段
354 パケット受信手段
356 受信応答手段
358 処理開始手段
360 データ処理手段
S722 パケット再送信工程
S724 中止処理工程
S730 データ処理工程
210
Claims (33)
前記データ送信装置は,
受信完了信号を受信しないシーケンス番号のパケットを所定の第1時間間隔で再送信するパケット再送信手段と;
所定の第2時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し,再送信の中止を示す所定の処理を行う中止処理手段と;
を備え,
前記データ受信装置は,
前記所定の処理に応じて,前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と;
を備えることを特徴とする,データ伝送システム。 Data is divided into a plurality of packets, each is assigned a unique sequence number, the data transmission device transmits the packet according to the sequence number, and the packet transmitted from the data transmission device receives the data A data receiving device that transmits a reception completion signal to the transmitting device, receives a predetermined number of packet groups arranged in the sequence number, and then decodes the packet groups into data and starts processing the data; In the transmission system:
The data transmission device includes:
A packet retransmission means for retransmitting a packet having a sequence number that does not receive a reception completion signal at a predetermined first time interval;
Stop processing means for canceling retransmission of a packet having a sequence number that does not receive the reception completion signal within a predetermined second time period, and performing a predetermined process indicating the cancellation of retransmission;
With
The data receiving device is:
Data processing means for performing predetermined data processing in a state where the predetermined number of packet groups are not aligned in accordance with the predetermined processing;
A data transmission system comprising:
前記データ処理手段は,前記所定値の変移を検知して前記所定のデータ処理を行うことを特徴とする,請求項1に記載のデータ伝送システム。 The predetermined process is a process of shifting a sequence number of a packet to be transmitted after the second time by a predetermined value,
The data transmission system according to claim 1, wherein the data processing means detects the change of the predetermined value and performs the predetermined data processing.
前記データ処理手段は,前記所定値へのリセットを検知して前記所定のデータ処理を行うことを特徴とする,請求項1に記載のデータ伝送システム。 The predetermined process is a process of resetting a sequence number of a packet to be transmitted after the second time to a predetermined value,
The data transmission system according to claim 1, wherein the data processing means detects the reset to the predetermined value and performs the predetermined data processing.
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と;
パケットの前記送信順に従って,データ受信装置にパケットを送信するパケット送信手段と;
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と;
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と;
受信完了信号を受信しないシーケンス番号のパケットを,前記カウント手段を用いて所定の第1時間間隔で再送信するパケット再送信手段と;
所定の第2時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し,再送信の中止を示す所定の処理を行う中止処理手段と;
を備えることを特徴とする,データ送信装置。 Sequence assigning means for dividing data into a plurality of packets and assigning unique sequence numbers;
Transmission determining means for determining a transmission order of the packets according to the sequence number;
Packet transmission means for transmitting packets to the data receiving device according to the transmission order of the packets;
Counting means for counting, for each packet, an elapsed time since the packet was first transmitted;
Count stopping means for stopping counting of packets corresponding to the reception completion signal received from the data receiving device;
Packet retransmission means for retransmitting a packet having a sequence number not receiving a reception completion signal at a predetermined first time interval using the counting means;
Stop processing means for canceling retransmission of a packet having a sequence number that does not receive the reception completion signal within a predetermined second time period, and performing a predetermined process indicating the cancellation of retransmission;
A data transmission device comprising:
データを複数のパケットに分割し,各々固有のシーケンス番号を付与するシーケンス付与手段と;
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と;
パケットの前記送信順に従って,データ受信装置にパケットを送信するパケット送信手段と;
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と;
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と;
受信完了信号を受信しないシーケンス番号のパケットを,前記カウント手段を用いて所定の第1時間間隔で再送信するパケット再送信手段と;
所定の第2時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し,再送信の中止を示す所定の処理を行う中止処理手段と;
して機能させることを特徴とする,コンピュータプログラム。 Computer
Sequence assigning means for dividing data into a plurality of packets and assigning unique sequence numbers;
Transmission determining means for determining a transmission order of the packets according to the sequence number;
Packet transmission means for transmitting packets to the data receiving device according to the transmission order of the packets;
Counting means for counting, for each packet, an elapsed time since the packet was first transmitted;
Count stopping means for stopping counting of packets corresponding to the reception completion signal received from the data receiving device;
Packet retransmission means for retransmitting a packet having a sequence number not receiving a reception completion signal at a predetermined first time interval using the counting means;
Stop processing means for canceling retransmission of a packet having a sequence number that does not receive the reception completion signal within a predetermined second time period, and performing a predetermined process indicating the cancellation of retransmission;
A computer program characterized by functioning as a function.
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と;
パケットの前記送信順に従って,データ受信装置にパケットを送信するパケット送信手段と;
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と;
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と;
受信完了信号を受信しないシーケンス番号のパケットを,前記カウント手段を用いて所定の第1時間間隔で再送信するパケット再送信手段と;
前記パケットの送信時に利用されるバッファが所定容量を超えたとき,次以降のパケットの送信を中止し,送信の中止を示す所定の処理を行う中止処理手段と;
を備えることを特徴とする,データ送信装置。 Sequence assigning means for dividing data into a plurality of packets and assigning unique sequence numbers;
Transmission determining means for determining a transmission order of the packets according to the sequence number;
Packet transmission means for transmitting packets to the data receiving device according to the transmission order of the packets;
Counting means for counting, for each packet, an elapsed time since the packet was first transmitted;
Count stopping means for stopping counting of packets corresponding to the reception completion signal received from the data receiving device;
Packet retransmission means for retransmitting a packet having a sequence number not receiving a reception completion signal at a predetermined first time interval using the counting means;
Cancellation processing means for canceling transmission of the next and subsequent packets when a buffer used at the time of transmission of the packet exceeds a predetermined capacity and performing predetermined processing indicating the cancellation of transmission;
A data transmission device comprising:
データを複数のパケットに分割し,各々固有のシーケンス番号を付与するシーケンス付与手段と;
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と;
パケットの前記送信順に従って,データ受信装置にパケットを送信するパケット送信手段と;
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と;
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と;
受信完了信号を受信しないシーケンス番号のパケットを,前記カウント手段を用いて所定の第1時間間隔で再送信するパケット再送信手段と;
前記パケットの送信時に利用されるバッファが所定容量を超えたとき,次以降のパケットの送信を中止し,送信の中止を示す所定の処理を行う中止処理手段と;
して機能させることを特徴とする,コンピュータプログラム。 Computer
Sequence assigning means for dividing data into a plurality of packets and assigning unique sequence numbers;
Transmission determining means for determining a transmission order of the packets according to the sequence number;
Packet transmission means for transmitting packets to the data receiving device according to the transmission order of the packets;
Counting means for counting, for each packet, an elapsed time since the packet was first transmitted;
Count stopping means for stopping counting of packets corresponding to the reception completion signal received from the data receiving device;
Packet retransmission means for retransmitting a packet having a sequence number not receiving a reception completion signal at a predetermined first time interval using the counting means;
Cancellation processing means for canceling transmission of the next and subsequent packets when a buffer used at the time of transmission of the packet exceeds a predetermined capacity and performing predetermined processing indicating the cancellation of transmission;
A computer program characterized by functioning as a function.
前記パケットの受信に応じて前記データ送信装置に受信完了信号を送信する受信応答手段と;
シーケンス番号順に並べられる所定数のパケット群を受信した後,前記パケット群をデータに復号して当該データの処理を開始する処理開始手段と;
前記データ送信装置における所定の処理に応じて,前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と;
とを備えることを特徴とする,データ受信装置。 A packet receiving means for receiving a packet transmitted from the data transmitting device;
Reception response means for transmitting a reception completion signal to the data transmission device in response to reception of the packet;
Processing start means for receiving a predetermined number of packet groups arranged in sequence number order and then decoding the packet groups into data to start processing the data;
Data processing means for performing predetermined data processing in a state where the predetermined number of packet groups are not aligned in accordance with predetermined processing in the data transmitting device;
And a data receiving device.
前記データ処理手段は,前記所定値の変移を検知して前記所定のデータ処理を行うことを特徴とする,請求項19に記載のデータ受信装置。 The predetermined process is a process for shifting the sequence number of the packet by a predetermined value,
The data receiving device according to claim 19, wherein the data processing means detects the change of the predetermined value and performs the predetermined data processing.
前記データ処理手段は,前記所定値へのリセットを検知して前記所定のデータ処理を行うことを特徴とする,請求項19に記載のデータ受信装置。 The predetermined process is a process of resetting the sequence number of the packet to a predetermined value,
The data receiving device according to claim 19, wherein the data processing means detects the reset to the predetermined value and performs the predetermined data processing.
前記データ処理手段は,受信したパケットに前記フラグが立っていた場合,前記所定のデータ処理を行うことを特徴とする,請求項19に記載のデータ受信装置。 The predetermined process is a process of setting a flag indicating that retransmission of a packet to be transmitted next is stopped,
The data receiving device according to claim 19, wherein the data processing means performs the predetermined data processing when the flag is set in the received packet.
前記データ処理手段は,前記別のパケットを受信して前記所定のデータ処理を行うことを特徴とする,請求項19に記載のデータ受信装置。 The predetermined process is a process of transmitting another packet having a different frame,
The data receiving device according to claim 19, wherein the data processing means receives the another packet and performs the predetermined data processing.
前記データ処理手段は,前記ビーコンを受信して前記所定のデータ処理を行うことを特徴とする,請求項19に記載のデータ受信装置。 The predetermined process is a process of hitting a beacon indicating suspension of retransmission,
The data receiving device according to claim 19, wherein the data processing means receives the beacon and performs the predetermined data processing.
前記データ処理手段は,前記一定期間パケットが受信されないことを検知して前記所定のデータ処理を行うことを特徴とする,請求項19に記載のデータ受信装置。 The predetermined processing is processing for stopping transmission of the packet for a certain period of time,
20. The data receiving apparatus according to claim 19, wherein the data processing means detects that no packet is received for a certain period of time and performs the predetermined data processing.
データ送信装置から送信されたパケットを受信するパケット受信手段と;
前記パケットの受信に応じて前記データ送信装置に受信完了信号を送信する受信応答手段と;
シーケンス番号順に並べられる所定数のパケット群を受信した後,前記パケット群をデータに復号して当該データの処理を開始する処理開始手段と;
前記データ送信装置における所定の処理に応じて,前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と;
として機能させることを特徴とする,コンピュータプログラム。 Computer
A packet receiving means for receiving a packet transmitted from the data transmitting device;
Reception response means for transmitting a reception completion signal to the data transmission device in response to reception of the packet;
Processing start means for receiving a predetermined number of packet groups arranged in sequence number order, then decoding the packet groups into data and starting processing of the data;
Data processing means for performing predetermined data processing in a state where the predetermined number of packet groups are not aligned in accordance with predetermined processing in the data transmitting device;
A computer program characterized by functioning as
前記データ送信装置が,
受信完了信号を受信しないシーケンス番号のパケットを所定の第1時間間隔で再送信するパケット再送信工程と;
所定の第2時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し,再送信の中止を示す所定の処理を行う中止処理工程と;
前記データ受信装置が,
前記所定の処理に応じて,前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理工程と;
を含むことを特徴とする,データ伝送システム。 Data is divided into a plurality of packets, each is assigned a unique sequence number, the data transmission device transmits the packet according to the sequence number, and the packet transmitted from the data transmission device receives the data A data reception device that transmits a reception completion signal to a transmission device, receives a predetermined number of packet groups arranged in the sequence number sequence, and then decodes the packet groups into data and starts processing the data. Data transmission method:
The data transmitting device is
A packet retransmission step of retransmitting a packet with a sequence number that does not receive a reception completion signal at a predetermined first time interval;
A cancellation processing step of canceling retransmission of a packet with a sequence number that does not receive the reception completion signal within a predetermined second time period and performing a predetermined process indicating the cancellation of retransmission;
The data receiving device is
A data processing step of performing predetermined data processing in a state where the predetermined number of packet groups are not aligned in accordance with the predetermined processing;
A data transmission system comprising:
前記データ処理工程は,前記所定値の変移を検知して前記所定のデータ処理を行うことを特徴とする,請求項30に記載のデータ伝送方法。 The predetermined process is a process of shifting a sequence number of a packet to be transmitted after the second time by a predetermined value,
The data transmission method according to claim 30, wherein the data processing step performs the predetermined data processing by detecting a change in the predetermined value.
前記データ処理工程は,前記所定値へのリセットを検知して前記所定のデータ処理を行うことを特徴とする,請求項30に記載のデータ伝送方法。 The predetermined process is a process of resetting a sequence number of a packet to be transmitted after the second time to a predetermined value,
The data transmission method according to claim 30, wherein the data processing step detects the reset to the predetermined value and performs the predetermined data processing.
前記データ送信装置が,
受信完了信号を受信しないシーケンス番号のパケットを所定の第1時間間隔で再送信するパケット再送信工程と;
前記パケットの送信時に利用されるバッファが所定容量を超えたとき,次以降のパケットの送信を中止し,送信の中止を示す所定の処理を行う中止処理工程と;
前記データ受信装置が,
前記所定の処理に応じて,前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理工程と;
を含むことを特徴とする,データ伝送方法。 Data is divided into a plurality of packets, each is assigned a unique sequence number, the data transmission device transmits the packet according to the sequence number, and the packet transmitted from the data transmission device receives the data A data reception device that transmits a reception completion signal to a transmission device, receives a predetermined number of packet groups arranged in the sequence number sequence, and then decodes the packet groups into data and starts processing the data. Data transmission method:
The data transmitting device is
A packet retransmission step of retransmitting a packet with a sequence number that does not receive a reception completion signal at a predetermined first time interval;
A cancellation processing step of canceling transmission of the next and subsequent packets when a buffer used at the time of transmission of the packet exceeds a predetermined capacity, and performing predetermined processing indicating the cancellation of transmission;
The data receiving device is
A data processing step of performing predetermined data processing in a state where the predetermined number of packet groups are not aligned in accordance with the predetermined processing;
A data transmission method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004196684A JP2006020130A (en) | 2004-07-02 | 2004-07-02 | Data transmission system and method, data transmission device, data reception device, and its computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004196684A JP2006020130A (en) | 2004-07-02 | 2004-07-02 | Data transmission system and method, data transmission device, data reception device, and its computer program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006020130A true JP2006020130A (en) | 2006-01-19 |
Family
ID=35793940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004196684A Withdrawn JP2006020130A (en) | 2004-07-02 | 2004-07-02 | Data transmission system and method, data transmission device, data reception device, and its computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006020130A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008028739A (en) * | 2006-07-21 | 2008-02-07 | Toshiba Corp | Information processor |
JP2008079150A (en) * | 2006-09-22 | 2008-04-03 | Canon Inc | Communication equipment and data transfer method |
JP2011512757A (en) * | 2008-02-13 | 2011-04-21 | クゥアルコム・インコーポレイテッド | Variable abort timer |
WO2012133504A1 (en) * | 2011-03-29 | 2012-10-04 | Saito Shoji | Communication method, and shareholders meeting voting right counting system |
-
2004
- 2004-07-02 JP JP2004196684A patent/JP2006020130A/en not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008028739A (en) * | 2006-07-21 | 2008-02-07 | Toshiba Corp | Information processor |
US7725136B2 (en) | 2006-07-21 | 2010-05-25 | Kabushiki Kaisha Toshiba | Information processing apparatus |
JP2008079150A (en) * | 2006-09-22 | 2008-04-03 | Canon Inc | Communication equipment and data transfer method |
US8126012B2 (en) | 2006-09-22 | 2012-02-28 | Canon Kabushiki Kaisha | Communication apparatus and method of transferring data |
JP2011512757A (en) * | 2008-02-13 | 2011-04-21 | クゥアルコム・インコーポレイテッド | Variable abort timer |
WO2012133504A1 (en) * | 2011-03-29 | 2012-10-04 | Saito Shoji | Communication method, and shareholders meeting voting right counting system |
JP5961161B2 (en) * | 2011-03-29 | 2016-08-02 | 正治 齊藤 | Communication method and shareholder general meeting voting rights aggregation system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7945835B2 (en) | Method and apparatus for efficiently retransmitting data in wireless network environment | |
US9231738B2 (en) | Communication method for relay node and next node of the relay node for network coding | |
TWI470965B (en) | Radio resource control-service data units reception | |
US8081641B2 (en) | Methods and apparatus for network coding | |
JP4198741B2 (en) | Communication device, communication system, communication method, communication program, communication circuit | |
KR100772528B1 (en) | Method and apparatus for efficient packet retransmission in wired/wireless network | |
US20020041592A1 (en) | Method and system for transmitting data | |
US8085656B2 (en) | Apparatus and method for improving transport control protocol performance using path recovery notification over wireless network | |
US9819466B2 (en) | Method and apparatus for retransmitting packet for low-power wireless sensor communications | |
CN103580773A (en) | Method and device for transmitting data frame | |
JP2004537919A (en) | Forward error correction system and method for packet-based communication systems | |
EP1633099A1 (en) | Packet communication device | |
EP3790213B1 (en) | Mac-based hybrid automatic repeat request (harq) | |
JP2006020130A (en) | Data transmission system and method, data transmission device, data reception device, and its computer program | |
JP5736612B2 (en) | Quick MAP recovery method in case of error in MoCA | |
JP4444244B2 (en) | Communication device | |
JPH08251146A (en) | Data transmission control system | |
JP2008079330A (en) | Communications device, communication system, communication method, communication program, communication circuit, mobile phone, display device, printer, and recording apparatus | |
US20100302955A1 (en) | Packet retransmission optimization in wireless network | |
JP2006101061A (en) | Communication method | |
JP2005051738A (en) | Method of efficiently transmitting/receiving data using transport layer in mobile ad hoc network, and network device using the method | |
US11770462B2 (en) | Techniques for virtual time slotting of communications packets | |
Alonso Zárate et al. | Cooperative arq: A medium access control (mac) layer perspective | |
JP2005529518A (en) | Hybrid ARQ for wireless ad hoc networks and its usage | |
US8838720B2 (en) | Method for managing a distribution of bandwidth in a communications network, corresponding computer-readable storage medium and slave node |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070904 |