KR20160065697A - 통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치 - Google Patents

통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치 Download PDF

Info

Publication number
KR20160065697A
KR20160065697A KR1020140170058A KR20140170058A KR20160065697A KR 20160065697 A KR20160065697 A KR 20160065697A KR 1020140170058 A KR1020140170058 A KR 1020140170058A KR 20140170058 A KR20140170058 A KR 20140170058A KR 20160065697 A KR20160065697 A KR 20160065697A
Authority
KR
South Korea
Prior art keywords
tcp
base station
proxy
data
tcp proxy
Prior art date
Application number
KR1020140170058A
Other languages
English (en)
Other versions
KR102342144B1 (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 삼성전자주식회사
Priority to KR1020140170058A priority Critical patent/KR102342144B1/ko
Priority to US15/532,459 priority patent/US10299181B2/en
Priority to CN201580075216.7A priority patent/CN107211331B/zh
Priority to PCT/KR2015/012981 priority patent/WO2016089082A1/ko
Priority to EP15864710.7A priority patent/EP3229552B1/en
Publication of KR20160065697A publication Critical patent/KR20160065697A/ko
Application granted granted Critical
Publication of KR102342144B1 publication Critical patent/KR102342144B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0273Traffic management, e.g. flow control or congestion control adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/02Buffering or recovering information during reselection ; Modification of the traffic flow during hand-off
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/08Reselecting an access point
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/148Migration or transfer of sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/02Buffering or recovering information during reselection ; Modification of the traffic flow during hand-off
    • H04W36/023Buffering or recovering information during reselection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/12Reselecting a serving backbone network switching or routing node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/12Setup of transport tunnels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/06Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/14Backbone network devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • H04W88/182Network node acting on behalf of an other network entity, e.g. proxy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0278Traffic management, e.g. flow control or congestion control using buffer status reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/0005Control or signalling for completing the hand-off
    • H04W36/0011Control or signalling for completing the hand-off for data sessions of end-to-end connection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

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

Abstract

본 발명은 통신 시스템에서 분리된 TCP 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치에 대한 것으로서, 본 발명의 실시 예에 따라 통신 시스템에서 TCP proxy가 TCP 연결을 설정하는 방법은, 기지국과 데이터 송수신을 위한 터널을 설정하는 과정과, 단말의 TCP 연결 요청에 따라, 상기 단말과 상기 TCP proxy 간의 제1 TCP 연결과 상기 TCP proxy와 IP 네트워크에서 서비스 서버 간의 제2 TCP 연결을 설정하는 과정을 포함한다.

Description

통신 시스템에서 분리된 TCP 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치{METHOD AND APPARATUS FOR ESTABLISHING SPLIT TCP CONNENTION IN A COMMUNICATION, AND HANDOVER METHOD AND APPARATUS}
본 발명은 통신 시스템에서 TCP(Transmission Control Protocol) 연결을 설정하는 방법 및 장치에 대한 것으로서, 특히 무선 접속 네트워크(Radio Access Network : RAN)을 포함하는 통신 시스템에서 TCP 연결을 설정하는 방법 및 장치에 대한 것이다.
대부분의 인터넷 서비스는 전송 프로토콜로 TCP를 사용하고 있으며, TCP는 유선 네트워크 사용을 위해 고안되었다. 그러나, LTE(Long Term Evolution) 시스템과 같은 무선 네트워크는 유선 네트워크에 비해 전송 네트워크의 품질의 변화(예컨대, , 무선 채널의 변화)가 빈번하다.
도 1은 통신 시스템에서 무선 네트워크의 단말과 유선 네트워크의 서비스 서버 사이의 일반적인 TCP 연결을 설명하기 위한 도면으로서, 도 1의 통신 시스템은 LTE 시스템을 예로 든 것이다.
도 1을 참조하면, 단말(User Equipment : UE)(110)은 인터넷 등에 연결된 서비스 제공자(servive provider)의 서비스 서버(170)로부터 컨텐츠(content) 등의 서비스를 제공 받기 위해, 서비스 서버(170)와 end-to-end로 TCP 연결을 설정한다. 상기 TCP 연결의 설정 절차에서 기지국(130)과 SAE(System Architecture Evolution) 게이트웨이(GW)(150)를 포함하는 LTE 시스템은 TCP 기반의 데이터를 전달하기 위한 통로(pipe) 역할을 한다. 상기 SAE GW(150)은 LTE 시스템에서 SGW(Serving GW)와 PDN(Packet data Network) GW를 포함한다. End-to-end 프로토콜인 TCP는 전송 제어를 TCP ACK의 수신에 의존하고 있어, LTE 시스템에서 무선 네트워크인 RAN의 무선 채널 변화를 신속하게 반영하지 못한다. 이로 인해, TCP 전송 지연 증가(예를 들어, 영상 컨텐츠의 경우 영상 초기 재생 시간 지연(video initial play time delay) 등)이 발생하며 이는 서비스를 제공 받은 사용자의 불편을 초래한다.
본 발명은 통신 시스템에서 분리된 TCP 연결(split TCP connection) 설정 방법 및 장치를 제공한다.
또한 본 발명은 통신 시스템에서 전송 지연을 줄이기 위해, RAN 기반 TCP 전송 제어를 수행하기 위한 TCP 세션 설정 방법 및 장치를 제공한다.
또한 본 발명은 상기 분리된 TCP 연결을 이용하는 통신 시스템에서 핸드 오버를 지원하는 방법 및 장치를 제공한다.
또한 본 발명은 상기 분리된 TCP 연결을 이용하는 통신 시스템에서 RAN 기반 전송 제어를 위한 업 링크/다운 링크 데이터 전달(forwarding) 방법과 그 시스템을 제안한다.
본 발명의 실시 예에 따라 통신 시스템에서 TCP(Transmission Control Protocol) proxy가 TCP 연결을 설정하는 방법은, 기지국과 데이터 송수신을 위한 터널을 설정하는 과정과, 단말의 TCP 연결 요청에 따라, 상기 단말과 상기 TCP proxy 간의 제1 TCP 연결과 상기 TCP proxy와 IP(Internet Protocol) 네트워크에서 서비스 서버 간의 제2 TCP 연결을 설정하는 과정을 포함한다.
또한 본 발명의 실시 예에 따라 통신 시스템에서 TCP 연결을 설정하는 TCP proxy 장치는, 기지국과 통신을 위한 통신 인터페이스와, 상기 기지국과 데이터 송수신을 위한 터널을 설정하고, 단말의 TCP 연결 요청에 따라, 상기 단말과 상기 TCP proxy 간의 제1 TCP 연결과 상기 TCP proxy와 IP 네트워크에서 서비스 서버 간의 제2 TCP 연결을 설정하는 동작을 제어하는 제어부를 포함한다.
또한 본 발명의 실시 예에 따라, TCP 기반의 통신 시스템에서 다운 링크 데이터를 전달(forwarding)하는 방법은, 핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 제2 TCP proxy와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하는 과정과, 상기 정보를 수신한 상기 제1 TCP proxy로부터 상기 제1 기지국에 대해 버퍼링된 제1 다운 링크 데이터를 수신하여 버퍼링하고, 상기 제2 기지국으로부터 상기 핸드 오버에 따라 스위칭된 데이터 경로를 통해 제2 다운 링크 데이터를 수신하여 버퍼링 과정을 포함한다.
또한 본 발명의 실시 예에 따라, TCP 기반의 통신 시스템에서 다운 링크 데이터를 전달(forwarding)하는 TCP proxy 장치는, 데이터 통신을 위한 통신 인터페이스와, 송수신되는 데이터를 버퍼링하기 위한 메모리와, 핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 상기 TCP proxy 장치와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하고, 상기 정보를 수신한 상기 제1 TCP proxy로부터 상기 제1 기지국에 대해 버퍼링된 제1 다운 링크 데이터를 수신하여 상기 메모리에 버퍼링하고, 상기 제2 기지국으로부터 상기 핸드 오버에 따라 스위칭된 데이터 경로를 통해 제2 다운 링크 데이터를 수신하여 상기 메모리에 버퍼링하는 동작을 제어하는 제어부를 포함한다.
또한 본 발명의 실시 예에 따라, TCP 기반의 통신 시스템에서 업 링크 데이터를 전달(forwarding)하는 방법은, 핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 제2 TCP proxy와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하는 과정과, 상기 정보를 수신한 상기 제1 TCP proxy에게, 상기 제1 TCP proxy이 전달한 제1 업 링크 데이터에 대한 확인 응답 신호를 전송하는 과정과, 상기 핸드 오버에 따른 데이터 경로 스위칭에 따라, 상기 제2 기지국으로부터 수신한 제2 업 링크 데이터를 버퍼링하고 전송 제어하여 상기 제2 기지국을 통해 IP 네트워크로 전달하는 과정을 포함한다.
또한 본 발명의 실시 예에 따라, TCP 기반의 통신 시스템에서 TCP proxy 장치는, 데이터 통신을 위한 통신 인터페이스와, 송수신되는 데이터를 버퍼링하기 위한 메모리와, 핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 상기 TCP proxy 장치와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하고, 상기 정보를 수신한 상기 제1 TCP proxy에게, 상기 제1 TCP proxy이 전달한 제1 업 링크 데이터에 대한 확인 응답 신호를 전송하며, 상기 핸드 오버에 따른 데이터 경로 스위칭에 따라, 상기 제2 기지국으로부터 수신한 제2 업 링크 데이터를 버퍼링하고 전송 제어하여 상기 제2 기지국을 통해 IP 네트워크로 전달(forwarding)하는 동작을 제어하는 제어부를 포함한다.
도 1은 통신 시스템에서 무선 네트워크의 단말과 유선 네트워크의 서비스 서버 사이의 일반적인 TCP 연결을 설명하기 위한 도면,
도 2는 본 발명의 실시 예에 따른 통신 시스템에서 분리된 TCP 연결과 상기 분리된 TCP 연결을 위해 기지국과 연결된 TCP proxy를 설명하기 위한 도면,
도 3은 본 발명의 실시 예에 따른 통신 시스템에서 TCP proxy를 위한 통신 인터페이스를 설명하기 위한 도면,
도 4는 본 발명의 실시 예에서 제안하는 베어러 기반 Proxy 터널을 설명하기 위한 도면,
도 5a 내지 도 5c는 본 발명의 실시 예에 따른 TCP proxy 준비와 TCP proxy 설정을 위한 절차를 나타낸 흐름도,
도 6은 본 발명의 실시 예에 따른 통신 시스템에서 TCP proxy 핸드 오버 시나리오의 일 예를 설명하기 위한 도면,
도 7은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1에서 DL 데이터 수신 방법을 설명하기 위한 도면,
도 8은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1에서 고속 DL 데이터 전달(fast DL data forwarding)을 이용한 DL 데이터 수신 방법을 설명하기 위한 도면,
도 9a 내지 도 9c는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1을 적용한 경우 핸드 오버 절차를 나타낸 흐름도,
도 10은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2에서 DL 데이터 수신 방법을 설명하기 위한 도면,
도 11은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2에서 고속 DL 데이터 전달(fast DL data forwarding)을 이용한 DL 데이터 수신 방법을 설명하기 위한 도면,
도 12a 내지 도 12c는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2를 적용한 경우 핸드 오버 절차를 나타낸 흐름도,
도 13은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1에서 UL 데이터 전송 방법을 설명하기 위한 도면,
도 14는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2에서 고속 UL 데이터 전달(fast UL data forwarding)을 이용한 UL 데이터 전송 방법을 설명하기 위한 도면,
도 15a 내지 도 15b는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오3을 적용한 경우 핸드 오버 절차를 나타낸 흐름도,
도 16a 및 도 16b는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오4를 적용한 경우 핸드 오버 절차를 나타낸 흐름도,
도 17은 본 발명의 실시 예에 따른 통신 시스템에서 TCP proxy, 기지국, 그리고 단말에 적용될 수 있는 장치 구성을 나타낸 블록도.
하기에서 본 발명의 실시 예들을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
이하 본 발명의 실시 예들을 구체적으로 설명함에 있어서, 본 발명의 실시 예들은 EPS(Evolved Packet System)/LTE 시스템을 주된 대상으로 할 것이지만, 본 발명은 유사한 기술적 배경을 가지는 각종 통신 시스템에 적용 가능하며, 이는 본 발명의 기술 분야에서 숙련된 기술적 지식을 가진 자의 판단으로 가능할 것이다. 따라서 하기 본 발명의 실시 예들이 LTE 시스템에서 eNB, SAE GW 등에 한정되어 동작되는 것은 아님에 유의하여야 할 것이다.
본 발명의 실시 예들에서는 LTE 시스템의 기지국 단에 연결되어 LTE 시스템의 RAN과 서비스 서버가 접속된 유선 네트워크 사이에서 분리된 TCP 연결을 설정하여 TCP 전송 제어를 수행하기 위한 TCP proxy를 제안한다. 또한 본 발명의 실시 예들에서는 상기 TCP proxy를 기준으로 분리된 TCP 연결에 대해 RAN 기반 TCP 전송 제어를 수행하기 위한 방법과 이를 위한 시스템 구조를 제안한다.
또한 본 발명의 실시 예들에서는 무선 네트워크의 단말과 유선 네트워크의 서비스 서버 사이의 TCP 연결을 단말과 TCP proxy 사이의 제1 TCP 연결과 TCP proxy와 서비스 서버 사이의 제2 TCP 연결로 분리하기 위한 방안을 제안한다. 또한 본 발명의 실시 예들에서는 LTE 시스템에서 게이트웨이 -> 기지국 -> 단말 또는 단말 -> 기지국 -> 게이트웨이로 전달되는 LTE 시스템의 데이터 전송 경로에서 단말의 데이터를 상기 TCP proxy로 전달(forward)하기 위한 방안을 제안한다.
이하 본 발명의 실시 예들은 먼저 기지국 단에 도입된 TCP proxy를 통해 단말과 TCP proxy 간의 제1 TCP 연결과, TCP proxy와 서비스 서버 간의 제2 TCP 연결로 상기 분리된 TCP 연결(즉 TCP 세션)을 설정하는 방법과 이를 위한 통신 시스템의 구성을 설명하고, 상기 분리된 TCP 연결을 이용하는 통신 시스템에서 단말의 핸드 오버 시 RAN 기반 전송 제어를 위해 업 링크/다운 링크 데이터 전달(forwarding) 방법과 그 시스템 구성을 설명하기로 한다.
도 2는 본 발명의 실시 예에 따른 통신 시스템에서 분리된 TCP 연결과 상기 분리된 TCP 연결을 위해 기지국과 연결된 TCP proxy를 설명하기 위한 도면으로서, 도 2의 시스템은 단말(210), 기지국(230), 도시되지 않은 SGW와 PGW(PDN GW)를 포함하는 SAE GW(250)을 포함하는 LTE 시스템과, 상기 LTE 시스템의 SAE GW(250)를 통해 단말(210)과 TCP 기반의 데이터를 송수신하는 인터넷 등의 IP 기반 네트워크의 서비스 서버(270), 그리고 기지국(230)과 연결되어 RAN 내의 단말(210)과의 제1 TCP 연결(21)과, 유선 네트워크 내의 서비스 서버(270) 와의 제2 TCP 연결(23)로 분리된 TCP 연결(즉 TCP 세션)의 설정을 제어하는 TCP proxy(290)를 포함한다. 그리고 상기 TCP proxy(290)는 기지국(290)과 분리된 네트워크 엔터티(예컨대, 서버)로 구현될 수 있다. 다른 실시 예로 상기 TCP proxy(290)는 상기 기지국(290) 내에 포함되도록 구현하는 것도 가능하다.
도 2를 참조하면, TCP proxy(290)는 기지국(230)과 통신 인터페이스로 연결된다. 상기 통신 인터페이스는 LTE 시스템에서 공지된 통신 인터페이스를 이용하거나 별도의 통신 인터페이스를 이용하는 것도 가능하다. 단말(210)과 서비스 서버(270) 사이의 TCP 연결은 단말(210)과 TCP proxy(290) 사이의 제1 연결(21)과, TCP proxy(290)와 서비스 서버(270) 사이의 제2 연결(23)로 분리되어 설정된다(establish). 이하 본 명세서에서 UE TCP 연결(또는 UE TCP 세션)은 상기 제1 연결(21), proxy TCP 연결(또는 proxy TCP 세션)은 상기 제2 연결(23)을 의미하는 것으로 이해하기로 한다. TCP proxy(290)는 proxy TCP 연결을 통해 서비스 서버(270)로부터 단말(210)로 전송되는 데이터를 전달 받으며, UE TCP 연결에 대해 RAN의 채널 환경 변화를 근거로 RAN 기반 전송 제어를 수행할 수 있다. 여기서 상기 RAN의 채널 환경 변화를 나타내는 정보(이하, RAN 정보)는 기지국(230)으로부터 TCP proxy(290)로 제공될 수 있다.
예를 들어 본 발명의 실시 예들에서 무선 채널 변화에 기반한 RAN 기반 전송 제어를 위해 TCP proxy는 단말을 서비스하는 기지국으로부터 무선 채널 관련 정보를 획득할 수 있다. 이를 기반으로 TCP proxy는 UE TCP 세션에 대해 채널 상태를 반영한 RAN 기반 전송 제어를 수행할 수 있다. 그리고 TCP proxy는 원하는 전송 지연을 기준으로 기지국에 데이터를 송신하여 기지국이 단말의 버퍼 크기를 일정하게 유지하도록 하여 전송 지연을 줄일 수 있다. 그리고 상기 채널 상태는 버퍼 크기에 반영될 수 있다.
도 3은 본 발명의 실시 예에 따른 통신 시스템에서 TCP proxy를 위한 통신 인터페이스를 설명하기 위한 도면이다.
도 3을 참조하면, 참조 번호 31은 기지국(230)과 TCP proxy(290) 간의 데이터 송수신을 위한 통신 인터페이스(이하, Xt 인터페이스)로서, 이는 LTE 시스템에서 기지국들 간에 통신을 위한 X2 인터페이스를 이용하거나 또는 새로운 통신 인터페이스를 구성하여 이용할 수도 있다. 상기 Xt 인터페이스(31)는 상기 RAN 정보를 TCP proxy(290)에게 전달하는 기능, 기지국(230)과 TCP proxy(290) 사이의 proxy 터널(tunnel)을 설정하는 기능, 서비스 서버(270)로부터 단말(210)로 향하는 다운 링크(DL) 데이터를 TCP proxy(290)로 전달하는 기능, 단말(210)로부터 수신한 업 링크(UL) 데이터를 TCP proxy(290)로 전달하는 기능 중 적어도 하나의 기능을 수행할 수 있다. 도 3에 도시되지는 않았으나 복수의 기지국들이 하나의 TCP proxy(290)와 연결될 수 있으며, 하나의 기지국(230)이 하나의 TCP proxy(290)와 연결되어 있을 수도 있다. 또한 TCP proxy(290)는 다른 TCP proxy와 연결되어 통신을 수행할 수 있으며, 이 경우 TCP proxy들 간의 통신을 위한 인터페이스를 정의할 수 있다. 상기 TCP proxy들 간의 통신을 위한 인터페이스를 이하 Xp 인터페이스라 칭하기로 하며, 상기 Xp 인터페이스는 후술할 핸드 오버에 대한 실시 예들에서 설명하기로 한다. 그리고 도 3의 SGW(250a)와 PGW(250b)는 도 2에서 SAE GW(250)에 포함되는 serving GW와 PDN GW를 나타낸 것이다.
< 분리된 TCP 연결 설정 >
이하 본 발명의 실시 예들에서 TCP proxy(290)의 TCP 연결 설정 절차를 크게 아래 1) 내지 4)의 절차들로 구분하여 설명하기로 한다.
1) TCP proxy 준비(preparation)
2) TCP proxy 설정(establishment)
3) TCP proxy 종료(teardown)
4) TCP proxy 수정(modification)
TCP proxy 준비(preparation)
TCP proxy 준비 절차는 단말(210)로부터 서비스 서버(270)로 향하는 UL 데이터 또는 서비스 서버(270)로부터 단말(210)로 향하는 DL 데이터를 TCP proxy(290)로 전달하기 위한 통로(즉 터널)를 설정하는 절차로서, 상기 터널은 기지국(230)과 TCP proxy(290) 간의 베어러(bearer) 정보를 기반으로 생성될 수 있다.
통상적인 LTE 시스템의 경우, 단말이 생성한 UL 데이터는 기지국, SGW, PGW를 거쳐 인터넷으로 전달되고, 단말로 향하는 DL 데이터는 PGW, SGW, 기지국을 거쳐 단말로 전달된다. 본 발명의 실시 예에서 제안하는 TCP proxy(290)의 경우, 기지국(230)이 UL 데이터 또는 DL 데이터를 TCP proxy(290)로 전달해야 TCP 연결의 분리 및 RAN 기반 전송 제어가 가능하다. 즉 LTE 시스템에서는 PGW 만이 IP를 구별할 수 있으며, 기지국은 IP를 구별할 수 없으므로, 본 발명의 실시 예에서는 IP를 구별할 수 없는 기지국(230)이 IP를 구별할 수 있는 TCP proxy(290)로 IP 기반의 데이터인 UL 데이터 또는 DL 데이터를 전달한다. 이를 위해 기지국(230)이 단말(210)로부터 수신한 데이터를 TCP proxy(290)에 전달하기 위해, 베어러(bearer) 기반 proxy 터널(tunnel)을 제안한다.
도 4는 본 발명의 실시 예에서 제안하는 베어러 기반 Proxy 터널을 설명하기 위한 도면이다.
도 4를 참조하면, 상기 proxy 터널은 기지국(230)이 무선 베어러(45)를 통해 단말(210)로부터 수신한 UL 데이터를 TCP proxy(290)로 전달하고, TCP proxy(290)로부터 전송 제어된 UL 데이터를 기지국(230)으로 다시 전달하기 위한 UL 터널(41)과, 기지국(230)이 서비스 서버(270)로부터 SGW(250a)를 경유하여 EPC 베어러(47)를 통해 수신한 DL 데이터를 TCP proxy(290)로 전달하고, TCP proxy(290)로부터 전송 제어된 DL 데이터를 기지국(230)으로 다시 전달하기 위한 DL 터널(43)을 포함한다.
한편 본 발명의 실시 예에서 기지국(230)은 서비스 서버(270)로부터 전달되는 IP 기반의 데이터를 TCP proxy(290)에게 전달하기 위해, 단말(210)과 송수신하는 여러 종류의 데이터 중에서 상기 IP 데이터를 구분해야 한다. 그러나 기지국(230)은 IP를 인지하지 못하므로, 기존 IP 데이터 구분 방식은 본 발명의 TCP proxy구조에 적용될 수 없다. 이를 위해 본 발명의 실시 예에서는 IP 데이터만을 TCP proxy(290)로 전달하기 위해 기지국(230)이 APN(Access Point Name) 기반으로 데이터의 종류를 구분하고, 베어러 단위로 TCP proxy(290)에 IP 데이터를 전달하는 방법을 제안한다. 예를 들어, VoLTE(Voice over LTE) 호 연결은 IMS(IP Multimedia Subsystem) APN을 이용하며, 인터넷 연결은 Internet APN을 이용할 수 있다. 기지국(230)은 Internet APN으로 연결된 베어러를 전송 제어의 대상으로 구분하고, 상기 Internet APN을 이용한 데이터를 TCP proxy(290)에 전달한다. 본 발명의 실시 예에서는 APN을 예로 들어 설명하였으나, 다른 실시 예로 기지국(230)은 IP 데이터 구분을 위해 APN 뿐 아니라, 기지국 내에 저장/유지/관리되고 있는 QCI(QoS class identifier), ARP(Allocation and Retention Priority)등 베어러에 관련된 다른 변수들도 사용할 수 있다.
또 다른 실시 예로, 본 발명의 실시 예에서 제안하는 분리된 TCP 연결(세션) 기술은 IP 데이터 중 특정 도메인 또는 특정 서비스 서버와 송수신하는 데이터에만 선택적으로 적용될 수도 있다. 이를 위해 아래와 같은 a), b)의 방안을 제안한다.
a) TCP proxy(290)가 TCP 연결(세션) 분리 여부를 결정함
기지국(230)이 상기와 같이 APN 기반으로 IP 데이터를 TCP proxy(290)에게 전달하면, TCP proxy(290)는 TCP proxy(290) 내에 저장/유지하는 TCP proxy policy에 따라 TCP proxy 적용 여부를 결정할 수 있다. 상기 policy는 서비스 서버의 위치 또는 사업자와 서버 업체와의 계약 등을 기반으로 사업자가 설정할 수 있는 정보로, TCP 연결(세션) 분리를 수행하거나 수행하지 않을 도메인 정보 등이 될 수 있다. 상기 도메인 정보는 도메인 리스트 또는 서버 주소 리스트 등을 포함할 수 있다.
단말(210)로부터의 TCP 연결 요청(예컨대, TCP SYN 메시지)을 전달받은 TCP proxy(290)는 상기 TCP proxy policy를 확인하고, TCP proxy 적용이 허용된 연결에 대해서는 TCP 연결(세션) 분리를 수행하고, 그렇지 않은 경우 TCP 연결(세션) 분리를 수행하지 않고 해당 IP 데이터를 그대로 사업자 서버에 전달한다. 이 경우, TCP proxy(290)는 단순히 데이터 전송 경로로 동작하며, 추가 작업은 수행하지 않는다.
b) 기지국(230)이 TCP 연결(세션) 분리 여부를 결정함
기지국(230)이 단말(210)로부터 IP 데이터를 수신하면, 기지국(230)은 그 기지국(230)내에 저장/유지하는 TCP proxy policy에 따라 TCP proxy 적용 여부를 결정할 수 있다. TCP proxy 적용이 허용된 연결에 대해서는 기지국(230)은 해당 IP 데이터를 TCP proxy(290)에게 전달하고, 그렇지 않은 경우 해당 IP 데이터를 SGW에게 전달한다. 이를 위해, 기지국(230)은 데이터 패킷 마다 IP를 파악한다.
상기한 다양한 실시 예들이 가능하지만, 편의상 하기 설명될 실시 예들은 기지국(230)이 IP 데이터를 TCP proxy(290)에게 전달하고, TCP proxy(290)가 TCP 연결(세션)을 분리하는 경우에 대해 설명하기로 한다.
도 4의 실시 예에서 기지국(230)은 무선 베어러(45)를 UL 터널(41)과 매핑하고, EPC 베어러(47)를 DL 터널(43)과 매핑한다. 기지국(230)은 상기 proxy 터널(41, 43)을 통해, IP 기반의 UL데이터/DL 데이터를 TCP proxy(290)와 송수신할 수 있다. 본 실시 예에서는 상기 proxy 터널이 UL 터널과 DL 터널을 포함하는 구성으로 설명하였으나, 다른 실시 예로 상기 proxy 터널을 하나의 터널로 구성하고, 그 하나의 터널을 통해 IP 기반의 UL데이터/DL 데이터를 송수신하는 것도 가능하다.
아래 <표 1>은 도 4에서 설명한 proxy 터널의 설정 및 관리를 위한 매핑 테이블(mapping table)(이하, proxy 매핑 테이블)의 일 예를 나타낸 것으로서, <표 1>의 매핑 테이블은 기지국(230)에 저장된다.
UE Bearer UL_proxy DL_proxy TCP Proxy
UE id Radio Bearer id EPC bearer id UL id DL id TCP Proxy id
상기 <표 1>에서 UE id는 단말의 식별자(identity)로, LTE 시스템에서는 예를 들어 GUTI(Globally Unique Temporary Identifier)를 사용할 수 있다. 단말(210)이 IP 데이터 송수신을 위해, Internet APN의 default bearer 만을 사용하고 있다고 가정하면, <표 1>에서 Radio bearer id는 단말(210)와 기지국(230) 사이의 Internet APN의 default EPC bearer에 할당된 radio bearer의 식별자이다. <표 1>에서 EPC bearer id는 Internet APN의 default EPC bearer의 식별자이다. 그리고 <표 1>에서 UL id는 기지국(230)과 TCP proxy(290) 사이의 UL 터널(41)을 나타내도록 TCP proxy(290)에서 식별되는 식별자로, TCP proxy(290)내에서 유일(unique)하다. 즉, 기지국(230)은 단말(210)로부터 수신한 IP 기반의 UL 데이터를 상기 UL id로 구별되는 UL 터널(41)을 통해 TCP proxy(290)에게 전송한다.
상기 <표 1>에서 DL id는 기지국(230)과 TCP proxy(290) 사이의 DL 터널(43)을 나타내도록 TCP proxy(290)에서 식별되는 식별자로, TCP proxy(290) 내에서 유일하다. 즉, 기지국(230)은 서비스 서버(270)로부터 SGW(250a)를 경유하여 수신한 IP 기반의 DL 데이터를 상기 DL id로 구별되는 DL 터널(43)을 통해 TCP proxy(290)에게 전송한다. 그리고 TCP proxy id는 기지국(230)과 연결되어 있는 TCP proxy(290)의 식별자이다.
아래 <표 2>는 proxy 터널의 설정 및 관리를 위해 TCP proxy(290)에 저장되는 매핑 테이블(이하, 기지국 매핑 테이블)의 일 예를 나타낸 것이다.
UE UL_eNB DL_eNB eNB TCP session(s)
UE id UL id DL id eNB id TCP session info.
상기 <표 2>에서 UE id는 단말의 식별자로, LTE 시스템에서는 GUTI 를 사용할 수 있다. UL id는 기지국(230)과 TCP proxy(290) 사이의 UL 터널(41)을 나타내도록 기지국(230)에서 식별되는 식별자로, 기지국(230) 내에서 유일하다. 즉, TCP proxy(290)는 기지국(230)으로부터 수신한, 단말(210)이 서비스 서버(270)로 전송하는, IP 기반의 UL 데이터를 전송 제어한 후, 상기 UL id로 식별되는 UL 터널(41)을 통해 기지국(230)에게 전송한다.
상기 <표 2>에서 DL id는 기지국(230)과 TCP proxy(290) 사이의 DL 터널(43)을 나타내도록 기지국에서 식별되는 식별자로, 기지국(230) 내에서 유일하다. 즉, TCP proxy(290)는 기지국(230)으로부터 수신한, 서비스 서버(270)가 단말에게 전송하는, IP 기반의 DL 데이터를 전송 제어한 후, 상기 DL id로 식별되는 DL 터널(43)을 통해 기지국(230)에게 전송한다.
상기 <표 2>에서 eNB id는 TCP proxy(290)와 연결되어 단말(210)의 IP 데이터를 송수신하는 기지국(230)의 식별자이다. TCP 세션 정보(session info.)는 TCP proxy(290)가 단말(210)을 위해 관리하고 있는 분리된 TCP 연결에 대한 정보이다. 상기 TCP 세션 정보는 TCP 세션에 관한 5 tuple (source IP, destination IP, source port, destination port, protocol) 정보, TCP state 정보(예를 들어, TCP proxy(290)가 전송한 IP 데이터 양 등, sequence number) 등을 예로 들 수 있다.
TCP proxy 설정(establishment)
TCP proxy 설정 절차는 단말(210)의 TCP 연결 생성 요청 시, TCP proxy(290)가 TCP 연결을 상기한 UE TCP 연결과 proxy TCP 연결로 분리하는 절차다. 단말(210)이 기지국(230)으로 TCP 연결을 생성하는 요청을 보내면, 기지국(230)은 상기 요청을 TCP proxy(290)에 전달한다. TCP proxy(290)는 기지국(230)으로부터 수신한 데이터 중에서 TCP 연결 설정을 요청하는 메시지(이하, TCP SYN 메시지)를 검출하고, 단말(210)로부터 서비스 서버(270)로의 TCP 연결을 분리한다. 상기 TCP 연결(connection)은 TCP 세션(session)으로 불리기도 한다. 이하, TCP 연결은 TCP 세션으로 기술하기로 한다.
도 5a 내지 도 5c는 본 발명의 실시 예에 따른 TCP proxy 준비와 TCP proxy 설정을 위한 절차를 나타낸 흐름도로서, 도 5a 내지 도 5c의 실시 예는 LTE 시스템에 접속(Attach)한 단말(210)이 예를 들어, 인터넷 어플리케이션(비디오 스트리밍 어플리케이션 등)을 실행하여, 서비스 서버(270)에 TCP 세션 생성을 요청하는 경우, TCP proxy(290)가 상기 TCP 세션을 UE TCP 세션과 proxy TCP 세션으로 분리하여, 분리된 TCP 세션을 설정하는 절차를 나타낸 것이다.
먼저 501 단계에서 단말(210)의 Attach 절차 완료 후 또는 Attach 절차 중에 기지국(230)은 Xt 인터페이스를 통해 TCP proxy(290)와 TCP 준비 절차를 수행한다.
도 5a 내지 도 5c에서 503 단계 내지 513 단계는 TCP 준비 절차는 나타낸 것이, 519 단계 내지 563 단계는 TCP proxy 설정 절차를 나타낸 것이다. 그리고 515 단계와 517 단계는 각각 상기 501 단계의 Attach 절차에 따라 생성되는 무선 베어러와 EPC 베어러를 나타낸 것이다.
먼저 TCP 준비 절차를 설명하면, 503 단계에서 기지국(230)은 단말(210)이 접속 요청을 수행하는 경우, 자신이 관리하고 있는 proxy 매핑 테이블에 단말(210)에 대한 정보가 있는지 확인하고, 관련 정보가 없는 경우 단말(210)에 대한 entry를 생성하여 proxy 매핑 테이블을 업데이트한다. 505 단계에서 기지국(230)은 TCP proxy(290)에게 Xt table update request(cause=Attach, UE id, eNB UL id, eNB DL id, eNB id 포함)를 전송한다. 상기 Xt table update request 메시지는 기지국(230)이 도 4에서 설명한 proxy tunnel 관련 정보를 업데이트(생성, 변경, 삭제 등)를 하기 위해 TCP proxy(290)에게 전송하는 메시지이다. 상기 cause는 상기 update request 메시지가 어떤 이벤트로 인해 발생 되었는지를 나타낸다. 상기 cause는 Attach, Handover 등을 예로 들 수 있다. 상기 cause는 각 이벤트에 대해 정해진 값으로 나타낼 수 있으며, TCP proxy(290)는 기지국(210)으로부터 상기 cause의 값을 수신하여 기지국 매핑 테이블의 생성, 변경, 또는 삭제를 결정할 수 있다. 상기 Xt table update request 메시지에서 UE id, eNB UL id, eNB DL id, eNB id는 상기 <표 1>, <표 2>에서 설명한 바와 같다.
이후 507 단계에서 TCP proxy(290)는 상기 Xt table update request로부터 수신한 정보를 기반으로 기지국 매핑 테이블에 해당 단말(210)의 entry를 추가하여 기지국 매핑 테이블을 업데이트한다. 509 단계에서 TCP proxy(290)는 단말(210)을 위한 버퍼를 생성한다. 상기 버퍼는 RAN 기반 전송 제어를 적용 받는 IP 데이터를 버퍼링하는 버퍼이다. 511 단계에서 TCP proxy(290)는 기지국(230)에게 상기 Xt table update request에 대한 응답으로 Xt table update response(UE id, proxy UL id, proxy DL id, TCP proxy id 포함)를 보낸다. 상기 UE id, proxy UL id, proxy DL id, TCP proxy id는 상기 <표 1>, <표 2>에서 설명한 바와 같다. 513 단계에서 기지국(230)은 상기 Xt table update response로부터 수신된 정보를 기반으로 해당 단말(210)의 entry를 추가하는 proxy 매핑 테이블 업데이트를 완료한다.
다음으로 TCP proxy 설정 절차를 설명하면, 상기 501 단계의 Attach 절차를 통해 515, 517 단계와 같이 무선 베어러와 EPC 베어러가 생성되며, 단말(210)의 어플리케이션 실행으로 생성된 IP 데이터는 상기 베어러들을 통하여 송수신된다. 이 후, 설명하는 절차는 모두 상기 베어러들을 통해 전달되는 어플리케이션 레벨의 데이터임을 가정한다. 상기 어플리케이션 레벨의 데이터는 Internet APN의 default bearer로 송수신되는 TCP 데이터를 예로 들 수 있다. 그리고 상기 515, 517 단계는 TCP 준비 절차 이후에 도시되어 있으나, 이는 설명의 편의상 도시한 것이며, 상기 베어러들은 상기 Attach 절차 이후 생성되는 것이므로 상기 515, 517 단계의 실행 시점은 도 5a의 예와 다를 수 있다.
도 5a의 519 단계에서 단말(210)이 특정 어플리케이션을 실행하여, 서비스 서버(270)로 향하는 TCP 세션 생성 요청이 발생된 경우, 521 단계에서 단말(210)은 서비스 서버(270)와 TCP 세션을 설정하기 위해, TCP 연결 설정을 요청하는 메시지인 UE TCP 세션을 위한 TCP SYN 메시지를 기지국(230)으로 전송한다. 523 단계에서 상기 UE TCP 세션을 위한 TCP SYN 메시지를 수신한 기지국(230)은 도 4에서 proxy 터널의 설정 및 관리를 위한 proxy 매핑 테이블을 확인하고, 525 단계에서 단말(210)로부터 수신한 IP 데이터를 UL 터널(41)을 통해, TCP proxy(290)에게 전달한다. 이후 527 단계에서 TCP proxy(290)는 상기 proxy 터널의 설정 및 관리를 위한 기지국 매핑 테이블을 확인하고, 529 단계에서 상기 수신한 IP 데이터로부터 단말(210)로부터 전송된 TCP SYN 메시지를 검출한다.
이후 531 단계에서 TCP proxy(290)는 TCP 세션 분리를 위해(즉 proxy TCP 세션을 설정하기 위해), 상기 TCP 세션 설정 요청에 대한 정보를 저장하고, 서비스 서버(270)와 기지국(230)에게 상기 proxy TCP 세션을 위한 TCP SYN 메시지를 전송한다. 533, 535 단계에서 상기 proxy TCP 세션을 위한 TCP SYN 메시지는 기지국(230)으로부터 SAE GW(250)를 통해 서비스 서버(270)에게 전달된다. 이때 TCP SYN 메시지의 전달은 general IP routing으로 가능하다. 한편 상기한 과정에 따라 서비스 서버(270)에게 전달되는 TCP SYN 메시지는 소스 IP로 단말(210)의 IP를 사용한다. 이후 537, 539 단계에서 상기 proxy TCP 세션을 위한 TCP SYN 메시지에 대한 확인 응답으로 전송되는 TCP SYN/ACK 메시지는 SAE GW(250)를 통해 기지국(230)에게 전달된다.
그러면 541 단계에서 기지국(230)은 상기 수신한 TCP SYN/ACK 메시지를 DL 터널(43)을 통해 TCP proxy(290)에게 전달하고, 543 단계에서 TCP proxy(290)는 수신한 TCP SYN/ACK의 정보를 저장하고, 기지국(230)에게 UE TCP 세션을 위해 상기 수신한 TCP SYN/ACK을 DL 터널(43)을 통해 전달한다.
이후 545, 547 단계에서 기지국(230)은 단말(210)에게 UE TCP 세션을 위해 상기 수신한 TCP SYN/ACK을 전달하고, 단말(210)로부터 UE TCP 세션에 대한 TCP ACK를 수신하여, UL 터널(41)을 통해 TCP proxy(290)에게 전달한다. 그러면 상기 TCP ACK를 수신한 TCP proxy(290)는 551 단계에서 UE TCP 세션을 설정한다. 그리고 553, 555 단계에서 TCP proxy(290)는 Proxy TCP 세션을 위한 TCP ACK를 기지국(230)으로 전달하고, 555 단계에서 UE TCP 세션을 설정한다. 이후 557, 559 단계에서 상기 TCP ACK를 수신한 기지국(230)으로부터 Proxy TCP 세션을 위한 TCP ACK가 SAE GW(250)를 통해 서비스 서버(270)으로 전달된다.
상기한 절차를 통해, 분리된 TCP 세션인 UE TCP 세션과 Proxy TCP 세션이 설정되고, 561, 563 단계에서 단말(210)과 서비스 서버(270) 간의 송수신되는 UL/DL 데이터는 상기 설정된 UE TCP 세션과 Proxy TCP 세션을 통해 TCP proxy(290)에 의해 전송 제어된다. 이때 상기 TCP proxy(290)는 RAN의 채널 환경 변화를 근거로 RAN 기반 전송 제어를 수행할 수 있다.
TCP proxy 종료(teardown)
TCP proxy 종료 절차는 특정한 상황으로 인해, TCP proxy(290)가 분리된 TCP 세션을 종료하는 절차다. TCP proxy(290)는 TCP FIN(Finish) 데이터를 생성하여 단말(210)과 서비스 서버(270)에 전송함으로써 분리된 TCP 세션을 종료한다. 이 절차는 예를 들어 단말(210)이 TCP proxy(290)와 연결이 없는 legacy 기지국으로 핸드오버 한 경우 또는 TCP proxy(290)에 부하가 걸린 경우에 수행될 수 있다.
TCP proxy 수정(modification)
기지국(230)과 TCP proxy(290)가 유지하는 proxy 매핑 테이블과 기지국 매핑 테이블은 매핑 테이블 내의 정보를 변경해야 하는 이벤트가 발생한 경우, 매핑 테이블을 업데이트 한다. 예를 들어, 단말(210)이 핸드 오버를 하는 경우, 단말(210)의 IP 데이터를 전송하는 기지국이 변경되며, 이 정보를 매핑 테이블에 반영해야 한다. 이 절차를 TCP proxy 수정 절차라 한다. 본 발명의 실시 예에서는 TCP proxy 수정 절차를 핸드 오버의 경우를 예로 들어 설명한다. 그러나, TCP proxy 수정 절차는 상기 핸드 오버 이외의 상황에도 수행될 수 있다.
< 핸드 오버 >
TCP proxy(290)는 실제 망에 구현될 때, 기존 legacy 기지국과 혼재할 수 있으며, 복수의 기지국들이 동일한 TCP proxy(290)에 연결되어 있거나, TCP proxy(290)가 하나의 기지국에 연결되어 있을 수 있다. 본 발명의 실시 예에 따라 TCP proxy 구조에서 단말(210)이 이동하는 경우, 다양한 경우의 핸드오버 시나리오가 발생할 수 있다.
도 6은 본 발명의 실시 예에 따른 통신 시스템에서 TCP proxy 핸드 오버 시나리오의 다양한 예들을 설명하기 위한 도면이다.
도 6에서 참조 번호 601은 소스 기지국(230-1)과 타겟 기지국(230-2)이 동일한 TCP proxy(290-1)에 연결되어 있는 경우의 TCP proxy 핸드 오버 시나리오(이하, 시나리오 1)를 예시한 것이고, 603은 소스 기지국(230-2)과 타겟 기지국(230-3)이 서로 다른 TCP proxy들(290-1, 290-2)에 연결되어 있는 경우의 TCP proxy 핸드 오버 시나리오(이하, 시나리오 2)를 예시한 것이며, 605는 소스 기지국(230-3)은 TCP proxy(290-2)와 연결되어 있으나, 타겟 기지국(230-4)이 TCP proxy와 연결되지 않은 legacy 기지국인 경우의 TCP proxy 핸드 오버 시나리오(이하, 시나리오 3)를 예시한 것이고, 607은 소스 기지국(230-4)은 TCP proxy와 연결되지 않은 legacy 기지국이고, 타겟 기지국(230-5)은 TCP proxy(290-3)와 연결되어 있는 경우의 TCP proxy 핸드 오버 시나리오(이하, 시나리오 4)를 예시한 것이다. 이하 도 6의 TCP proxy 핸드 오버 시나리오의 상기한 예들을 보다 구체적으로 설명하기로 한다.
시나리오 1) 소스 기지국과 타겟 기지국이 동일한 TCP proxy에 연결되어 있는 경우,
도 6을 참조하면, 시나리오1에서 TCP proxy1(290-1)은 eNB1(230-1)을 통해 단말(210)과 UE TCP 세션이 설정되어 있으며, 서비스 서버(270)와 proxy TCP 세션이 설정되어 있음을 가정한다. 이때 단말(210)이 eNB2(230-1)의 coverage로 이동하는 경우, TCP proxy1(290-1)는 단말(210)의 분리된 TCP 세션을 통해 전송되는 데이터를 eNB2(230-2)로부터 전달 받아야 한다. 이를 위해 본 발명의 실시 예에서는 핸드오버 절차 중에 proxy tunnel 의 업데이트, 즉 기지국 매핑 테이블 및 proxy 매핑 테이블 업데이트를 수행한다.
또한 단말(210)의 핸드오버 절차 중, TCP proxy1(290-1)는 소스 기지국인 eNB1(230-1)뿐만 아니라, 타겟 기지국인 eNB2(230-2)로부터 DL 데이터를 수신하게 된다. TCP proxy1(290-1)는 복수의 기지국들(230-1, 230-2)로부터 TCP proxy1(290-1) 내 구비된 하나의 단말 버퍼로 동시에 임의로 단말(210)의 DL 데이터를 전달 받는 경우, TCP 전송 순서(ordering) 문제가 발생할 수 있다. 이를 해결하기 위해, TCP proxy1(290-1)는 핸드 오버 절차 동안 소스 기지국을 위한 단말 버퍼와 타겟 기지국을 위한 단말 버퍼를 각각 유지한다. 즉 TCP proxy1(290-1)는 단말(210)을 위해 기지국 별로 복수의 버퍼들을 유지하여 상기한 TCP 전송 순서 문제를 해결 할 수 있다. 또한 단말(210)이 핸드 오버에 의해 타겟 기지국(230-2)으로부터 서비스를 받고 있음에도 불구하고, 상기 핸드 오버에 따른, 소스 기지국(230-1)으로부터 타겟 기지국(230-2)으로의, data forwarding으로 인해 소스 기지국(230-1)의 RAN 상태에 기반한 전송 제어를 받는 구간이 존재한다.
LTE 시스템에서 핸드 오버 절차 중 data forwarding이 되는 절차를 간단히 설명하면, SGW(250a)는 단말(210)의 DL 데이터를 소스 기지국(230-1)으로 전송한다. SGW(250a)는 타겟 기지국(230-2)으로부터 데이터 경로 변경 요청을 받으면, 데이터 경로를 변경한 후 소스 기지국(230-1)에게 더 이상 DL 데이터가 전송되지 않을 것을 알리는 이른바 종료 마크(end marker)을 보낸다. 그리고 SGW(250a)는 데이터 경로를 타겟 기지국(230-2)으로 변경한 순간부터 타겟 기지국(230-2)으로 단말(210)의 DL 데이터를 전송한다.
본 발명의 실시 예에서 소스 기지국(230-1)은 SGW(250a)로부터 수신한 DL 데이터를 타겟 기지국(250-2)에게 모두 전송한 후, 상기 end marker를 타겟 기지국(230-2)에게 전달한다. 그러면 타겟 기지국(250-2)은 상기 end marker로 인해 더 이상 소스 기지국(230-1)으로부터 수신할 DL 데이터가 없음을 파악할 수 있다. 이를 통해 타겟 기지국(230-2)은 소스 기지국(230-1)으로부터 전달된 DL 데이터를 단말(210)에게 전달 완료한 후, SGW(250a)로부터 직접 수신한 DL 데이터를 단말(210)에게 전송하여 TCP 데이터 전송의 ordering은 안정적으로 수행될 수 있다.
도 7은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1에서 DL 데이터 수신 방법을 설명하기 위한 도면이다.
도 7을 참조하면, TCP proxy1(290-1)은 eNB1(230-1)을 통해 단말(210)의 IP 데이터를 수신하여 eNB1(230-1)에 대한 단말 버퍼(eNB1 UE buffer)(b1)에 버퍼링한다. SGW(250a)는 eNB2(230-2)의 요청에 기반하여 path switch를 수행한 후, eNB1(230-1)에게 종료 마크(end marker)를 보낸다. 이후 SGW(250a)는 eNB2(230-2)에게 DL 데이터를 전송하고, eNB2(230-2)는 proxy tunnel 업데이트 절차를 통해, 수신한 DL 데이터를 TCP proxy1(290-1)에게 전달한다. TCP proxy1(290-1)은 eNB2(230-2)를 통해 수신한 단말(210)의 DL 데이터를 새로 생성한 eNB2(230-2)에 대한 단말 버퍼(eNB2 UE buffer)(b2)를 통해 버퍼링한다.
구체적으로 설명하면, 701 단계에 eNB1(230-1)은 SGW(250a)으로부터 종료 마크(end marker)를 수신하면 더 이상 DL 데이터를 수신하지 않는다. 그러나 eNB1(230-1)이 TCP proxy1(290-1)으로 단말(210)의 IP 데이터를 전달하고 있으므로, 상기 종료 마크(end marker)를 수신한 후에도 TCP proxy1(290-1)의 전송 제어를 받은 단말(210)의 DL 데이터를 수신하게 된다. 703, 705 단계에서 eNB1(230-1)은 TCP proxy1(290-1)로부터 수신한 DL 데이터를 eNB2(230-2)로 전달한다. 상기한 과정을 통해 전달되는 DL 데이터는 TCP proxy1(290-1)로부터 eNB1/RAN 기반 전송 제어를 받는다.
이후 707 단계에서 eNB1(230-1)은 TCP proxy1(290-1)로부터 데이터 전송이 완료되면 eNB2(230-2)에게 종료 마크(end marker)를 전달한다. 그러면 709 단계에서 eNB2(230-2)는 eNB1(230-1)로부터 전달받은 DL 데이터를 단말(210)에게 모두 전송 후, TCP proxy1(290-1)로부터 전달받은 DL 데이터를 단말(210)에게 전송한다. 이때 TCP proxy1(290-1)이 eNB2(230-2)로 전달하는 DL 데이터는 eNB2/RAN 기반 전송제어를 받는 데이터이다.
LTE 시스템의 핸드오버 절차에서 단말은 SGW의 path switch 절차 전에 타겟 기지국으로 핸드오버를 완료한다. 다시 말하면, 단말(210)은 상기 701 단계 전에 이미 eNB2(230-2)로 핸드 오버를 완료했음에도 불구하고, eNB1/RAN기반 전송 제어를 받는 상황이 발생될 수 있다. 네트워크의 전송 속도가 날로 증가하고 있음을 고려하면, 핸드 오버 절차 동안 TCP proxy1(290-1)에 전달되는 데이터의 양은 상당하다. 따라서 단말(210)의 이동 시점에 좀 더 가깝게, 전송 제어를 적시에 적용할 수 있는 방법이 필요하다.
도 8은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1에서 고속 DL 데이터 전달(fast DL data forwarding)을 이용한 DL 데이터 수신 방법을 설명하기 위한 도면이다.
도 8을 참조하면, 801 단계에서 SGW(250a)는 path switch를 수행한 후, eNB1(230-1)에게 종료 마크(end marker)를 보낸다. 803 단계에서 상기 종료 마크를 수신한 eNB1(230-1)은 TCP proxy1(290-1)에게 상기 종료 마크의 수신을 알린다. 또한 805 단계에서 eNB1(230-1)은 eNB2(230-2)에게 종료 마크를 전달한다. 807 단계에서 상기 종료 마크를 수신한 TCP proxy1(290-1)은 eNB1 UE buffer(b1)에 버퍼링된 데이터를 eNB1(230-1)이 아닌 eNB2(230-2)를 통해 전달한다. 이때 TCP proxy1(290-1)은 데이터 전송 시 eNB2/RAN 기반 전송 제어를 적용한다. 또한 TCP proxy1(290-1)은 eNB2(230-2)에게 eNB2 UE buffer(b2)의 데이터를 eNB2/RAN 기반 전송 제어를 적용하여 전송한다. 따라서 도 8의 실시 예를 적용하면, 단말(210)이 eNB2(230-2)의 coverage에 있음에도 불구하고, eNB1 기반의 전송 제어를 받고 있던 단말(210)의 데이터가 적시에 eNB2 기반의 전송 제어를 받아 단말(210)에게 전송될 수 있다.
도 9a 내지 도 9c는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1을 적용한 경우 핸드 오버 절차를 나타낸 흐름도로서, 이는 소스 기지국과 타겟 기지국이 동일한 TCP proxy에 연결되어 있는 경우, 핸드 오버 절차를 나타낸 것이다. 먼저 901, 903 단계에서 TCP proxy1(290-1)은 eNB1(230-1)을 통해, 단말(210)과 UE TCP 세션이 설정되고 또한 서비스 서버(270)와 proxy TCP 세션이 설정되어 있음을 전제한다. 하기 핸드 오버 절차에서 905 단계 내지 927 단계는 proxy tunnel 업데이트 및 eNB2 UE buffer 생성 절차이고, 929 단계 내지 973 단계는 fast DL data forwarding 및 eNB1 UE buffer 삭제 절차이다.
상기 proxy tunnel 업데이트 및 eNB2 UE buffer 생성 절차를 먼저 설명하면, 905 단계에서 eNB1(230-1)은 단말(210)이 전송하는 측정 보고(measurement report)를 기반으로 핸드오버 조건/기준을 검사한다. 상기 핸드 오버 조건에 타겟 기지국이 본 발명의 실시 예에 따른 TCP proxy를 지원하는지 여부가 포함될 수도 있다. 이 경우 907 단계는 생략될 수 있다. 본 실시 예에서 소스 기지국은 configuration으로 타겟 기지국를 포함한 주변 기지국의 TCP proxy 지원 여부를 알고 있음을 가정한다. 907 단계에서 eNB1(230-1)은 타겟 기지국인 eNB2(230-2)가 TCP proxy를 지원하는지 여부를 확인한다. eNB2(230-2)이 TCP proxy를 지원하는 경우, eNB1(230-1)은 eNB2(230-2)에게 proxy 매핑 테이블 정보를 포함한 HO request 메시지(UE's proxy mapping table information 포함)을 전송한다. 상기 UE's proxy 매핑 테이블의 정보는 eNB1(230-1)이 저장하고 있는 proxy 매핑 테이블에 포함되어 있는 정보와 동일하다.
이후 911 단계에서 eNB2(230-2)는 eNB1(230-1)에게 HO request ack를 전송하고, 913 단계에서 eNB2(230-2)는 HO request 메시지를 통해 수신한 정보를 기반으로 proxy 매핑 테이블을 업데이트 한다. 다시 말하면, eNB2(230-2)는 단말(210)을 위한 entry를 proxy 매핑 테이블에 추가한다. 915 단계에서 eNB2(230-2)는 TCP proxy1(290-1)에게 proxy tunnel 관련 정보를 업데이트(생성, 변경, 삭제 등)를 위한 Xt table update request(cause=HO, UE id, eNB2 UL id, eNB2 DL id, eNB2 id, TCP proxy1 id 포함)를 전송한다. 상기 Xt table update request가 핸드 오버의 이벤트로 발생했으므로 cause=HO로 설정한다. 또한, eNB2(230-2)는 eNB2(230-2)와 TCP proxy1(290-1) 사이의 proxy tunnel 설정을 위해 상기 <표 1>에서 설명한 eNB2 UL id와 eNB2 DL id를 자신의 id와 함께 TCP proxy1(290-1) 에게 전달한다. TCP proxy1 id는 Source TCP proxy id로서 eNB1(230-1)이 proxy tunnel을 맺고 있는 TCP proxy1(290-1)의 id이다.
이후 917 단계에서 TCP proxy1(290-1)은 상기 Xt table update request를 통해 수신한 정보를 기반으로 HO로 인한 기지국 매핑 테이블의 업데이트가 필요함을 확인하고, 소스 TCP proxy를 확인한다. 즉, TCP proxy1(290-1)은 소스 TCP proxy와 타겟 TCP proxy가 동일한 지 확인한다. 만약 소스 TCP proxy와 타겟 TCP proxy가 다른 것으로 확인된 경우, 정해진 절차가 수행된다. 상기 정해진 절차는 예를 들어 후술할 도 12a 내지 도 12c에서 설명한 절차가 될 수 있다. 본 실시 예에서는 소스 TCP proxy와 타겟 TCP proxy가 동일함을 가정한다. 921 단계에서 TCP proxy1(290-1)은 단말(210)의 기지국 매핑 테이블이 있음을 확인하고, 상기 Xt table update request를 통해 수신한 정보를 저장하여 기지국 매핑 테이블을 업데이트한다. 그리고 923 단계에서 TCP proxy1(290-1)은 eNB2(230-2)에 대한 eNB2 UE buffer를 생성한다. 그리고 925 단계에서 TCP proxy1(290-1)은 eNB2(230-2)에게 상기 Xt table update request에 대한 응답으로 Xt table update response(UE id, proxy UL id, proxy DL id, TCP proxy1 id 포함)를 전송한다. TCP proxy1(290-1)은 eNB2(230-2)와의 proxy tunnel 설정을 위해 상기 Xt table update response를 통해 proxy UL id와 proxy DL id를 자신의 id와 함께 eNB2(230-2)에게 전달한다. 그러면 927 단계에서 eNB2(230-2)는 상기 Xt table update response를 통해 수신한 정보를 기반으로 proxy 매핑 테이블을 업데이트한다.
그리고 상기 fast DL data forwarding 및 eNB1 UE buffer 삭제 절차를 설명하면, 929, 931 단계에서 단말(210)로 향하는 DL 데이터는 여전히 eNB1(230-1)을 통해 TCP proxy1(290-1)로 전달된다. 933 단계에서 TCP proxy1(290-1)는 eNB1 UE buffer의 데이터를 eNB1/RAN 기반 전송 제어를 통해 eNB1(230-1)에게 전송하고, 935 단계에서 eNB1(230-1)은 상기 수신한 단말(210)의 DL 데이터를 eNB2(230-2)에게 data forwarding 한다. 937 단계에서 eNB1(230-1)은 단말(210)에게 핸드 오버 명령(HO command)을 전송하고, 939 단계에서 단말(210)은 eNB2(230-2)에게 상기 핸드 오버 명령에 대한 핸드 오버 확인(HO confirm) 메시지를 전송하며, eNB2(230-2)로의 핸드 오버를 완료한다. 그리고 상기 핸드 오버 완료 후 941 단계에서 단말(210)은 eNB2(230-2)로부터 DL data를 수신한다.
이후 943 단계에서 단말(210)은 UL 데이터를 eNB2(230-2)에게 전송한다. 한편 단말(210)로부터 HO confirm 메시지를 수신한 eNB2(230-2)는 이동성을 제어하는 네트워크 엔터티인 MME(Mobility Management Entity)(280)에게 path switch request를 전송하고, 951 단계에서 MME(280)는 SGW(250a)와 bearer modification 절차를 수행한다. 상기 bearer modification 절차는 SGW(250a)가 타겟 기지국인 eNB2(230-2)으로 데이터 전송 경로를 변경하는 절차를 포함한다.
이후 953, 955, 957 단계에서 단말(210)로 향하는 DL 데이터는 eNB2(230-2)를 경유하여 TCP proxy1(290-1)로 전달되고, TCP proxy1(290-1)로부터 eNB2(230-2)를 통해 단말(210)에게 전송된다. 그리고 959 단계에서 SGW(250a)는 eNB1(230-1)에게 종료 마크를 전송하면, 961 단계에서 eNB1(230-1)은 TCP proxy1(290-1)에게 종료 마크 통지(end marker notification)(UE id, eNB1 id 포함)를 전송한다. 상기 종료 마크 통지에 포함되는 eNB1 id는 source eNB id로 TCP proxy1(290-1)는 UE id만으로 source eNB id(즉 eNB1(230-1))로부터 전달된 종료 마크임을 알 수 있으면 상기 eNB1 id의 전송은 생략될 수 있다.
이후 963 단계에서 TCP proxy1(290-1)은 eNB1 UE buffer에 버퍼링된 DL 데이터를 eNB2/RAN 기반 전송 제어를 적용하여 eNB2(230-2)로 전송한다. TCP proxy1(290-1)은 상기 eNB1 UE buffer의 DL 데이터를 모두 전송한 후, eNB1 UE buffer를 삭제한다. 그리고 965 단계에서 TCP proxy1(290-1)은 eNB1(230-1)에게 종료 마크 통지 확인(end marker notification ack)을 전송한다. 그러면 967 단계에서 eNB1(230-1)은 eNB2(230-2)에게 종료 마크를 전송하고, 969 단계에서 SGW(250a)는 eNB2(230-2)에게 상기 949 단계에서 Path switch request에 대한 Path switch request ack를 전송한다. 그러면 971 단계에서 eNB2(230-2)는 eNB1(230-1)에게 Resource Release를 전송하고, 973 단계에서 eNB1(230-1)은 proxy 매핑 테이블에서 해당 단말(210)의 entry를 삭제하여 proxy 매핑 테이블을 업데이트한다. 이후 975, 977 단계에서 TCP proxy1(290-1)은 eNB2(230-2)를 통해, 단말(210)과 UE TCP 세션이 설정되고 또한 서비스 서버(270)와 proxy TCP 세션이 설정된다.
시나리오 2) 소스 기지국과 타겟 기지국이 서로 다른 TCP proxy에 연결되어 있는 경우,
본 발명의 실시 예에서 소스 기지국과 타겟 기지국이 서로 다른 TCP proxy에 연결되어 있는 경우에도, 상기한 시나리오 1) 과 같이 proxy tunnel 업데이트가 필요하다. 소스 기지국에 연결된 TCP proxy를 소스 TCP proxy, 타겟 기지국에 연결된 TCP proxy를 타겟 TCP proxy라 칭하면, 시나리오 2)의 경우 소스 TCP proxy가 관리하고 있던 분리된 TCP 세션 정보를 획득하기 위해, 타겟 TCP proxy가 소스 TCP proxy로부터 기지국 매핑 테이블 정보를 획득하는 절차가 추가된다.
또한 시나리오2의 경우, fast DL data forwarding시 소스 기지국 UE 버퍼의 데이터를 타겟 기지국으로 전송하기 위해, 소스 TCP proxy와 타겟 TCP proxy 사이의 데이터 전달 방법이 필요하다. 또한 시나리오2의 경우, TCP sender와 TCP ACK receiver가 달라지는 문제가 발생하여 전송률 저하가 발생되므로 이를 해결하기 위한 방안이 요구된다.
도 10은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2에서 DL 데이터 수신 방법을 설명하기 위한 도면이다.
도 10을 참조하면, TCP proxy1(290-1)은 eNB2(230-2)을 통해 단말(210)의 IP 데이터를 eNB2(230-2)에 대한 eNB2 UE buffer(b3)에 수신한다. 단말(210)이 이동할 타겟 기지국인 eNB3(230-3)는 TCP proxy2(290-2)와 연결되어 있다.
도 10의 1001 단계에서 SGW(250a)는 핸드 오버에 따른 path switch를 수행한 후, eNB2(230-2)에게 종료 마크를 보낸다. SGW(250a)는 이후 eNB3(230-3)에게 데이터를 전송하고, eNB3(230-3)는 proxy tunnel 업데이트 절차를 통해, 상기 수신한 데이터를 TCP proxy2(290-2)에게 전달한다. TCP proxy2(290-2)은 eNB3(230-3)를 통해 수신하는 단말(210)의 데이터를 eNB3(230-3)에 대한 eNB3 UE buffer(b5)를 통해 수신한다. 1003 단계에서 eNB2(230-2)은 TCP proxy1(290-1)로부터 전송 제어를 받은 단말(210)의 IP 데이터를 수신하고, 1005 단계에서 eNB2(230-2)은 상기 TCP proxy1(290-1)로부터 수신한 데이터를 eNB3(230-3)로 전달한다. 이때 전달되는 데이터는 TCP proxy1(290-1)로부터 eNB2/RAN 기반 전송 제어를 받는 데이터이다.
이후 1007 단계에서 eNB2(230-2)은 TCP proxy1(290-1)로부터 데이터 전송이 완료되면 eNB3(230-3)에게 종료 마크를 전달한다. 그리고 1009 단계에서 eNB3(230-3)는 eNB2(230-2)로부터 전달 받은 데이터를 단말(210)에게 모두 전송 후, 1011 단계에서 TCP proxy2(290-2)로부터 전달받은 데이터를 단말(210)에게 전송한다. 이때 TCP proxy2(290-2)이 eNB3(230-3)로 전달하는 데이터는 eNB3/RAN 기반 전송 제어를 받는 데이터이다. 도 10의 실시 예에서 단말(210)은 eNB3(230-3)로 핸드오버 한 후에도 eNB2/RAN기반 전송 제어를 받은 데이터를 수신하게 된다. 따라서 단말(210)의 이동 시점에 좀 더 가깝게 전송 제어를 적시에 적용할 수 있는 방법이 필요하다.
도 11은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2에서 고속 DL 데이터 전달(fast DL data forwarding)을 이용한 DL 데이터 수신 방법을 설명하기 위한 도면이다.
도 11의 실시 예에서는 타겟 기지국이 소스 기지국이 연결된 TCP proxy와 다른 TCP proxy와 연결되어 있는 시나리오2의 경우, 타겟 TCP proxy와 소스 TCP proxy는 핸드 오버 절차 중 TCP proxy들 간에 데이터 송수신을 할 수 있는 터널을 생성한다. 또, 타겟 TCP proxy는 소스 TCP proxy와 연결된 소스 기지국으로부터의 데이터를 소스 TCP proxy를 통해 수신하기 위한 UE buffer를 생성한다.
도 11을 참조하면, 1101 단계에서 SGW(250a)는 핸드 오버에 따른 path switch를 수행한 후, eNB2(230-2)에게 종료 마크를 보낸다. 1103 단계에서 eNB2(230-2)는 상기 종료 마크를 수신하면 TCP proxy1(290-1)에게 상기 종료 마크 수신을 알린다. 또한, 1105 단계에서 eNB2(230-2)는 eNB3(230-3)에게 상기 종료 마크를 전달한다. 1107 단계에서 상기 종료 마크 수신을 확인한 TCP proxy1(290-1)은 eNB2(230-2)에 대한 eNB2 UE buffer(b3)에 버퍼링된 데이터를 TCP proxy2(290-2)에게 전달하고, TCP proxy2(290-2)는 상기 전달 받은 데이터를 TCP proxy2(290-2) 내의 eNB2(230-2)에 대한 eNB2 UE buffer(b4)에 버퍼링한다. 이후 1109 단계에서 TCP proxy2(290-2)은 eNB3(230-3)에게 eNB2 UE buffer(b4)의 데이터를 eNB3/RAN 기반 전송 제어를 적용하여 전송한다. 그리고 1111 단계에서 TCP proxy2(290-2)는 eNB2 UE buffer(b4)의 데이터를 모두 전송 후, eNB3(230-3)에 대한 eNB3 UE buffer(b5)의 데이터를 전송한다. 따라서 상기한 도 11의 실시 예에 의하면, 단말(210)은 eNB3의 coverage에서도, eNB2 기반의 전송 제어를 받고 있던 단말(210)의 데이터가 단말(210)의 이동에 맞춰 eNB3 기반의 전송 제어를 적시에 받아 단말(210)에게 전송될 수 있다.
도 12a 내지 도 12c는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2를 적용한 경우 핸드 오버 절차를 나타낸 흐름도로서, 이는 소스 기지국과 타겟 기지국이 서로 다른 TCP proxy에 연결되어 있는 경우, 핸드 오버 절차를 나타낸 것이다. 도 12a 내지 도 12c의 절차에서 도 9a 내지 도 9c의 절차와 동일 또는 유사한 동작들에 대해서는 구체적인 설명은 생략하기로 한다.
도 12a 내지 도 12c의 절차에서 1217 단계 내지 1229 단계는 TCP 세션 정보 쿼리 절차, 1253 단계 내지 1271 단계는 proxy 핸드 오버 절차(proxy 간 터널 생성 절차), 그리고 1275 단계 내지 1289 단계는 fast DL data forwarding 및 eNB2 UE buffer 삭제 절차로 이해될 수 있다.
먼저 상기 TCP 세션 정보 쿼리 절차를 설명하면, 1217 단계에서 target Proxy2(290-2)는 기지국 매핑 테이블에 해당 단말(210)의 entry가 없음을 확인하여 즉 소스 TCP proxy1(290-1)와 타겟 TCP proxy2(290-2)가 다른 지 여부를 확인한다. 본 실시 예에서는 소스 TCP proxy1(290-1)와 타겟 TCP proxy2(290-2)가 다름을 가정한다. 만약 소스 TCP proxy1(290-1)와 타겟 TCP proxy2(290-2)가 동일한 것으로 확인된 경우, 1219 단계에서 정해진 절차가 수행된다. 상기 정해진 절차는 예를 들어 상기한 도 9a 내지 도 9c에서 설명한 절차가 될 수 있다. 1221 단계에서 TCP proxy2(290-2)는 TCP proxy1(290-1)에게 TCP session info request(UE id, TCP proxy2 id 포함)를 보낸다. 1223 단계에서 TCP proxy1(290-1)은 TCP proxy2(290-2)에게 TCP session info response(UE id, TCP session information)을 보낸다. 그리고 1229 단계에서 TCP proxy2(290-2)는 상기 TCP proxy 1(290-1)로부터 수신한 데이터를 버퍼링하기 위한 eNB2 UE buffer를 생성한다. 상기 TCP 세션 정보 쿼리 절차에서 소스 TCP proxy가 관리하고 있던 분리된 TCP 세션 정보를 획득하기 위해, TCP proxy2(290-2)는 TCP proxy 1(290-1)로부터 기지국 매핑 테이블 정보를 획득하고, eNB2 UE buffer를 생성하게 된다.
그리고 상기 proxy 핸드 오버 절차(proxy 간 터널 생성 절차)를 설명하면, 1253 단계에서 단말(210)로부터 HO confirm 메시지를 수신한 eNB3(230-3)는 TCP proxy2(290-2)에게 Proxy HO initiation request(UE id 포함) 메시지를 보낸다. 상기 Proxy HO initiation 메시지를 수신한 TCP proxy2(290-2)는 TCP proxy 1(290-1)과 데이터를 송수신하기 위한 터널 생성을 위해 1255 단계에서 TCP proxy1(290-1)에게 Proxy HO request(UE id, TCP proxy2 tunnel id 포함)를 전송한다. 상기 TCP proxy2 tunnel id는 TCP proxy2(290-2) 내에서 단말(210)의 데이터를 전송할 때 사용되는 tunnel을 식별하는 식별자이다. 그리고 1257 단계에서 TCP proxy1(290-1)는 TCP proxy2(290-2)에게 Proxy HO request ack(UE id, TCP proxy1 tunnel id)를 전송한다. 상기 TCP proxy1 tunnel id는 TCP proxy1(290-1) 내에서 해당 단말(210)의 데이터를 전송할 때 사용되는 tunnel을 식별하는 식별자이다. 이후 1261 단계에서 TCP proxy2(290-2)는 eNB3(230-3)에게 Proxy HO initiation response(UE id 포함) 메시지를 보낸다. 상기한 proxy 핸드 오버 절차(proxy 간 터널 생성 절차)를 통해 TCP proxy1(290-1)과 TCP proxy2(290-2)는 데이터 송수신이 가능해진다.
그리고 상기 fast DL data forwarding 및 eNB2 UE buffer 삭제 절차를 설명하면, 1275 단계에서 eNB1(230-1)는 TCP proxy1(290-1)에게 End marker notification (UE id, eNB2 id 포함)을 전송한다. 1277 단계에서 상기 End marker notification 메시지를 수신한 TCP proxy1(290-1)는 TCP proxy1(290-1) 내의 eNB2 UE buffer에 버퍼링된 DL 데이터를 TCP proxy2(290-2)에게 전달한다. 이후 1279 단계에서 TCP proxy1(290-1)은 eNB1(230-1)에게 End marker notification ack를 전송하고, 1289 단계에서 해당 단말(210)의 entry를 삭제하여 기지국 매핑 테이블을 업데이트한다.
도 9a 내지 도 9c의 실시 예와 도 12a 내지 도 12c의 실시 예에서 공통으로 볼 수 있는 바와 같이, 핸드 오버 시에 단말이 타겟 기지국으로 이동한 후에도, 소스 TCP proxy가 버퍼링하고 있는 DL 데이터는 소스 기지국의 데이터 포워딩을 통해 단말에게 전달될 수 있다. 그러나, UL 데이터의 경우는 다르다. LTE 시스템에서는 단말이 타겟 기지국으로 HO confirm 메시지를 전송한 직후, UL 데이터는 타겟 기지국을 통해 서비스 서버로 전송된다.
도 13은 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오1에서 UL 데이터 전송 방법을 설명하기 위한 도면으로서, 도 13에서 1301 단계 내지 1307 단계의 동작은 도 10에서 설명한 DL 데이터 수신 동작과 동일하므로 구체적인 설명은 생략하기로 한다.
도 13을 참조하면, 소스 TCP proxy1(290-1)와 타겟 TCP proxy2(290-2)가 서로 다른 TCP proxy의 구조에서, 단말(210)은 타겟 기지국(230-3)으로 이동한 후에도 data forwarding을 통해 소스 TCP proxy(290-1)가 전송한 DL 데이터를 수신한다. 예를 들어, 소스 TCP proxy(290-1)가 1~5번까지의 DL 데이터를 소스 기지국(230-2)을 통한 데이터 포워딩으로 전송하고, 타겟 TCP proxy2(290-2)가 6번부터의 DL 데이터를 전송한다고 가정한다. 단말(210)은 1~5번 DL 데이터를 수신하는 도중 타겟 기지국(230-3)으로의 핸드오버를 완료한다. 핸드 오버 직후 단말(210)은 UL 데이터를 타겟 기지국(230-3)으로 전송하므로, 단말(210)이 전송하는 1~5번 DL 데이터에 대한 TCP ACK은 도 13의 1309 단계와 같이 타겟 TCP proxy2(290-2)로 전달된다. 이 경우 TCP 데이터의 송신자(sender)와 수신자(receiver)가 다른 상황이 발생하며, TCP 송신자(sender)인 TCP proxy1(290-1)은 TCP ACK 손실로 판단하고 재전송을 결정한다. TCP 재전송이 발생하면, TCP window 크기는 감소하고 전송률의 저하를 유발한다.
도 14는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오2에서 고속 UL 데이터 전달(fast UL data forwarding)을 이용한 UL 데이터 전송 방법을 설명하기 위한 도면이다. 도 14에서 1401 단계 내지 1409 단계의 동작은 도 11에서 설명한 DL 데이터 수신 방법과 동일하므로 구체적인 설명은 생략하기로 한다.
도 14를 참조하면, TCP proxy2(290-2)는 상기한 핸드 오버 절차를 통해, 분리된 TCP 세션의 정보를 전달받는다. TCP proxy2(290-2)가 단말(210)로부터 UL 데이터를 수신하면, 기지국 매핑 테이블의 분리된 TCP 세션의 정보에 기반하여, TCP proxy2(290-2)는 참조 번호 1411과 같이 TCP proxy1(290-1)이 전송한 TCP 데이터에 대한 ACK를 TCP proxy1(290-1)으로 전달한다. 그리고 UL 데이터 포워딩은 도 12b의 참조 번호 1249, 1251의 전송 경로와 같다.
시나리오 3) 소스 기지국은 TCP proxy와 연결되어 있으나, 타겟 기지국이 TCP proxy와 연결되지 않은 legacy 기지국에 연결되어 있는 경우,
시나리오 3에서 TCP proxy를 통해 분리된 TCP 세션을 이용하는 단말(210)이 TCP proxy와 연결이 없는 legacy 기지국으로 이동하는 경우, 분리된 TCP 세션을 맺고 있는 TCP proxy는 연결을 종료한다.
도 15a 내지 도 15b는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오3을 적용한 경우 핸드 오버 절차를 나타낸 흐름도로서, 단말(210)이 legacy 기지국으로 핸드오버 하는 경우의 절차를 나타낸 것이다. 시나리오3에서는 분리된 TCP 세션 삭제 절차가 수행된다. 상기 분리된 TCP 세션 삭제 절차는 앞서 설명한 바와 같은 TCP teardown 절차를 통해 수행된다.
도 15a 내지 도 15b를 참조하면, 1513 단계에서 eNB3(230-3)는 TCP proxy2(290-2)에게 TCP session delete 메시지(UE id, eNB3 id 포함)를 전송한다. 1515 단계에서 TCP proxy2(290-2)는 버퍼링하고 있던 DL 데이터를 eNB3(230-3)에게 전송하고, 1517 단계에서 eNB3(230-3)는 상기 DL 데이터를 eNB4(230-4)에게 전송한다. 그리고 TCP proxy2(290-2)로부터 eNB3(230-3)를 통해 도시되지 않은 eNB2(230-2)로 전달되는 상기 1517 단계의 data forwarding 절차는 생략 가능하다. 1519 단계에서 TCP proxy2(290-2)는 분리된 TCP 세션의 종료를 위해 TCP FIN 데이터를 생성하고, 1521, 1523 단계에서 TCP proxy2(290-2)는 상기 생성한 TCP FIN을 eNB3(230-3)를 통해 서비스 서버(270)에 전송하여 proxy TCP 세션을 종료한다. 그리고 1525 단계에서 TCP proxy2(290-2)는 상기 생성한 TCP FIN을 단말(210)에 전송하여 UE TCP 세션을 종료한다. 이후 1527 단계에서 TCP proxy2(290-2)는 eNB3(230-3)에게 TCP session delete ack을 전송하여, 상기 분리된 TCP 세션의 종료를 알린다. 이후 eNB3(230-3)와 TCP proxy2(290-2)는 1533, 1537 단계에서 단말(210)을 위한 버퍼 및 mapping table을 삭제한다. 한편 도 15a 내지 도 15b의 실시 예에서 단말이 legacy 기지국으로 이동한 경우, TCP proxy에서 임의로 단말이 사용하고 있는 TCP 세션을 종료했으므로, 어플리케이션은 서비스 서버와의 연결을 위해 1561 단계와 같이 TCP 세션을 (재)설정 해야 한다. 이는 어플리케이션의 기능에 의해 수행될 수 있다. 도 15a 내지 도 15b의 실시 예에서 상기 분리된 TCP 세션 삭제 절차와 직접적인 관련이 없는 동작들에 대해서는 설명을 생략하기로 한다.
시나리오 4) 소스 기지국은 legacy 기지국이고, 타겟 기지국은 TCP proxy 와 연결되어 있는 경우,
도 6을 참조하면, Legacy 기지국(230-4)의 coverage에 있던 단말(210)이 TCP proxy(290-3)와 연결이 있는 기지국(230-5)으로 이동한 경우, 기 사용중인 TCP 세션은 서비스 서버(270)와 연결된 상태로 유지하고, 신규로 생성하는 TCP 세션에 대해서 분리된 TCP 세션을 생성한다. 이를 위해, 단말(210)의 핸드 오버 절차에서 타겟 기지국(230-5)은 TCP proxy 준비를 수행하여 proxy tunnel을 생성한다.
도 16a 및 도 16b는 본 발명의 실시 예에 따른 TCP proxy 핸드 오버 시나리오4를 적용한 경우 핸드 오버 절차를 나타낸 흐름도로서, 이는 Legacy 기지국(230-4)의 coverage에 있던 단말(210)이 TCP proxy(290-3)와 연결이 있는 기지국(230-5)으로 이동한 경우 핸드 오버 절차를 나타낸 것이다. 도 16a 및 도 16b에서 1609 단계 내지 1619 단계는 상기한 TCP proxy 준비 절차를 나타낸 것으로서, 이는 도 5a 내지 도 5c에서 설명한 TCP proxy 준비 절차와 동일하므로 구체적인 설명은 생략하기로 한다. 상기 TCP proxy 준비 절차를 수행한 후, 1649 단계에서 단말(210)이 새로운 TCP 세션을 생성하면, 1651 단계에서 TCP proxy3(290-3)을 통해 분리된 TCP 세션이 설정된다. 상기 분리된 TCP 세션의 설정 절차는 도 5a 내지 도 5c에서 설명한 내용과 동일하므로 구체적인 설명은 생략하기로 한다.
도 17은 본 발명의 실시 예에 따른 통신 시스템에서 TCP proxy, 기지국, 그리고 단말에 적용될 수 있는 장치 구성을 나타낸 블록도로서, 도 17의 장치는 통신 인터페이스(1710), 메모리(1730), 및 제어부(1750)를 포함한다. 상기 통신 인터페이스(1710)는 무선 네트워크와 유선 네트워크 중 적어도 하나의 네트워크와 통신하기 위한 것이고, 상기 메모리(1730)는 네트워크를 통해 송수신되는 데이터를 버퍼링하기 위한 적어도 하나의 버퍼를 포함하며, 상기 제어부(1750)는 상기한 도 2 내지 도 16의 실시 예들에서 설명한 방식에 따라 분리된 TCP 세션 설정과 핸드 오버 관련 동작을 수행하도록 장치 전반을 제어한다.

Claims (26)

  1. 통신 시스템에서 TCP(Transmission Control Protocol) proxy가 TCP 연결을 설정하는 방법에 있어서,
    기지국과 데이터 송수신을 위한 터널을 설정하는 과정; 및
    단말의 TCP 연결 요청에 따라, 상기 단말과 상기 TCP proxy 간의 제1 TCP 연결과 상기 TCP proxy와 IP(Internet Protocol) 네트워크에서 서비스 서버 간의 제2 TCP 연결을 설정하는 과정을 포함하는 TCP 연결 설정 방법.
  2. 제 1 항에 있어서,
    무선 네트워크의 채널 상태를 근거로 상기 제1 TCP 연결에 대한 전송 제어를 수행하는 과정을 더 포함하는 TCP 연결 설정 방법.
  3. 제 2 항에 있어서,
    상기 기지국으로부터 상기 채널 상태를 나타내는 정보를 수신하는 과정을 더 포함하는 TCP 연결 설정 방법.
  4. 제 1 항에 있어서,
    상기 터널은 proxy 터널을 이용하며, 상기 TCP proxy는 상기 proxy 터널을 통해 상기 기지국과 IP 기반의 업 링크 데이터 또는 다운 링크 데이터를 송수신하는 TCP 연결 설정 방법.
  5. 제 4 항에 있어서,
    상기 기지국과 상기 TCP proxy는 각각 상기 proxy 터널의 설정 및 관리를 위한 매핑 테이블을 저장하며, 상기 proxy 터널은 업 링크 터널과 다운 링크 터널로 구분되고, 상기 매핑 테이블은 상기 업 링크 터널과 상기 다운 링크 터널을 각각 구분하기 위한 식별 정보를 포함하는 TCP 연결 설정 방법.
  6. 제 1 항에 있어서,
    정해진 TCP 정책에 따라 상기 단말과 상기 서비스 서버 간의 TCP 연결을 상기 제1 TCP 연결과 상기 제2 TCP 연결로 분리할 지 여부를 결정하는 과정을 더 포함하는 TCP 연결 설정 방법.
  7. 통신 시스템에서 TCP(Transmission Control Protocol) 연결을 설정하는 TCP proxy 장치에 있어서,
    기지국과 통신을 위한 통신 인터페이스; 및
    상기 기지국과 데이터 송수신을 위한 터널을 설정하고, 단말의 TCP 연결 요청에 따라, 상기 단말과 상기 TCP proxy 간의 제1 TCP 연결과 상기 TCP proxy와 IP(Internet Protocol) 네트워크에서 서비스 서버 간의 제2 TCP 연결을 설정하는 동작을 제어하는 제어부를 포함하는 TCP proxy 장치.
  8. 제 7 항에 있어서,
    상기 제어부는 무선 네트워크의 채널 상태를 근거로 상기 제1 TCP 연결에 대한 전송 제어를 수행하는 TCP proxy 장치.
  9. 제 8 항에 있어서,
    상기 제어부는 상기 통신 인터페이스를 통해 상기 기지국으로부터 상기 채널 상태를 나타내는 정보를 수신하는 TCP proxy 장치.
  10. 제 7 항에 있어서,
    상기 터널은 proxy 터널을 이용하며, 상기 제어부는 상기 proxy 터널을 통해 상기 기지국과 IP 기반의 업 링크 데이터 또는 다운 링크 데이터를 송수신하는 TCP proxy 장치.
  11. 제 10 항에 있어서,
    상기 기지국과 상기 TCP proxy 장치는 각각 상기 proxy 터널의 설정 및 관리를 위한 매핑 테이블을 저장하며, 상기 proxy 터널은 업 링크 터널과 다운 링크 터널로 구분되고, 상기 매핑 테이블은 상기 업 링크 터널과 상기 다운 링크 터널을 각각 구분하기 위한 식별 정보를 포함하는 TCP proxy 장치.
  12. 제 7 항에 있어서,
    상기 제어부는 정해진 TCP 정책에 따라 상기 단말과 상기 서비스 서버 간의 TCP 연결을 상기 제1 TCP 연결과 상기 제2 TCP 연결로 분리할 지 여부를 결정하는 TCP proxy 장치.
  13. TCP(Transmission Control Protocol) 기반의 통신 시스템에서 다운 링크 데이터를 전달(forwarding)하는 방법에 있어서,
    핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 제2 TCP proxy와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하는 과정; 및
    상기 정보를 수신한 상기 제1 TCP proxy로부터 상기 제1 기지국에 대해 버퍼링된 제1 다운 링크 데이터를 수신하여 버퍼링하고, 상기 제2 기지국으로부터 상기 핸드 오버에 따라 스위칭된 데이터 경로를 통해 제2 다운 링크 데이터를 수신하여 버퍼링 과정을 포함하는 다운 링크 데이터 전달 방법.
  14. 제 13 항에 있어서,
    상기 데이터 경로의 스위칭을 알리는 정보는 상기 제1 기지국 및 상기 제2 기지국과 각각 연결된 게이트웨이로부터 전송되는 종료 마크(end marker)인 다운 링크 데이터 전달 방법.
  15. 제 13 항에 있어서,
    상기 제2 기지국으로 상기 버퍼링된 제1 다운 링크 데이터를 전달한 후, 상기 버퍼링된 제2 다운 링크 데이터를 전달하는 과정을 더 포함하는 다운 링크 데이터 전달 방법.
  16. 제 15 항에 있어서,
    상기 버퍼링된 제1 다운 링크 데이터는 상기 제2 기지국 기반의 전송 제어에 따라 단말에게 전달되는 다운 링크 데이터 전달 방법.
  17. TCP(Transmission Control Protocol) 기반의 통신 시스템에서 다운 링크 데이터를 전달(forwarding)하는 TCP proxy 장치에 있어서,
    데이터 통신을 위한 통신 인터페이스;
    송수신되는 데이터를 버퍼링하기 위한 메모리; 및
    핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 상기 TCP proxy 장치와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하고, 상기 정보를 수신한 상기 제1 TCP proxy로부터 상기 제1 기지국에 대해 버퍼링된 제1 다운 링크 데이터를 수신하여 상기 메모리에 버퍼링하고, 상기 제2 기지국으로부터 상기 핸드 오버에 따라 스위칭된 데이터 경로를 통해 제2 다운 링크 데이터를 수신하여 상기 메모리에 버퍼링하는 동작을 제어하는 제어부를 포함하는 TCP proxy 장치.
  18. 제 17 항에 있어서,
    상기 데이터 경로의 스위칭을 알리는 정보는 상기 제1 기지국 및 상기 제2 기지국과 각각 연결된 게이트웨이로부터 전달되는 종료 마크(end marker)인 TCP proxy 장치.
  19. 제 17 항에 있어서,
    상기 제어부는 상기 제2 기지국으로 상기 버퍼링된 제1 다운 링크 데이터를 전달한 후, 상기 버퍼링된 제2 다운 링크 데이터를 전달하는 동작을 제어하는 TCP proxy 장치.
  20. 제 19 항에 있어서,
    상기 버퍼링된 제1 다운 링크 데이터는 상기 제2 기지국 기반의 전송 제어에 따라 단말에게 전달되는 TCP proxy 장치.
  21. TCP(Transmission Control Protocol) 기반의 통신 시스템에서 업 링크 데이터를 전달(forwarding)하는 방법에 있어서,
    핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 제2 TCP proxy와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하는 과정;
    상기 정보를 수신한 상기 제1 TCP proxy에게, 상기 제1 TCP proxy이 전달한 제1 업 링크 데이터에 대한 확인 응답 신호를 전송하는 과정; 및
    상기 핸드 오버에 따른 데이터 경로 스위칭에 따라, 상기 제2 기지국으로부터 수신한 제2 업 링크 데이터를 버퍼링하고 전송 제어하여 상기 제2 기지국을 통해 IP(Internet Protocol) 네트워크로 전달하는 과정을 포함하는 업 링크 데이터 전달 방법.
  22. 제 21 항에 있어서,
    상기 데이터 경로의 스위칭을 알리는 정보는 상기 제1 기지국 및 상기 제2 기지국과 각각 연결된 게이트웨이로부터 전송되는 종료 마크(end marker)인 업 링크 데이터 전달 방법.
  23. 제 21 항에 있어서,
    상기 업 링크 데이터의 전달을 위한 TCP 연결은 단말과 상기 제2 TCP proxy 간의 제1 TCP 연결과 상기 TCP proxy와 IP(Internet Protocol) 네트워크에서 서비스 서버 간의 제2 TCP 연결로 분리되며, 상기 업 링크 데이터의 전달은 상기 분리된 TCP 연결을 통해 수행되는 업 링크 데이터 전달 방법.
  24. TCP(Transmission Control Protocol) 기반의 통신 시스템에서 TCP proxy 장치에 있어서,
    데이터 통신을 위한 통신 인터페이스;
    송수신되는 데이터를 버퍼링하기 위한 메모리; 및
    핸드 오버 수행 시, 소스 기지국으로 동작하는 제1 기지국이 제1 TCP proxy와 연결되고 타겟 기지국으로 동작하는 제2 기지국이 상기 TCP proxy 장치와 연결되는 네트워크 환경에서, 상기 핸드 오버에 따른 데이터 경로의 스위칭을 알리는 정보를 상기 제1 기지국으로부터 상기 제1 TCP proxy를 통해 수신하고, 상기 정보를 수신한 상기 제1 TCP proxy에게, 상기 제1 TCP proxy이 전달한 제1 업 링크 데이터에 대한 확인 응답 신호를 전송하며, 상기 핸드 오버에 따른 데이터 경로 스위칭에 따라, 상기 제2 기지국으로부터 수신한 제2 업 링크 데이터를 버퍼링하고 전송 제어하여 상기 제2 기지국을 통해 IP(Internet Protocol) 네트워크로 전달(forwarding)하는 동작을 제어하는 제어부를 포함하는 TCP proxy 장치.
  25. 제 24 항에 있어서,
    상기 데이터 경로의 스위칭을 알리는 정보는 상기 제1 기지국 및 상기 제2 기지국과 각각 연결된 게이트웨이로부터 전송되는 종료 마크(end marker)인 TCP proxy 장치.
  26. 제 24 항에 있어서,
    상기 업 링크 데이터의 전달을 위한 TCP 연결은 단말과 상기 제2 TCP proxy 간의 제1 TCP 연결과 상기 TCP proxy와 IP(Internet Protocol) 네트워크에서 서비스 서버 간의 제2 TCP 연결로 분리되며, 상기 업 링크 데이터의 전달은 상기 분리된 TCP 연결을 통해 수행되는 TCP proxy 장치.
KR1020140170058A 2014-12-01 2014-12-01 통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치 KR102342144B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020140170058A KR102342144B1 (ko) 2014-12-01 2014-12-01 통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치
US15/532,459 US10299181B2 (en) 2014-12-01 2015-12-01 Method and apparatus for configuring disconnected TCP connection in communication system, handover support method and apparatus therefor
CN201580075216.7A CN107211331B (zh) 2014-12-01 2015-12-01 用于在通信系统中配置断开连接的tcp连接的方法和装置、切换支持方法及其装置
PCT/KR2015/012981 WO2016089082A1 (ko) 2014-12-01 2015-12-01 통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치
EP15864710.7A EP3229552B1 (en) 2014-12-01 2015-12-01 Method and apparatus for configuring disconnected tcp connection in communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140170058A KR102342144B1 (ko) 2014-12-01 2014-12-01 통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20160065697A true KR20160065697A (ko) 2016-06-09
KR102342144B1 KR102342144B1 (ko) 2021-12-22

Family

ID=56091974

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140170058A KR102342144B1 (ko) 2014-12-01 2014-12-01 통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치

Country Status (5)

Country Link
US (1) US10299181B2 (ko)
EP (1) EP3229552B1 (ko)
KR (1) KR102342144B1 (ko)
CN (1) CN107211331B (ko)
WO (1) WO2016089082A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180126351A (ko) * 2017-05-17 2018-11-27 삼성전자주식회사 통신 시스템에서 tcp 프록시 장치를 이용한 통신 방법 및 장치
KR20210032660A (ko) 2019-09-17 2021-03-25 한국생산기술연구원 치아 임플란트 표면 친수화용 플라즈마 장치 및 치아 임플란트 표면 친수화 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102343331B1 (ko) * 2015-07-07 2021-12-24 삼성전자주식회사 통신 시스템에서 비디오 서비스를 제공하는 방법 및 장치
US10154431B2 (en) * 2016-09-27 2018-12-11 Verizon Patent And Licensing Inc. Congestion mitigation based on user device and base station condition information
WO2018212613A1 (en) * 2017-05-17 2018-11-22 Samsung Electronics Co., Ltd. Tcp proxy device-assisted communication method and apparatus in wireless communication
US10616379B2 (en) * 2017-06-23 2020-04-07 Futurewei Technologies, Inc. Seamless mobility and session continuity with TCP mobility option
US20210007156A1 (en) * 2018-06-29 2021-01-07 Intel Corporation Transport layer connections for mobile communication networks
CN111225422B (zh) * 2018-11-23 2021-05-07 大唐移动通信设备有限公司 一种代理数据的处理方法和装置
US11764934B2 (en) * 2021-12-06 2023-09-19 Charter Communications Operating, Llc Fast adaptive buffering of hierarchical TCP communications

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080117836A1 (en) * 2006-11-20 2008-05-22 Raghvendra Gurudath Savoor Methods and apparatus to manage bandwidth in a wireless network
US20110136488A1 (en) * 2009-08-06 2011-06-09 Surya Kumar Kuvvali Session handover in mobile-network content-delivery devices
US20120224578A1 (en) * 2011-03-01 2012-09-06 Telefonaktiebolaget Lm Ericsson (Publ) Tunnel gateway managed caching architecture
US20140286239A1 (en) * 2013-03-25 2014-09-25 Altiostar Networks, Inc. Transmission Control Protocol Proxy in Long Term Evolution Radio Access Network

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0203104D0 (en) 2002-10-18 2002-10-18 Ericsson Telefon Ab L M Method and apparatus for network initiated rate control for P2C services in a mobile system
US7616644B2 (en) 2004-02-25 2009-11-10 Nokia Corporation Method and apparatus providing a protocol to enable a wireless TCP session using a split TCP connection
US8050186B2 (en) 2004-11-15 2011-11-01 Telefonaktiebolaget L M Ericsson (Publ) Method for modifying MSS
KR20060123974A (ko) 2005-05-30 2006-12-05 삼성전자주식회사 이종 시스템들간 서비스 연동 방법
KR100998376B1 (ko) * 2005-06-01 2010-12-03 후아웨이 테크놀러지 컴퍼니 리미티드 무선 통신 시스템에 있어서 서비스 품질 보증을 제공하는 방법 및 시스템
WO2008017272A1 (fr) * 2006-08-01 2008-02-14 Huawei Technologies Co., Ltd. Système de service mbs, procédé pour diviser une zone de service mbs, et procédé pour mettre en œuvre un service mbs dans le réseau
US8024478B2 (en) 2007-03-28 2011-09-20 Cisco Technology, Inc. Identifying network path including network proxies
CN101998679B (zh) * 2009-08-13 2012-11-07 华为技术有限公司 一种传输承载的中继方法、装置和通信系统
US9119113B2 (en) 2010-04-16 2015-08-25 Panasonic Intellectual Property Corporation Of America Handover method, handover system, and apparatus for a UE attaching to a local IP network
WO2012078082A1 (en) * 2010-12-07 2012-06-14 Telefonaktiebolaget L M Ericsson (Publ) Method for enabling traffic acceleration in a mobile telecommunication network
CN102130910B (zh) * 2011-02-28 2015-04-29 华为技术有限公司 Tcp代理插入和卸载方法及业务网关设备
US9548936B2 (en) 2011-06-30 2017-01-17 The Chinese University Of Hong Kong Method and system for improved TCP performance over mobile data networks
US9479617B2 (en) 2011-07-08 2016-10-25 Verizon Patent And Licensing Inc. Transmission control protocol (TCP) throughout optimization in mobile wireless networks
US20130058212A1 (en) 2011-09-07 2013-03-07 Contextream Ltd. Optimization of the transmission control protocol particularly for wireless connections
JP5928472B2 (ja) * 2011-09-21 2016-06-01 日本電気株式会社 コンテンツ配信システム、キャッシュサーバおよびコンテンツ配信方法
US10292066B2 (en) * 2011-11-04 2019-05-14 Cisco Technology, Inc. System and method of modifying congestion control based on mobile system information
KR101983034B1 (ko) 2012-09-05 2019-09-03 삼성전자주식회사 인터넷을 통한 핸드오버 지원 방법 및 장치
US9407557B2 (en) 2012-12-22 2016-08-02 Edgewater Networks, Inc. Methods and systems to split equipment control between local and remote processing units
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
CN104170346B (zh) 2013-02-26 2018-03-09 华为技术有限公司 数据传输方法、系统及代理设备
US20140258465A1 (en) 2013-03-11 2014-09-11 Cisco Technology, Inc. Identification of originating ip address and client port connection to a web server via a proxy server
CN104065464B (zh) * 2013-03-18 2018-05-08 中国移动通信集团公司 一种调整tcp连接的初始窗口大小的方法和装置
US20150296418A1 (en) * 2014-04-15 2015-10-15 Nokia Solutions And Networks Oy Methods and Apparatus for Handover Management of Transfer Control Protocol Proxy Communications
CN104093170B (zh) * 2014-06-10 2017-12-01 北京创毅视讯科技有限公司 基于tcp的数据传输方法和tcp代理装置
CN104168273B (zh) * 2014-08-04 2017-10-31 福建三元达网络技术有限公司 一种瘦ap模式下实现tcp代理的方法及系统
US10015289B2 (en) * 2014-08-12 2018-07-03 Cisco Technology, Inc. System and method for distribution of radio channel state and base station congestion state in a network environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080117836A1 (en) * 2006-11-20 2008-05-22 Raghvendra Gurudath Savoor Methods and apparatus to manage bandwidth in a wireless network
US20110136488A1 (en) * 2009-08-06 2011-06-09 Surya Kumar Kuvvali Session handover in mobile-network content-delivery devices
US20120224578A1 (en) * 2011-03-01 2012-09-06 Telefonaktiebolaget Lm Ericsson (Publ) Tunnel gateway managed caching architecture
US20140286239A1 (en) * 2013-03-25 2014-09-25 Altiostar Networks, Inc. Transmission Control Protocol Proxy in Long Term Evolution Radio Access Network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180126351A (ko) * 2017-05-17 2018-11-27 삼성전자주식회사 통신 시스템에서 tcp 프록시 장치를 이용한 통신 방법 및 장치
KR20210032660A (ko) 2019-09-17 2021-03-25 한국생산기술연구원 치아 임플란트 표면 친수화용 플라즈마 장치 및 치아 임플란트 표면 친수화 방법

Also Published As

Publication number Publication date
KR102342144B1 (ko) 2021-12-22
WO2016089082A1 (ko) 2016-06-09
EP3229552A1 (en) 2017-10-11
CN107211331A (zh) 2017-09-26
EP3229552A4 (en) 2017-10-25
US10299181B2 (en) 2019-05-21
US20170273126A1 (en) 2017-09-21
CN107211331B (zh) 2020-06-09
EP3229552B1 (en) 2022-02-02

Similar Documents

Publication Publication Date Title
KR102342144B1 (ko) 통신 시스템에서 분리된 tcp 연결을 설정하는 방법 및 장치와 이를 위한 핸드 오버 지원 방법 및 장치
JP7284789B2 (ja) シームレスのハンドオーバーをサポートする方法及びenb装置
US20220174759A1 (en) Method and apparatus for operating wireless communication system having separated mobility management and session management
CN112911726B (zh) 一种用户平面承载建立的方法及装置
JP7230827B2 (ja) 通信デバイス、インフラストラクチャ機器、無線通信ネットワークおよび方法
US8687592B2 (en) Method for switching session of user equipment in wireless communication system and system employing the same
US8259677B2 (en) Method and system for intra E-utran handover
JP5104260B2 (ja) 移動通信システム
KR100960115B1 (ko) 이동통신 시스템 및 그 터널관리방법
US10660006B2 (en) Bearer handover control device and control method
CN109428818B (zh) 处理分组路由的装置及方法
CN113473567A (zh) 支持数据传输的方法和设备
CN110149166B9 (zh) 传输控制方法、装置和系统
KR20150086620A (ko) Lte 망에서 최적 데이터 경로를 위한 mme와 로컬 서버, 이들 간 인터페이스 및 데이터 송수신 방법
JP2013513988A (ja) 中継ハンドオーバ制御
US8718016B2 (en) Mobile communication system, base station, and handover execution method
US20160127959A1 (en) Pdn gateway device and mobile communication method
JP2019525500A (ja) 通信リレー及びデータパケットをリダイレクトするための方法
KR20110053206A (ko) 이동 통신 시스템에서 핸드오버 데이터 무결성 수행 방법 및 그 시스템
CN114071606B (zh) 一种切换方法、装置及控制设备
KR102036687B1 (ko) 분산형 네트워크에서 데이터 패킷 경로 최적화 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right