KR20080106867A - A method of communicating using random linear coding in radio access system - Google Patents

A method of communicating using random linear coding in radio access system Download PDF

Info

Publication number
KR20080106867A
KR20080106867A KR1020080052797A KR20080052797A KR20080106867A KR 20080106867 A KR20080106867 A KR 20080106867A KR 1020080052797 A KR1020080052797 A KR 1020080052797A KR 20080052797 A KR20080052797 A KR 20080052797A KR 20080106867 A KR20080106867 A KR 20080106867A
Authority
KR
South Korea
Prior art keywords
data
data block
arq
size
subheader
Prior art date
Application number
KR1020080052797A
Other languages
Korean (ko)
Other versions
KR101526972B1 (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 KR20080106867A publication Critical patent/KR20080106867A/en
Application granted granted Critical
Publication of KR101526972B1 publication Critical patent/KR101526972B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

A communicating method using random linear coding is provided to supply a communication service with high quality to a user by proving a communication method applying an RLC in an OFDMA based communication network. A support state of an R-ARQ(RLC based Automatic Repeat reQuest) applying an RLC(Random Linear Coding) is determined. A size of data block and a size of data block group to divide upper layer data are determined. The upper layer data are divided into the size of data block. The data blocks included in the data block group are encoded to code blocks by using the random linear coding in a data block group unit(507). A sub header including information about the size of data block and the size of the data block group and a protocol data unit including the encoded code block are transmitted.

Description

무선 접속 시스템에서 난수선형부호화를 이용한 통신방법{A method of communicating using Random Linear Coding in radio access system}A method of communicating using Random Linear Coding in radio access system

본 발명은 무선접속 시스템에 관한 것이다. 또한, 불필요한 자원의 이용을 최소화하면서 RLC를 사용하는 통신방법에 관한 것이다.The present invention relates to a wireless access system. The present invention also relates to a communication method using RLC while minimizing the use of unnecessary resources.

이하, 직교주파수분할다중접속(OFDMA: Orthogonal Frequency Division Multiplexing Access) 시스템에서 사용하는 일반적인 매체접속제어(MAC: Medium Access Control) 헤더에 대해 간략히 설명한다.Hereinafter, a general medium access control (MAC) header used in an orthogonal frequency division multiplexing (OFDMA) system will be briefly described.

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

도 1을 참조하면, MAC PDU에는 일반 MAC 헤더와 함께 6개의 서브헤더가 사용될 수 있다. PDU 별 서브헤더는 일반 MAC 헤더 뒤에 삽입된다. 도 1에서 각 필드의 이름 뒤의 괄호 안의 숫자는 각 필드가 차지하는 비트 수를 나타낸다. Referring to FIG. 1, six subheaders may be used in a MAC PDU together with a general MAC header. The subheader for each PDU is inserted after the generic MAC header. In FIG. 1, the number in parentheses after the name of each field indicates the number of bits occupied by each field.

일반적인 MAC 헤더에 포함되는 각 필드에 대한 설명은 이하 상술한다.Description of each field included in the general MAC header will be described below.

다음 표 1은 MAC 헤더 포맷의 일례를 나타낸다.Table 1 below shows an example of the MAC header format.

Figure 112008040306678-PAT00001
Figure 112008040306678-PAT00001

표 1을 참조하면, HT 필드는 헤더 타입을 나타낸다. 예를 들어, 당해 MAC PDU가 헤더 뒤에 페이로드를 포함하는 일반 MAC 헤더인지, 또는 대역 요청 등의 제어를 위한 시그널링 헤더인지를 나타낸다. EC 필드는 암호화 제어를 나타내는 것으로서, 페이로드가 암호화 되었는지 여부를 나타낸다. Type 필드는 헤더 다음에 붙는 서브헤더의 유무 및 서브헤더의 타입을 나타낸다. ESF 필드는 헤더 다음에 붙는 확장된 서브헤더의 유무를 나타낸다. Referring to Table 1, the HT field indicates a header type. For example, this indicates whether the MAC PDU is a general MAC header including a payload after the header or a signaling header for controlling a bandwidth request. The EC 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 ESF field indicates the presence of an extended subheader after the header.

또한, CI 필드는, CRC가 페이로드 뒤에 붙는지를 나타낸다. EKS 필드는 페이로드가 암호화되는 경우, 암호화를 위해 사용되는 암호화 키 시퀀스 번호를 나타낸다. LEN 필드는 MAC PDU의 길이를 나타낸다. CID(Connection Identifier) 필드는 MAC PDU가 전달되는 연결 식별자를 나타낸다. 접속(Connection)은 기지국과 단말 간에 데이터 및 메시지 전달을 위한 MAC 계층의 식별자로 사용되며, CID는 특정 단말을 식별하거나 기지국과 단말 간의 특정 서비스를 식별하는 기능을 수행한다. HCS(Header Check Sequence)는 헤더의 에러를 검출하는데 사용된다. In addition, the CI field indicates whether the CRC is attached after the payload. The EKS field indicates an encryption key sequence number used for encryption when the payload is encrypted. The LEN 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.

다음 표 2는 표 1에 포함되는 Type 필드 포맷의 일례를 나타낸다.Table 2 below shows an example of a type field format included in Table 1.

Figure 112008040306678-PAT00002
Figure 112008040306678-PAT00002

Type 필드는 MAC 헤더에서 6비트의 영역을 차지한다. 표 2를 참조하면, Type 필드가 속한 각 비트에 따라 MAC PDU의 종류를 확인할 수 있다. 예를 들어, Type 필드는 6비트로 구성되는데, 첫 번째 비트(# 0, LSB)는 하향링크에서는 고속 피드백 할당 서브헤더(FAST-FEEDBACK Allocation subheader)를 나타내고, 상향링크에서는 허가 관리 서브헤더(Grant Management Subheader)를 나타낸다.The Type field occupies a 6 bit area in the MAC header. Referring to Table 2, the type of MAC PDU can be checked according to each bit to which the Type field belongs. For example, the Type field is composed of 6 bits. The first bits (# 0, LSB) indicate the FAST-FEEDBACK Allocation subheader in downlink, and grant management subheader in the uplink. Subheader).

두 번째 비트(# 1)는 패킹 서브헤더(packing subheader)를 나타내고, 세 번째 비트(# 2)는 단편화 서브헤더(fragmentation Subheader)를 나타내고, 네 번째 비트(# 3)는 확장된 타입으로서, 현재 패킹 또는 단편화 서브헤더가 확장되었는지 여부를 나타낸다. 또한, 다섯 번째 비트(# 4)는 AQR 피드백 페이로드를 나타내고, 여섯 번째 비트(# 5, MSB)는 메쉬 서브헤더(mesh subheader)를 나타낸다.The second bit (# 1) represents the packing subheader, the third bit (# 2) represents the fragmentation subheader, and the fourth bit (# 3) is the extended type, Indicates whether the packing or fragment subheader is expanded. In addition, the fifth bit (# 4) represents the AQR feedback payload, and the sixth bit (# 5, MSB) represents a mesh subheader.

난수선형부호화(RLC: Random Linear Coding)를 사용하기 위해서 송신측 및 수신측 사이에서 효율적으로 파라미터들을 협상해야 한다. 다만, 이에 대한 명확한 방법이 없어 RLC를 이용한 통신이 어려운 실정이다. RLC를 이용한 통신을 수행하기 위해서, 복호화(Decoding)에 필요한 부호화(Encoding)시 사용한 계수(Coefficient)정보를 코드블록(coded block)을 전송할 때마다 매번 전달하는 경우 큰 오버헤드로 작용할 수 있다.In order to use Random Linear Coding (RLC), parameters must be efficiently negotiated between a transmitting side and a receiving side. However, since there is no clear method for this, communication using RLC is difficult. In order to perform communication using RLC, the coefficient information used for encoding required for decoding may be a large overhead when each time a coded block is transmitted every time a coded block is transmitted.

본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 효율적인 통신방법을 제공하는 것이다.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.

본 발명의 다른 목적은 난수선형부호화(RLC)를 이용한 효율적인 통신방법을 제공하는 것이다.Another object of the present invention is to provide an efficient communication method using random linear coding (RLC).

본 발명의 또 다른 목적은 OFDMA 기반 통신망에서 불필요한 자원의 이용을 최소화하기 위해, RLC를 적용한 통신방법을 제공하는 것이다.Another object of the present invention is to provide a communication method using RLC in order to minimize the use of unnecessary resources in an OFDMA-based communication network.

본 발명의 또 다른 목적은 RLC통신을 가능하도록 하는 송신단 및 수신단의 통신 개시 방법과 효과적으로 랜덤 계수(Random Coefficient)를 전달하는 방법을 제공하는 것이다. It is still another object of the present invention to provide a method of initiating communication between a transmitting end and a receiving end enabling RLC communication and a method of effectively transferring a random coefficient.

상기의 기술적 과제를 해결하기 위해, 본 발명은 무선접속 시스템에 관한 것이다. 또한, 불필요한 자원의 이용을 최소화하면서 RLC를 사용하는 통신방법에 관 한 것이다.In order to solve the above technical problem, the present invention relates to a wireless access system. In addition, it relates to a communication method using RLC while minimizing the use of unnecessary resources.

본 발명의 일 양태로서 상기 본 발명은, 난수선형부호화(RLC)를 적용하는 자동재전송방법(R-ARQ)의 지원여부를 협상 하는 단계와 상위계층 데이터를 분할할 데이터 블록의 크기 및 데이터 블록집합의 크기를 결정하는 단계와 상위계층 데이터를 데이터 블록의 크기로 분할하고, 데이터 블록집합 단위로 난수선형부호화를 이용하여 데이터 블록집합에 포함된 데이터 블록들을 코드블록들로 부호화하는 단계와 데이터 블록의 크기 및 데이터 블록집합의 크기 정보를 포함하는 서브헤더 및 부호화한 코드블록을 포함하는 프로토콜 데이터 유닛을 전송하는 단계를 포함할 수 있다.According to an aspect of the present invention, the present invention provides a method for negotiating support for an automatic retransmission method (R-ARQ) applying random linear coding (RLC) and a data block size and a data block set for dividing higher layer data. Determining the size of the data block and dividing the upper layer data into the size of the data block, encoding the data blocks included in the data block set into code blocks by using random number linear coding in the data block set unit, and The method may include transmitting a subheader including the size and the size information of the data block set and a protocol data unit including the coded code block.

또한, 상기 방법에서 서브헤더는, 데이터 블록의 크기, 데이터 블록집합의 크기 및 타이머 정보를 포함할 수 있다. Also, in the method, the subheader may include a size of a data block, a size of a data block set, and timer information.

또한, 상기 방법에서 서브헤더는, 상기 데이터 블록집합의 처리 시간에 대한 타이머 정보를 더 포함할 수 있다.Also, in the method, the subheader may further include timer information about a processing time of the data block set.

또한, 상기 방법에서 서브헤더는, 시작 시드값을 더 포함하고, 상기 시작 시드값은 상기 난수선형부호화를 이용시 사용될 수 있다. Further, in the above method, the subheader further includes a starting seed value, and the starting seed value may be used when using the random number linear encoding.

또한, 상기 방법에서 서브헤더는, 프로토콜 데이터에 포함되는 코드블록들이 단편화 상태로 포함되는지 또는 패킹 상태로 포함되는지 여부를 나타낼 수 있다.Further, in the method, the subheader may indicate whether the code blocks included in the protocol data are included in the fragmented state or the packed state.

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

첫째, 본 발명을 이용하면 효율적인 통신방법을 수행할 수 있다.First, using the present invention can perform an efficient communication method.

둘째, 본 발명은 RLC를 기반으로 하는 ARQ를 사용함으로써, 효율적인 통신을 수행할 수 있다.Second, the present invention can perform efficient communication by using an ARQ based on RLC.

셋째, 본 발명은 OFDMA 기반의 통신망에서 RLC를 적용한 통신방법을 제공함으로써, 사용자에 더 효율적이고 뛰어난 품질의 통신 서비스를 제공할 수 있다.Third, the present invention provides a communication method using RLC in an OFDMA-based communication network, thereby providing a more efficient and excellent quality communication service to a user.

본 발명은 무선접속 시스템에 관한 것이다. 또한, 불필요한 자원의 이용을 최소화하면서 RLC를 사용하는 통신방법에 관한 것이다.The present invention relates to a wireless access system. The present invention also relates to a communication method using RLC while minimizing the use of unnecessary resources.

이하의 실시예들은 본 발명의 구성요소들과 특징들을 소정 형태로 결합한 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려될 수 있다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성할 수도 있다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다.The following embodiments combine the components 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 embodied in a form that is not combined with other components or features. In addition, some components 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 components or features of one embodiment may be included in another embodiment or may be replaced with corresponding components or features of another embodiment.

도면에 대한 설명에서, 본 발명의 요지를 흐릴수 있는 절차 또는 단계 등은 기술하지 않았으며, 당업자의 수준에서 이해할 수 있을 정도의 절차 또는 단계는 또한 기술하지 아니하였다.In the description of the drawings, procedures or steps, which may obscure the gist of the present invention, are not described, and procedures or steps that can be understood by those skilled in the art are not described.

본 명세서에서 본 발명의 실시예들은 기지국과 단말 간의 데이터 송수신 관계를 중심으로 설명되었다. 여기서, 기지국은 단말과 직접적으로 통신을 수행하는 네트워크의 종단 노드(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.

또한, 송신단은 데이터 또는 음성 서비스를 전송하는 노드를 말하고, 수신단은 데이터 또는 음성 서비스를 수신하는 노드를 의미한다. 따라서, 상향링크에서는 단말이 송신단이 되고, 기지국이 수신단이 될 수 있다. 마찬가지로, 하향링크에서는 단말이 수신단이 되고, 기지국이 송신단이 될 수 있다.In addition, the transmitting end refers to a node transmitting data or voice service, and the receiving end refers to a node receiving data or voice service. Therefore, in uplink, a terminal may be a transmitting end and a base station may be a receiving end. Similarly, in downlink, a terminal may be a receiving end and a base station may be a transmitting end.

한편, 본 발명의 이동 단말로는 PDA(Personal Digital Assistant), 셀룰러폰, PCS(Personal Communication Service)폰, GSM(Global System for Mobile)폰, WCDMA(Wideband CDMA)폰, MBS(Mobile Broadband System)폰 등이 이용될 수 있다.On the other hand, the mobile terminal of the present invention PDA (Personal Digital Assistant), cellular phone, PCS (Personal Communication Service) phone, GSM (Global System for Mobile) phone, WCDMA (Wideband CDMA) phone, MBS (Mobile Broadband System) phone And the like can be used.

본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(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), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.In the case of a hardware implementation, the method according to embodiments of the present invention may include 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 the specific terms may be modified in other forms without departing from the technical spirit of the present invention.

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

상위계층으로부터 전달받은 서비스 데이터 유닛(SDU: Service Data Unit)을 이용하여 MAC PDU를 구성할 수 있다. 이때, 단편화(fragmentation) 또는 패킹(packing) 기법이 사용될 수 있다. 단편화 기법은 SDU 또는 프로토콜의 기본 교환 단위인 PDU를 여러 개의 더 작은 단위로 나누는 동작을 말한다. 패킹 기법은 몇 개의 작은 필드를 하나의 큰 필드로 결합하는 것으로서, 기억 장소를 절약하기 위해서 2개 이상의 정보 단위를 하나의 물리적 단위로 결합하는 것을 의미한다.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.

도 2를 참조하면, 페이로드 헤더 압축 인덱스(PHSI: Payload Header Suppression Index) 및 패킷 PDU를 포함하는 상위계층 데이터를 단편화하거나, 하나 이상의 상위계층 데이터로부터 분할된 SDU들을 패킹하는 과정을 확인할 수 있다. Referring to FIG. 2, a process of fragmenting higher layer data including a payload header compression index (PHSI) and a packet PDU or packing SDUs divided from one or more higher layer data may be confirmed.

도 3은 본 발명의 일 실시예에 따라 난수선형부호화 방법을 이용하여 코드블록을 구성하는 방법을 나타내는 도면이다.3 is a diagram illustrating a method for constructing a code block using a random number linear coding method according to an embodiment of the present invention.

본 발명의 실시예들에서 사용될 수 있는 데이터 처리 방법 중 하나는 난수 선형 부호화 방법(RLC: Randomized Linear Coding)이다. RLC를 사용하여 데이터 블록을 처리하는 방법은 다음과 같다.One of the data processing methods that can be used in the embodiments of the present invention is a randomized linear coding method (RLC). The method of processing data blocks using RLC is as follows.

RLC는 송신측 통신 시스템의 데이터 처리 과정에서 사용된다. 송신측은 상위계층 데이터를 하나 이상의 데이터 블록들로 분할한다. 송신측에서 분할된 데이터 블록들을 부호화(coding) 하기 위한 계수 행렬(coefficient matrix)을 생성하며, 상기 분할된 데이터 블록들에 일정한 규칙에 따라 생성된 상기 계수행렬을 곱하거나 기타 여러 연산방법을 이용하여 부호화한다. RLC는 이와 같은 데이터 처리 방법이다.RLC is used in the data processing of the sender communication system. The sender splits higher layer data into one or more data blocks. A coefficient matrix for encoding the divided data blocks is generated at the transmitting side, and the coefficient data generated according to a predetermined rule is multiplied by the divided data blocks or other various calculation methods are used. Encode RLC is such a data processing method.

본 발명의 일 실시예로서, 데이터 처리 방법 중 하나는 난수 선형 복호화 방법(RLD: Randomized Linear Decoding)이다. 난수 선형 복호화 방법을 사용하여 데이터 블록을 처리하는 방법은 다음과 같다.As an embodiment of the present invention, one of the data processing methods is a randomized linear decoding method (RLD). A method of processing data blocks using a random linear decoding method is as follows.

RLD는 수신측 통신 시스템의 데이터 처리 과정에서 사용된다. 수신측은 송신측으로부터 부호화된 데이터 블록들을 수신한다. 또한, 수신측은 송신측으로부터 복호화하는데 필요한 상기 계수행렬을 수신한다. 수신측에서는 상기 부호화된 데이터 블록들과 상기 계수행렬의 역행렬을 이용하거나 다른 다양한 연산 방법을 이용하여 복호화 과정을 수행한다. RLD는 이와 같은 데이터 처리 방법이다.RLD is used in the data processing of the receiving side communication system. The receiving side receives the encoded data blocks from the transmitting side. The receiving side also receives the coefficient matrix necessary for decoding from the transmitting side. The receiver performs a decoding process by using the inverse of the encoded data blocks and the coefficient matrix or by using various other calculation methods. RLD is such a data processing method.

RLC 및 RLD에서 사용되는 계수행렬은 송신측 또는 송신측과 수신측이 일정 범위에서 결정한 난수(random number)를 이용하여 생성될 수 있다. 상기 난수란, 송신측이 또는 송신측과 수신측의 협의를 통해 일정 범위(예를 들어, 0~255)의 수를 정하여, 상기 일정 범위의 수에서 무작위로 숫자를 추출해내는 것을 말한다. 또한, 상기 계수행렬은 계수를 생성하는데 필요한 시드(seed) 값을 이용하여 생성될 수도 있다. The coefficient matrix used in the RLC and the RLD may be generated using a random number determined by a transmitter or a transmitter and a receiver in a predetermined range. The random number means that a number of a predetermined range (for example, 0 to 255) is determined by a transmitter or through negotiation between a transmitter and a receiver, and randomly extracts a number from the number of the predetermined range. In addition, the coefficient matrix may be generated using a seed value required to generate a coefficient.

상기 RLC 및 RLD는 본 발명에서 예시하는 데이터 처리 방법을 정의한 용어에 불과하며, 기타 상기 방법을 나타내는 용어는 다양하게 변형될 수 있다.The RLC and RLD are merely terms defining data processing methods exemplified in the present invention, and other terms indicating the above methods may be variously modified.

도 3를 참조하면, 상위계층에서 전달된 서비스 데이터 유닛(SDU: Service Data Unit)은 적어도 하나 이상의 프로토콜 데이터 유닛들(PDUs: Protocol Data Units)로 가공된다.Referring to FIG. 3, a service data unit (SDU) delivered from an upper layer is processed into at least one protocol data units (PDUs).

상기 PDU들을 본 명세서에서는 원본 데이터 블록(original data block, 이하 'blk')이라 부르기로 한다. 상위계층에서 전달된 데이터인 SDU를 크기 s(size)인 작은 데이터 블록으로 나누고 그 중 n개를 선택하여 데이터 블록 집합을 구성한다. 이를 원본 데이터 블록 집합(original data block set)이라 부르기로 한다. 또한, 본 발명의 실시예에 의해 개시되는 데이터 처리방법을 통해 만들어지는 데이터 블록을 부호화된 데이터 블록 또는 코드블록(coded block)이라 부르기로 한다. 다만, 도 3을 설명하기 위해 사용한 용어들은 본 발명의 일 실시예를 설명하기 위해 사용되었고 다른 형태의 용어로도 변형이 가능하다.In the present specification, the PDUs will be called an original data block (hereinafter, 'blk'). The SDU, which is the data transferred from the upper layer, is divided into small data blocks of size s (size), and n of them is selected to form a data block set. This is called an original data block set. In addition, a data block made through a data processing method disclosed by an embodiment of the present invention will be referred to as a coded data block or a coded block. However, terms used to describe FIG. 3 are used to describe one embodiment of the present invention and may be modified in other forms of terms.

상기 데이터 블록을 부호화하는 방법은 다음 수학식으로 일반화할 수 있다.The method of encoding the data block can be generalized by the following equation.

Figure 112008040306678-PAT00003
Figure 112008040306678-PAT00003

수학식 1를 살펴보면, coded _ blk j 는 코드블록의 일반식을 나타내고, C ji 는 계수 행렬의 일반식을 나타내는 표현이다. blk i 는 원본 데이터 블록(original data block)을 나타내는 것이다. 상기 일반화된 수식으로써, 본 명세서에서 제안하는 난수 선형 부호화 방법을 표현할 수 있다.Referring to Equation 1, coded _ blk j represents the general formula of the code block, C ji is an expression representing the general formula of the coefficient matrix. blk i denotes an original data block. As the generalized equation, the random number linear coding method proposed in the present specification can be expressed.

이와 같이, 부호화된 행렬은 계수행렬과 원본 데이터 행렬의 곱으로 형성될 수 있으며, 각각의 코드블록은 원본 데이터 블록 집합의 정보를 모두 포함한다. 따라서, 일부 코드블록이 유실되거나 오류가 생겨 원본 데이터의 복원에 사용할 수 없는 경우에도, 오류가 발생한 코드블록과 동일한 코드블록을 전송할 필요가 없이 다른 코드블록을 생성하여 전송함으로써 오류를 정정할 수 있다.As described above, the encoded matrix may be formed by multiplying the coefficient matrix and the original data matrix, and each code block includes all the information of the original data block set. Therefore, even if some code blocks are lost or have errors and cannot be used for restoring the original data, errors can be corrected by generating and transmitting another code block without having to transmit the same code block as the failed code block. .

도 4는 R-ARQ를 고려한 MAC PDU 구성방법의 일례를 나타낸다.4 shows an example of a method of configuring a MAC PDU in consideration of R-ARQ.

송신단에서 MAC PDU를 구성시 R-ARQ(RLC based Automatic Repeat reQuest)를 고려하여 R-ARQ 제어 서브헤더를 포함할 수 있다. 도 4를 참조하면, MAC 헤더에 포함되는 R-Ind 필드는 1인 경우, R-ARQ 제어 서브헤더가 MAC PDU에 포함된다. MAC PDU의 페이로드에는 MAC SDU가 포함될 수 있다. 또한, MAC PDU에는 오류제어를 위해 CRC가 첨부된다.When configuring the MAC PDU at the transmitter, the R-ARQ control subheader may include the R-ARQ (RLC based Automatic Repeat reQuest). Referring to FIG. 4, when the R-Ind field included in the MAC header is 1, the R-ARQ control subheader is included in the MAC PDU. The payload of the MAC PDU may include the MAC SDU. In addition, the CR P is attached to the MAC PDU for error control.

다음 표 3는 본 발명의 실시예들에서 사용될 수 있는 R-ARQ 제어 서브헤더의 일례를 나타낸다.Table 3 below shows an example of an R-ARQ control subheader that can be used in embodiments of the present invention.

SyntaxSyntax Size(bit)Size (bit) NotesNotes R-ARQ Control Subheader() {R-ARQ Control Subheader () { FC FC 22 Indicates the fragmentation or packing state of the payload: 00 = Last fragment (no fragment) 01 = Middle fragment 10 = Packing 11 = Reserved Indicates the fragmentation or packing state of the payload: 00 = Last fragment (no fragment) 01 = Middle fragment 10 = Packing 11 = Reserved Block Set #  Block Set # 88 block set # = Fragmentation #block set # = Fragmentation # Alignment indicator   Alignment indicator 1One If (Alignment indicator) If (Alignment indicator) # of Blocks # of Blocks 88 Padding indicator Padding indicator 1One if (Padding indicator) if (Padding indicator) # of Padding bits # of Padding bits 88 }}

표 3은 RLC를 사용하는 통신에서 단편(즉, 블록집합)을 나타내기 위해 사용하는 R-ARQ 제어 서브헤더의 일례이다. FC 필드는 단편 제어(fragmentation control)을 수행 여부를 나타내는 것으로서, R-ARQ 제어 서브 헤더의 뒤를 따라오는 페이로드가 마지막 단편(또는 no fragment; FC=00)인지, 중간 단편(FC=01)인지 또는 패킹된 단편(FC=10)인지 여부를 나타낼 수 있다. FC가 마지막 단편으로 설정되면, SDU가 두 개 이상의 단편으로 분할되어 전달되는 경우, 해당 PDU가 마지막 단편을 포함하는 것을 나타낸다. 송신단은 'No fragment'인 경우에도 마지막 단편과 동일하게 처리되므로, 마지막 단편인 것으로 수신단에 알려 줄 수 있다.Table 3 is an example of an R-ARQ control subheader used to represent fragments (ie, blocksets) in communication using RLC. The FC field indicates whether fragmentation control is performed and whether the payload following the R-ARQ control subheader is the last fragment (or no fragment; FC = 00) or an intermediate fragment (FC = 01). Or whether it is a packed fragment (FC = 10). If the FC is set as the last fragment, when the SDU is split into two or more fragments and delivered, it indicates that the corresponding PDU includes the last fragment. Since the transmitting end is processed the same as the last fragment even in the case of 'No fragment', the transmitting end may inform the receiving end as being the last fragment.

블록집합 번호(Block set #) 파라미터는 해당 PDU에 포함되는 블록집합의 번호를 나타낼 수 있다. 또한, 해당 PDU에 포함되는 블록집합의 개수를 나타낼 수도 있다.The block set number parameter may indicate the number of block sets included in the corresponding PDU. In addition, the number of block sets included in the corresponding PDU may be indicated.

송신단은 해당 단편에서 포함되는 블록의 개수 알려주기 위해 정렬 지시자(alignment indicator)를 사용할 수 있다. 송신단은 정렬 지시자를 '1'로 설정한 경우, '# of block' 필드를 이용하여 블록의 개수를 알려줄 수 있다. 만약, 정렬 지시자가 '0'으로 설정된 경우에는 SDU가 단편되지 않은 것을 나타낸다.The transmitter may use an alignment indicator to inform the number of blocks included in the fragment. When the transmitter sets the alignment indicator to '1', the transmitter may inform the number of blocks using the '# of block' field. If the alignment indicator is set to '0', this indicates that the SDU is not fragmented.

또한, 마지막 단편(Last fragment 또는 no fragment)의 경우는 패딩을 수행하는 경우가 발생할 수 있다. 따라서, R-ARQ 제어 서브헤더에는 이를 알려 주는 패딩 지시자(padding indicator) 필드가 포함된다. 이때, 패딩 지시자 필드가 '1'로 설정이 된 경우, 송신단은 '# of padding bits' 필드를 이용하여 패딩된 비트가 몇 개인지를 알려 줄 수 있다. 패킹인 경우에도 상기 정렬(alignment) 및 패딩(padding) 문제가 발생할 수 있으므로 동일하게 알려 줄 수 있다.In addition, in the case of the last fragment (Last fragment or no fragment) may be the case of performing the padding. Accordingly, the R-ARQ control subheader includes a padding indicator field indicating this. In this case, when the padding indicator field is set to '1', the transmitter may inform how many padded bits are using the '# of padding bits' field. Even in the case of packing, the same alignment and padding problems may occur.

도 5는 IEEE 802.16 시스템에서 사용되고 있는 프로토콜 계층 구성도이다.5 is a diagram illustrating a protocol layer used in an IEEE 802.16 system.

도 5를 참조하면, 송신측의 상위계층(예를 들어, IP layer, ATM 및 Ethernet 등, 501)은 CS(Convergence Sublayer) SAP(Service Access Point)를 통해 데이터를 SDU의 형태로 매체 접속 제어(MAC) SAP를 통해 MAC CPS(Common Point Sublayer, 502)로 전달한다.Referring to FIG. 5, the upper layer (eg, IP layer, ATM, Ethernet, etc.) 501 of the transmitting side transmits data in the form of SDU through the Convergence Sublayer (CS) Service Access Point (CS). MAC) Through SAP, it is delivered to MAC CPS (Common Point Sublayer) 502.

MAC CPS(502)에서는 SDU 형태로 전달된 데이터를 RLC를 이용하여 MAC PDU로 가공한다. 가공된 MAC PDU는 보안 부계층(Privacy Sublayer, 503)에서 보안 암호(security encryption)가 추가로 부가된 후 PHY(physical) SAP를 통해 물리 계층(PHY, 504)으로 전달된다. 물리 계층(504)은 가공된 PDU를 무선 또는 유선 구간으로 전송하기 위한 동작을 수행한다.The MAC CPS 502 processes the data transmitted in the form of SDU into a MAC PDU using RLC. The processed MAC PDU is delivered to the physical layer (PHY) 504 through a PHY (physical) SAP after the security encryption (security encryption) is additionally added at the security sublayer (Privacy Sublayer, 503). The physical layer 504 performs an operation for transmitting the processed PDU in a wireless or wired interval.

수신측의 물리계층은 무선 또는 유선 구간으로 송신측에서 전송된 MAC PDU를 수신하여 PHY SAP를 통해 MAC CPS에 이를 전달한다. 상기 MAC CPS에서는 본 발명의 일 실시예에서 제안하는 데이터 처리 방법을 통해 원래 정보 데이터를 복원한다. 상기 복원된 데이터는 MAC SAP를 통해 상위 계층으로 전달된다. 또한, 수신측에서 데이터 수신 상태에 따라 ARQ 동작을 수행하여 ACK/NACK(Acknowledgement/Non-Acknowledgement)을 송신측으로 전송한다.The physical layer on the receiving side receives the MAC PDU transmitted from the transmitting side in a wireless or wired interval and delivers it to the MAC CPS through the PHY SAP. In the MAC CPS, original information data is restored through a data processing method proposed in an embodiment of the present invention. The recovered data is delivered to the upper layer via MAC SAP. In addition, the receiver performs an ARQ operation according to the data reception state and transmits ACK / NACK (Acknowledgement / Non-Acknowledgement) to the transmitter.

본 발명의 실시예들에서 제안하는 데이터 처리 방법과 데이터 재전송 방법이 쓰일 수 있는 영역은 MAC CPS(502)이다. MAC CPS(502)에서 데이터 처리, 즉 데이터의 부호화, 복호화 등의 데이터 처리 과정이 수행된다. 또한, MAC CPS(502)에서 데이터 재전송 방법인 ARQ(Automatic Repeat Request) 동작이 수행된다. 본 발명에서 제안하는 실시예들 중 데이터 재전송 방법에 관한 실시예들도 역시 MAC CPS(502)에서 수행될 수 있다. The MAC CPS 502 is an area in which the data processing method and the data retransmission method proposed in the embodiments of the present invention can be used. In the MAC CPS 502, data processing, that is, data processing such as data encoding and decoding, is performed. In addition, an Automatic Repeat Request (ARQ) operation, which is a data retransmission method, is performed in the MAC CPS 502. Embodiments of the data retransmission method among the embodiments proposed in the present invention may also be performed in the MAC CPS 502.

다만, 프로토콜 스택에서 볼 수 있듯이, 계층별로 프로토콜 처리에 필요한 '헤더' 등이 데이터에 붙게 된다. 상기 헤더에 의해 비록 데이터 처리시 다른 계층을 통해 데이터가 전달되더라도 같은 계층끼리 통신을 주고 받는 것으로 나타낼 수 있다. 따라서, 송신측과 수신측의 MAC CPS에서 데이터 처리 방법과 데이터 재전송 방법이 사용되는 경우에도, 본 발명의 실시예들에서는 송신측과 수신측으로 간략히 설명한다.However, as can be seen in the protocol stack, the headers required for protocol processing are attached to the data for each layer. The header may indicate that the same layers communicate with each other even though data is transmitted through different layers during data processing. Therefore, even when the data processing method and the data retransmission method are used in the MAC CPS of the transmitting side and the receiving side, embodiments of the present invention will be briefly described as the transmitting side and the receiving side.

도 5에서 쓰인 용어들은 본 발명에서 사용되는 데이터 처리 방법과 데이터 재전송 방법이 사용되는 일례를 나타낸 것일 뿐이며, 다른 용어로도 사용될 수 있다. 예를 들어, WCDMA(Wideband Code DIvision Multiplex Access)에서는 데이터 재전송 방법이 RLC(Radio Link Layer) 계층에서 사용된다.The terminology used in FIG. 5 only shows an example in which the data processing method and the data retransmission method used in the present invention are used, and may be used in other terms. For example, in wideband code division multiplex access (WCDMA), a data retransmission method is used in a radio link layer (RLC) layer.

이하에서는 OFDMA 시스템에 RLC를 기반으로 한 ACR를 적용하는 방법에 대하여 상세하게 설명한다.Hereinafter, a method of applying an ACR based on RLC to an OFDMA system will be described in detail.

R-ARQ는 RCL에 기반한 자동재전송 방식을 의미한다. R-ARQ를 적용하기 위해 다음과 같은 내용들이 사용된다.R-ARQ means an automatic retransmission method based on RCL. The following are used to apply R-ARQ.

등록 절차에서 송신단 및 수신단은 서로의 성능(capability)을 협상하는 경우, SS 성능 인코딩(SS capability encodings) 내의 ARQ 지원 필드에 다음 타입값을 추가할 수 있다.In the registration procedure, when the transmitter and the receiver negotiate the capability of each other, the next type value may be added to the ARQ support field in the SS capability encodings.

다음 표 4는 SS 성능 인코딩 내의 ARQ 지원필드에 포함되는 타입값 포맷의 일례를 나타낸다.Table 4 below shows an example of a type value format included in an ARQ support field in SS capability encoding.

TypeType LengthLength ValueValue ScopeScope 1010 1One 0 = No ARQ support capability 1 = ARQ supported 2 = R-ARQ supported0 = No ARQ support capability 1 = ARQ supported 2 = R-ARQ supported REG-REQ, REG-RSPREG-REQ, REG-RSP

표 4를 참조하면, ARQ 지원필드에 포함되는 타입값은 ARQ가 지원되는지 여부, 및 ARQ가 지원되는지 또는 R-ARQ가 지원되는지 여부를 나타낼 수 있다.Referring to Table 4, the type value included in the ARQ support field may indicate whether ARQ is supported, and whether ARQ is supported or R-ARQ is supported.

또한, 서비스 플로우 관리 인코딩(Service Flow Encoding)을 위해 다음 표 5가 추가될 수 있다.In addition, Table 5 below may be added for service flow management encoding.

TypeType ParameterParameter 1One Service Flow identifierService flow identifier 22 CIDCID 33 Service Class NameService Class Name 44 Reserved MBS ServiceReserved MBS Service 55 QoS Parameter Set TypeQoS Parameter Set Type ...... ...... 4747 R-ARQ EnableR-ARQ Enable 4848 R-ARQ Block sizeR-ARQ Block size 4949 R-ARQ Num BlockR-ARQ Num Block 5050 R-ARQ ACK TimeoutR-ARQ ACK Timeout 5151 R-ARQ Block Set TimeoutR-ARQ Block Set Timeout

표 5를 참조하면, 새로운 인코딩 파라미터들(47~51)이 포함된 것을 확인할 수 있다. 이하에서는, 새로이 추가된 인코딩 파라미터들에 대하여 설명한다.Referring to Table 5, it can be seen that the new encoding parameters 47 to 51 are included. Hereinafter, the newly added encoding parameters will be described.

다음 표 6은 R-ARQ 인에이블(R-ARQ enable) 파라미터 포맷의 일례를 나타낸다.Table 6 below shows an example of an R-ARQ enable parameter format.

TypeType LengthLength ValueValue ScopeScope [145/146].47 1.47[145/146]. 47 1.47 1One 0 = R-ARQ Not Requested / Accepted 1= R-ARQ Requested / Accepted0 = R-ARQ Not Requested / Accepted 1 = R-ARQ Requested / Accepted DSA-REQ, DSA-RSP REG-REQ, REG-RSPDSA-REQ, DSA-RSP REG-REQ, REG-RSP

송신측과 수신측 사이에 연결이 이루어질 때, R-ARQ 방식을 사용할 것인지를 협의한다. '0'은 R-ARQ를 사용하지 않음을 요청하는 것이고, '1'은 R-ARQ를 사용하는 것에 대한 요청을 나타낸다. DSA-REQ 제어 신호는 해당 요청을 포함할 수 있다. DSA-RSP 제어 신호에서 해당 요청에 대한 승인 또는 거부 여부를 알려줘야 한다. R-ARQ는 송신측, 수신측 모두 사용한다고 되어있을 때, 해당 연결에 대해 작동한다. 단말은 R-ARQ에 대해 거부하거나 허용해야 한다.When a connection is made between the transmitting side and the receiving side, it negotiates whether to use the R-ARQ scheme. '0' indicates not to use R-ARQ, and '1' indicates a request to use R-ARQ. The DSA-REQ control signal may include the request. The DSA-RSP control signal shall indicate whether to approve or reject the request. R-ARQ works for the connection when it is supposed to use both the sender and receiver. The terminal should reject or allow the R-ARQ.

다음 표 7은 R-ARQ를 사용시 SDU를 분할하는 단위에 대한 정보를 나타내는 'R-ARQ_BLOCK_size' 파라미터의 일례를 나타낸다.Table 7 below shows an example of an 'R-ARQ_BLOCK_size' parameter indicating information on a unit for dividing an SDU when using R-ARQ.

TypeType LengthLength ValueValue ScopeScope [145/146].48 1.48[145/146]. 48 1.48 1One > 0> 0 DSx-REQ, DSx-RSP REG-REQ, REG-RSPDSx-REQ, DSx-RSP REG-REQ, REG-RSP

표 7은 'R-ARQ_BLOCK_size'를 나타낸다. Table 7 shows 'R-ARQ_BLOCK_size'.

송신측과 수신측 사이에 연결이 이루어지는 시점에서 R-ARQ를 사용한다면, SDU를 자르는 단위인 's'를 알고 있어야 한다. 'R-ARQ_BLOCK_size'는 s에 대한 정보를 포함하고 있다.If R-ARQ is used at the point of connection between sender and receiver, it is necessary to know 's' which is the unit for cutting SDU. 'R-ARQ_BLOCK_size' contains information about s.

다음 표 8은 R-ARQ를 사용시 블록집합에 포함되는 블록의 개수를 나타내는 'R-ARQ_NUM_BLOCK' 파라미터의 일례를 나타낸다.Table 8 below shows an example of the 'R-ARQ_NUM_BLOCK' parameter indicating the number of blocks included in the block set when using R-ARQ.

TypeType LengthLength ValueValue ScopeScope [145/146].49 1.49[145/146]. 49 1.49 1One > 0> 0 DSx-REQ, DSx-RSP REG-REQ, REG-RSPDSx-REQ, DSx-RSP REG-REQ, REG-RSP

송신단은 난수선형부호화(Randomized Linear Coding) 기법을 이용하기 위하여 원본블록집합(Original block set)을 결정한다. 이때, 'R-ARQ_NUM_BLOCK' 파라미터는 하나의 블록집합에 포함되는 블록(또는, 코드블록)의 개수를 나타낸다.The transmitter determines an original block set in order to use a randomized linear coding scheme. In this case, the 'R-ARQ_NUM_BLOCK' parameter indicates the number of blocks (or code blocks) included in one block set.

다음 표 9는 송신단에서 코드블록을 모두 전송후 ACK 수신을 기다리기 위한 타이머(R-ARQ_ACK_TIMEOUT) 포맷의 일례를 나타낸다.Table 9 below shows an example of a timer (R-ARQ_ACK_TIMEOUT) format for waiting for ACK reception after transmitting all code blocks at the transmitting end.

TypeType LengthLength ValueValue ScopeScope [145/146].50 1.50[145/146]. 50 1.50 22 0-65530 (10us granularity)0-65530 (10us granularity) DSx-REQ, DSx-RSP REG-REQ, REG-RSPDSx-REQ, DSx-RSP REG-REQ, REG-RSP

표 9는 RLC 기법을 적용하는 송신단에서 코드블록집합에 해당하는 코드블록(coded block)의 개수를 모두 전송한 후 타이머(timer)를 작동시켜 수신측으로부터 ACK 신호를 기다린다. 표 9는 이때의 타이머 값을 나타낸다.Table 9 transmits all the number of coded blocks corresponding to the code block set in the transmitter using RLC and waits for an ACK signal from the receiver by operating a timer. Table 9 shows timer values at this time.

다음 표 10은 하나의 블록집합을 처리하는데 필요한 시간을 나타내는 'R-ARQ_BLOCK_SET_TIMEOUT_TLV'를 나타낸다.Table 10 below shows 'R-ARQ_BLOCK_SET_TIMEOUT_TLV' indicating the time required to process one block set.

TypeType LengthLength ValueValue ScopeScope [145/146].51 1.51[145/146]. 51 1.51 22 0-65530 (10us granularity)0-65530 (10us granularity) DSx-REQ, DSx-RSP REG-REQ, REG-RSPDSx-REQ, DSx-RSP REG-REQ, REG-RSP

송신측과 수신측 사이에서 코드블록(coded block)을 전달할 때, 하나의 블록집합(block set)을 처리하는데 필요한 시간을 나타낸다. 설정된 값 이내에 수신측은 블록집합에 속한 블록들을 정상적으로 수신하여야 한다. 코드블록을 전송하는 도중 채널 상황이 급격히 좋지 않아 여러 코드블록에서 오류가 검출되고, 새로운 코드블록을 생성하는 과정에서 이미 사용되었던 계수를 재사용하는 것을 방지할 수 있다. When a coded block is transferred between a transmitting side and a receiving side, it represents a time required to process one block set. Within the set value, the receiving side should normally receive the blocks belonging to the block set. Since the channel situation is not so good during the transmission of the code block, an error is detected in several code blocks, and it is possible to prevent reuse of coefficients that have already been used in the process of generating a new code block.

이하에서는 송신측과 수신측에서 코드블록을 포함하는 MPDU를 구성하는 방법에 대하여 설명한다. R-ARQ를 이용하는 특별한 MPDU를 나타내기 위하여 다음의 내용이 추가될 수 있다. 확장된 R-ARQ 서브헤더 포맷(Extended R-ARQ subheader format) 에 R-ARQ 제어 서브헤더(R-ARQ Control subheader)를 정의한다.Hereinafter, a method of configuring an MPDU including code blocks at a transmitter and a receiver will be described. The following may be added to indicate a special MPDU using R-ARQ. An R-ARQ Control subheader is defined in the Extended R-ARQ subheader format.

다음 표 11은 확장된 서브헤더 포맷의 일례를 나타낸다.Table 11 below shows an example of an extended subheader format.

SyntaxSyntax SizeSize (( bitbit )) NotesNotes Extended R-ARQ Control Subheader() {Extended R-ARQ Control Subheader () { Type Type 1One SEED or CoefficientSEED or Coefficient FC FC 22 Indicates the fragmentation or packing state of the payload: 00 = Last fragment (no fragment) 01 = Middle fragment 10 = Packing 11 = Reserved Indicates the fragmentation or packing state of the payload: 00 = Last fragment (no fragment) 01 = Middle fragment 10 = Packing 11 = Reserved Block Set # Block Set # 88 Alignment indicator  Alignment indicator 1One If (Alignment indicator)   If (Alignment indicator) # of Blocks    # of Blocks 88 Padding indicator  Padding indicator 1One if (Padding indicator)   if (Padding indicator) # of Padding bits    # of Padding bits 88 Start Seed  Start Seed 88 }}

확장된 R-ARQ 서브헤더 포맷은 기본적으로 표 3과 동일하다. 다만 몇몇 필드가 추가되었는데 Type 필드 및 시작 시드(Start Seed) 필드 등이다. 표 3의 R-ARQ 제어 서브헤더에서 추가되는 부분은 다음과 같다. The extended R-ARQ subheader format is basically the same as in Table 3. However, some fields have been added, such as the Type field and the Start Seed field. The added part of the R-ARQ control subheader of Table 3 is as follows.

타입(type) 필드는 RLC 생성시 필요한 시드(seed)를 보낼 것인지 혹은 랜덤 계수(Random coefficient)를 보낼 것인지를 나타낸다. 시작 시드(Start seed) 필드는 인코딩(encoding)에서 사용된 시드의 첫 번째 값을 넣어주며, 이는 디코딩(decoding)시 계수를 복원하는데 이용된다. 해당 값의 크기는 다양하게 설정할 수 있지만 여기서는 예로서 8bit 값을 이용한다. 랜덤 계수는 인코딩에서 사용된 실제 계수 값을 넣어주며 이는 디코딩(decoding) 시 이용될 수 있다.The type field indicates whether to send a seed or a random coefficient required for generating an RLC. The Start seed field puts the first value of the seed used in encoding, which is used to recover the coefficients during decoding. The size of the value can be set in various ways, but here we use an 8-bit value as an example. The random coefficient puts the actual coefficient value used in the encoding, which can be used during decoding.

시드(Seed)를 생성하는 방법은 다음과 같다. How to create a seed (Seed) is as follows.

예를 들어, 시드를 순차적으로 구성된 소수(prime number)에서 뽑아낼 수 있다. 1에서 45까지의 소수를 살펴보면, {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43} 등으로 구성되어 있다. 송신측 및 수신측 사이에 해당 소수들을 미리 알고 있다고 가정하면, 송신측에서는 소수집합(prime number set)에서 몇 번째 시드를 사용할 것인지를 R-ARQ 제어 서브헤더의 시드(Seed) 부분에 기입한다. 이를 수신한 수신측에서는 소수집합에서 해당 소수를 시드로 이용했다는 것을 알게 되고, 계수를 복원할 수 있다.For example, the seeds can be extracted from sequentially constructed prime numbers. Looking at prime numbers from 1 to 45, it consists of {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43} and the like. Assuming that the primes are known in advance between the transmitter and the receiver, the transmitter writes in the Seed portion of the R-ARQ control subheader the number of seeds to use in the prime number set. Upon receiving this, the receiving side knows that the prime is used as the seed in the prime set and can restore the coefficient.

시작 시드(Start Seed) 필드에서는 MPDU내에 포함된 코드블록의 첫 번째 코드블록에 대한 시드 정보를 포함하고 있지만, 위의 예에서 살펴보면 시드를 미리 가정된 소수집합(prime number set)에서 순차적으로 이용하는 것을 알 수 있다. R-ARQ 제어 서브헤더의 '# of Blocks' 정보를 이용하여 MPDU내에 몇 개의 코드블록이 포함되어있는지 알 수 있고, 이를 통해 다른 코드블록의 시드 정보를 순차적으로 계산할 수 있다.The Start Seed field contains seed information for the first code block of the code block included in the MPDU. However, in the above example, the seed is used sequentially in a presumed prime number set. Able to know. By using '# of Blocks' information of the R-ARQ control subheader it can be seen how many code blocks are included in the MPDU, through which the seed information of the other code blocks can be calculated sequentially.

계수를 이용하여 디코딩시 사용하는 방법의 일례는 다음과 같다. An example of a method used for decoding using coefficients is as follows.

1) 코드북(Codebook) 형태로 랜덤 계수(random coefficient)를 미리 만들 수 있다. 이 경우, 송신측 및 수신측은 동일한 코드북을 미리 알고 있어야 한다. 예를 들어 5×5의 H 행렬(H matrix)를 미리 정해놨다면, 송신측은 수신측에 현재 사용된 코드북의 인덱스(또는, 포인터(pointer))만을 전달하면 된다. 다만, 코드북에 오류가 발생하는 경우에는 이미 사용했던 코드북을 재사용할 수 있으므로, 실제로는 5×5 이상의 코드북을 생성하는 것이 바람직하다. 1) Random coefficients can be made in advance in the form of a codebook. In this case, the transmitting side and the receiving side must know the same codebook in advance. For example, if an H matrix of 5x5 has been determined in advance, the transmitting side needs to pass only the index (or pointer) of the codebook currently used at the receiving side. However, when an error occurs in the codebook, the codebook that has already been used can be reused, so it is preferable to generate a codebook of 5 × 5 or more.

2) CID를 이용하여 랜덤 계수를 생성할 수 있다. 하나의 연결 내에서는 CID는 변하지 않는 값이다. 따라서, CID에 변수(variable)를 첨부하여 계수를 생성할 수 있다. 이때, 변수를 무작위의 수 또는 순차적인 수로써 선택하는 것은, 변수만을 사용하는 것과 차이가 없다.2) A random coefficient may be generated using the CID. Within a connection, the CID is a constant value. Therefore, a coefficient may be generated by attaching a variable to the CID. At this time, selecting the variable as a random number or a sequential number is not different from using only the variable.

3) 2 바이트의 랜덤 시드를 이용하여 랜덤 계수를 생성할 수 있다. 독립적으로 시드를 생성하려면 소수(prime number)를 시드로 이용할 수 있다. 예를 들어 시드 2(seed=2) 및 시드 4(seed=4)는 서로 배수관계이다.3) A random coefficient of 2 bytes can be used to generate a random coefficient. To generate a seed independently, you can use a prime number as the seed. For example, seed 2 (seed = 2) and seed 4 (seed = 4) are multiples of each other.

다음은 수신측이 송신측으로부터 인코딩에 필요한 코드블록을 모두 수신하고, 이에 대한 ACK를 전송하기 위해 사용되는 정보들이다.The following is information used for a receiver to receive all code blocks necessary for encoding from a transmitter and to transmit an ACK.

SyntaxSyntax SizeSize NotesNotes R-ARQ_Feedback_IE() {R-ARQ_Feedback_IE () { CID    CID 16 bits16 bits Block Set #    Block Set # 8 bits8 bits } }

표 12를 참조하면, R-ARQ 피드백 정보는 연결식별자(CID) 및 블록셋 번호(Block set #) 필드를 포함할 수 있다. CID는 해당 연결을 나타내는 식별자이고, 블록셋 번호는 송신측에서 처리할 코드블록집합(coded block set)의 번호를 나타낸다.Referring to Table 12, the R-ARQ feedback information may include a connection identifier (CID) and a block set number (Block set #) field. The CID is an identifier indicating a corresponding connection, and the block set number indicates a number of coded block sets to be processed by the transmitting side.

R-ARQ에서 사용되는 파라미터들은 다음과 같다.The parameters used in R-ARQ are as follows.

1) R-ARQ_BLOCK_SIZE1) R-ARQ_BLOCK_SIZE

'R-ARQ_BLOCK_SIZE' 파라미터는 SDU를 자르는 단위인 's'에 대한 정보를 포함한다. 's'는 블록의 크기를 나타내며, 송신측과 수신측 사이에 연결이 이루어지는 시점에서 송신측과 수신측 간에 협의를 통해 설정된다.The 'R-ARQ_BLOCK_SIZE' parameter contains information about 's', which is a unit for cutting SDUs. 's' represents the size of the block, and is set through negotiation between the transmitting side and the receiving side at the point of time when a connection is made between the transmitting side and the receiving side.

2) R-ARQ_NUM_BLOCK2) R-ARQ_NUM_BLOCK

'R-ARQ_NUM_BLOCK' 파라미터는 원본블록집합에 포함되는 블록의 개수를 나타낸다. 즉, 난수선형부호화(RLC) 기법을 이용하기 위하여 원본블록집합을 결정해야 하는데, 이때 원본블록집합에 포함되는 블록의 수를 나타낸다.The 'R-ARQ_NUM_BLOCK' parameter indicates the number of blocks included in the original block set. That is, to use the random linear coding (RLC) technique, the original block set must be determined, and this indicates the number of blocks included in the original block set.

3) R-ARQ_ACK_TIMEOUT3) R-ARQ_ACK_TIMEOUT

'R-ARQ_ACK_TIMEOUT' 파라미터는 타이머 값을 나타낸다. 예를 들어, 송신단에서 코드블록을 모두 전송한 후 ACK 신호를 수신하기 위한 타이머를 작동시킨다. 이때의 타이머 값을 나타낸다.The 'R-ARQ_ACK_TIMEOUT' parameter indicates a timer value. For example, after transmitting all the code blocks, the transmitter starts a timer for receiving an ACK signal. The timer value at this time is shown.

4) R-ARQ_BLOCK_SET_TIMEOUT4) R-ARQ_BLOCK_SET_TIMEOUT

'R-ARQ_BLOCK_SET_TIMEOUT' 파라미터는 송신측과 수신측 사이에서 코드블록을 전달할 때, 하나의 코드블록집합을 처리하는데 필요한 시간을 나타낸다. 설정된 값 이내에 수신측은 코드블록집합에 속한 코드블록들을 정상적으로 수신하여야 한다.The 'R-ARQ_BLOCK_SET_TIMEOUT' parameter indicates the time required to process one code block set when transferring a code block between a transmitter and a receiver. Within the set value, the receiving side should normally receive the code blocks belonging to the code block set.

또한, 송신측에서 유지되는 R-ARQ의 변수는 'ARQ_TX_BSN'이다. 'ARQ_TX_BSN'는 현재 보내고자 하는 코드블록집합의 번호를 나타낸다. 이는 0에서 255 사이의 수를 가질 수 있다. 수신측에서 유지되는 R-ARQ의 변수는 'ARQ_RX_BSN'이다. 'ARQ_RX_BSN'는 현재 받고자 하는 코드블록집합의 번호를 나타낸다. 이는 0에서 255 사이의 수를 가질 수 있다. In addition, the variable of R-ARQ held at the transmitting side is 'ARQ_TX_BSN'. 'ARQ_TX_BSN' indicates the number of code block sets to be sent currently. It can have a number between 0 and 255. The variable of R-ARQ maintained at the receiving side is 'ARQ_RX_BSN'. 'ARQ_RX_BSN' represents the number of the code block set to be received currently. It can have a number between 0 and 255.

송신측 및 수신측 간의 연결은 DSA/DSC 종류의 제어 신호에 의해 만들어질 수 있다. CRC-32는 에러 검출의 용도로 이용된다. R-ARQ에서 이용되는 모든 파라미터들은 R-ARQ-enabled 연결이 만들어질 때 설정된다. 송신측과 수신측에서 사용되는 변수는 연결 설정 단계에서 0으로 초기화된다.The connection between the transmitting side and the receiving side can be made by a control signal of DSA / DSC type. CRC-32 is used for error detection. All parameters used in R-ARQ are set when an R-ARQ-enabled connection is made. Variables used at the sender and receiver are initialized to zero during the connection setup phase.

도 5는 본 발명의 일 실시예로서, 송신측에서 R-ARQ 방법을 설명하기 위한 상태도를 나타낸다.FIG. 5 is a diagram for describing an R-ARQ method in a transmitting side according to an embodiment of the present invention.

도 5에서는 RLC를 기반으로 사용되는 ARQ 방법을 나타낸다. 송신측에서는 초기 상태(Init, 501)에서 시스템을 초기화하고, 서비스 데이터 유닛(SDU)의 전달을 기다린다. 5 shows an ARQ method used based on RLC. The transmitting side initializes the system in the initial state (Init, 501) and waits for delivery of the service data unit (SDU).

데이터 분할(Packet Divide, 502) 상태에서 상기 SDU를 상위계층에서 수신하면, RLC를 적용하기 위해 데이터 블록의 크기 'R-ARQ_BLOCK_SIZE(s)'를 결정하고, 상기 s의 크기로 데이터 블록을 분할한다. 여기서, 상기 SDU를 가공한 데이터 블록을 원본 데이터블록(original data block)라 한다.When the SDU is received at a higher layer in the packet division (502) state, the size 'R-ARQ_BLOCK_SIZE (s)' of the data block is determined to apply the RLC, and the data block is divided into the sizes of s. . Herein, the data block obtained by processing the SDU is called an original data block.

선택(Select, 503) 상태에서는 데이터 블록 집합에 포함되는 데이터 블록의 개수 'R-ARQ_NUM_BLOCK(n)'를 결정하고, n 개 단위로 데이터 블록들을 묶어 데이터 블록 집합을 구성한다. 상기 데이터 블록 개수(n)는 통신망의 채널 환경, 송신측과 수신측의 성능, 응용 프로그램의 요구 사항 중 적어도 하나 이상에 의해 결정될 수 있다.In the Select (503) state, the number of data blocks included in the data block set 'R-ARQ_NUM_BLOCK (n)' is determined, and the data block set is formed by grouping the data blocks in n units. The data block number n may be determined by at least one of a channel environment of a communication network, performance of a transmitting side and a receiving side, and requirements of an application program.

계수 생성(Coefficient generation, 504) 상태에서는 상기 데이터 블록의 개수(n)에 맞추어 'ARQ_BLOCK_SIZE(n)'개의 계수 행렬의 행을 생성한다. 상기 계수 행렬의 행은 n 개에 도달할 때까지 반복하여 생성된다.In the coefficient generation state 504, 'ARQ_BLOCK_SIZE (n)' rows of coefficient matrices are generated according to the number n of the data blocks. The rows of the coefficient matrix are generated repeatedly until n are reached.

송신측은 종속성 검사(dependency check, 505) 상태에서 상기 생성된 계수 행렬의 각 행들 간에 종속성 검사를 한다. 종속성 검사시 계수 행렬의 첫 번째 행은 언제나 선형 독립임을 가정한다. 다만, 첫 번째 행 이후의 생성되는 각 계수 행렬의 행들은, 상기 첫 번째 행 및 당해 생성된 행의 이전에 생성된 행들과의 종속성 검사를 거치게 된다. 즉, 동일 데이터 블록 집합 내의 데이터 블록들을 부호화(encoding)하기 위해 생성된 계수들에 대해 종속성 검사를 한다. 만약, 종속성 검사를 통해 이전에 생성된 계수 행의 집합과 선형 종속(linerly dependent)인 계수가 생성되었다면, 계수를 다시 만들기 위해 504 상태로 돌아간다.The sender performs dependency checking between each row of the generated coefficient matrix in a dependency check state 505. In dependency checking, it is assumed that the first row of the coefficient matrix is always linearly independent. However, the rows of each coefficient matrix generated after the first row are subjected to dependency checking between the first row and previously generated rows of the generated row. That is, dependency checking is performed on coefficients generated to encode data blocks in the same data block set. If the dependency check produces a coefficient that is linearly dependent with a previously generated set of coefficient rows, then returns to state 504 to recreate the coefficient.

종속성 검사를 하는 이유는, 각 행렬의 행이 서로 독립이어야 부호화한 데이터 블록을 복호화한 경우에도 원본 데이터를 복원해낼 수 있기 때문이다. 만약, 계수 행렬의 행들이 서로 종속인 경우는 데이터를 복호화하는 과정에서 오류가 발생할 수 있다.The dependency checking is performed because the original data can be recovered even when the encoded data block is decoded when the rows of each matrix are independent of each other. If the rows of the coefficient matrix are dependent on each other, an error may occur in the process of decoding the data.

선형 종속이란, 한 벡터(vector)가 다른 벡터를 선형적으로 확장하여(임의의 스칼라(scalar)를 곱해서) 생성할 수 있는 것을 말한다. 예를 들어, a=(2, 3, 5, 8)이라는 집합과 b=(4, 6, 10, 16)이라는 집합은 a=2*b로써 표현할 수 있다. 이는 선형 종속이다. Linear dependency means that one vector can be produced by linearly expanding the other vector (multiplying it by any scalar). For example, a set of a = (2, 3, 5, 8) and a set of b = (4, 6, 10, 16) can be expressed as a = 2 * b. This is linearly dependent.

부호화(Coding, 506) 상태에서는, 행렬의 각 행이 서로 선형 독립인 계수 행렬과 데이터 블록 집합에 포함된 n개의 원본 데이터 블록을 이용하여 데이터 블록을 부호화하게 된다. 부호화 상태에서 수학식 1에서 설명한 난수선형부호화(RLC) 방법이 사용될 수 있다. 데이터를 전송하고자 하는 경우에 RLC를 사용함에 따라 유무선 구간에서의 효율적으로 오류를 극복하고 신뢰성 있는 통신을 할 수 있는 효과가 있다.In the coding (506) state, the data block is encoded using a coefficient matrix in which each row of the matrix is linearly independent of each other, and n original data blocks included in the data block set. In the encoding state, the random linear coding (RLC) method described in Equation 1 may be used. When the data is to be transmitted, the use of the RLC can effectively overcome errors and reliably communicate in the wired and wireless sections.

전송(Tx the coded block, 507) 상태에서, R-ARQ의 데이터 재전송 방법이 적용된다. 전송 상태에서는, RLC를 통해 만들어진 부호화된 데이터를 수신측에 전송한다. In the state of transmission (Tx the coded block 507), the data retransmission method of R-ARQ is applied. In the transmission state, the encoded data generated through the RLC is transmitted to the receiving side.

또한, 기 설정된 n 개의 부호화된 데이터 블록을 모두 전송할 때까지 계수 생성(504), 종속성 판단(505), 부호화(506), 부호화된 데이터 블록 전송(507) 상태는 반복된다(507c).In addition, the state of coefficient generation 504, dependency determination 505, encoding 506, and encoded data block transmission 507 is repeated until all of the n predetermined data blocks are transmitted (507c).

송신단은 상기 n 개의 부호화된 데이터 블록을 모두 전송한 경우에는 타이머 상태(Timer, 508)에 진입한다. 송신측은 타이머 상태에서 수신측이 전송하는 데이터 블록 집합의 정상적 수신을 알리는 ACK 신호를 기다린다. 송신측은 타이머가 만료(timeout)되기 전에 ACK 신호를 수신하게 되면, 현재의 데이터 블록 집합을 제거하고, 선택 상태로 돌아가 새로운 데이터 블록 집합을 생성할 준비를 한다(508a).The transmitter enters a timer state (Timer, 508) when all of the n coded data blocks have been transmitted. The sender waits for an ACK signal indicating the normal reception of the data block set transmitted by the receiver in the timer state. If the sender receives an ACK signal before the timer expires, the sender removes the current data block set and prepares to return to the selection state to generate a new data block set (508a).

타이머 상태에서 ACK 신호를 수신하였을 때, 원본 데이터(SDU)를 모두 보냈다면, 새로운 데이터 블록 집합을 만들 수 없으므로, 초기 상태로 진입하여 새로운 원본 데이터를 기다린다(508b). 만약, ACK 신호가 수신되지 않고 타이머가 만료(timeout)되면 송신측은 수신측이 부호화된 데이터 블록을 정상적으로 수신하지 못한 것으로 판단하고, 계수생성(504) 상태로 진입한다(508c). 계수생성(504) 상태에서는 새로운 계수를 생성하여, 기 전송된 데이터 블록의 내용과 같지만 새로운 계수로 인해 기존과 다른 부호화된 데이터 블록을 재생성할 준비를 한다. When receiving the ACK signal in the timer state, if all the original data (SDU) is sent, a new data block set cannot be created, and thus enters the initial state and waits for new original data (508b). If the ACK signal is not received and the timer expires, the transmitter determines that the receiver has not normally received the encoded data block, and enters the coefficient generation state 504 (508c). In the coefficient generation state 504, a new coefficient is generated and prepared to regenerate an encoded data block that is the same as the content of the previously transmitted data block but is different from the existing due to the new coefficient.

이 후, 재생성된 데이터 블록을 부호화(coding)하고 전송(507) 상태로 진입한다. 이때, 송신측이 새로운 데이터 블록 집합(예를 들어, 제 2 데이터 블록 집합)을 전송하는 도중에, 수신측으로부터 이전 데이터 블록 집합(예를 들어, 제 1 데이터 블록 집합)의 전송에 대해 수신 완료 및 원본 데이터 복원 성공에 대한 재확인으로써 ACK 신호를 수신하는 경우가 발생할 수 있다. 이 경우, 송신측은 당해 ACK 신호가 재생성하여 전달된 부호화된 데이터 블록에 대한 여분의 ACK 신호이므로 폐기(Discard, 509) 상태로 진입하여 당해 ACK 신호를 무시하거나 폐기한다.Thereafter, the regenerated data block is encoded and enters a transmission 507 state. At this time, while the transmitting side transmits a new data block set (for example, the second data block set), the reception completion of the previous data block set (for example, the first data block set) from the receiving side and A case of receiving an ACK signal may be generated by reconfirming the success of original data restoration. In this case, the sender enters a discard (509) state because the ACK signal is an extra ACK signal for the encoded data block transmitted by regenerating the ACK signal and ignores or discards the ACK signal.

이때, ACK 신호를 수신측으로부터 수신하면, 해당 데이터 블록 집합에 대한 수신측의 처리가 끝났다는 것을 의미하므로 선택 상태로 돌아간다(507a). 만약, 원본 데이터를 모두 보냈다면, 새로운 데이터 블록 집합을 생성할 수 없으므로, 초기 상태로 진입하여 새로운 원본 데이터(SDU)를 기다린다(507b).At this time, if the ACK signal is received from the receiving side, it means that the receiving side processing for the corresponding data block set is finished, and returns to the selection state (507a). If all the original data is sent, a new data block set cannot be generated, and thus, the initial state is entered and the new original data SDU is waited for (507b).

도 6은 본 발명의 일 실시예로서, RLD를 이용한 수신측에서의 데이터 수신 방법을 설명하기 위한 상태도이다.FIG. 6 is a state diagram illustrating a data receiving method at a receiving side using an RLD according to an embodiment of the present invention.

수신측에서는 초기 상태(Init, 601)에서 시스템의 상태를 초기화하고, 송신측의 통신 개시를 기다린다. 송신측으로부터 TLV 수신을 통해 'R-ARQ_BLOCK_SIZE', 'R-ARQ_NUM_BLOCK'을 설정하고 대기(Await, 602) 상태를 통해 송신측이 전송할 코드블록을 기다린다.The receiving side initializes the state of the system in the initial state (Init, 601) and waits for communication start from the transmitting side. 'R-ARQ_BLOCK_SIZE' and 'R-ARQ_NUM_BLOCK' are set through TLV reception from the sender, and the sender waits for a code block to transmit through an Await (602) state.

수신측은 수신(Received, 603) 상태에서 부호화된 데이터 블록을 수신한다. 상기 데이터 블록을 정상적으로 수신하면 새로운 부호화된 데이터 블록의 수신을 위해 대기 상태로 진입한다(603a). 상기 과정은 데이터 블록 집합에 포함된 데이터 블록을 n개 모두 수신할 때까지 반복된다.The receiving side receives the coded data block in the Received 603 state. If the data block is normally received, the mobile station enters a waiting state for receiving a new coded data block (603a). The process is repeated until all n data blocks included in the data block set are received.

이때, 수신한 데이터 블록이 수신측이 이미 복호화(decoding)를 완료한 부호화된 데이터 블록 집합에 포함된 내용이라면, 수신측은 송신측이 ACK 신호를 정상적으로 수신하지 못한 것으로 판단한다. 따라서 수신측은 이전 부호화된 데이터 블록 집합에 대한 ACK 신호를 재전송하기 위해 ACK 신호 전송(Send ACK, 605) 상태로 진입한다(603b). ACK 신호 전송 상태(605)에서는 이전 데이터 블록 집합을 정상적으로 수신했음을 알리는 ACK을 재전송한다(605a). At this time, if the received data block is included in the coded data block set that the receiving side has already decoded, the receiving side determines that the transmitting side does not normally receive the ACK signal. Accordingly, the receiver enters an ACK signal transmission (Send ACK, 605) state in order to retransmit the ACK signal for the previously coded data block set (603b). In the ACK signal transmission state 605, an ACK indicating that the previous data block set is normally received is retransmitted (605a).

만약, 수신측이 n 개의 데이터 블록을 정상적으로 수신하였다면, 복호화(Decoding, 604) 상태로 진입한다. 복호화 상태(604)에서는 RLD를 사용하여 수신한 부호화된 데이터 블록에 대하여 복호화를 수행한다.If the receiving side has normally received n data blocks, it enters a decoding (604) state. In the decoding state 604, the coded data block received using the RLD is decoded.

성공적으로 복호화가 완료되면, ACK 신호 전송(605) 상태로 진입한다. ACK 신호 전송(605) 상태에서는 데이터 블록 집합 단위로 ACK 신호를 송신하고 더 이상 받을 원본 데이터가 없으면 초기 상태로 진입한다(605c). 다만, 수신할 원본 데이터가 남아있다면, 새로운 부호화된 데이터 블록을 수신하기 위해 대기 상태로 진입한다(605b).If the decoding is successfully completed, the state enters the ACK signal transmission 605. In the ACK signal transmission 605 state, the ACK signal is transmitted in units of data block sets, and when there is no more original data to receive, the initial state is entered (605c). However, if the original data to be received remains, it enters a waiting state to receive a new coded data block (605b).

수신측은 송신측으로부터 코드블록을 기다리는 동안 'R-ARQ_BLOCK _SET_TIMEOUT' 이 발생하면 현재까지 받았던 코드블록집합(coded block set)의 코드블록(coded block)을 모두 삭제하고 새로운 코드블록을 수신할 준비를 한다(602a). 이는 현재 코드블록집합에 포함되는 최초 코드블록과 현재 기다리는 코드블록 사이에 독립성(independency)이 보장되지 못할 경우를 제거하기 위함이다.If 'R-ARQ_BLOCK _SET_TIMEOUT' occurs while waiting for a code block from the sender, the receiver deletes all coded blocks of the coded block set received so far and prepares to receive a new code block. (602a). This is to remove a case where independency is not guaranteed between the first code block included in the current code block set and the currently waiting code block.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다. 또한, 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함시킬 수 있다.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. It is also possible to form embodiments by combining claims that do not have an explicit citation in the claims or to include them as new claims by post-application correction.

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

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

도 3은 본 발명의 일 실시예에 따라 난수선형부호화 방법을 이용하여 코드블록을 구성하는 방법을 나타내는 도면이다.3 is a diagram illustrating a method for constructing a code block using a random number linear coding method according to an embodiment of the present invention.

도 4는 R-ARQ를 고려한 MAC PDU 구성방법의 일례를 나타낸다.4 shows an example of a method of configuring a MAC PDU in consideration of R-ARQ.

도 5는 IEEE 802.16 시스템에서 사용되고 있는 프로토콜 계층 구성도이다.5 is a diagram illustrating a protocol layer used in an IEEE 802.16 system.

도 6은 본 발명의 일 실시예로서, RLD를 이용한 수신측에서의 데이터 수신 방법을 설명하기 위한 상태도이다.FIG. 6 is a state diagram illustrating a data receiving method at a receiving side using an RLD according to an embodiment of the present invention.

Claims (8)

난수선형부호화(RLC)를 적용하는 자동재전송방법(R-ARQ)의 지원여부를 협상하는 단계;Negotiating support for an automatic retransmission method (R-ARQ) applying random linear coding (RLC); 상위계층 데이터를 분할할 데이터 블록의 크기 및 데이터 블록집합의 크기를 결정하는 단계;Determining a size of a data block and a size of a data block set for dividing higher layer data; 상기 상위계층 데이터를 상기 데이터 블록의 크기로 분할하고, 상기 데이터 블록집합 단위로 상기 난수선형부호화를 이용하여 상기 데이터 블록집합에 포함된 데이터 블록들을 코드블록들로 부호화하는 단계;Dividing the higher layer data into the size of the data block, and encoding the data blocks included in the data block set into code blocks by using the random number linear coding in the data block set unit; 상기 데이터 블록의 크기 및 상기 데이터 블록집합의 크기 정보를 포함하는 서브헤더 및 상기 부호화한 코드블록을 포함하는 프로토콜 데이터 유닛을 전송하는 단계를 포함하는, 통신방법.And transmitting a subheader including the size of the data block and the size information of the data block set and a protocol data unit including the coded code block. 제 1항에 있어서,The method of claim 1, 상기 R-ARQ의 지원여부를 협상하는 단계는,Negotiating whether to support the R-ARQ, 송신측 및 수신측의 등록과정에서 수행되는 것을 특징으로 하는, 통신방법.A communication method, characterized in that performed in the registration process of the transmitting side and the receiving side. 제 1항에 있어서,The method of claim 1, 상기 부호화하는 단계는,The step of encoding, 송신측 및 수신측의 초기 등록과정 또는 서비스 플로우를 생성하는 과정에서 수행되는 것을 특징으로 하는, 통신방법.A communication method, characterized in that performed in the initial registration process or the process of generating a service flow of the transmitting side and the receiving side. 제 1항에 있어서,The method of claim 1, 상기 프로토콜 데이터를 전송하는 단계에서,In the step of transmitting the protocol data, 상기 코드블록을 모두 전송한 후에 수신확인긍정신호를 수신하기 위한 타이머를 설정하는 단계를 더 포함하는, 통신방법.And setting a timer for receiving an acknowledgment positive signal after transmitting all of the code blocks. 제 4항에 있어서,The method of claim 4, wherein 상기 서브헤더는 상기 데이터 블록의 크기, 상기 데이터 블록집합의 크기 및 상기 타이머 정보를 포함하는 것을 특징으로 하는, 통신방법.And the subheader includes a size of the data block, a size of the data block set, and the timer information. 제 5항에 있어서,The method of claim 5, 상기 서브헤더는 상기 데이터 블록집합의 처리 시간에 대한 타이머 정보를 더 포함하는 것을 특징으로 하는, 통신방법.The subheader may further include timer information about a processing time of the data block set. 제 1항에 있어서,The method of claim 1, 상기 서브헤더는 시작 시드값을 더 포함하고, 상기 시작 시드값은 상기 난수선형부호화를 이용시 사용되는 것을 특징으로 하는, 통신방법.The subheader further comprises a starting seed value, wherein the starting seed value is used when using the random number linear encoding. 제 1항에 있어서,The method of claim 1, 상기 서브헤더는 상기 프로토콜 데이터에 포함되는 코드블록들이 단편화 상태로 포함되는지 또는 패킹 상태로 포함되는지 여부를 나타내는, 통신방법.And the subheader indicates whether code blocks included in the protocol data are included in a fragmented state or a packed state.
KR1020080052797A 2007-06-04 2008-06-04 A method of communicating using Random Linear Coding in radio access system KR101526972B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US94194607P 2007-06-04 2007-06-04
US60/941,946 2007-06-04

Publications (2)

Publication Number Publication Date
KR20080106867A true KR20080106867A (en) 2008-12-09
KR101526972B1 KR101526972B1 (en) 2015-06-11

Family

ID=40367410

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020080052797A KR101526972B1 (en) 2007-06-04 2008-06-04 A method of communicating using Random Linear Coding in radio access system
KR1020080052798A KR101430482B1 (en) 2007-06-04 2008-06-04 Method of forming Protocol Data

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020080052798A KR101430482B1 (en) 2007-06-04 2008-06-04 Method of forming Protocol Data

Country Status (1)

Country Link
KR (2) KR101526972B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180032571A (en) * 2015-07-24 2018-03-30 퀄컴 인코포레이티드 Code block segmentation and rate matching for multiple transport block transmissions

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010123306A2 (en) * 2009-04-24 2010-10-28 한국전자통신연구원 Transmission device and forwarding method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100608914B1 (en) * 2004-11-11 2006-08-09 한국전자통신연구원 Media access control apparatus of wireless LAN for VoIP
KR100800714B1 (en) * 2005-09-15 2008-02-01 삼성전자주식회사 Method and apparatus for transmitting/receiving status report comprising receive status of packet data in a mobile telecommunications system and therefor apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180032571A (en) * 2015-07-24 2018-03-30 퀄컴 인코포레이티드 Code block segmentation and rate matching for multiple transport block transmissions

Also Published As

Publication number Publication date
KR101430482B1 (en) 2014-08-18
KR101526972B1 (en) 2015-06-11
KR20080106868A (en) 2008-12-09

Similar Documents

Publication Publication Date Title
KR101405927B1 (en) Method of coommunication in mobile communication system
RU2461147C2 (en) Method of processing radio protocol in mobile communication system and mobile communication transmitter
CN101589565B (en) Method and apparatus for data transmission of radio link control layer in mobile communication system
KR101624108B1 (en) Apparatus and method for generating mac protocol data unit in wireless communication system
KR101216100B1 (en) Method and Apparatus of transmitting MAC PDU with a Fragmentation and packing Extended Header
US8848583B2 (en) Communication method and apparatus for header compression
US20090319850A1 (en) Local drop control for a transmit buffer in a repeat transmission protocol device
EP2218204B1 (en) Method and system for data transmission in a data network
US11296841B2 (en) Communications method and apparatus
US10230496B2 (en) Method and apparatus for processing control message which requests retransmitting data
WO2006068272A1 (en) Receiving apparatus, transmitting apparatus, communication system and communication method
JP2012500553A (en) Apparatus and method for generating automatic retransmission request feedback message in wireless communication system
WO2017049647A1 (en) Data sending method, data receiving method and relevant device
CN113796057A (en) User data compression method and apparatus for preventing data loss in wireless communication system
KR101690552B1 (en) Apparatus and method for generating mac protocol data unit in wireless communication system
WO2010121409A1 (en) Method and apparatus for compressed data packet transmission
WO2013001838A1 (en) Reception device, transmission device, and feedback method
JP2007523554A (en) Method and apparatus for performing TFCI reliability check in E-DCH
KR101605323B1 (en) Method for transmitting and receiving Data using Random Linear Coding
KR101526972B1 (en) A method of communicating using Random Linear Coding in radio access system
WO2009088342A1 (en) Reordering timer for a retransmission protocol
KR100918735B1 (en) Method and apparatus for transmitting/receiving sequence number of packet in mobile telecommunication system
KR20140013656A (en) Apparatus and method for increasing transmission efficiency in a 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