KR20120067963A - 물리 네트워크들이 변경될 때 tcp 접속을 로밍하기 위한 시스템 및 방법 - Google Patents

물리 네트워크들이 변경될 때 tcp 접속을 로밍하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20120067963A
KR20120067963A KR1020110135750A KR20110135750A KR20120067963A KR 20120067963 A KR20120067963 A KR 20120067963A KR 1020110135750 A KR1020110135750 A KR 1020110135750A KR 20110135750 A KR20110135750 A KR 20110135750A KR 20120067963 A KR20120067963 A KR 20120067963A
Authority
KR
South Korea
Prior art keywords
roaming
physical
host
network
connection
Prior art date
Application number
KR1020110135750A
Other languages
English (en)
Inventor
최혁승
에이얼 톨레대노
오즈 슐로모
신성국
헌륜식
설지훈
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20120067963A publication Critical patent/KR20120067963A/ko

Links

Images

Classifications

    • 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
    • H04W36/0033Control or signalling for completing the hand-off for data sessions of end-to-end connection with transfer of context information
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • 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

Landscapes

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

Abstract

본 발명은 물리 네트워크들이 변경될 때 TCP 접속을 로밍하는 시스템이 제공되며, 이 시스템은 고유 IP 어드레스를 갖는 가상의 네트워크 인터페이스 카드(NIC)를 포함한다.

Description

물리 네트워크들이 변경될 때 TCP 접속을 로밍하기 위한 시스템 및 방법 {SYSTEM AND METHOD FOR ROAMING TCP CONNECTIONS BETWEEN CHANGING PHYSICAL NETWORKS}
본 발명은 무선 통신 분야에 관한 것이다. 보다 구체적으로, 본 발명은 네트워크 사이에서의 연속적인 로밍을 위한 방법 및 시스템에 관한 것이다.
현재의 휴대단말기들은 복수의 네트워크 인프라를 이용하여 통신을 행할 수 있다. 예를 들어, 랩톱은 유선 네트워크, Wi-Fi의 AP(Access Point) 및 블루투스 장치에 접속하거나, 모바일 폰과 같은 외부 장치를 이용한 테더링(tethering)을 이용하여 셀룰러 네트워크(예를 들어, 3G 및 GPRS 등)에 접속할 수 있다.
무선 통신에 있어서, 로밍(roaming)은 통신 서비스가 등록된 홈 로케이션 이외의 지역에서도 통신 서비스를 제공하는 것을 의미하는 일반적인 용어이다. 무선 네트워크에서 로밍 서비스는 사용자가 끊김없이 데이터를 전송할 수 있도록 한다. 일반적으로, 로밍은 다른 AP 또는 기지국에 접속하는 동안 동일 네트워크에 적용되어 물리적 라우트(Physical route)만이 유효하게 갱신되지만 IP 어드레스는 변경되지 않으며, 이러한 문제점들을 해결하기 위하여 종래 기술(예를 들어, 미국 특허 제6,091,951호)에서 많은 시도가 이루어졌지만, 아직까지 효과적인 대책이 되고 있지 못하다.
현재의 로밍 서비스들은 네트워크 인프라가 연속적인 로밍 서비스를 제공하는 것을 통해 사용자들에게 지속적인 네트워크 사용 기능을 제공한다. 따라서, 사용자가 위치를 이동하여 무선 네트워크가 변경되더라도 휴대단말기를 이용한 전화 연결이 가능하게 된다.
그런데, 현재의 로밍 솔루션은 기본적으로 인프라에 제한을 받고 있다. 예를 들어, 3G 통신망은 휴대단말기가 셀(cell) 사이를 이동할 때 연속적인 데이터 로밍 서비스를 제공하지만, 휴대단말기가 3G 통신망에서 Wi-Fi AP로 연결하려할 경우에는 연속적인 로밍 서비스의 제공은 불가능하게 된다. 종래의 경우, 전술한 예의 경우 기존의 통신 연결은 사용할 수 없게 되어 통신 연결은 다시 설정되어야 한다.
TCP 통신은 소스 IP(source IP), 소스 포트(Source Port), 목적지 IP(Destination IP) 및 목적지 포트(Destination Port)의 4-튜플(4-tuple)로 특정된다. 소스 IP의 어드레스는 정적 또는 동적으로 할당될 수도 있다. 상이한 네트워크에 대해 접속하게 되면 소스 IP 어드레스가 변경된다. 예를 들어, 휴대단말기는 이동통신망에 의해 할당된 IP 주소를 가지는데, 휴대단말기가 Wi-FI의 AP(Access Point)에 연결하려 할 경에 휴대단말기는 AP 장치에 의해 할당되는 새로운 IP 어드레스를 필요로 하게 된다. 장치의 소스 IP 어드레스가 변경될 경우, 기존의 4-튜플은 현재의 통신 연결을 인식할 수 없게 되기 때문에, 로컬 TCP 통신은 다시 구축될 필요가 있다.
끊겨진 통신 연결은 운영 애플리케이션에 의해 처리되거나 또는 사용자에 의해 처리될 수 있는데, 어떤 경우에 있어서는 끊어진 통신 연결을 재설정(재구축)하기 위해서 사용자가 해당 어플리케이션을 다시 시작하여야 한다.
종래 기술에서 알려져 있는 현대의 로밍 시스템들은 네트워크간 로밍 서비스를 제공하며, 이는 추상화된 물리 네트워크 계층을 이용한다. 그러므로, 모든 네트워크 트래픽은 먼저 추상화된 계층으로 직결되고, 그런 다음 이용가능한 물리 네트워크를 이용하여 데이터를 전송하게 된다.
미국 특허 출원 제2007/0204049호는 현존하는 통신 연결(또는 접속)이 손상될 경우의 애플리케이션들 사이에서 통신 연결을 유지하는 방법을 논의하고 있다. 제안된 방법은 통신 연결의 유지하기 위해 어플리케이션이 이용하는 가상의 소켓 소프트웨어 모듈을 제공한다. 그러나, 제안된 가상의 소켓 소프트웨어 모듈을 이용하여 개발되지 않았던 네트워크 어플리케이션에 대해서는 해결 방안이 되지 못한다.
IBM 로터스 모바일 접속 애플리케이션은 크로스-네트워크 로밍 옵션을 제공하고있지만(http://public.boulder.ibm.com/infocenter/lmc/v6r1/index.jsp?topic=/com.ibm.lmc.doc/wcwin27.htm 참조), 패킷 손실 및 증가된 라운드 트립 시간으로 인하여 저속의 네트워크 접속으로 스위칭할 때의 TCP 리셋 시나리오(TCP reset scenarios)를 명확하게 처리하지 않고 있다.
영국 포츠머스에 있는 포츠머스 대학교에서 발표한 논문("GPRS와 WiFi 네트워크 사이에서의 간단한 로밍 실현", M. Adda, J. Saunders 및 A. Peart 저)에서는 GPRS와 WiFi 네트워크 사이에서의 로밍 데이터 통신 연결을 위한 메커니즘을 기술하고 있다. 그러나, 이 논문에서 제안하고 있는 솔루션은 하드웨어 장치를 필요로 한다. 또한, 제한적인 새로운 물리 네트워크에 TCP 플로우 제어 윈도우(TCP flow control window)를 적용함으로써 고속의 네트워크(예를 들어, LAN 또는 Wi-Fi 등)에서 저속의 네트워크(3G 등)로 스위치 시의 TCP 리셋 시나리오를 명확하게 방지하고 있지는 않다.
"Freeze-TCP: 모바일 환경을 위한 진정한 최종 사용자간의 TCP 개선 메커니즘”이라는 기사("(Tom Goff, James Moronski 및 D. S. Phatak 저, IEEE INFOCOM 2000, pp. 1537-1545)에서는 다른 종래 기술의 접근법을 제공하며, 여기서는 접속 끊김이 발생하려는 순간(예를 들어, 신호 강도가 페이딩되는 경우)을 감지하기 위하여 송신측에 의존한다. 송신단이 수신하게 될 제로 윈도우 갱신(zero window update)이 송신되도록 감지는 정시에 행해져야 한다. 또한, 이 기사에 상세하게 기재된 접근법에서는 모바일 TCP만을 다루고 있으며 유선 또는 무선 로밍 시나리오를 포함하는 로밍에 대해서는 다룰 수가 없다. 유선 로밍 시나리오에서 통신이 갑자기 멈추기 되어 클라이언트가 접속을 해제하려고 하는 때를 검출하는 것은 불가능하다. 그러므로, 수신단은 결코 제로 윈도우 요청을 송신할 수가 없게 된다.
사용자가 접하게 되는 문제점은 도 1을 참조하여 다음의 예에 의해 쉽게 설명될 수 있다. 사용자는 FTP(TCP를 경유)를 이용하여 자신의 데스크톱 PC로부터 파일을 다운로드하기 위하여 휴대단말기를 이용한다. 최선의 네트워크 접속을 유지하고 모바일 오퍼레이터에 의한 데이터 과금을 절약하기 위하여, 사용자는 Wi-Fi AP를 통하여 홈 네트워크에 접속하는 것을 선택한다. 사용자는 자신의 집을 나가게 되어 접속 범위를 벗어나게 되므로 자신의 Wi-Fi 접속은 해제되어 버린다. 휴대단말기는 셀룰러 네트워크 공급사에 의해 제공된 3G 네트워크에 자동으로 접속하게 된다. 결과적으로, 네트워크 인터페이스 카드는 모바일 오퍼레이터 네트워크에 의해 제공된 IP 어드레스로 할당된다. 이러한 시나리오에서, 파일 전송은 정지될 것이며 처음부터 다시 개시되어야만 한다.
당업자가 명확히 아는 바와 같이, 전술한 문제는 중요한 것이며 이것을 다루기 위하여 많은 시도가 종래에 이루어져 왔지만, 현재까지 종래 기술은 전술한 문제를 해결하기 위하여, 보편적으로 실시될 수 있으며, 전용 기기를 필요로 하지 않고, 현존하는 애플리케이션들을 포함하여 애플리케이션들에 대하여 전적으로 명료하고 또한 임의의 소스 코드 또는 바이너리에 임의의 변형을 필요로 하지 않는 포괄적이고 편리한 방법 및 시스템을 제공하고 있지 못하고 있다.
따라서, 본 발명은 로밍으로 인한 중단없이 장치들 사이에서 장소에 상관없는 통신 레이어를 가능하게 하는 방법 및 시스템을 제공하고자 한다.
또한, 본 발명은 실시하기가 간단하고 특수한 플랫폼에 근거하여 애플리케이션을 개발할 필요가 없는 시스템 및 방법을 제공하고자 한다.
본 발명이 해결하고자 하는 과제 및 그에 따른 이점들은 설명을 진행해 나감에 따라서 명확해 질 것이다.
본 발명의 실시예는 물리 네트워크들이 변경될 때 TCP 접속을 로밍하기 위한 시스템에 관한 것으로, 고유 IP 어드레스를 갖는 가상 NIC(Network Interface Card)를 포함한다.
본 발명의 실시예에서, TCP 접속 4-튜플(소스 IP, 소스 포트, 목적지 IP, 목적지 포트)은 변경되지 않고 유지된다.
또한, 본 발명의 실시예에서, 가상 네트워크 인터페이스 카드는 TUN/TAP 장치의 형태를 갖는다.
본 발명의 다른 실시예에서 물리 네트워크들이 변경될 때 TCP 접속의 로밍 동안에 실질적으로 연속적인 서비스를 제공하기 위한 방법에 직결된다. 이 방법은 고유 IP 어드레스를 갖는 커널 레벨의 가상 NIC를 제공하는 단계와 애플리케이션들이 가상 IP 어드레스 엔드포인트를 이용하여 접속을 구축하도록 하는 단계를 포함한다.
본 발명의 다른 실시예에서, 제1 호스트는 제1 호스트의 가상 IP 어드레스에 구속되어 있으면서 제2 호스트에 대한 소켓을 작성하고, 그런 다음 상기 제2 호스트에 패킷을 송신하며, 상기 패킷을 상기 제1 호스트의 가상 NIC에 기입하는 단계와, 상기 제1 호스트의 가상 NIC에 의해 패킷을 적절한 물리 네트워크 인터페이스 카드를 통하여 송신하는 단계와, 패킷을 물리 네트워크를 통하여 전송하는 단계와, 패킷을 상기 제2 호스트의 가상 NIC에 기입하는 상기 제2 호스트의 물리 NIC에 의해 패킷을 수신하는 단계와, 애플리케이션에 의해 데이터를 판독하는 단계를 포함한다.
또한, 본 발명의 다른 실시예에서, 송출 데이터는, TCP 프로토콜의 슬라이딩 윈도우 크기를 0(zero)으로 설정하는 합성 메시지를 생성 및 송신함으로써, 네트워크 트랜지션 기간 동안 효과적으로 중단된다.
본 발명의 또 다른 실시예는 TCP 접속을 로밍하는 방법을 포함하며, 현재의 물리 링크가 다운링크인지를 판단하는 단계와, 송출 트래픽을 중단하는 단계와, 새로운 접속을 구축하는 단계와, 송출 TCP 트래픽을 재개하는 단계를 포함한다.
도 1은 종래 기술의 시스템에서 로밍 동안의 현존하는 문제점들을 나타내는 개략도.
도 2는 본 발명에 의해 이용되는 계층들을 나타내는 도면.
도 3은 TCP 메시지를 송신하는데 관련되는 시퀀스의 예를 나타내는 도면.
도 4는 네트워크 트랜지션 동안 시퀀스 플로우를 나타내는 개략도.
도 5는 TCP 접속을 공용 IP 어드레스에 로밍하는데 관련되는 시퀀스를 요약한 도면.
본 발명은 다수의 네트워크들에 대한 접속을 지원하는 장치상에서 애플리케이션들이 연속적인 네트워크 스트림을 갖도록 하는 인프라를 제공한다. 본 발명은 사용자가 한 종류의 네트워크(예를 들어, WiFi 네트워크) 상에서의 애플리케이션을 개시하고 이 동작을 다른 종류의 네트워크(예를 들어, 3G)를 이용하여 지속하는 것을 가능하게 한다. 본 발명에 따라서 동작할 때, 네트워크 트랜지션은 애플리케이션 및 사용자에게 연속적으로 이루어진다. 또한, 데이터 스트림은 물리 접속이 재구축시에 즉시 재개된다.
본 발명은 물리 네트워크들이 변경될 때 TCP 접속을 로밍하는 포괄적인 인프라를 제공한다. 또한, 본 발명은 현존하는 애플리케이션 바이너리에 있어서 임의의 변경을 필요로 하지 않는다. 본 발명의 따른 인프라를 이용하여, 상기 예에서 설명한 파일 전송은 사용자가 자신의 집에서 거리로 이동할 때 연속적으로 지속 될 것이다.
본 발명의 부가적인 이점으로는, TCP 플로우 제어 원도우를 새로운 물리 네트워크 제약에 적용시킴으로써, 고속 네트워크(LAN 또는 WiFi 등)에서 저속 네트워크(3G 등)로 절환될 때 TCP 리셋 시나리오가 명확하게 방지된다는 것이다.
본 발명의 다양한 스테이지들을 보다 상세하게 논의하기로 한다.
스테이지 1 - 접속 추상화
본 발명에 따르면, 커널 레벨의 가상 NIC가 생성되고 이것은 고유의 IP 어드레스를 갖는다. 애플리케이션들은 가상 IP 어드레스 엔드포인트를 이용하여 접속을 구축할 수도 있다. 이 메커니즘을 이용하여, TCP 접속 4-튜플(소스 IP, 소스 포트, 목적지 IP, 목적지 포트)은 변경되지 않고 유지된다. 그러므로, 애플리케이션 레벨의 TCP 접속은 하위의 물리 네트워크가 변경될 때 끊어지지 않게 될 것이다. 도 2에 이 구조를 개략적으로 도시한다.
가상 NIC(Virtual Network Interface Card)는 VPN 터널링에 이용되는 TUN/TAP 장치의 형태를 가질 수도 있다. 가상 NIC는 장치의 고정 IP 어드레스를 반영한다. NIC는 물리 네트워크(OSI 네트워크 모델에 따른 레이어 1)를 통하여 데이터를 전달하는 기능을 담당한다.
본 발명의 동작은 다음의 예로 또한 도시될 수 있다. 호스트 A는 A의 가상 IP 어드레스에 구속되어 있으면서 호스트 B에 대한 소켓을 작성한다. 호스트 A는 호스트 B에 패킷을 송신한다. 이 패킷의 소스 어드레스는 호스트 A의 가상 어드레스, 예를 들어, 10.0.0.1이 된다. 이 패킷의 목적지 어드레스는 호스트 B의 가상 어드레스, 예를 들어, 10.0.0.2 가 된다.
도 3은 TCP 메시지를 송신하는 시퀀스를 나타내며, 1-5의 단계들을 포함한다.
1. 패킷은 호스트 A의 가상 NIC 에 기입된다;
2. 호스트 A의 가상 NIC는 패킷을 적당한 물리 네트워크 인터페이스 카드를 통하여 송신한다;
3. 패킷은 물리 네트워크를 통하여 전송된다;
4. 호스트 B의 물리 NIC는 패킷을 수신하고 호스트 B의 가상 NIC에 이것을 기입한다;
5. 데이터가 애플리케이션에 의해 판독된다.
이 프로세스는 애플리케이션에 명확히 알려져 있다. 그러므로, 가상 NIC 어드레스 공간을 이용하여 네트워크 접속된 임의의 애플리케이션은 연속적인 TCP 로밍 성능을 즐길 수 있다.
스테이지 2 - 현존하는 TCP 접속 로밍
TCP 접속을 로밍하는 것은 다음의 1-4 단계로 이루어진다.
1. 현재 물리 링크가 다운링크인지를 판단;
2. 송출 트래픽을 중단;
3. 새로운 접속을 구축
4. 송출 TCP 트래픽 재개
물리 링크가 다운링크인지를 판단하는 것은 현재 통신 채널 상태를 변경할 때 통지를 제공하는 운영 시스템의 콜백(callback) 방법에 등록함으로써 이루어질 수도 있다.
TCP는 신뢰성 있는 프로토콜이다. 송신되는 바이트마다 합해져서 수신 종료시에 수신 확인이 전송된다. TCP는 네트워크 플로우 제어 메커니즘을 슬라이딩 윈도우 형태로 또한 제공한다. 윈도우 크기 값이 0인 것은 수신기가 임의의 데이터를 수신할 준비가 되어 있지 않음을 송신단에 명시하는 것이다. 송신단은 수신단이 슬라이딩 윈도 크기를 0보다 큰 값으로 변경될 때까지 송신하고 있는 데이터를 정지시킨다.
본 발명의 일 실시예에서, 슬라이딩 윈도우 특징은 네트워크 트랜지션 기간 동안 송출 데이터를 효과적으로 "정지"(pause)시키기 위하여 이용된다. 본 발명의 이 실시에에서, TCP 프로토콜 패킷이 네트워크 변경 기간 동안 가상 NIC에 의해 판독될 경우, 드라이버는 윈도우 크기를 0으로 설정하는 합성 메시지를 송신한다.
일단 새로운 접속이 구축되면, 가상 NIC는 초기 윈도우 크기를 정지된 접속에 송신한다.
네트워크 트랜지션 동안의 시퀀스 플로우를 도 4에 개략적으로 나타낸다. 이 시퀀스는 다음의 1-5 단계와 같다.
1. 애플리케이션은 TCP 패킷을 원격 장치에 송신한다.
2. 운영 시스템은 전달을 위해 이 패킷을 가상 NIC에 포워딩한다.
3. 가상 NIC는 현재 물리 네트워크가 이용가능하지 않은 것과 접속 윈도 크기를 0으로 설정하는 TCP 제어 메시지를 합성하는 것을 인지한다.
4. OS는 새로운 물리 접속이 이용가능한 것을 가상 NIC(콜백을 경유)에 통지한다.
5. 가상 NIC는 윈도 크기를 매체의 초기 크기로 설정하는 합성 TCP 제어 패킷을 송신한다.
이와 대칭적으로, 원격 엔드포인트는 송신하고 있는 패킷을 정지하기 위하여 동일 시퀀스를 따르게 된다. 끊겨진 링크의 검출은 프리젠스(presence) 서버 또는 킵-얼라이브(keep-alive) 메커니즘을 이용하여 달성될 수도 있다.
본 발명은 물리 접속이 복구될 때 데이터 전송이 지연될 수도 있는 TCP 재전송 타이아웃의 표준 위험 요소(standard pitfall)를 방지한다. 본 발명에 따라 동작할 때, 데이터 전송은 물리 접속이 재구축되는 순간 지속된다. 그러므로, 사용자는 상이한 네트워크 인프라(유선, WiFi, 3G 등)들 사이를 로밍하면서 거의 연속적인 스트리밍 애플리케이션을 이용할 수 있다.
공용 IP 어드레스로의 TCP 접속 로밍
상술한 이점들 이외에, 본 발명은 인터넷상의 공용 서버와 같은 가상 NIC 드라이버를 운영하지 않는 원격 엔드포인트에 물리-가상 게이트웨이 장치 수단을 경유하여 TCP 접속을 로밍할 수 있다. 가상 NIC 드라이버를 운영하지 않는 공용 서버들은 물리 IP 어드레스와 접속을 구축할 수 있다. 그러므로, 클라이언트 엔드포인트 IP 어드레스가 (네트워크 절환으로 인하여) 변경될 때 접속 4-튜플은 변하게 되어, 결과적으로 접속이 끊어지게 된다. 원격 공용 서버 엔드포인트의 경우, 본 발명의 일 실시예에서는, 가상 NIC를 운영하며, 클라이언트와 공용 서버 사이에 게이트웨어로서 동작하는 제3 장치가 이용된다. 클라이언트의 가상 NIC가 외부의 어드레스로 정해져 있는 패킷을 판독할 경우, 이것의 가상 어드레스 공간은 패킷을 게이트웨이 장치로 포워딩한다. 게이트웨이 장치는 공용 서버와의 접속을 구축하고 클라이언트로부터 서버로 데이터를 중계하게 되며, 그 역의 관계도 성립한다. 공용 서버와 게이트웨이 장치 사이의 접속은 클라이언트 장치 네트워크 스위치에 명확하게 알려져 있으며, 따라서, 공용 서버와의 접속은 끊기지 않는다.
상술한 시퀀스를 도 5에 도시한다. 도면에 나타낸 바와 같이, 이 구체적인 예에서, 모바일 폰은 비디오를 스트리밍하는 인터넷상의 서버에 접속된다. 모바일 폰은 TCP SYN 패킷을 10.0.0.1로부터 212.233.15.12로 송신한다. 가상 NIC는 이 패킷을 가상 어드레스 10.0.0.2로 포워딩하고, 이어서 212.233.15.12와의 접속이 구축된다. 이러한 시퀀스는 이 접속 상으로 송신되는 패킷마다 반복적으로 이루어지게 된다. 모바일 장치와 게이트웨이 장치 사이의 TCP 접속은 가상 NIC 접속에 대한 가상 NIC이며 크로스-네트워크(cross-network) 로밍을 지원한다.
본 발명의 예시적인 부가적 이점들은 다음과 같다.
1. 본 발명은 물리 접속이 단시간 동안 끊어지는 노이즈가 심한 네트워크 환경을 극복한다. 이것은 3G 네트워크에서는 매우 전형적인 환경이다.
2. 본 발명은 접속을 잃지 않고 가격과 대역폭을 다른 대체 형태로 최적화하면서 최선의 물리 네트워크 및 로밍 대체 형태들을 선택할 수 있도록 한다. 예를 들어, 3G 네트워크가 보다 양호한 대역폭을 제공할 수도 있기 때문에, 시스템은 WiFi를 통하여 3G 네트워크를 이용할 수도 있다.
3. 본 발명은 공용 IP 어드레스에 대한 TCP 접속의 로밍을 참조하여 상술한 바와 같이, 가상 NIC가 설치되지 않은 서버들에 대한 프록시로서 연속적인 로밍 인프라를 이용하는 것을 허용한다.
4. 본 발명은 익명성의 메커니즘으로서 게이트웨이 기능을 이용하는 것을 허용한다. 공용 서버는 서비스를 제공하고 있는 클라이언트 ID를 인지하지 않는다(TOR 프로젝트 - http://www.torproject.org/).
상기 모든 설명 및 예들은 단지 도시를 목적으로 제공되었으며 본 발명을 어떠한 방식으로도 제한하려는 것은 아니다. 본 발명이 다양한 시나리오에서의 로밍 솔루션을 제공하기 위하여 많은 상이한 방식으로 실시될 수 있음을 당업자는 쉽게 이해할 것이다. 본 발명은 로밍 동안에 접속 끊김을 방지하기 위하여 하나 이상의 가상 NIC를 이용하는 시스템 및 방법을 각각 및 모두 포함한다.

Claims (11)

  1. 물리 네트워크들이 변경될 때 TCP 접속을 로밍하기 위한 시스템에 있어서,
    고유 IP 어드레스를 갖는 가상의 네트워크 인터페이스 카드(Virtual NIC)를 포함하는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서,
    소스 IP, 소스 포트, 목적지 IP 및 목적지 포트의 TCP 접속 4-튜플(4-tuple)은 변경되지 않고 유지되는 것을 특징으로 하는 시스템.
  3. 제1항에 있어서,
    상기 가상의 네트워크 인터페이스 카드는 TUN/TAP 장치들의 형태를 갖는 것을 특징으로 하는 시스템.
  4. 제1항에 있어서,
    상기 시스템은 물리 접속이 단시간 동안 끊어지는 노이즈가 심한 네트워크 환경에서 이용되는 것을 특징으로 하는 시스템.
  5. 제1항에 있어서,
    접속을 잃지 않고 가격과 대역폭을 다른 대체 형태로 최적화하면서 최선의 물리 네트워크 및 로밍 대체 형태들을 선택하는 단계를 더 포함하는 것을 특징으로 하는 시스템.
  6. 제1항에 있어서,
    상기 연속적인 로밍 인프라는 가상 네트워크 인터페이스 카드가 설치되지 않은 서버들에 대한 프록시로 이용되는 것을 특징으로 하는 시스템.
  7. 제1항에 있어서, 게이트웨이 기능은 익명성의 메커니즘으로서 이용되고, 공용 서버는 서비스를 제공하고 있는 클라이언트 ID를 인지하지 않는 것을 특징으로 하는 시스템.
  8. 물리 네트워크들이 변경될 때 TCP 접속의 로밍 동안에 실질적으로 연속적인 서비스를 제공하는 방법에 있어서,
    고유 IP 어드레스를 갖는 커널 레벨의 가상 네트워크 인터페이스 카드를 제공하는 단계와 애플리케이션이 상기 가상 IP 어드레스 엔드포인트를 이용하여 접속을 구축하도록 하는 단계를 포함하는 것을 특징으로 하는 방법.
  9. 제8항에 있어서,
    제1 호스트는 상기 제1 호스트의 가상 IP 어드레스에 구속되어 있으면서 제2 호스트에 대한 소켓을 작성하여 상기 제2 호스트에 패킷을 송신하며,
    상기 패킷을 상기 제1 호스트의 가상 네트워크 인터페이스 카드에 기입하는 단계;
    상기 제1 호스트의 가상 네트워크 인터페이스 카드에 의해 패킷을 적절한 물리 네트워크 인터페이스 카드를 통하여 송신하는 단계;
    상기 패킷을 물리 네트워크를 통하여 전송하는 단계;
    상기 패킷을 상기 제2 호스트의 가상 네트워크 인터페이스 카드에 기입하는 상기 제2 호스트의 물리 네트워크 인터페이스 카드에 의해 상기 패킷을 수신하는 단계; 및
    애플리케이션에 의해 데이터를 판독하는 단계를 포함하는 것을 특징으로 하는 방법.
  10. 제8항에 있어서, TCP 프로토콜의 슬라이딩 윈도우 크기를 0으로 설정하는 합성 메시지를 생성하여 송신함으로써 네트워크 트랜지션(transition) 동안 송출 데이터를 효과적으로 정지시키는 것을 특징으로 하는 방법.
  11. TCP 접속을 로밍하는 방법에 있어서
    현재의 물리 링크가 다운링크인지를 판단하는 단계와,
    송출 트래픽을 중단하는 단계와,
    새로운 접속을 구축하는 단계와
    송출 TCP 트래픽을 재개하는 단계를 포함하는 것을 특징으로 하는 방법.
KR1020110135750A 2010-12-16 2011-12-15 물리 네트워크들이 변경될 때 tcp 접속을 로밍하기 위한 시스템 및 방법 KR20120067963A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/969,735 US8468225B2 (en) 2010-12-16 2010-12-16 Roaming TCP connections between changing physical networks
US12/969,735 2010-12-16

Publications (1)

Publication Number Publication Date
KR20120067963A true KR20120067963A (ko) 2012-06-26

Family

ID=45418421

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110135750A KR20120067963A (ko) 2010-12-16 2011-12-15 물리 네트워크들이 변경될 때 tcp 접속을 로밍하기 위한 시스템 및 방법

Country Status (3)

Country Link
US (1) US8468225B2 (ko)
EP (1) EP2466951A1 (ko)
KR (1) KR20120067963A (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103905302B (zh) * 2012-12-28 2017-06-06 上海格尔软件股份有限公司 一种在使用虚拟网卡的Windows主机上绑定源IP的方法
CN103535015B (zh) * 2013-05-24 2016-11-23 华为技术有限公司 公网地址资源的管理方法、端口控制协议服务器及客户端
US10237183B2 (en) * 2016-10-03 2019-03-19 Guavus, Inc. Detecting tethering in networks
CN106789756A (zh) * 2016-12-26 2017-05-31 腾讯科技(深圳)有限公司 一种基于操作系统内核网桥的数据发送方法和装置
US10749841B2 (en) * 2017-04-10 2020-08-18 At&T Intellectual Property I, L.P. Border gateway protocol multipath scaled network address translation system
CN107786536B (zh) * 2017-09-11 2022-05-13 成都阜特科技股份有限公司 一种tcp反向端口穿透方法及其系统
US10447656B2 (en) * 2017-11-02 2019-10-15 Vmware, Inc. Enforcing per-application VPN policies for applications delivered in virtualized computing environments
US10893023B2 (en) 2018-01-12 2021-01-12 Vmware, Inc. Per-application VPN in container based environments

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6091951A (en) 1997-05-14 2000-07-18 Telxon Corporation Seamless roaming among multiple networks
ES2225749T3 (es) * 2001-06-18 2005-03-16 Swisscom Mobile Ag Procedimiento y sistema para nodos ip moviles en redes heterogeneas.
US7225260B2 (en) 2001-09-28 2007-05-29 Symbol Technologies, Inc. Software method for maintaining connectivity between applications during communications by mobile computer terminals operable in wireless networks
WO2005076649A1 (en) * 2004-02-10 2005-08-18 Forward Information Technologies Sa Method and system for seamless handover of mobile devices in heterogenous networks
CN101053176B (zh) 2004-11-05 2011-07-27 松下电器产业株式会社 移动通信终端装置、其控制方法、通信系统及其漫游方法
US7596120B2 (en) 2004-12-07 2009-09-29 Electronics And Telecommunications Research Institute Multiple mode terminal supporting handoff between heterogeneous networks and handoff method thereof
CN101267430A (zh) * 2007-03-16 2008-09-17 世意法(北京)半导体研发有限责任公司 Mac与tcp协调方法

Also Published As

Publication number Publication date
EP2466951A1 (en) 2012-06-20
US20120158929A1 (en) 2012-06-21
US8468225B2 (en) 2013-06-18

Similar Documents

Publication Publication Date Title
KR20120067963A (ko) 물리 네트워크들이 변경될 때 tcp 접속을 로밍하기 위한 시스템 및 방법
JP5872649B2 (ja) 移動性管理のための擬似配線
JP4772083B2 (ja) リンク方式間の移行方法及びモバイル・コンピューティング装置
Ott et al. A disconnection-tolerant transport for drive-thru internet environments
US7620015B2 (en) Method and system for seamless handover of mobile devices in heterogeneous networks
US9253015B2 (en) Transparent proxy architecture for multi-path data connections
CA2360901C (en) Mobile communications network
JP2012175561A (ja) 伝送制御方法
JP2007324788A (ja) 移動端末及び通信方法
KR100828831B1 (ko) 무선 네트워크를 통한 인스턴트 메시징 및 인터넷 전화를위한 심리스 인터페이싱을 위한 통신 제공 방법,인터페이스 및 통신 관리 방법
CN106471847B (zh) 用于在无线电接入网络之间传送数据通信会话的方法和设备
KR101281502B1 (ko) 이동성 서비스를 제공하는 방법
US10939331B2 (en) Information centric network heterogenous wireless switching
WO2018006359A1 (zh) 一种本地网关之间建立隧道的方法及网关
WO2016154831A1 (zh) 一种实现传输控制协议tcp传输的方法及装置
JP2013165372A (ja) パケット経路制御装置
JP5339537B2 (ja) 不安定な無線リンクにおける切断耐性を高める無線端末、プロキシサーバ及びプログラム
Nikolaou et al. Wireless technologies convergence: results and experience
JP2011217199A (ja) 不安定な無線リンクにおける再送信の再開を早める無線端末、システム及びプログラム
Lee et al. Telecommunication & Network Research Lab School of Computer Science
Lee et al. Web agent supporting transport layer mobility
WO2009144528A1 (en) Method and system for dynamic roaming across wireless networks
Yu et al. Support of Node Mobility between Networks
EP1733590A1 (en) Method and system for seamless handover of mobile devices in heterogenous networks

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid