KR20100081901A - 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
KR20100081901A
KR20100081901A KR1020090042481A KR20090042481A KR20100081901A KR 20100081901 A KR20100081901 A KR 20100081901A KR 1020090042481 A KR1020090042481 A KR 1020090042481A KR 20090042481 A KR20090042481 A KR 20090042481A KR 20100081901 A KR20100081901 A KR 20100081901A
Authority
KR
South Korea
Prior art keywords
coefficient matrix
blocks
receiving end
data
encoded
Prior art date
Application number
KR1020090042481A
Other languages
Korean (ko)
Other versions
KR101571728B1 (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 KR20100081901A publication Critical patent/KR20100081901A/en
Application granted granted Critical
Publication of KR101571728B1 publication Critical patent/KR101571728B1/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 is provided to provided coefficient matrix capable of always decoding the packets in case receiving a constant amount of packets in a receiving end, thereby performing effectively communication. CONSTITUTION: By applying a random encode(RLC) to a data block combination generated by dividing the higher class data into a predetermined size, a plurality of encoded blocks is generated(S101). A plurality of encoded blocks is transmitted to a receiving end(S103). Each row is performed by using coefficient matrix having independent characteristic in a galois filed which is preset(S107). Each element comprising a first row of coefficient matrix is shared in a transmitting end and receiving end. It is operated through an initial net entry procedure of transmitting end and receiving end.

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.

일반적인 랜덤선형부호화(Random Linear Coding)에는 계수행렬(Coefficient matrix)이 사용될 수 있는데, 계수행렬은 난수(Random number)를 사용하기 때문에 수신단에서 항상 디코딩이 가능한 계수행렬의 생성이 보장되지 못하였다.Coefficient matrix can be used for general random linear coding. Since coefficient matrix uses random number, it is not guaranteed to always generate decodable matrix.

본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 랜덤선형부호화(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).

본 발명의 다른 목적은 수신단에서 일정량의 패킷을 오류 없이 수신한 경우 항상 디코딩이 가능한 계수 행렬을 제공하는 것이다.It is another object of the present invention to provide a coefficient matrix that is always decodable when a receiver receives a certain amount of packets without error.

본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Technical problems to be achieved in the present invention are not limited to the above-mentioned technical problems, 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)를 적용하여 복수의 부호화된 블록들을 생성 하는 단계와 상기 복수의 부호화된 블록들을 상기 수신단에 전송하는 단계를 포함할 수 있다. 여기서, 상기 복수의 부호화된 블록들을 생성하는 단계는 각 행(row)이 기 설정된 갈루아 필드(Galois field) 내에서 독립(independent)한 특성을 갖는 계수행렬(Coefficient matrix)을 이용하여 수행되는 것일 수 있다.In one aspect of the present invention, a method for transmitting data to a receiving end by applying a random linear coding (RLC) to a data block set including a plurality of data blocks generated by dividing higher layer data into a predetermined size is performed. Generating encoded blocks and transmitting the plurality of encoded blocks to the receiving end. The generating of the plurality of coded blocks may be performed by using a coefficient matrix having independent characteristics of each row in a preset Galois field. have.

이때, 상기 계수행렬은 하기 행렬 1과 같은 형태를 가질 수 있다.In this case, the coefficient matrix may have a form such as matrix 1.

[행렬 1][Matrix 1]

Figure 112009029205348-PAT00001
Figure 112009029205348-PAT00001

여기에서,

Figure 112009029205348-PAT00002
는 상기 계수행렬을 나타내고, 제 1열을 구성하는 각 원소(v i )는 상기 기 설정된 갈루아 필드에서 '1'을 제외하고 선택된 서로 다른 k개의 원소이며,
Figure 112009029205348-PAT00003
이고,
Figure 112009029205348-PAT00004
이며, m은 갈루아 필드의 크기를 결정하는 차수를 나타내는 것일 수 있다.From here,
Figure 112009029205348-PAT00002
Represents the coefficient matrix, and each element ( v i ) constituting the first column is k different elements selected from the preset Galois field except for '1',
Figure 112009029205348-PAT00003
ego,
Figure 112009029205348-PAT00004
And m may represent an order for determining the size of the Galois field.

또한, 상기 계수행렬의 상기 제 1열을 구성하는 각 원소(v i )를 상기 송신단 및 상기 수신단이 공유하는 단계를 더 포함할 수 있다.The method may further include sharing the elements v i constituting the first column of the coefficient matrix by the transmitting end and the receiving end.

또한, 상기 각 원소를 공유하는 단계는 상기 송신단 및 수신단의 초기 망 진 입(initial network entry)절차를 통하여 수행되는 것일 수 있다.In addition, the sharing of each element may be performed through an initial network entry procedure of the transmitter and the receiver.

또한, 상기 복수의 부호화된 블록들은 MAC 헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 수신단에 전송되고, 상기 MAC 헤더는 상기 부호화된 블록의 랜덤선형부호화 여부를 지시하는 필드 및 상기 부호화된 블록의 번호를 지시하는 필드 중 적어도 하나를 포함할 수 있다.In addition, the plurality of coded blocks are transmitted to a receiving end through at least one protocol data unit (PDU) including a MAC header, wherein the MAC header is a field indicating whether the coded block is random linear encoding and the coded It may include at least one of the fields indicating the number of the block.

아울러, 상기 복수의 부호화된 블록들은 소정의 서브헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 수신단에 전송되고, 상기 소정의 서브헤더는 상기 부호화된 블록의 랜덤선형부호화 여부를 지시하는 필드 및 상기 부호화된 블록의 번호를 지시하는 필드 중 적어도 하나를 포함할 수 있다.In addition, the plurality of encoded blocks are transmitted to a receiving end through one or more protocol data units (PDUs) including a predetermined subheader, and the predetermined subheader is a field indicating whether the encoded block is random linearly encoded. And a field indicating a number of the encoded block.

본 발명의 다른 양태로서, 수신단에서 데이터를 수신하는 방법은 복수의 부호화된 블록들을을 상기 송신단으로부터 수신하는 단계와 제 1 계수행렬(Coefficient matrix)을 이용하여 상기 수신된 복수의 부호화된 블록들을 디코딩하는 단계를 포함할 수 있다. 이때, 상기 제 1 계수행렬은 상기 송신단에서 소정 개수의 원본 데이터 블록에 랜덤선형부호화(RLC)를 적용하여 상기 복수의 부호화된 블록들을 생성하는 과정에서 사용된 계수행렬이며, 각 행이 기 설정된 갈루아 필드(Galois field) 내에서 독립한 특성을 갖는 것일 수 있다.In another aspect of the present invention, a method of receiving data at a receiving end includes receiving a plurality of encoded blocks from the transmitting end and decoding the received plurality of encoded blocks using a first coefficient matrix. It may include the step. In this case, the first coefficient matrix is a coefficient matrix used in the process of generating the plurality of coded blocks by applying a random linear coding (RLC) to a predetermined number of original data blocks in the transmitting end, wherein each row is a preset Galois. It may be one having independent characteristics in a field (Galois field).

이때, 상기 수신된 복수의 부호화된 블록들을 디코딩하는 단계는, 상기 계수행렬에서 상기 복수의 부호화된 블록들 중 오류없이 수신된 소정 개수의 부호화된 블록들의 번호 각각에 대응되는 소정 개수의 행(row)들을 선택하여 제 2 계수행렬을 생성하는 단계와, 상기 제 2 계수행렬의 역행렬을 생성하는 단계와 상기 생성된 역행렬 및 상기 오류없이 수신된 소정 개수의 부호화된 블록들을 이용하여 상기 소정 개수의 원본 블록들을 복원하는 단계를 포함할 수 있다.In this case, the decoding of the plurality of encoded blocks includes: a predetermined number of rows corresponding to each number of a predetermined number of encoded blocks received without error among the plurality of encoded blocks in the coefficient matrix. ) Generating a second coefficient matrix by generating the second coefficient matrix, generating an inverse of the second coefficient matrix, and using the generated inverse matrix and the predetermined number of encoded blocks received without error. Restoring the blocks.

또한, 상기 소정 개수의 부호화된 블록들 각각의 번호는 상기 기 설정된 갈루아 필드에 의하여 결정된 상기 부호화된 블록의 크기를 이용하여 추정된 것일 수 있다.In addition, the number of each of the predetermined number of encoded blocks may be estimated using the size of the encoded block determined by the preset Galois field.

또한, 상기 복수의 부호화된 블록들은 MAC 헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 상기 송신단으로부터 수신되고, 상기 MAC 헤더는 상기 프로토콜 데이터 유닛에 포함된 상기 복수의 부호화된 블록들의 랜덤선형부호화 여부를 지시하는 필드를 포함하고, 상기 수신단은 상기 소정 개수의 부호화된 블록들 각각의 번호를 추정함에 있어서 상기 랜덤선형부호화 여부를 더욱 고려할 수 있다.Further, the plurality of coded blocks are received from the transmitting end through one or more protocol data units (PDUs) including a MAC header, and the MAC header is a random linear form of the plurality of coded blocks included in the protocol data unit. And a field indicating whether to encode, and the receiving end may further consider whether the random linear encoding is performed in estimating the number of each of the predetermined number of encoded blocks.

또한, 상기 복수의 부호화된 블록들은 MAC 헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 상기 송신단으로부터 수신되고, 상기 MAC 헤더는 상기 부호화된 블록의 번호를 나타내는 필드를 포함할 수 있다.In addition, the plurality of encoded blocks may be received from the transmitting end through at least one protocol data unit (PDU) including a MAC header, and the MAC header may include a field indicating a number of the encoded block.

아울러, 상기 제 2 계수행렬을 생성하는 단계는, 상기 공유된 상기 계수행렬의 제 1열을 구성하는 상기 각 원소(v i ) 중에서 오류없이 수신된 오류없이 수신된 소정 개수의 부호화된 블록들의 번호 각각에 대응되는 원소들의 차수를 상기 제 1 계수행렬의 형태를 만족하도록 순차적으로 증가시켜 상기 소정 개수의 행(row)들을 생성하는 단계를 포함할 수 있다.The generating of the second coefficient matrix may include: a number of a predetermined number of encoded blocks received without errors among the elements v i constituting the shared first column of the coefficient matrix without errors. The method may include generating the predetermined number of rows by sequentially increasing the order of elements corresponding to each of the elements to satisfy the shape of the first coefficient matrix.

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

첫째, 본 발명을 이용하면 랜덤선형부호화를 이용하여 효율적인 통신을 수행할 수 있다.First, according to the present invention, efficient communication can be performed by using random linear encoding.

둘째, 본 발명에 의하면 수신단에서 일정량의 패킷을 오류 없이 수신한 경우 항상 디코딩이 가능한 계수 행렬이 제공되므로 효율적인 통신을 수행할 수 있다.Second, according to the present invention, since a coefficient matrix capable of decoding is always provided when a certain amount of packets are received without error, an efficient communication can be performed.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.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 implementation by firmware or software, the method according to the embodiments of the present invention may be implemented in the form of a module, procedure, or 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.

도 4는 서비스 데이터 유닛(SDU)을 이용하여 MAC PDU를 구성하는 방법을 나타낸다.4 illustrates a method of configuring a MAC PDU using a service data unit (SDU).

도 4를 참조하면, 상위계층으로부터 전달받은 서비스 데이터 유닛(SDU: Service Data Unit)을 이용하여 MAC PDU가 구성될 수 있다. 이때, 단편화(fragmentation) 또는 패킹(packing) 기법이 사용될 수 있다. 단편화 기법은 SDU 또는 프로토콜의 기본 교환 단위인 PDU를 여러 개의 더 작은 단위로 나누는 동작을 말한다. 패킹 기법은 몇 개의 작은 필드를 하나의 큰 필드로 결합하는 것으로서, 기억 장소를 절약하기 위해서 2개 이상의 정보 단위를 하나의 물리적 단위로 결합하는 것을 의미한다.Referring to FIG. 4, a MAC PDU may be configured using a service data unit (SDU) received from a higher layer. In this case, fragmentation or packing techniques may be used. Fragmentation refers to the operation of dividing a PDU, which is the basic exchange unit of an SDU or protocol, into several smaller units. The packing technique combines several small fields into one large field, which means combining two or more information units into one physical unit in order to save storage space.

도 5는 IEEE 802.16 시스템 기반의 무선 MAN 이동통신 시스템에서 정의하는 MAC PDU(MAC Protocol Data Unit) 형태의 일례를 나타내는 도면이다.FIG. 5 is a diagram illustrating an example of a MAC PDU (MAC Protocol Data Unit) form defined in a wireless MAN mobile communication system based on the IEEE 802.16 system.

일반적으로 제 2 계층 이하의 링크 계층(즉 Link layer 또는 MAC layer)과 물리 계층(Physical layer)에서는 LAN, Wireless LAN, 3GPP/3GPP2 또는 Wireless MAN 등의 각 시스템에 따른 프로토콜과 그에 따른 MAC PDU의 헤더 포맷이 다르게 정의된다. MAC 헤더는 링크 계층에서의 각 노드들 간의 데이터 전달 위해 노드의 MAC 주소 또는 링크 주소를 포함하며, 헤더 오류 검사(header error check) 및 링크 계층 제어 정보를 포함할 수 있다.In general, in the link layer (that is, the link layer or the MAC layer) and the physical layer (layer below the second layer), a protocol according to each system such as LAN, Wireless LAN, 3GPP / 3GPP2 or Wireless MAN, and the header of the MAC PDU The format is defined differently. The MAC header includes a node MAC address or link address for data transfer between nodes in the link layer, and may include header error check and link layer control information.

도 5를 참조하면, 각각의 MAC PDU는 일정한 길이의 MAC 헤더로 시작된다. 헤더는 MAC PDU의 페이로드(payload) 앞에 위치한다. MAC PDU의 페이로드는 서브헤더, MAC SDU 및 단편(Fragment)으로 구성될 수 있다. 가변적인 바이트 수량을 표현할 수 있도록 페이로드 정보의 길이는 변경될 수도 있다. 이에 따라, MAC 부계층은 메시지의 포맷이나 비트 패턴을 인식하지 않고도 상위계층의 다양한 트래픽 타입을 전송할 수 있다. 유보된(reserved) 모든 필드는 전송시 '0'으로 설정되며, 수신시 무시된다.5, each MAC PDU starts with a MAC header of a certain length. The header is located before the payload of the MAC PDU. The payload of a MAC PDU may be composed of a subheader, a MAC SDU, and a fragment. The length of payload information may be changed to represent a variable byte quantity. Accordingly, the MAC sublayer may transmit various traffic types of the upper layer without recognizing the format or bit pattern of the message. All reserved fields are set to '0' on transmission and ignored on reception.

MAC PDU에는 오류 검출을 위한 CRC(Cyclic Redundancy Check)가 포함될 수 있다. OFDMA 시스템의 물리 계층에서 CRC 기능이 구현될 수 있다. MAC PDU에서 유보된 모든 필드는 '0'으로 지정되며, 수신시 무시된다.The MAC PDU may include a cyclic redundancy check (CRC) for error detection. CRC function may be implemented in the physical layer of the OFDMA system. All fields reserved in the MAC PDU are designated as '0' and are ignored on receipt.

도 6은 IEEE 802.16 시스템을 기반으로 하는 무선 MAN 이동통신 시스템에서 사용되는 MAC 헤더 형태의 일례를 나타낸다.6 illustrates an example of a MAC header type used in a wireless MAN mobile communication system based on the IEEE 802.16 system.

도 6을 참조하면, MAC PDU에는 일반 MAC 헤더와 함께 6개의 서브헤더가 사용될 수 있다. MAC PDU 별 서브헤더는 일반 MAC 헤더 뒤에 삽입된다. MAC 헤더에 포함되는 각 필드에 대한 설명은 이하 상술한다.Referring to FIG. 6, six subheaders may be used in a MAC PDU together with a general MAC header. Subheaders for each MAC PDU are inserted after the generic MAC header. Description of each field included in the MAC header will be described below.

HT(Header Type) 필드는 헤더 타입을 나타내는 것으로서, 해당 MAC PDU가 헤 더 뒤에 페이로드를 포함하는 일반 MAC 헤더인지 또는 대역 요청 등의 제어를 위한 시그널링 헤더(signalling header)인지를 나타낸다. EC(Encryption Control) 필드는 암호화 제어를 나타내는 것으로서, 페이로드가 암호화 되었는지 여부를 나타낸다. Type 필드는 헤더 다음에 붙는 서브헤더의 유무 및 서브헤더의 타입을 나타낸다. ESF(Extended Subheader Field) 필드는 헤더 다음에 붙는 확장 서브헤더의 유무를 나타낸다.The HT (Header Type) field indicates a header type and indicates whether the corresponding MAC PDU is a general MAC header including a payload behind the header or a signaling header for controlling a bandwidth request. The EC (Encryption Control) field indicates encryption control and indicates whether the payload is encrypted. The Type field indicates whether there is a subheader following the header and the type of subheader. The Extended Subheader Field (ESF) field indicates the presence or absence of an extended subheader after the header.

또한, CI(CRC Indication) 필드는 CRC가 페이로드 뒤에 붙는지 여부를 나타낸다. EKS(Encryption Key Sequence) 필드는 페이로드가 암호화되는 경우, 암호화를 위해 사용되는 암호화 키 시퀀스 번호를 나타낸다. LEN(LENgth) 필드는 MAC PDU의 길이를 나타낸다. CID(Connection Identifier) 필드는 MAC PDU가 전달되는 연결 식별자를 나타낸다. 접속(Connection)은 기지국과 단말 간에 데이터 및 메시지 전달을 위한 MAC 계층의 식별자로 사용되며, CID는 특정 단말을 식별하거나 기지국과 단말 간의 특정 서비스를 식별하는 기능을 수행한다. HCS(Header Check Sequence)는 헤더의 에러를 검출하는데 사용된다. 도 6에서 각 필드의 이름 뒤의 괄호 안의 숫자는 각 필드가 차지하는 비트 수를 나타낸다.In addition, the CI (CRC Indication) field indicates whether the CRC is attached after the payload. The Encryption Key Sequence (EKS) field indicates an encryption key sequence number used for encryption when the payload is encrypted. The LEN (LENgth) field indicates the length of the MAC PDU. The Connection Identifier (CID) field indicates a connection identifier on which a MAC PDU is delivered. A connection is used as an identifier of a MAC layer for data and message transfer between a base station and a terminal, and the CID identifies a specific terminal or identifies a specific service between the base station and the terminal. The Header Check Sequence (HCS) is used to detect errors in the header. In FIG. 6, the number in parentheses after the name of each field indicates the number of bits occupied by each field.

본 발명의 실시예들에서는 랜덤 선형 부호화(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.

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

도 7을 참조하면, 원본 데이터(original data)는 송신단의 상위계층으로부터 전달된 데이터(SDU: Service Data Unit)를 나타낸다. 송신단은 원본 데이터(SDU)를 MAC 계층에서 지원하는 최대 전송 크기를 넘지 않는 범위 내에서 PDU로 분할할 수 있다. 이하, 이러한 PDU를 본 명세서에서는 원본 패킷(Original Packet) 또는 원본 블록(Original Block)이라 칭한다. 송신단은 분할된 원본 블록들을 임의의 개수(n)로 묶어서 블록집합(또는, 세그먼트(segment))을 구성할 수 있다. 이하, 본 명세서에서는 이와 같이 원본 블록들을 임의의 개수로 묶어서 생성한 블록집합을 "원본 블록집합(Original Block set)" 또는 "원본 패킷집합(Original Packet set)"이라 호칭한다.Referring to FIG. 7, original data represents service data units (SDUs) transmitted from higher layers of a transmitting end. 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” or an “original packet 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)" 또는 "부호화된 패킷집합(Encoded packet 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" or an "encoded packet 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 112009029205348-PAT00005
)을 부호화하여 생성되는 코드블록 집합(
Figure 112009029205348-PAT00006
)을 생성하는 방법의 일례를 나타낸다.Equation 1 is the original block set (
Figure 112009029205348-PAT00005
Code block set generated by encoding
Figure 112009029205348-PAT00006
An example of the method of generating) is shown.

Figure 112009029205348-PAT00007
Figure 112009029205348-PAT00007

수학식 1에서

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

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

Figure 112009029205348-PAT00011
)은 송신단 또는 송신단과 수신단이 일정 범위에서 결정한 난수(random number)를 이용하여 생성될 수 있다. 난수란, 송신단이 또는 송신단과 수신단이 협의를 통해 일정 범위(예를 들어, 0~255)의 수를 정하고, 상기 일정 범위의 수에서 무작위로 추출한 수를 말한다. 또한, 송신단 및 수신단은 랜덤계수를 생성하는데 필요한 시드(seed) 값을 공유하여 계수행렬(
Figure 112009029205348-PAT00012
)을 생성할 수도 있다. 이때, 계수행렬의 사이즈는 n×n으로 정의될 수 있다. Coefficient Matrix Used in Random Linear Coding Method
Figure 112009029205348-PAT00011
) 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 112009029205348-PAT00012
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 112009029205348-PAT00013
Figure 112009029205348-PAT00013

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

Figure 112009029205348-PAT00019
Figure 112009029205348-PAT00019

수신단에서의 디코딩을 보장하는 계수행렬Coefficient Matrix to Ensure Decoding at the Receiver

이하, 본 발명에서 제안하는 계수행렬로서, 수신단에서 소정 개수 이상의 충분한 패킷을 오류 없이 수신한 경우 항상 디코딩이 가능한 계수 행렬을 설명한다.Hereinafter, as a coefficient matrix proposed by the present invention, a coefficient matrix which can always be decoded when a sufficient number or more of a predetermined number of packets are received without error at the receiving end will be described.

먼저, 본 실시예들에서 랜덤 선형 부호화 연산에 사용되는 갈루아 필드 혹은 유한체(finite field)는 GF(2^8)이라 가정한다. 이는 GF(2^8)에서는 숫자를 1~255까지 표현 가능하므로 바이트 연산이 용이할 수 있기 때문이다. 다만, 동일한 방법을 사용하여 다른 유한체로의 확장 또한 가능함은 물론이다.First, it is assumed that a Galois field or finite field used for a random linear coding operation in the present embodiments is GF (2 ^ 8). This is because GF (2 ^ 8) can represent a number from 1 to 255, which makes byte operations easy. Of course, it is also possible to extend to other finite bodies using the same method.

랜덤 선형 부호화(Random Linear Coding)에서 부호화(coding) 및 복호(decoding)에 사용되는 계수 행렬(Coefficient matrix)는 n개의 입력 블록(i.e. 원본 블록)을 이용하여 k개(k≥n)의 출력 블록(i.e 부호화된 블록)을 만들어 낼 때, k×n 크기의 행렬이 필요하다. 즉, 수학식 1의 연산에서 각 행렬은 아래 수학 식 4와 같은 형태를 갖게 된다.The coefficient matrix used for coding and decoding in random linear coding has k (k≥n) output blocks using n input blocks (ie original blocks). When producing (ie coded blocks), a matrix of size k × n is needed. That is, in the operation of Equation 1, each matrix has a form as shown in Equation 4 below.

Figure 112009029205348-PAT00020
Figure 112009029205348-PAT00020

수학식 4의 행렬들에서 각각의 원소들은 i=k 이고 j=n 일 때,

Figure 112009029205348-PAT00021
인 조건을 만족한다.In the matrices of Equation 4, when each element is i = k and j = n,
Figure 112009029205348-PAT00021
Satisfies the condition

수신단이 디코딩을 수행할 시에는,

Figure 112009029205348-PAT00022
행렬의 행(row)들 중에서 오류없이 수신한 e i 값들에 해당하는 행들만을 뽑아서 디코딩을 수행한다. 예를 들어, e 2 가 오류없이 수신된 경우, 두 번째 행([h 2,1 h 2,2 ... h 2,n ])이 s 2 를 복원하기 위하여 선택되게 된다. 이러한 방법을 통하여 수신단은 선택된 행들 중에서 n개를 사용하여 n×n 크기의 행렬을 생성한 다음, 생성된 행렬의 역행렬(inversion)을 취하여 n 개의 원본 블럭에 대한 디코딩을 수행할 수 있다. 물론, 이러한 디코딩 과정은 오류없이 수신한 e i 값들에 해당하는 행들을 먼저 생성한 후에 n 개를 선택할 수도 있지만, n개의 오류없는 e i 들을 먼저 선택한 후 해당 n개의 행을 생성하는 순서로 수행될 수도 있다. When the receiver performs decoding,
Figure 112009029205348-PAT00022
Decoding is performed by extracting only rows corresponding to e i values received without errors from the rows of the matrix. For example, if e 2 is received without error, the second row ([ h 2,1 h 2,2 ... h 2, n ]) is selected to recover s 2 . Through this method, the receiving end may generate an n × n matrix using n of the selected rows, and then decode the n original blocks by taking an inversion of the generated matrix. Of course, this decoding process may be performed after first generating rows corresponding to e i values received without error, but selecting n error-free e i first and then generating n rows. It may be.

상술한 디코딩 방법이 항상 가능하기 위해서는 상기 수학식 4의

Figure 112009029205348-PAT00023
행렬 중에서 어떠한 n개의 행을 선택하여 n×n 크기의 행렬을 생성하더라도 항상 역행렬을 취할 수 있어야 한다.
Figure 112009029205348-PAT00024
행렬이 이러한 조건을 만족하기 위해서는
Figure 112009029205348-PAT00025
행렬의 각 행이 갈루아 필드 또는 유한체 내에서 독립(independent)일 조건을 만족해야 한다.In order to always enable the above-described decoding method, Equation 4
Figure 112009029205348-PAT00023
It should always be possible to take an inverse even when selecting n rows of the matrix and generating an n × n matrix.
Figure 112009029205348-PAT00024
In order for a matrix to satisfy these conditions,
Figure 112009029205348-PAT00025
Each row of the matrix must satisfy the condition that it is independent within a Galois field or finite field.

따라서, 본 발명에서는 n개의 행을 임의로 선택하여 n×n 크기의 행렬을 생성하더라도 항상 역행렬을 취할 수 있는

Figure 112009029205348-PAT00026
행렬로서, 아래 수학식 5와 같은 행렬을 제안한다.Therefore, in the present invention, even if a matrix of n × n is generated by randomly selecting n rows, the inverse matrix can always be taken.
Figure 112009029205348-PAT00026
As a matrix, a matrix such as Equation 5 below is proposed.

Figure 112009029205348-PAT00027
Figure 112009029205348-PAT00027

수학식 5와 같은 행렬

Figure 112009029205348-PAT00028
에서 제 1 행을 구성하는 v i 가 기 설정된 갈루아 필드에서 '1'을 제외하고 선택된 서로 다른 k개의 원소인 조건을 만족하면, 이러한
Figure 112009029205348-PAT00029
행렬은
Figure 112009029205348-PAT00030
인 어떠한 벡터에 대하여도 상술한 디코딩을 가능하게 한다. 즉, 수학식 5의
Figure 112009029205348-PAT00031
행렬은 n개의 행을 임의로 선택하여 n×n 크 기의 행렬을 생성하더라도 항상 역행렬을 취할 수 있다. 다만, 수학식 5 의 행렬은
Figure 112009029205348-PAT00032
이고,
Figure 112009029205348-PAT00033
인 조건 또한 만족하는 것이 바람직하다. 이는 n이
Figure 112009029205348-PAT00034
보다 크면, 즉,
Figure 112009029205348-PAT00035
이면 다시 1이 되고
Figure 112009029205348-PAT00036
이면 첫번째 행과 동일한 수가 되기 때문이다. Matrix like Equation 5
Figure 112009029205348-PAT00028
If v i constituting the first row in satisfies the condition of k different elements selected except '1' in the preset Gallois field, then
Figure 112009029205348-PAT00029
Matrix is
Figure 112009029205348-PAT00030
This enables the decoding described above for any vector. That is, the equation (5)
Figure 112009029205348-PAT00031
A matrix can always take an inverse even if an arbitrary number of n rows is generated to produce an n × n matrix. However, the matrix of Equation 5
Figure 112009029205348-PAT00032
ego,
Figure 112009029205348-PAT00033
It is also desirable to satisfy the phosphorus condition. N is
Figure 112009029205348-PAT00034
Is greater than,
Figure 112009029205348-PAT00035
If it's 1 again
Figure 112009029205348-PAT00036
Because if it is the same number as the first row.

상기 수학식 5와 같은 계수행렬을 이용한 수신단의 디코딩 과정을 도 8을 참조하여 보다 자세히 설명한다.The decoding process of the receiver using the coefficient matrix as shown in Equation 5 will be described in more detail with reference to FIG. 8.

도 8은 본 발명의 일 실시예와 관련된 송신단 및 수신단에서 랜덤선형부호화를 이용한 데이터 전송 및 수신과정의 일례를 나타낸다.8 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.

먼저, 송신단은 원본 데이터(i.e. SDU)를 이용하여 n개의 원본 블록들을 포함하는 원본 블록집합(

Figure 112009029205348-PAT00037
)을 생성한다(S101).First, the transmitting end uses an original block set including n original blocks using original data (ie SDU).
Figure 112009029205348-PAT00037
) Is generated (S101).

송신단은 원본 블록집합(

Figure 112009029205348-PAT00038
)을 상기 수학식 5와 같은 계수행렬(
Figure 112009029205348-PAT00039
)을 이용하여 k개의 부호화된 블록들을 생성한다(S102).The sender sets the original block set (
Figure 112009029205348-PAT00038
) Is the coefficient matrix (Equation 5)
Figure 112009029205348-PAT00039
K coded blocks are generated using (S102).

송신단은 k개의 부호화된 블록들을 이용하여 부호화된 블록집합(

Figure 112009029205348-PAT00040
)을 생성하고,
Figure 112009029205348-PAT00041
를 수신단에 전송한다(S103).The transmitting end uses a set of blocks encoded using k coded blocks (
Figure 112009029205348-PAT00040
),
Figure 112009029205348-PAT00041
It is transmitted to the receiving end (S103).

이때, 전술된 바와 같이 하나의 블록을 하나의 PDU로 가정한다면, k 개의 PDU가 송신단으로부터 수신단으로 전송된다고 볼 수 있다. 다만, 본 발명은 이에 한정되지 아니하고, 하나의 PDU에 복수의 부호화된 블록 또는 패킷이 포함되어 수신단에 전송될 수도 있다. In this case, if one block is assumed to be one PDU as described above, it can be seen that k PDUs are transmitted from the transmitting end to the receiving end. However, the present invention is not limited thereto, and a plurality of encoded blocks or packets may be included in one PDU and transmitted to the receiving end.

수신단은 부호화된 블록집합(

Figure 112009029205348-PAT00042
)을 송신단으로부터 수신한다(S104).The receiving end is encoded block set (
Figure 112009029205348-PAT00042
) Is received from the transmitting end (S104).

수신단은 수신된 부호화된 블록집합(

Figure 112009029205348-PAT00043
) 중에서 오류없이 수신된 n개의 부호화된 블록들을 선택한다. 이때, 오류없이 수신된 n개의 부호화된 블록들의 집합을 편의상
Figure 112009029205348-PAT00044
이라 표기한다(S105). The receiving end receives the received encoded block set (
Figure 112009029205348-PAT00043
) Selects n coded blocks received without error. At this time, a set of n coded blocks received without error for convenience
Figure 112009029205348-PAT00044
This is indicated (S105).

수신단은 n개의 부호화된 블록 각각의 번호에 대응되는 n개의 행(row)들을 상기 수학식 5와 같은 계수행렬(

Figure 112009029205348-PAT00045
)에서 선택하여 n×n 크기의 디코딩을 위한 계수행렬(
Figure 112009029205348-PAT00046
)을 생성한다(S106).The receiver receives n rows corresponding to the numbers of each of the n coded blocks, as shown in Equation 5 above.
Figure 112009029205348-PAT00045
Coefficient matrix for decoding n × n
Figure 112009029205348-PAT00046
) Is generated (S106).

수신단은 디코딩을 위한 계수행렬(

Figure 112009029205348-PAT00047
)의 역행렬(
Figure 112009029205348-PAT00048
)을 생성한다. 이는, 전술된 바와 같이 상기 수학식 5와 같은 계수행렬(
Figure 112009029205348-PAT00049
)로부터 생성되는 디코딩을 위한 계수행렬이 갈루아 필드에서 독립(independent)한 성격을 이용한 것이다(S107).The receiving end uses the coefficient matrix for decoding (
Figure 112009029205348-PAT00047
Inverse of
Figure 112009029205348-PAT00048
). As described above, the coefficient matrix (Equation 5)
Figure 112009029205348-PAT00049
The coefficient matrix for decoding is generated from the () using the independent nature of the Galois field (S107).

수신단은

Figure 112009029205348-PAT00050
연산을 수행하여 n 개의 원본 블록들로 구성된 원본 블록집합(
Figure 112009029205348-PAT00051
)을 복원할 수 있다(S108).The receiving end
Figure 112009029205348-PAT00050
Performs an operation on the original blockset consisting of n original blocks (
Figure 112009029205348-PAT00051
) Can be restored (S108).

따라서, 본 발명에 의하면 k개의 부호화된 패킷 중 n개 이상의 부호화된 패킷만 수신단에서 오류없이 수신되면, 전체 원본 패킷의 복원이 가능하여 효율적인 통신이 가능하다. 또한 본 발명에서 제공되는 계수행렬로 부터 생성되는 디코딩을 위한 계수행렬은 갈루아 필드에서 독립(indepedent)한 특성을 가지므로 언제나 역행렬을 취할 수 있으므로 오류없이 수신된 일부의 패킷으로 전체 수신된 데이터의 디코딩이 보장된다.Therefore, according to the present invention, if only n or more coded packets among k coded packets are received without error at the receiving end, the entire original packet can be restored and efficient communication is possible. Also, since the coefficient matrix for decoding generated from the coefficient matrix provided in the present invention has an indepedent characteristic in the Galois field, it can always take an inverse matrix, so that the decoding of the entire received data into some packets received without error. This is guaranteed.

송신단과 수신단의 계수행렬 공유방법Method of sharing coefficient matrix between transmitter and receiver

이하, 상기와 같은 조건을 만족하는

Figure 112009029205348-PAT00052
행렬이 수신단에서 원본 블록집합의 인코딩에 사용되는 경우, 수신단이 부호화된 블록집합을 디코딩할 수 있도록 송신단과 수신단이
Figure 112009029205348-PAT00053
행렬을 공유하는 방법을 설명한다.Hereinafter, satisfying the above conditions
Figure 112009029205348-PAT00052
When a matrix is used at the receiving end for encoding the original blockset, the transmitting end and the receiving end may be able to decode the encoded blockset.
Figure 112009029205348-PAT00053
Describes how to share a matrix.

먼저, 본 발명에서 제안된 수학식 5와 같은 형태의

Figure 112009029205348-PAT00054
행렬에서 제 1열의 원소들인 v1 내지 vk 사이의 값들은 송신단이 수신단에 데이터 패킷(e.g. 원본 블록집합 또는 부호화된 블록집합)을 전송하기 전에 미리 양측에 공유되어 있는 것이 바람직하다. 이를 위하여, 송신단을 기지국이라 가정하고 수신단을 이동 단말이라 가정할 때, v1 내지 vk 사이의 값들은 초기 망 진입(initial network entry)절차 또는 기지국에서 브로드캐스트되는 시스템 정보를 포함하는, 다양한 유니캐스트 또는 브로드캐스트 방법을 통하여 단말에 전달될 수 있다.First, in the form of the equation (5) proposed in the present invention
Figure 112009029205348-PAT00054
The values between v 1 to v k, which are elements of the first column of the matrix, are preferably shared in both sides before the transmitting end transmits a data packet (eg, original block set or encoded block set) to the receiving end. To this end, assuming a transmitting end as a base station and a receiving end as a mobile terminal, values between v 1 and v k include various network information including an initial network entry procedure or system information broadcast from the base station. It may be delivered to the terminal through a cast or broadcast method.

또는, v1 내지 vk 사이의 값들이 일정한 규칙, 예를 들면 소정의 수열 또는 수학식을 따라 생성되는 경우를 가정한다. 이때, 송수신단에 v1 내지 vk 사이의 값들을 생성하기 위한 소정의 수열 또는 수학식은 서로간에 미리 약속되어있는 것이 바람직하다. 따라서, 송신단이 수신단에 v1 내지 vk 사이의 값들 중 어느 하나(e.i. 시드값)를 알려주면, 수신단은 획득한 하나의 값으로 v1 내지 vk 전부를 생성하여 계수행렬의 제 1열을 완성할 수 있다.Or, suppose that values between v 1 and v k are generated according to a certain rule, for example, a predetermined sequence or equation. At this time, it is preferable that predetermined sequences or equations for generating values between v 1 and v k are promised to each other in advance. Therefore, when the transmitting end informs the receiving end of any one of the values between v 1 and v k (ei seed value), the receiving end generates all v 1 to v k using the obtained one value to generate the first column of the coefficient matrix. I can complete it.

상술된 방법들을 통하여 수신단은 송신단에서 원본 블록집합의 인코딩에 사용된 계수행렬의 1열을 구성할 수 있다. 계수행렬의 1열이 구성됨에 따라, 계수행렬의 나머지 부분은, 각각의 1열 원소들을 1 부터 n까지 차수를 높여가며 해당 열을 채워나감에 따라 완성될 수 있다.Through the above-described methods, the receiving end may configure one column of the coefficient matrix used for encoding the original block set at the transmitting end. As one column of the coefficient matrix is constructed, the remainder of the coefficient matrix can be completed by filling each column element by increasing the order from 1 to n.

그런데, 부호화된 블록 ei에서 원본 블록 sj를 복원하기 위해서는, 수신단이 i값, 즉, 부호화된 블록의 번호를 알아야 한다. 이는 수신단이 i값을 알아야 송신단이 인코딩에 사용한 vi값을 알 수 있기 때문이다. 이를 위하여, 수신단이 i 값을 알아낼 수 있는 방법은 다음과 같다.However, in order to recover the original block s j from the coded block e i , the receiving end needs to know the i value, that is, the number of the coded block. This is because the receiver must know the value of i to know the value of v i used for encoding. To this end, the method for the receiver to find the value of i is as follows.

첫째로, 송신단이 수신단에 직접 i값을 알려주는 방법이 사용될 수 있다. 이를 위하여, 송신단은 sj를 인코딩하여 ei를 생성하는 과정에서 ei의 헤더(e.g. 일반 MAC 헤더: Generic MAC Header) 또는 서브헤더에 i 값을 포함시킬 수 있다. i 값은 '재전송 패킷 번호(retransmission packet number) i' 필드의 형태로 헤더 또는 서브헤더에 포함될 수 있다.First, a method in which the transmitting end notifies the i value directly to the receiving end may be used. To this end, the sending end of the header, i e in the process of generating e i encodes s j: may include the value of i to (eg generic MAC header Generic MAC Header) or a sub-header. The i value may be included in the header or subheader in the form of a 'retransmission packet number i' field.

둘째로, 송신단으로부터의 직접적인 정보 없이 수신단이 i값을 계산할 수도 있다. 전술된 바와 같이, ei 의 크기는 갈루아 필드의 설정에 의하여 정해진다. 이를 이용하면, 송신단은 ei의 크기를 알 수 있으며, 수신된 데이터를 순서대로 ei의 크기 단위로 구분하여 i값을 추정할 수 있다. 이때, 수신단은 수신된 데이터가 원본 블록인지 부호화된 블록인지 구분할 수 있는 것이 바람직하다. 이를 위하여, 송신단은 데이터 패킷을 생성할 때 원본 블록과 부호화된 블록을 구분하기 위한 필드를 PDU의 헤더 또는 서브헤더에 포함시키는 것이 바람직하다.Secondly, the receiving end may calculate the i value without direct information from the transmitting end. As mentioned above, the size of e i is determined by the setting of the Galois field. Using this, the transmitting end can know the size of e i , and can divide the received data by the size unit of e i in order to estimate i value. In this case, the receiving end may be able to distinguish whether the received data is an original block or an encoded block. To this end, when generating a data packet, the transmitting end preferably includes a field for distinguishing the original block from the encoded block in the header or subheader of the PDU.

본 발명의 또 다른 실시예로서, 상술된 본 발명의 실시예들이 수행될 수 있는 송신단 또는 수신단으로서, 단말 및 기지국(FBS, MBS)을 설명한다.As another embodiment of the present invention, a terminal and a base station (FBS, MBS) will be 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는 서비스 데이터 유닛(SDU)을 이용하여 MAC PDU를 구성하는 방법을 나타낸다.4 illustrates a method of configuring a MAC PDU using a service data unit (SDU).

도 5는 일반적으로 사용되는 IEEE 802.16 시스템 기반의 무선 MAN 이동통신 시스템에서 정의하는 MAC PDU(MAC Protocol Data Unit) 형태의 일례를 나타낸다.FIG. 5 illustrates an example of a MAC PDU (MAC Protocol Data Unit) type defined in a wireless MAN mobile communication system based on an IEEE 802.16 system.

도 6은 일반적으로 사용되는 IEEE 802.16 시스템을 기반으로 하는 무선 MAN 이동통신 시스템에서 사용되는 MAC 헤더 형태의 일례를 나타낸다.6 illustrates an example of a MAC header type used in a wireless MAN mobile communication system based on a commonly used IEEE 802.16 system.

도 7은 본 발명의 실시예들에 적용될 수 있는 랜덤선형부호화를 사용하여 데이터 블록 집합들을 부호화하는 과정을 나타낸다.7 illustrates a process of encoding data block sets using random linear coding that can be applied to embodiments of the present invention.

도 8은 본 발명의 일 실시예와 관련된 송신단 및 수신단에서 랜덤선형부호화를 이용한 데이터 전송 및 수신과정의 일례를 나타낸다.8 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.

Claims (14)

송신단이 데이터를 수신단에 전송하는 방법에 있어서In the method of transmitting data to the receiving end 상위계층 데이터를 소정 크기로 분할하여 생성된 복수의 데이터 블록들을 포함하는 데이터 블록집합에 랜덤선형부호화(RLC)를 적용하여 복수의 부호화된 블록들을 생성하는 단계; 및Generating a plurality of encoded blocks by applying random linear coding (RLC) to a data block set including a plurality of data blocks generated by dividing higher layer data into a predetermined size; And 상기 복수의 부호화된 블록들을 상기 수신단에 전송하는 단계를 포함하되,Transmitting the plurality of encoded blocks to the receiving end; 상기 복수의 부호화된 블록들을 생성하는 단계는,Generating the plurality of encoded blocks may include: 각 행(row)이 기 설정된 갈루아 필드(Galois field) 내에서 독립(independent)한 특성을 갖는 계수행렬(Coefficient matrix)을 이용하여 수행되는 것을 특징으로 하는 데이터 전송방법.A method of transmitting data, characterized in that each row is performed using a coefficient matrix having independent characteristics in a preset Galois field. 제 1항에 있어서,The method of claim 1, 상기 계수행렬은 하기 행렬 1과 같은 형태를 갖는 것을 특징으로 하는 데이터 전송방법.The coefficient matrix has a form as shown in the following matrix 1. [행렬 1][Matrix 1]
Figure 112009029205348-PAT00055
Figure 112009029205348-PAT00055
여기에서,
Figure 112009029205348-PAT00056
는 상기 계수행렬을 나타내고, 제 1열을 구성하는 각 원소(v i )는 상기 기 설정된 갈루아 필드에서 '1'을 제외하고 선택된 서로 다른 k개의 원소이며,
Figure 112009029205348-PAT00057
이고,
Figure 112009029205348-PAT00058
이며, m은 갈루아 필드의 크기를 결정하는 차수를 나타낸다.
From here,
Figure 112009029205348-PAT00056
Represents the coefficient matrix, and each element ( v i ) constituting the first column is k different elements selected from the preset Galois field except for '1',
Figure 112009029205348-PAT00057
ego,
Figure 112009029205348-PAT00058
Where m represents the order that determines the size of the Galois field.
제 2항에 있어서,3. The method of claim 2, 상기 계수행렬의 상기 제 1열을 구성하는 각 원소(v i )를 상기 송신단 및 상기 수신단이 공유하는 단계를 더 포함하는, 데이터 전송방법.And sharing the elements v i constituting the first column of the coefficient matrix by the transmitting end and the receiving end. 제 3항에 있어서, The method of claim 3, wherein 상기 각 원소를 공유하는 단계는,The step of sharing each element, 상기 송신단 및 수신단의 초기 망 진입(initial network entry)절차를 통하 여 수행되는 것을 특징으로 하는 데이터 전송방법.And performing an initial network entry procedure of the transmitting end and the receiving end. 제 3항에 있어서.The method of claim 3. 상기 복수의 부호화된 블록들은, The plurality of encoded blocks, MAC 헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 상기 수신단에 전송되고,Transmitted to the receiving end via one or more protocol data units (PDUs) including a MAC header, 상기 MAC 헤더는,The MAC header, 상기 부호화된 블록의 랜덤선형부호화 여부를 지시하는 필드 및 상기 부호화된 블록의 번호를 지시하는 필드 중 적어도 하나를 포함하는 것을 특징으로 하는 데이터 전송방법.And at least one of a field indicating whether a random linear encoding of the encoded block and a field indicating a number of the encoded block. 제 3항에 있어서,The method of claim 3, wherein 상기 복수의 부호화된 블록들은, The plurality of encoded blocks, 소정의 서브헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 상기 수신단에 전송되고,Transmitted to the receiving end via one or more protocol data units (PDUs) including a predetermined subheader, 상기 소정의 서브헤더는,The predetermined subheader is 상기 부호화된 블록의 랜덤선형부호화 여부를 지시하는 필드 및 상기 부호화된 블록의 번호를 지시하는 필드 중 적어도 하나를 포함하는 것을 특징으로 하는 데이터 전송방법.And at least one of a field indicating whether a random linear encoding of the encoded block and a field indicating a number of the encoded block. 수신단에서 데이터를 수신하는 방법에 있어서,In the method for receiving data at the receiving end, 복수의 부호화된 블록들을을 상기 송신단으로부터 수신하는 단계; 및Receiving a plurality of encoded blocks from the transmitting end; And 제 1 계수행렬(Coefficient matrix)을 이용하여 상기 수신된 복수의 부호화된 블록들을 디코딩하는 단계를 포함하되,Decoding the received plurality of encoded blocks using a first coefficient matrix; 상기 제 1 계수행렬은,The first coefficient matrix, 상기 송신단에서 소정 개수의 원본 데이터 블록에 랜덤선형부호화(RLC)를 적용하여 상기 복수의 부호화된 블록들을 생성하는 과정에서 사용된 계수행렬이며, 각 행이 기 설정된 갈루아 필드(Galois field) 내에서 독립한 특성을 갖는 것을 특징으로 하는 데이터 수신방법.A coefficient matrix used in the process of generating the plurality of coded blocks by applying random linear coding (RLC) to a predetermined number of original data blocks at the transmitting end, wherein each row is independent in a preset Galois field. A data receiving method, characterized in that it has one characteristic. 제 7항에 있어서,The method of claim 7, wherein 상기 제 1 계수행렬은 하기 행렬 1과 같은 형태를 갖는 것을 특징으로 하는 데이터 수신방법.And the first coefficient matrix has the same shape as matrix 1 below. [행렬 1][Matrix 1]
Figure 112009029205348-PAT00059
Figure 112009029205348-PAT00059
여기에서,
Figure 112009029205348-PAT00060
는 상기 제 1 계수행렬을 나타내고, 제 1열을 구성하는 각 원소(v i )는 상기 기 설정된 갈루아 필드에서 '1'을 제외하고 선택된 서로 다른 k개의 원소이며,
Figure 112009029205348-PAT00061
이고,
Figure 112009029205348-PAT00062
이며, m은 갈루아 필드의 크기를 결정하는 차수를 나타낸다.
From here,
Figure 112009029205348-PAT00060
Represents the first coefficient matrix, and each element ( v i ) constituting the first column is k different elements selected from the preset Galois field except for '1',
Figure 112009029205348-PAT00061
ego,
Figure 112009029205348-PAT00062
Where m represents the order that determines the size of the Galois field.
제 8항에 있어서,The method of claim 8, 상기 계수행렬의 제 1열을 구성하는 상기 각 원소(v i )를 상기 송신단 및 상기 수신단이 공유하는 단계를 더 포함하는, 데이터 수신방법.And sharing, by the transmitting end and the receiving end, each element v i constituting the first column of the coefficient matrix. 제 9항에 있어서,The method of claim 9, 상기 수신된 복수의 부호화된 블록들을 디코딩하는 단계는,Decoding the received plurality of encoded blocks, 상기 계수행렬에서 상기 복수의 부호화된 블록들 중 오류없이 수신된 소정 개수의 부호화된 블록들의 번호 각각에 대응되는 소정 개수의 행(row)들을 선택하여 제 2 계수행렬을 생성하는 단계;Generating a second coefficient matrix by selecting a predetermined number of rows corresponding to each of a number of a predetermined number of coded blocks received without an error among the plurality of coded blocks in the coefficient matrix; 상기 제 2 계수행렬의 역행렬을 생성하는 단계; 및Generating an inverse of the second coefficient matrix; And 상기 생성된 역행렬 및 상기 오류없이 수신된 소정 개수의 부호화된 블록들을 이용하여 상기 소정 개수의 원본 블록들을 복원하는 단계를 포함하는, 데이터 수신방법.Restoring the predetermined number of original blocks using the generated inverse and the predetermined number of encoded blocks received without error. 제 10항에 있어서,The method of claim 10, 상기 소정 개수의 부호화된 블록들 각각의 번호는,The number of each of the predetermined number of encoded blocks is 상기 기 설정된 갈루아 필드에 의하여 결정된 상기 부호화된 블록의 크기를 이용하여 추정된 것을 특징으로 하는 데이터 수신방법.And estimating the size of the coded block determined by the preset Galois field. 제 11항에 있어서,The method of claim 11, 상기 복수의 부호화된 블록들은, The plurality of encoded blocks, MAC 헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 상기 송신단으로부터 수신되고, Received from the transmitting end via one or more protocol data units (PDUs) including a MAC header, 상기 MAC 헤더는 상기 프로토콜 데이터 유닛에 포함된 상기 복수의 부호화된 블록들의 랜덤선형부호화 여부를 지시하는 필드를 포함하고,The MAC header includes a field indicating whether or not random linear encoding of the plurality of encoded blocks included in the protocol data unit, 상기 수신단은 상기 소정 개수의 부호화된 블록들 각각의 번호를 추정함에 있어서 상기 랜덤선형부호화 여부를 더욱 고려하는 것을 특징으로 하는 데이터 수신방법.And the receiving end further considers whether the random linear encoding is performed in estimating the number of each of the predetermined number of encoded blocks. 제 10항에 있어서,The method of claim 10, 상기 복수의 부호화된 블록들은, The plurality of encoded blocks, MAC 헤더를 포함하는 하나 이상의 프로토콜 데이터 유닛(PDU)을 통하여 상기 송신단으로부터 수신되고, Received from the transmitting end via one or more protocol data units (PDUs) including a MAC header, 상기 MAC 헤더는 상기 부호화된 블록의 번호를 나타내는 필드를 포함하는 것 을 특징으로 하는 데이터 수신방법.And the MAC header includes a field indicating a number of the encoded block. 제 10항에 있어서,The method of claim 10, 상기 제 2 계수행렬을 생성하는 단계는,Generating the second coefficient matrix, 상기 공유된 상기 계수행렬의 제 1열을 구성하는 상기 각 원소(v i ) 중에서 오류없이 수신된 오류없이 수신된 소정 개수의 부호화된 블록들의 번호 각각에 대응되는 원소들의 차수를 상기 제 1 계수행렬의 형태를 만족하도록 순차적으로 증가시켜 상기 소정 개수의 행(row)들을 생성하는 단계를 포함하는, 데이터 수신방법.The order of the elements corresponding to each of the numbers of the predetermined number of coded blocks received without error among the elements v i constituting the first column of the shared coefficient matrix, received without error. Generating the predetermined number of rows by sequentially incrementing to satisfy a form of?.
KR1020090042481A 2009-01-07 2009-05-15 Method for transmitting and receiving Data using Random Linear Coding KR101571728B1 (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
KR20100081901A true KR20100081901A (en) 2010-07-15
KR101571728B1 KR101571728B1 (en) 2015-11-25

Family

ID=42642227

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020090042482A KR101605323B1 (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
KR1020090042481A KR101571728B1 (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
KR1020090042482A KR101605323B1 (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) KR101605323B1 (en)

Cited By (2)

* 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
CN114422082A (en) * 2021-12-30 2022-04-29 广东中兴新支点技术有限公司 Transmission control method, system, device and medium based on linear network coding

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101603556B1 (en) 2015-10-22 2016-03-15 홍익대학교 산학협력단 Data transmission system, encoding apparatus and encoding method
KR101954372B1 (en) 2018-10-12 2019-03-05 한국벤토나이트 주식회사 Manufacturing Method of Fuel Solid Comprising Organic Waste

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 (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
CN114422082A (en) * 2021-12-30 2022-04-29 广东中兴新支点技术有限公司 Transmission control method, system, device and medium based on linear network coding
CN114422082B (en) * 2021-12-30 2023-07-28 广东中兴新支点技术有限公司 Transmission control method, system, device and medium based on linear network coding

Also Published As

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

Similar Documents

Publication Publication Date Title
JP5572220B2 (en) Method and apparatus for transmitting MAC PDU with fragmented packing extension header
JP4877979B2 (en) Method of operating in a network in which multiple stations communicate via a shared medium
RU2461147C2 (en) Method of processing radio protocol in mobile communication system and mobile communication transmitter
KR100917205B1 (en) Method of configuring a data block in wireless communication system
US8743905B2 (en) Method and apparatus for bundling and ciphering data
ES2901374T3 (en) Method and apparatus for performing an efficient layer 2 function in a mobile communication system
US20200358570A1 (en) Communications method and apparatus
US7899056B2 (en) Device and method for reducing overhead in a wireless network
WO2017198236A1 (en) Data transmission method, device, and system
JP2012503408A (en) RLC segmentation for carrier aggregation
CN112889313A (en) Method and apparatus for compressing header supporting high-reliability low-delay terminal in next generation mobile communication system
JP2010200323A (en) System and method for reducing overhead in wireless network
KR20200076568A (en) Method and apparatus for identfying security key based on pdcp layer device in next generation mobile communication system
KR20090087773A (en) Apparatus and method for retransmittion packet data unit and reporting status in a mobile communication system
KR101571728B1 (en) Method for transmitting and receiving Data using Random Linear Coding
Sengupta et al. Exploiting MAC flexibility in WiMAX for media streaming
CN115276891A (en) Data transmission method and device and readable storage medium
EP1510017B1 (en) Synchronizing method and apparatus using error detection of sequence numbers to avoid synchronizing failure
WO2017143538A1 (en) Voice data transmission method and apparatus
KR101430482B1 (en) Method of forming Protocol Data
KR20100082698A (en) Method and apparatus of transmitting data efficiently using multiplexing mac header
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
CN111556529A (en) Method and device used in user equipment and base station for wireless communication
KR20200076573A (en) Method and apparatus for identfying security key based on pdcp layer device in next generation mobile communication system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee