KR100535888B1 - A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method - Google Patents

A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method Download PDF

Info

Publication number
KR100535888B1
KR100535888B1 KR10-2002-0071929A KR20020071929A KR100535888B1 KR 100535888 B1 KR100535888 B1 KR 100535888B1 KR 20020071929 A KR20020071929 A KR 20020071929A KR 100535888 B1 KR100535888 B1 KR 100535888B1
Authority
KR
South Korea
Prior art keywords
packet
data
parity
packets
data packet
Prior art date
Application number
KR10-2002-0071929A
Other languages
Korean (ko)
Other versions
KR20040044218A (en
Inventor
김민정
임재성
Original Assignee
주식회사 휴림인터랙티브
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 주식회사 휴림인터랙티브 filed Critical 주식회사 휴림인터랙티브
Priority to KR10-2002-0071929A priority Critical patent/KR100535888B1/en
Publication of KR20040044218A publication Critical patent/KR20040044218A/en
Application granted granted Critical
Publication of KR100535888B1 publication Critical patent/KR100535888B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control

Abstract

본 발명은 데이터통신에 적용되는 2차원 순방향 에러정정방법과, 이를 이용한 데이터통신방법에 관한 것으로, 무선 이동통신 시스템과 같은 많은 패킷에러가 발생하는 무선 통신망 환경에서 실시간 전송 특성을 가지는 멀티미디어 서비스를 제공하기 위하여 무선 통신망 상의 에러를 극복하여 서비스 품질 향상을 도모하기에 적합한 것이다. 특히, 본 발명의 2차원 순방향 에러정정방법은, 순방향 에러 정정 방법에 있어서, 송신시에, '송신측에서 전송된 데이터 패킷에 대하여 수신측이 제공하는 패킷 손실률 정보'에 따라 가변적으로 송신될 데이터 패킷들을 소정의 2차원 블록 단위로 정렬하고, 정렬된 패킷 블록의 각 행과 열에 대하여 수평 및 수직방향의 패리티 패킷을 생성 - 즉, 가변적인 무선 채널 특성을 고려하여 패킷 손실률에 따라 수직/수평 패리티 패킷의 생성 비율을 조절함 - 하며, 수신시에, 수신되는 데이터 패킷의 순서번호(Sequence Number)를 검사하여 데이터 패킷의 손실 여부를 판단하고, 데이터 패킷의 손실 발생시에, 상기 데이터 패킷들과 함께 전송되어온 수평 및 수직방향의 패리티 패킷들을 이용하여 적어도 하나의 프레임이 실려있는 손실된 데이터 패킷을 복구한다.The present invention relates to a two-dimensional forward error correction method applied to data communication, and a data communication method using the same, and provides a multimedia service having real-time transmission characteristics in a wireless communication network environment in which many packet errors such as a wireless mobile communication system occur. In order to improve the quality of service by overcoming errors on the wireless communication network. In particular, the two-dimensional forward error correction method of the present invention, in the forward error correction method, at the time of transmission, data to be transmitted variably in accordance with 'packet loss rate information provided by the receiver for data packets transmitted from the transmitter' Arrange packets in a predetermined two-dimensional block unit, and generate horizontal and vertical parity packets for each row and column of the aligned packet block -that is, vertical / horizontal parity according to packet loss rate in consideration of variable radio channel characteristics. Adjust the generation rate of the packet, and when receiving, it determines whether the data packet is lost by checking the sequence number of the received data packet, and when the loss of the data packet, together with the data packets Recovered lost data packets carrying at least one frame by using the transmitted horizontal and vertical parity packets.

Description

2차원 순방향 에러 정정방법 및 이를 이용한 데이터 통신방법 {A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method} Two-dimensional forward error correction method and data communication method using the method

본 발명은 데이터통신에 적용되는 2차원 순방향 에러정정방법과, 이를 이용한 데이터통신방법에 관한 것으로, 특히 무선 이동통신 시스템과 같은 많은 패킷에러가 발생하는 무선 통신망 환경에서 실시간 전송 특성을 가지는 멀티미디어 서비스 등에서의 효율적이며 유연한 패킷손실 복구 방안으로서 무선 통신망 상에서 연속적으로 손실되는 패킷에 대하여 수신측에서의 복구율을 높이기 위한 방법에 관한 것이다. The present invention relates to a two-dimensional forward error correction method applied to data communication, and a data communication method using the same, in particular in a multimedia service having a real-time transmission characteristics in a wireless communication network environment where many packet errors such as a wireless mobile communication system occurs As an efficient and flexible packet loss recovery scheme, the present invention relates to a method for increasing a recovery rate at a receiver for packets continuously lost on a wireless communication network.

종래, 대한민국 특허출원 제1999-0049160호의 "인터리빙 처리를 이용한 인터넷상의 손실 패킷복구방식"에서는 잉여 오디오 정보를 이용한 음성 복구방법으로 연속적으로 발생하는 패킷손실을 복구하기 위해 고음질 고비트율을 갖는 음성 코딩과 저음질 저비트율의 음성 코딩을 동시에 행하면서, 서로 다른 시간에 코딩된 오디오 정보를 하나로 패킷화하여 전송하게 하여 패킷손실이 발생한 경우 잉여 오디오 정보를 이용해서 손실 패킷을 복구하는 방법이 제안되어 있다. 하지만, 이를 위해서는 서로 다른 비트율의 음성 코딩을 하기 위해서 두 개 이상의 코덱을 지원해야 하기 때문에 패킷화 과정에서 처리 지연이 발생하는 문제점이 있다. Conventionally, Korean Patent Application No. 1999-0049160, "Lost Packet Recovery on the Internet Using Interleaving," uses a voice coding method having a high sound quality and high bit rate to recover packet loss that is continuously generated by a voice recovery method using redundant audio information. A method of recovering lost packets using redundant audio information when packet loss occurs by packetizing audio information coded at different times into one packet while simultaneously performing low coding and low bit rate speech coding has been proposed. However, for this purpose, since two or more codecs must be supported to perform voice coding at different bit rates, there is a problem that processing delay occurs during packetization.

또, 종래 "RFC 2733 - An RTP(Real-time Transport Protocol) Payload Format for Generic Forward Error Correction(J. Rosenberg와 H. Schulzrinne)"에서 제안하고 있는 4가지 순방향 에러 정정(FEC : Forward Error Correction) 기법들은, 유선 네트워크인 인터넷을 기반으로 한 정적인 손실 패킷 복구 방법이다. 즉, 전송되어야 하는 두 개 이상의 RTP(Real-time Transport Protocol) 패킷(이하, "데이터 패킷"이라 함)에 대하여 배타적 논리합(XOR : eXclusive-OR) 연산을 취한 결과로 생성된 패리티 패킷을 데이터 패킷과 함께 전송함으로써 패킷손실이 발생한 경우 추가적으로 전송된 패리티 패킷을 이용하여 손실된 패킷을 복구하는 방법을 제시한다. XOR 연산은 두 개의 데이터 패킷을 비트 스트림으로 나열한 후 가장 길이가 긴 패킷 사이즈에 맞게 짧은 패킷을 패딩(padding)시킨다. 길이가 같아진 비트 스트림에 대하여 XOR 연산을 취한 결과로 만들어진 비트 스트림이 하나의 패리티 패킷을 구성하게 된다. In addition, four forward error correction (FEC) techniques proposed by "RFC 2733-An Real-time Transport Protocol (RTP) Payload Format for Generic Forward Error Correction (J. Rosenberg and H. Schulzrinne)" are proposed. Is a static lost packet recovery method based on the Internet, which is a wired network. That is, the data packet is a parity packet generated as a result of performing an exclusive OR (XOR: eXclusive-OR) operation on two or more Real-time Transport Protocol (RTP) packets (hereinafter, referred to as "data packets") to be transmitted. The present invention proposes a method for recovering lost packets by using additionally transmitted parity packets when packet loss occurs. The XOR operation lists two data packets as bit streams and then pads short packets to fit the longest packet size. A bit stream formed as a result of performing an XOR operation on bit streams having the same length constitutes one parity packet.

이 방법은 패킷의 재전송을 필요로 하지 않기 때문에, 멀티미디어 데이터와 같은 실시간 데이터의 전송에 적합하다. 반면에, 정보 전달에 필요한 데이터 패킷 이외에 패리티 패킷을 추가로 전송하여야 하기 때문에, 네트워크의 대역폭 사용이 증가하는 단점이 있다. This method is suitable for the transmission of real-time data, such as multimedia data, because it does not require retransmission of packets. On the other hand, since the parity packet needs to be additionally transmitted in addition to the data packet required for information transmission, the bandwidth use of the network is increased.

도 1은 데이터 패킷의 XOR 연산으로 생성된 패리티 패킷의 구조도이고, 도 2는 패리티 패킷을 구성하는 세 부분 중에서 FEC 헤더의 구조를 도시한 것이다.1 is a structural diagram of a parity packet generated by an XOR operation of a data packet, and FIG. 2 illustrates a structure of an FEC header among three parts constituting a parity packet.

각 필드를 살펴보면 다음과 같다. "SN base" 필드는 패리티 패킷을 만들기 위해 사용된 데이터 패킷 중 최소 순서 번호 정보가 들어간다. 여기서, 각 데이터 패킷에는 순서 번호(SN : Sequence Number)가 포함되어 있는데, 패리티 패킷을 만드는데 사용된 데이터 패킷들에 포함된 순서 번호들 중에서 가장 작은 값을 갖는 순서 번호가 "SN base" 필드에 들어간다. "Length recovery" 필드에는 패리티 패킷을 만들기 위해 사용된 데이터 패킷의 순서 번호에 대하여 XOR 연산을 취한 값이 채워지고, "E(Extension)" 필드는 현재 '0'으로 정의되어 있다. "PT(Payload Type) recovery" 필드에는 패리티 패킷을 만들기 위해 사용된 데이터 패킷의 페이로드(Payload) 정보에 대하여 XOR 연산을 수행한 결과가, "Mask" 필드에는 패리티 패킷을 만들기 위해 사용된 데이터 패킷의 정보가 채워진다. 마지막으로 "TS(Time Stamp) recovery" 필드에는 패리티 패킷을 만들기 위해 사용된 데이터 패킷의 TS에 대하여 XOR 연산을 수행한 결과정보가 채워진다. The fields are as follows. The "SN base" field contains minimum sequence number information among data packets used to make a parity packet. Here, each data packet includes a sequence number (SN), and the sequence number having the smallest value among the sequence numbers included in the data packets used to generate the parity packet enters the "SN base" field. . The "Length recovery" field is filled with a value obtained by performing an XOR operation on the sequence number of the data packet used to make the parity packet, and the "E (Extension)" field is currently defined as '0'. In the "PT (Payload Type) recovery" field, the result of performing the XOR operation on the payload information of the data packet used to generate the parity packet, and in the "Mask" field, the data packet used to generate the parity packet. Information is filled in. Finally, the "Time Stamp (TS) recovery" field is filled with the result of performing the XOR operation on the TS of the data packet used to generate the parity packet.

도 3에서는 도 1에 도시한 패리티 패킷의 RTP 헤더 구조를 도식화하고 있다. 이 포맷은 원래 RTP 패킷(데이터 패킷)의 RTP 헤더와 같은 구조를 가진다.In FIG. 3, the RTP header structure of the parity packet shown in FIG. 1 is illustrated. This format has the same structure as the RTP header of the original RTP packet (data packet).

각 필드를 하나씩 살펴보면 다음과 같다. 먼저 "V(Version)" 필드는 현재 '2'로 RTP의 버전을 의미한다. "P(Padding)"와 "X(eXtension)", "M(Marker)" 필드는 패리티 패킷을 생성하기 위해 사용된 데이터 패킷의 P, X, M 필드의 XOR 연산을 취한 결과가 채워진다. "PT(Payload Type)" 필드는 패리티 패킷의 페이로드 타입 정보가 들어가는데 RFC 2733에서는 패리티 패킷의 페이로드 타입을 '127'로 정의하고 있다. "SN(Sequence Number)" 필드는 데이터 패킷의 순서 번호와는 별도로 패리티 패킷의 순서 번호가 하나씩 증가하며 채워지게 된다. "TS(Time Stamp)" 필드는 패리티 패킷이 생성된 순간의 시간 정보이며, "SSRC" 필드는 패리티 패킷을 생성한 소오스(source)의 식별(ID) 정보가 담기게 된다. 즉, 데이터 패킷 헤더의 "SSRC" 필드와 같은 정보가 들어가게 된다. 여기서, 동일한 송신측에 의하여 생성된 데이터 패킷의 "SSRC" 필드의 내용은 모두 동일한 값을 갖는다.Looking at each field one by one: First, the "V (Version)" field is '2' and indicates the version of the RTP. The "P (Padding)", "X (eXtension)", and "M (Marker)" fields are filled with the result of performing the XOR operation on the P, X, and M fields of the data packet used to generate the parity packet. The "PT (Payload Type)" field contains payload type information of the parity packet. In RFC 2733, the payload type of the parity packet is defined as '127'. The "SN (Sequence Number)" field is filled with the sequence number of the parity packet incremented by one, in addition to the sequence number of the data packet. The "TS (Time Stamp)" field is time information at the moment a parity packet is generated, and the "SSRC" field contains identification (ID) information of a source that generated the parity packet. That is, information such as the "SSRC" field of the data packet header is entered. Here, the contents of the "SSRC" field of the data packet generated by the same sender all have the same value.

다음으로, 실시간 트래픽의 서비스 품질을 보장하기 위해 RFC 2733에서 제안하고 있는 기본적인 FEC 기법들을 살펴보면 다음과 같다.Next, the basic FEC techniques proposed by RFC 2733 to guarantee the quality of service of real-time traffic are as follows.

FEC 기법 1 : P1, P2, f(P1,P2), P3, P4, f(P3,P4), …FEC technique 1: P1, P2, f (P1, P2), P3, P4, f (P3, P4),...

첫 번째 FEC 기법은 RFC 2733에 예제로 올라와 있는 것으로, P1, P2의 두 개의 데이터 패킷을 전송한 후에 이들 데이터 패킷 P1 및 P2에 대하여 XOR 연산을 하여 하나의 패리티 패킷 f(P1,P2)를 생성하여 전송하는 방법이다. FEC 기법 1은 P2 패킷이 손실되었을 경우에 에러 없이 수신한 P1과 f(P1,P2)를 이용해 손실된 P2 패킷을 복구할 수 있다. 이 기법은 기본적으로 50%의 오버헤드(패리티 패킷의 비율)를 가진다. The first FEC technique is shown in RFC 2733 as an example. After transmitting two data packets of P1 and P2, XOR operation is performed on these data packets P1 and P2 to generate one parity packet f (P1, P2). To send. FEC scheme 1 can recover lost P2 packets using P1 and f (P1, P2) received without error when P2 packets are lost. This technique basically has 50% overhead (rate of parity packets).

FEC 기법 2 : P1, f(P1,P2), P2, f(P2,P3), P3, f(P3,P4), P4, f(P4,P5),…FEC technique 2: P1, f (P1, P2), P2, f (P2, P3), P3, f (P3, P4), P4, f (P4, P5),...

두 번째 FEC 기법은 첫 번째와 비슷한 방법으로, 두 개의 데이터 패킷 P1, P2 사이에 이들 데이터 패킷 P1 및 P2에 대하여 XOR 연산을 하여 패리티 패킷 f(P1,P2)를 추가하는 방법으로 100%의 오버헤드를 가진다.The second FEC technique is similar to the first method, and adds parity packet f (P1, P2) by performing an XOR operation on these data packets P1 and P2 between two data packets P1 and P2. Has a head.

FEC 기법 3 : f(P1,P2), f(P1,P3), f(P1,P2,P3), f(P3,P4), f(P3,P5), f(P3,P4,P5), …FEC technique 3: f (P1, P2), f (P1, P3), f (P1, P2, P3), f (P3, P4), f (P3, P5), f (P3, P4, P5), …

세 번째 제안되어 있는 FEC 기법은 데이터 패킷(P1,P2,P3,P4,…)을 전송하지 않고 패리티 패킷(F1,F2,F3,F4,F5,F6,…)만 전송하는 방법이다. 이 방법은 패리티 패킷만을 전송하기 때문에, 이 패킷이 손실되면 복구할 수 없는 데이터 패킷이 발생할 수 있다. 이런 단점을 보완하기 위해 송신측에서 패리티 패킷을 만들 때, 데이터 패킷을 중복해서 사용함으로써, 바로 앞에서 복구되지 못했던 데이터 패킷을 뒤의 몇 개의 패리티 패킷을 받으면 복구할 수 있다. 따라서, FEC 기법 3은 FEC 기법 2에 비해 적은 오버헤드로 단일 패킷손실과 연속 2개의 패킷손실의 경우를 복구할 수 있다. 하지만, 패리티 패킷만 전송하기 때문에 송신측과 수신측의 프로세싱 시간이, 다른 FEC 기법들에 비해 긴 단점을 갖는다.The third proposed FEC scheme is to transmit only parity packets F1, F2, F3, F4, F5, F6, ... without transmitting data packets P1, P2, P3, P4, .... Because this method only transmits parity packets, loss of these packets can result in irreparable data packets. In order to make up for this drawback, when a parity packet is created at the transmitting side, the data packet is duplicated so that a data packet that has not been recovered immediately can be recovered when a few parity packets are received. Therefore, FEC scheme 3 can recover the case of single packet loss and two consecutive packet losses with less overhead than FEC scheme 2. However, since only the parity packet is transmitted, the processing time of the transmitter and the receiver is longer than that of other FEC schemes.

FEC 기법 4 : P1, P2, f(P1,P2,P3), P3, f(P1,P3,P4), f(P1,P2,P4), P4, …FEC technique 4: P1, P2, f (P1, P2, P3), P3, f (P1, P3, P4), f (P1, P2, P4), P4,...

마지막으로 제안되어 있는 FEC 기법은 3개 이상의 연속 패킷손실이 발생했을 경우에도 손실된 패킷을 복구하기 위해 제안된 것으로, 도 4에 도시한 바와 같이 데이터 패킷들에 대한 패리티 패킷을 생성하여 데이터 패킷과 패리티 패킷을 전송하는 방법이다. FEC 기법 4는 연속 패킷손실의 복구에 높은 효율을 보이지만 200%의 오버헤드를 가지는 단점이 있다. Finally, the proposed FEC scheme is designed to recover lost packets even when three or more consecutive packet losses occur. As shown in FIG. 4, a parity packet for data packets is generated to generate a parity packet. It is a method of transmitting a parity packet. FEC scheme 4 shows high efficiency in recovering continuous packet loss, but has a disadvantage of 200% overhead.

상기한 바와 같이 기존 RFC 2733에서 제안하고 있는 4가지 FEC 기법은 무선 네트워크의 채널 특성인 연집 에러(Burst Error)에 의한 패킷손실 특성을 고려하지 않아 연속적으로 손실되는 패킷은 복구하는 것이 곤란하여, 연집 에러 특성을 가지는 무선 환경에는 적합하지 않다. 설령, 연집 에러를 극복할 수 있다 하더라도, 200%의 높은 오버헤드를 가짐으로써, 제한되어 있는 망의 대역폭을 낭비하는 단점이 있다.As described above, the four FEC schemes proposed by the existing RFC 2733 do not consider packet loss due to burst error, which is a channel characteristic of a wireless network, and thus it is difficult to recover packets that are continuously lost. It is not suitable for wireless environments with error characteristics. Even if it is possible to overcome the aggregation error, by having a high overhead of 200%, there is a disadvantage of wasting the bandwidth of the limited network.

이러한 문제점을 극복하기 위해서는, 무선망 상의 연집 에러에 의한 패킷손실 극복 방안이 필요한데, 앞에서 살펴 본 기존 FEC 기법들은 무선 채널 특성을 고려하지 않았기 때문에 무선망에 적용하기에는 무리가 있다.In order to overcome this problem, it is necessary to overcome packet loss due to aggregation error on the wireless network. Since the FEC techniques described above do not consider the radio channel characteristics, it is not suitable to apply to the wireless network.

본 발명은 상기한 종래의 문제점을 해결하기 위해 안출된 것으로, 데이터 통신시에 연속적으로 발생되는 연집 에러에 의한 패킷 손실을 적은 오버헤드에 의하여 극복할 수 있도록 하되, 특히 가변적으로 변하는 통신 채널의 특성을 고려하여 전송 오류율의 변화에 따라 적응적으로 순방향 에러 정정 기법을 적용함으로써, 기존의 정적인 순방향 에러 정정 기법에 비해 전송 효율을 높일 수 있는 2차원 순방향 에러 정정방법 및 이를 이용한 데이터 통신방법을 제공하는데 다른 목적이 있다. 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned conventional problems, and it is possible to overcome packet loss due to a continuous error occurring during data communication with little overhead, but in particular, the characteristics of a variable communication channel By applying forward error correction method according to the change of transmission error rate in consideration of the above, it provides a 2D forward error correction method and data communication method that can improve the transmission efficiency compared with the existing static forward error correction method. Has a different purpose. Other objects and advantages of the present invention can be understood by the following description, and will be more clearly understood by the embodiments of the present invention. Also, it will be readily appreciated that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

상기 목적을 달성하기 위한 본 발명은, 순방향 에러 정정 방법에 있어서, 송신시에, '송신측에서 전송된 데이터 패킷에 대하여 수신측이 제공하는 패킷 손실률 정보'에 따라 가변적으로 송신될 데이터 패킷들을 소정의 2차원 블록 단위로 정렬하고, 정렬된 패킷 블록의 각 행과 열에 대하여 수평 및 수직방향의 패리티 패킷을 생성 - 즉, 가변적인 무선 채널 특성을 고려하여 패킷 손실률에 따라 수직/수평 패리티 패킷의 생성 비율을 조절함 - 하며, 수신시에, 수신되는 데이터 패킷의 순서번호(Sequence Number)를 검사하여 데이터 패킷의 손실 여부를 판단하고, 데이터 패킷의 손실 발생시에, 상기 데이터 패킷들과 함께 전송되어온 수평 및 수직방향의 패리티 패킷들을 이용하여 적어도 하나의 프레임이 실려있는 손실된 데이터 패킷을 복구하는 것을 특징으로 한다. 한편, 본 발명은, 데이터 통신 방법에 있어서, '송신측에서 전송된 데이터 패킷에 대하여 수신측이 제공하는 패킷 손실률 정보'를 이용하여 순방향 에러 정정(FEC) 처리 여부를 결정하는 FEC 결정 단계; 및 상기 순방향 에러 정정 처리가 결정됨에 따라, 송신될 데이터 패킷들을 소정의 2차원 블록 단위로 정렬하고, 정렬된 패킷 블록의 각 행과 열에 대하여 수평 및 수직방향의 패리티 패킷을 생성하여 전송하는 패리티 패킷 생성 단계를 포함하되, 상기 수신측이 상기 송신측에 정기적으로 전송하는 RTCP(RTP Control Protocol) 패킷에 포함된 패킷 손실률 정보에 따라 수평/수직 패리티 패킷의 생성 비율을 달리하는 것을 특징으로 한다. 또한, 본 발명은, 상기 데이터 패킷과 상기 패리티 패킷을 수신한 수신측에서는 수신되는 데이터패킷의 순서번호를 체크하여 데이터 패킷의 손실여부를 판단하고, 데이터 패킷이 손실된 경우 그 손실된 데이터 패킷이 복구 가능하면 플레이아웃 단위만큼 데이터 패킷이 수신되기를 기다리지 않고 수신된 상기 수평방향 패리티 패킷과 수직방향 패리티를 이용하여 즉시 복구하는 단계를 더 포함하여 이루어진 것을 특징으로 한다. 본 발명에서는 송신측에서 패리티 패킷을 생성하기 위한 데이터 패킷을 큐에 저장하고 있어야 하며, 수신측에서는 손실된 패킷을 복구하기 위해 필요한 패리티 패킷을 수신할 때까지의 지연이 요구되는데 이 지연을 줄이기 위한 방안이 필요하게 된다. 송신측에서의 지연은 데이터 패킷이 생성됨과 동시에 패킷을 복사해서 원본 패킷은 즉시 전송하고, 복사된 패킷을 큐에 저장함으로써 패리티 패킷 생성을 위해 필요한 처리 지연을 줄일 수 있다. 또한, 패킷 전송 순서를 달리하는 블록 인터리빙 기법(Interleaving)을 적용하여 무선상의 연집 에러 특성을 극복할 수 있다.그리고, 본 발명에서는 전송되는 RTP 패킷(데이터 패킷)의 피드백 정보인 RTCP(RTP Control Protocol) 패킷을 이용하여 패킷 손실률에 따라 다른 2차원 FEC 기법의 적용이 필요하게 된다. 이때, FEC 기법의 적용에 있어서, 데이터 패킷의 2차원 블록에 대한 행렬의 (i,j)값을 달리하여 오버헤드에 따라 복구율을 높이거나 낮추는 방법과, 패리티 패킷을 만들기 위해 행렬을 채워가는 과정에서 슬라이딩 윈도우 개념을 적용하여 (i,j) 크기의 슬라이딩 윈도우를 한 열씩 이동시키면서 슬라이딩 윈도우 내에 있는 데이터 패킷에 대하여 패리티 패킷을 생성하는 방법이 있다. 패리티 패킷을 생성하는 과정은 상기 설명한 것과 같다.또한, 수신된 RTCP 패킷의 정보를 이용하여 네트워크의 상황에 따라 적응 2차원 FEC 기법을 적용하기 위해서 도 3에서 살펴본 패리티 패킷의 RTP 헤더부분을 활용할 수 있다. 적용 가능한 2차원 FEC 기법의 타입을 정의하여 패리티 패킷의 페이로드 타입 정보를 담고 있는 PT(Payload Type) 필드에 적용되는 FEC 기법의 타입 정보를 담게 되면 수신측에서는 별도의 시그널링이나 협상과정 필요없이 현재 적용되고 있는 2차원 FEC 기법의 타입을 식별할 수 있다.만약, 시그널링을 위하여 SIP(Session Initiation Protocol)를 사용한다면, SIP 메시지의 Body 부분인 SDP(Session Description Protocol) 부분에 현재 적용되고 있는 FEC 기법의 정보를 담을 수 있다.또, 본 발명에서는 수신된 패리티 패킷을 이용하여 손실된 데이터 패킷을 복구하려면 추가적인 처리 지연이 발생하게 되는데, 수신측에서의 복구 지연 시간을 줄이기 위한 방안이 필요하게 된다. 이는 데이터 패킷과 패리티 패킷을 수신한 수신측에서는 수신되는 데이터 패킷의 순서번호를 체크하여 데이터 패킷의 손실여부를 판단하고, 데이터 패킷이 손실된 경우 그 손실된 데이터 패킷이 복구 가능하면 플레이아웃 단위만큼 데이터 패킷이 수신되기를 기다리지 않고 수신된 상기 수평방향 패리티 패킷과 수직방향 패리티를 이용하여 즉시 복구하면 된다.상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.The present invention for achieving the above object, in the forward error correction method, at the time of transmission, the predetermined number of data packets to be transmitted in accordance with the packet loss rate information provided by the receiver for the data packet transmitted from the transmitter side; Arrange by two-dimensional blocks of and generate horizontal and vertical parity packets for each row and column of the aligned packet block -ie, create vertical / horizontal parity packets according to packet loss rate in consideration of variable radio channel characteristics. Adjust the rate, and when receiving, examines the sequence number of the received data packet to determine whether the data packet is lost, and when the loss of the data packet occurs, the horizontal level that has been transmitted with the data packets And recovering the lost data packet carrying at least one frame using vertical parity packets. do. On the other hand, the present invention provides a data communication method comprising: an FEC determination step of determining whether to perform forward error correction (FEC) processing by using 'packet loss rate information provided by a receiver for a data packet transmitted from a transmitter'; And parity packets for arranging data packets to be transmitted in units of predetermined two-dimensional blocks, and generating horizontal and vertical parity packets for each row and column of the aligned packet blocks as the forward error correction process is determined. Including the step of generating, characterized in that the receiving rate varies the generation rate of the horizontal / vertical parity packet according to the packet loss rate information contained in the RTCP (RTP Control Protocol) packet periodically transmitted to the transmitting side. In addition, the present invention, the receiving side receiving the data packet and the parity packet determines the loss of the data packet by checking the sequence number of the received data packet, and if the data packet is lost, the lost data packet is recovered If possible, the method further includes immediately recovering the received horizontal parity packet and the vertical parity without waiting for the data packet to be received by the playout unit. According to the present invention, a data packet for generating a parity packet needs to be stored in a queue at the transmitting side, and a receiving side requires a delay until receiving a parity packet necessary for recovering a lost packet. This is necessary. The delay at the transmitting side can reduce the processing delay required for parity packet generation by copying the packet at the same time as the data packet is generated and immediately transmitting the original packet and storing the copied packet in the queue. In addition, it is possible to overcome the radio aggregation error characteristics by applying a block interleaving technique (different packet transmission order). In the present invention, the RTCP (RTP Control Protocol) that is feedback information of the transmitted RTP packet (data packet) ), It is necessary to apply different 2D FEC techniques according to the packet loss rate. In this case, in the application of the FEC technique, a method of increasing or decreasing a recovery rate according to overhead by changing (i, j) values of a matrix for a two-dimensional block of a data packet, and a process of filling a matrix to make a parity packet There is a method of generating a parity packet for a data packet within a sliding window by moving a sliding window having a size (i, j) by one column by applying the sliding window concept. The process of generating a parity packet is the same as described above. In addition, the RTP header of the parity packet described in FIG. 3 may be used to apply an adaptive two-dimensional FEC scheme according to a network situation by using the information of the received RTCP packet. have. If the FEC scheme type information is applied to the PT (Payload Type) field containing the payload type information of the parity packet by defining the applicable two-dimensional FEC scheme type, the receiver is currently applied without the need for a separate signaling or negotiation process. If the SIP (Session Initiation Protocol) is used for signaling, it is possible to identify the type of 2D FEC scheme being used. In addition, in the present invention, in order to recover a lost data packet by using the received parity packet, an additional processing delay occurs, and a method for reducing a recovery delay time at the receiving side is required. The receiving side, which receives the data packet and the parity packet, checks whether the data packet is lost by checking the sequence number of the received data packet, and if the data packet is lost, if the lost data packet is recoverable, the data is played by the playout unit. Instead of waiting for a packet to be received, the received horizontal parity packet and the vertical parity may be immediately recovered. The above-described objects, features, and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Accordingly, those skilled in the art to which the present invention pertains may easily implement the technical idea of the present invention. In addition, in describing the present invention, when it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 4는 본 발명에 따른 2차원 순방향 에러 정정방법 및 이를 이용한 데이터 통신방법을 구현하는 송신측의 전송 데이터 엔코더를 개념적으로 도시한 도면이다.4 is a diagram conceptually illustrating a two-dimensional forward error correction method and a transmission data encoder of a transmitting side implementing the data communication method using the same.

도 4에 도시된 바와 같이, RTP 패킷 생성부(12)는 입력되는 데이터 스트림을 제어부(10)의 제어에 따라서 RTP 패킷(데이터 패킷)으로 패킷화한다. 그리고, 이렇게 생성된 데이터 패킷은 본 발명에 따른 2차원 순방향 에러 정정 방법에 의한 패리티 패킷을 생성하기 위하여 큐(queue)(14)에 복사되어 일시 저장된다. 이후에, 큐(14)에 저장된 데이터 패킷은 패리티 패킷 생성부(16)에 의하여 패리티 패킷을 생성하는데 이용된다. 여기서, 제어부(10)에서는 수신측에서 전송되어 오는 RTCP 패킷을 이용하여 수신측의 에러 복구율을 조절하는 방식으로 제어를 행한다.As shown in FIG. 4, the RTP packet generator 12 packetizes an input data stream into an RTP packet (data packet) under the control of the controller 10. The data packet thus generated is copied and temporarily stored in a queue 14 to generate a parity packet by the two-dimensional forward error correction method according to the present invention. Thereafter, the data packet stored in the queue 14 is used by the parity packet generator 16 to generate the parity packet. Here, the control unit 10 performs control by adjusting the error recovery rate of the receiving side by using the RTCP packet transmitted from the receiving side.

RTP 패킷 생성부(12)에 의하여 생성된 패리티 패킷과 패리티 패킷 생성부(16)에 의하여 생성된 패리티 패킷은 패킷 순서 정렬부(18)에서 본 발명에 따른 전송 순서로 정렬된 후에 순차적으로 출력버퍼(20)를 경유하여 전송된다.The parity packet generated by the RTP packet generation unit 12 and the parity packet generated by the parity packet generation unit 16 are sequentially arranged in the transmission order according to the present invention by the packet order arrangement unit 18, and then output buffers sequentially. Is sent via 20.

본 발명에 따라 패리티 패킷을 생성하는 방법은, 첫 번째로 행렬의 (i,j)값을 달리하여 복구율을 조절하는 방법과, 두 번째로 패리티 패킷을 만들기 위해 행렬을 채워가는 과정에서 슬라이딩 윈도우 개념을 적용하여 (i,j) 크기의 슬라이딩 윈도우를 한 열씩 이동시키면서 슬라이딩 윈도우 내에 있는 데이터 패킷에 대하여 패리티 패킷을 생성하는 방법이 있다.According to the present invention, a method for generating a parity packet includes a first method of adjusting a recovery rate by changing (i, j) values of a matrix, and a second sliding window concept in filling a matrix to generate a parity packet. There is a method of generating a parity packet for a data packet within a sliding window while moving a sliding window having a size (i, j) by one column by applying.

패리티 패킷을 생성하기 위한 첫 번째 방법(행렬의 (i,j)값을 달리하여 복구율을 조절하는 방법)은, 도 6 및 도 7에 도시한 바와 같은 패리티 패킷 생성 방법을 예로 들 수 있다. 동 도면들에서는 행렬 (i,j)값이 (3,3)인 경우로 i와 j의 값이 달라지면 패킷 생성 순서도 달라진다.A first method for generating a parity packet (a method of adjusting a recovery rate by changing a value of (i, j) of a matrix) may be, for example, a parity packet generation method as illustrated in FIGS. 6 and 7. In the same figures, when the matrix (i, j) value is (3, 3), when the values of i and j are different, the packet generation order is also different.

도 6 및 도 7에 도시한 방법에서는 RFC 2733에서 제안하고 있는 FEC기법에서 패리티 패킷 생성을 위해 사용하고 있는 배타적 논리합(XOR) 연산 방법을 이용한다. The method shown in FIGS. 6 and 7 uses the exclusive OR (XOR) calculation method used for parity packet generation in the FEC method proposed in RFC 2733.

그리고, 송신측에서는 수신측에서 손실된 RTP 패킷(데이터 패킷)의 복구율을 높이기 위해, 첫째로 무선 네트워크의 전송 오류율에 따라 적응적인 데이터 패킷의 행렬 (i,j)를 선택한다. 여기서, 수신측에서 손실된 패킷의 복구율을 조정하는 방법에 대하여 설명하면 다음과 같다. 선택되는 데이터 패킷의 행렬 (i,j)값에 따라서 추가로 전송되는 패리티 패킷의 개수가 달라지고, 전송되는 패리티 패킷의 수가 많아지면 복구율도 높아지게 되며, 전송되는 패리티 패킷의 수가 적어지면 복구율도 낮아지게 된다. 예를 들면, 데이터 패킷의 행렬이 (3,3)인 경우는 오버헤드(패리티 패킷의 비율)가 66%가 되고, 데이터 패킷의 행렬이 (2,2)인 경우는 오버헤드가 100%가 되어 (3,3)일 때보다 복구율이 더 높아지게 된다. 따라서, 수신측에서의 패킷 손실율이 낮은 경우에는 데이터 패킷의 행렬을 (4,4)나 (3,4)로 적용하다가 수신측에서의 패킷 손실율이 높아지면 데이터 패킷의 행렬을 (3,3)이나 (2,3) 또는 (2,2)로 적용하게 된다.In order to increase the recovery rate of the lost RTP packet (data packet) at the receiving side, the transmitting side first selects the matrix (i, j) of the adaptive data packets according to the transmission error rate of the wireless network. Here, a method of adjusting the recovery rate of lost packets at the receiving side will be described. According to the matrix (i, j) value of the selected data packet, the number of additionally transmitted parity packets varies, and as the number of transmitted parity packets increases, the recovery rate increases. When the number of transmitted parity packets decreases, the recovery rate also decreases. You lose. For example, if the matrix of data packets is (3,3), the overhead (rate of parity packets) is 66%; if the matrix of data packets is (2,2), the overhead is 100%. The recovery rate is higher than that at (3, 3). Therefore, if the packet loss rate on the receiving side is low, apply the matrix of data packets to (4,4) or (3,4) .If the packet loss rate on the receiving side is high, then the matrix of data packets is (3,3) or (2, 3) or (2,2).

둘째로, 생성된 RTP 패킷(데이터 패킷)을 2차원 (i,j) 크기의 행렬에 배열하면서 (i,j)값에 따라 첫 번째 행이 j개 열만큼 데이터 패킷이 채워지면 j개의 데이터 패킷을 XOR 연산을 통해 하나의 수평(Horizontal) 패리티 패킷을 생성한다. 똑같은 과정을 i번째 행까지 반복하여 i개의 패리티 패킷을 생성한다. 이렇게 패리티 패킷을 생성하다가 첫 번째 열의 i번째 행이 i개만큼 채워지면 i개의 데이터 패킷을 XOR 연산을 통해 하나의 수직(Vertical) 패리티 패킷을 생성한다. 똑같은 과정을 j번째 열까지 반복하여 j개의 패리티 패킷을 생성한다. 이렇게 하면, i*j 개의 데이터 패킷과 (i+j)개의 패리티 패킷이 생성된다. 이렇게 생성된 데이터 패킷과 패리티 패킷은 하나씩 증가하는 순서 번호(Sequence Number)를 가지며, 시작 번호는 랜덤하게 선택된다. 셋째로, 수신측에서는 수신한 데이터 패킷의 순서 번호를 이용하여 손실된 데이터 패킷을 찾아낸 후 수신된 데이터 패킷과 패리티 패킷을 이용하여 손실된 패킷을 복구한다. 넷째로, 최종 수신한 데이터 패킷과 복구된 데이터 패킷을 순서 번호를 기반으로 패킷의 순서를 맞춘 후 플레이아웃 단위로 플레이아웃시킨다.Second, if the generated RTP packets (data packets) are arranged in a two-dimensional (i, j) matrix, and the first row is filled with j columns according to the value of (i, j), j data packets are filled. Generates one horizontal parity packet through an XOR operation. The same process is repeated to the i th row to generate i parity packets. When the i-th row of the first column is filled with i, the parity packet is generated. Thus, one vertical parity packet is generated through the XOR operation on the i data packets. The same process is repeated to the jth column to generate j parity packets. This generates i * j data packets and (i + j) parity packets. The data packet and the parity packet generated in this way have a sequence number incremented by one, and a start number is randomly selected. Third, the receiving side finds the lost data packet using the sequence number of the received data packet and then recovers the lost packet using the received data packet and the parity packet. Fourth, the last received data packet and the recovered data packet are ordered based on the sequence number and then played out in a playout unit.

이와 같이 본 발명에서는 네트워크의 상태에 따라 오버헤드가 다른 2차원 FEC 기법(즉, 수평방향과 수직방향으로 FEC 패리티 패킷을 생성하여 전송)을 적용시킬 수 있다.As described above, according to the present invention, a two-dimensional FEC technique (that is, generating and transmitting FEC parity packets in the horizontal and vertical directions) having different overheads may be applied.

한편, 본 발명에 따른 두 번째 패리티 패킷 생성 방법은 슬라이딩 윈도우 사이즈를 정하여 윈도우 사이즈만큼 한 열씩 이동시키면서 패리티 패킷을 생성하는 방법이다. Meanwhile, the second parity packet generation method according to the present invention is a method of generating a parity packet while determining a sliding window size and moving the column size by one column.

도 8은 본 발명에 따른 2차원 FEC 기법에서 패리티 패킷을 생성하는 또 다른 예로 슬라이딩 윈도우 사이즈가 (2,2)인 경우의 예이다. 윈도우 사이즈가 달라지면 패리티 패킷을 생성하기 위한 행렬의 크기도 그에 맞게 달라진다.8 shows another example of generating a parity packet in the 2D FEC scheme according to the present invention when the sliding window size is (2,2). If the window size is changed, the size of the matrix for generating the parity packet is also changed accordingly.

즉, 생성되는 데이터 패킷(P1,P2,...,P20,...)은 윈도우 사이즈인 행렬 (2,2)에 대응하여 도 8에 도시한 바와 같이 배열된다. 먼저, 윈도우 사이즈인 행렬 (2,2)에 대응하는 데이터 패킷(P1,P2,P3,P4)에 대해 데이터 패킷 P1과 P3의 XOR 연산을 통해 수평 패리티 패킷(F1)을 생성하고, 데이터 패킷 P1과 P2의 XOR 연산을 통해 수직 패리티 패킷(F2)을 생성하며, 데이터 패킷 P2와 P4의 XOR 연산을 통해 수평 패리티 패킷(F3)을 생성하고, 데이터, 패킷 P3과 P4의 XOR 연산을 통해 수직 패리티 패킷(F4)을 생성한다. 그후, (2,2)크기의 윈도우를 1열 만큼씩 이동시키면서 각각 이동된 슬라이딩 윈도우에 대응하는 (2,2)크기의 데이터 패킷들에 대해 상기한 바와 마찬가지로 수평 패리티 패킷들과 수직 패리티 패킷들을 생성한다.That is, the generated data packets P1, P2, ..., P20, ... are arranged as shown in Fig. 8 corresponding to the matrix (2, 2) which is the window size. First, a horizontal parity packet F1 is generated through an XOR operation of the data packets P1 and P3 on the data packets P1, P2, P3, and P4 corresponding to the matrix (2, 2), which is the window size, and the data packet P1. Vertical parity packet F2 is generated through XOR operations of P2 and P2. Horizontal parity packet F3 is generated through XOR operations of data packets P2 and P4, and vertical parity is performed through XOR operations of data, packets P3 and P4. Generate packet F4. Then, horizontal parity packets and vertical parity packets are moved as described above with respect to (2,2) size data packets corresponding to the sliding windows, respectively, moving the (2,2) size window by one column. Create

본 발명에서는 상기와 같이 생성된 데이터 패킷과 패리티 패킷을 전송함에 있어서 인터리빙 기법을 적용하여도 되고, 적용하지 않아도 된다. 이때, 인터리빙 기법은 블록 인터리빙 기법과 랜덤 인터리빙 기법 등으로 구분될 수 있다.In the present invention, an interleaving technique may or may not be applied in transmitting the data packet and the parity packet generated as described above. In this case, the interleaving technique may be classified into a block interleaving technique and a random interleaving technique.

만약, 상기 인터리빙 기법을 적용하지 않는 경우에는 송신측에서 생성된 데이터 패킷과 패리티 패킷을 전송함에 있어서 데이터 패킷과 패리티 패킷이 생성되는 순서대로 패킷을 전송한다. 즉, 상기 인터리빙 기법을 적용하지 않은 경우의 예는 도 7에 도시된 바와 같이 되어 있다.If the interleaving scheme is not applied, the packets are transmitted in the order in which the data packets and the parity packets are generated in transmitting the data packets and the parity packets generated at the transmitter. That is, an example in which the interleaving technique is not applied is as shown in FIG. 7.

그리고, 인터리빙 기법을 적용한 경우의 패리티 패킷의 생성 과정은, 상기한 인터리빙 기법을 적용하지 않은 경우와 동일하며, 생성된 데이터 패킷과 패리티 패킷의 전송 순서에 차이가 있다. 즉, 블록 인터리빙 기법의 경우는 도 9에 도시한 바와 같이 예를 들면 (3,3)의 2차원 FEC를 수행한 다음에 패킷의 전송순서를 블록을 구성하는 패킷들을 그 수직 순서로 전송하며, 랜덤 인터리빙 기법의 경우는 블록을 구성하는 패킷들을 일정한 규칙없이 랜덤하게 전송한다.The parity packet generation process when the interleaving technique is applied is the same as when the interleaving technique is not applied, and there is a difference in the transmission order of the generated data packet and the parity packet. That is, in the case of the block interleaving scheme, as shown in FIG. 9, for example, the two-dimensional FEC of (3, 3) is performed, and then the packets constituting the block are transmitted in the vertical order. In the case of a random interleaving scheme, packets constituting a block are randomly transmitted without a certain rule.

여기서, 지연에 민감한 트래픽일 경우에는 송,수신측에서의 처리 지연을 줄이는 것이 무엇보다 중요하기 때문에 인터리빙 기법의 적용에 있어서 신중한 선택이 필요하다.In the case of delay-sensitive traffic, it is important to reduce processing delays at the transmitting and receiving sides, so it is necessary to carefully select the interleaving technique.

다음으로, 송신측에서의 패킷 생성에 대하여 도 10의 흐름도 및 도 5의 엔코더 블록도를 참조하여 설명한다.Next, packet generation at the transmitting side will be described with reference to the flowchart of FIG. 10 and the encoder block diagram of FIG. 5.

먼저, 송신측의 엔코더에 전송되어야 하는 데이터 스트림이 입력되면 RTP 패킷 생성부(12)는 RTP 패킷(데이터 패킷)을 생성한다(단계 S1, S3).First, when a data stream to be transmitted to the encoder on the transmitting side is input, the RTP packet generation unit 12 generates an RTP packet (data packet) (steps S1 and S3).

이때, 엔코더의 제어부(10)에서는 전송중인 패킷의 품질(패킷 손실율)에 대해서는 피드백 정보를 담고 있는 RTCP 패킷을 수신측으로부터 전송받음으로써 알 수 있다. 즉, 수신측에서는 총 수신한 RTP 패킷(데이터 패킷) 중에서 손실된 패킷 개수, 패킷간 전송 지연(즉, delay jitter) 정보 등을 RTCP 패킷에 담아 송신측으로 피드백시킨다. 상기 RTCP 패킷은 SR(Sender Report)패킷, RR(Receiver Report)패킷, SDES(Source Description)패킷, BYE(Bye)패킷, APP(Application Specific)패킷으로 구분되며, 여기서 피드백 정보를 담고 있는 RTCP 패킷이라 함은 RR 패킷을 의미한다. At this time, the encoder control unit 10 can know the quality (packet loss rate) of the packet being transmitted by receiving the RTCP packet containing the feedback information from the receiving side. That is, the receiving side feeds back the number of packets lost from the total received RTP packets (data packets), inter-packet transmission delay (ie, delay jitter) information, etc. in the RTCP packet to the transmitting side. The RTCP packet is divided into a Sender (SR) packet, a RR (Receiver Report) packet, a SDES (Source Description) packet, a BYE (Bye) packet, and an APP (Application Specific) packet. Here, the RTCP packet includes feedback information. Means RR packet.

상기 엔코더의 제어부(10)는, 예를 들면 수신된 RTCP 패킷(즉, RR 패킷)의 필드중에서 패킷 손실 비율 정보를 담고 있는 "fraction lost"필드를 확인하여 FEC 처리 여부를 결정한다(단계 S5).The encoder control unit 10 determines, for example, whether or not FEC processing is performed by checking a "fraction lost" field containing packet loss ratio information in a field of the received RTCP packet (i.e., RR packet) (step S5). .

여기서, 패킷 손실율이 0%이면 FEC 처리를 하지 않는 것으로 결정하고, 그렇지 않은 경우 FEC 처리를 하는 것으로 결정하는 것이 바람직하다.Here, if the packet loss rate is 0%, it is preferable to decide not to perform FEC processing, and to determine not to perform FEC processing.

상기 단계 S5에서 FEC 처리를 하지 않는 것으로 결정되면, 제어부(10)의 제어에 따라 상기 RTP 패킷 생성부(12)에서 생성된 RTP 패킷(데이터 패킷)은 패킷순서 정렬부(18)에서 그 생성순서대로 정렬되어 출력버퍼(20)를 통해 전송된다(단계 S7). 여기서는 데이터 패킷을 정해진 패킷 사이즈의 크기로 생성하고 헤더와 페이로드를 채운 후 전송하게 되며, 이때 송신측에서는 생성된 데이터 패킷을 큐에 저장할 필요가 없다.If it is determined in step S5 not to perform the FEC process, the RTP packet (data packet) generated by the RTP packet generation unit 12 is controlled by the packet order arrangement unit 18 under the control of the control unit 10. Arranged as described above and transmitted through the output buffer 20 (step S7). In this case, the data packet is generated in a size of a predetermined packet size, the header and payload are filled, and then transmitted. At this time, the sender does not need to store the generated data packet in a queue.

한편, 상기 단계 S5에서 FEC 처리를 하는 것으로 결정되면, 제어부(10)는 상기 수신된 RTCP 패킷(즉, RR 패킷)의 필드중에서 패킷 손실 비율 정보를 담고 있는 "fraction lost"필드를 확인하여, 적용할 FEC 유형을 결정한다(단계 S9). 예를 들면, 패킷 손실율이 10%이상이면 FEC 유형(type) 1인 행렬 (2,2) 단위의 FEC을, 패킷 손실율이 5%~10%이면 FEC 유형(type) 2인 행렬 (2,3) 단위의 FEC을, 패킷 손실율이 3%~5%이면 FEC 유형(type) 3인 행렬 (3,3) 단위의 FEC을, 패킷 손실율이 3%미만이면 FEC 유형(type) 4인 행렬 (4,3) 단위의 FEC을 결정한다.On the other hand, if it is determined in the step S5 to perform the FEC process, the controller 10 checks the "fraction lost" field containing the packet loss rate information in the field of the received RTCP packet (ie, RR packet), and applies it. Determine the FEC type to be made (step S9). For example, if the packet loss rate is 10% or more, the FEC in units of the FEC type 1 (2, 2) unit. If the packet loss rate is 5% to 10%, the matrix (2, 3) is the FEC type 2. ) FEC in units of 3,5% of packet loss rate, FEC of type 3 (3,3) if packet loss rate is 3%, and matrix of FEC type 4 if packet loss rate is less than 3% (4 And 3) determine the FEC of the unit.

그후, 상기 단계 S9에서 결정된 FEC 유형에 따라 FEC 패리티 패킷을 생성한다(단계 S11). 즉, 상기 제어부(10)의 제어하에 상기 RTP 패킷 생성부(12)에서 생성된 RTP 패킷(데이터 패킷)들은 복사되어 큐(14)에 임시 저장되고 패리티 패킷 생성부(16)는 상기 큐에 저장된 RTP 패킷(데이터 패킷)들을 참조하여 상기 결정된 FEC 유형에 따라 2차원 FEC 패리티 패킷을 생성하게 된다(단계 S11). Thereafter, an FEC parity packet is generated according to the FEC type determined in step S9 (step S11). That is, under the control of the controller 10, the RTP packets (data packets) generated by the RTP packet generator 12 are copied and temporarily stored in the queue 14, and the parity packet generator 16 is stored in the queue. The two-dimensional FEC parity packet is generated according to the determined FEC type with reference to the RTP packets (data packets) (step S11).

여기서, 도 3에 도시한 바와 같이 패리티 패킷의 페이로드 유형 정보를 담고 있는 PT(Payload Type) 필드에 적용되는 FEC 기법의 유형 정보를 담게 되면 수신측에서는 별도의 시그널링이나 협상과정 필요 없이 현재 적용되고 있는 2차원 FEC 기법의 유형을 식별할 수 있다.In this case, as shown in FIG. 3, when the FEC scheme type information applied to the PT (Payload Type) field containing the payload type information of the parity packet is included, the receiver is currently applied without any separate signaling or negotiation process. Identify types of two-dimensional FEC techniques.

이어, 상기 단계 S11에서 생성된 FEC 패리티 패킷들은 상기 RTP 패킷 생성부(12)에서 생성된 RTP 패킷(데이터 패킷)들과 함께 패킷순서 정렬부(18)에서 그 전송 순서대로 정렬된 후에 출력버퍼(20)를 통해서 전송된다(단계 S13).Subsequently, the FEC parity packets generated in step S11 are aligned with the RTP packets (data packets) generated by the RTP packet generation unit 12 in the packet order alignment unit 18 in the transmission order and then output buffer ( 20) (step S13).

즉, FEC를 적용하는 경우에는 적용되는 2차원 FEC 기법에 따라 패리티 패킷 전송 차례가 되면 패리티 패킷을 생성하기 위한 데이터 패킷의 XOR 연산을 통해 패리티 패킷을 생성한다. 이 과정에서 패리티 패킷을 생성하기 위해 필요한 데이터 패킷은 전송되기 전에 복사되어 큐에 저장된다. 그리고, 2차원 FEC 블록에서 패리티 패킷을 생성하기 위해 큐에 저장되어 있던 복사된 데이터 패킷은 마지막 패리티 패킷이 생성되면 큐에서 지워진다. RFC 2733에 의해 패리티 패킷의 헤더 부분에 있는 마스크(Mask) 필드에 패리티 패킷을 생성하기 위해 사용된 데이터 패킷들의 순서 번호 정보가 기록되므로 수신측에서 손실된 데이터 패킷을 복구하기 위해 어떤 패리티 패킷을 사용해야 하는지를 알 수 있다.That is, in the case of applying the FEC, the parity packet is generated through the XOR operation of the data packet for generating the parity packet when the parity packet transmission turn is performed according to the applied two-dimensional FEC scheme. In this process, data packets needed to generate parity packets are copied and stored in a queue before being transmitted. The copied data packet stored in the queue to generate the parity packet in the 2D FEC block is deleted from the queue when the last parity packet is generated. Since the sequence number information of the data packets used to generate the parity packet is recorded in the mask field in the header part of the parity packet by RFC 2733, which parity packet should be used to recover the lost data packet at the receiving side. I can see.

한편, 상기 단계 S5에서 FEC 처리 유무를 결정할 때, 최초 전송시에는 RTCP 패킷이 수신되지 않으므로 특정한 FEC 유형[예를 들면, FEC 유형 4인 행렬 (4,3)단위의 FEC]를 적용하도록 하고, 그 FEC 유형을 적용하여 전송된 패킷들에 대하여 수신측에서 RTCP 패킷이 수신되면 그 수신결과에 따라서 FEC 처리 유무와 FEC 유형을 결정하도록 하는 것이 바람직하다.On the other hand, when determining the presence or absence of FEC processing in step S5, since the RTCP packet is not received at the time of the first transmission, to apply a specific FEC type (for example, FEC of the matrix (4,3) unit of FEC type 4), When the RTCP packet is received at the receiving end with respect to the transmitted packets by applying the FEC type, it is preferable to determine whether the FEC is processed and the FEC type according to the reception result.

다음으로, 수신측에서의 패킷 수신 절차에 대하여 도 11의 흐름도 및 도 6의 디코더 블록도를 참조하여 설명한다.Next, a packet receiving procedure at the receiving side will be described with reference to the flowchart of FIG. 11 and the decoder block diagram of FIG.

먼저, 상기와 같이 송신측의 엔코더에서 엔코딩된 패킷들이 수신측의 디코더에 수신되면(단계 S21), 디코더의 유형 판별부(30)에서 수신된 패킷들이 FEC 처리된 패킷들인지를 판별한다(단계 S23). 여기서, 수신된 패킷의 헤더에 있는 "PT(Payload Type)" 필드에 기입된 정보로부터 해당 패킷이 RTP 패킷인지 또는 패리티 패킷인지를 판별할 수 있다.First, when the packets encoded by the encoder at the transmitting side are received by the decoder at the receiving side as described above (step S21), it is determined whether the packets received at the decoder type determining unit 30 are FEC processed packets (step S23). ). Here, it may be determined whether the packet is an RTP packet or a parity packet from information written in the "PT (Payload Type)" field in the header of the received packet.

상기 단계 S23에서 FEC 처리가 이루어지지 않은 것으로 판단되면, 상기 수신된 패킷은 디패킷타이저(36)에서 분해되어 원래의 데이터 스트림으로 복원되어 플레이아웃 버퍼(37)에 입력된다. 이때, 버퍼(37)에 입력되는 데이터 스트림 비트는 소정 단위로 플레이아웃되도록 한다(단계 S25~S31).If it is determined in step S23 that no FEC processing has been performed, the received packet is decomposed by the depacketizer 36, restored to the original data stream, and input into the playout buffer 37. At this time, the data stream bits input to the buffer 37 are played out in predetermined units (steps S25 to S31).

한편, 상기 단계 S23에서 FEC 처리가 이루어진 것으로 판단되면, 상기 수신된 패킷들에 대하여 처리된 FEC 유형을 체크한다(단계 S33). 여기서, 송신측 엔코더에서 패리티 패킷의 PT(Payload Type) 필드에 FEC 유형을 기록해두었다면 수신측 디코더의 유형판별부(30)에서는 패리티 패킷의 PT(Payload Type) 필드를 참조하면 FEC 유형을 용이하게 알 수 있다.On the other hand, if it is determined in step S23 that the FEC processing has been performed, the processed FEC type is checked for the received packets (step S33). Here, if the FEC type is recorded in the PT (Payload Type) field of the parity packet in the transmitting encoder, the type discriminator 30 of the receiving decoder may refer to the PT (Payload Type) field of the parity packet to easily determine the FEC type. Able to know.

그후, 상기 수신되는 패킷들은 RTP 패킷(데이터 패킷)과 FEC 패리티 패킷으로 분리되어 RTP 패킷(데이터 패킷)은 RTP 버퍼(32)에 일시 저장되고, FEC 패리티 패킷은 FEC 버퍼(33)에 일시 저장된다(단계 S35, S37).Thereafter, the received packets are separated into an RTP packet (data packet) and an FEC parity packet so that the RTP packet (data packet) is temporarily stored in the RTP buffer 32, and the FEC parity packet is temporarily stored in the FEC buffer 33. (Steps S35, S37).

이어, 패킷손실판별부(34)에서는 상기 RTP 버퍼(32)에 순차 저장된 RTP 패킷(데이터 패킷)을 순차 읽어내서 RTP 패킷(데이터 패킷)의 순서번호(Sequence Number)를 체크하여 패킷 손실여부를 판단한다(단계 S39, S41).Subsequently, the packet loss discrimination unit 34 sequentially reads the RTP packets (data packets) stored in the RTP buffer 32 and checks the sequence numbers of the RTP packets (data packets) to determine whether the packets are lost. (Steps S39, S41).

상기 단계 S41에서 패킷 손실이 없는 것으로 판단되는 경우에는, 상기 RTP 버퍼(32)에 읽어낸 RTP 패킷(데이터 패킷)은 디패킷타이저(36)로 전달되어 상기한 단계 S25~S31의 과정에 의하여 처리된다.If it is determined in step S41 that there is no packet loss, the RTP packet (data packet) read into the RTP buffer 32 is transferred to the depacketizer 36, and the process of steps S25 to S31 described above. Is processed.

한편, 상기 단계 S41에서 패킷 손실이 있는 것으로 판단되는 경우에는, 상기 패킷손실판별부(34)는 상기 유형판별부(30)에서 판별한 FEC 유형에 근거하여 손실된 패킷이 복구가능한지를 판단하게 된다(단계 S43).On the other hand, if it is determined in step S41 that there is a packet loss, the packet loss discrimination unit 34 determines whether the lost packet is recoverable based on the FEC type determined by the type discrimination unit 30. (Step S43).

상기 단계 S43에서 복구가능한 것으로 판단되면, 패킷복구부(35)에서는 FEC 버퍼(33)에 저장된 패리티 패킷들을 이용하여 손실된 RTP 패킷(데이터 패킷)을 복구한다(단계 S45). 여기서, 복구하기 위해 필요한 패리티 패킷과 데이터 패킷들을 패리티 패킷을 생성할 때와 마찬가지로 XOR 연산을 통해 손실된 패킷을 복구하고, 순서 번호에 따라 복구된 데이터 패킷은 디패킷타이저(36)로 전달되어 상기한 단계 S25~S31의 과정에 의하여 처리된다.If it is determined in step S43 that the recovery is possible, the packet recovery unit 35 recovers the lost RTP packet (data packet) using the parity packets stored in the FEC buffer 33 (step S45). Here, the parity packet and the data packets necessary for the recovery are recovered through the XOR operation as in the case of generating the parity packet, and the recovered data packet is transmitted to the depacketizer 36 according to the sequence number. The process is performed by the above steps S25 to S31.

한편, 상기 단계 S43에서 복구가능하지 않은 것으로 판단되면, 패킷복구부(35)에서는 손실된 RTP 패킷(데이터 패킷)에 대하여 손실된 데이터를 "0" 또는 "1"로 패딩(padding)한 후(단계 S47), 그 패딩 처리된 데이터 패킷은 디패킷타이저(36)로 전달되어 상기한 단계 S25~S31의 과정에 의하여 처리된다.On the other hand, if it is determined in step S43 that it is not recoverable, the packet recovery unit 35 pads the lost data with "0" or "1" for the lost RTP packet (data packet) ( Step S47), the padded data packet is transferred to the depacketizer 36 and processed by the above-described steps S25 to S31.

본 발명에 따른 2차원 FEC 기법의 경우는 수평 패리티 패킷과 수직 패리티 패킷으로 하나의 데이터 패킷에 대해 두 번씩 패킷복구 가능 여부를 검사하기 때문에 기존 RFC 2733에 제안되어 있는 기법들에 비해 적은 오버헤드로 복구율을 높일 수 있다.이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.In the case of the 2D FEC scheme according to the present invention, since it is possible to check whether packet recovery is possible twice for one data packet with a horizontal parity packet and a vertical parity packet, there is less overhead than the techniques proposed in the conventional RFC 2733. The recovery rate can be increased. The present invention described above can be variously substituted, modified, and changed without departing from the technical spirit of the present invention for those skilled in the art. It is not limited by the embodiment and the accompanying drawings.

상기와 같은 본 발명은, 무선상에서 패킷손실 발생시 수평 패리티 패킷과 수직 패리티 패킷을 동시에 전송하는 2차원 FEC 기법을 적용함으로써 무선 채널의 연집 에러 특성을 극복하여 실시간 멀티미디어 서비스를 제공함에 있어서 요구되는 품질을 향상시킬 수 있다.The present invention as described above, by applying a two-dimensional FEC technique for transmitting a horizontal parity packet and a vertical parity packet at the same time when the packet loss occurs over the air to overcome the error characteristics of the radio channel by providing a real-time multimedia service Can be improved.

특히, 본 발명은 가변적인 무선 채널 특성을 고려하여 패킷 손실률에 따라 오버헤드를 변경함으로 인해서 전송 효율을 높일 수 있으며, 인터리빙 기법도 다양하게 적용시킬 수 있어서 무선망 상태가 좋지 않은 경우 연집 에러를 극복할 수 있는 효과가 있다.In particular, the present invention can improve the transmission efficiency by changing the overhead according to the packet loss rate in consideration of the variable radio channel characteristics, and can also be applied to various interleaving techniques to overcome the aggregation error when the wireless network conditions are not good It can work.

뿐만 아니라, 본 발명은 패리티 패킷을 생성하고 손실된 패킷을 복구하는 과정에서 XOR 연산만을 사용하기 때문에 복잡도와 처리 지연을 줄여 전체적인 성능을 향상시킬 수 있는 효과가 있다.In addition, the present invention uses only the XOR operation in the process of generating the parity packet and recovering the lost packet, thereby improving overall performance by reducing complexity and processing delay.

본 발명은 이렇게 무선상에서 패킷손실에 대해서 적응적 2차원 FEC 기법을 적용함으로써, 연속적인 에러에 대해서 그 환경에 맞는 FEC 기법을 사용함에 따라 무선 상의 데이터 전송 품질을 보장할 수 있고 원활한 고속의 멀티미디어 서비스를 제공할 수 있는 효과가 있다.By applying the adaptive two-dimensional FEC scheme for packet loss over the air, the present invention can guarantee the data transmission quality over the air by using the FEC scheme suitable for the environment against continuous errors, and facilitates high-speed multimedia service. There is an effect that can provide.

삭제delete

도 1은 일반적인 순방향 에러 정정(Forward Error Correction; FEC)에 의한 패리티 패킷의 구조도.1 is a structural diagram of a parity packet by general forward error correction (FEC).

도 2는 도 1의 패리티 패킷의 FEC 헤더 구조도.2 is an FEC header structure diagram of the parity packet of FIG.

도 3은 도 1의 패리티 패킷의 RTP(Real-time Transport Protocol) 헤더 구조도.3 is a real-time transport protocol (RTP) header structure diagram of the parity packet of FIG.

도 4는 본 발명에 따른 2차원 순방향 에러 정정방법을 구현하는 엔코더의 개념도.4 is a conceptual diagram of an encoder implementing a two-dimensional forward error correction method according to the present invention.

도 5는 본 발명에 따른 2차원 순방향 에러 정정방법을 구현하는 디코더의 개념도.5 is a conceptual diagram of a decoder implementing a two-dimensional forward error correction method according to the present invention.

도 6 및 도 7은 본 발명에 따른 2차원 순방향 에러 정정방법에서의 FEC 패리티 패킷 생성 및 패킷 전송순서과정에 대한 일 실시예를 설명하기 위한 도면.6 and 7 are diagrams for explaining an embodiment of the FEC parity packet generation and packet transmission procedure in the two-dimensional forward error correction method according to the present invention.

도 8은 본 발명에 따른 2차원 순방향 에러 정정방법에서의 FEC 패리티 패킷 생성과정에 대한 다른 실시예를 설명하기 위한 도면.8 is a view for explaining another embodiment of the FEC parity packet generation process in the two-dimensional forward error correction method according to the present invention.

도 9는 본 발명에 따른 2차원 순방향 에러 정정방법에서의 FEC 패리티 패킷 생성 및 패킷 전송순서과정에 대한 또 다른 실시예를 설명하기 위한 도면.9 is a view for explaining another embodiment of the FEC parity packet generation and packet transmission procedure in the two-dimensional forward error correction method according to the present invention.

도 10은 본 발명에 따른 2차원 순방향 에러 정정방법을 이용하여 전송측에서 패킷을 처리하는 흐름을 도시한 흐름도.10 is a flowchart illustrating a flow of processing a packet at a transmitting side using a two-dimensional forward error correction method according to the present invention.

도 11은 본 발명에 따른 2차원 순방향 에러 정정방법을 이용하여 전송된 패킷을 수신측에서 수신하여 처리하는 흐름을 도시한 흐름도.11 is a flowchart illustrating a flow of receiving and processing a packet transmitted using a two-dimensional forward error correction method according to the present invention.

Claims (10)

순방향 에러 정정 방법에 있어서, In the forward error correction method, 송신시에, '송신측에서 전송된 데이터 패킷에 대하여 수신측이 제공하는 패킷 손실률 정보'에 따라 가변적으로 송신될 데이터 패킷들을 소정의 2차원 블록 단위로 정렬하고, 정렬된 패킷 블록의 각 행과 열에 대하여 수평 및 수직방향의 패리티 패킷을 생성 - 즉, 가변적인 무선 채널 특성을 고려하여 패킷 손실률에 따라 수직/수평 패리티 패킷의 생성 비율을 조절함 - 하며,At the time of transmission, the data packets to be transmitted are variably arranged in predetermined two-dimensional block units according to the packet loss rate information provided by the receiver for the data packets transmitted from the transmitter, and each row of the aligned packet blocks Generates parity packets in the horizontal and vertical directions with respect to the column -that is, adjusts the generation rate of the vertical and horizontal parity packets according to the packet loss rate in consideration of the variable radio channel characteristics . 수신시에, 수신되는 데이터 패킷의 순서번호(Sequence Number)를 검사하여 데이터 패킷의 손실 여부를 판단하고, 데이터 패킷의 손실 발생시에, 상기 데이터 패킷들과 함께 전송되어온 수평 및 수직방향의 패리티 패킷들을 이용하여 적어도 하나의 프레임이 실려있는 손실된 데이터 패킷을 복구하는 것을 특징으로 하는 2차원 순방향 에러 정정방법.Upon reception, the sequence number of the received data packet is examined to determine whether the data packet is lost, and when a loss of the data packet occurs, horizontal and vertical parity packets transmitted together with the data packets are determined. And recovering the lost data packet carrying at least one frame using the two-dimensional forward error correction method. 데이터 통신 방법에 있어서,In the data communication method, '송신측에서 전송된 데이터 패킷에 대하여 수신측이 제공하는 패킷 손실률 정보'를 이용하여 순방향 에러 정정(FEC) 처리 여부를 결정하는 FEC 결정 단계; 및An FEC determination step of determining whether to perform forward error correction (FEC) by using 'packet loss rate information provided by a receiver for a data packet transmitted from a transmitter'; And 상기 순방향 에러 정정 처리가 결정됨에 따라, 송신될 데이터 패킷들을 소정의 2차원 블록 단위로 정렬하고, 정렬된 패킷 블록의 각 행과 열에 대하여 수평 및 수직방향의 패리티 패킷을 생성하여 전송하는 패리티 패킷 생성 단계를 포함하되, As the forward error correction process is determined, parity packet generation is performed, in which data packets to be transmitted are arranged in predetermined two-dimensional blocks, and horizontal and vertical parity packets are generated and transmitted for each row and column of the aligned packet blocks. Including steps, 상기 수신측이 상기 송신측에 정기적으로 전송하는 RTCP(RTP Control Protocol) 패킷에 포함된 패킷 손실률 정보에 따라 수평/수직 패리티 패킷의 생성 비율을 달리하는 것을 특징으로 하는 데이터 통신방법.And a generation rate of a horizontal / vertical parity packet according to packet loss rate information included in an RTCP packet periodically transmitted to the transmitting side by the receiving side. 제 2 항에 있어서,The method of claim 2, 상기 FEC 결정 단계에서는, 상기 소정의 블록 단위로 결정하고, In the FEC determination step, the predetermined block unit is determined, 상기 패리티 생성 단계에서는, 상기 결정된 블록 단위로 송신될 데이터 패킷을 정렬하는 것을 특징으로 하는 데이터 통신방법.In the parity generation step, the data packet to be transmitted in units of the determined block is arranged. 제 3 항에 있어서,The method of claim 3, wherein 상기 데이터 패킷은, RTP(Real-time Transport Protocol) 패킷이고, The data packet is a Real-time Transport Protocol (RTP) packet, 상기 패킷 손실률 정보는, 상기 RTCP(RTP Control Protocol) 패킷에 포함되어 있는 것을 특징으로 하는 데이터 통신방법.The packet loss rate information is contained in the RTCP (RTP Control Protocol) packet. 제 4 항에 있어서,The method of claim 4, wherein 상기 생성된 패리티 패킷의 RTP 헤더 부분의 페이로드 타입(Payload Type) 필드에는, In the Payload Type field of the RTP header portion of the generated parity packet, 상기 블록 단위 정보가 포함되는 것을 특징으로 하는 데이터 통신방법.And the block unit information is included. 제 3 항에 있어서,The method of claim 3, wherein 상기 FEC 결정 단계에서는, In the FEC determination step, 상기 패킷 손실률이 낮으면 데이터 패킷 수가 많은 블록 단위를 결정하고, 상기 패킷 손실률이 높으면 데이터 패킷 수가 적은 블록 단위를 결정하는 것을 특징으로 하는 데이터 통신방법.And determining a block unit having a high number of data packets when the packet loss rate is low, and determining a block unit having a low number of data packets when the packet loss rate is high. 제 2 항에 있어서, The method of claim 2, 상기 패리티 패킷 생성 단계에서는,In the parity packet generation step, 상기 수평방향 및 수직방향 패리티 패킷을 생성하기 위하여 필요한 데이터 패킷을 복사한 후, 원본 데이터 패킷은 즉시 전송하고, 상기 복사된 데이터 패킷을 큐에 저장하고 있다가 상기 수평방향 및 수직방향 패리티 패킷의 생성을 위하여 사용하는 것을 특징으로 하는 데이터 통신방법.After copying the data packet necessary to generate the horizontal and vertical parity packet, the original data packet is immediately transmitted, and the copied data packet is stored in a queue before the generation of the horizontal and vertical parity packet. Data communication method, characterized in that used for. 제 2 항 내지 제 7 항 중 어느 한 항에 있어서,The method according to any one of claims 2 to 7, 상기 패리티 패킷 생성 단계에서 데이터 패킷들과 패리티 패킷들의 전송 순서는,In the parity packet generation step, the transmission order of data packets and parity packets is 인터리빙 기법 혹은 논-인터리빙기법 중 어느 하나를 적용하는 것을 특징으로 하는 데이터 통신방법.A data communication method comprising applying an interleaving technique or a non-interleaving technique. 제 8 항에 있어서,The method of claim 8, 상기 인터리빙 기법은,The interleaving technique, 블록 인터리빙 기법 혹은 랜덤 인터리빙 기법 중 어느 하나를 적용하는 것을 특징으로 하는 데이터 통신방법.A data communication method comprising applying a block interleaving technique or a random interleaving technique. 제 2 항 내지 제 7 항 중 어느 한 항에 있어서,The method according to any one of claims 2 to 7, 상기 데이터 패킷과 상기 패리티 패킷을 수신한 수신측에서는 수신되는 데이터패킷의 순서번호를 체크하여 데이터 패킷의 손실여부를 판단하고, 데이터 패킷이 손실된 경우 그 손실된 데이터 패킷이 복구 가능하면 플레이아웃 단위만큼 데이터 패킷이 수신되기를 기다리지 않고 수신된 상기 수평방향 패리티 패킷과 수직방향 패리티를 이용하여 즉시 복구하는 단계Receiving side receiving the data packet and the parity packet determines whether the data packet is lost by checking the sequence number of the received data packet, and if the lost data packet is recoverable by the playout unit if the data packet is lost. Immediately recovering using the received horizontal parity packet and the vertical parity without waiting for a data packet to be received; 를 더 포함하는 데이터 통신방법.Data communication method further comprising.
KR10-2002-0071929A 2002-11-19 2002-11-19 A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method KR100535888B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0071929A KR100535888B1 (en) 2002-11-19 2002-11-19 A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0071929A KR100535888B1 (en) 2002-11-19 2002-11-19 A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method

Publications (2)

Publication Number Publication Date
KR20040044218A KR20040044218A (en) 2004-05-28
KR100535888B1 true KR100535888B1 (en) 2005-12-09

Family

ID=37340483

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0071929A KR100535888B1 (en) 2002-11-19 2002-11-19 A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method

Country Status (1)

Country Link
KR (1) KR100535888B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130006380A (en) * 2011-07-08 2013-01-16 삼성전자주식회사 Method for generating forward error correction packet in a multimedia system and tranmission/recetion method and apparatus thereof

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100362782C (en) 2004-08-24 2008-01-16 华为技术有限公司 Method for recovering drop-out data unit
KR20120137198A (en) 2011-06-11 2012-12-20 삼성전자주식회사 Apparatus and method for transmitting and receiving packet in communication system
US9167279B2 (en) 2011-08-22 2015-10-20 Electronics & Telecommunications Research Institute Method for payload formatting and deformatting for burst loss recovery
US9014037B2 (en) 2011-10-28 2015-04-21 Electronics And Telecommunications Research Institute Apparatus and method for transmitting/receiving data in communication system
EP2961176B1 (en) * 2014-06-23 2017-01-11 Harman Becker Automotive Systems GmbH Correcting errors in a digital media transport stream

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08237139A (en) * 1994-10-31 1996-09-13 Internatl Business Mach Corp <Ibm> Coding device and its method
KR0155702B1 (en) * 1992-08-13 1998-12-15 강진구 2-division error correction method and decoder
JPH11298449A (en) * 1998-04-13 1999-10-29 Sekisui Chem Co Ltd Data transmission method, data reception method and its system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0155702B1 (en) * 1992-08-13 1998-12-15 강진구 2-division error correction method and decoder
JPH08237139A (en) * 1994-10-31 1996-09-13 Internatl Business Mach Corp <Ibm> Coding device and its method
JPH11298449A (en) * 1998-04-13 1999-10-29 Sekisui Chem Co Ltd Data transmission method, data reception method and its system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130006380A (en) * 2011-07-08 2013-01-16 삼성전자주식회사 Method for generating forward error correction packet in a multimedia system and tranmission/recetion method and apparatus thereof
KR102048452B1 (en) * 2011-07-08 2019-12-05 삼성전자주식회사 Method for generating forward error correction packet in a multimedia system and tranmission/recetion method and apparatus thereof

Also Published As

Publication number Publication date
KR20040044218A (en) 2004-05-28

Similar Documents

Publication Publication Date Title
KR100554062B1 (en) Method for multimedia communication over packet channels
CN102984090B (en) A kind of for sending real-time communication event data to the transmitter of the wobble buffer of receiver and method thereof
TWI419565B (en) Method for buffering packets of a media stream, system for buffering a media stream, device and chipset for transmitting, server and computer program product
JP5661693B2 (en) System and method for lost packet recovery along with congestion avoidance
KR102295788B1 (en) Forward Error Correction in Data Streaming
JP4475235B2 (en) Content encoding, distribution and reception method, apparatus, system, and program
CN101341702B (en) Network processing node and method for manipulating packets
KR100612003B1 (en) Apparatus for transmitting/receiving bitstream in network and method thereof
EP1094630A2 (en) Packet loss control method for real-time multimedia communications
CN103023813B (en) Wobble buffer
KR20080059508A (en) Data communication system, data transmitting apparatus, data transmitting method, and method for determining packet size and redundancy
CN102984091B (en) Wobble buffer
CN110224793B (en) Self-adaptive FEC method based on media content
JP2003092564A (en) Negotiated/dynamic error correction for streamed media
KR101983032B1 (en) Apparatus and method for transmitting and receiving packet in broadcasting and communication system
US20010041981A1 (en) Partial redundancy encoding of speech
JP2006510301A (en) Switching method of MDC / scalable coding
US20150006991A1 (en) Graceful degradation-forward error correction method and apparatus for performing same
JP5344541B2 (en) Data transmission apparatus, transmission method and program
US7162541B2 (en) Apparatus and method for providing data service in a wireless system
KR100535888B1 (en) A Two Dimensional Forward Error Correction Method And Data Communication Method Using The Method
CN110868616A (en) Low-delay high-reliability video transmission method in 5G network
US10833710B2 (en) Bandwidth efficient FEC scheme supporting uneven levels of protection
KR20040106440A (en) Error-resilient video transmission system for wireless LAN utilizing data partitioning and unequal error protection
JP5376855B2 (en) Data transmission apparatus and data transmission method

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121130

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141128

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20200106

Year of fee payment: 15