KR20150045977A - 2 계층 패킷 자동 재전송 방법 및 장치 - Google Patents

2 계층 패킷 자동 재전송 방법 및 장치 Download PDF

Info

Publication number
KR20150045977A
KR20150045977A KR20150051615A KR20150051615A KR20150045977A KR 20150045977 A KR20150045977 A KR 20150045977A KR 20150051615 A KR20150051615 A KR 20150051615A KR 20150051615 A KR20150051615 A KR 20150051615A KR 20150045977 A KR20150045977 A KR 20150045977A
Authority
KR
South Korea
Prior art keywords
rlc
polling
rlc pdu
pdu
polling information
Prior art date
Application number
KR20150051615A
Other languages
English (en)
Other versions
KR101551147B1 (ko
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 KR20150045977A publication Critical patent/KR20150045977A/ko
Application granted granted Critical
Publication of KR101551147B1 publication Critical patent/KR101551147B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1685Details of the supervisory signal the supervisory signal being transmitted in response to a specific request, e.g. to a polling signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/188Time-out mechanisms
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/02Data link layer protocols

Abstract

본 발명은 통신 시스템에서 송신 장치에 의해서 데이터를 송신하는 방법에 있어서, 무선 링크 제어(RLC: Radio Link Control) 패킷 데이터 유닛(PDU: Packet Data Unit)이 마지막 RLC PDU이면, 제1폴링 정보를 포함하는 상기 RLC PDU를 생성하는 과정과, 상기 RLC PDU를 수신기에게 송신하는 과정과, 이용 가능한 자원들의 양이 RLC PDU의 재전송을 위해서 요구되는 자원들의 양보다 적으면, 상기 RLC PDU를 분할하는 과정과, 상기 분할된 RLC PDU를 수신기에게 송신하는 과정을 포함하며; 상기 분할된 RLC PDU들 중 마지막 분할된 RLC PDU는 제2폴링 정보를 포함함을 특징으로 한다.

Description

2 계층 패킷 자동 재전송 방법 및 장치{METHOD AND APPARATUS FOR LAYER 2 ARQ FOR PACKETS}
본 발명은 이동 통신 시스템에의 자동 재전송 장치 및 방법에 관한 것으로, 특히 소형 패킷이 단독으로 전송되는 것을 방지함과 아울러 단독으로 전송되는 상위 계층 패킷의 전송 신뢰도를 보장하는 방법 및 장치에 관한 것이다.
단독 전송되는 상위 계층 패킷에는 수신 장치가 일련 번호 상의 갭을 이용해서 재전송 요청 여부를 결정하는 통상적인 자동 재전송 기법이 적용되지 않기 때문에 폴링 및 타이머 기반의 재전송을 이용해서 전송의 신뢰도를 보장한다.
상기 폴링 및 타이머 기반의 재전송이란 전송 신뢰도를 보장해야 하는 패킷을 전송하면서 수신 장치에게 수신 여부를 보고하도록 명령하는 지시자를 함께 전송하고, 일정 시간 안에 상기 수신 여부가 보고되지 않으면 상기 패킷을 자동 재전송하는 기법이다. 이러한 방식에서는 상위 계층 패킷 하나마다 각각 수신 상태 보고가 전송된다.
그런데, 현재의 서비스에서는 한쪽 방향의 상위 계층 패킷이 반대 방향의 응답 패킷을 발생시키는 경우가 빈번하고, 상기 상위 계층 패킷 전송과 수신 상태 보고의 교환이 연속적으로 발생한다. 예를 들어, 도 1을 참조하면, TCP 기반의 패킷 서비스에서 TCP 패킷 혹은 3 계층 제어 요구 메시지(115) 반대 방향으로 TCP ACK 혹은 3 계층 제어 응답 메시지 (120)을 발생시킨다. 상기 3 계층 제어 메시지는 2 계층의 상위 계층에서 발생하는 임의의 제어 메시지를 의미하며 예를 들어 SIP(Session Initiation Protocol)과 같은 IP 호 제어 프로토콜이나 RRC(Radio Resource Control)와 같은 무선 네트워크의 제어 프로토콜의 제어 메시지일 수 있다.
상기 TCP 패킷 혹은 3 계층 제어 요구 메시지와 TCP ACK 혹은 3 계층 제어 응답 메시지의 교환이 2 계층 자동 재전송 프로토콜인 RLC(Radio Link Control)에서 수행되는 경우를 도 2를 참조하여 설명하기로 한다.
도 2를 참조하면, 한 쪽의 RLC 장치(210)가 215 단계에서 TCP 패킷이나 3 계층 제어 요구 메시지를 상대편 RLC 장치(205)로 전송하면, 상대편 RLC 장치(205)는 225 단계에서 상기 TCP 패킷 혹은 3 계층 제어 요구 메시지에 대한 수신 상태 보고를 RLC 장치(210)로 전송한다. 그리고, 일정 시간이 지난 후, TCP ACK 혹은 3 계층 제어 응답 메시지가 발생하면, 상대편 RLC 장치(205)는 235 단계에서 이를 RLC 장치(210)로 전송하고, RLC 장치(210)는 240 단계에서 상기 TCP ACK 혹은 3 계층 제어 응답 메시지에 대한 수신 상태 보고를 상대편 RLC 장치(205)로 전송한다.
좀 더 자세히 설명하면, 먼저 RLC 장치(205)는 215 단계에서 TCP 패킷 혹은 3 계층 제어 요구 메시지를 무선 채널을 통해 전송하기에 적합한 크기로 분할하고 일련 번호를 부착해서 무선 채널을 통해 전송한다. 상기 일련 번호가 부착된 것을 RLC PDU(Protocol Data Unit)라 한다. 특히, RLC 장치(210)는 마지막 RLC PDU를 전송하면서, 상기 RLC PDU에 폴링 정보를 수납해서 전송한다. 상기 폴링 정보는 상대편 RLC 장치에게 수신 상태 보고를 요구하는 것이다. 마지막 RLC PDU를 포함한 기전송된 RLC PDU들의 전송 상태를 확인하기 위해서 RLC 장치는 일반적으로 마지막 RLC PDU 전송시 폴링 정보를 함께 전송한다.
상기 폴링 정보가 수납된 RLC PDU가 전송 도중 유실되거나, 혹은 상기 폴링에 대한 응답인 상태 보고가 전송 도중 유실되는 경우에 대비해서, RLC 장치(210)는 폴링 정보가 수납된 RLC PDU에 대해서는 타이머 기반의 재전송을 실행한다. 다시 말해서 RLC 장치(210)는 폴링 정보가 수납된 RLC PDU를 전송하면서 폴링 타이머(245)를 구동하고, 상기 폴링 타이머가 만료될 때까지 상태 보고가 수신되지 않으면, 상기 폴링 정보가 수납된 RLC PDU를 재전송한다.
상기 폴링 정보가 수납된 RLC PDU를 수신한 RLC 장치(205)는 225 단계에서 상태 보고를 만들어서 RLC 장치(210)로 전송한다. 이때 2 계층 처리 지연(220) 만큼의 지연이 발생한다.
또한, 상기 폴링 정보가 수납된 RLC PDU에는 TCP 데이터 혹은 L3 제어 요구 메시지가 수납되어 있으므로, 상기 TCP 데이터 혹은 L3 제어 요구 메시지는 상위 계층으로 전달되고, 상위 계층은 L3 전송 지연(230) 후에 TCP ACK 혹은 L3 제어 응답 메시지를 만들어서 RLC 장치(205)로 전달하고, RLC 장치(205)는 235 단계에서 상기 TCP ACK 혹은 L3 제어 응답 메시지를 RLC PDU로 만들어서 RLC 장치(210)로 전송한다. 이 때, 상기 TCP ACK 혹은 L3 제어 메시지의 크기는 대개의 경우 수십 바이트에 불과하기 때문에, 하나의 RLC PDU에 수납되어서 전송된다. 다시 말해서 상기 TCP ACK 혹은 L3 제어 메시지가 수납된 RLC PDU는 마지막 RLC PDU이므로, 상기 RLC PDU에는 폴링 정보도 함께 수납되어서 전송된다. 상기 폴링에 대한 응답으로 RLC 장치(210)는 240 단계에서 2 계층 상태 보고를 전송한다.
상기에서 살펴본 바와 같이, TCP 데이터를 수납한 마지막 RLC PDU에는 폴링 정보가 수납되어서, 상대편으로부터 2 계층 상태 보고를 유발하는 한편, TCP 데이터 역시 TCP ACK과 같은 3 계층 응답 메시지를 유발하며, TCP ACK과 같은 3 계층 응답 메시지 역시 2 계층 상태 보고를 유발한다.
상술한 바와 같이 크기가 작은 패킷들을 무선 채널을 통해 빈번하게 개별적으로 송수신하는 것은 무선 전송 자원의 효율을 저하시키는 요인으로 작용한다.
상술한 바와 같은 종래 기술의 문제점을 극복하기 위한 본 발명의 목적은 크기가 작은 패킷들이 무선 채널을 통해 빈번하게 개별적으로 송수신되지 않고, 가능하면 함께 전송되도록 함으로써, 무선 전송 자원의 효율을 높이는 방법 및 장치를 제안함에 있다.
또한 본 발명은 수신 상태 보고를 사용하지 않고 단독으로 전송되는 상위 계층 패킷의 전송 신뢰도를 보장함으로써 무선 전송 자원의 효율을 높이는 방법 및 장치를 제안함에 있다.
본 발명의 실시 예에 따른 방법은; 통신 시스템에서 송신 장치에 의해서 데이터를 송신하는 방법에 있어서, 만약, 이용 가능한 자원들의 양이 상기 RLC PDU를 재전송하기 위해서 요구되는 자원들의 양보다 적으면, 무선 링크 제어(RLC: Radio Link Control) 패킷 데이터 유닛(PDU: Packet Data Unit)을 분할하는 과정과, 분할된 RLC PDU가 마지막 분할된 RLC PDU이면, 상기 마지막 분할된 RLC PDU에 폴링 정보를 포함시키는 과정과, 상기 분할된 RLC PDU를 수신기에게 송신하는 과정을 포함한다.
본 발명의 실시 예에 따른 장치는; 통신 시스템에서 송신 장치에 의해서 데이터를 송신하는 장치에 있어서, 만약, 이용 가능한 자원들의 양이 상기 RLC PDU를 재전송하기 위해서 요구되는 자원들의 양보다 적으면, 무선 링크 제어(RLC: Radio Link Control) 패킷 데이터 유닛(PDU: Packet Data Unit)을 분할하고, 분할된 RLC PDU가 마지막 분할된 RLC PDU이면, 상기 마지막 분할된 RLC PDU에 폴링 정보를 포함시키는 제어부와, 상기 분할된 RLC PDU를 수신기에게 송신하는 송수신부를 포함한다.
상술한 바와 같이 본 발명은 크기가 작은 패킷들이 무선 채널을 통해 빈번하게 개별적으로 송수신되지 않고, 가능하면 함께 전송되도록 함으로써, 무선 전송 자원의 효율을 높일 수 있다. 또한 수신 상태 보고를 사용하지 않고 단독으로 전송되는 상위 계층 패킷의 전송 신뢰도를 보장함으로써 무선 전송 자원의 효율을 높일 수 있다.
도 1은 상위 계층 패킷 교환의 일 예를 도시한 도면,
도 2는 단독 전송되는 상위 계층 패킷 교환이 2 계층 자동 재전송 프로토콜에 의해서 진행되는 일 예를 도시한 도면,
도 3은 LTE 이동 통신 시스템의 프로토콜 구조를 도시한 도면,
도 4는 본 발명의 제 1 실시 예의 전체 동작을 도시한 도면,
도 5는 본 발명의 제 1 실시 예에서 폴링 정보를 전송하는 RLC 장치의 동작을 도시한 도면,
도 6는 본 발명의 제 1 실시 예에서 폴링 정보를 수신한 RLC 장치의 동작을 도시한 도면,
도 7은 본 발명의 제 2 실시 예의 전체 동작을 도시한 도면,
도 8은 본 발명의 제 2 실시 예에서 폴링 정보를 전송하는 RLC 장치의 동작을 도시한 도면,
도 9는 본 발명의 제 2 실시 예에서 폴링 정보를 수신한 RLC 장치의 동작을 도시한 도면,
도 10은 본 발명의 바람직한 실시 예에 따른 RLC 장치를 도시한 도면,
도 11은 본 발명의 제 3 실시 예에 따른 전체 동작 흐름도,
도 12는 본 발명의 제 3 실시 예에 따른 전송 장치 동작을 설명하기 위한 순서도,
도 13은 폴링 정보와 최소한의 사용자 데이터만 포함되도록 폴링 PDU를 분할 재전송하는 방법을 설명한 도면,
도 14는 폴링 PDU의 분할 재전송을 설명한 도면,
도 15는 본 발명의 제 4 실시 예에 따른 전체 동작 흐름도,
도 16은 본 발명의 제 4 실시 예에 따른 전송 장치 동작을 설명하기 위한 순서도,
도 17은 스케줄링 지연이 폴링 타이머 만료에 따른 재전송에 미치는 영향을 설명한 도면,
도 18은 본 발명의 제 5 실시 예에 따른 전송 장치 동작을 설명하기 위한 순서도,
도 19는 본 발명의 제 6 실시 예의 전체 동작을 설명한 도면,
도 20은 본 발명의 제 6 실시 예에 따른 전송 장치의 동작을 설명하기 위한 순서도.
이하 본 발명의 실시 예에 따라 첨부된 도면을 참조하여 설명될 것이다. 하기 설명에서 구체적인 특정사항들이 나타나고 있는데, 이는 본 발명의 보다 전반적인 이해를 돕기 위해 제공된 것이다. 당해 분야에서 통상의 지식을 가진 자는 본 발명이 이루고자 하는 기술적 과제를 달성하기 위하여 후술되는 발명의 개시된 개념 및 구체적인 실시예가 변경 또는 변형되어 사용될 수도 있다는 사실을 잘 인식할 것이다. 또한 당해 분야에서 통상의 지식을 가진 자는 본 발명이 개시하는 개념 및 구조와 균등한 개념들 및 구조들이 본 발명의 가장 넓은 형태의 사상 및 범위로부터 벗어나지 않는다는 사실을 잘 인식할 것이다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명을 생략한다.
본 발명에서는 크기가 작은 패킷들이 무선 채널을 통해 빈번하게 개별적으로 송수신되지 않고, 가능하면 함께 전송되도록 함으로써, 무선 전송 자원의 효율을 높이는 방법 및 장치를 제시한다.
또한 수신 상태 보고를 사용하지 않고 단독으로 전송되는 상위 계층 패킷의 전송 신뢰도를 보장함으로써 무선 전송 자원의 효율을 높이는 방법 및 장치를 제시한다.
도 3은 본 발명이 적용되는 LTE(Long Term Evolution)통신 시스템의 프로토콜 계층 구조를 도시한 것이다.
복수개의 서비스가 설정되어 있는 단말(395)에는 상기 서비스의 수만큼의 상위 계층 장치들과 하나의 RRC 계층 장치가 설정된다. 그리고, 상기 상위 계층 장치 및 RRC 계층 장치에는 개별적으로 RLC 장치가 구성된다.
예를 들어, 도 3의 도시된 바와 같이 2 개의 서비스가 설정되어 있는 단말에는 RRC 계층 장치(305)와 상기 서비스별 상위 계층 장치(310, 315)들이 설정된다.
상기 RRC(305)는 무선 전송 자원과 관련된 제어 메시지를 처리하는 계층이며, 상위 계층 장치(310, 315)는 서비스와 2 계층의 인터페이스 역할을 하는 계층으로, 예를 들어 TCP/IP 혹은 RTP/UPD/IP같은 프로토콜의 집합일 수 있다. 도면에 도시하지는 않았지만, RLC 장치의 상위에 비화/역비화 혹은 헤더 압축/복원을 담당하는 별도의 계층이 존재할 수 있다. 상기 RRC 계층 장치(305) 및 서비스별 상위 계층 장치들(310, 315)은 양방향으로 데이터를 송수신하며, 역시 양방향으로 RLC PDU를 송수신하는 RLC 장치(320, 325, 330)와 각각 연결된다.
RLC 장치는 전술한 바와 같이, 상위 계층 데이터를 무선 채널을 통해 송수신하기에 적절한 크기로 구성하는 프레이밍 동작과, RLC PDU가 상대편 RLC 장치에게 신뢰성있게 전송되도록 하는 자동 재전송 동작을 수행한다. 상기 자동 재전송 동작은 RLC PDU 마다 일련 번호를 부착하고, 소정의 조건이 만족되면 RLC PDU를 수신하는 쪽에서 상기 RLC PDU들의 수신 여부를 RLC PDU를 송신하는 쪽으로 통보하고, 상기 정보를 바탕으로 송신하는 쪽에서 제대로 수신하지 못한 RLC PDU들을 재전송하는 일련의 과정을 포괄한다. 이하 본 발명에서 RLC PDU들의 수신 정보와 RLC PDU에 대한 재전송을 요청하는 정보를 상태 보고로 명명한다.
다수의 RLC 장치에서 발생한 RLC PDU들은 MAC 계층 장치(335)에서 MAC PDU라는 하나의 패킷에 다중화되어서, 물리 계층(340)을 거쳐 기지국으로 전송된다.
기지국(397)의 MAC 계층 장치(350)는 MAC PDU에서 RLC PDU들을 역다중화해서 적절한 RLC 장치로 전달하고, RLC 장치는 수신한 RLC PDU들의 일련 번호를 검사해서 수신하지 못한 RLC PDU가 있는지 검사하고, 미수신 RLC PDU가 있다면 소정의 조건이 충족되었을 때 상기 미수신 RLC PDU에 대한 재전송을 요청한다. RLC 장치는 수신한 RLC PDU들을 상위 계층 패킷으로 재조립해서 상위 계층으로 전달한다. RRC의 경우에는 상기 RRC 계층 장치(370)가 기지국에 위치하며, 여타 서비스의 경우 상대편 단말 혹은 서버 등에 위치하므로, 상기 RLC PDU는 전송 네트워크(385)를 거쳐서 상위 계층(375, 380)으로 전달된다.
일반적으로 MAC 계층 장치와 RLC 계층 장치를 2 계층으로 분류하고, 상기 2 계층의 상위 계층을 3 계층으로 분류한다. 이하 본 발명에서 3 계층 데이터란 2 계층의 상위 계층에서 발생한 데이터를 일컫는다.
<제 1 실시예>
본 발명의 제 1 실시 예에서 RLC 장치는 폴링 정보를 수신했을 때, 상기 폴링 정보와 함께 수신된 상위 계층 패킷이 반대 방향의 상위 계층 패킷을 발생시킬 가능성이 크다면, 곧 바로 수신 상태 보고를 발생시키지 않고 소정의 시간 만큼 대기한 후 수신 상태 보고를 발생시킨다. 그리고, 상기 소정의 대기 시간 동안 상위 계층 패킷이 발생하면, 수신 상태 보고와 상기 상위 계층 패킷을 함께 전송함으로써 수신 상태 보고와 상위 계층 패킷이 개별적으로 전송됨으로써 발생하는 전송 자원의 낭비를 방지한다.
임의의 상위 계층 패킷이 반대 방향으로 새로운 상위 계층 패킷을 발생시킬 가능성이 있는지 여부는 RLC 장치와 연결된 서비스의 종류 또는 상기 상위 계층 패킷의 성격에 따라 판단될 수 있다.
예를 들어, UDP(User Datagram Protocol)기반의 서비스 중 멀티미디어 스트리밍에서 멀티미디어 데이터가 반대 방향의 피드백 데이터를 발생시키지 않으므로, 상위 계층 패킷이 반대 방향의 상위 계층 패킷을 발생시키지 않는다. 반면에, TCP 기반의 서비스에서는 소정의 개수의 TCP 세그먼트마다 TCP ACK이 발생하므로, 상위 계층 패킷이 반대 방향의 상위 계층 패킷을 발생시킬 가능성이 높다. 또한 RRC와 같은 제어 프로토콜에서는 요구-응답 형식의 메시지 교환이 일반적이기 때문에, 상위 계층 패킷이 반대 방향의 상위 계층 패킷을 발생시킬 가능성이 높다.
본 발명에서 RLC 장치는 하기의 두 가지 상이한 방식으로 폴링 정보에 반응한다.
첫 번째 폴링 정보 반응 방식은 종래와 마찬가지로 폴링 정보를 수신하면 상위 계층 패킷 발생을 기다리지 않고, 수신 상태 보고를 발생시켜서 전송하는 방식이다.
두 번째 폴링 정보 반응 방식은 폴링 정보를 수신하면 일정 기간 대기한 후 수신 상태 보고를 발생시켜서 전송함으로써, 상위 계층 패킷과 수신 상태 보고가 함께 전송될 가능성을 높이는 방식이다.
참고로 폴링 정보를 수신하였다는 것은 상기 폴링 정보와 함께 수신된 혹은 폴링 정보를 수납한 RLC PDU에 대한 순서 재정렬이 완료되어, 폴링 정보가 효력을 발휘하는 상황을 의미한다.
폴링 정보를 전송하는 RLC 장치는 어떤 폴링 정보 반응 방식을 취할지 지시하는 정보를 함께 전송할 수 있다. 이하 첫 번째 폴링 정보 반응 방식을 취할 것을 지시하는 폴링 정보를 폴링 정보 타입 1, 두 번째 폴링 정보 반응 방식을 취할 것을 지시하는 폴링 정보를 폴링 정보 타입 2로 명명한다.
혹은 RLC 장치마다 어떤 폴링 정보 반응 방식을 취할지 미리 설정될 수도 있다. 예를 들어, UDP 기반의 멀티미디어 스트리밍 서비스와 연결된 RLC 장치는 항상 첫 번째 폴링 정보 반응 방식을 취하도록 설정되고, TCP 기반의 파일 다운로드 서비스와 연결된 RLC 장치는 항상 두 번째 폴링 정보 반응 방식을 취하도록 설정될 수도 있다.
이하, 설명의 편의를 위해서 반대 방향으로 상위 계층 데이터의 발생을 유발할 가능성이 높은 상위 계층 데이터와 폴링 정보가 수납된 마지막 RLC PDU(215)를 1 번 메시지, 상기 폴링 정보에 대한 응답인 수신 상태 보고(220)를 2 번 메시지, 반대 방향의 상위 계층 데이터와 폴링 정보가 수납된 마지막 RLC PDU(235)를 3 번 메시지, 상기 폴링 정보에 대한 응답인 수신 상태 보고(240)를 4번 메시지라 명명하기로 한다.
본 발명의 제 1 실시 예의 효과를 간단히 요약하자면, 2 번 메시지와 3 번 메시지를 함께 전송하여 메시지를 각각 단독으로 전송함으로써 발생하는 자원 낭비를 줄이는 것이다. 참고로 크기가 작은 메시지를 단독으로 전송할 경우, 메시지를 전송할 때마다 별도로 버퍼 상태를 보고하고 전송 자원을 할당받기 때문에 상기 메시지의 크기가 작을수록 메시지를 단독으로 전송하는 것은 비효율적이다.
도 4는 본 발명의 제 1 실시 예를 설명하기 위한 신호 흐름도이다.
도 4를 참조하면, 임의의 방향으로 데이터를 전송하고 있는 RLC 장치(410)가 415 단계에서 임의의 시점에 마지막 RLC PDU를 전송한다. 이 때, 상기 RLC PDU에 수납되어 있는 데이터가 임의의 3 계층 제어 요구 메시지이거나 TCP 세그먼트라면, RLC 장치는 폴링 정보 타입 2를 상기 RLC PDU와 함께 전송한다. 또는 구현을 보다 간단하게 하기 위해서, 단말과 기지국은 무선 베어러 별로 폴링 타입을 미리 설정해둘 수도 있다. 이러한 경우에 폴링을 전송하는 RLC 장치는 따로 폴링 타입을 지시할 필요가 없으며, 종래와 마찬가지로 상대편 RLC 장치에게 폴링 정보를 RLC PDU와 함께 전송한다.
RLC PDU와 함께 상기 폴링 정보 타입 2를 수신한 RLC 장치(405), 혹은 RLC PDU와 함께 폴링 정보를 수신하였으며 폴링 정보 반응 방식 2를 사용하도록 설정된 RLC 장치(405)는 소정의 타이머 T1을 구동(420)하고, 상기 RLC PDU로부터 상위 계층 데이터를 재조립해서 상위 계층으로 전달한다. 그리고, T1이 만료되거나, T1이 만료되지 않더라도 상위 계층으로부터 새로운 데이터가 도착하면 RLC 장치(405)는 수신 상태 보고와 상위 계층 데이터를 전송하기 위한 절차를 시작한다. 즉, 상기 수신 상태 보고와 상위 계층 데이터의 전송을 위한 전송 자원 할당을 요청하는 버퍼 상태 보고를 스케줄러에게 전송하고, 스케줄러로부터 전송 자원을 할당받는다. 그러면, RLC(405)는 425 단계에서 상기 할당받은 전송 자원을 이용해서 상태 보고와 상위 계층 데이터를 함께 전송한다. 이 때, 상기 상위 계층 데이터가 하나의 RLC PDU에 모두 수납되었다면, RLC 장치는 상기 RLC PDU의 성공적인 전송을 확인하기 위해서 상기 RLC PDU에 폴링 정보를 수납해서 전송한다. 상기 RLC PDU 및 폴링 정보를 수신한 RLC 장치(410)는 430 단계에서 상기 RLC PDU의 수신 성공을 지시하는 수신 상태 보고를 생성하여 상대편 RLC 장치(405)로 전송한다.
상술한 바와 같이 반대 방향의 상위 계층 데이터 발생을 유발할 가능성이 높은 데이터가 수납된 RLC PDU와 폴링 정보가 함께 수신되었을 때, 일정 시간 대기한 후 수신 상태 보고를 수행하도록 함으로써, 상기 수신 상태 보고와 상위 계층 데이터가 함께 전송될 가능성을 높인다.
도 5에 본 발명의 제 1 실시 예에 따라 폴링 정보를 전송하는 RLC 장치의 동작을 설명하기 위한 신호 흐름도이다.
505 단계에서 RLC 장치는 폴링 정보 타입 2의 사용 조건을 인지한다. 상기 폴링 정보 타입 2는 함께 전송되는 RLC PDU에 수납된 데이터가 상위 계층 응답 메시지를 유발할 가능성이 높은 경우에 사용되며, 상기 폴링 정보 타입 2 사용 조건은 예를 들어 다음과 같은 것이 될 수 있다.
상위 계층에서 사용할 폴링 타입 지정해서 RLC 장치에 통보한다. RRC 메시지와 같은 3 계층 제어 메시지에서, 일부는 응답 메시지를 유발하는 요구 메시지이고, 일부는 응답 메시지를 수반하지 않는 메시지이다. 임의의 RRC 메시지가 응답 메시지를 유발할지 여부를 RLC 장치가 알 수 없기 때문에, RRC 장치는 응답 메시지를 유발하는 요구 메시지일 경우 이를 RLC 장치에게 지시하고, RLC 장치는 상위 계층 장치로부터 지시 받은 경우에만 폴링 정보 타입 2를 사용하고, 그렇지 않은 경우에는 폴링 정보 타입 1을 사용한다.
호 설정 시 RLC 장치가 사용할 폴링 정보 반응 방식이 미리 결정되어 있는 경우, 폴링 정보를 전송하는 쪽에서는 특별히 폴링 정보 타입을 구분할 필요가 없다. 예를 들어 TCP 기반 서비스와 연결된 RLC 장치가 폴링 정보 반응 방식 2를 사용하도록 설정되었다면, 폴링 정보를 전송하는 RLC 장치는 통상적인 폴링 정보를 사용하고, 폴링 정보를 수신하는 RLC 장치는 모든 폴링 정보를 폴링 정보 타입 2로 인식한다. 그러므로 도 5에 도시된 동작은 RLC 장치 별로 사용할 폴링 정보 반응 방식이 미리 결정되지 않은 경우에 적용된다.
폴링 정보 타입 2 사용 조건은 호 설정시 RLC 장치에 통보될 수 있다.
호 설정 과정을 통해 RLC 장치가 구성되면, RLC 장치는 소정의 절차를 거쳐 상대편 RLC 장치와 RLC PDU를 주고 받는다.
다시 도 5를 참조하면, 510 단계에서 RLC 장치는 소정의 조건이 충족되어서 폴링을 트리거링한다. 상기 폴링은 여러 조건에서 트리거링될 수 있는데, 예컨대 전송 버퍼에 저장되어 있는 마지막 RLC PDU가 전송되는 경우를 들 수 있다.
RLC 장치는 515 단계에서 폴링 정보와 함께 전송될 RLC PDU에 수납된 상위 계층 데이터가 반대 방향으로 상위 계층 응답 메시지를 유발할 가능성이 높은지 검사한다. 다시 말해서 폴링 정보 타입 2 사용 조건이 충족되는지 검사하는 것이다. 상기 515 단계의 검사 결과, 폴링 정보 타입 2 사용 조건이 충족되지 않는다면, 520 단계에서 RLC 장치는 종래와 마찬가지로 폴링 정보 타입 1이 수납된 RLC PDU를 하위 계층으로 전달하고, 하위 계층은 상기 폴링 정보 타입 1과 RLC PDU를 전송한다.
그러나, 상기 515 단계의 검사 결과, 폴링 정보 타입 2 사용 조건이 충족되면, 525 단계에서 RLC 장치는 폴링 정보 타입 2가 수납된 RLC PDU를 하위 계층으로 전달하고, 하위 계층은 상기 폴링 정보 타입 2와 RLC PDU를 전송한다.
도 6에 본 발명의 제 1 실시 예에서 폴링 정보를 수신한 RLC 장치의 동작을 설명하기 위한 신호 흐름도이다.
605 단계에서 RLC 장치는 T1 타이머 값을 인지한다. 상기 T1 타이머 값은 3 계층 처리 지연(230)에 준하는 값으로 설정되어야 하며, 네트워크는 호 설정 과정에서 설정되는 호의 특성을 고려해서 상기 T1 타이머 값을 결정하고, RLC 장치에게 통보한다.
호 설정 과정을 통해 RLC 장치가 구성되면, 상기 RLC 장치는 소정의 절차를 거쳐 상대편 RLC 장치와 RLC PDU를 주고 받는다.
610 단계에서 폴링 정보를 수신하면, RLC 장치는 615 단계로 진행해서 상기 수신한 폴링 정보의 타입을 확인한다. 상기 615 단계의 확인 결과, 폴링 정보 타입 2를 수신하면, 620 단계로 진행한 RLC 장치는 T1 타이머를 구동해서 상기 타이머가 만료되면 625 단계로 진행한다. 혹은 T1 타이머가 만료되기 전이라도 상위 계층 데이터가 도착하면 바로 625 단계로 진행할 수도 있다. 625 단계에서 RLC 장치는 폴링 정보에 대한 응답으로 수신 상태 보고 전송 과정을 시작한다. 다시 말해서 하위 계층에게 수신 상태 보고 메시지의 크기를 통보한다. T1 타이머가 구동되는 중에 상위 계층 데이터가 도착하였다면 상기 상위 계층 데이터의 크기도 함께 통보한다. 하위 계층은 상기 데이터의 크기를 참조해서, 스케줄러에게 전송 자원 할당을 요청하고, 전송 자원이 할당되면 이를 바탕으로 상기 RLC 장치가 전송할 데이터의 크기를 결정한다. 그리고, RLC 장치에게 상기 전송할 데이터의 크기를 통보한다. 635 단계에서 하위 계층으로부터 전송할 데이터의 크기를 통보받으면 RLC 장치는 640 단계에서 상기 크기에 상응하는 수신 상태 보고와 RLC PDU를 구성해서 하위 계층으로 전달한다. 하위 계층은 상기 RLC PDU 및 수신 상태 보고를 상대편 RLC 장치로 전송한다.
한편, 상기 615 단계의 검사 결과, 수신한 폴링 정보가 종래와 동일한 폴링 정보 타입 1일 경우, RLC 장치는 630 단계로 진행하여 T1 타이머 동안의 대기 시간없이 곧 바로 수신 상태 보고 전송 과정을 시작한다. 즉, 수신 상태 보고 메시지의 크기를 하위 계층에게 보고하고, 635 단계에서 하위 계층이 소정의 크기를 가지는 RLC PDU를 만들어서 전송할 것을 명령하면, 640 단계에서 수신 상태 보고 메시지를 RLC PDU에 수납해서 하위 계층으로 전달한다.
호 설정 과정에서 RLC 장치가 사용할 폴링 정보 반응 방식이 미리 결정된 경우에는, 수신한 폴링 정보를 미리 결정된 폴링 정보 반응 방식에 해당하는 폴링 정보로 판단하므로, 615 단계의 판단 동작이 필요하지 않다.
다시 말해서 첫 번째 폴링 정보 반응 방식을 사용하도록 미리 결정된 RLC 장치는 605, 610, 630, 635, 640 단계를 거치며, 두 번째 폴링 정보 반응 방식을 사용하도록 미리 결정된 RLC 장치는 605, 610, 620, 625, 635, 640 단계를 거친다.
<제 2 실시 예>
본 발명의 제 2 실시 예에서는 수신 상태 보고와 상위 계층 데이터가 함께 전송되었을 때, 상기 수신 상태 보고를 유발한 폴링 정보의 재전송 여부를 근거로 수신 상태 보고와 함께 전송된 상위 계층 데이터의 전송 성공 여부를 판단하는 방법 및 장치를 제시한다. 본 발명의 제 2 실시 예를 사용하면 상기 상위 계층 데이터에 대해서 별도의 수신 상태 보고를 하지 않고도 전송의 신뢰도를 보장할 수 있기 때문에 전송 자원을 절약할 수 있다.
전술한 바와 같이 폴링 정보의 신뢰도는 타이머 기반의 재전송 기법으로 보장된다. 폴링 정보를 전송하는 RLC 장치는 폴링 타이머를 구동하고, 상기 타이머가 만료될 때까지 상기 폴링 정보에 대한 응답인 수신 상태 보고를 수신하지 못하면 상기 폴링 정보를 재전송한다.
그렇다면 폴링 정보를 수신한 뒤 수신 상태 보고를 전송힌 RLC 장치의 입장에서는 일정 기간 동안 상기 폴링 정보를 다시 수신하지 않는다면 상기 수신 상태 보고가 성공적으로 전송된 것으로 판단할 수 있다. 만약 상기 수신 상태 보고와 상위 계층 데이터를 함께 전송하였다면, 상기 수신 상태 보고 전송의 성공/실패는 상기 상위 계층 데이터 전송의 성공/실패와 일치한다. 그러므로, 상기 상위 계층 데이터의 재전송을 상기 수신 상태 보고의 재전송과 연계함으로써, 상대편 RLC 장치로부터 별도의 상태 보고를 수신하지 않고도 상기 상위 계층 데이터의 신뢰도를 보장할 수 있다. 물론 상기 동작은 수신 상태 보고와 함께 전송된 상위 계층 데이터에 한정되기 때문에 광범위하게 적용될 수는 없지만, TCP ACK이나 RRC 제어 응답 메시지와 같이 작은 크기의 상위 계층 데이터가 단발성으로 전송되는 경우에는 유용하게 사용될 수 있다.
도 7은 본 발명의 제 2 실시 예에 따른 동작을 설명하기 위한 신호 흐름도이다.
임의의 방향으로 데이터를 전송하고 있는 RLC 장치(710)가 임의의 시점에 마지막 RLC PDU를 전송한다. 이 때, 상기 RLC PDU에 수납되어 있는 데이터가 임의의 3 계층 제어 요구 메시지이거나 TCP 세그먼트라면, RLC 장치는 715 단계에서 폴링 정보 타입 2를 상기 RLC PDU와 함께 전송한다. 또는 구현을 보다 간단하게 하기 위해서, 단말과 기지국은 무선 베어러 별로 폴링 타입을 미리 설정해둘 수도 있으며, 이러한 경우에 폴링을 전송하는 RLC 장치는 따로 폴링 타입을 지시할 필요가 없으며, 종래와 마찬가지로 상대편 RLC 장치에게 폴링 정보를 RLC PDU와 함께 전송한다. RLC 장치(710)는 폴링 정보의 전송이 완료되면 폴링 타이머를 구동한다 (720).
상기 폴링 정보 타입 2와 RLC PDU를 수신한 RLC 장치(705)는 본 발명의 제 1 실시 예와 마찬가지로 소정의 타이머 T1을 구동하고, 상기 T1이 만료된 후 데이터 전송 절차를 시작한다. T1 타이머가 구동되는 동안 상위 계층 데이터가 도착하였다면, 상기 데이터 전송 절차를 통해 보고하는 버퍼 상태 보고에는 수신 상태 보고와 상위 계층 데이터가 모두 포함된다. 그리고, 전송 자원은 상기 수신 상태 보고와 상위 계층 데이터를 전송할 수 있도록 할당된다.
RLC 장치(705)는 할당받은 전송 자원을 이용해서 725 단계에서 수신 상태 보고와 상위 계층 데이터가 수납된 RLC PDU를 전송한다. 상기 RLC PDU에 수납된 상위 계층 데이터는 예를 들어 TCP ACK이나 3 계층 제어 응답 메시지 등이 될 수 있다.
RLC 장치(705)는 상기 수신 상태 보고와 함께 전송된 RLC PDU의 성공적인 전송 여부를 판단하기 위해서 T2 타이머를 이용한다. T2 타이머가 만료되기 전에, 745 단계에서 RLC PDU와 함께 전송된 수신 상태 보고를 발생시켰던 폴링 정보, 즉 1 번 메시지가 재전송되면, 수신 상태 보고 및 상기 수신 상태 보고와 함께 전송된 RLC PDU의 전송이 성공되지 못하였다는 것을 의미하므로, RLC 장치(705)는 상기 수신 상태 보고 및 RLC PDU를 재전송한다. 반면에 T2 타이머가 만료될 때까지, RLC PDU와 함께 전송된 수신 상태 보고를 발생시켰던 폴링 정보 즉 1 번 메시지가 재전송되지 않으면, 상기 수신 상태 보고 및 수신 상태 보고와 함께 전송된 RLC PDU의 전송이 성공한 것으로 간주하고, RLC 장치는 상기 RLC PDU를 재전송 버퍼에서 폐기한다.
RLC 장치의 오동작을 막기 위해서는 T2 타이머 값을 적절하게 설정하여야 한다. 가령 T2 타이머의 종료가 폴링 타이머의 종료보다 빠르면, 수신 상태 보고 및 관련된 RLC PDU의 전송이 실패했더라도 RLC 장치는 성공으로 인식하는 문제가 발생한다. 반면, T2 타이머의 종료가 폴링 타이머의 종료보다 지나치게 늦을 경우에는 관련된 RLC PDU를 재전송 버퍼에 불필요하게 저장해두어야 한다. 그러므로, T2 타이머의 종료 시점은 폴링 타이머의 종료 시점보다 조금 긴 정도가 적절하며, 이를 위해서 T2 타이머의 구동은 폴링 타이머의 구동과 연동될 필요가 있다. 예를 들어, 폴링 타이머의 시작 시점이 폴링 정보의 전송이 완료되는 시점이라면, T2 타이머 역시 폴링 정보를 수신한 시점(730)에 구동된다. 반면에 폴링 타이머의 시작 시점을 폴링 정보를 수신하는 RLC 장치가 가늠할 수 없다면, 수신 상태 보고 및 관련 RLC PDU의 전송이 완료된 시점(733)에 T2 타이머를 구동한다.
상기와 같이 수신 상태 보고의 성공적 전송 여부로 관련 RLC PDU의 성공적 전송 여부를 판단함으로써, 관련 RLC PDU에 대해서 별도의 수신 상태 보고를 받지 않고도, RLC PDU의 전송 신뢰도를 보장할 수 있다.
도 8은 본 발명의 제 2 실시 예에 따른 폴링 정보를 전송하는 RLC 장치의 동작을 설명하기 위한 신호 흐름도이다.
도 8을 참조하면, 805 단계에서 RLC 장치는 폴링 타이머 값과 폴링 정보 타입 2의 사용 조건을 인지한다. 폴링 정보 타입 2 사용 조건은 1 실시 예와 동일하므로 설명을 생략한다. 폴링 타이머 값은 폴링 정보의 재전송을 위한 것으로, RLC 장치는 폴링 정보를 전송하면 폴링 타이머를 구동하고, 폴링 타이머가 만료될 때까지 폴링 타이머에 대한 응답인 수신 상태 보고가 수신되지 않으면 폴링 정보를 재전송한다.
상기 폴링 정보 타입 2 사용 조건과 폴링 타이머 값은 호 설정시 RLC 장치에 통보될 수 있다. 호 설정 과정을 통해 RLC 장치가 구성되면, 상기 RLC 장치는 소정의 절차를 거쳐 상대편 RLC 장치와 RLC PDU를 주고 받는다.
810 단계에서 RLC 장치는 소정의 조건이 충족되어서 폴링을 트리거링한다. 상기 폴링을 트리거링하는 조건은 여러 가지가 있을 수 있는데, 예를 들어 전송 버퍼에 저장되어 있는 마지막 RLC PDU의 전송시 폴링이 트리거링될 수 있다.
RLC 장치는 815 단계에서 폴링 정보와 함께 전송될 RLC PDU에 수납된 상위 계층 데이터가 반대 방향으로 상위 계층 응답 메시지를 유발할 가능성이 높은지 검사한다. 다시 말해서 폴링 정보 타입 2 사용 조건이 충족되는지 검사하는 것이다.
상기 815 단계의 검사 결과, 폴링 정보 타입 2 사용 조건이 충족되지 않을 경우, 820 단계에서 RLC 장치는 폴링 정보 타입 1이 수납된 RLC PDU를 하위 계층으로 전달하고, 하위 계층은 상기 폴링 정보 타입 1과 RLC PDU를 전송하고 830 단계로 진행한다.
그러나, 상기 815 단계의 검사 결과, 폴링 정보 타입 2 사용 조건이 충족될 경우, 825 단계에서 RLC 장치는 폴링 정보 타입 2가 수납된 RLC PDU를 하위 계층으로 전달하고, 하위 계층은 상기 폴링 정보 타입 2와 RLC PDU를 전송하고, 830 단계로 진행한다.
830 단계에서 RLC 장치는 폴링 타이머를 구동하고, 상기 폴링 정보에 대한 응답인 수신 상태 보고의 수신 여부를 감시한다. 타이머가 만료될 때까지 수신 상태 보고가 수신되지 않으면, RLC 장치는 835 단계로 진행해서 폴링 정보가 수납된 RLC PDU를 재전송하고, 폴링 타이머를 구동한다. 그리고, 835 단계의 동작을 수신 상태 보고가 수신되거나, 소정의 조건이 충족될 때까지 반복한다.
도 9는 본 발명의 제 2 실시 예에서 폴링 정보를 수신한 RLC 장치의 동작을 설명하기 위한 신호 흐름도이다.
905 단계에서 RLC 장치는 T1 타이머 값과 T2 타이머 값을 인지한다. 상기 T1 타이머는 제 1 실시 예에서와 동일하므로 설명을 생략한다. T2 타이머 값은 전술한 바와 같이 T2 타이머와 폴링 타이머가 비슷한 시점에 구동된다는 전제하에 폴링 타이머보다 약간 긴 값으로 설정되어야 한다. 네트워크의 호 설정 제어 장치는 호 설정시 호의 성격을 고려해서 상기 T1 타이머 값과 T2 타이머 값을 결정해서 단말과 기지국에 통보하고, 단말과 기지국은 RLC 장치를 설정하고 상기 타이머 값들을 RLC 장치들에 전달한다.
호 설정 과정을 통해 RLC 장치가 구성되면, 상기 RLC 장치는 소정의 절차를 거쳐 상대편 RLC 장치와 RLC PDU를 주고 받는다.
910 단계에서 폴링 정보 타입 2를 수신하면, RLC 장치는 920 단계로 진행해서 T1 타이머를 구동해서 상기 타이머가 만료되면 925 단계로 진행한다. 또는 T1 타이머가 만료되기 전이라도 상위 계층 데이터가 도착하면 바로 925 단계로 진행할 수도 있다.
925 단계에서 RLC 장치는 폴링 정보에 대한 응답으로 수신 상태 보고 전송 과정을 시작한다. 즉, 하위 계층에게 수신 상태 보고 메시지의 크기를 통보한다. T1 타이머가 구동되는 중에 상위 계층 데이터가 도착하였다면 상기 상위 계층 데이터의 크기도 함께 통보한다. 하위 계층은 상기 데이터의 크기를 참조해서 스케줄러에게 전송 자원 할당을 요청한다. 전송 자원이 할당되면 이를 바탕으로 상기 RLC 장치가 전송할 데이터의 양을 결정한다.
935 단계에서 하위 계층은 RLC 장치에게 전송할 데이터의 양을 통보한다. RLC 장치는 940 단계에서 수신 상태 보고를 구성하고 상위 계층 데이터가 존재하면, 상기 상위 계층 데이터로 RLC PDU를 만들어서 하위 계층으로 전달한다.
이하 설명의 편의를 위해서 수신 상태 보고와 함께 전송되는 RLC PDU를 관련 RLC PDU (coupled RLC PDU)로 명명한다. 하위 계층은 상기 관련 RLC PDU 및 수신 상태 보고를 상대편 RLC 장치로 전송한다.
945 단계에서 RLC 장치는 T2 타이머가 만료되기 전에, 관련 RLC PDU와 함께 전송된 수신 상태 보고를 유발했던 폴링 정보가 재전송되는지 모니터링한다.
T2 타이머는 폴링 정보 타입 2를 수신한 910 단계에서 구동될 수도 있고, 관련 RLC PDU의 전송이 완료된 시점에 구동될 수도 있다. 또한, T2 타이머가 만료될 때까지 폴링 정보가 재전송되지 않았다는 것은 관련 RLC PDU가 성공적으로 전송되었음을, 폴링 정보가 재전송되었다는 것은 관련 RLC PDU의 전송이 실패하였음을 의미한다.
임의의 폴링 정보가 관련 RLC PDU와 함께 전송된 수신 상태 보고를 유발했던 폴링 정보인지를 확인하는 방법으로는 아래와 같은 것들이 있다.
먼저 폴링 정보가 RLC PDU에 수납되어서 전송되었다면, 상기 RLC PDU의 일련 번호를 상기 폴링 정보의 식별자로 사용할 수 있다. 즉, 임의의 시점에 수신한 폴링 정보가 수납된 RLC PDU의 일련 번호가 이전에 수신한 폴링 정보가 수납된 RLC PDU의 일련 번호와 동일하다면, 상기 폴링 정보들은 동일한 것이며, 후에 수신한 폴링 정보가 전에 수신한 폴링 정보의 재전송인 것으로 판단할 수 있다.
또는 구현의 용이를 위해서 T2 타이머가 만료되기 전에 수신하는 모든 폴링 정보 타입 2를 상기 T2 타이머 구동을 유발한 폴링 정보 타입 2의 재전송으로 간주할 수도 있다.
다시 도 9를 참조하면, 상기 945 단계의 모니터링 결과, 수신 상태 보고 및 관련 RLC PDU의 전송이 실패했다고 판단되면, RLC 장치는 950 단계에서 관련 RLC PDU와 수신 상태 보고를 재전송한다. 이 때 해당 시점의 수신 상태 정보로 갱신된 수신 상태 보고가 재전송될 수도 있다.
한편, 상기 945 단계의 모니터링 결과, 수신 상태 보고 및 관련 RLC PDU의 전송이 성공했다고 판단되면, RLC 장치는 955 단계에서 관련 RLC PDU를 재전송 버퍼에서 삭제한 후 과정을 종료한다.
도 10은 본 발명에 따른 RLC 장치의 내부 구성도이다
도 10을 참조하면, RLC 장치(1040)는 전송 제어부(1005), 전송 버퍼(1010), 프레이밍 장치(1015), 재전송 버퍼(1020), 수신 상태 보고 처리부(1040), 수신 버퍼(1045), 폴링 정보 처리부(1055)등으로 구성된다.
한편, RLC 장치는 다중화 장치(1025)와 역다중화 장치(1050)에 연결된다.
다중화 장치(1025)는 다수의 RLC 장치로부터 전달되는 RLC PDU들을 하나의 HARQ 패킷으로 다중화한다. 역다중화 장치(1050)는 HARQ 프로세서(processor)에서 전달된 HARQ 패킷을 역다중화해서, 적절한 RLC 장치로 전달한다.
HARQ processor(1030)는 소정의 HARQ 동작을 통해 HARQ 패킷을 송수신하는 장치이며, 송수신부(1035)는 HARQ 패킷을 무선 신호로 변조해서 송신하고, 무선 신호를 복조하는 장치이다.
그러면, 상기 RLC 장치(1040)의 내부 구성 동작을 상세히 설명하기로 한다.상위 계층에서 전달된 데이터는 전송 버퍼(1010)에 저장되고, 차후에 전송 제어부(1005)의 제어에 따라 적절한 크기의 RLC PDU로 프레이밍되어서 전송된다. 전송 제어부(1005)는 전송하고자 하는 데이터의 양을 하위 계층으로 보고하고, 하위 계층으로부터 다음 전송 주기에 전송할 데이터의 양을 통보 받으며, 전송할 데이터의 양에 따라 다음 전송 주기에 전송할 데이터를 결정한다.
상기 전송하고자 하는 데이터의 양은 전송 버퍼(1010)에 저장되어 있는 데이터의 양, 재전송 버퍼에 저장되어 있는 데이터의 양, 수신 상태 보고와 같은 여타 제어 정보의 크기가 모두 고려된 것이다.
전송 제어부(1005)는 폴링 정보 타입 2를 수신하면, T1 타이머를 구동한다. 그리고, T1 타이머가 만료되면 수신 상태 보고를 생성하도록 수신 상태 보고 처리부(1040)를 제어한다. 그리고, 상기 수신 상태 보고 및 관련 RLC PDU의 전송이 완료되면 T2 타이머를 구동한다. T2 타이머가 만료될 때까지 폴링 정보 타입 2가 수신되지 않으면, 상기 관련 RLC PDU의 전송이 성공한 것으로 판단하고, 재전송 버퍼에서 상기 관련 RLC PDU를 제거한다. T2 타이머가 만료되기 전에 폴링 정보 타입 2가 수신되면, 상기 관련 RLC PDU와 수신 상태 보고의 전송이 실패한 것으로 판단하고, 수신 상태 보고 처리부(1040)를 제어해서 새로운 수신 상태 보고를 발생시키고, 상기 수신 상태 보고와 관련 RLC PDU를 재전송한다.
프레이밍부(1015)는 전송 버퍼에서 전달하는 데이터에 RLC 헤더를 부착해서 RLC PDU를 만든다. 상기 RLC PDU는 다중화기(1025)로 전달되는 동시에 재전송 버퍼(1020)에 저장되며, 재전송 버퍼(1020)에 저장된 RLC PDU는 상대편 RLC 장치의 요청에 따라 재전송되거나, 성공적으로 전송된 것이 확인되면 제거된다.
폴링 정보 처리부(1055)는 소정의 조건이 충족되면 폴링 정보를 RLC PDU에 수납해서 전송한다. 폴링 정보 처리부(1055)는 또한 폴링 정보 타입 2 트리거링 조건을 인지하고, 상기 조건이 충족되면 폴링 정보 타입 2를, 충족되지 않으면 폴링 정보 타입 1을 전송한다. 폴링 정보 처리부(1055)는 폴링 정보를 수신하면, 이를 전송 제어부(1005)에게 통보한다.
역다중화기(1050)에서 전달된 RLC PDU는 수신 버퍼에 저장되고, 상태 보고 발생부는 소정의 상태 보고 발생 조건이 만족되면, 전송 제어부(1005)에게 상태 보고를 전송해야 한다는 것을 보고한다. 수신 상태 보고 처리부(1040)는 전송 제어부(1005)가 상태 보고 전송을 명령하면, 수신 버퍼(1045)에 저장된 RLC PDU들의 일련 번호를 검사해서, 성공적으로 수신된 RLC PDU들과 재전송을 요청할 RLC PDU들의 일련 번호를 인지하고, 이에 따라 수신 상태 보고를 구성한다. 그리고, 구성된 수신 상태 보고를 전송한다.
제 3 실시 예에서 전송 제어부는 폴링 정보의 재전송을 관리한다. 전송 제어부는 폴링 타이머의 만료로 폴링 정보의 재전송이 필요해지면, 재전송 버퍼에 저장되어 있는 폴링 PDU를 소정의 방법으로 분할해서, 폴링 정보와 최소한의 사용자 데이터만 수납된 폴링 PDU를 새롭게 구성하도록 재전송 버퍼와 프레이밍부를 제어한다. 상기 폴링 정보와 최소한의 사용자 데이터 만을 수납한 폴링 PDU는 다중화기, HARQ processor, 송수신기를 거쳐서 전송된다. 전송 제어부는 폴링 타이머의 만료가 아닌 다른 이유, 예를 들어 폴링 PDU에 대한 HARQ 레벨에서의 전송 실패 등으로 폴링 PDU의 재전송이 필요해 지면, 재전송 버퍼에 저장되어 있는 폴링 PDU를 원래의 재전송 절차에 따라서 재전송하도록 재전송 버퍼를 제어한다. 다시 말해서 상기 시점에 원래의 폴링 PDU를 재전송할 수 있는 충분한 양의 전송 자원이 가용하다면, 상기 폴링 PDU를 그대로 재전송하고, 전송 자원이 충분하지 않으면, 전송 가능한 크기로 상기 폴링 PDU를 분할해서 재전송한다.
제 4 실시 예에서 전송 제어부는 폴링 정보의 재전송을 관리한다. 전송 제어부는 폴링 PDU의 분할 재전송이 필요해 지면, 폴링 정보의 트리거를 확인해서, 상기 트리거에 따라 첫번째 세그먼트 혹은 마지막 세그먼트에 폴링 정보가 수납되도록 폴링 정보 처리부를 제어한다.
제 5 실시 예에서 전송 제어부는 폴링 정보의 재전송을 관리한다. 전송 제어부는 폴링 PDU가 성공적으로 전송되고 T3의 시간이 흐른 후, 상대편 RLC 장치로부터 처음으로 패킷을 수시한 시점에 소정의 폴링 타이머를 구동한다. 그리고 상기 폴링 타이머가 만료될 때까지 수신 상태 보고 메시지를 수신하지 못하면, 폴링 정보의 재전송 절차를 개시한다.
<제 3 실시 예>
본 발명의 제 3 실시 예에서는 폴링 정보를 수납한 RLC PDU를 재전송함에 있어서, 폴링 정보를 수납한 RLC PDU가 유실되었을 가능성이 높은 경우에는 폴링 정보 전체를 재전송하고, 폴링 정보를 수납한 RLC PDU는 잘 전송되었지만 수신 상태 보고 메시지가 유실되었을 가능성이 높은 경우에는 폴링 정보 만을 재전송하는 방법을 제시한다. 좀 더 자세히 설명하면, 폴링 정보를 수납한 RLC PDU에 대한 HARQ 전송 실패에 따른 재전송에서는 상기 폴링 정보를 수납한 RLC PDU 전체를 재전송하며, 폴링 정보를 수납한 RLC PDU에 대한 HARQ 전송은 성공하였지만 폴링 타이머가 만료될 때까지 수신 상태 보고를 수신하지 못해서 재전송이 필요한 경우에는 폴링 정보만을 재전송한다.
도 11은 본 발명의 바람직한 제 3 실시 예에 따른 전체 동작 흐름도를 도시한 도면이다.
폴링 정보를 전송하는 장치(1110, 이하 전송 장치)와 폴링 정보를 수신하는 장치(1105, 이하 수신 장치)로 구성된 이동 통신 시스템에서, 전송 장치(1110)는 일정한 조건이 충족되면 폴링 정보가 수납된 RLC PDU를 전송한다. 폴링 정보를 발생시키는 조건을 폴링 정보 발생 조건 (polling triggering condition)이라 하며, 예를 들어 아래와 같은 것들이 정의될 수 있다.
<폴링 정보 발생 조건>
- 전송 버퍼 혹은 재전송 버퍼에 저장된 마지막 데이터 전송
- 폴링 정보를 전송한 후 구동된 소정의 타이머가 만료
- 재전송 버퍼에 저장된 미해결 RLC PDU(outstanding RLC PDU)의 양이 전체 버퍼 사이즈의 소정의 비율을 초과
상대편 RLC 장치로 전송된 RLC PDU 중, 성공적인 전송 여부를 아직 확인하지 못한 RLC PDU, 즉 상대편 RLC 장치로부터 긍정적 인지 신호를 받지 못한 RLC PDU를 미해결 RLC PDU라 한다.
상기 발생 조건은 RLC 장치 별로 달리 설정될 수 있다. 예컨대, 임의의 RLC 장치는 첫번째 발생 조건에만 반응하도록 설정될 수도 있고, 또 다른 RLC 장치는 첫번째와 세번째 발생 조건에 반응하도록 설정될 수 있다.
폴링 발생 조건이 충족되면 전송 장치는 RLC 헤더와 페이로드를 연접해서 RLC PDU를 만들고, 상기 RLC PDU를 하위 계층으로 전달한다. 페이로드에는 상위 계층에서 전달된 사용자 데이터 혹은 RLC 제어 정보 등이 수납된다. 폴링 정보는 RLC 헤더의 특정 필드로 정의될 수도 있고 별도의 RLC 제어 정보로 정의될 수도 있다. 반 발명에서는 폴링 정보가 어떻게 정의되느냐와 무관하게 폴링 정보를 수납한 RLC PDU를 폴링 PDU 정의한다. RLC PDU를 전달 받은 하위 계층은 소정의 HARQ 동작을 통해 상기 RLC PDU를 전송한다. HARQ 동작의 속성상, 상기 하위 계층은 상기 RLC PDU의 전송 성공 여부를 비교적 정확하게 인지할 수 있다.
HARQ 동작은 HARQ 송신측과 HARQ 수신측이 단순화된 ARQ 동작을 수행하는 것이며, HARQ 전송 장치가 특정 RLC PDU가 수납된 패킷에 대한 HARQ 레벨의 긍정적 인지 신호 (이하 HARQ ACK)를 수신하였다면, 해당 RLC PDU가 성공적으로 전송된 것으로 판단할 수 있다. 소정의 회수 만큼의 재전송에도 불구하고 상기 RLC PDU가 수납된 패킷에 대한 HARQ 레벨의 긍정적 인지 신호를 끝내 수신하지 못하였다면, 해당 RLC PDU의 전송이 실패한 것으로 판단할 수 있다. 상기 HARQ ACK 혹은 HARQ NACK 등은 송수신 중에 왜곡될 수도 있으며, 이 경우에는 HARQ 장치의 전송 성공 여부 판단은 부정확하다. 바꿔 말하면 HARQ ACK 신호 혹은 HARQ NACK 신호가 왜곡되지 않는 이상, HARQ 장치는 특정 패킷의 전송 성공 실패를 정확히 판단한다. 일반적으로 무선 채널 환경에서 HARQ NACK 신호가 HARQ ACK 신호로 왜곡될 확률은 10e-3 ~ 10e-4 정도이다. 다시 말해서 HARQ 레벨에서는 전송 성공으로 판정된 패킷이 실제로는 성공적으로 전송되지 못했을 확률이 10e-3 ~ 10e-4 정도인 것이다. 소정의 회수 만큼의 재전송에도 불구하고 임의의 HARQ 패킷에 대한 HARQ 레벨의 긍정적 인지 신호가 발생하지 않을 확률은 10e-2 정도이다. 이하 설명의 편의를 위해서 임의의 패킷을 소정의 회수만큼 재전송했음에도 불구하고, 상기 패킷에 대한 HARQ ACK을 수신하지 못한 것을 상기 패킷에 대한 HARQ 레벨의 전송이 실패하였다고 명명한다.
HARQ 전송을 수행하는 하위 계층이 상기 폴링 정보가 수납된 폴링 RLC PDU (1115)가 수납된 패킷의 전송에 실패하였다면, 하위 계층은 상기 RLC PDU에 대한 전송 실패를 전송 장치에게 통보한다(1120).
전송 장치는 하위 계층으로부터 폴링 RLC PDU에 대한 전송 실패를 통보 받으면, 상기 폴링 정보를 수납한 RLC PDU 자체가 유실된 것으로 판단하고 상기 폴링 PDU전체를 재전송한다(1125).
상기 재전송된 폴링 RLC PDU를 수납한 패킷에 대한 HARQ 레벨에서의 전송이 성공되면, 하위 계층은 전송 장치에게 상기 RLC PDU의 전송이 성공했음을 통보한다 (1130). 전송 장치는 전송 성공을 통보 받은 후 임의의 시점에 폴링 타이머(1135)를 구동하고, 상기 폴링 타이머가 만료될 때까지 수신 상태 보고를 수신하지 못하면, 폴링 정보의 재전송을 수행한다. 전술한 것과 같이 HARQ 장치가 폴링 PDU의 전송이 성공한 것으로 판단하였으나, 상기 폴링 PDU가 실제로 성공적으로 전송되지 못했을 확률은 10e-3 ~ 10e-4 정도이다. 반면에 상태 보고 메시지의 전송이 실패했을 확률은 10e-2 정도이다. 다시 말해서 폴링 PDU가 유실되었을 확률보다는 상태 보고 메시지가 유실되었을 확률이 훨씬 높다. 그러므로 단말은 상기 상황에서는 폴링 PDU전체를 재전송하지 않고, 폴링 정보만을 재전송한다(1140).
도 12에 전송 장치의 동작을 설명하기 위한 순서도이다.
1205 단계에서 전술한 폴링 정보 발생 조건이 충족되면, 전송 장치는 1210 단계에서 폴링 정보를 수납한 RLC PDU를 구성해서 하위 계층으로 전달한다. 상기 RLC PDU는 헤더와 페이로드로 구성되며, 폴링 정보는 소정의 헤더 필드에 수납되거나, 별도의 RLC 제어 메시지로써 페이로드에 수납될 수 있다. 상기 페이로드에는 또한 상위 계층에서 전달된 사용자 데이터인 RLC SDU의 일부가 함께 수납된다. 전송 장치는 1215 단계에서 상기 폴링 정보를 수납한 RLC PDU가 HARQ 레벨에서 성공적으로 전송되었는지 검사한다. 상기 폴링 정보를 수납한 RLC PDU를 수납한 패킷에 대해서 HARQ ACK이 수신되었다면 상기 RLC PDU는 HARQ 레벨에서 성공적으로 전송된 것이며, 상기 폴링 정보를 수납한 RLC PDU를 수납한 패킷을 소정의 회수 만큼 전송 및 재전송 하였으나 HARQ ACK을 수신하지 못하였다면, 상기 폴링 정보를 수납한 RLC PDU는 HARQ 레벨에서 전송이 실패한 것이다. 전송 장치는 폴링 정보를 수납한 RLC PDU가 HARQ 레벨에서 성공적으로 전송되었다면 1225 단계로, HARQ 레벨에서 전송에 실패했다면 1220 단계로 진행한다.
1220 단계에서 전송 장치는 상기 폴링 정보를 수납한 RLC PDU에 대한 재전송을 수행한다. 즉, 상기 폴링 정보를 수납한 RLC PDU를 다시 하위 계층으로 전달하고 1215 단계로 회귀해서 상기 RLC PDU가 HARQ 레벨에서 성공적으로 전송되었는지 검사한다.
폴링 정보를 수납한 RLC PDU가 HARQ 레벨에서 성공적으로 전송되었다면, 전송 장치는 1225 단계로 진행해서 폴링 타이머를 구동한다. 1230 단계에서 전송 장치는 상기 폴링 타이머가 만료되기 전에 수신 상태 보고가 수신되는지 검사한다. 폴링 타이머가 만료될 때까지 수신 상태 보고를 수신하지 못하면, 전송 장치는 1235 단계로 진행한다. 1230 단계로 진행하였다는 것은 HARQ 레벨에서는 성공적으로 전송된 폴링 PDU가, 실제로는 HARQ 피드백 정보의 왜곡 때문에 전송에 실패하였었거나, 폴링 정보에 대한 응답인 수신 상태 보고 메시지의 전송이 실패했다는 것을 의미한다. 전술한 바와 같이, HARQ 피드백 정보 왜곡에 따른 전송 실패가 발생할 확률이 수신 상태 보고 메시지의 전송이 실패할 확률보다 훨씬 낮기 때문에, 전송 장치는 수신 상태 보고 메시지의 전송이 실패한 것으로 판단한다. 단말은 폴링 PDU가 성공적으로 전송된 것으로 판단하고 폴링 PDU의 페이로드에 수납되어 있는 사용자 데이터는 재전송하지 않고, 오직 폴링 정보만 재전송한다.
폴링 정보가 별도의 RLC 제어 메시지로 정의된다면, 사용자 데이터는 재전송하지 않고 폴링 정보만 재전송하는 것은 자연스럽게 가능하다. 반면에 폴링 정보가 RLC 헤더의 소정의 필드로 정의된다면, 전송 장치는 폴링 정보가 수납된 RLC PDU의 페이로드 중 마지막 바이트만을 떼어서 분할 재전송하거나 혹은 페이로드는 포함시키지 않고 RLC 헤더만을 분할 재전송한다. 분할 재전송이란, 특정 RLC PDU의 재전송이 필요한 시점에 단말에 할당된 전송 자원이 충분치 않아서 단말이 상기 RLC PDU 전체를 재전송할 수 없을 때 상기 RLC PDU의 일부만 분할해서 재전송하는 것을 일컫는다. 그런데 폴링 PDU가 성공적으로 전송되었을 확률이 높기 때문에, 폴링 정보만을 재전송해야 하는 경우에도 상기 분할 재전송 기법을 이용하면, 폴링 정보와 함께 전송되는 사용자 데이터의 양을 최소화할 수 있다.
이를 좀 더 자세히 설명하면, RLC 헤더(1305)와 페이로드(1310)로 구성된 RLC PDU(1315)의 헤더의 일련 번호가 x, 폴 비트가 'yes'로 설정되어 전송되었다고 하자. 상기 RLC PDU가 HARQ 레벨에서는 전송에 성공했지만, 폴링 타이머가 만료될 때까지 수신 상태 보고가 수신되지 않아서 재전송되어야 한다면, 전송 장치는 상기 RLC PDU의 페이로드의 마지막 바이트(1330)만을 분할해서 분할 재전송한다. 즉, 상기 마지막 바이트를 페이로드 부분에 수납하고, RLC 헤더에 원래의 RLC PDU와 돋일한 일련 번호인 x를 삽입하고, 폴 비트를 'Yes'로 설정한다. 그리고, 상기 PDU가 분할 재전송되는 PDU이며, 차후에 원래의 PDU로 조립할 수 있도록 분할 헤더(1325)를 삽입한다. 상기 분할 헤더에는, 원래 페이로드에서 분할 재전송되는 페이로드의 위치를 나타내는 오프셋 정보가 수납되며, 상기 오프셋 정보에는 상기 분할 재전송되는 페이로드가 원래 페이로드의 마지막 바이트임을 나타내는 정보가 수납된다. 예컨대, 원래 페이로드의 전체 크기가 K 바이트라면, 상기 오프셋에는 [K-1]이 수납된다. 그리고 마지막 세그먼트 여부를 표시하는 플래그(Last Segment Flag)를 Yes로 설정한다. 혹은 상기 분할 재전송되는 RLC PDU에 사용자 데이터를 아예 포함시키지 않는 것도 가능하다. 전송 장치는 페이로드가 포함되지 않은 RLC PDU를 구성함에 있어서 상기 RLC PDU의 헤더에는 원래 RLC PDU와 동일한 일련 번호 x를 삽입하고, 폴 비트를 'yes'로 설정한다. 그리고 상기 RLC PDU의 분할 헤더의 오프 셋 필드에 원래 PDU의 페이로드 크기에 해당하는 K를 수납하고, 마지막 세그먼트 여부를 표시하는 플래그를 Yes로 설정한다. 상기와 같이 분할 재전송 기법을 이용함으로써, 폴링 정보와 함께 재전송되는 사용자 데이터의 양을 최소화할 수 있다.
폴링 타이머가 만료되기 전에 수신 상태 보고를 수신하면 전송 장치는 상기 폴링 정보 전송 과정을 종료한다.
<제 4 실시 예>
본 발명의 제 4 실시 예에서는 폴링 PDU의 분할 재전송시 상기 폴링 PDU의 발생 조건에 따라, 폴링 정보를 수납할 세그먼트를 달리하는 방법을 제시한다. 분할 재전송이란 특정 RLC PDU를 몇 개의 세그먼트로 분할해서 재전송하는 것을 의미한다. 상기 분할 재전송은 예를 들어 재전송을 수행할 시점에 단말의 채널 상황이 열악 해지거나 트래픽 발생량이 증가해서, 원래의 RLC PDU를 그대로 전송하지 못하는 경우에 실행된다. 원래의 RLC PDU에 폴링 정보가 수납되어 있었다면, 재전송되는 RLC PDU에도 폴링 정보를 수납하는 것이 당연하다. 그렇지만 분할 재전송되는 모든 세그먼트에 폴링 정보를 수납하는 것은 필요 이상의 수신 상태 보고 메시지를 유발시키기 때문에 분할 재전송되는 세그먼트 중 일부에만 폴링 정보를 수납하는 것이 바람직하다.
본 발명에서는, 폴링 정보를 발생시킨 원인에 따라, 상기 폴링 정보의 목적을 가장 잘 충족시킬 수 있는 세그먼트에 폴링 정보를 수납한다.
전술한 바와 같이 폴링 정보 발생 조건으로는 아래와 같은 것들이 있다.
<폴링 정보 발생 조건>
- 전송 버퍼 혹은 재전송 버퍼에 저장된 마지막 데이터 전송(이후 마지막 RLC PDU 트리거로 명명)
- 폴링 정보를 전송한 후 구동된 소정의 타이머가 만료 (이후 주기적 트리거로 명명)
- 재전송 버퍼에 저장된 미해결 RLC PDU(outstanding RLC PDU)의 양이 전체 버퍼 사이즈의 소정의 비율을 초과(이후 윈도우 트리거로 명명)
폴링 정보(1430)가 수납된 RLC PDU(1405)의 전송이 실패하고, 상기 RLC PDU가 다수의 RLC PDU(1415, 1420, 1425)들로 분할 재전송되는 경우를 예로 들어 보자.
상기 폴링 정보가 마지막 RLC PDU 트리거에 의해서 발생하였다면, 상기 폴링 정보의 목적은 전송 장치가 상기 마지막 RLC PDU를 포함한 모든 RLC PDU들의 수신 상태에 대한 수신 상태 보고를 받는 것이다. 그러므로, 마지막 RLC PDU 트리거에 의해서 발생한 폴링 정보를 수납한 RLC PDU가 분할 재전송될 경우, 폴링 정보는 마지막 세그먼트(1425)에 수납되는 것이 폴링 정보의 목적에 가장 부합된다.
반면에 상기 폴링 정보가 주기적 트리거에 의해서 발생하였다면, 상기 폴링 정보의 목적은 수신 상태 보고를 주기적으로 받아 보기 위한 것이다. 상기 폴링 정보를 수납한 RLC PDU가 재전송되어야 한다는 것은 송신 장치가 애초에 의도했던 시점에 수신 상채 보고를 받아 보지 못한 것을 의미하므로, 상기 폴링 정보는 되도록 신속하게 재전송되는 것이 바람직하다. 그러므로 주기적 트리거에 의해서 발생한 폴링 정보를 수납한 RLC PDU가 분할 재전송되는 경우, 폴링 정보를 첫번째 세그먼트(1415)에 수납한다.
상기 폴링 정보가 윈도우 트리거에 의해서 발생했다면, 상기 폴링 정보의 목적은 전송 버퍼의 오버 플로우를 방지하기 위한 것이다. 요컨대, 윈도우 트리거의 목적은 전송 버퍼에 저장된 데이터의 양이 소정의 비율을 초과해서 가까운 시일 내에 전송 버퍼의 오버 플로우가 예상될 때, 수신 상태를 보고 받아서 수신 장치가 성공적으로 수신한 RLC PDU들을 전송 장치의 전송 버퍼에서 폐기하는 것이다. 때문에 윈도우 트리거에 의해서 발생한 폴링 정보에 대한 응답인 수신 상태 보고 메시지를 수신하지 못하였다면, 폴링 정보를 되도록 신속하게 재전송해서 새로운 수신 상태 보고를 신속하게 수신하는 것이 필요하다. 그러므로 윈도우 트리거에 의해서 발생한 폴링 정보를 수납한 RLC PDU가 분할 재전송되는 경우, 폴링 정보를 첫번째 세그먼트(1415)에 수납한다.
도 15는 본 발명의 제 4 실시 예의 전체 흐름도이다.
수신 장치(1505)와 송신 장치(1510)로 구성된 이동 통신 시스템에서, 송신 장치는 폴링 정보 발생 조건이 만족되면 폴링 정보를 수납한 RLC PDU를 전송한다(1515). 상기 RLC PDU에 대한 부정적 인지 신호를 수신하였거나, 혹은 상기 RLC PDU가 HARQ 레벨에서 전송 실패하거나, 혹은 폴링 타이머가 만료될 때까지 수신 상태 보고를 받지 못해서, 상기 RLC PDU를 재전송해야 하지만, 송신 장치에게 할당된 전송 자원의 양이 충분하지 않아서 상기 RLC PDU를 분할 재전송해야 하는 경우가 발생한다 (1520).
단말은 분할 재전송할 RLC PDU의 폴링 정보를 발생시킨 조건을 검사해서, 상기 폴링 정보가 마지막 RLC PDU 트리거에 의해서 발생하였다면, 상기 RLC PDU의 마지막 세그먼트에 폴링 정보를 수납해서 전송한다 (1530). 분할 재전송할 RLC PDU의 폴링 정보가 주기적 트리거나 윈도우 트리거에 의해서 발생하였다면, 상기 RLC PDU의 첫번째 세그먼트에 폴링 정보를 수납해서 전송한다. (1535).
도 16은 본 발명의 제 4 실시 예에 따른 전송 장치의 동작을 도시한 순서도이다..
1605 단계에서 폴링 정보를 수납한 RLC PDU의 분할 재전송의 필요성이 발생한다.
1610 단계에서 전송 장치는 분할 재전송될 RLC PDU에 수납되었던 폴링 정보의 트리거를 확인한다. 즉, 상기 폴링 정보가 어떤 폴링 정보 발생 조건이 충족되어서 발생했는지 확인한다.
1615 단계에서 전송 장치는 상기 폴링 정보의 트리거가 마지막 PDU 트리거에 의한 것인지 검사해서, 마지막 PDU 트리거에 의한 것이라면 1620 단계로 진행하고, 마지막 PDU 트리거가 아닌 다른 트리거 즉, 주기적 트리거 혹은 윈도우 트리거라면 1625 단계로 진행한다.
1620 단계에서 전송 장치는 상기 RLC PDU를 분할 재전송함에 있어서, 마지막 세그먼트에 폴링 정보를 수납하고, 상기 마지막 세그먼트가 성공적으로 전송되면 폴링 타이머를 구동한다.
1625 단계에서 전송 장치는 상기 RLC PDU를 분할 재전송함에 있어서, 첫번째 세그먼트에 폴링 정보를 수납하고,상기 첫번째 세그먼트가 성공적으로 전송되면 폴링 타이머를 구동한다.
<제 5 실시예>
본 발명의 제 5 실시 예로 폴링 PDU를 전송한 후 상대편 RLC 장치로부터 첫번째 패킷을 수신한 시점에 폴링 타이머를 구동하는 방법 및 장치를 제시한다. 폴링 타이머는 일반적으로 폴링 PDU가 성공적으로 전송되면 구동된다.
도 17은 본 발명의 바람직한 제 5 실시 예에 따른 전체 동작 흐름도이다.
도 17을 참조하면, 전송 장치는 하위 계층이 폴링 PDU를 수납한 패킷이 성공적으로 전송되었음을 통보하면(1720), 폴링 타이머를 구동하고, 상기 폴링 타이머가 만료될 때까지 수신 상태 보고를 수신하지 못하면 폴링 정보를 재전송한다(1740).
LTE와 같이 기지국 스케줄링이 적용되는 이동 통신 시스템에서는 수신 장치가 폴링 PDU를 제대로 수신하였다 하더라도 수신 상태 보고 메시지를 곧 바로 전송할 수 있는 것은 아니다. 수신 장치는 스케줄러로부터 수신 상태 보고를 전송할 전송 자원을 할당받아야 하며, 수신 장치가 속한 로지컬 채널이 낮은 우선 순위를 가진다면 상기 전송 자원을 할당받을 때까지의 지연인 스케줄링 지연(1730)은 아주 큰 값이 될 수 있다. 스케줄러는 임의의 시점에 데이터의 양과 상기 데이터의 우선 순위를 고려해서 스케줄링을 수행하며, 일반적으로 우선 순위가 높은 데이터에 대해서 먼저 전송 자원을 할당한다. 임의의 시점에 전송할 데이터의 양이 많지 않다면, 우선 순위가 낮은 데이터에 대해서도 빠른 시간 내에 전송 자원이 할당 되겠지만 전송할 데이터의 양이 많다면 우선 순위가 낮은 데이터에 대한 전송 자원 할당에는 긴 시간이 소요될 수 있다. 스케줄링 지연은 이처럼 변이가 크기 때문에, 사전에 그 값을 추정하는 것이 거의 불가능하다.
수신 장치는 상기 스케줄링 지연을 거친 후에야 수신 상태 보고 메시지(1735)를 전송하며, 폴링 타이머가 스케줄링 지연에 비해서 짧게 설정되었다면 폴링 정보가 불필요하게 재전송된다(1740).
임의의 로지컬 채널의 RLC 장치가 폴링 정보를 전송한 후 상대편 RLC 장치로부터 패킷을 수신하였다는 것은, 스케줄링 지연이 경과해서 상기 상대편 RLC 장치에게 전송 자원이 할당되었음을 의미하므로, 본 발명의 5 실시예에서 RLC 장치는 상대편 RLC 장치로부터 첫번째 RLC PDU를 수신한 후에 폴링 타이머를 구동한다.
도 18은 본 발명의 제 5 실시 예에 따른 RLC 송신 장치의 동작 흐름도이다.
1805 단계에서 폴링 정보를 수납한 RLC PDU를 성공적으로 전송하면, 즉 폴링 PDU를 수납한 패킷이 HARQ 레벨에서 전송 성공하면, RLC 장치는 1810 단계로 진행해서 소정의 기간 T3이 경과할 때까지 대기한다. RLC PDU 송수신에는 HARQ가 적용되기 때문에, HARQ 재전송 회수에 따라 가변적인 전송 지연이 존재한다. 상기 T1의 경과 시간은 상대편 RLC 장치가 전송한 RLC PDU에 대한 전송 지연을 보상하기 위한 것이다. 다시 말해서, 상기 T1만큼 대기함으로써 폴링 PDU가 전송 중일 때 상대편 RLC 장치로부터 전송이 시작된 RLC PDU에 의해서 폴링 타이머가 구동되는 것을 방지한다.
T1이 경과한 후 임의의 시점인 1815 단계에서 상대편 RLC 장치로부터 RLC PDU를 수신하면 단말은 1820 단계로 진행한다. 상기 상대편 RLC 장치란 상기 RLC 장치가 전송한 RLC PDU를 수신하고, RLC PDU를 상기 RLC 장치에게 전송하는 RLC 장치를 의미하며, 상대편 RLC 장치는 상기 RLC 장치와 동일한 로지컬 채널에 속한다. 1820 단계에서 RLC 장치는 상기 수신한 RLC PDU가 수신 상태 보고 메시지인지 혹은 수신 상태 보고 메시지를 포함하고 있는지 검사한다. 만약 수신 상태 보고 메시지이거나 수신 상태 보고 메시지를 포함하고 있다면 1825 단계로, 그렇지 않다면 1830 단계로 진행한다.
1825 단계로 진행하면 RLC 장치는 수신 상태 보고 메시지를 수신하였으므로, 폴링 정보가 성공적으로 전송된 것으로 판단하고 과정을 종료한다.
1830 단계로 진행한 RLC 장치는 폴링 타이머를 구동하고 1835 단계로 진행한다. 1835 단계에서 RLC 장치는 폴링 타이머가 만료되기 전에 수신 상태 보고 메시지가 수신되는지 검사해서, 폴링 타이머가 만료될 때까지 수신 상태 보고 메시지가 수신되지 않으면 1840 단계로 진행해서 폴링 정보를 재전송한다. 폴링 타이머가 만료되기 전에 수신 상태 보고 메시지가 수신되면 RLC 장치는 1825 단계로 진행해서 폴링 정보가 성공적으로 전송된 것으로 판단하고 과정을 종료한다.
<제 6 실시 예>
본 발명의 제 6 실시 예에서는 폴링 PDU의 분할 재전송시, 상기 폴링 PDU의 마지막 부분부터 분할한 후, 상기 분할된 PDU에 폴링 정보를 수납해서 전송하는 방법을 제안한다.
폴링 타이머가 만료됨에 따라 폴링 PDU를 분할 재전송하는 경우, 마지막 세그먼트에 폴링 정보를 수납하는 것이 일반적이다. 폴링 타이머가 만료되었다는 것은, 폴링 PDU가 유실되었거나 혹은 STATUS REPORT가 유실되었음을 의미한다.
만일, 폴링 PDU가 유실되었다면 폴링 PDU 전체를 재전송하는 것이 바람직하다. 그러나, 폴링 PDU는 잘 전송되었으나, STATUS REPORT가 유실된 경우라면, 폴링 PDU 전체를 전송하는 것보다는 폴링 PDU의 일부만 전송하는 것이 바람직하다.
본 발명의 6 실시 예에서는 상술한 바와 같이 임의의 이유로 폴링 PDU를 재전송해야하는 경우, 할당된 전송 자원의 양이 충분하지 않아서 폴링 PDU를 분할 재전송해야 한다면, 통상적인 분할 재전송처럼 페이로드의 첫번째 부분부터 분할하는 것이 아니라, 페이로드의 마지막 부분부터 분할해서 전송하도록 한다.
도 19는 상술한 바와 같은 본 발명의 제 6 실시 예의 일 예를 설명하기 위한 도면이다.
도 19를 참조하면, 페이로드가 X 바이트인 폴링 PDU(1905)를 전송한 후, 임의의 이유로 상기 RLC PDU를 재전송해야 할 필요성이 발생한다. 이 때, 상기 RLC PDU 재전송을 위한 할당된 전송 자원이 충분하지 않아서 Y 바이트의 페이로드만을 수납할 수 있다면, 즉, Y 바이트 페이로드를 가지는 RLC PDU로 분할해서 재전송해야 한다면, 단말은 상기 원래 폴링 PDU의 페이로드 중 마지막 Y 바이트를 수납한 분할 RLC PDU(1910)를 구성하고, 상기 RLC PDU에 폴링 정보(1915)를 수납해서 전송한다.
상기 폴링 PDU의 재전송이, 폴링 PDU의 유실에 의한 것인지 STATUS REPORT의 유실에 의한 것인지 명확하지 않으므로, 단말은 RLC STAUS REPORT를 수신할 때까지 나머지 세그먼트, 즉 원래 X 바이트 중 이미 전송된 Y 바이트를 제외한 나머지 페이로드(1920)를 수납한 세그먼트는 전송하지 않는다.
도 20는 본 발명의 제 6 실시 예에 따른 단말 동작을 설명하기 위한 신호 흐름도이다.
도 20을 참조하면, 2005 단계에서 폴링 타이머가 만료됨에 따라서 폴링 PDU를 재전송해야 할 필요성이 발생하면, 단말은 재전송을 위해서 기지국에게 전송 자원을 요청하는 등의 필요한 동작을 수행한다. 기지국으로부터 전송 자원이 할당되면, 단말은 2010 단계로 진행해서 분할 재전송이 필요한지 검사한다.
상기 2010 단계의 검사 결과, 재전송할 폴링 PDU의 크기보다 할당된 전송 자원을 통해 전송할 수 있는 RLC PDU의 크기가 작으면 분할 재전송이 필요한 것이며, 단말은 2020 단계로 진행한다.
2020 단계로 진행한 단말은 재전송할 폴링 PDU의 페이로드의 마지막 Y 바이트를 분할해서 분할 PDU를 생성한다. 상기 Y는 할당 받은 전송 자원을 통해 전송할 수 있는 RLC PDU의 페이로드 크기이다. 2025 단계에서 단말은 상기 생성한 분할 PDU에 폴링 정보를 수납한다. 예를 들어, RLC PDU 헤더의 폴링 비트를 'YES'로 설정한다.
2030 단계에서 단말은 상기 분할 PDU를 전송하고 과정을 종료한다. 이후 전송 자원이 할당되더라도, 분할 전송된 후 남은 세그먼트의 재전송을 요청하는 RLC STATUS REPORT를 수신하지 않는 이상, 상기 분할되고 남은 나머지 세그먼트는 재전송하지 않는다.
한편, 상기 2010 단계의 검사 결과, 재전송할 폴링 PDU의 크기보다 할당된 전송 자원을 통해 전송할 수 있는 RLC PDU의 크기가 크거나 같다면 단말은 2015 단계로 진행한다. 2015 단계에서 단말은 폴링 PDU를 재전송하고 과정을 종료한다.

Claims (10)

  1. 통신 시스템에서 송신 장치에 의해서 데이터를 송신하는 방법에 있어서,
    만약, 이용 가능한 자원들의 양이 상기 RLC PDU를 재전송하기 위해서 요구되는 자원들의 양보다 적으면, 무선 링크 제어(RLC: Radio Link Control) 패킷 데이터 유닛(PDU: Packet Data Unit)을 분할하는 과정과;
    분할된 RLC PDU가 마지막 분할된 RLC PDU이면, 상기 마지막 분할된 RLC PDU에 폴링 정보를 포함시키는 과정과;
    상기 분할된 RLC PDU를 수신기에게 송신하는 과정을 포함하는 방법.
  2. 제1항에 있어서,
    상기 RLC PDU가 송신될 마지막 RLC PDU이면, 상기 RLC PDU는 폴링 정보를 포함함을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 RLC PDU에 포함된 폴링 정보와, 상기 마지막 분할된 RLC PDU에 포함된 폴링 정보가 상이함을 특징으로 하는 방법.
  4. 제2항에 있어서,
    상기 RLC PDU의 송신 이후에 연속하는 RLC PDU의 송신이 존재하지 않으면, 상기 RLC PDU가 상기 마지막 RLC PDU임을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 분할된 RLC PDU의 송신 이후에 연속하는 분할된 RLC PDU의 송신이 존재하지 않으면, 상기 분할된 RLC PDU가 상기 마지막 분할된 RLC PDU임을 특징으로 하는 데이터 송신 방법.
  6. 통신 시스템에서 송신 장치에 의해서 데이터를 송신하는 장치에 있어서,
    만약, 이용 가능한 자원들의 양이 상기 RLC PDU를 재전송하기 위해서 요구되는 자원들의 양보다 적으면, 무선 링크 제어(RLC: Radio Link Control) 패킷 데이터 유닛(PDU: Packet Data Unit)을 분할하고, 분할된 RLC PDU가 마지막 분할된 RLC PDU이면, 상기 마지막 분할된 RLC PDU에 폴링 정보를 포함시키는 제어부와;
    상기 분할된 RLC PDU를 수신기에게 송신하는 송수신부를 포함하는 장치.
  7. 제6항에 있어서,
    상기 RLC PDU가 송신될 마지막 RLC PDU이면, 상기 RLC PDU는 폴링 정보를 포함함을 특징으로 하는 장치.
  8. 제7항에 있어서,
    상기 RLC PDU에 포함된 폴링 정보와, 상기 마지막 분할된 RLC PDU에 포함된 폴링 정보가 상이함을 특징으로 하는 장치.
  9. 제7항에 있어서,
    상기 RLC PDU의 송신 이후에 연속하는 RLC PDU의 송신이 존재하지 않으면, 상기 RLC PDU가 상기 마지막 RLC PDU임을 특징으로 하는 장치.
  10. 제6항에 있어서,
    상기 분할된 RLC PDU의 송신 이후에 연속하는 분할된 RLC PDU의 송신이 존재하지 않으면, 상기 분할된 RLC PDU가 상기 마지막 분할된 RLC PDU임을 특징으로 하는 장치.
KR1020150051615A 2007-05-09 2015-04-13 2 계층 패킷 자동 재전송 방법 및 장치 KR101551147B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20070045243 2007-05-09
KR1020070045243 2007-05-09
KR1020070096982 2007-09-21
KR20070096982 2007-09-21

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020080030462A Division KR101582354B1 (ko) 2007-05-09 2008-04-01 2 계층 패킷 자동 재전송 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20150045977A true KR20150045977A (ko) 2015-04-29
KR101551147B1 KR101551147B1 (ko) 2015-09-07

Family

ID=40286693

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020080030462A KR101582354B1 (ko) 2007-05-09 2008-04-01 2 계층 패킷 자동 재전송 방법 및 장치
KR1020150051615A KR101551147B1 (ko) 2007-05-09 2015-04-13 2 계층 패킷 자동 재전송 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020080030462A KR101582354B1 (ko) 2007-05-09 2008-04-01 2 계층 패킷 자동 재전송 방법 및 장치

Country Status (1)

Country Link
KR (2) KR101582354B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101124066B1 (ko) * 2008-12-03 2012-04-12 한국전자통신연구원 왕복 지연시간이 긴 시스템에서의 arq와 harq의 상호작용 방법
KR102323799B1 (ko) 2017-07-26 2021-11-09 삼성전자 주식회사 무선 통신 시스템에서 단말, 기지국 및 이의 통신 방법
US11856451B2 (en) 2020-03-02 2023-12-26 Qualcomm Incorporated Avoiding packet data convergence protocol holes for bearer in dual connectivity mode across multiple radio access technologies
US11811671B2 (en) 2021-07-02 2023-11-07 Qualcomm Incorporated Techniques for reducing a feedback time for communications over multiple wireless connections

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2007130081A (ru) * 2005-02-07 2009-02-20 Самсунг Электроникс Ко., Лтд. (KR) Способ и устройство для запроса/передачи отчета о состоянии в системе мобильной связи

Also Published As

Publication number Publication date
KR101582354B1 (ko) 2016-01-11
KR20080099779A (ko) 2008-11-13
KR101551147B1 (ko) 2015-09-07

Similar Documents

Publication Publication Date Title
US9674832B2 (en) Method and apparatus for layer 2 ARQ for packets
US7869396B2 (en) Data transmission method and data re-transmission method
US8000256B2 (en) Method and apparatus for data transmission of radio link control layer in a mobile communication system
EP2811681B1 (en) Method for moving a receive window in a radio access network
KR100943590B1 (ko) 이동 통신 시스템에서 상태 보고의 송수신 방법 및 장치
KR20070077798A (ko) 이동통신 시스템에서 재전송 제어를 위한 상태보고의요청/전송 방법 및 장치
EP2670077A1 (en) Method and apparatus for data packet retransmission
KR101551147B1 (ko) 2 계층 패킷 자동 재전송 방법 및 장치
KR101197887B1 (ko) 이동통신 시스템에서 자동 재전송 요구를 위한 상태 보고의송수신 방법 및 장치
KR100912785B1 (ko) 상태 보고를 보고하는 방법 및 수신기
KR101201046B1 (ko) 이동통신 시스템에서 제어 메시지를 재전송하는 방법 및장치
KR101368499B1 (ko) 이동 통신 시스템에서 상태 보고 메시지를 송신하기 위한 장치 및 방법
WO2009102166A2 (ko) 이동 통신 시스템에서 우선 순위화 비트 레이트를 이용하여 데이터를 전송하는 방법 및 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180830

Year of fee payment: 4