KR20100081902A - Method for transmitting and receiving data using random linear coding - Google Patents

Method for transmitting and receiving data using random linear coding Download PDF

Info

Publication number
KR20100081902A
KR20100081902A KR1020090042482A KR20090042482A KR20100081902A KR 20100081902 A KR20100081902 A KR 20100081902A KR 1020090042482 A KR1020090042482 A KR 1020090042482A KR 20090042482 A KR20090042482 A KR 20090042482A KR 20100081902 A KR20100081902 A KR 20100081902A
Authority
KR
South Korea
Prior art keywords
data packets
encoded data
coefficient matrix
transmitting
original data
Prior art date
Application number
KR1020090042482A
Other languages
Korean (ko)
Other versions
KR101605323B1 (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 엘지전자 주식회사
Publication of KR20100081902A publication Critical patent/KR20100081902A/en
Application granted granted Critical
Publication of KR101605323B1 publication Critical patent/KR101605323B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

PURPOSE: A method for transmitting and receiving data using random linear coding is provided to adaptively receive codes data block according to channel environment from a receiving end, thereby effectively using radio resource. CONSTITUTION: A plurality of data packet corresponding to one code unit is transmitted to a receiving end(S511). A fixed numbers of coded data packet is generated(S512). The fixed numbers of coded data packet is generated by coding random linear coding a plurality of original data packet into one code unit. One or more among the generated coded data packet is transmitted to a receiving end(S513). One or more coded data packet is random linear coded by using a first coefficient matrix.

Description

랜덤선형부호화를 사용한 데이터 송수신 방법{Method for transmitting and receiving Data using Random Linear Coding}Method for transmitting and receiving data using Random Linear Coding}

본 발명은 무선접속 시스템에 관한 것으로서, 보다 상세히는 랜덤 선형 부호화를 이용한 통신방법에 관한 것이다.The present invention relates to a wireless access system, and more particularly, to a communication method using random linear coding.

인터넷을 기반으로 하는 통신시스템은 일반적으로 5 계층으로 이루어진 프로토콜 스택(Protocol Stack)으로 구성되며, 각 프로토콜 계층의 구성은 도 1과 같다.A communication system based on the Internet generally consists of a protocol stack consisting of five layers, and the configuration of each protocol layer is shown in FIG. 1.

도 1은 일반적으로 사용되는 인터넷 프로토콜 스택의 일례를 나타내는 도면이다.1 is a diagram illustrating an example of a commonly used Internet protocol stack.

도 1을 참조하면, 프로토콜 스택의 최상위 계층은 응용계층으로 FTP/HTTP/SMTP/RTP 등의 네트워크 애플리케이션을 지원하기 위한 계층이다. 다음으로, TCP/UDP 프로토콜을 사용하여 호스트 간의 데이터 전송 기능을 담당하는 전송계층과 IP 프로토콜을 통한 소스(Source)에서 목적지(Destination)로의 데이터 전송 경로 설정을 수행하는 네트워크 계층이 있다. 또한, 프로토콜 스택은 PPP/이더넷 프로토콜 등을 통해 주변 네트워크 개체간의 데이터 전송 및 매체접속제어(MAC: Media Access Control)를 담당하는 링크계층과 유선 또는 무선 매체를 이용한 데이터의 비트 단위의 전송을 수행하는 최하위 계층인 물리계층으로 구성된다.Referring to FIG. 1, the top layer of the protocol stack is an application layer, which is a layer for supporting network applications such as FTP / HTTP / SMTP / RTP. Next, there are a transport layer that performs data transmission function between hosts using a TCP / UDP protocol and a network layer that performs data transmission path setting from a source to a destination through an IP protocol. In addition, the protocol stack performs bit-by-bit transmission of data using wired or wireless media and a link layer that is responsible for data transmission and media access control (MAC) between peripheral network entities through a PPP / Ethernet protocol. It is composed of the lowest physical layer.

도 2는 일반적으로 사용되는 데이터 전송을 위한 각 계층의 동작을 나타낸 도면이다.2 is a diagram illustrating the operation of each layer for data transmission generally used.

도 2를 참조하면, 송신단의 전송계층에서는 상위계층인 응용계층으로부터 수신한 메시지 페이로드(Payload)에 헤더 정보를 추가하여 새로운 데이터 유닛을 생성한다. 전송계층은 이를 다시 하위계층인 네트워크 계층으로 전송한다. 네트워크 계층에서는 전송계층으로부터 수신한 데이터에 네트워크 계층에서 사용되는 헤더 정보를 추가하여 새로운 데이터 유닛을 생성하고, 이를 다시 하위계층인 링크계층으로 전송한다. 링크계층에서는 상위계층으로부터 수신한 데이터에 링크계층에서 사용하는 헤더 정보를 추가하여 새로운 데이터 유닛을 생성하고, 이를 다시 하위계층인 물리계층으로 전송한다. 물리계층은 링크계층으로부터 수신한 데이터 유닛을 수신단으로 전송한다. Referring to FIG. 2, the transmission layer of the transmitting end adds header information to a message payload received from an upper application layer to generate a new data unit. The transport layer sends it back to the lower network layer. In the network layer, a new data unit is generated by adding header information used in the network layer to data received from the transport layer, and then transmitted to the link layer, which is a lower layer. The link layer adds header information used in the link layer to data received from the upper layer to generate a new data unit, and transmits it to the lower layer physical layer. The physical layer transmits the data unit received from the link layer to the receiving end.

수신단의 물리계층은 송신단으로부터 데이터 유닛을 수신하여 자신의 상위 계층인 링크계층으로 데이터 유닛을 송신한다. 수신단에서는 각 계층별로 추가된 헤더를 처리하고, 헤더를 제거한 메시지 페이로드를 상위계층으로 전송한다. 이와 같은 과정을 통해 전송측과 수신단간의 데이터 송수신이 수행된다.The physical layer of the receiving end receives the data unit from the transmitting end and transmits the data unit to its link layer, which is its upper layer. The receiver processes the header added for each layer and transmits the message payload from which the header is removed to the upper layer. Through this process, data transmission and reception between the transmitting side and the receiving end are performed.

도 2와 같이 송신단과 수신단간에 데이터 송수신을 위해 각 계층에서는 프로토콜 헤더를 추가하여 데이터 어드레싱(data addressing), 라우팅(routing), 포워딩(forwarding) 및 데이터 재전송 등의 제어 기능을 수행한다.As shown in FIG. 2, a protocol header is added at each layer to transmit and receive data between a transmitter and a receiver, thereby performing control functions such as data addressing, routing, forwarding, and data retransmission.

도 3은 일반적으로 사용되는 IEEE 802.16 시스템 기반의 무선 이동통신 시스템에서 정의하는 프로토콜 계층 모델을 나타낸다.3 illustrates a protocol layer model defined in a wireless mobile communication system based on an IEEE 802.16 system.

도 3을 참조하면, 링크 계층에 속하는 MAC 계층은 3개의 부계층으로 구성될 수 있다. 서비스 지정 수렴 부계층(Service-Specific CS: Service-Specific Convergence Sublayer)은 CS SAP(Service Access Point)를 통하혀 수신된 외부 네트워크의 데이터를 MAC 부계층(CPS: Common Part Sublayer)의 MAC SDU(Service Data Unit)들로 변형시키거나 맵핑시킬 수 있다. 이 계층에서는 외부 네트워크의 SDU들을 구분한 후, 해당되는 MAC 서비스 플로우 식별자(SFID: Service Flow IDentifier)와 CID(Connection IDentifier)를 연관시키는 기능이 포함될 수 있다.Referring to FIG. 3, the MAC layer belonging to the link layer may consist of three sublayers. Service-Specific Convergence Sublayer (Service-Specific CS) is a MAC SDU (Service-specific MAC) of MAC Common Layer Sublayer (CPS) that receives data from external network received through CS SAP (Service Access Point). Can be transformed or mapped into Data Units. This layer may include a function of classifying SDUs of an external network and then associating a corresponding MAC Service Flow IDentifier (SFID) with a Connection IDentifier (CID).

다음으로 MAC CPS는 시스템 액세스, 대역폭 할당, 연결(connection) 설정 및 관리와 같은 MAC의 핵심적인 기능을 제공하는 계층으로, MAC SAP를 통해 다양한 CS들로부터 특정 MAC 연결에 의해서 분류된 데이터를 수신한다. 이때 물리 계층을 통한 데이터 전송과 스케쥴링에 QoS(Quality of Service)가 적용될 수 있다.Next, MAC CPS is a layer that provides the core functions of MAC such as system access, bandwidth allocation, connection establishment and management, and receives data classified by specific MAC connection from various CSs through MAC SAP. . In this case, quality of service (QoS) may be applied to data transmission and scheduling through the physical layer.

또한, 암호화 부계층(Security Sublayer)는 인증(Authentication), 보안키 교환(security key exchange)과 암호화 기능을 제공할 수 있다.In addition, the security sublayer may provide authentication, security key exchange, and encryption functions.

상술된 계층 구조에서, 보다 신뢰성있게 송신단이 수신단에 데이터를 전송하기 위해 다양한 방법들이 사용될 수 있다. In the above-described hierarchical structure, various methods may be used for the transmitting end to transmit data to the receiving end more reliably.

그러한 방법의 일례로 MAC CPS에 MAC SDU가 전달되면, 전달된 MAC SDU는 MAC 계층에서 지원하는 최대 전송 크기를 넘지 않는 범위 내에서 MAC PDU들로 나누어질 수 있는데, 이러한 MAC PDU들은 랜덤선형부호(Random Linear Code)를 이용하여 부 호화될 수 있다. 이러한 방법을 랜덤선형부호화(RLC: Random Linear Coding)라 한다.As an example of such a method, when a MAC SDU is delivered to a MAC CPS, the delivered MAC SDU may be divided into MAC PDUs within a range not exceeding the maximum transmission size supported by the MAC layer. Can be encrypted using Random Linear Code. This method is called Random Linear Coding (RLC).

랜덤선형부호화 방법의 특징은, 각각의 부호화된 블록(coded block)들이 원본 블록집합(original block set)에 포함된 모든 블록들에 대한 정보를 포함할 수 있다는 것이다. 따라서, 일부 부호화된 블록이 송수신 도중에 유실되더라도 해당 부호화된 블록을 다시 수신할 필요없이, 다른 부호화된 블록을 수신하여 신속하게 데이터를 복원할 수 있다.A feature of the random linear encoding method is that each coded block may include information about all blocks included in the original block set. Therefore, even if some coded blocks are lost during transmission and reception, data can be quickly restored by receiving another coded block without having to receive the coded block again.

랜덤선형부호화 기법은 전술된 바와 같이 일부 부호화된 블록이 송수신 도중에 유실되더라도 해당 부호화된 블록을 다시 수신할 필요없이, 다른 부호화된 블록을 수신하여 신속하게 데이터를 복원할 수 있다. 그러나, 상술한 바와 같이 모든 데이터를 랜덤선형부호화를 통하여 수신단에 전송하게되면, 수신단에서 오류없이 전송된 블록의 수가 원본 블록의 수보다 작은 경우에는 일부라도 복구가 불가능한 단점이 있다. 또한, 채널 환경에 적응적으로 필요한 분량의 부호화된 블록을 송수신하는 효율적인 통신 방법이 요구된다.As described above, even if some coded blocks are lost during transmission and reception as described above, the random linear coding scheme may receive other coded blocks and quickly restore data without having to receive the coded blocks again. However, when all data is transmitted to the receiver through random linear encoding as described above, there is a disadvantage in that even if the number of blocks transmitted without error at the receiver is smaller than the number of original blocks, some may not be recoverable. In addition, there is a need for an efficient communication method for transmitting and receiving the required amount of coded blocks adaptively to the channel environment.

본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 랜덤선형부호화(RLC)를 이용한 효율적인 통신방법을 제공하는 것이다.The present invention has been made to solve the above problems, and an object of the present invention is to provide an efficient communication method using random linear coding (RLC).

본 발명의 다른 목적은, 수신단에서 채널환경에 따라 적응적으로 부호화된 데이터 블록을 수신하여 효율적으로 무선 자원을 사용할 수 있는 통신방법을 제공하는 것이다.Another object of the present invention is to provide a communication method capable of efficiently using radio resources by receiving a data block adaptively encoded according to a channel environment at a receiving end.

본 발명의 또 다른 목적은 송신단이 적응적으로 오류 복구를 위한 추가적 패킷을 수신단에 전송하여 신속한 오류복구를 수행할 수 있는 통신방법을 제공하는 것이다.It is still another object of the present invention to provide a communication method in which a transmitter can perform an error recovery by adaptively transmitting an additional packet for error recovery to a receiver.

본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned above will be clearly understood by those skilled in the art from the following description. Could be.

상기의 기술적 과제를 해결하기 위해, 본 발명은 송신단 및 수신단이 랜덤선형부호화를 이용하여 데이터를 송신하고 수신하는 다양한 방법들을 제공한다.In order to solve the above technical problem, the present invention provides a variety of methods for the transmitting end and the receiving end to transmit and receive data using random linear encoding.

본 발명의 일 양태로서 송신단이 수신단에 데이터를 전송하는 방법은, 하나의 부호화 단위에 해당하는 복수의 원본 데이터 패킷을 수신단에 전송하는 단계와 소정 개수의 부호화된 데이터 패킷을 생성하는 단계와 상기 생성된 부호화된 데이터 패킷 중 하나 이상을 상기 수신단에 전송하는 단계를 포함할 수 있다. 여기서, 상기 소정 개수의 부호화된 데이터 패킷은, 상기 복수의 원본 데이터 패킷을 상기 하나의 부호화 단위로 랜덤선형부호화(RLC)하여 생성된 것일 수 있다.In one aspect of the present invention, a method of transmitting data to a receiving end by a transmitting end includes transmitting a plurality of original data packets corresponding to one coding unit to a receiving end, generating a predetermined number of encoded data packets, and generating the data. And transmitting one or more of the encoded encoded data packets to the receiving end. The predetermined number of encoded data packets may be generated by random linear coding (RLC) on the plurality of original data packets in the one coding unit.

본 발명의 다른 양상에 의하면, 상기 하나 이상의 부호화된 데이터 패킷은 제 1 계수행렬을 사용하여 랜덤선형부호화된 것이고, 상기 제 1 계수행렬은 상기 하나의 부호화 단위 및 상기 생성된 부호화된 데이터 패킷의 소정 개수를 고려한 크기의 제 2 계수행렬 및 상기 하나의 부호화 단위에 해당하는 크기의 단위행렬을 포함할 수 있다.According to another aspect of the present invention, the one or more encoded data packets are random linearly encoded using a first coefficient matrix, wherein the first coefficient matrix is a predetermined number of the one coding unit and the generated encoded data packet. A second coefficient matrix having a size in consideration of the number and a unit matrix having a size corresponding to the one coding unit may be included.

본 발명의 또 다른 양상에 의하면, 상기 제 2 계수행렬은 상기 제 1 계수행렬에서 상기 하나의 부호화 단위에 해당하는 개수의 열을 임의로 선택하여 구성한 행렬이 기 설정된 갈루아 필드(Galois field)에서 독립인 조건을 만족하는 것일 수 있다.According to another aspect of the present invention, the second coefficient matrix is a matrix formed by arbitrarily selecting the number of columns corresponding to the one coding unit in the first coefficient matrix is independent of the preset Galois field (Galois field) The condition may be satisfied.

본 발명의 또 다른 양상에 의하면, 상기 소정 개수의 부호화된 데이터 패킷을 생성하는 단계는 채널 환경을 고려하여 생성되는 부호화된 데이터 패킷의 수를 결정하도록 수행되는 것일 수 있다.According to another aspect of the present invention, the generating of the predetermined number of encoded data packets may be performed to determine the number of encoded data packets generated in consideration of a channel environment.

본 발명의 또 다른 양상에 의하면, 상기 하나 이상의 부호화된 데이터 패킷을 전송하는 단계는 채널 환경을 고려하여 전송하는 부호화된 데이터 패킷의 수를 결정하도록 수행되는 것일 수 있다.According to another aspect of the present invention, the step of transmitting the one or more encoded data packets may be performed to determine the number of encoded data packets to be transmitted in consideration of the channel environment.

본 발명의 다른 양태로서 수신단이 송신단으로부터 데이터를 수신하는 방법은, 하나의 부호화 단위에 해당하는 복수의 원본 데이터 패킷을 송신단으로부터 수신하는 단계와 상기 수신된 복수의 원본 데이터 패킷들 중 적어도 일부에 오류가 있는 경우, 하나 이상의 부호화된 데이터 패킷을 상기 송신단으로부터 수신하는 단계와 상기 수신된 복수의 원본 데이터 패킷, 상기 수신된 하나 이상의 부호화된 데이터 패킷 및 제 1 계수행렬을 이용하여 상기 오류 있는 패킷을 복구하는 단계를 포함할 수 있다. 여기서, 상기 제 1 계수행렬은 상기 송신단에서 상기 복수의 원본 데이터 패킷을 상기 하나의 부호화 단위로 랜덤선형부호화를 통하여 상기 하나 이상의 부호화된 데이터 패킷을 생성하는데 사용된 계수행렬인 것일 수 있다.In another aspect of the present invention, a method in which a receiving end receives data from a transmitting end includes receiving a plurality of original data packets corresponding to one coding unit from a transmitting end and at least some of the received plurality of original data packets. If there is, recover the faulty packet by receiving one or more encoded data packets from the transmitting end and using the received plurality of original data packets, the received one or more encoded data packets and a first coefficient matrix. It may include the step. Here, the first coefficient matrix may be a coefficient matrix used by the transmitter to generate the one or more encoded data packets through random linear encoding of the plurality of original data packets in the one coding unit.

본 발명의 다른 양상에 의하면, 상기 제 1 계수행렬은 상기 하나의 부호화 단위 및 상기 생성된 부호화된 데이터 패킷의 소정 개수를 고려한 크기의 제 2 계수행렬 및 상기 하나의 부호화 단위에 해당하는 크기의 단위행렬을 포함하는 것일 수 있다.According to another aspect of the present invention, the first coefficient matrix is a second coefficient matrix having a size in consideration of the one coding unit and the predetermined number of encoded data packets and a unit corresponding to the one coding unit. It may be to include a matrix.

본 발명의 또 다른 양상에 의하면, 상기 제 2 계수행렬은 상기 제 1 계수행 렬에서 상기 하나의 부호화 단위에 해당하는 개수의 열을 임의로 선택하여 구성한 행렬이 기 설정된 갈루아 필드(Galois field)에서 독립인 조건을 만족하는 것일 수 있다.According to another aspect of the present invention, the second coefficient matrix is independent of a preset Galois field, wherein a matrix constructed by arbitrarily selecting the number of columns corresponding to the one coding unit from the first coefficient matrix is preset. It may be to satisfy the condition.

본 발명의 또 다른 양상에 의하면, 상기 하나 이상의 부호화된 데이터 패킷을 수신하는 단계는 채널 환경을 고려하여 수신하는 부호화된 데이터 패킷의 개수를 결정하도록 수행되는 것일 수 있다.According to another aspect of the present invention, the step of receiving the one or more encoded data packets may be performed to determine the number of encoded data packets to be received in consideration of the channel environment.

본 발명의 또 다른 양상에 의하면, 상기 하나 이상의 부호화된 데이터 패킷을 수신하는 단계는 적어도 상기 오류있는 패킷의 갯수 만큼의 상기 부호화된 데이터 패킷을 수신하도록 수행되는 것일 수 있다.According to another aspect of the invention, the step of receiving the one or more encoded data packets may be performed to receive at least as many encoded data packets as the number of faulty packets.

본 발명에 의하면 다음과 같은 효과가 있다.According to the present invention has the following effects.

첫째, 목적은 랜덤선형부호화(RLC)를 이용한 효율적인 통신이 가능하다.First, the purpose is to enable efficient communication using random linear coding (RLC).

둘째, 수신단에서 채널환경에 따라 적응적으로 부호화된 데이터 블록을 수신하여 효율적으로 무선 자원을 사용할 수 있다.Second, the receiving end can efficiently use the radio resources by receiving the data block adaptively encoded according to the channel environment.

셋째, 송신단이 적응적으로 오류 복구를 위한 추가적 패킷을 수신단에 전송하여 신속한 오류복구를 수행할 수 있다.Third, the sender may adaptively send an additional packet for error recovery to the receiver to perform fast error recovery.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable in the present invention are not limited to the above-mentioned effects, and other effects not mentioned above may be clearly understood by those skilled in the art from the following description. will be.

본 발명은 무선접속 시스템에 관한 것으로서, 랜덤 선형 부호화를 이용한 통신방법이 개시된다.The present invention relates to a wireless access system, and a communication method using random linear coding is disclosed.

이하의 실시예들은 본 발명의 구성요소들과 특징들을 소정 형태로 결합한 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려될 수 있다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성할 수도 있다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다.The following embodiments are a combination of elements and features of the present invention in a predetermined form. Each component or feature may be considered to be optional unless otherwise stated. Each component or feature may be implemented in a form that is not combined with other components or features. In addition, some of the elements and / or features may be combined to form an embodiment of the present invention. The order of the operations described in the embodiments of the present invention may be changed. Some configurations or features of certain embodiments may be included in other embodiments, or may be replaced with corresponding configurations or features of other embodiments.

본 명세서에서 본 발명의 실시예들은 기지국과 단말 간의 데이터 송수신 관계를 중심으로 설명되었다. 여기서, 기지국은 단말과 직접적으로 통신을 수행하는 네트워크의 종단 노드(terminal node)로서의 의미를 갖는다. 본 문서에서 기지국에 의해 수행되는 것으로 설명된 특정 동작은 경우에 따라서는 기지국의 상위 노드(upper node)에 의해 수행될 수도 있다. In the present specification, embodiments of the present invention have been described based on data transmission / reception relations between a base station and a terminal. Here, the base station has a meaning as a terminal node of the network that directly communicates with the terminal. The specific operation described as performed by the base station in this document may be performed by an upper node of the base station in some cases.

즉, 기지국을 포함하는 다수의 네트워크 노드들(network nodes)로 이루어지는 네트워크에서 단말과의 통신을 위해 수행되는 다양한 동작들은 기지국 또는 기지국 이외의 다른 네트워크 노드들에 의해 수행될 수 있음은 자명하다. '기지국'은 고정국(fixed station), Node B, eNode B(eNB), 억세스 포인트(access point) 등의 용어에 의해 대체될 수 있다. 또한, '단말'은 UE(User Equipment), MS(Mobile Station), MSS(Mobile Subscriber Station) 등의 용어로 대체될 수 있다. That is, it is obvious that various operations performed for communication with a terminal in a network composed of a plurality of network nodes including a base station may be performed by the base station or other network nodes other than the base station. A 'base station' may be replaced by terms such as a fixed station, a Node B, an eNode B (eNB), an access point, and the like. In addition, the term "terminal" may be replaced with terms such as a user equipment (UE), a mobile station (MS), a mobile subscriber station (MSS), and the like.

본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. Embodiments of the invention may be implemented through various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.

하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.For a hardware implementation, the method according to embodiments of the present invention may be implemented in one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs) , Field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, and the like.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리 유닛은 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of an implementation by firmware or software, the method according to the embodiments of the present invention may be implemented in the form of a module, a procedure, or a function that performs the functions or operations described above. The software code may be stored in a memory unit and driven by a processor. The memory unit may be located inside or outside the processor, and may exchange data with the processor by various known means.

이하의 설명에서 사용되는 특정 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.Specific terms used in the following description are provided to help the understanding of the present invention, and the use of such specific terms may be changed to other forms without departing from the technical spirit of the present invention.

본 발명이 제공하는 랜덤선형부호화를 이용한 통신 방법은 멀티캐스트 브로드캐스트 서비스(MBS: Multicast Broadcast Service) 데이터를 효율적으로 전송하는데 적용될 수 있다. 이하, MBS에 대하여 설명한다.The communication method using random linear encoding provided by the present invention can be applied to efficiently transmit Multicast Broadcast Service (MBS) data. Hereinafter, the MBS will be described.

무선통신망에서 방송 혹은 MBS 서비스를 받는 단말은 서비스를 시작하기 위해 서비스를 제공하는 서버와의 상위 절차들을 통해서 서비스에 대한 정보를 얻는다. 그리고 단말이 서비스를 수신하기로 결정을 하게 되면, 서버는 단말이 속한 지역으로 데이터를 전달하게 된다. 지역 내에 위치한 기지국과의 연결 절차를 통해 단말은 기지국으로부터 해당 서비스를 수신할 수 있게 된다.In a wireless communication network, a terminal receiving a broadcast or MBS service obtains information about a service through higher procedures with a server providing a service to start a service. When the terminal decides to receive the service, the server delivers data to the region to which the terminal belongs. Through the connection procedure with the base station located in the area, the terminal can receive the service from the base station.

보다 자세히 설명하면, 광대역 무선접속 시스템에서 기지국과 단말(MS: Mobile Station)간의 데이터 전송은 "서비스 플로우(Service Flow)"를 통해서 이루어진다. 서비스 플로우는 기지국과 MS 사이의 해당 서비스 플로우를 식별하는 SF ID(Service Flow identifier), 서비스 플로우 트래픽 (traffic)을 전달하는 연결을 식별하기 위한 CID(connection identifier), 및 서비스 플로우의 보안(security)을 보장하기 위한 보안 정보 및 서비스 품질에 관련한 서비스 품질(QoS: Quality of Service) 파라미터들로 이루어진다.In more detail, data transmission between a base station and a mobile station (MS) in a broadband wireless access system is performed through a "service flow". The service flow includes a service flow identifier (SF ID) identifying a corresponding service flow between the base station and the MS, a connection identifier (CID) for identifying a connection carrying a service flow traffic, and a security of the service flow. Quality of Service (QoS) parameters related to security information and quality of service to ensure quality.

일반적으로 서비스 플로우는 기지국과 MS간에 일대일 연결이 형성된다. 그러나, IEEE 802.16 시스템에서 MBS 데이터를 전송하기 위해 이용되는 MBS는 하나의 소스로부터 다수의 수신자에게 데이터를 전송하는 점대다(point-to-multipoint) 서비스를 특징으로 한다. 따라서, 기지국은 하나의 서비스 플로우를 통해 여러 MS에게 동일한 데이터를 전달한다. In general, the service flow is a one-to-one connection between the base station and the MS. However, the MBS used to transmit MBS data in the IEEE 802.16 system features a point-to-multipoint service for transmitting data from one source to multiple receivers. Thus, the base station delivers the same data to multiple MSs through one service flow.

즉, 기지국과 MS의 MBS 서비스 플로우 생성 시에 기지국은 MBS 데이터 수신을 요청하는 여러 MS에게 동일한 CID를 부여함으로써, 동일한 MBS 데이터를 여러 MS가 동시에 수신할 수 있도록 한다. 이렇게 여러 MS에게 하나의 CID를 부여하여 서비스를 제공할 수 있는 커버리지를 MBS 존(zone)이라고 한다.That is, when generating the MBS service flow between the base station and the MS, the base station assigns the same CID to the multiple MSs requesting the reception of the MBS data, thereby allowing the multiple MSs to simultaneously receive the same MBS data. The coverage that can provide services by granting a single CID to multiple MSs is called an MBS zone.

MBS 존은 여러 기지국으로 이루어질 수 있으며, 하나의 MBS 존에서 여러 기지국은 하나의 서비스 CID를 통해 여러 셀에서 동일한 서비스를 제공할 수 있다. 이러한 특성 때문에 일반적으로 MBS는 하나의 소스로부터 다수의 기지국을 거쳐 다수의 수신자에게 공통적인 데이터를 전달한다.The MBS zone may consist of several base stations, and in one MBS zone, several base stations may provide the same service in multiple cells through one service CID. Because of this feature, MBS generally delivers common data from multiple sources to multiple recipients from one source.

MBS 서비스의 시작을 위해 단말은 기지국과 동적 서비스 추가(DSA: Dynamic Service Addition) 과정을 통해 연결을 설정하게 된다. 연결 설정을 통해 사용자는 연결식별자와 QoS 정보 등을 수신하게 된다. In order to start the MBS service, the UE establishes a connection with the BS through a dynamic service addition (DSA) process. Through connection establishment, the user receives connection identifier and QoS information.

MBS를 위해 이용되는 정보 중에서 MBS_MAP 메시지의 구성은 아래의 표 1과 같다.Among the information used for the MBS, the configuration of the MBS_MAP message is shown in Table 1 below.

Figure 112009029205494-PAT00001
Figure 112009029205494-PAT00001

MBS_MAP 메시지는 기지국이 서비스를 받으려는 단말에게 보내지는 정보이며 이 곳에는 서비스를 읽어내기 위한 정보들을 전송한다. MBS_MAP 메시지를 수신한 단말은 MBS_DATA_IE 또는 Extended_MBS_DATA_IE 등의 추가적으로 전송되는 정보를 통해 MBS의 서비스 지점을 확인할 수 있다. The MBS_MAP message is information sent to a terminal to receive a service from a base station and transmits information for reading a service there. Upon receiving the MBS_MAP message, the UE may check the service point of the MBS through additionally transmitted information such as MBS_DATA_IE or Extended_MBS_DATA_IE.

MBS_DIUC_Change_Count 필드는 다중 기지국 MBS 데이터를 위해 사용되는 버스트 프로파일의 변경을 알릴 때 사용될 수 있다. MBS_DIUC_Change_Count가 변경되면, 단말은 하향링크 버스트 포로파일 TLV가 MBS_MAP에 포함되지 않는 한 DCD메시지를 수신할 때까지 기다려야 한다.The MBS_DIUC_Change_Count field may be used to inform the change of burst profile used for multiple base station MBS data. If the MBS_DIUC_Change_Count is changed, the terminal must wait until the DCD message is received unless the downlink burst profile TLV is included in the MBS_MAP.

MBS_DATA_IE는 현재의 MBS 데이터가 할당된 영역과 다음에 MBS 데이터가 할당될 영역을 지정해준다. 이를 통해 사용자는 현 시점에서 데이터를 수신하고 다음 시점에 읽어야 할 할당 영역을 알 수 있게 된다.MBS_DATA_IE specifies an area to which current MBS data is allocated and an area to which next MBS data is allocated. This allows the user to know the allocation area to receive data at the present time and read at the next time.

다음으로, 상술한 MBS 데이터와 같은 정보가 송신단에서 가공되어 수신단으로 전송되기 위하여 수행될 수 있는 랜덤선형부호화 과정을 설명한다.Next, a description will be given of a random linear encoding process in which information such as the above-described MBS data may be processed at the transmitting end and transmitted to the receiving end.

본 발명의 실시예들에서는 랜덤 선형 부호화(RLC: Random Linear Coding) 방법을 사용하여 데이터를 부호화할 수 있다. 랜덤 선형 부호화 방법은 블록 부호화 방법의 하나이다.In embodiments of the present invention, data may be encoded using a random linear coding (RLC) method. The random linear coding method is one of the block coding methods.

랜덤 선형 부호화 방법의 특징은, 각각의 부호화된 블록(coded block)들이 원본 블록집합(Original block set)에 포함된 모든 블록들에 대한 정보를 포함할 수 있다는 것이다. 따라서, 일부 부호화된 블록이 송수신 도중에 유실되더라도 해당 부호화된 블록을 다시 수신할 필요없이, 다른 부호화된 블록을 수신하여 신속하게 데이터를 복원할 수 있다. 랜덤 선형 부호화 방법은 본 발명에서 예시하는 데이터 처리 방법을 정의한 용어에 불과하며, 상기 방법을 나타내는 용어는 다양하게 변형될 수 있다.A feature of the random linear coding method is that each coded block may include information about all blocks included in an original block set. Therefore, even if some coded blocks are lost during transmission and reception, data can be quickly restored by receiving another coded block without having to receive the coded block again. The random linear encoding method is merely a term defining a data processing method exemplified in the present invention, and the term representing the method may be variously modified.

도 4는 본 발명의 실시예에 적용할 수 있는 랜덤 선형 부호화 방법을 사용하여 데이터 블록 집합들을 부호화하는 과정을 나타내는 도면이다.4 is a diagram illustrating a process of encoding data block sets by using a random linear encoding method applicable to an embodiment of the present invention.

도 4를 참조하면, 원본 데이터(original data)는 송신단의 상위계층으로부터 전달된 데이터(SDU: Service Data Unit)를 나타낸다. 송신단은 원본 데이터(SDU)를 MAC 계층에서 지원하는 최대 전송 크기를 넘지 않는 범위 내에서 PDU로 분할할 수 있다. 이하, 이러한 PDU를 본 명세서에서는 원본 패킷(Original Packet) 또는 원본 블록(Original Block)이라 칭한다. 송신단은 분할된 원본 블록들을 임의의 개수(n)로 묶어서 블록집합(또는, 세그먼트(segment))을 구성할 수 있다. 이하, 본 명세서에서는 이와 같이 원본 블록들을 임의의 개수로 묶어서 생성한 블록집합을 "원본 블록집합(Original Block set)"이라 호칭한다.Referring to FIG. 4, original data represents data transmitted from a higher layer of a transmitting end (SDU). The transmitting end may divide the original data (SDU) into PDUs within a range not exceeding the maximum transmission size supported by the MAC layer. Hereinafter, such a PDU is referred to herein as an original packet or an original block. The transmitting end may configure the block set (or segment) by grouping the divided original blocks by an arbitrary number n. Hereinafter, in the present specification, a block set generated by grouping original blocks in an arbitrary number is referred to as an “original block set”.

이때, 블록집합의 개수(n)는 통신망의 채널환경, 송신단과 수신단의 성능정보 및 응용 프로그램의 요구사항 등에 의해 결정될 수 있다. 또한, 송신단은 총 k개의 원본 블록집합을 구성할 수 있다.In this case, the number n of block sets may be determined by the channel environment of the communication network, performance information of the transmitter and receiver, requirements of the application program, and the like. In addition, the transmitting end may configure a total of k original block sets.

송신단은 분할된 상기 데이터 블록들을 부호화(coding)하기 위한 랜덤계수 또는 랜덤계수행렬(random coefficient matrix, cji)을 생성한다. 송신단은 상기 분할된 데이터 블록들에 일정한 규칙에 따라 생성된 상기 랜덤 계수행렬(cji)을 이용하여 부호화할 수 있다.The transmitter generates a random coefficient or a random coefficient matrix c ji for coding the divided data blocks. The transmitter may encode the divided data blocks using the random coefficient matrix c ji generated according to a predetermined rule.

송신단은 블록집합 단위로(예를 들어, 선택된 n개의 블록마다) 랜덤 선형 부호화 방법을 사용하여 부호화를 수행할 수 있다. 이때, n개의 부호화된 블록들의 집합을 "부호화된 블록집합(Encoded block set)"이라 부를 수 있다. 수신단은 선택된 개수(n) 만큼의 부호화된 블록들을 수신하면 복호화를 수행할 수 있다. 이하, "부호화된 블록집합"은 "코드블록집합"으로, "부호화된 블록"은 "코드블록"으로 호칭될 수 있다.The transmitting end may perform encoding using a random linear encoding method in units of block sets (for example, for each of n selected blocks). In this case, the set of n encoded blocks may be referred to as an "encoded block set". The receiving end may perform decoding upon receiving the selected number n of encoded blocks. Hereinafter, the "coded block set" may be referred to as "code block set" and the "coded block" may be referred to as "code block".

랜덤 선형 부호화 방법을 적용하여 생성된 각각의 코드블록들은 원본 블록집합에 포함된 모든 블록들에 대한 정보를 포함할 수 있다. 따라서, 수신단에서 수신한 코드블록들로부터 일련의 정보 블록을 복원하기 위해, n개의 코드블록들 및 데이터 각 블록을 부호화할 때 사용한 랜덤계수들이 필요하다.Each code block generated by applying the random linear encoding method may include information about all blocks included in the original block set. Therefore, in order to recover a series of information blocks from the code blocks received at the receiving end, n coefficient blocks and random coefficients used when encoding each block of data are required.

송신단은 수신단이 데이터를 완전히 복호화할 때까지 새로운 랜덤계수들을 생성하고, 코드블록들을 만들어 수신단으로 전송한다. 이때, n개의 코드블록들은 부호화된 순서대로 전달될 필요가 없으며, 각각의 코드블록들은 독립적(independent)이다.The transmitting end generates new random coefficients until the receiving end completely decodes the data, generates code blocks, and sends them to the receiving end. In this case, n code blocks need not be delivered in the coded order, and each code block is independent.

다음 수학식 1은 원본 블록 집합(

Figure 112009029205494-PAT00002
)을 부호화하여 생성되는 코드블록 집합(
Figure 112009029205494-PAT00003
)을 생성하는 방법의 일례를 나타낸다.Equation 1 is the original block set (
Figure 112009029205494-PAT00002
Code block set generated by encoding
Figure 112009029205494-PAT00003
An example of the method of generating) is shown.

Figure 112009029205494-PAT00004
Figure 112009029205494-PAT00004

수학식 1에서

Figure 112009029205494-PAT00005
를 계수행렬이라 하고, 이는 원본 블록집합(
Figure 112009029205494-PAT00006
)을 조합하는 방법을 나타낸다. 계수행렬(
Figure 112009029205494-PAT00007
)을 생성하는 방법은 다음과 같다.In Equation 1
Figure 112009029205494-PAT00005
Is called the coefficient matrix, which is the original block set (
Figure 112009029205494-PAT00006
) Is combined. Coefficient matrix
Figure 112009029205494-PAT00007
) Is generated as follows.

랜덤 선형 부호화 방법에서 사용되는 계수행렬(

Figure 112009029205494-PAT00008
)은 송신단 또는 송신단과 수신단이 일정 범위에서 결정한 난수(random number)를 이용하여 생성될 수 있다. 난수란, 송신단이 또는 송신단과 수신단이 협의를 통해 일정 범위(예를 들어, 0~255)의 수를 정하고, 상기 일정 범위의 수에서 무작위로 추출한 수를 말한다. 또한, 송신단 및 수신단은 랜덤계수를 생성하는데 필요한 시드(seed) 값을 공유하여 계수행렬(
Figure 112009029205494-PAT00009
)을 생성할 수도 있다. 이때, 계수행렬의 사이즈는 n×n으로 정의될 수 있다. Coefficient Matrix Used in Random Linear Coding Method
Figure 112009029205494-PAT00008
) May be generated using a random number determined by a transmitting end or a transmitting end and a receiving end in a predetermined range. The random number refers to a number that is determined by the transmitter or the receiver and the receiver by a predetermined number (for example, 0 to 255) by negotiation, and is randomly extracted from the number of the predetermined range. In addition, the transmitting end and the receiving end share a seed matrix required to generate a random coefficient,
Figure 112009029205494-PAT00009
You can also create). In this case, the size of the coefficient matrix may be defined as n × n.

다음 수학식 2는 상기 수학식 1을 다른 표현 방법으로 나타낸 것이다.Equation 2 shows Equation 1 as another expression method.

Figure 112009029205494-PAT00010
Figure 112009029205494-PAT00010

수학식 2에서 코드블록은 coded-blkj로 나타낼 수 있고, 계수행렬은 cji로 나타낼 수 있다. 또한, 원본 블록은 blki로 나타낼 수 있다.In Equation 2, a code block may be represented by coded-blk j and a coefficient matrix may be represented by c ji . In addition, the original block may be represented by blk i .

송신단에서 첫 번째 코드블록집합의 n개의 코드블록들을 모두 전송하고, 수신단에서 n개의 코드블록들을 모두 수신하면 원본 블록집합을 복원할 수 있다. 이후, 송신단은 다음 두 번째 블록집합에 포함된 코드블록들을 전송하는 방법으로 데이터 통신이 이뤄진다.When the transmitter transmits all n code blocks of the first code block set, and the receiver receives all n code blocks, the original block set may be restored. Thereafter, the transmitting end performs data communication by transmitting code blocks included in the next second block set.

랜덤 선형 부호화(이하, RLC)를 이용한 통신 방법을 이용하기 위해, 먼저 데이터 블록집합(Data Block Set)의 크기, 코드블록(coded block)의 크기 및 랜덤계 수(Random coefficient)의 갈루아 필드(GF: Galois Field)를 정한다. 갈루아 필드(GF)는 다음과 같이 정할 수 있다. GF(2^2)이면 2 비트의 심볼(Symbol)들을 연산하여 2 비트의 심볼로 만들어 줄 수 있고, GF(2^8)을 사용하면 8 비트의 심볼들을 연산하여 8 비트의 심볼들로 만들어 줄 수 있다.In order to use a communication method using random linear coding (hereinafter, RLC), first, a size of a data block set, a size of a coded block, and a gallo field of a random coefficient (GF) are used. : Galois Field. The Gallois field GF can be determined as follows. GF (2 ^ 2) can be used to compute two bits of symbols into two-bit symbols, and GF (2 ^ 8) can be used to compute eight bits of symbols into eight-bit symbols. Can give

데이터 블록집합의 크기와 코드블록의 크기가 결정이 되면 복호화(decoding)에 필요한 부호화된 블록의 개수가 결정될 수 있다. 송신단은 기 결정된 갈루아 필드에 따라 부호화(coding)에 필요한 랜덤계수(Random Coefficient)들을 이용하여 부호화를 수행할 수 있다. 랜덤계수들은 부호화된 블록들을 전송할 때 함께 전송될 수도 있다. 또한, 송수신단이 랜덤계수들을 미리 생성하여 송수신단 서로가 동일한 랜덤계수들에 대한 정보를 가지고 있다면, 송신단은 각 코드블록을 부호화할 때 사용한 랜덤계수의 인덱스(index)만을 수신단에 전송해 줄 수도 있다. 통신 도중에 전송되는 신호가 없어지지 않는 순차적인 데이터 전송의 경우에는 송수신단은 미리 정해진 랜덤 계수들을 순차적으로 사용하여 부호화 및 복호화할 수 있다.When the size of the data block set and the size of the code block are determined, the number of coded blocks required for decoding may be determined. The transmitter may perform encoding by using random coefficients required for encoding according to a predetermined Galois field. The random coefficients may be transmitted together when transmitting the coded blocks. In addition, if the transmitting and receiving end generates the random coefficients in advance and the transmitting and receiving ends have information on the same random coefficients, the transmitting end may transmit only the index of the random coefficient used when encoding each code block to the receiving end. have. In the case of sequential data transmission in which a signal transmitted during communication does not disappear, the transceiver may sequentially encode and decode predetermined random coefficients.

다시 말하면, 수신단은 송신단에서 원본 블록집합(

Figure 112009029205494-PAT00011
)을 부호화하는데 사용한 계수행렬(
Figure 112009029205494-PAT00012
)의 역행렬(
Figure 112009029205494-PAT00013
)을 생성한 다음, 생성된 역행렬 및 수신된 코드블록 집합(
Figure 112009029205494-PAT00014
)을 이용한 연산을 통하여 원본 블록집합(
Figure 112009029205494-PAT00015
)을 복원할 수 있는 것이다. 이를 식으로 나타내면 아래 수학식 3과 같다.In other words, the receiving end has the original block set (
Figure 112009029205494-PAT00011
Coefficient matrix used to encode
Figure 112009029205494-PAT00012
Inverse of
Figure 112009029205494-PAT00013
), Then the generated inverse and received set of code blocks (
Figure 112009029205494-PAT00014
Original block set (
Figure 112009029205494-PAT00015
) Can be restored. This is expressed as Equation 3 below.

Figure 112009029205494-PAT00016
Figure 112009029205494-PAT00016

본 발명의 일 실시예에 의하면, 원본 데이터를 수신단에 먼저 전송하고, 전송된 원본 데이터 중에서 수신단에서 오류가 발생한 일부분을 복구하기 위하여 추가로 랜덤선형부호화(RLC)를 이용하여 부호화된 데이터 패킷을 전송하는 방법이 제공된다. According to an embodiment of the present invention, the original data is first transmitted to the receiving end, and additionally, a data packet encoded using random linear coding (RLC) is further transmitted to recover a portion of the transmitted original data in which an error occurs at the receiving end. A method is provided.

도 5는 본 발명의 일 실시예와 관련된 송신단 및 수신단이 데이터를 송수신하는 과정을 나타낸다.5 illustrates a process of transmitting and receiving data by a transmitting end and a receiving end according to an embodiment of the present invention.

도 5를 참조하면, 먼저 송신단에서는 원본 데이터 패킷을 수신단에 전송한다(S511). Referring to FIG. 5, first, a transmitter transmits an original data packet to a receiver (S511).

이때, 원본 데이터 패킷은 수신단이 상위계층으로부터 전달된 원본 데이터(e.g. SDU)를 소정의 크기로 분할하여 생성한 PDU일 수 있다. In this case, the original data packet may be a PDU generated by the receiver dividing the original data (e.g. SDU) transferred from the upper layer into a predetermined size.

다음으로 송신단은 원본 데이터 패킷에 랜덤선형부호화를 적용하여 부호화된 데이터 패킷을 생성할 수 있다(S512). Next, the transmitting end may generate an encoded data packet by applying random linear encoding to the original data packet (S512).

이때, 부호화된 데이터 패킷을 생성하는 과정은 도 5와 같이 원본 데이터 패킷을 수신단에 전송한 다음에 수행될 수도 있고, 원본 데이터 패킷을 수신단에 전송하기 전에 미리 수행될 수도 있다. 또한, 랜덤선형부호화를 통하여 생성되는 부호화된 데이터 패킷의 갯수는 미리 정해질 수도 있고, 채널 환경을 고려하여 적응 적으로 변경될 수도 있다. 즉, 송신단은 미리 다수의 부호화된 데이터 패킷을 생성해둔 후 필요한 만큼을 사용할 수도 있고, 채널 환경에 따라 필요한 분량 만큼만 부호화된 데이터 패킷을 생성할 수도 있다. 이를 위하여 송신단은 수신단으로부터 소정의 채널 환경 또는 수신품질에 관한 피드백을 수신할 수 있다. 랜덤선형부호화에 사용될 수 있는 계수행렬에 대해서는 자세히 후술하기로 한다.In this case, the process of generating the encoded data packet may be performed after transmitting the original data packet to the receiving end as shown in FIG. 5, or may be performed in advance before transmitting the original data packet to the receiving end. In addition, the number of encoded data packets generated through random linear encoding may be predetermined or may be adaptively changed in consideration of the channel environment. That is, the transmitting end may generate a plurality of encoded data packets beforehand and use as many as necessary, or may generate only the required amount of encoded data packets according to the channel environment. To this end, the transmitting end may receive feedback regarding a predetermined channel environment or reception quality from the receiving end. The coefficient matrix that can be used for random linear encoding will be described later in detail.

송신단은 S512과정을 통하여 생성된 부호화된 데이터 패킷을 수신단에 전송한다(S513). The transmitting end transmits the encoded data packet generated through the process S512 to the receiving end (S513).

이때, 송신단은 수신단에 미리 정해진 개수의 부호화된 데이터 패킷을 전송할 수도 있고, 채널상황에 따라 적응적으로 전송하는 부호화된 데이터 패킷의 갯수를 변경할 수도 있다.In this case, the transmitting end may transmit a predetermined number of encoded data packets to the receiving end, or change the number of encoded data packets adaptively transmitted according to channel conditions.

한편, 수신단에서는 S511 과정에서 송신단으로부터 전송된 원본 데이터 패킷을 수신한다(S531).On the other hand, the receiving end receives the original data packet transmitted from the transmitting end in step S511 (S531).

이때, 채널환경에 따라 수신단은 송신단으로부터 전송된 모든 원본 데이터 패킷을 수신하지 못하는 경우가 발생할 수 있다. 그에 따라, 수신단은 CRC 검사 등의 방법을 사용하여 수신된 원본 데이터 각각의 오류 여부를 확인할 수 있다. In this case, depending on the channel environment, the receiving end may not receive all original data packets transmitted from the transmitting end. Accordingly, the receiving end may check whether each of the received original data is error by using a method such as a CRC check.

오류가 발생한 원본 데이터 패킷이 있는 경우, 수신단은 오류가 발생한 원본 데이터 패킷을 복구하기 위하여 송신단으로부터 부호화된 데이터 패킷을 수신한다(S532).If there is an original data packet in error, the receiving end receives the encoded data packet from the transmitting end in order to recover the original data packet in error (S532).

이때, 수신단이 송신단으로부터 수신하는 부호화된 데이터 패킷의 갯수는 채널환경에 따라 결정될 수 있는데, 오류가 발생한 원본 데이터 패킷의 갯수보다 적 지 않은 것이 바람직하다.At this time, the number of encoded data packets received by the receiver from the transmitter may be determined according to the channel environment, but preferably less than the number of original data packets having an error.

부호화된 데이터 패킷을 수신한 수신단은 오류가 발생한 원본 데이터 패킷을 계수행렬, 수신된 부호화된 데이터 패킷 및 오류 없이 수신된 원본 데이터 패킷을 이용하여 복구할 수 있다(S533). The receiving end receiving the encoded data packet may recover the original data packet having an error using the coefficient matrix, the received encoded data packet, and the original data packet received without error (S533).

이때, 계수행렬은 송신단에서 부호화된 데이터 패킷을 생성할 때 사용된 계수행렬과 동일한 계수행렬인 것이 바람직하다. 이를 위하여, 송신단과 수신단은 데이터 송수신을 시작하기 전에 계수행렬을 먼저 공유해두는 것이 바람직하다. 계수행렬은 다양한 방법을 통하여 송신단과 수신단에 공유될 수 있다. 예를 들면, 계수행렬이 일정한 법칙을 따라 생성될 수 있다면 소정의 시드(seed)값 만을 공유할 수도 있고, 미리 다수의 계수행렬을 생성하고 공유한 다음 데이터 전송시에는 다수의 계수행열 중 하나를 지시하는 인덱스값만을 공유할 수도 있다. In this case, the coefficient matrix is preferably the same coefficient matrix as that used when generating the encoded data packet at the transmitting end. To this end, it is preferable that the transmitting end and the receiving end share the coefficient matrix first before starting data transmission and reception. The coefficient matrix may be shared between the transmitter and the receiver through various methods. For example, if a coefficient matrix can be generated according to a certain law, only a predetermined seed value may be shared, and a plurality of coefficient matrices may be created and shared in advance, and then one of the plurality of coefficient matrices may be used for data transmission. Only the index value indicated may be shared.

상술한 바와 같이 본 발명의 일 실시예에 의한 데이터 송수신방법을 통하여, 수신단은 원본 데이터 패킷의 일부에 오류가 발생하더라도 우선적으로 오류없이 수신된 데이터를 사용할 수 있다. 또한, 수신단은 추가적으로 전송된 부호화된 데이터 패킷을 이용하여 적응적으로 오류를 신속히 복구할 수 있다. 아울러, 송수신단은 적응적으로 필요한 갯수 만큼의 부호화된 데이터 패킷을 송수신할 수 있으므로 무선 자원을 보다 효율적으로 이용할 수 있다.As described above, through the data transmission / reception method according to an embodiment of the present invention, even if an error occurs in a part of the original data packet, the receiving end may preferentially use the received data without error. In addition, the receiving end can adaptively recover an error quickly by using the additionally transmitted encoded data packet. In addition, since the transmitting and receiving end can adaptively transmit and receive the required number of encoded data packets, the radio resources can be used more efficiently.

또한, 상술한 방법이 MBS 데이터와 같이 브로드캐스트 또는 멀티캐스트되는 데이터의 전송에 사용된다면 더욱 효과적일 수 있다. 즉, 송신단은 수신단에서 어떠한 데이터 패킷에 오류가 발생했는지에 관계없이 수신단에 일정 수의 부호화된 데이터 패킷만을 전송하면 수신단에서 오류의 복구가 가능하여 보다 효율적인 통신이 가능하다.It may also be more effective if the method described above is used for the transmission of broadcast or multicast data, such as MBS data. In other words, regardless of which data packet an error occurs in the receiver, only a certain number of encoded data packets are transmitted to the receiver, thereby enabling the receiver to recover the error, thereby enabling more efficient communication.

이하, 1)원본 데이터 패킷의 구조, 2)원본 데이터 패킷을 부호화하기 위한 계수행렬의 구조 및 3)수신단에서의 원본 데이터 패킷의 복구와 같이 세 항목으로 구분하여 상기 데이터 송수신방법을 보다 상세히 설명한다. Hereinafter, the data transmission / reception method will be described in more detail by dividing into three items such as 1) structure of original data packet, 2) structure of coefficient matrix for encoding original data packet, and 3) recovery of original data packet at receiver. .

단, 본 실시예에서, 갈루아 필드의 크기는 GF(28)인 경우를 가정한다. 또한, 100개의 원본 데이터 패킷 단위로 랜덤선형부호화가 수행되며, 송신단은 랜덤선형부호화를 통하여 5개의 부호화된 데이터 패킷을 생성한다고 가정한다.However, in the present embodiment, it is assumed that the size of the Galois field is GF (2 8 ). In addition, it is assumed that random linear encoding is performed in units of 100 original data packets, and the transmitting end generates five encoded data packets through random linear encoding.

1) 원본 데이터 패킷의 구조1) Structure of original data packet

도 6은 본 발명의 일 실시예와 관련된 원본 데이터 패킷을 나타낸다. Figure 6 illustrates an original data packet associated with one embodiment of the present invention.

송신단은 상위계층 데이터(e.g. MAC SDU: Medium Access Control Service Data Unit)를 하위 계층에서 지원하는 최대 전송 크기를 넘지 않는 범위 내에서 분할할 수 있다. 이와 같이 생성된 데이터 패킷을 본 발명의 실시예들에서는 "원본 데이터 패킷"이라 칭한다. 이때, 도 6과 같이 100개의 원본 데이터 패킷(X1 내지X100)이 송신단으로부터 수신단에 전송되기 위하여 준비된다. 각 원본 데이터 패킷은 원본 데이터(D1 내지 D100) 및 수신단에서 패킷 단위로 에러 여부를 판단하기 위한 CRC(Cyclic Redundancy Check)를 포함할 수 있다. The transmitting end may split upper layer data (e.g., MAC SDU) within a range not exceeding the maximum transmission size supported by the lower layer. The data packet thus generated is referred to as "original data packet" in embodiments of the present invention. At this time, as shown in FIG. 6, 100 original data packets X1 to X100 are prepared to be transmitted from the transmitting end to the receiving end. Each original data packet may include original data (D1 to D100) and a cyclic redundancy check (CRC) for determining whether an error is detected on a packet basis at the receiving end.

도 7은 본 발명의 일 실시예와 관련된 원본 데이터 패킷의 데이터 구조를 나 타낸다.7 shows a data structure of an original data packet related to an embodiment of the present invention.

도 7을 참조하면, 각 원본 데이터 패킷의 원본 데이터 Dj(j = 1 ~ 100)는 구성 요소인 Bi(i = 1 ~ 1000)를 각각 10개씩 포함하고 있다. 여기서, 각 원본 데이터 패킷에 포함된 원본 데이터의 구성요소 Bi의 개수는 예시적인 것으로, 필요에 따라 다른 갯수의 구성요소 Bi가 각 원본 데이터를 구성할 수 있다.Referring to FIG. 7, original data D j (j = 1 to 100) of each original data packet includes 10 elements B i (i = 1 to 1000), respectively. Here, the number of components B i of the original data included in each original data packet is exemplary, and a different number of components Bi may configure each original data as necessary.

이때, 각 Bi의 크기는 랜덤선형부호화에 사용되는 갈루아 필드 또는 유한체의 정의에 따라 결정된다. 즉, GF(2n), n은 정수,의 갈루아 필드가 랜덤선형부호화에 사용된다고 가정하면, Bi는 는 n bit의 크기를 갖게 된다.At this time, the size of each B i is determined according to the definition of the Galois field or finite body used for random linear encoding. That is, assuming that the Glua field of GF (2 n ), n is an integer, is used for random linear coding, B i has a size of n bits.

예를 들어, GF(24)이 사용되는 경우 Bi는 4bit이고, GF(28)인 경우는 8bit, GF(216)인 경우는 16bit 를 사용한다. 본 발명의 실시예들에서는 GF(28)가 사용되는 경우를 예를 들어 설명하나, 다른 크기의 유한체(finite field size)의 경우도 동일한 방법으로 확장이 가능하다. For example, when GF (2 4 ) is used, Bi is 4 bits, GF (2 8 ) uses 8 bits, and GF (2 16 ) uses 16 bits. In the embodiments of the present invention, a case in which GF 2 8 is used is described as an example, but in the case of a finite field size of another size, the same method can be extended.

따라서, 각 원본 데이터 패킷은 여러 바이트로 구성될 수 있으며, 도 7과 같은 경우, 하나의 원본 데이터 패킷에는 10바이트의 원본 데이터가 포함된다.Therefore, each original data packet may be composed of several bytes. In the case of FIG. 7, one original data packet includes 10 bytes of original data.

2)원본 데이터 패킷을 부호화하기 위한 계수행렬의 구조2) Structure of coefficient matrix for encoding original data packet

다음으로, 전술된 바와 같이 구성되는 원본 데이터 패킷들을 랜덤선형부호화 를 통하여 부호화된 데이터 패킷을 생성하는데 사용될 수 있는 계수행렬(Coefficient Matrix)의 구조를 설명한다. Next, a structure of a coefficient matrix that can be used to generate an encoded data packet through random linear coding of original data packets configured as described above will be described.

수학식 4는 본 발명의 일 실시예와 관련된 랜덤선형부호화에 사용될 수 있는 계수행렬의 일례를 나타낸다.Equation 4 shows an example of a coefficient matrix that can be used for random linear encoding according to an embodiment of the present invention.

Figure 112009029205494-PAT00017
Figure 112009029205494-PAT00017

수학식 4를 참조하면, 본 발명의 일 실시예와 관련된 랜덤선형부호화에 사용될 수 있는 계수행렬을

Figure 112009029205494-PAT00018
라 하면, 계수행렬
Figure 112009029205494-PAT00019
Figure 112009029205494-PAT00020
Figure 112009029205494-PAT00021
를 나열한 형태로 표시될 수 있다. Referring to Equation 4, a coefficient matrix that can be used for random linear encoding according to an embodiment of the present invention is described.
Figure 112009029205494-PAT00018
The coefficient matrix
Figure 112009029205494-PAT00019
Is
Figure 112009029205494-PAT00020
And
Figure 112009029205494-PAT00021
It may be displayed in the form listed.

여기서

Figure 112009029205494-PAT00022
는 100×100 크기의 단위(Identity)행렬이고,
Figure 112009029205494-PAT00023
는 100×5의 크기를 갖는 랜덤계수행렬로서 기 설정된 갈루아 필드(e.g. GF(28))의 원소들 중 랜덤으로 선택된 원소들로 구성될 수 있다. 이때, 랜덤계수행렬
Figure 112009029205494-PAT00024
는 수학식 4와 같이 생성된
Figure 112009029205494-PAT00025
행렬에서 임의로 100개의 열을 선택하여 100×100 크기의 행렬을 구성하였 을 때, 구성된 행렬이 가역(invertible)행렬인 조건을 만족하는 것이 바람직하다. 상기와 같이 구성되는 계수행렬
Figure 112009029205494-PAT00026
를 이용하여 랜덤선형부호화를 수행하면, 100개의 원본 데이터 패킷을 입력하면 105개의 부호화된 데이터 패킷이 획득될 수 있다.here
Figure 112009029205494-PAT00022
Is an identity matrix of size 100 × 100,
Figure 112009029205494-PAT00023
Is a random coefficient matrix having a size of 100 × 5 and may be composed of randomly selected elements among the elements of the preset Gallois field (eg GF (2 8 )). At this time, random coefficient matrix
Figure 112009029205494-PAT00024
Is generated as in Equation 4
Figure 112009029205494-PAT00025
When a 100 × 100 matrix is constructed by arbitrarily selecting 100 columns from the matrix, it is preferable that the constructed matrix satisfies the condition of an invertible matrix. Coefficient matrix constructed as described above
Figure 112009029205494-PAT00026
When random linear encoding is performed using, 100 encoded data packets can be obtained by inputting 100 original data packets.

이하, 계수행렬

Figure 112009029205494-PAT00027
를 결정하는 방법을 보다 자세히 설명한다.Coefficient matrix
Figure 112009029205494-PAT00027
It will be described in more detail how to determine.

먼저, 단위행렬

Figure 112009029205494-PAT00028
는 한 번에 랜덤선형부호화에 참여하는 원본 데이터 패킷의 갯수에 해당하는 크기를 갖는 것이 바람직하다. 예를 들면, 본 실시예에서와 같이 100개의 원본 데이터 패킷이 하나의 인코딩 단위로 랜덤선형부호화에 참여하는 경우라면
Figure 112009029205494-PAT00029
는 수학식 4와 같이 100×100의 크기를 갖게 된다. First, unit matrix
Figure 112009029205494-PAT00028
Preferably has a size corresponding to the number of original data packets participating in random linear encoding at one time. For example, if 100 original data packets participate in random linear coding in one encoding unit as in this embodiment,
Figure 112009029205494-PAT00029
As shown in Equation 4 has a size of 100 × 100.

또한,

Figure 112009029205494-PAT00030
는 하나의 인코딩 단위에 해당하는 원본 데이터 패킷의 수와 랜덤선형부호화를 통하여 생성하고자 하는 부호화된 패킷의 수에 비례하여 생성된다. 예를 들어, 위에서 가정된 바와 같이 100개의 원본 데이터 패킷이 하나의 인코딩 단위로 랜덤선형부호화에 참여하고, 랜덤선형부호화를 통하여 5개의 부호화된 데이터 패킷을 생성하는 경우라면 100×5의 행렬로 생성된다. Also,
Figure 112009029205494-PAT00030
Is generated in proportion to the number of original data packets corresponding to one encoding unit and the number of encoded packets to be generated through random linear encoding. For example, if 100 original data packets participate in random linear encoding as one encoding unit and generate five encoded data packets through random linear encoding, the 100 original data packets are generated as a matrix of 100 × 5. do.

상술된 바와 같이 생성되는 계수행렬

Figure 112009029205494-PAT00031
를 이용하여 송신단은 원본 데이터 패킷들에 대하여 랜덤선형부호화를 수행할 수 있으며, 랜덤선형부호화의 수행 결과, 하기 수학식 5와 같은 부호화된 데이터 패킷을 획득할 수 있다.Coefficient matrix generated as described above
Figure 112009029205494-PAT00031
By using, the transmitting end may perform random linear encoding on the original data packets, and as a result of performing the random linear encoding, may obtain an encoded data packet as shown in Equation 5 below.

Figure 112009029205494-PAT00032
Figure 112009029205494-PAT00032

부호화된 데이터 패킷 Pi(본 실시예의 가정하에서 i = 1 ~ 5)는 각 원본 데이터 패킷(X1 내지 X100)의 원본 데이터 Dj(j = 1 ~ 100)와 계수행렬

Figure 112009029205494-PAT00033
의 랜덤선형부호화 연산을 통하여 생성될 수 있다. 이때 랜덤선형부호화 연산은 갈루아 필드(Galois Field) 내에서의 연산이다. 즉, 본 실시예에서는 GF(28)인 경우를 가정하였으므로, 각 바이트 내에서 수행되는 연산은 GF(28)인 갈로아 필드 내에서 수행된다.The coded data packet Pi (i = 1 to 5 under the assumption of the present embodiment) is composed of the original data D j (j = 1 to 100) and the coefficient matrix of each original data packet X1 to X100.
Figure 112009029205494-PAT00033
It can be generated through a random linear encoding operation of. In this case, the random linear encoding operation is an operation in a Galois field. That is, in the present embodiment hayeoteumeuro assumed that the GF (2 8), operation is performed in each byte is carried out in the Galois field GF (2 8).

상술한 연산을 통하여 수행되는 랜덤선형부호화 과정을 통하여 생성되는 부호화된 데이터 패킷들의 갯수에 의하여 부호화율(Code Rate)이 결정된다. 부호화율은 하기 수학식 6에 의하여 계산될 수 있다.The code rate is determined by the number of encoded data packets generated through the random linear encoding process performed through the above operation. The coding rate may be calculated by Equation 6 below.

Figure 112009029205494-PAT00034
Figure 112009029205494-PAT00034

따라서, 수학식 6에 따라 본 실시예의 가정(100개의 원본 데이터 패킷으로 5개의 부호화된 데이터 패킷을 생성)에 의한 부호화율을 계산하면, 100/(100+5)가 되므로 20/21 이 된다. Accordingly, if the coding rate is calculated according to the equation (5 coded data packets generated from 100 original data packets) according to the equation (6), it is 20/21 since 100 / (100 + 5) is calculated.

다음으로, 전술된 방법으로 생성된 부호화된 데이터 패킷을 이용하여 수신단에서 원본 데이터 패킷을 복구하는 방법을 설명한다.Next, a method of recovering the original data packet at the receiving end using the encoded data packet generated by the above-described method will be described.

3)수신단에서의 원본 데이터 패킷의 복구3) Recovery of original data packet at receiver

수신단은 먼저 가정과 같이, 송신단으로부터 100개의 원본 데이터 패킷(X1 내지 X100)를 수신한다. 채널환경에 따라 수신단은 송신단으로부터 100개 모두의 원본 데이터 패킷을 요류없이 수신하지 못하는 경우가 발생할 수 있다. 그에 따라, 수신단은 오류가 발생한 원본 데이터 패킷을 복구하기 위하여 송신단으로부터 부호화된 데이터 패킷을 수신한다.The receiver first receives 100 original data packets X1 to X100 from the transmitter, as in the assumption. Depending on the channel environment, the receiving end may not receive all 100 original data packets from the transmitting end without interruption. Accordingly, the receiving end receives the encoded data packet from the transmitting end to recover the original data packet in error.

예를 들어, 수신단이 송신단으로부터 수신한 X1에서 X100의 원본 데이터 패킷 중에서 X2에 오류가 발생한 경우를 가정한다. 이때, 수신단이 부호화된 데이터 패킷 P1을 이용하여 X2를 복구하는 과정은 다음과 같다.For example, it is assumed that an error occurs in X2 among original data packets of X1 to X100 received from the transmitting end. At this time, a process of restoring X2 using the encoded data packet P 1 is as follows.

먼저 도 7을 참조하면, 원본 데이터 패킷 X2에 오류가 발생함에 따라 D2에 해당하는 원본 데이터 원소 B11 내지 B20까지 20개가 알 수 없게 되었다. 다음으로 수학식 5를 참조하면, 수신단은 B11 내지 B20 을 복구하기 위하여 부호화된 데이터 패킷 P1 에서 U1,1 내지 U1,10을 구성하는 원소 중에서

Figure 112009029205494-PAT00035
,
Figure 112009029205494-PAT00036
, ...
Figure 112009029205494-PAT00037
까지의 10개의 원소를 이용할 수 있다. First, referring to FIG. 7, as an error occurs in the original data packet X2, 20 pieces of original data elements B 11 to B 20 corresponding to D 2 are unknown. Next, referring to Equation 5, the receiving end of the elements constituting the U 1,1 to U 1,10 in the encoded data packet P 1 to recover B 11 to B 20
Figure 112009029205494-PAT00035
,
Figure 112009029205494-PAT00036
, ...
Figure 112009029205494-PAT00037
Up to 10 elements can be used.

다시 말하면, B11 내지 B20 을 복구하기 위한 과정을 미지수가 10개인 일차 방정식을 풀이하는 과정으로 본다면, U1,1 내지 U1,10은 10개의 미지수를 구하기 위한 10개의 식으로 볼 수 있다. 따라서, 도 5의 S533 과정에서 상술된 바와 같이 수신단은 송신단이 부호화된 패킷을 생성할 때 사용한 계수행렬을 알고 있다면, 계수행렬을 구성하는 각

Figure 112009029205494-PAT00038
값을 알 수 있다. 또한, 수신단은 오류 없이 수신된 원본 데이터 패킷을 이용하여 B11 내지 B20 을 제외한 모든 원본 데이터의 원소 값(B)을 알 수 있다. 따라서, 단순한 1차 연립방정식의 풀이 방법으로 수신단은 B11 내지 B20의 값을 계산할 수 있으며, 그에 따라 오류 있는 원본 데이터 패킷 X2를 복구할 수 있다.In other words, if the process for recovering B 11 to B 20 is a process for solving a linear equation with 10 unknowns, U 1,1 to U 1,10 can be regarded as 10 equations for obtaining 10 unknowns. . Accordingly, as described above in step S533 of FIG. 5, the receiving end knows the coefficient matrix used when the transmitting end generates the encoded packet.
Figure 112009029205494-PAT00038
The value is known. In addition, the receiving end may know the element values B of all original data except B 11 to B 20 using the original data packet received without error. Thus, by a simple method of solving the simultaneous system of equations, the receiving end can calculate the values of B 11 to B 20 , thereby recovering the original error packet X2.

다른 예로, 수신단에서 송신단으로부터 수신된 100개의 원본 데이터 패킷 중 두 개의 원본 데이터 패킷에 오류가 있다고 가정한다. 다시말하면, 하나의 원본 데이터 패킷 당 10개씩, 총 20개의 원본 데이터 원소가 복구되어야하는 경우이다. 이 경우, 하나의 데이터 패킷에 오류가 있는 경우와는 달리 두 개의 원본 데이터 패킷을 복구하기 위하여 적어도 둘의 부호화된 데이터 패킷이 수신단에 요구된다. As another example, it is assumed that there is an error in two original data packets among the 100 original data packets received from the transmitting end at the receiving end. In other words, a total of 20 original data elements, 10 for each original data packet, must be recovered. In this case, unlike when there is an error in one data packet, at least two encoded data packets are required at the receiving end to recover two original data packets.

수신단은 수학식 5와 같은 형태의 P1 및 P2 두 개의 부호화된 데이터 패킷을 송신단으로부터 수신하면, 수신단이 U1,1 내지 U1,10 및 U2,1 내지 U2,10 에 해당하는 20개의 식을 획득한 것으로 볼 수 있다. 즉, 수신단에서 2개의 원본 데이터 블록에 오류가 있고 2개의 부호화된 데이터 블록을 수신한 경우, 2개의 원본 데이터 블록을 복구하는 과정은 20개의 서로 다른 방정식을 이용하여 20개의 미지수를 구하는 과정으로 볼 수 있다. 따라서, 수신단은 1차 방정식의 해를 구하는 방법으로 계수행렬, 요류 없이 수신된 원본 데이터 패킷 및 부호화된 데이터 패킷을 이용하여 2개의 원본 데이터 패킷을 구성하는 20개의 원본 데이터 원소를 구할 수 있다. 결국 수신단은 오류가 발생한 2개의 원본 데이터 패킷을 복구할 수 있다.When the receiving end receives two encoded data packets P 1 and P 2 from the transmitting end as shown in Equation 5, the receiving end corresponds to U 1,1 to U 1,10 and U 2,1 to U 2,10 . It can be seen that 20 equations are obtained. In other words, if two original data blocks are in error at the receiving end and two encoded data blocks are received, the process of recovering the two original data blocks is a process of obtaining 20 unknowns using 20 different equations. Can be. Accordingly, the receiving end can obtain 20 original data elements constituting two original data packets by using a matrix of coefficients, original data packets received without congestion, and encoded data packets by solving a linear equation. As a result, the receiving end can recover the two original data packets in error.

일반적인 랜덤선형부호화를 통한 데이터 송수신 방법에서는 수신된 부호화된 데이터 패킷이 오류가 발생한 원본 데이터 패킷의 수보다 하나라도 적은 경우 전체의 오류 복구가 불가능했었다. 그러나 상술한 본 발명의 랜덤선형부호화를 통한 데이터 송수신방법을 사용하면, 수신단은 오류없이 수신된 원본 데이터 패킷에 해당하는 부분은 랜덤선형부호화를 통한 디코딩을 거치지 않고도 사용할 수 있다는 장점이 있다.In the general method of transmitting and receiving data through random linear coding, if the received encoded data packet is smaller than the number of original data packets in which an error occurs, the entire error recovery was impossible. However, when using the data transmission and reception method through the random linear encoding of the present invention described above, the receiving end has an advantage that the part corresponding to the original data packet received without error can be used without going through decoding through the random linear coding.

본 발명의 또 다른 실시예로서, 상술된 본 발명의 실시예들이 수행될 수 있는 송신단 또는 수신단으로서, 단말 및 기지국을 설명한다.As another embodiment of the present invention, a terminal and a base station are described as a transmitting end or a receiving end on which the above-described embodiments of the present invention can be performed.

단말은 상향링크에서는 송신기로 동작하고, 하향링크에서는 수신기로 동작할 수 있다. 또한, 기지국은 상향링크에서는 수신기로 동작하고, 하향링크에서는 송신 기로 동작할 수 있다. 즉, 단말 및 기지국은 정보 또는 데이터의 전송을 위해 송신기 및 수신기를 포함할 수 있다.The terminal may operate as a transmitter in uplink and operate as a receiver in downlink. In addition, the base station may operate as a receiver in the uplink, and may operate as a transmitter in the downlink. That is, the terminal and the base station may include a transmitter and a receiver for transmitting information or data.

송신기 및 수신기는 본 발명의 실시예들이 수행되기 위한 프로세서, 모듈, 부분 및/또는 수단 등을 포함할 수 있다. 특히, 송신기 및 수신기는 메시지를 암호화하기 위한 모듈(수단), 암호화된 메시지를 해석하기 위한 모듈, 메시지를 송수신하기 위한 안테나 등을 포함할 수 있다.The transmitter and receiver may include a processor, module, part, and / or means for carrying out the embodiments of the present invention. In particular, the transmitter and receiver may include a module (means) for encrypting the message, a module for interpreting the encrypted message, an antenna for transmitting and receiving the message, and the like.

본 발명의 실시예들에서 사용되는 단말은 저전력 RF(Radio Frequency)/IF(Intermediate Frequency) 모듈을 포함할 수 있다. 또한, 단말은 상술한 본 발명의 실시예들을 수행하기 위한 콘트롤러 기능, 서비스 특성 및 전파 환경에 따른 MAC(Medium Access Control) 프레임 가변 제어 기능, 핸드오버(Hand Over) 기능, 인증 및 암호화 기능, 데이터 전송을 위한 패킷 변복조 기능, 고속 패킷 채널 코딩 기능 및 실시간 모뎀 제어 기능 등을 수행하는 수단, 모듈 또는 부분 등을 포함할 수 있다.The terminal used in the embodiments of the present invention may include a low power radio frequency (RF) / intermediate frequency (IF) module. In addition, the terminal is a controller function, a MAC (Medium Access Control) frame variable control function, a handover function, authentication and encryption function, data according to the controller function, service characteristics and propagation environment for performing the above-described embodiments of the present invention. Means, modules or parts for performing packet modulation and demodulation, high speed packet channel coding, and real-time modem control for transmission.

기지국은 상위 계층으로부터 수신한 데이터를 무선 또는 유선으로 단말에 전송할 수 있다. 기지국은 저전력 RF(Radio Frequency)/IF(Intermediate Frequency) 모듈을 포함할 수 있다. 또한, 기지국은 상술한 본 발명의 실시예들을 수행하기 위한 콘트롤러 기능, 직교주파수분할다중접속(OFDMA: Orthogonal Frequency Division Multiple Access) 패킷 스케줄링, 시분할듀플렉스(TDD: Time Division Duplex) 패킷 스케줄링 및 채널 다중화 기능, 서비스 특성 및 전파 환경에 따른 MAC 프레임 가변 제어 기능, 고속 트래픽 실시간 제어 기능, 핸드 오버(Hand Over) 기능, 인증 및 암호화 기능, 데이터 전송을 위한 패킷 변복조 기능, 고속 패킷 채널 코딩 기능 및 실시간 모뎀 제어 기능 등을 수행하는 수단, 모듈 또는 부분 등을 포함할 수 있다.The base station may transmit data received from the upper layer to the terminal by wireless or wired. The base station may include a low power radio frequency (RF) / intermediate frequency (IF) module. In addition, the base station is a controller function for performing the above-described embodiments of the present invention, orthogonal frequency division multiple access (OFDMA) packet scheduling, time division duplex (TDD) packet scheduling and channel multiplexing function MAC frame variable control function according to service characteristics and propagation environment, high speed traffic real time control function, hand over function, authentication and encryption function, packet modulation and demodulation function for data transmission, high speed packet channel coding function and real time modem control Means, modules or parts for performing functions and the like.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다. 또한, 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함할 수 있다.The invention can be embodied in other specific forms without departing from the spirit and essential features of the invention. Accordingly, the above detailed description should not be construed as limiting in all aspects and should be considered as illustrative. The scope of the invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the invention are included in the scope of the invention. In addition, the claims may be combined to form an embodiment by combining claims that do not have an explicit citation relationship or may be incorporated as new claims by post-application correction.

도 1은 일반적으로 사용되는 인터넷 프로토콜 스택의 일례를 나타낸다.1 shows an example of a commonly used internet protocol stack.

도 2는 일반적으로 사용되는 데이터 전송을 위한 각 계층의 동작을 나타낸다.2 shows the operation of each layer for data transmission generally used.

도 3은 일반적인 IEEE 802.16 시스템의 계층 구조를 나타낸다.3 shows a hierarchical structure of a general IEEE 802.16 system.

도 4는 랜덤선형부호화를 사용하여 데이터 블록 집합들을 부호화하는 과정을 나타낸다.4 shows a process of encoding data block sets using random linear encoding.

도 5는 본 발명의 일 실시예와 관련된 송신단 및 수신단에서 랜덤선형부호화를 이용한 데이터 전송 및 수신과정의 일례를 나타낸다.5 illustrates an example of a data transmission and reception process using random linear encoding in a transmitting end and a receiving end according to an embodiment of the present invention.

도 6은 본 발명의 일 실시예와 관련된 원본 데이터 패킷을 나타낸다. Figure 6 illustrates an original data packet associated with one embodiment of the present invention.

도 7은 본 발명의 일 실시예와 관련된 원본 데이터 패킷의 데이터 구조를 나타낸다.7 illustrates a data structure of an original data packet related to an embodiment of the present invention.

Claims (10)

무선 접속 시스템에서 송신단이 데이터 패킷을 전송하는 방법에 있어서,In the method of transmitting data packets in the radio access system, 하나의 부호화 단위에 해당하는 복수의 원본 데이터 패킷을 수신단에 전송하는 단계;Transmitting a plurality of original data packets corresponding to one coding unit to a receiving end; 소정 개수의 부호화된 데이터 패킷을 생성하는 단계; 및Generating a predetermined number of encoded data packets; And 상기 생성된 부호화된 데이터 패킷 중 하나 이상을 상기 수신단에 전송하는 단계를 포함하되,Transmitting at least one of the generated encoded data packets to the receiving end; 상기 소정 개수의 부호화된 데이터 패킷은, 상기 복수의 원본 데이터 패킷을 상기 하나의 부호화 단위로 랜덤선형부호화(RLC)하여 생성된 것을 특징으로 하는 데이터 전송방법.The predetermined number of encoded data packets are generated by random linear coding (RLC) on the plurality of original data packets in the one coding unit. 제 1항에 있어서,The method of claim 1, 상기 하나 이상의 부호화된 데이터 패킷은,The at least one encoded data packet is 제 1 계수행렬을 사용하여 랜덤선형부호화된 것이고,Is random linearly encoded using the first coefficient matrix, 상기 제 1 계수행렬은, The first coefficient matrix, 상기 하나의 부호화 단위 및 상기 생성된 부호화된 데이터 패킷의 소정 개수를 고려하여 결정된 크기의 제 2 계수행렬 및 상기 하나의 부호화 단위에 해당하는 크기의 단위행렬을 포함하는 것을 특징으로 하는 데이터 전송방법.And a second coefficient matrix having a size determined in consideration of the one coding unit and the predetermined number of encoded data packets, and a unit matrix having a size corresponding to the one coding unit. 제 2항에 있어서,3. The method of claim 2, 상기 제 2 계수행렬은,The second coefficient matrix, 상기 제 1 계수행렬에서 상기 하나의 부호화 단위에 해당하는 개수의 열을 임의로 선택하여 구성한 행렬이 기 설정된 갈루아 필드(Galois field)에서 독립인 조건을 만족하는 것을 특징으로 하는 데이터 전송방법.And a matrix constructed by arbitrarily selecting the number of columns corresponding to the one coding unit in the first coefficient matrix satisfies an independent condition in a preset Galois field. 제 2항에 있어서,3. The method of claim 2, 상기 소정 개수의 부호화된 데이터 패킷을 생성하는 단계는,Generating the predetermined number of encoded data packets, 채널 환경을 고려하여 생성되는 부호화된 데이터 패킷의 수를 결정하도록 수행되는 것을 특징으로 하는 데이터 전송방법.And determining the number of encoded data packets generated in consideration of the channel environment. 제 2항에 있어서, 3. The method of claim 2, 상기 하나 이상의 부호화된 데이터 패킷을 전송하는 단계는,The step of transmitting the one or more encoded data packets, 채널 환경을 고려하여 전송하는 부호화된 데이터 패킷의 수를 결정하도록 수행되는 것을 특징으로 하는 데이터 전송방법. And determining the number of encoded data packets to be transmitted in consideration of the channel environment. 무선 접속 시스템에서 송신단으로부터 데이터 패킷을 수신하는 방법에 있어서,In the method for receiving a data packet from a transmitting end in a wireless access system, 하나의 부호화 단위에 해당하는 복수의 원본 데이터 패킷을 송신단으로부터 수신하는 단계;Receiving a plurality of original data packets corresponding to one coding unit from a transmitting end; 상기 수신된 복수의 원본 데이터 패킷들 중 적어도 일부에 오류가 있는 경우, 하나 이상의 부호화된 데이터 패킷을 상기 송신단으로부터 수신하는 단계; 및If at least some of the received plurality of original data packets are in error, receiving one or more encoded data packets from the transmitting end; And 상기 수신된 복수의 원본 데이터 패킷, 상기 수신된 하나 이상의 부호화된 데이터 패킷 및 제 1 계수행렬을 이용하여 상기 오류 있는 패킷을 복구하는 단계를 포함하되,Recovering the faulty packet using the received plurality of original data packets, the received one or more encoded data packets, and a first coefficient matrix; 상기 제 1 계수행렬은, The first coefficient matrix, 상기 송신단에서 상기 복수의 원본 데이터 패킷을 상기 하나의 부호화 단위로 랜덤선형부호화를 통하여 상기 하나 이상의 부호화된 데이터 패킷을 생성하는데 사용된 계수행렬인 것을 특징으로 하는 데이터 수신방법.And a coefficient matrix used by the transmitting end to generate the one or more encoded data packets through random linear coding of the plurality of original data packets in the one coding unit. 제 6항에 있어서,The method of claim 6, 상기 제 1 계수행렬은, The first coefficient matrix, 상기 하나의 부호화 단위 및 상기 생성된 부호화된 데이터 패킷의 소정 개수를 고려하여 결정된 크기의 제 2 계수행렬 및 상기 하나의 부호화 단위에 해당하는 크기의 단위행렬을 포함하는 것을 특징으로 하는 데이터 수신방법.And a second coefficient matrix having a size determined in consideration of the one coding unit and the predetermined number of encoded data packets, and a unit matrix having a size corresponding to the one coding unit. 제 7항에 있어서,The method of claim 7, wherein 상기 제 2 계수행렬은,The second coefficient matrix, 상기 제 1 계수행렬에서 상기 하나의 부호화 단위에 해당하는 개수의 열을 임의로 선택하여 구성한 행렬이 기 설정된 갈루아 필드(Galois field)에서 독립인 조건을 만족하는 것을 특징으로 하는 데이터 수신방법.And a matrix formed by arbitrarily selecting the number of columns corresponding to the one coding unit in the first coefficient matrix and satisfying an independent condition in a preset Galois field. 제 7항에 있어서,The method of claim 7, wherein 상기 하나 이상의 부호화된 데이터 패킷을 수신하는 단계는,Receiving the one or more encoded data packets, 채널 환경을 고려하여 수신하는 부호화된 데이터 패킷의 개수를 결정하도록 수행되는 것을 특징으로 하는, 데이터 수신방법.And determining the number of encoded data packets to be received in consideration of the channel environment. 제 7항에 있어서,The method of claim 7, wherein 상기 하나 이상의 부호화된 데이터 패킷을 수신하는 단계는,Receiving the one or more encoded data packets, 적어도 상기 오류있는 패킷의 갯수 만큼의 상기 부호화된 데이터 패킷을 수신하도록 수행되는 것을 특징으로 하는, 데이터 수신방법.And at least as many as the number of faulty packets is received to receive the encoded data packets.
KR1020090042482A 2009-01-07 2009-05-15 Method for transmitting and receiving Data using Random Linear Coding KR101605323B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14290209P 2009-01-07 2009-01-07
US61/142,902 2009-01-07

Publications (2)

Publication Number Publication Date
KR20100081902A true KR20100081902A (en) 2010-07-15
KR101605323B1 KR101605323B1 (en) 2016-03-22

Family

ID=42642227

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020090042481A KR101571728B1 (en) 2009-01-07 2009-05-15 Method for transmitting and receiving Data using Random Linear Coding
KR1020090042480A KR101647373B1 (en) 2009-01-07 2009-05-15 Method of retransmitting Data using Random Linear Coding in a Wireless Access System
KR1020090042482A KR101605323B1 (en) 2009-01-07 2009-05-15 Method for transmitting and receiving Data using Random Linear Coding

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020090042481A KR101571728B1 (en) 2009-01-07 2009-05-15 Method for transmitting and receiving Data using Random Linear Coding
KR1020090042480A KR101647373B1 (en) 2009-01-07 2009-05-15 Method of retransmitting Data using Random Linear Coding in a Wireless Access System

Country Status (1)

Country Link
KR (3) KR101571728B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9800372B2 (en) 2015-10-22 2017-10-24 Hongik University-Academia Cooperation Foundation Data transmission system, encoding apparatus and encoding method

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101477664B1 (en) * 2013-09-25 2014-12-30 이화여자대학교 산학협력단 Method and apparatus for network coding using compressed sensing technique, method and apparatus for network decoding
KR101954372B1 (en) 2018-10-12 2019-03-05 한국벤토나이트 주식회사 Manufacturing Method of Fuel Solid Comprising Organic Waste
CN114422082B (en) * 2021-12-30 2023-07-28 广东中兴新支点技术有限公司 Transmission control method, system, device and medium based on linear network coding

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005223682A (en) * 2004-02-06 2005-08-18 Sony Corp Transmission/reception system, transmitter and transmitting method, receiver and receiving method, transmitter/receiver and transmitting/receiving method, and program
KR101366332B1 (en) * 2007-04-19 2014-02-21 엘지전자 주식회사 A method of automatic repeat request(ARQ) in communication system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9800372B2 (en) 2015-10-22 2017-10-24 Hongik University-Academia Cooperation Foundation Data transmission system, encoding apparatus and encoding method

Also Published As

Publication number Publication date
KR101571728B1 (en) 2015-11-25
KR20100081901A (en) 2010-07-15
KR101605323B1 (en) 2016-03-22
KR101647373B1 (en) 2016-08-10
KR20100081900A (en) 2010-07-15

Similar Documents

Publication Publication Date Title
CN101310503B (en) Method and apparatus for supporting voice over ip services over a cellular wireless communication network
JP5572220B2 (en) Method and apparatus for transmitting MAC PDU with fragmented packing extension header
US11296841B2 (en) Communications method and apparatus
US20190081746A1 (en) Data Transmission Method, Device, and System
US20170142077A1 (en) Data encryption and transmission method and apparatus
US11943611B2 (en) Method and apparatus for identifying security key in next generation mobile communication system
JP2009188751A (en) Encryption and decryption method, transmission device, and reception device in radio communication system
US10749549B2 (en) Method and device in user equipment and base station for wireless communication
US10547330B2 (en) Method and device in user equipment and base station for wireless communication
JP2022046754A (en) Method and device in user equipment and base station used for channel coding
CN113796057B (en) User data compression method and apparatus for preventing data loss in wireless communication system
KR20200076568A (en) Method and apparatus for identfying security key based on pdcp layer device in next generation mobile communication system
KR101605323B1 (en) Method for transmitting and receiving Data using Random Linear Coding
US10523790B2 (en) System and method of header compression for online network codes
KR101526972B1 (en) A method of communicating using Random Linear Coding in radio access system
WO2014190819A1 (en) Method, intermediate node, and terminal for information transmission
WO2022050019A1 (en) Information processing device and decoding method
CN112740731B (en) Method and apparatus for identifying security key in next generation mobile communication system
Bouras et al. Evolving AL-FEC application on 5G NGMN-edge computing systems
JP2023512101A (en) cellular network broadcasting
KR20200076574A (en) Method and apparatus for identfying security key based on pdcp layer device in next generation mobile communication system
Sharon et al. Physical and Medium Access Control criteria for the optimal Medium Access Control protocol data unit size in Automatic Repeat Request‐enabled connections in IEEE 802.16 e/WiMAX systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190214

Year of fee payment: 4