JP2009260719A - Data transmission terminal device and data transmission method - Google Patents

Data transmission terminal device and data transmission method Download PDF

Info

Publication number
JP2009260719A
JP2009260719A JP2008108052A JP2008108052A JP2009260719A JP 2009260719 A JP2009260719 A JP 2009260719A JP 2008108052 A JP2008108052 A JP 2008108052A JP 2008108052 A JP2008108052 A JP 2008108052A JP 2009260719 A JP2009260719 A JP 2009260719A
Authority
JP
Japan
Prior art keywords
packet
transmission
data
terminal
wireless network
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
Application number
JP2008108052A
Other languages
Japanese (ja)
Inventor
Hitoshi Ikuhira
均 生平
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008108052A priority Critical patent/JP2009260719A/en
Publication of JP2009260719A publication Critical patent/JP2009260719A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data transmission terminal device for transmitting, in real time, audio or video to another terminal through a wireless network without increasing a load on a CPU or the network. <P>SOLUTION: A terminal 11 transmits an audio realtime transport protocol (RTP) packet containing audio data of 160 bytes at intervals of 20 ms to the other terminal through a wireless network. If a transmission error of the packet sent to the wireless network occurs at a certain time, the terminal 11 does not retransmit the same audio RTP packet immediately but holds the retransmission until the next packet transmission timing comes. When the next packet transmission timing comes, the terminal 11 couples audio data in the preceding audio RTP packet and audio data to be next transmitted, thereby transmitting one audio RTP packet containing audio data of 320 bytes (=160+160) to the other terminal. A re-transmissible maximum packet size is limited within a jitter buffer size of the other terminal. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は音声又は映像をリアルタイムに伝送するためのデータ伝送端末装置およびデータ伝送方法に関する。   The present invention relates to a data transmission terminal apparatus and a data transmission method for transmitting audio or video in real time.

近年、インターネットのようなIPネットワークを利用して音声データをリアルタイムに伝送するVoIP(Voice over IP)技術が利用され始めている。このVoIP技術では、リアルタイム転送プロトコル(RTP)およびUDP等が利用される。このVoIP技術により、IP電話システムを実現することができる。   In recent years, VoIP (Voice over IP) technology for transmitting voice data in real time using an IP network such as the Internet has begun to be used. In this VoIP technology, a real-time transfer protocol (RTP) and UDP are used. With this VoIP technology, an IP telephone system can be realized.

また、IP電話システムにおいては、音声データのみならず、映像データの伝送を行うこともできる。音声データおよび映像データの伝送を行うことにより、IP電話システムをTV電話システムとして機能させることもできる。   In the IP telephone system, not only audio data but also video data can be transmitted. By transmitting audio data and video data, the IP telephone system can also function as a TV telephone system.

通常のIP電話システムでは、端末が有線LANに接続されていることを前提としている。最近では、モビリティ性を高めるために、無線LANのような無線ネットワークを介して音声通話を行うための技術(無線LAN IP電話)の実現が望まれている。   In a normal IP telephone system, it is assumed that the terminal is connected to a wired LAN. Recently, in order to enhance mobility, it is desired to realize a technology (wireless LAN IP phone) for performing a voice call via a wireless network such as a wireless LAN.

無線LAN IP電話はモビリティ面において便利ではあるが、無線LAN通信部分が有線LAN通信に比較して不安定であり、通信品質がかなり劣る。このため、無線LAN IP電話の実現に際しては、パケット伝送の信頼性を高めるための仕組みが必要となる。   The wireless LAN IP phone is convenient in terms of mobility, but the wireless LAN communication part is unstable compared to wired LAN communication, and the communication quality is considerably inferior. For this reason, when implementing a wireless LAN IP telephone, a mechanism for improving the reliability of packet transmission is required.

特許文献1には、通信相手から所定の時間内に肯定応答を受信できなかった場合に、送信に失敗したパケットのデータを再送するデータ通信装置が開示されている。このデータ通信装置においては、パケットの送信エラーが発生すると、直ぐにそのパケットの再送が行われる。そして、もし送信エラーが繰り返し発生し、パケットの再送が何度も繰り返されている間に次に送信すべきパケットのデータが準備された場合には、送信に失敗したパケットのデータと次に送信すべきパケットのデータとが1つのパケットとして再構築されて送信される。再構築されるパケットの最大サイズは、無線アクセスポイントとの間の最大フレームサイズ(例えば1500バイト)を上限として規定されている。
特開2007−116411号公報
Patent Document 1 discloses a data communication apparatus that retransmits data of a packet that has failed to be transmitted when an acknowledgment cannot be received from a communication partner within a predetermined time. In this data communication apparatus, when a packet transmission error occurs, the packet is immediately retransmitted. If a transmission error occurs repeatedly and the data of the packet to be transmitted next is prepared while the retransmission of the packet is repeated many times, the data of the packet that failed to be transmitted and the next transmission The data of the packet to be reconstructed is reconstructed as one packet and transmitted. The maximum size of the reconstructed packet is defined with the maximum frame size (for example, 1500 bytes) from the wireless access point as the upper limit.
JP 2007-116411 A

しかし、無線ネットワークを使用する場合においては、もし特許文献1のように直ぐに同じパケットデータを再送するという再送制御を使用すると、送信端末のCPUやネットワークに多くの負荷が無駄にかかる可能性がある。   However, in the case of using a wireless network, if the retransmission control of immediately resending the same packet data as in Patent Document 1 is used, a lot of load may be wasted on the CPU and network of the transmitting terminal. .

理由は、送信エラーが発生したということは無線環境が非常に混雑しており、直ぐに再送すると、混雑に拍車を掛ける恐れがあるからである。また、端末と無線ネットワーク内のルータとの間に障害がある時には、たとえ直ぐに再送しても短時間で通信環境が大幅に変わっておらず、救済できる確率が少ないと予想されるためである。   The reason is that the occurrence of a transmission error means that the wireless environment is very congested, and if it is retransmitted immediately, there is a risk that the congestion will be spurred. In addition, when there is a failure between the terminal and the router in the wireless network, even if it is immediately retransmitted, the communication environment has not changed significantly in a short time, and it is expected that there is a low probability that it can be relieved.

また、特許文献1では、再構築されるパケットの最大サイズを相手端末の通信環境とは無関係に無線アクセスポイントとの間の最大フレームサイズに規定しているので、相手端末内のバッファのサイズによってはバッファ溢れ等の問題が生じ、再構築されたパケット内の音声データ等を受信側でリアルタイムに再生することができなくなる。   In Patent Document 1, the maximum size of the reconstructed packet is defined as the maximum frame size with the wireless access point regardless of the communication environment of the counterpart terminal. Causes a problem such as buffer overflow, so that the voice data in the reconstructed packet cannot be reproduced in real time on the receiving side.

本発明は上述の事情を考慮してなされたものであり、CPUやネットワークの負荷を増大させることなく、音声や映像を無線ネットワーク経由でリアルタイムに相手端末に伝送することが可能なデータ伝送端末装置およびデータ伝送方法を提供することを目的とする。   The present invention has been made in consideration of the above-mentioned circumstances, and is a data transmission terminal device capable of transmitting audio and video to a partner terminal in real time via a wireless network without increasing the load on the CPU or network. And it aims at providing a data transmission method.

上述の課題を解決するため、本発明は、無線ネットワークを介して相手端末に音声又は映像をリアルタイムに伝送するためのデータ伝送端末装置であって、前記音声又は映像のデータを含む所定サイズのパケットを、前記無線ネットワークを介して前記相手端末宛に所定の時間間隔で送信するパケット送信手段と、前記無線ネットワークへ送出したパケットについての送信エラーが発生した場合、次のパケット送信タイミングが到来するまで前記送信エラーが発生したパケットの再送を保留し、次のパケット送信タイミングで、前記送信エラーが発生した直前のパケット内のデータと送信対象の次のデータとを結合することによって一つのパケットを生成し当該生成したパケットを前記無線ネットワークを介して前記相手端末宛に送信する再送制御手段とを具備することを特徴とするデータ伝送端末装置。   In order to solve the above-described problem, the present invention provides a data transmission terminal device for transmitting audio or video in real time to a counterpart terminal via a wireless network, the packet having a predetermined size including the audio or video data Packet transmission means for transmitting to the counterpart terminal via the wireless network at a predetermined time interval, and when a transmission error occurs for a packet sent to the wireless network, until the next packet transmission timing arrives Holds retransmission of the packet in which the transmission error has occurred and generates one packet by combining the data in the packet immediately before the transmission error and the next data to be transmitted at the next packet transmission timing And re-transmitting the generated packet to the partner terminal via the wireless network. Data transmission terminal apparatus characterized by comprising a control means.

また、本発明は、無線ネットワークを介して相手端末に音声又は映像をリアルタイムに伝送するためのデータ伝送端末装置であって、前記音声又は映像のデータを含む所定サイズのパケットを、前記無線ネットワークを介して前記相手端末宛に所定の時間間隔で送信するパケット送信手段と、前記無線ネットワークへ送出したパケットに対する肯定応答が前記無線ネットワーク内のルータから返送されなかった場合、前記肯定応答が返送されるまで前記パケットの再送を繰り返し、前記パケットの再送回数が所定値を超えた場合、前記パケットについての送信エラーが発生したことを示す再送回数オーバーイベントを発生する手段と、前記再送回数オーバーイベントが発生した場合、次のパケット送信タイミングが到来するまで前記再送回数オーバーによる送信エラーが発生したパケットの再送を保留し、次のパケット送信タイミングで、前記再送回数オーバーによる送信エラーが発生した直前のパケット内のデータと送信対象の次のデータとを結合することによって一つのパケットを生成し当該生成したパケットを前記無線ネットワークを介して前記相手端末宛に送信する再送制御手段と、前記相手端末との通信によって、前記相手端末が有するジッタ吸収用のバッファサイズを決定する手段とを具備し、前記再送制御手段が生成する最大パケットサイズが、前記決定されたバッファサイズ以下に制限されるように構成されていることを特徴とする。   The present invention is also a data transmission terminal device for transmitting audio or video in real time to a partner terminal via a wireless network, wherein the packet of a predetermined size including the audio or video data is transmitted to the wireless network. The packet transmission means for transmitting to the counterpart terminal via a predetermined time interval and the acknowledgment for the packet sent to the wireless network is not returned from the router in the wireless network, the acknowledgment is returned Means for generating a retransmission count over event indicating that a transmission error has occurred for the packet when the packet retransmission count exceeds a predetermined value, and the retransmission count over event occurs. The number of retransmissions until the next packet transmission timing arrives By holding the retransmission of the packet in which the transmission error has occurred by the server, and combining the data in the packet immediately before the transmission error due to the number of retransmissions and the next data to be transmitted at the next packet transmission timing Retransmission control means for generating one packet and transmitting the generated packet to the counterpart terminal via the wireless network, and determining the buffer size for jitter absorption of the counterpart terminal by communication with the counterpart terminal And a maximum packet size generated by the retransmission control unit is limited to be equal to or smaller than the determined buffer size.

本発明によれば、CPUやネットワークの負荷を増大させることなく、音声や映像を無線ネットワーク経由でリアルタイムに相手端末に伝送することができる。   According to the present invention, audio and video can be transmitted to a counterpart terminal in real time via a wireless network without increasing the load on the CPU or network.

以下、図面を参照して本発明の実施形態を説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1には、本発明の一実施形態に係るデータ伝送端末装置を使用したデータ伝送システムの構成例が示されている。このデータ伝送システムは、音声、映像といったリアルタイム伝送が必要なデータを無線LANのような無線ネットワーク経由で伝送するシステム(無線LAN IP電話システム)である。   FIG. 1 shows a configuration example of a data transmission system using a data transmission terminal device according to an embodiment of the present invention. This data transmission system is a system (wireless LAN IP telephone system) that transmits data that requires real-time transmission such as voice and video via a wireless network such as a wireless LAN.

この無線LAN IP電話システムにおいては、端末(A)11は、無線LANのような無線ネットワークに接続されており、無線ルータ(無線LANルータまたはアクセスポイントと称されることもある)12を介してインターネット(IPネットワーク)13との通信を実行する。同様に、端末(B)15も、無線LANのような無線ネットワークに接続されており、無線ルータ14を介してインターネット(IPネットワーク)13との通信を実行する。   In this wireless LAN IP telephone system, a terminal (A) 11 is connected to a wireless network such as a wireless LAN, and passes through a wireless router (also referred to as a wireless LAN router or an access point) 12. Communication with the Internet (IP network) 13 is executed. Similarly, the terminal (B) 15 is also connected to a wireless network such as a wireless LAN, and performs communication with the Internet (IP network) 13 via the wireless router 14.

端末(A)11は、本実施形態のデータ伝送端末装置として機能する。この端末(A)11は、例えば、パーソナルコンピュータのような情報処理端末から構成されている。端末(A)11はIP電話端末として機能し、無線ネットワークを介して相手端末(例えば、端末(B)15)との間で音声又は映像の送受信をリアルタイムに実行するように構成されている。   The terminal (A) 11 functions as a data transmission terminal device of this embodiment. The terminal (A) 11 is composed of an information processing terminal such as a personal computer, for example. The terminal (A) 11 functions as an IP telephone terminal, and is configured to execute audio or video transmission / reception in real time with a counterpart terminal (for example, the terminal (B) 15) via a wireless network.

本実施形態では、端末(A)11と端末(B)12との間の音声又は映像のようなデータの伝送は、リアルタイム転送プロトコル(RTP:Realtime Transport Protocol)、RTP制御プロトコル(RTCP:RTP Control Protocol)、およびUDP/IPプロトコル、等を用いて実行される。   In the present embodiment, transmission of data such as voice or video between the terminal (A) 11 and the terminal (B) 12 is performed using a real-time transfer protocol (RTP) or an RTP control protocol (RTCP: RTP Control). Protocol), UDP / IP protocol, etc.

一般に、有線LAN IP電話は音声CODECにG.711を利用し、音声データはRTP(RFC3550)にて送受信する。G.711はサンプリング周波数が8000Hzであり、音声パケット送出間隔が20msであれば、以下のようになる。   In general, a wired LAN IP phone is a G. 711 is used to transmit and receive audio data using RTP (RFC3550). G. If the sampling frequency is 8000 Hz and the voice packet transmission interval is 20 ms, 711 is as follows.

・サンプリング周波数:8000Hz
・原理遅延:0.125ms×ジッタバッファ個数
・1秒間に送出するパケット数:1000/20ms = 50pps
・音声1チャンネル当たりの必要帯域64Kbps = 50pps×Payloadサイズ
・Payloadサイズ =64000/50=1280bit=160byte
・音声パケットの長さ=200byte程度
音声RTPパケットのフロー制御をする為にRTCP(RFC3550)が使用され、制御情報を提供する。RTCPの一番重要な機能はRTPによって提供されるQoSのフィードバックを提供することである。
・ Sampling frequency: 8000Hz
-Principle delay: 0.125 ms x number of jitter buffers-Number of packets sent per second: 1000/20 ms = 50 pps
-Required bandwidth per audio channel 64 Kbps = 50 pps x Payload size-Payload size = 64000/50 = 1280 bits = 160 bytes
Voice packet length = about 200 bytes RTCP (RFC3550) is used to control the flow of voice RTP packets and provides control information. The most important function of RTCP is to provide QoS feedback provided by RTP.

上述したように、無線LAN IP電話システムは、モビリティ面において便利ではあるが、無線LAN通信部分が有線LAN通信に比較して不安定であり、通信品質がかなり劣る。   As described above, the wireless LAN IP telephone system is convenient in terms of mobility, but the wireless LAN communication part is unstable compared to wired LAN communication, and the communication quality is considerably inferior.

端末(A)11には、その端末(A)11内のCPUやネットワークに対して多くの負荷を掛けることなく、音声や映像のデータを無線LAN経由でリアルタイムに相手端末(B)12に伝送できるようにするための機能を有している。   The terminal (A) 11 transmits voice and video data to the partner terminal (B) 12 in real time via the wireless LAN without imposing much load on the CPU and network in the terminal (A) 11. It has a function to make it possible.

以下では、端末(A)11から端末(B)15に音声データをリアルタイムに伝送する場合を例示して、端末(A)11によるデータ送信動作について説明する。   Hereinafter, the data transmission operation by the terminal (A) 11 will be described by exemplifying a case where audio data is transmitted from the terminal (A) 11 to the terminal (B) 15 in real time.

音声パケットの送信にはRTPパケットが用いられる。この音声RTPパケットのペイロードには例えば160バイトの音声データが含まれている。音声RTPパケットの送信間隔は例えば20msである。すなわち、20ms間分の音声データが1つの音声RTPパケットによって相手端末宛に送信される。一方、送信端末と相手端末との間でQoSのフィードバックを提供するためのRTCPのパケット伝送は、例えば、2sに一回程度の割合で実行される。   RTP packets are used for transmission of voice packets. The payload of the voice RTP packet includes, for example, 160 bytes of voice data. The transmission interval of the voice RTP packet is 20 ms, for example. That is, voice data for 20 ms is transmitted to the other terminal by one voice RTP packet. On the other hand, RTCP packet transmission for providing QoS feedback between the transmitting terminal and the partner terminal is executed at a rate of about once every 2 s, for example.

端末(A)11は、160バイトの音声データを含むパケット(音声RTPパケット)を、無線ネットワークを介して相手端末宛に20ms間隔で送信する。ある時刻に無線ネットワークへ送出したパケットについての送信エラーが発生した場合、端末(A)11は、直ぐに同じ音声RTPパケットを再送するのではなく、次のパケット送信タイミングが到来するまで送信エラーが発生した音声RTPパケットの再送を保留する。これは、たとえ直ぐに再送しても、短時間で無線ネットワークの通信環境が改善されているとは限らず、再び送信エラーが発生する可能性が高いためである。この場合、無駄なパケット再送が行われることとなり、CPUやネットワークへの負荷が増大される結果となる。図1においては、送信エラーが発生した音声RTPパケットは×印で示されている。   The terminal (A) 11 transmits a packet including voice data of 160 bytes (voice RTP packet) to the other terminal via the wireless network at intervals of 20 ms. When a transmission error occurs for a packet sent to the wireless network at a certain time, the terminal (A) 11 does not immediately retransmit the same voice RTP packet, but a transmission error occurs until the next packet transmission timing arrives. The retransmission of the received voice RTP packet is suspended. This is because even if it is immediately retransmitted, the communication environment of the wireless network is not always improved in a short time, and there is a high possibility that a transmission error will occur again. In this case, useless packet retransmission is performed, resulting in an increase in the load on the CPU and the network. In FIG. 1, a voice RTP packet in which a transmission error has occurred is indicated by a cross.

次のパケット送信タイミングが到来すると、端末(A)11は、直前の送信エラーが発生したパケットの再送を行う。この場合、端末(A)11は、送信エラーが発生した直前の音声RTPパケット内の音声データ(160バイト)と次に送信すべき音声データ(160バイト)とを結合することによって、320バイト(=160+160)の音声データを含む一つの音声RTPパケットを生成し、当該生成した音声RTPパケットを無線ネットワークを介して相手端末宛に送信する。   When the next packet transmission timing arrives, the terminal (A) 11 retransmits the packet in which the previous transmission error has occurred. In this case, the terminal (A) 11 combines the voice data (160 bytes) in the voice RTP packet immediately before the transmission error has occurred with the voice data (160 bytes) to be transmitted next, thereby 320 bytes ( = 160 + 160) is generated, and the generated voice RTP packet is transmitted to the counterpart terminal via the wireless network.

この320バイトの音声データを含む音声RTPパケットの送信に成功したならば、次のパケット送信タイミングでは、次に送信すべき160バイトの音声データのみを含む通常の音声RTPパケットが送信される。一方、320バイトの音声データを含むパケットの送信に失敗した場合には、端末(A)11は、次のパケット送信タイミングが到来するまで再送を再び保留する。そして、次のパケット送信タイミングが到来すると、端末(A)11は、送信エラーが発生した直前のパケット内のデータ(160+160バイト)と次に送信すべき音声データ(160バイト)とを結合することによって、480バイト(=160+160+160)の音声データを含む一つの音声RTPパケットを生成し、当該生成した音声RTPパケットを無線ネットワークを介して相手端末宛に送信する。   If the transmission of the voice RTP packet including the 320-byte voice data is successful, a normal voice RTP packet including only the 160-byte voice data to be transmitted next is transmitted at the next packet transmission timing. On the other hand, when transmission of a packet containing 320-byte audio data fails, the terminal (A) 11 again holds retransmission until the next packet transmission timing arrives. When the next packet transmission timing arrives, the terminal (A) 11 combines the data (160 + 160 bytes) in the packet immediately before the transmission error occurs with the voice data (160 bytes) to be transmitted next. Thus, one voice RTP packet including voice data of 480 bytes (= 160 + 160 + 160) is generated, and the generated voice RTP packet is transmitted to the counterpart terminal via the wireless network.

この480バイトの音声データを含む音声RTPパケットの送信に成功したならば、次のパケット送信タイミングでは、次に送信すべき160バイトの音声データのみを含む通常の音声RTPパケットが送信される。一方、480バイトの音声データを含む音声RTPパケットの送信に失敗した場合には、端末(A)11は、次のパケット送信タイミングが到来するまで再送を再び保留する。そして、次のパケット送信タイミングが到来すると、端末(A)11は、送信エラーが発生した直前の音声RTPパケット内のデータ(160+160+160バイト)と次に送信すべき音声データ(160バイト)とを結合することによって、640バイト(=160+160+160+160)の音声データを含む一つの音声RTPパケットを生成し、当該生成した音声RTPパケットを無線ネットワークを介して相手端末宛に送信する。   If the transmission of the voice RTP packet including the 480-byte voice data is successful, a normal voice RTP packet including only the 160-byte voice data to be transmitted next is transmitted at the next packet transmission timing. On the other hand, when the transmission of the voice RTP packet including the voice data of 480 bytes fails, the terminal (A) 11 again holds the retransmission until the next packet transmission timing arrives. When the next packet transmission timing arrives, the terminal (A) 11 combines the data (160 + 160 + 160 bytes) in the voice RTP packet immediately before the transmission error occurs and the voice data (160 bytes) to be transmitted next. As a result, one voice RTP packet including 640 bytes (= 160 + 160 + 160 + 160) of voice data is generated, and the generated voice RTP packet is transmitted to the other terminal via the wireless network.

このように、本実施形態の再送制御では、次のパケット送信タイミングまで直前のパケットの再送が保留されるので、パケットの再送が何度も無駄に繰り返されることを防止することが出来る。本実施形態では、送信が失敗したパケットが相手端末に到達するタイミングは20ms単位で増加することとなるものの、通常、相手端末にはジッタ吸収用のバッファ(ジッタバッファ)が設けられているので、パケット到達タイミングの遅れを吸収することができる。   As described above, in the retransmission control according to the present embodiment, the retransmission of the immediately preceding packet is suspended until the next packet transmission timing, so that it is possible to prevent the retransmission of the packet from being repeated many times. In the present embodiment, although the timing at which a packet whose transmission has failed reaches the counterpart terminal increases in units of 20 ms, the counterpart terminal is usually provided with a buffer for absorbing jitter (jitter buffer). Delays in packet arrival timing can be absorbed.

本実施形態では、連続する複数のパケット送信タイミングで連続してパケット送信エラーが発生した際に生成される最大パケットサイズ(結合する最大パケット数)は、相手端末が有するジッタバッファのバッファサイズ以下に制限されている。例えば、相手端末が有するジッタバッファサイズが640バイト(=4パケット)であれば、最大パケットサイズ(結合する最大パケット数)は640バイト(=4パケット)に制限される。このように、相手端末が有するジッタバッファのサイズを考慮して生成可能な最大パケットサイズ(結合する最大パケット数)の上限を規定することで、リアルタイム伝送を保証する事が可能となる。   In the present embodiment, the maximum packet size (maximum number of packets to be combined) generated when packet transmission errors continuously occur at a plurality of continuous packet transmission timings is equal to or smaller than the buffer size of the jitter buffer of the partner terminal. Limited. For example, when the jitter buffer size of the partner terminal is 640 bytes (= 4 packets), the maximum packet size (maximum number of packets to be combined) is limited to 640 bytes (= 4 packets). In this way, by defining the upper limit of the maximum packet size (maximum number of packets to be combined) that can be generated in consideration of the size of the jitter buffer of the counterpart terminal, it is possible to guarantee real-time transmission.

図2には、端末(A)11の機能構成が示されている。   FIG. 2 shows a functional configuration of the terminal (A) 11.

端末(A)11は、音声入力部111、IP電話制御部112、RTP送信処理部113、IP送信処理部114、無線通信部115等を備えている。音声入力部111は、ユーザの音声データを入力する。この音声入力部111は、例えばマイクから入力されるユーザの音声をサンプリングして音声PCMデータに変換する。   The terminal (A) 11 includes a voice input unit 111, an IP telephone control unit 112, an RTP transmission processing unit 113, an IP transmission processing unit 114, a wireless communication unit 115, and the like. The voice input unit 111 inputs user voice data. The voice input unit 111 samples user's voice input from a microphone, for example, and converts it into voice PCM data.

IP電話制御部112は、リアルタイム転送プロトコル等を用いて音声の送受信を制御する。このIP電話制御部112は、アプリケーション層レベルで音声の送受信および再送制御を行う。IP電話制御部112は、音声入力部111から20ms毎に入力される音声データをエンコードし、そのエンコードされた音声データのパケットを、RTP送信処理部113、IP送信処理部114、および無線通信部115を介して送出する。このIP電話制御部112には、上述の再送制御機能と、最大パケットサイズを相手端末のジッタバッファサイズを考慮して制限する最大パケットサイズ制限機能が設けられている。   The IP telephone control unit 112 controls voice transmission / reception using a real-time transfer protocol or the like. The IP telephone control unit 112 performs voice transmission / reception and retransmission control at the application layer level. The IP telephone control unit 112 encodes audio data input from the audio input unit 111 every 20 ms, and converts the encoded audio data packet into an RTP transmission processing unit 113, an IP transmission processing unit 114, and a wireless communication unit. 115. This IP telephone control unit 112 is provided with the above-described retransmission control function and a maximum packet size limiting function for limiting the maximum packet size in consideration of the jitter buffer size of the counterpart terminal.

RTP送信処理部113は、IP電話制御部112によって生成されたパケットにRTPヘッダを付加してRTPパケットを生成する。RTPヘッダには、パケット送信時間やシーケンシャル番号等の情報を含ませることが出来る。IP送信処理部114は、RTPパケットにUDPヘッダを付加してUDPパケットを生成する。UDPヘッダには相手端末のIPアドレスを含ませることが出来る。UDPパケットは、無線通信部115を制御する無線LANドライバを介して、無線通信部115に送られる。無線通信部115は無線通信を実行するための無線通信デバイスであり、物理層(MAC層)として機能する。無線通信部115は、無線ルータ12との間でパケットを無線信号によって送受信する。   The RTP transmission processing unit 113 adds an RTP header to the packet generated by the IP telephone control unit 112 and generates an RTP packet. The RTP header can include information such as a packet transmission time and a sequential number. The IP transmission processing unit 114 generates a UDP packet by adding a UDP header to the RTP packet. The UDP header can include the IP address of the partner terminal. The UDP packet is sent to the wireless communication unit 115 via a wireless LAN driver that controls the wireless communication unit 115. The wireless communication unit 115 is a wireless communication device for executing wireless communication, and functions as a physical layer (MAC layer). The wireless communication unit 115 transmits and receives packets to and from the wireless router 12 by wireless signals.

本実施形態においては、無線通信部(MAC層)115は、ある時刻に無線ネットワークへ送出したパケットに対する肯定応答(ACK応答)が無線ルータ12から返送されなかった場合、肯定応答が返送されるまでパケットの再送を繰り返すように構成されている。そして、パケットの再送回数が所定回数を超えた場合、無線通信部(MAC層)115は、再送回数オーバーイベントを発生して、パケットの送信エラーが発生したことをIP電話制御部112に通知する。すなわち、無線通信部(MAC層)115は、MAC層のデータ送信パケットに対する無線ルータ12からの肯定応答(ACK応答)で送信到達確認する。もしACK応答がなければ、無線通信部(MAC層)115は、同じデータパケットを再送して、規程回数以内にACK応答を受信できない場合にはMAC層における送信再送オーバーとして異常検出する。このようなMAC層レベルでの再送機構により、端末11内のCPUの負荷を増大させずに、エア上でのパケットのロストをかなり救えるようになる。   In the present embodiment, if the wireless communication unit (MAC layer) 115 does not return an acknowledgment (ACK response) to a packet sent to the wireless network at a certain time from the wireless router 12, it returns until an acknowledgment is returned. It is configured to repeat retransmission of packets. When the number of packet retransmissions exceeds a predetermined number, wireless communication unit (MAC layer) 115 generates a retransmission number over event and notifies IP telephone control unit 112 that a packet transmission error has occurred. . That is, the wireless communication unit (MAC layer) 115 confirms transmission arrival with an acknowledgment (ACK response) from the wireless router 12 for the data transmission packet of the MAC layer. If there is no ACK response, the wireless communication unit (MAC layer) 115 retransmits the same data packet, and if it cannot receive an ACK response within the specified number of times, it detects an abnormality as a transmission retransmission over in the MAC layer. By such a retransmission mechanism at the MAC layer level, lost packets on the air can be considerably saved without increasing the load on the CPU in the terminal 11.

アプリケーション層として機能するIP電話制御部112は、パケットの再送回数が所定値を超えたことを条件に、つまり無線通信部(MAC層)115からの再送回数オーバーイベントを受信した際に、パケットの送信エラーが発生したと判定し、アプリケーション層レベルでの再送制御処理に移行する。   The IP phone control unit 112 functioning as an application layer receives a packet over-reception event from the wireless communication unit (MAC layer) 115 on the condition that the number of packet retransmissions exceeds a predetermined value. It is determined that a transmission error has occurred, and the process proceeds to retransmission control processing at the application layer level.

図3には、再送が1回で成功した時の送信フローが示されている。   FIG. 3 shows a transmission flow when retransmission succeeds once.

マイクから入力された音声PCMデータはIP電話制御部112にてエンコードされ、160バイトの音声データを含むパケットが生成される。このパケットはRTPヘッダ、UDPヘッダ、LLCヘッダ、MACヘッダが付加された後に、無線ネットワークに送出される。再送が1回で成功すると、1回目の再送から所定時間内にACK応答が無線ルータ12から無線通信部115に返される。   The voice PCM data input from the microphone is encoded by the IP telephone control unit 112, and a packet containing 160-byte voice data is generated. This packet is sent to the wireless network after the RTP header, UDP header, LLC header, and MAC header are added. If the retransmission succeeds once, an ACK response is returned from the wireless router 12 to the wireless communication unit 115 within a predetermined time from the first retransmission.

本実施形態においては、IP電話制御部112は、MAC層で再送オーバーだった場合に、直ぐに同じ音声データを再送することも可能であるが、上述したように、そのような処理を行わない。すなわち、MAC層で再送オーバーが発生したということは無線環境が非常に混雑しており、アプリケーション層レベルでの再送は混雑に拍車を掛けることになる恐れがあるからである。また、端末(A)11と無線ルータ12との間に障害がある時に、数十ミリ秒単位で再送しても短時間で通信環境が大幅に変わっておらずに救済できる確率が少ないと予想されるからである。もし、通信環境が悪い状態でIP電話制御部112によるアプリケーション層レベルでの再送を行うと、再び、MAC層レベルでの再送が何度も繰り返されてしまい、無線ネットワークの負荷の増大を招くことになる。   In the present embodiment, the IP telephone control unit 112 can retransmit the same voice data immediately when the retransmission is over in the MAC layer, but does not perform such processing as described above. That is, the occurrence of retransmission over at the MAC layer is because the wireless environment is very congested, and retransmission at the application layer level may add to the congestion. In addition, when there is a failure between the terminal (A) 11 and the wireless router 12, it is expected that there is a low probability that the communication environment will not change significantly in a short time even if it is retransmitted in units of several tens of milliseconds. Because it is done. If retransmission at the application layer level by the IP telephone control unit 112 is performed in a poor communication environment, retransmission at the MAC layer level is repeated again and again, which increases the load on the wireless network. become.

図4には、再送回数が5回の場合の再送オーバーフローが示されている。   FIG. 4 shows retransmission overflow when the number of retransmissions is five.

本実施形態では、MAC層レベルで再送オーバーが発生した時に、上位層のIP電話制御部112で以下のような再送制御を行う。   In this embodiment, when retransmission over occurs at the MAC layer level, the upper layer IP telephone control unit 112 performs the following retransmission control.

1. IP電話制御部112は音声パケットの再送オーバーが発生すると、次の音声RTPパケット送信タイミング(例えば、G.711では標準的に20ms後になる)で、次に送信すべきパケットを直前の再送オーバーパケットと結合して一緒のパケットとして送信する。   1. When a voice packet re-transmission over occurs, the IP telephone control unit 112 determines that the packet to be transmitted next is the previous re-transmission over packet at the next voice RTP packet transmission timing (for example, 20 ms later in G.711). Combined and sent as a packet together.

2. 再送オーバーが連続して発生した場合は、それまでの複数の再送オーバーパケットと結合して一緒のパケットとして送信する。   2. When retransmission over occurs continuously, it is combined with a plurality of retransmission over packets so far and transmitted as a packet together.

3. 結合する最大パケット数は、相手端末のジッタバッファサイズに基づいて決定する。   3. The maximum number of packets to be combined is determined based on the jitter buffer size of the partner terminal.

図5には、IP電話制御部112による再送制御のフローが示されている。   FIG. 5 shows a flow of retransmission control by IP telephone control unit 112.

MAC層レベルでの5回目のパケット再送から所定時間経過するまでにACK応答が受信できない場合、パケット送信エラーを示す再送回数オーバーイベント(retry-over event)が無線通信部115のMAC層で発生される。このretry-over eventはIP電話制御部112に送られる。IP電話制御部112はパケットの送信エラーが発生したと判定し、再送制御処理に移行する。この場合、IP電話制御部112は次のパケット送信タイミングが到来するまで、パケットの再送を保留する。次のパケット送信タイミングが到来すると、IP電話制御部112は、送信エラーが発生した直前の音声RTPパケット内のデータと次に送信すべき音声データとを結合して一つの音声RTPパケットを生成し、その音声RTPパケットを送信する。   If an ACK response cannot be received before a predetermined time has elapsed since the fifth packet retransmission at the MAC layer level, a retransmission-over event indicating a packet transmission error is generated in the MAC layer of the wireless communication unit 115. The This retry-over event is sent to the IP telephone control unit 112. The IP telephone control unit 112 determines that a packet transmission error has occurred, and proceeds to a retransmission control process. In this case, IP telephone control unit 112 suspends retransmission of the packet until the next packet transmission timing arrives. When the next packet transmission timing arrives, the IP telephone control unit 112 generates a single voice RTP packet by combining the data in the voice RTP packet immediately before the transmission error occurs and the voice data to be transmitted next. The voice RTP packet is transmitted.

例えば、音声RTPパケット送出間隔が20msの時においては、IP電話制御部112が時刻T1に送信しようとした音声RTPパケット(160バイト)の送信エラーが発生すると、再送オーバーイベントが無線LANのMAC層からIP電話制御部112に通知される。そして、時刻T1+20msにIP電話制御部112が音声パケットを送信するタイミングで、直前に送信再送オーバーになった音声データを結合して、音声RTPパケット(160+160=320バイト)として送信する。   For example, when the voice RTP packet transmission interval is 20 ms, if a transmission error of the voice RTP packet (160 bytes) that the IP telephone control unit 112 tries to transmit at time T1 occurs, a retransmission over event is generated in the MAC layer of the wireless LAN. To the IP telephone control unit 112. Then, at the timing when the IP telephone control unit 112 transmits the voice packet at time T1 + 20 ms, the voice data that has just been over-retransmission over is combined and transmitted as a voice RTP packet (160 + 160 = 320 bytes).

ここで重要なことは最大の結合パケット数である。IP電話においてはRTCPも利用されており、相手からのRRパケットのreception report blockのInterarrival Jitterにジッタ時間を示すジッタ情報が格納されており、これを利用して最大結合パケット数を決定する。すなわち、相手端末は少なくともジッタを吸収できるサイズのジッタバッファを有していると想定し、相手端末から送信されるジッタ時間(Interarrival Jitter)に基づいて、相手端末のジッタバッファサイズを推定する。   What is important here is the maximum number of combined packets. RTCP is also used in the IP telephone, and jitter information indicating jitter time is stored in the Interarrival Jitter of the reception report block of the RR packet from the other party, and the maximum combined packet number is determined using this. That is, assuming that the partner terminal has a jitter buffer of a size that can absorb at least jitter, the jitter buffer size of the partner terminal is estimated based on the jitter time (Interarrival Jitter) transmitted from the partner terminal.

図6には、RFC3550において規定されているRRパケットの構成が示されている。RRパケットのreception report blockにはInterarrival Jitterの項目が規定されており、ここに受信端末側で計算されたジッタ時間が含まれている。ジッタ時間は、パケット間の到着間隔差の平均偏差(標準絶対値)である。例えば、1番目のパケットの到着間隔(到着時刻−送信時刻)が10ms、2番目のパケットの到着間隔(到着時刻−送信時刻)が20ms、3番目のパケットの到着間隔(到着時刻−送信時刻)が30mである場合、平均到着間隔は20ms、ジッタ時間は10msとなる。ジッタ時間の具体的な算出方法は、RFC3550規格書のp35等に記述されている。   FIG. 6 shows the configuration of an RR packet defined in RFC3550. An item of Interarrival Jitter is defined in the reception report block of the RR packet, and includes the jitter time calculated on the receiving terminal side. The jitter time is the average deviation (standard absolute value) of the arrival interval difference between packets. For example, the first packet arrival interval (arrival time-transmission time) is 10 ms, the second packet arrival interval (arrival time-transmission time) is 20 ms, and the third packet arrival interval (arrival time-transmission time). Is 30 m, the average arrival interval is 20 ms, and the jitter time is 10 ms. A specific method for calculating the jitter time is described in p35 of the RFC3550 standard.

また、RTCPを利用してラウンドトリップタイム(RTT)を算出して、このラウンドトリップタイムと、上述のジッタ時間とに基づいて、相手端末のジッタバッファを推定することもできる。   Further, the round trip time (RTT) can be calculated using RTCP, and the jitter buffer of the partner terminal can be estimated based on the round trip time and the above jitter time.

ラウンドトリップタイム(RTT)は、送信端末と受信端末との間をパケットが往復するのに要する時間を示している。ラウンドトリップタイム(RTT)はRTCPを利用して算出することができる。ラウンドトリップタイム(RTT)を算出するための具体的な方法は、RFC3550規格書のp40等に記述されている。   The round trip time (RTT) indicates the time required for a packet to reciprocate between the transmitting terminal and the receiving terminal. The round trip time (RTT) can be calculated using RTCP. A specific method for calculating the round trip time (RTT) is described in p40 of the RFC3550 standard.

上述したように、IP電話制御部112における再送時の最大音声パケット数は、相手端末のジッタバッファサイズ以内でなければならない。例えば、相手端末が800バイトのジッタバッファを実装していれば、IP電話制御部112は5個の音声パケットを一緒に送信(再送)することが可能である。しかし、RTCPを利用しても相手端末のジッタバッファサイズを知ることはできない。そこで、本実施形態では、上述のジッタ時間やラウンドトリップタイムからジッタバッファサイズを推定する。以下、具体的な推定方法について説明する。   As described above, the maximum number of voice packets at the time of retransmission in the IP telephone control unit 112 must be within the jitter buffer size of the counterpart terminal. For example, if the counterpart terminal is equipped with an 800-byte jitter buffer, the IP telephone control unit 112 can transmit (retransmit) five voice packets together. However, even if RTCP is used, the jitter buffer size of the partner terminal cannot be known. Therefore, in this embodiment, the jitter buffer size is estimated from the above-described jitter time and round trip time. Hereinafter, a specific estimation method will be described.

まず、ラウンドトリップタイムとジッタ時間の双方に基づいて、ジッタバッファサイズを推定する場合を説明する。   First, a case where the jitter buffer size is estimated based on both the round trip time and the jitter time will be described.

ジッタバッファの実装にあたっては適応型にするなどで動的にジッタバッファサイズ変更するなどすることもあるが、最大ジッタバッファサイズを利用できると思って良い。ラウンドトリップタイマは往復の所用時間であるので、片方向の所要時間は概ね半分であるが、受信側のジッタバッファはラウンドトリップ時間の半分は実装していると考えられる。従って、ジッタバッファサイズは、以下のように推測される。   When implementing the jitter buffer, the jitter buffer size may be dynamically changed by making it adaptive, but it may be possible to use the maximum jitter buffer size. Since the round trip timer is a required time for reciprocation, the time required for one direction is approximately halved, but it is considered that the jitter buffer on the receiving side is implemented for half of the round trip time. Therefore, the jitter buffer size is estimated as follows.

ジッタバッファサイズ
=(ラウンドトリップ時間/2 + ジッタ時間)×160バイト/20ms
上記より、IP電話制御部112における再送時の最大音声パケット数は、推定されたジッタバッファサイズをパケットサイズ(160バイト)で割ることにより、以下になる。
Jitter buffer size = (round trip time / 2 + jitter time) × 160 bytes / 20 ms
From the above, the maximum number of voice packets at the time of retransmission in the IP telephone control unit 112 is as follows by dividing the estimated jitter buffer size by the packet size (160 bytes).

再送時の最大音声パケット数
=(ラウンドトリップ時間/2 + ジッタ時間)/20 + 1
ここで、“+1”しているは、端数を切り上げるためである。
Maximum number of voice packets at the time of retransmission = (round trip time / 2 + jitter time) / 20 + 1
Here, “+1” is used to round up the fraction.

このように、IP電話制御部112は、RTCPによってラウンドトリップタイムを決定し、このラウンドトリップタイムの1/2とジッタ時間との合計値に、パケットの送信によって相手端末に送られる単位時間当たりのデータ量(160バイト/20ms)を乗算して得られる値を、ジッタバッファサイズとして推定することができる。   As described above, the IP telephone control unit 112 determines the round trip time by RTCP, and the total value of ½ of the round trip time and the jitter time is set to a value per unit time sent to the partner terminal by packet transmission. A value obtained by multiplying the data amount (160 bytes / 20 ms) can be estimated as the jitter buffer size.

また、ジッタ時間に単位時間当たりの送信データ量を乗算して得られる値をジッタバッファサイズとして推定してもよく、この場合は、
ジッタバッファサイズ=ジッタ時間×160バイト/20ms
となる。
In addition, a value obtained by multiplying the jitter time by the transmission data amount per unit time may be estimated as the jitter buffer size.
Jitter buffer size = jitter time × 160 bytes / 20 ms
It becomes.

また、上記は、相手端末からのRTCPのRRパケットにより相手端末のジッタバッファサイズを推測することにより、送信最大パケットサイズを決定する方式であったが、RTCPのSDES(Source Description)のPrivate extensions SDES itemを利用して、ジッタバッファサイズを相手端末と交換することで、相手端末からジッタバッファサイズを受信し、結合する最大パケット数を相手のジッタバッファサイズ以内にする方式も可能である。SDES(Source Description)のPrivate extensions SDES itemについては、RFC3550規格書のp45等に記述されている。   The above is a method for determining the maximum transmission packet size by estimating the jitter buffer size of the partner terminal from the RTCP RR packet from the partner terminal, but the private extensions SDES of the RTCP SDES (Source Description) A method is also possible in which the jitter buffer size is exchanged with the counterpart terminal using item to receive the jitter buffer size from the counterpart terminal so that the maximum number of packets to be combined is within the counterpart jitter buffer size. Private extensions SDES item of SDES (Source Description) is described in p45 of the RFC3550 standard.

また、このように相手端末のジッタバッファサイズをジッタ時間やラウンドトリップタイムから推測する方式、またはPrivate extensions SDES itemを利用して相手端末からジッタバッファサイズを受信する方式以外に、IP電話制御部112の構成情報にて定義する方式もある。つまり、構成情報ファイルなどに相手端末のジッタバッファサイズ=800バイトなどと定義しておく方式である。この方式の場合は、相手端末は様々な端末があるので予想される接続端末の最低値のジッタバッファサイズを定義しておくことになる。つまり、端末の種類によってジッタバッファサイズは異なるものの、概ねジッタバッファサイズは何通りかに分類することが出来るので、その内の最低値のジッタバッファサイズを予め端末11内に登録しておくことで、ジッタバッファサイズに基づいて送信最大パケットサイズを制限することができる。   In addition to the method of estimating the jitter buffer size of the partner terminal from the jitter time and round trip time, or the method of receiving the jitter buffer size from the partner terminal using the Private extensions SDES item, the IP telephone control unit 112 There is also a method defined by the configuration information. That is, this is a method in which the jitter buffer size of the counterpart terminal is defined as 800 bytes in the configuration information file or the like. In the case of this method, since the partner terminal has various terminals, the expected minimum jitter buffer size of the connected terminal is defined. In other words, although the jitter buffer size varies depending on the type of terminal, the jitter buffer size can be roughly classified into several ways. By registering the lowest jitter buffer size in the terminal 11 beforehand, The maximum transmission packet size can be limited based on the jitter buffer size.

次に、図7のフローチャートを参照して、端末(A)11によって実行される音声パケット送信処理の手順を説明する。   Next, the procedure of voice packet transmission processing executed by the terminal (A) 11 will be described with reference to the flowchart of FIG.

端末(A)11のIP電話制御部112は、20msに一回の時間間隔で音声RTPパケットを無線通信部115に送出することにより、相手端末宛のパケットを無線ネットワークに送出する(ステップS11)。このパケットが正常に送信された場合、つまりMAC層レベルにおける最大再送回数以内でACK応答が無線ルータ12から返送され再送回数オーバーイベントが発生しなかった場合には(ステップS12のNO)、端末(A)11のIP電話制御部112は、次のパケット送信タイミングで、次の音声RTPパケットを無線通信部115に送出することにより、相手端末宛の次のパケットを無線ネットワークに送出する(ステップS13,S14)。   The IP telephone control unit 112 of the terminal (A) 11 transmits a packet addressed to the partner terminal to the wireless network by transmitting a voice RTP packet to the wireless communication unit 115 at a time interval of once every 20 ms (step S11). . When this packet is transmitted normally, that is, when an ACK response is returned from the wireless router 12 within the maximum number of retransmissions at the MAC layer level and a retransmission number over event does not occur (NO in step S12), the terminal ( A) The IP telephone control unit 112 of 11 sends the next voice RTP packet to the wireless communication unit 115 at the next packet transmission timing, thereby sending the next packet addressed to the partner terminal to the wireless network (step S13). , S14).

パケットが正常に送信されなかった場合、つまりMAC層レベルにおける最大再送回数以内にACK応答が無線ルータ12から返送されずに再送回数オーバーイベントが発生した場合には(ステップS12のYES)、端末(A)11のIP電話制御部112は、次のパケット送信タイミングまで、送信エラーしたパケットの再送を保留する(ステップS15)。そして、次のパケット送信タイミングが到来すると(ステップS16のYES)、IP電話制御部112は、パケット送信が失敗した直前の音声RTPパケットの音声データと次の送信対象の音声データとを結合して一つの音声RTPパケットを生成する(ステップS17)。IP電話制御部112は、生成した音声RTPパケットのデータサイズが相手端末のジッタバッファサイズ以内であるか否かを判定する(ステップS18)。   If the packet is not normally transmitted, that is, if the ACK response is not returned from the wireless router 12 within the maximum number of retransmissions at the MAC layer level and a retransmission number over event occurs (YES in step S12), the terminal ( A) The IP telephone control unit 112 of 11 holds the retransmission of the packet in which the transmission error has occurred until the next packet transmission timing (step S15). When the next packet transmission timing arrives (YES in step S16), the IP telephone control unit 112 combines the voice data of the voice RTP packet immediately before the packet transmission has failed and the next voice data to be transmitted. One voice RTP packet is generated (step S17). The IP telephone control unit 112 determines whether or not the data size of the generated voice RTP packet is within the jitter buffer size of the counterpart terminal (step S18).

生成した音声RTPパケットのデータサイズが相手端末のジッタバッファサイズ以内であるならば(ステップS18のYES)、IP電話制御部112は、生成した音声RTPパケットを無線通信部115に送出することにより、相手端末宛の次のパケットを無線ネットワークに送出する(ステップS19)。   If the data size of the generated voice RTP packet is within the jitter buffer size of the counterpart terminal (YES in step S18), the IP telephone control unit 112 sends the generated voice RTP packet to the wireless communication unit 115, The next packet addressed to the partner terminal is sent to the wireless network (step S19).

一方、生成した音声RTPパケットのデータサイズが相手端末のジッタバッファサイズを越えているならば(ステップS18のNO)、IP電話制御部112は、例えば、最も時間的に古い160バイト分の音声データ部を音声RTPパケットから削除する等のパケットサイズ調整処理を実行して、音声RTPパケットのデータサイズを相手端末のジッタバッファサイズ以下に制限する(ステップS20)。そして、IP電話制御部112は、パケットサイズ調整処理がなされた音声RTPパケットされた無線通信部115に送出することにより、相手端末宛の次のパケットを無線ネットワークに送出する(ステップS21)。   On the other hand, if the data size of the generated voice RTP packet exceeds the jitter buffer size of the counterpart terminal (NO in step S18), the IP telephone control unit 112, for example, has the earliest 160-byte voice data in time. Packet size adjustment processing such as deleting a part from the voice RTP packet is executed to limit the data size of the voice RTP packet to be equal to or smaller than the jitter buffer size of the counterpart terminal (step S20). Then, the IP telephone control unit 112 sends the next packet addressed to the counterpart terminal to the wireless network by sending it to the wireless communication unit 115 that has been subjected to the packet size adjustment processing and is a voice RTP packet (step S21).

なお、パケットサイズ調整処理は、時間的に古い160バイト分の音声データ部の削除のみに限定されるものではなく、任意の160バイトの音声データ部を削除すればよい。   Note that the packet size adjustment processing is not limited to deleting only the 160-byte audio data portion that is older in time, and it is only necessary to delete any 160-byte audio data portion.

次に、図8のフローチャートを参照して、相手端末のジッタバッファサイズに基づいて最大パケットサイズを制限する処理について説明する。   Next, a process for limiting the maximum packet size based on the jitter buffer size of the counterpart terminal will be described with reference to the flowchart of FIG.

IP電話制御部112は、相手端末との通信によって、相手端末のジッタバッファサイズを検出する(ステップS21)。具体的には、IP電話制御部112は、相手端末との通信によって得られるジッタ時間またはラウンドトリップタイム等の情報に基づいて相手端末のジッタバッファサイズを推定する処理、またはSDES(Source Description)のPrivate extensions SDES itemを利用してジッタバッファサイズを相手端末と交換する処理によって、相手端末のジッタバッファサイズを決定する。   The IP telephone control unit 112 detects the jitter buffer size of the partner terminal through communication with the partner terminal (step S21). Specifically, the IP telephone control unit 112 estimates the jitter buffer size of the partner terminal based on information such as jitter time or round trip time obtained by communication with the partner terminal, or SDES (Source Description) The jitter buffer size of the partner terminal is determined by the process of exchanging the jitter buffer size with the partner terminal using Private extensions SDES item.

次に、IP電話制御部112は、決定された相手端末のジッタバッファサイズを送信可能な音声RTPパケットの最大データサイズ(最大パケット結合数)として規定する(ステップS22)。そして、上述の図7のステップS18,S20により、再送パケットサイズを規定された最大データサイズ以下に制限する処理を実行する(ステップS23)。   Next, IP telephone control section 112 defines the determined jitter buffer size of the partner terminal as the maximum data size (maximum number of packets combined) of voice RTP packets that can be transmitted (step S22). Then, in steps S18 and S20 of FIG. 7 described above, a process of limiting the retransmission packet size to a specified maximum data size or less is executed (step S23).

以上のように、本実施形態においては、無線通信部115における再送オーバーが発生した際に直ぐに再送するのではなく、次の音声データ送信タイミングまで再送を保留し、そして、次の音声データ送信タイミングが到来した時に、無線通信部115において再送オーバーが発生した音声データを次の音声データと結合して送信することで、CPUやネットワークに無駄な負荷を掛けることなく、音声データをリアルタイムに送信することが可能となる。さらに、再送時の最大パケットサイズを相手端末のジッタバッファサイズ以下に制限することで、バーストエラー(連続的な再送オーバーエラー)が発生した場合も救済可能となる。   As described above, in the present embodiment, when retransmission over in the wireless communication unit 115 occurs, retransmission is not performed immediately, but retransmission is suspended until the next audio data transmission timing, and then the next audio data transmission timing is reached. When the voice data arrives, the wireless communication unit 115 transmits the voice data in which the over-retransmission occurs in combination with the next voice data, thereby transmitting the voice data in real time without imposing unnecessary load on the CPU or the network. It becomes possible. Further, by limiting the maximum packet size at the time of retransmission to be equal to or smaller than the jitter buffer size of the counterpart terminal, it is possible to recover even when a burst error (continuous retransmission over error) occurs.

なお、本実施形態では、音声データをリアルタイムに相手端末に伝送する場合を例示して説明したが、本実施形態の再送制御処理は映像データをリアルタイムに相手端末に伝送する場合にも適用することができる。また、本実施形態のシステムは音声と映像の双方を無線ネットワークを介してリアルタイムに相手端末に伝送するための無線LAN IPテレビ電話システムとして実現してもよく、この場合には、音声データの伝送および映像データの伝送のそれぞれに対して個別に本実施形態の再送制御処理を実行すればよい。   In this embodiment, the case where audio data is transmitted to the counterpart terminal in real time has been described as an example. However, the retransmission control processing of the present embodiment is also applicable to the case where video data is transmitted to the counterpart terminal in real time. Can do. The system of this embodiment may be realized as a wireless LAN IP videophone system for transmitting both audio and video to a partner terminal in real time via a wireless network. In this case, audio data transmission In addition, the retransmission control process of this embodiment may be executed individually for each transmission of video data.

また、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。   Further, the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.

本発明の一実施形態に係るデータ伝送端末装置を使用したデータ伝送システムの構成例を示すブロック図。The block diagram which shows the structural example of the data transmission system using the data transmission terminal device which concerns on one Embodiment of this invention. 同実施形態のデータ伝送端末装置の機能構成を示すブロック図。The block diagram which shows the function structure of the data transmission terminal device of the embodiment. 同実施形態のデータ伝送端末装置によって実行されるパケット送信動作の例を示す図。The figure which shows the example of the packet transmission operation | movement performed by the data transmission terminal device of the embodiment. 同実施形態のデータ伝送端末装置に設けられた無線通信部によって実行される再送動作を説明するための図。The figure for demonstrating the resending operation | movement performed by the radio | wireless communication part provided in the data transmission terminal device of the embodiment. 同実施形態のデータ伝送端末装置に設けられたIP電話制御部によって実行される再送動作を説明するための図。The figure for demonstrating the resending operation | movement performed by the IP telephone control part provided in the data transmission terminal device of the embodiment. 同実施形態のデータ伝送端末装置が相手端末から受け取るRRパケットを説明するための図。The figure for demonstrating the RR packet which the data transmission terminal device of the embodiment receives from a partner terminal. 同実施形態のデータ伝送端末装置によって実行されるパケット再送制御処理の手順を説明するためのフローチャート。6 is an exemplary flowchart for explaining the procedure of packet retransmission control processing executed by the data transmission terminal device of the embodiment; 同実施形態のデータ伝送端末装置によって実行される、相手端末のジッタバッファサイズに基づいて最大パケットサイズを制限する処理を説明するためのフローチャート。9 is a flowchart for explaining processing for limiting the maximum packet size based on the jitter buffer size of the counterpart terminal, which is executed by the data transmission terminal device of the embodiment.

符号の説明Explanation of symbols

11…データ伝送端末装置、12,14…無線ルータ、13…ネットワーク、15…相手端末、111…音声入力部、112…IP電話制御部、113…RTP送信処理部、114…IP送信処理部、115…無線通信部。   DESCRIPTION OF SYMBOLS 11 ... Data transmission terminal device, 12, 14 ... Wireless router, 13 ... Network, 15 ... Remote terminal, 111 ... Voice input part, 112 ... IP telephone control part, 113 ... RTP transmission process part, 114 ... IP transmission process part, 115: A wireless communication unit.

Claims (10)

無線ネットワークを介して相手端末に音声又は映像をリアルタイムに伝送するためのデータ伝送端末装置であって、
前記音声又は映像のデータを含む所定サイズのパケットを、前記無線ネットワークを介して前記相手端末宛に所定の時間間隔で送信するパケット送信手段と、
前記無線ネットワークへ送出したパケットについての送信エラーが発生した場合、次のパケット送信タイミングが到来するまで前記送信エラーが発生したパケットの再送を保留し、次のパケット送信タイミングで、前記送信エラーが発生した直前のパケット内のデータと送信対象の次のデータとを結合することによって一つのパケットを生成し当該生成したパケットを前記無線ネットワークを介して前記相手端末宛に送信する再送制御手段とを具備することを特徴とするデータ伝送端末装置。
A data transmission terminal device for transmitting audio or video in real time to a partner terminal via a wireless network,
Packet transmitting means for transmitting a packet of a predetermined size including the audio or video data to the counterpart terminal via the wireless network at a predetermined time interval;
When a transmission error occurs for a packet sent to the wireless network, the retransmission of the packet in which the transmission error has occurred is suspended until the next packet transmission timing arrives, and the transmission error occurs at the next packet transmission timing Retransmission control means for generating one packet by combining the data in the immediately preceding packet and the next data to be transmitted, and transmitting the generated packet to the counterpart terminal via the wireless network A data transmission terminal device.
連続する複数のパケット送信タイミングで連続してパケット送信エラーが発生した際に前記再送制御手段が生成する最大パケットサイズは、前記相手端末が有するジッタ吸収用のバッファサイズ以下に制限されていることを特徴とする請求項1記載のデータ伝送端末装置。   The maximum packet size generated by the retransmission control means when a packet transmission error occurs continuously at a plurality of consecutive packet transmission timings is limited to a buffer size for jitter absorption of the counterpart terminal or less. The data transmission terminal apparatus according to claim 1, wherein: 前記相手端末との通信によって、前記相手端末が有するジッタ吸収用のバッファサイズを決定するバッファサイズ決定手段をさらに具備し、前記再送制御手段が生成する最大パケットサイズは、前記決定されたバッファサイズ以下に制限されていることを特徴とする請求項2記載のデータ伝送端末装置。   Further comprising buffer size determining means for determining a buffer size for jitter absorption of the counterpart terminal by communication with the counterpart terminal, the maximum packet size generated by the retransmission control means is equal to or less than the determined buffer size The data transmission terminal device according to claim 2, wherein the data transmission terminal device is limited to: 前記バッファサイズ決定手段は、前記相手端末から送信されるジッタ時間に、前記パケットの送信によって前記相手端末に送られる単位時間当たりのデータ量を乗算して得られる値を、前記バッファサイズとして推定する手段を含むことを特徴とする請求項3記載のデータ伝送端末装置。   The buffer size determining means estimates, as the buffer size, a value obtained by multiplying a jitter time transmitted from the partner terminal by a data amount per unit time transmitted to the partner terminal by transmission of the packet. 4. The data transmission terminal device according to claim 3, further comprising means. 前記バッファサイズ決定手段は、前記データ伝送端末装置と前記相手端末との間をパケットが往復するのに要するラウンドトリップタイムを決定し、このラウンドトリップタイムの1/2と前記相手端末から送信されるジッタ時間との合計値に、前記パケットの送信によって前記相手端末に送られる単位時間当たりのデータ量を乗算して得られる値を、前記バッファサイズとして推定する手段を含むことを特徴とする請求項3記載のデータ伝送端末装置。   The buffer size determining means determines a round trip time required for a packet to reciprocate between the data transmission terminal device and the counterpart terminal, and ½ of the round trip time is transmitted from the counterpart terminal. The means for estimating the buffer size includes a value obtained by multiplying a total value with a jitter time by a data amount per unit time transmitted to the counterpart terminal by transmission of the packet. 3. The data transmission terminal device according to 3. 前記無線ネットワークへ送出したパケットに対する肯定応答が前記無線ネットワーク内のルータから返送されなかった場合、前記肯定応答が返送されるまで前記パケットの再送を繰り返す手段をさらに具備し、
前記再送制御手段は、前記パケットの再送回数が所定値を超えた場合、前記パケットについての送信エラーが発生したと判定することを特徴とする請求項1記載のデータ伝送端末装置。
If an acknowledgment for a packet sent to the wireless network is not returned from a router in the wireless network, further comprising means for repeating retransmission of the packet until the acknowledgment is returned;
The data transmission terminal apparatus according to claim 1, wherein the retransmission control means determines that a transmission error has occurred for the packet when the number of retransmissions of the packet exceeds a predetermined value.
無線ネットワークを介して相手端末に音声又は映像をリアルタイムに伝送するためのデータ伝送端末装置であって、
前記音声又は映像のデータを含む所定サイズのパケットを、前記無線ネットワークを介して前記相手端末宛に所定の時間間隔で送信するパケット送信手段と、
前記無線ネットワークへ送出したパケットに対する肯定応答が前記無線ネットワーク内のルータから返送されなかった場合、前記肯定応答が返送されるまで前記パケットの再送を繰り返し、前記パケットの再送回数が所定値を超えた場合、前記パケットについての送信エラーが発生したことを示す再送回数オーバーイベントを発生する手段と、
前記再送回数オーバーイベントが発生した場合、次のパケット送信タイミングが到来するまで前記再送回数オーバーによる送信エラーが発生したパケットの再送を保留し、次のパケット送信タイミングで、前記再送回数オーバーによる送信エラーが発生した直前のパケット内のデータと送信対象の次のデータとを結合することによって一つのパケットを生成し当該生成したパケットを前記無線ネットワークを介して前記相手端末宛に送信する再送制御手段と、
前記相手端末との通信によって、前記相手端末が有するジッタ吸収用のバッファサイズを決定する手段とを具備し、
前記再送制御手段が生成する最大パケットサイズが、前記決定されたバッファサイズ以下に制限されるように構成されていることを特徴とするデータ伝送端末装置。
A data transmission terminal device for transmitting audio or video in real time to a partner terminal via a wireless network,
Packet transmitting means for transmitting a packet of a predetermined size including the audio or video data to the counterpart terminal via the wireless network at a predetermined time interval;
If an acknowledgment for a packet sent to the wireless network is not returned from a router in the wireless network, the packet is retransmitted until the acknowledgment is returned, and the number of retransmissions of the packet exceeds a predetermined value. A means for generating a retransmission count over event indicating that a transmission error has occurred for the packet;
When the retransmission number over event occurs, the retransmission of the packet in which the transmission error has occurred due to the retransmission number excess being suspended until the next packet transmission timing arrives, and at the next packet transmission timing, the transmission error due to the retransmission number exceeding Retransmission control means for generating one packet by combining the data in the packet immediately before the occurrence of the error and the next data to be transmitted, and transmitting the generated packet to the counterpart terminal via the wireless network; ,
Means for determining a buffer size for jitter absorption of the counterpart terminal by communication with the counterpart terminal;
The data transmission terminal apparatus, wherein the maximum packet size generated by the retransmission control means is limited to be less than or equal to the determined buffer size.
無線ネットワークを介して相手端末に音声又は映像をリアルタイムに伝送するためのデータ伝送方法であって、
前記音声又は映像のデータを含む所定サイズのパケットを、前記無線ネットワークを介して前記相手端末宛に所定の時間間隔で送信するパケット送信ステップと、
前記無線ネットワークへ送出したパケットについての送信エラーが発生した場合、次のパケット送信タイミングが到来するまで前記送信エラーが発生したパケットの再送を保留し、次のパケット送信タイミングで、前記送信エラーが発生した直前のパケット内のデータと送信対象の次のデータとを結合することによって一つのパケットを生成し当該生成したパケットを前記無線ネットワークを介して前記相手端末宛に送信する再送制御ステップとを具備することを特徴とするデータ伝送方法。
A data transmission method for transmitting audio or video in real time to a partner terminal via a wireless network,
A packet transmission step of transmitting a packet of a predetermined size including the audio or video data to the counterpart terminal via the wireless network at a predetermined time interval;
When a transmission error occurs for a packet sent to the wireless network, the retransmission of the packet in which the transmission error has occurred is suspended until the next packet transmission timing arrives, and the transmission error occurs at the next packet transmission timing A retransmission control step of generating one packet by combining the data in the immediately preceding packet and the next data to be transmitted, and transmitting the generated packet to the counterpart terminal via the wireless network. A data transmission method.
連続する複数のパケット送信タイミングで連続してパケット送信エラーが発生した際に前記再送制御ステップによって生成される最大パケットサイズを、前記相手端末が有するジッタ吸収用のバッファサイズ以下に制限する制限ステップをさらに具備することを特徴とする請求項8記載のデータ伝送方法。   A limiting step of limiting a maximum packet size generated by the retransmission control step when a packet transmission error occurs continuously at a plurality of continuous packet transmission timings to a jitter absorption buffer size or less possessed by the counterpart terminal The data transmission method according to claim 8, further comprising: 前記相手端末との通信によって、前記相手端末が有するジッタ吸収用のバッファサイズを決定するバッファサイズ決定ステップをさらに具備し、前記制限ステップは、前記最大パケットサイズを、前記決定されたバッファサイズ以下に制限することを特徴とする請求項9記載のデータ伝送方法。   A buffer size determining step of determining a buffer size for jitter absorption of the counterpart terminal by communication with the counterpart terminal; and the limiting step sets the maximum packet size to be equal to or less than the determined buffer size. The data transmission method according to claim 9, wherein the data transmission method is limited.
JP2008108052A 2008-04-17 2008-04-17 Data transmission terminal device and data transmission method Withdrawn JP2009260719A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008108052A JP2009260719A (en) 2008-04-17 2008-04-17 Data transmission terminal device and data transmission method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008108052A JP2009260719A (en) 2008-04-17 2008-04-17 Data transmission terminal device and data transmission method

Publications (1)

Publication Number Publication Date
JP2009260719A true JP2009260719A (en) 2009-11-05

Family

ID=41387561

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008108052A Withdrawn JP2009260719A (en) 2008-04-17 2008-04-17 Data transmission terminal device and data transmission method

Country Status (1)

Country Link
JP (1) JP2009260719A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014133934A1 (en) * 2013-02-28 2014-09-04 Apple Inc. Redundant transmission of real time data
JPWO2013042758A1 (en) * 2011-09-21 2015-03-26 日本電気株式会社 Content distribution system, cache server, and content distribution method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2013042758A1 (en) * 2011-09-21 2015-03-26 日本電気株式会社 Content distribution system, cache server, and content distribution method
WO2014133934A1 (en) * 2013-02-28 2014-09-04 Apple Inc. Redundant transmission of real time data
CN105027516A (en) * 2013-02-28 2015-11-04 苹果公司 Redundant transmission of real time data
US9312988B2 (en) 2013-02-28 2016-04-12 Apple Inc. Redundant transmission of real time data
JP2016514409A (en) * 2013-02-28 2016-05-19 アップル インコーポレイテッド Redundant transmission of real-time data
CN105027516B (en) * 2013-02-28 2018-01-23 苹果公司 The redundant transmission of real time data

Similar Documents

Publication Publication Date Title
JP4513725B2 (en) Packet transmission apparatus, communication system, and program
US7376880B2 (en) Transmission apparatus, transmission control program, and transmission method
US7593335B2 (en) Rate based congestion control for packet networks
KR100680671B1 (en) Method and apparatus for generating error correction data, and computer-readable recording medium storing error correction data generating program
JP4323432B2 (en) Method for improving the transmission quality of streaming media
US20160323062A1 (en) Packet recovery in interactive real-time media protocol
US20050111371A1 (en) Apparatus and method for packet error correction
EP1745629A1 (en) Cooperation between packetized data bit-rate adaptation and data packet re-transmission
Liang et al. TCP-RTM: Using TCP for real time multimedia applications
Navaz et al. Optimization of Real-Time Video Over 3G Wireless Networks
JP2010119133A (en) Packet transmission device, communication system, and program
JP3871661B2 (en) Multimedia content receiving apparatus and multimedia content receiving method
EP1533969A1 (en) Loss reporting for packet-switched streaming services using loss RLE report blocks
JP2005064648A (en) Media transmission method and media transmission apparatus
JP2009260719A (en) Data transmission terminal device and data transmission method
JP2003324496A (en) Data transmission method, and packet data structure
Wang et al. Applying PR-SCTP to transport SIP traffic
JP2006352420A (en) Terminal sending and receiving quality packet including communication quality information, quality report server, and program
JP5523163B2 (en) Transmission device, transmission method, and program
Huszák et al. Source controlled and delay sensitive selective retransmission scheme for multimedia streaming
KR101384125B1 (en) Apparatus and method for generating quality of service parameter about mac layer in communication system
KR100760421B1 (en) Method of message transmission via signalling channel, and control apparatus thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100928

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20120224