KR20140015641A - 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스 - Google Patents

멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스 Download PDF

Info

Publication number
KR20140015641A
KR20140015641A KR1020120058286A KR20120058286A KR20140015641A KR 20140015641 A KR20140015641 A KR 20140015641A KR 1020120058286 A KR1020120058286 A KR 1020120058286A KR 20120058286 A KR20120058286 A KR 20120058286A KR 20140015641 A KR20140015641 A KR 20140015641A
Authority
KR
South Korea
Prior art keywords
iip
dedicated
communication
layer
ticket
Prior art date
Application number
KR1020120058286A
Other languages
English (en)
Other versions
KR101387228B1 (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 KR1020120058286A priority Critical patent/KR101387228B1/ko
Publication of KR20140015641A publication Critical patent/KR20140015641A/ko
Application granted granted Critical
Publication of KR101387228B1 publication Critical patent/KR101387228B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/1829Arrangements specially adapted for the receiver end
    • H04L1/1848Time-out mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스가 제공된다. 제1 및 제2디바이스를 포함하는 시스템의 멀티 호밍 통신 방법은 제1 및 제2디바이스가 IP 기반으로 싱글 홈을 통해 통신하는 중, 제1 및 제2디바이스 간 상호 인식을 위해 제1 및 제2디바이스에서 제1 및 제2전용 티켓을 발급하여 서로 공유하는 단계와, 제1 및 제2디바이스가 제1 및 제2전용 티켓 및 복수 개의 IP들을 이용하여 멀티 호밍 통신을 수행하는 단계를 포함하며, 제1 및 제2전용 티켓은, 제1 및 제2디바이스의 상호 인식을 위한 티켓 발급을 위해 전송 계층과 IP 계층 사이에 형성되는 ID IP 계층에서 발급된다.

Description

멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스{Method and Device for Providing Multi-homing Communication}
본 발명은 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스에 관한 것으로, 보다 상세하게는 디바이스의 ID와 위치를 서로 다르게 표현하여 멀티 호밍 통신을 수행할 수 있는 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스에 관한 것이다.
스마트 폰, 태블릿 PC와 같은 이동 단말기의 증가와 함께, 사용자는 이동 단말기에 탑재된 3G 모듈 및 무선 랜 연결이 가능한 WiFi 모듈을 통해 인터넷을 용이하게 사용하고 있다. 또한, 통신 기술의 발달에 따라 최근에는 4G LTE 또는 WiBro의 보급이 확대됨에 따라 이동 단말기에서는 다양한 네트워크를 함께 이용할 수 있는 기능을 제공하고 있으며, ITU-T에서는 차세대 네트워크(NGN: Next Generation Network)를 규정하고, 유럽통신표준협회(ETSI-TISPAN: Telecommunication and Internet converged services and protocols network) 및 3GPP 에서는 All?IP 네트워크 환경의 Converged Network 에 관한 표준화가 진행되고 있다.
All-IP 네트워크는 IP를 기반으로 서로 다른 네트워크가 통합된 환경을 의미한다. 이런 IP 기반의 네트워크 구조는 서비스, 코어망(Core Network), 접속망(Access Network)을 분리함으로써, 다양한 접속망 환경에서 서비스와 전송 전달층을 분리하고, 효율적인 대역폭 사용을 통하여 통신 비용을 절감할 수 있는 특징을 갖는다.
그러나, Converged Network에서는 이동 단말기의 이동성 지원뿐만 아니라, 멀티호밍 환경에서 유연한 구조를 지니고 있어야 한다. 이동단말기에 있어서, 기존 인터넷 구조에서의 IP는 네트워크 상에서의 이동 단말기의 위치(Locator)와 이동 단말기를 식별하는 ID의 개념이 혼재하여 사용되고 있다. 따라서, IP의 위치와 식별을 위한 ID를 분리하면서 이동 단말기의 이동성과 멀티호밍 환경을 모두 지원할 수 있는 대안이 필요하다.
본 발명적 개념의 예시적 실시예에 따르면, 디바이스의 ID와 위치를 서로 다르게 표현하여 멀티 호밍 통신을 수행할 수 있는 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스를 제공하는 것이다.
본 발명적 개념의 다른 예시적 실시 예에 따르면, 제1 및 제2디바이스를 포함하는 시스템의 멀티 호밍 통신 방법은, 상기 제1 및 제2디바이스가 IP(Internet Protocol) 기반으로 싱글 홈을 통해 통신하는 중, 상기 제1 및 제2디바이스 간 상호 인식을 위해 상기 제1 및 제2디바이스에서 제1 및 제2전용 티켓을 발급하여 서로 공유하는 단계; 및 상기 제1 및 제2디바이스가 상기 제1 및 제2전용 티켓 및 복수 개의 IP들을 이용하여 멀티 호밍 통신을 수행하는 단계;를 포함하며, 상기 제1 및 제2전용 티켓은, 상기 제1 및 제2디바이스의 상호 인식을 위한 티켓 발급을 위해 전송 계층과 IP 계층 사이에 형성되는 ID IP(IIP: Identity Internet Protocol) 계층에서 발급된다.
한편, 본 발명적 개념의 다른 예시적 실시 예에 따르면, 외부 디바이스와 멀티 호밍 통신이 가능한 디바이스는, 상기 외부 디바이스와 IP 기반으로 싱글 홈을 통해 통신하는 중, 상기 외부 디바이스와의 상호 인식을 위해 상기 외부 디바이스에게 제2전용 티켓을 발급하고, 상기 외부 디바이스로부터 발급된 제1전용 티켓을 관리하는 티켓 관리부; 상기 발급된 제1 및 제2전용 티켓 및 복수 개의 IP들을 참조하여 상기 외부 디바이스로 전송할 ID IP(IIP: Identity Internet Protocol) 패킷을 생성하는 패킷 생성부; 및 상기 복수 개의 IP들을 이용하여 상기 멀티 호밍 통신을 수행하는 송수신부;를 포함하며, 상기 제1 및 제2전용 티켓은, 상기 디바이스 및 외부 디바이스의 상호 인식을 위한 티켓 발급을 위해 전송 계층과 IP 계층 사이에 형성되는 IIP 계층에서 발급된다.
본 발명적 개념의 하나 이상의 예시적 실시 예에 따르면, 멀티 호밍 통신을 수행하는 디바이스들은 종단간 IIP 계층을 두어 서로 통신할 수 있다. 즉, IIP 계층은 각 디바이스의 식별자로 사용되는 티켓을 서로 발급하여 공유하고, 각 디바이스의 위치로는 IP를 사용함으로써, 다수의 IP들을 하나의 ID로 유지하면서 멀티 호밍 서비스를 제공할 수 있도록 한다.
도 1은 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신이 가능한 시스템을 도시한 도면,
도 2는 본 발명의 개념적 실시예에 따른 IIP의 캡슐화 및 역캡슐화를 설명하기 위한 도면,
도 3은 도 2에 도시된 IIP 헤더의 포맷을 도시한 도면,
도 4는 제1디바이스가 멀티 호밍을 지원하는 경우 IIP 계층과 IP 계층 간의 바인딩 동작을 설명하기 위한 도면,
도 5는 본 발명적 개념의 예시적 실시예에 따른 데이터 분배 방법을 설명하기 위한 도면,
도 6은 본 발명적 개념의 예시적 다른 실시예에 따른 데이터 분배 방법을 설명하기 위한 도면,
도 7은 본 발명적 개념의 예시적 실시예에 따른 스테이트 머신을 설명하기 위한 도면,
도 8은 본 발명적 개념의 예시적 실시예에 따른 제1 및 제2디바이스를 포함하는 시스템의 멀티 호밍 통신 방법을 설명하기 위한 흐름도,
도 9는 도 8 중 S810단계를 자세히 설명하기 위한 흐름도,
도 10은 도 9의 S820단계에 따른 IP 추가 과정을 설명하기 위한 흐름도,
도 11은 도 8의 S830단계 내지 S860단계에 따른 티켓 제거 과정을 설명하기 위한 흐름도,
도 12는 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신 방법 중 호스트의 동작을 설명하기 위한 흐름도,
도 13은 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신 방법 중 클라이언트의 동작을 설명하기 위한 흐름도,
도 14는 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신 시스템이 적용된 이동통신 네트워크의 논리적인 구조를 도시한 도면,
도 15는 본 발명적 개념의 예시적 실시예에 따른 외부 디바이스와 멀티 호밍 통신이 가능한 디바이스를 도시한 블록도,
도 16은 본 발명적 개념의 예시적 실시예에 따른 IIP를 이용한 데이터 분배가 가능한 디바이스를 도시한 도면, 그리고,
도 17 내지 도 19는 본 발명의 다양한 실시예들에 따른 멀티 호밍 통신이 가능한 시스템을 도시한 도면이다.
이상의 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다.
본 명세서에서, 어떤 구성요소가 다른 구성요소 상에 있다고 언급되는 경우에 그것은 다른 구성요소 상에 직접 형성될 수 있거나 또는 그들 사이에 제 3의 구성요소가 개재될 수도 있다는 것을 의미한다.
본 명세서에서 제1, 제2 등의 용어가 구성요소들을 기술하기 위해서 사용된 경우, 이들 구성요소들이 이 같은 용어들에 의해서 한정되어서는 안 된다. 이들 용어들은 단지 어느 구성요소를 다른 구성요소와 구별시키기 위해서 사용되었을 뿐이다. 여기에 설명되고 예시되는 실시예들은 그것의 상보적인 실시예들도 포함한다.
또한, 제1 엘리먼트 (또는 구성요소)가 제2 엘리먼트(또는 구성요소) 상(ON)에서 동작 또는 실행된다고 언급될 때, 제1 엘리먼트(또는 구성요소)는 제2 엘리먼트(또는 구성요소)가 동작 또는 실행되는 환경에서 동작 또는 실행되거나 또는 제2 엘리먼트(또는 구성요소)와 직접 또는 간접적으로 상호 작용을 통해서 동작 또는 실행되는 것으로 이해되어야 할 것이다.
어떤 엘리먼트, 구성요소, 장치, 또는 시스템이 프로그램 또는 소프트웨어로 이루어진 구성요소를 포함한다고 언급되는 경우, 명시적인 언급이 없더라도, 그 엘리먼트, 구성요소, 장치, 또는 시스템은 그 프로그램 또는 소프트웨어가 실행 또는 동작하는데 필요한 하드웨어(예를 들면, 메모리, CPU 등)나 다른 프로그램 또는 소프트웨어(예를 들면 운영체제나 하드웨어를 구동하는데 필요한 드라이버 등)를 포함하는 것으로 이해되어야 할 것이다.
또한 어떤 엘리먼트(또는 구성요소)가 구현됨에 있어서 특별한 언급이 없다면, 그 엘리먼트(또는 구성요소)는 소프트웨어, 하드웨어, 또는 소프트웨어 및 하드웨어 어떤 형태로도 구현될 수 있는 것으로 이해되어야 할 것이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다(comprises)' 및/또는 '포함하는(comprising)'은 언급된 구성요소는 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
이하, 도면을 참조하여 본 발명적 개념을 상세히 설명하도록 한다. 아래의 특정 실시예들을 기술하는데 있어서, 여러 가지의 특정적인 내용들은 발명적 개념을 더 구체적으로 설명하고 이해를 돕기 위해 작성되었다. 하지만 본 발명적 개념을 이해할 수 있을 정도로 이 분야의 지식을 갖고 있는 독자는 이러한 여러 가지의 특정적인 내용들이 없어도 사용될 수 있다는 것을 인지할 수 있다. 어떤 경우에는, 발명적 개념을 기술하는 데 있어서 흔히 알려졌으면서 발명과 크게 관련 없는 부분들은 본 발명적 개념을 설명하는 데 있어 별 이유 없이 혼돈이 오는 것을 막기 위해 기술하지 않음을 미리 언급해 둔다.
설명의 목적을 위해서, ‘IIP 계층에서 발급한다, IIP 계층에 존재한다’ 등의 IIP 계층과 관련된 동작은 ‘IIP 계층에서 다루는/연관된/동작하는 프로그램 또는 소프트웨어에 의해 취급되거나 또는 수행되는 것’을 의미한다.
도 1은 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신이 가능한 시스템을 도시한 도면이다.
도 1에 예시적으로 도시된 멀티 호밍 통신이 가능한 시스템은 제1 및 제2디바이스들(100, 200)이 다수의 IP(Internet Protocol) 및 다수의 네트워크를 통해 종단간 데이터 전송이 가능한 멀티 호밍 통신을 지원한다. 제1 및 제2디바이스들(100, 200)은 각각 이동 단말기와 호스트로서 동작하거나, 클라이언트와 서버로서 동작하거나, 모두 이동 단말기로서 동작할 수 있다. 또한, 제1 및 제2디바이스들(100, 200)은 상호 동일한 구성의 디바이스일 수도 있으며, 이하에서는 설명의 편의를 위해 제1디바이스(100)는 데이터를 송신하는 송신측이고, 제2디바이스(200)는 데이터를 수신하는 수신측인 경우를 예로 들어 설명한다. 또한, 이하에서는 제1디바이스(100)는 클라이언트이고, 제2디바이스(200)는 서버로 동작하는 경우를 예로 들어 설명하나, 이에 한정되지는 않는다.
본 발명적 개념의 실시예에 따르면, 멀티 호밍 통신을 위해서 End-to-End 간에 임시의 ID로 사용될 전용 티켓을 발급하여 제1 및 제2디바이스들(100, 200)의 ID를 각각 다르게 유지할 수 있다. 이를 통해, 제1디바이스(100)는 하나의 전용 티켓에 다수의 IP들을 바인딩할 수 있으며, 전용 티켓은 IP 변경을 추적할 수 있는 이동성을 지원할 수 있다.
자세히 설명하면, 제1디바이스(100)는 멀티 호밍 환경에서 데이터를 전송할 때, 제1디바이스(100)의 위치와 제1디바이스(100)를 식별하는 ID를 IP 어드레스 하나만을 사용하여 표기하는 대신, 각각 상이한 방식으로 표기할 수 있다. 이를 위해, 제1디바이스(100)는 제2디바이스(200)와 상호 인식이 가능한 ID인 전용 티켓을 생성하고, 전용 티켓 및 다수의 IP들을 이용하여 멀티 호밍 기반의 IP 통신을 할 수 있다.
즉, 제1디바이스(100)는 IIP(Identity Internet Protocol)를 이용하여, 제2디바이스(200)가 제1디바이스(100)를 식별하도록 하는 ID로서 제2전용 티켓을 발급하고, 제1디바이스(100)의 현재 위치를 나타내는 정보로서 IP 어드레스를 사용할 수 있다. 또한, 제2디바이스(200)는 IIP를 이용하여, 제1디바이스(100)가 제2디바이스(200)를 식별하도록 하는 제1전용 티켓을 발급하며, 제2디바이스(200)의 현재 위치를 나타내는 정보로서 제2디바이스(200)에 이미 할당된 IP 어드레스를 사용할 수 있다.
식별자 역할을 하는 전용 티켓은 디바이스와 호스트 간 또는 클라이언트와 서버 간 상호 인식을 위해 발급되는 유일한(unique) pair key값으로서, 예를 들어, 제1 및 제2전용 티켓들은 제1 및 제2디바이스들(100, 200)이 서로 공유한다. 제1 및 제2전용 티켓은 IP 기반에서는 32bit로 표현되고, IPv6에서는 64bit로 표현될 수 있다.
티켓은 상기와 같이 기존의 할당된 IP를 활용하여 표현할 수도 있으며, Text 또는 Byte 등의 디바이스와 호스트 간 또는 클라이언트와 서버 간의 인식이 가능한 다른 데이터 형태로도 표현이 가능하다. 또한, 제1 및 제2전용 티켓은 IIP 통신이 시작될 때 제1 및 제2디바이스들(100, 200) 간의 상호 인식을 위해 사용되며, 제1 및 제2디바이스들(100, 200)의 상태에 따라 발급 또는 해제되는 라이프 사이클을 갖는다. 라이프 사이클에 대해서는 후술할 스테이트 머신(State Machine) 및 도 7을 참조하여 자세히 설명한다.
또한, 위치를 나타내는 IP 어드레스는 IP 계층에서 표현되는 32bit의 어드레스 또는 IPv6에서는 64bit의 어드레스이다. 후술할 IIP 패킷의 IIP 헤더에 [표 1]의 ‘Control of IP’를 위한 표시가 있으면, IIP 패킷의 데이터 영역에는 추가/삭제/수정할 IP 및 멀티 호밍에 사용되는 IP 리스트가 기재될 수 있다.
도 1을 참조하면, 제1 및 제2디바이스들(100, 200)은 물리 계층(Physical Layer), IP 계층(Internet Protocol Layer), ID IP 계층(Identity IP Layer), 전송 계층(Transport Layer) 및 응용 계층(Applications Layer)을 포함한다. 제1 및 제2디바이스들(100, 200)의 계층은 동일한 구성을 가지므로, 이하에서는 제1디바이스(100)를 예로 들어 설명한다.
물리 계층은 상위 계층의 프로토콜(예를 들어, 전송 계층의 TCP)이 로컬 네트워크에 접근하기 위해 사용하는 인터페이스 역할을 하며, WiFi 모듈, WCDMA 모듈, WiBro 모듈 등 다양한 유무선 통신 모듈을 예로 들 수 있다.
IP 계층은 논리적 장비의 주소를 지정하거나, 네트워크 상의 패킷 전송을 제어하거나, 데이터 패키징, 조작 및 전달, 라우팅과 같은 작업을 수행한다.
IIP 계층은 IP 계층과 전송 계층 사이에 형성되며, 제1 및 제2디바이스들(100, 200)이 통신할 때 상호 인식을 위한 전용 티켓을 상대측에게 발급할 수 있다. 즉, 제1디바이스(100)는 제2디바이스(200)의 IIP 계층으로부터 제1전용 티켓을 발급받으며, 제2디바이스(200)는 제1디바이스(100)의 IIP 계층으로부터 제2전용 티켓을 발급받아 서로 공유한다. 또한, IIP 계층은 제1디바이스(100)의 상태를 파악하기 위한 자체 스테이트 머신을 가지고 있다.
IIP의 역할은 크게 다음 네 가지로 구분된다.
첫째, IIP는 디바이스를 식별할 수 있는 전용 티켓을 발급할 수 있다. 이를 위해, 호스트 간 IIP 통신을 하기 위해서는 호스트 별로 IIP가 설치되어야 하며, 호스트 간 pair 형태의 유니크한 전용 티켓을 생성하여야 한다. 호스트는 제1 또는 제2디바이스(100 또는 200)일 수 있다.
둘째, IIP는 호스트 간 멀티 호밍 환경에서 사용할 IP를 IIP 계층에 존재하는 IP 리스트에 추가하거나, 삭제하거나 또는 수정할 수 있다. 예를 들어, IP를 추가하는 경우, IIP 계층은 이를 상위 계층에 알리고 ‘ADD’라는 프리미티브(Primitive)를 통해 IP 리스트에 IP를 추가할 수 있다.
셋째, IIP는 복수 개의 IP들을 통해 데이터를 나누어 수신측으로 전송할 수 있는 프리미티브를 상위 계층(예를 들어, 응용 계층)에 제공할 수 있다.
넷째, IIP는 호스트 간 IIP 패킷 교환 시 Latency 및 가용 대역폭을 통하여 네트워크를 사용하는 경우, 네트워크 사용에 대한 측정값을 상위 계층에게 제공할 수 있다.
전송 계층은 네트워크 양단의 송수신 호스트 사이에서 신뢰성 있는 전송기능을 제공하는, 예를 들어, TCP, UDP를 사용한다.
응용 계층은 사용자가 네트워크 환경에 접속할 수 있도록 응용 인터페이스를 제공하며, OSI 모델에서의 세션, 표현, 응용 계층을 통합한 개념으로서, FTP, SMTP, SNMP 등이 사용된다.
도 2는 본 발명의 개념적 실시예에 따른 IIP의 캡슐화(encapsulation) 및 역캡슐화(decapsulation)를 설명하기 위한 도면이다.
도 2에 도시된 IIP의 캡슐화와 역캡슐화는 OSI 7계층 또는 TCP/IP계층 구조에 적용될 수 있다. 또한, 송신측인 제1디바이스(100)에서 캡슐화 과정을 수행하면, 역캡슐화 과정은 수신측인 제2디바이스(200)에서 수행된다.
먼저, 캡슐화 과정에 대해 설명한다. 전송 계층에서 사용되는 프로토콜이 TCP인 경우, 응용 계층은 패킷을 하위 계층(예를 들어, 전송 계층)에게 넘기면서 어떤 어플리케이션에게 패킷을 보내야 하는지를 적은 어플리케이션 헤더와 데이터를 전송 계층에게 알려준다. 전송 계층은 어플리케이션 헤더와 데이터로 이루어진 TCP 데이터에 TCP 헤더를 추가하여 TCP 세그먼트를 생성한 후 TCP 세그먼트를 IIP 계층에게 전달한다. IIP 계층은 TCP 세그먼트에 IIP 헤더를 추가하여 IIP 페이로드를 생성한 후 IIP 페이로드를 IP 계층에게 전달한다. IP 계층은 IIP 페이로드에 IP 헤더를 추가하여 IP 패킷을 생성하고, 생성된 IP 패킷을 제2디바이스(200)에게 물리 계층을 통해 전송한다.
IP 패킷을 수신한 제2디바이스(200)는 역캡슐화 과정을 통해 최종적으로 TCP 데이터를 해당하는 어플리케이션에게 전달한다. 제2디바이스(200)는 수신된 IIP 패킷으로부터 IIP 페이로드와 IP 헤더를 분류하고, IIP 페이로드로부터 IIP 헤더와 상기 TCP 세그먼트를 분류하며, TCP 세그먼트로부터 TCP 헤더와 상기 TCP 데이터를 분류하는 역캡슐화 과정을 수행한다. 역캡슐화 과정은 캡슐화 과정의 역과정에 해당하므로 상세한 설명은 생략한다.
도 3은 도 2에 도시된 IIP 헤더의 포맷을 도시한 도면이다.
여기에서는 티켓을 통한 멀티호밍을 지원하기 위한 최소한의 정보만을 헤더에 담아서 설명한다. IIP 계층은 멀티호밍을 지원하고 이를 통해서 트래픽 로드밸런싱이나 여러 네트워크를 통한 동시 전달 및 수신이 가능한 기능을 담을 수 있으므로 이를 위해 필요한 정보를 헤더에 추가 할 수 있다.
도 3을 참조하면, 본 발명적 개념의 예시적 실시예에 따른 IIP 헤더는 버전 필드(Version of IIP), 인디케이션 필드(Indication), 서비스 레벨 필드(Service Level), IP 개수 필드(Number of IP), 체크섬(checksum) 필드, IP 필드(IP in Use), 클라이언트 ID 필드(Client ID) 및 호스트 ID 필드(Host ID)를 포함한다.
IIP 헤더는 IIP 계층에서 가지고 있어야 할 기능을 위한 최소한의 필요한 정보를 기재한다. 자세히 설명하면, 버전 필드에는 IIP 계층의 버전에 대한 정보, 인디케이션 필드에는 IIP 통신의 사용 가능 유무에 대한 정보가 기재된다. 인디케이션 필드에 flag=1이 기재되어 있으면, IIP이 사용이 가능하며, flag=0이 기재되어 있으면 IIP를 지원하지 않음을 의미한다. 이는 IIP 패킷을 서로 주고 받는 과정에서 IIP 기능의 지원 여부를 확인하기 위함이고, 또한 이렇게 함으로써 불필요한 오버헤드를 방지할 수 있다. 서비스 레벨 필드에서는 IIP를 통해 제공할 수 있는 서비스를 H(high), M(medium), L(low)와 같이 레벨을 나누어 관리할 수 있는 정보를 담고 있으며, 이는 네트워크 데이터를 많이 필요로 하는 측면, 또는 인터랙티브하게 서로 데이터를 주고 받아야 하는 측면 등의 서비스 속성에 대한 측면을 등급으로 나누어서 효율적인 네트워크 사용을 지원할 수 있는 구조를 담고 있다. IP 개수 필드에는 하나의 호스트(즉, 제1디바이스(100))에서 지원하는 IP의 개수가 기재된다. 도 3에서는 하나의 ID(즉, 하나의 전용 티켓) 당 사용 가능한 최대 IP 개수를 8bit인 32개를 예로 들었다. IP 필드에는 사용할 IP 어드레스가 기재된다. 또한, 클라이언트 ID 필드에는 수신측 호스트(즉, 제2디바이스(200))에 발급된 제2전용 티켓이 기재되며, 호스트 ID 필드에는 수신측 호스트에서 발급된 제2전용 티켓이 기재된다.
한편, 본 발명적 개념의 예시적 실시예에 따르면 IIP 패킷은 다음 [표 1]에서와 같이 두 가지 타입으로 구분된다.
IIP Packet Type Description Primitives Description
Control




Control of Ticket

CREATE IIP 통신 시작 시 호스트 간의 티켓을 생성하고 서로 확인
MLDIFY IIP 통신 중 기존의 전용 티켓을 수정
REMOVE 발급된 전용 티켓을 제거하고 IIP 통신 종료

Control of IP
ADD 새로 통신 Path 추가를 위한 IP 추가
UPDATE 통신 가능한 IP List 수정 (추가/삭제/편집)
DELETE 해당 IP 에 대한 통신 Path 삭제
DATA


Data of IP
ADD 새로 통신 Path 추가를 위한 IP 추가
UPDATE 통신 가능한 IP List 수정 (추가/삭제/편집)
DELETE 해당 IP 에 대한 통신 Path 삭제
이는 아래 후술할 IIP 통신 이전과 IIP 통신 중인 상태를 각각 Control 과 Data 속성을 갖는 패킷을 구별하여 나눈 것이다.
제1디바이스(100)는 후술할 아이들 상태 또는 개시 상태에서 상위 계층과의 인터렉션 없이 IIP 계층에서 Control 타입의 패킷을 만들어 송수신한다. 또한, 제2디바이스(200)는 트랜잭션 상태에서는 상위 계층의 패킷에 IIP 헤더를 캡슐화하여 IIP 계층에서 데이터 타입의 패킷을 만들어 송수신한다.
도 4는 제1디바이스가 멀티 호밍을 지원하는 경우 IIP 계층과 IP 계층 간의 바인딩 동작을 설명하기 위한 도면이다.
도 4에서, IP_C1과 IP_C2는 제1디바이스(100)의 IP 계층에서 멀티 호밍에 사용 가능한 IP이고, S.Location은 데이터를 전송하는 송신측의 위치를 의미하며, D.Location은 데이터를 수신하는 수신측의 위치를 의미한다. 도 4를 참조하면, IIP 통신이 개시된 후, 즉, 제1 및 제2디바이스들(100, 200) 간 ID로 사용될 전용 티켓들이 발급된 후, IIP 계층은 통신에 사용되는 특정 IP를 통신 ID로서 바인딩하지 않고, 발급된 전용 티켓들을 통신 ID로서 바인딩할 수 있다. 즉, 기존의 경우, 디바이스의 응용 계층과 전송 계층은 통신에 사용하는 IP(IP_C1)를 ID로서 사용하고, 제1디바이스(100)의 위치 역시 IP(IP_C1)를 사용하고 있다.
반면, 본 실시예에서, 제1디바이스(100)의 응용 계층, 전송 계층 및 IIP 계층은 제1디바이스(100)를 식별하기 위한 클라이언트 ID로서 제1전용 티켓(T1)을 사용한다. 또한, IIP 계층은 복수 개의 IP들(IP_C1, IP_C2)을 사용하여 멀티 호밍을 수행하는 경우, 제1디바이스(100)의 위치(S.Location)에 대한 정보로서 각각 IP_C1과 IP_C2를 사용한다. 또한, 제1디바이스(100)는 데이터를 전송할 목적지인 제2디바이스(200)의 위치(D.Location)에 대한 정보로서 IP_S를 사용한다.
도 5는 본 발명적 개념의 예시적 실시예에 따른 데이터 분배 방법을 설명하기 위한 도면이다.
도 5를 참조하면, 제1 및 제2디바이스들(100, 200)은 두 개의 IP들을 이용하여 IIP기반의 멀티 호밍 통신을 할 수 있다. 이러한 경우, 제1디바이스(100)의 전송 계층은 전송할 데이터(예를 들어, TCP 데이터)를 IIP 계층에게 제공한다. 제1디바이스(100)의 IIP 계층은 제공받은 데이터를 IIP 계층에서 복수 개의 IP들의 개수에 맞게 분배(TCP Data(1), TCP Data(2))하는 Fragmentation 과정을 수행한다. 또는, 제1디바이스(100)의 전송계층이 복수 개의 IP들의 개수에 맞게 데이터를 분배하고, 분배된 데이터를 각각 IIP 계층에게 제공할 수도 있다.
제1디바이스(100)는 IIP 계층에서 분배된 복수 개의 데이터들에게 동일한 제2전용 티켓을 제1디바이스(100)의 ID로서 부여(또는 바인딩)하고, 제2전용 티켓을 클라이언트 ID 필드에 기재한다. 그리고, 제1디바이스(100)는 바인딩된 복수 개의 데이터들에게 IP 헤더를 캡슐화하여 IIP 패킷을 생성한다. 이로써, 제1디바이스(100)는 IIP 패킷들(IIP Packet(1), IIP Packet(2))을 IP 별로 생성하고, 각 IIP 패킷(IIP Packet(1), IIP Packet(2))을 해당 IP(IP_C1과 IP_C2)를 이용하여 제2디바이스(200)에게 멀티 호밍 방식으로 전송한다. IP_S는 제2디바이스(200)가 사용하는 IP 어드레스이다.
IIP 패킷들(Packet1, Packet2)을 수신한 제2디바이스(200)는 IIP 계층에서 캡슐화의 역과정인 역캡슐화를 수행하고, Reasembly 과정을 수행하여 TCP 데이터를 만든 후, TCP 데이터를 IIP 계층의 상위 계층으로 전달한다. 즉, 제2디바이스(200)는 복수 개의 IIP 패킷들(IIP Packet(1), IIP Packet(2))의 클라이언트 ID 필드를 확인하여 동일한 클라이언트 ID, 즉, 동일한 제2전용 티켓을 가지는 IIP 패킷들을 조립하여 하나의 TCP 데이터를 만든다.
도 6은 본 발명적 개념의 예시적 다른 실시예에 따른 데이터 분배 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 제1 및 제2디바이스들(100, 200)은 두 개의 IP들을 이용하여 IIP기반의 멀티 호밍 통신을 할 수 있다. 제1디바이스(100)의 전송 계층은 전송할 두 개의 TCP 데이터들(예를 들어, TCP Data(1), TCP Data(2))을 IIP 계층에게 제공한다. TCP 데이터들(예를 들어, TCP Data(1), TCP Data(2))은 서로 다른 데이터로서, IIP 계층은 프래그맨테이션 과정은 생략하고, 캡슐화 과정만 수행한다. 즉, 제1디바이스(100)는 IIP 계층에서 TCP 데이터들(TCP Data(1), TCP Data(2))에 동일한 클라이언트 ID인 제2전용 티켓(T2)을 바인딩하고, IP 헤더를 캡슐화하여 IIP 패킷들을 생성한다. 제1디바이스(100)는 IP 별로 생성된 IIP 패킷들(IIP Packet(1), IIP Packet(2))을 해당 IP(IP_C1과 IP_C2)를 이용하여 제2디바이스(200)에게 전송한다.
IIP 패킷들(Packet1, Packet2)을 수신한 제2디바이스(200)는 IIP 계층에서 역캡슐화를 수행하여 두 개의 TCP 데이터들(TCP Data(1), TCP Data(2))을 만든 후, IIP 계층의 상위 계층으로 전달한다.
도 7은 본 발명적 개념의 예시적 실시예에 따른 스테이트 머신을 설명하기 위한 도면이다.
도 7에 도시된 스테이트 머신은 IIP 계층에 존재하며, IIP 컨트롤 블록(미도시, 예를 들어, 후술할 도 15의 블록) 같은 구조체를 통해 IIP 계층의 상태 또는 제1디바이스(100)의 상태를 파악하고, 상위 계층에게 IIP 계층의 상태 또는 제1디바이스(100)의 상태에 대한 정보를 전달할 수 있다. 호스트 간, 즉, 제1 및 제2디바이스들(100, 200)은 전용 티켓들을 통해 연결이 이루어진 후, 복수 개의 IP들을 지원하는 멀티 호밍 구조를 가지므로, 제1 및 제2디바이스들(100, 200)은 도 7에 도시된 바와 같이 커넥션 기반의 스테이트 머신을 두어 통신하여야 한다.
도 7을 참조하면, 제1 및 제2디바이스들(100, 200)은 아이들(Idle) 상태, 개시(Initiation) 상태, 개시 애크(Initiation Ack) 상태, 트랜잭션(Transaction) 상태, 클로즈(Close) 상태 및 클로즈 애크(Close Ack) 상태를 포함한다. 개시 상태는 제1 및 제2디바이스들(100, 200)이 IIP 통신이 가능하면, 상호 인식을 위한 제1전용티켓 및 제2전용 티켓들의 발급을 요청하는 상태, 개시 애크 상태는 IIP 계층에서 제1전용티켓 및 제2전용 티켓들을 발급 및 수락하는 상태, 트랜잭션 상태는 제1전용티켓 및 제2전용 티켓, 그리고, 복수 개의 IP들을 이용하여 IIP 통신을 수행하는 상태, 클로즈 상태는 IIP 통신이 중단되어 제1 및 제2전용 티켓들을 제거하는 상태이다.
제1 및 제2디바이스들(100, 200)이 가지는 IIP와 관련된 상태는 동일하므로, 이하에서는 제1디바이스(100)의 스테이트 머신을 예로 들어 설명한다.
자세히 설명하면, 아이들 상태는 제1디바이스(100)에서 제2디바이스(200)로 싱글 홈을 통해 IP 통신을 수행하는 상태이다(S71). 아이들 상태에서, IIP 기반의 멀티 호밍 통신을 개시하려는 경우, 스테이트 머신은 현재 상태를 개시 상태로 전환하고, 제1디바이스(100)는 제2디바이스(200)에게 IIP 통신의 가능 여부를 문의한다(S72). S72단계에서, 제1디바이스(100)는 IIP간 통신이 가능한지(즉, IIP가 설치되어 있는지)를 묻기 위한 IIP Initiation Packet을 전송할 수 있다.
제2디바이스(200)로부터 수신된 IP 패킷의 IIP 헤더 중 인디케이션 필드에 1이 기재되어 있으면, 제1디바이스(100)는 제2디바이스(200)도 IIP 통신이 가능한 것으로 판단하고, 제2디바이스(200)에게 제1전용 티켓의 발급을 요청할 수 있다(S73). 제1전용 티켓의 발급 요청과 함께, 스테이트 머신은 제1디바이스(100)의 상태를 개시 애크 상태로 판단한다. 개시 애크 상태에서, 제1 및 제2디바이스들(100, 200) 간 전용 티켓들의 발급 및 수락이 시행되면(S74), 스테이트 머신은 제1디바이스(100)의 상태를 트랜잭션 상태로 전환한다(S75). 트랜잭션 상태에서, 제1디바이스(100)는 제2디바이스(200)와 전용 티켓 기반의 멀티 호밍 통신을 수행한다(S75). 제1디바이스(100) 또는 제2디바이스(200) 중 하나로부터 IIP 통신의 중단이 요청되거나 IIP 통신이 강제로 종료되면(S76), 스테이트 머신은 클로즈 상태로 전환하고, 제1 및 제2디바이스들(100, 200)은 발급한 제1 및 제2전용 티켓들을 삭제한다(S77). 이로써, 스테이트 머신은 제1디바이스(100)의 상태를 클로즈 애크 상태로 전환하고, 다시 일반 IP 통신을 수행할 수 있다.
도 8은 본 발명적 개념의 예시적 실시예에 따른 제1 및 제2디바이스를 포함하는 시스템의 멀티 호밍 통신 방법을 설명하기 위한 흐름도이다.
도 8을 참조하면, 제1 및 제2디바이스들(100, 200)이 IP 기반으로 싱글 홈을 통해 통신하는 중, 제1 및 제2디바이스들(100, 200) 간 상호 인식을 위해 제1 및 제2디바이스들(100, 200)에서 제1 및 제2전용 티켓들을 발급하여 서로 공유한다(S810). 제1 및 제2전용 티켓은, 제1 및 제2디바이스들(100, 200)의 상호 인식을 위한 티켓 발급을 위해 전송 계층과 IP 계층 사이에 형성되는 IIP 계층에서 발급된다.
제1 및 제2디바이스들(100, 200)은 발급된 제1 및 제2전용 티켓들, 그리고, 복수 개의 IP들을 이용하여 IIP 기반의 멀티 호밍 통신(이하, ‘IIP 통신’이라 한다)을 수행한다(S820). 복수 개의 IP들은 물리 계층에서 지원하는 다양한 통신 모듈에서 사용되는 IP이다.
제1 및 제2디바이스들(100, 200)이 IIP 통신을 수행하는 중, IIP 종료 이벤트 또는 강제 종료 상황이 발생하면(S830), 제1디바이스(100)는 제2디바이스(200)에게 제1전용 티켓의 제거를 요청한다(S840).
제2디바이스(200)는 제1디바이스(100)의 요청에 의해, 제1전용 티켓에 할당된 신규 IP에 대한 리소스를 회수하고, 신규 IP를 제2디바이스(200)의 IIP 계층에 존재하는 IP 리스트로부터 제거한다(S850). 신규 IP는 일반 IP 통신을 하는 중 IIP 통신을 위해 추가된 IP이다.
또한, 제1디바이스(100)는 제1디바이스의 IIP 계층에 존재하는 IP 리스트로부터 신규 IP를 제거하고, S810단계에서 발급한 제2전용 티켓을 제거하며, 제2디바이스는 제1전용 티켓을 제거한다(S860). 이후, 제1 및 제2디바이스들(100, 200)은 S810단계의 IIP 통신 이전에 사용한 IP를 이용한 일반 IP 통신을 수행하거나 또는 새로 재개할 IP를 이용하여 멀티 호밍 통신을 수행할 수 있다.
도 9는 도 8 중 S810단계를 자세히 설명하기 위한 흐름도이다.
도 9를 참조하면, 제1 및 제2디바이스들(100, 200)은 아이들 상태에서 IP 기반의 패킷 통신을 수행한다(S910, S915).
제1디바이스(100)가 IIP 기반의 멀티 호밍 통신을 개시하려는 경우, 제1디바이스(100)는 개시 상태로 전환한 후(S920), 제2디바이스(200)에게 IIP 통신이 가능한지 묻기 위한 IIP 검증 패킷을 전송한다(S925).
IIP 검증 패킷을 수신한 제2디바이스(200)는 개시 상태로 전환하고(S930), IIP 검증 패킷에 대한 애크를 전송한다(S935). S935단계에서, 제2디바이스(200)는 IIP 통신이 가능한 경우, IIP 헤더의 Indication 필드에 1을 표기하여 제1디바이스(100)에게 전송할 수 있다.
제1디바이스(100)는 S935단계에서 수신된 애크를 파싱하여 제2디바이스(200) 역시 IIP 통신이 가능한 것으로 판단되면, 제2디바이스(200)에게 제2디바이스(200)의 전용 티켓(즉, 제1디바이스(100)에게 발급할 제1전용 티켓)의 발급을 요청한다(S940). S940단계에서, 제1디바이스(100)는 컨트롤 타입의 IIP 패킷을 생성하고, CREATE라는 프리미티브를 사용할 수 있다.
S940단계에 의해, 제1전용 티켓의 발급을 요청한 제1디바이스(100)와 발급 요청을 수신한 제2디바이스(200)는 개시 애크 상태로 전환한다(S945).
제2디바이스(200)는 제1디바이스(100)의 요청에 따라 제1전용 티켓을 발급하여 제1디바이스(100)에게 전송하고, 제1디바이스(100)의 전용 티켓, 즉, 제2디바이스(200)에게 발급할 제2전용 티켓의 발급을 요청한다(S950).
제1디바이스(100)는 제2디바이스(200)의 요청에 따라 제2전용 티켓을 발급하여 제2디바이스(200)에 전송한다(S955).
제2전용 티켓을 수신한 제2디바이스(200)는 트랜잭션 상태로 전환한 후(S960), 발급된 제1 및 제2전용 티켓들의 재확인을 제1디바이스(100)에게 요청한다(S965).
제1디바이스(100)는 제1 및 제2전용 티켓들의 발급이 완료된 것으로 확인되면 트랜잭션 상태로 전환한다(S970).
상술한 S910단계 내지 S935단계는 제1 및 제2디바이스들(100, 200) 상호간 IIP 통신이 가능한지 인지하는 단계에 해당하며, S940단계 내지 S970단계는, 제1 및 제2디바이스들(100, 200) 간의 전용 티켓들을 통하여 유니크한 호스트 ID를 부여하는 단계에 해당한다.
도 10은 도 9의 S820단계에 따른 IP 추가 과정을 설명하기 위한 흐름도이다.
도 10을 참조하면, 제1 및 제2디바이스들(100, 200)이 모두 트랜잭션 상태이거나 또는 모두 개시 상태인 경우, 제1디바이스(100)는 멀티 호밍 통신에 사용할 신규 IP의 추가를 제2디바이스(200)에게 요청한다(S1010). S1010단계에서 필요한 정보는 발급된 제1 및 제2전용 티켓들, 추가할 IP 어드레스, 네트워크 대역폭, 타임스탬프, 서비스 레벨 등이다.
S1010단계에서, 제1 및 제2디바이스들(100, 200)이 트랜잭션 상태인 경우, 제1디바이스(100)는 데이터 타입의 IIP 패킷을 생성하고, ADD 프리미티브를 사용하여 신규 IP의 추가를 요청할 수 있다. 또한, 710단계에서, 제1 및 제2디바이스들(100, 200)이 개시 상태인 경우, 제1디바이스(100)는 컨트롤 타입의 IIP 패킷을 생성하고, ADD 프리미티브를 사용할 수 있다.
제2디바이스(200)는 S1010단계에서 요청된 신규 IP를 승인하고, IIP 계층에서 관리하는 IP 리스트에 신규 IP를 추가 등록하며, 제2디바이스(200)에서 신규 IP에게 할당가능한 리소스(예를 들어, 가용 대역폭과 서비스 레벨)에 대한 정보를 확인 및 할당한다(S1030).
그리고, 제2디바이스(200)는 신규 IP의 추가 등록이 완료되었음을 제1디바이스(100)에게 보고한다(S1040). S1040단계를 위해 필요한 정보는 제1전용티켓, 제2전용 티켓, 타입 스탬프, S1030단계에서 확인된 가용 대역폭과 가용 서비스 레벨에 대한 정보이다.
제1디바이스(100)는 신규 IP가 제2디바이스(200)의 IP 리스트에 추가된 것으로 확인되면, Latency와 가용 대역폭을 고려하여 신규 IP를 포함하는 복수 개의 IP 별로 데이터를 분배하기 위한 준비를 한다(S1050).
그리고, 제1디바이스(100)는 복수 개의 IP를 통해 분배된 데이터를 제2디바이스(200)에게 전송한다(S1060).
도 11은 도 8의 S830단계 내지 S860단계에 따른 티켓 제거 과정을 설명하기 위한 흐름도이다.
도 11을 참조하면, 제1 및 제2디바이스들(100, 200)이 트랜잭션 상태에서 IIP 통신을 수행하는 중, IIP 통신 종료를 의미하는 이벤트가 발생하거나 IIP 통신이 강제로 종료되는 상황이 발생하면(S1105), 제1디바이스(100)는 클로즈 상태로 전환한다(S1110).
제1디바이스(100)는 클로즈 상태에서 제2디바이스(200)에게 제1전용 티켓의 제거를 요청하는 컨트롤 타입의 IIP 패킷을 만들어 제2디바이스(200)에게 전송한다(S1115). S1115단계에서 제1디바이스(100)는 Remove라는 프리미티브를 IIP 계층의 상위 계층으로부터 전달받아 제1전용 티켓의 제거를 요청하는 IIP 패킷을 만들 수 있다. S1115단계에서 전송되는 IIP 패킷에는 제1전용 티켓, 제2전용 티켓과 IIP 통신이 종료된 이후 통신을 유지하는데 사용할 새로운 소스 IP 어드레스(IP(A))가 기재된다.
IIP 패킷을 수신한 제2디바이스(200)는 S950단계에서 발급된 제1전용 티켓을 제거한다(S1120). 제1전용 티켓을 제거하는 동안, 제2디바이스(200)는 S1030단계에서 제1전용 티켓에 할당된 신규 IP에 대한 리소스를 회수한다. 또한, 제2디바이스(200)는 수신된 IIP 패킷에 기재된 새로운 소스 IP에 대한 정보를 확인하여 새로운 소스 IP가 사용가능한지 판단한다.
S1120단계가 수행되면, 제2디바이스(200)는 클로즈 상태로 전환하고(S1125), S1120단계에서의 제1전용 티켓이 제거되었음을 검증하는 IIP 패킷을 제1디바이스(100)에게 전송한다(S1130). S1130단계에서 전송되는 IIP 패킷에는 제1전용 티켓, 제2전용 티켓, 그리고, 새로운 소스 IP에 대한 확인 결과가 기재된다.
제1디바이스(100)는 S1130단계로부터 IIP 패킷을 수신하면 클로즈 애크 상태로 전환하고(S1135), S950단계 및 S955단계에서 발급된 제1 및 제2전용 티켓들을 제거한다(S114). S1140단계에서, 제1디바이스(100)는 IIP 통신 이전에 사용한 IP 또는 새로 사용할 소스 IP에 대한 정보를 확인한다.
S1140단계가 수행된 후, 제1디바이스(100)는 아이들 상태로 전환하고(S1145), 제1 및 제2전용 티켓들이 제거되었음을 검증하는 IIP 패킷을 만들어 제2디바이스(200)에게 전송한다(S1150). S1150단계에서 제1디바이스(100)는 Remove라는 프리미티브를 IIP 계층의 상위 계층으로부터 전달받아 IIP 패킷을 만들 수 있으며, IIP 패킷에는 회수될 제2전용 티켓, IIP 통신이 종료된 이후 통신을 유지하는데 사용할 새로운 소스 IP를 확인하기 위한 정보가 기재된다.
S1150단계에 의해 IIP 패킷을 수신한 제2디바이스(200) 역시 아이들 상태로 전환하고, S1150단계에서 수신된 IIP 패킷에 기재된 소스 IP를 이용하여 IP 통신을 할 수 있다(S1155).
도 12는 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신 방법 중 호스트의 동작을 설명하기 위한 흐름도이다.
도 12의 동작을 수행하는 호스트와 클라이언트는 도 1을 참조하여 설명한 제2디바이스(200)와 제1디바이스(100)일 수 있다.
도 12를 참조하면, 호스트는 클라이언트로부터 IIP 통신이 가능한 경우 클라이언트와의 연결을 요청하는 메시지를 수신할 수 있다(S1200). S1200단계, S1215단계 및 S1240단계에서 수신되는 메시지는 클라이언트의 IIP 계층으로부터 호스트의 IIP 계층으로 수신되는 IIP 헤더를 포함한 IIP 패킷을 의미한다.
연결 요청 메시지가 수신되면, 호스트는 클라이언트만을 위한 유니크한 제1전용 티켓(즉, 도 1의 제1전용 티켓)을 발급하여 클라이언트에게 전송한다(S1205). 또한, 도 12에는 도시되지 않았으나, 호스트는 클라이언트로부터 호스트만을 위한 제2전용 티켓(즉, 도 1의 제2전용 티켓)을 발급받는다. 제1 및 제2전용 티켓은 pair 형태로 발급되며, 제1 및 제2전용 티켓에는 IIP 통신에 사용가능한 IP 리스트가 매핑되어 관리될 수 있다.
이후, 호스트는 클라이언트로부터 메시지를 수신하기 위한 메시지 수신 대기 상태에 있을 수 있다(S1210).
클라이언트로부터 메시지가 수신된 경우(S1215), 수신된 메시지가 신규 IP의 추가를 요청하는 메시지이면, 호스트는 제1 및 제2전용 티켓에 매핑된 IP 리스트에 신규 IP를 추가하고(S1220), S1210단계로 돌아간다.
또한, S1215단계에서 수신된 메시지가 IP 제거를 요청하는 메시지이면, 호스트는 제1 및 제2전용 티켓에 매핑된 IP 리스트로부터 제거가 요청된 IP를 제거한다(S1225).
S1225단계에 의해, IP 리스트에 등록된 IP들이 모두 제거되면(S1230-Y), 호스트는 호스트에 설정된 타임아웃 대기 상태로 동작한다(S1235).
타임아웃에 도달할 때까지 클라이언트로부터 메시지를 수신하지 않으면(S1240-N), 호스트는 클라이언트에게 발급한 제1전용 티켓을 회수하고(S1245), 클라이언트와의 연결을 종료한다(S1250).
반면, 타임아웃에 도달하기 이전에 클라이언트로부터 티켓이 기재된 메시지가 수신되면(S1240-Y), 호스트는 S1240단계에서 수신된 메시지에 기재된 티켓의 인증을 시도한다(S1255). 이는, 제1 및 제2전용 티켓에 매핑된 IP들이 모두 IP 리스트로부터 제거된 상태에서 클라이언트가 다른 티켓을 통해 호스트에 접근하는 경우, 클라이언트는 메시지에 인증데이터를 추가하여 전송하기 때문이다. 따라서, 호스트는 메시지에 추가된 인증데이터를 참조하여 S1240단계에서 수신된 메시지의 인증을 시도한다.
티켓의 인증이 성공하면(S1255-Y), 호스트는 S1215단계로 진입한다.
반면, 티켓의 인증이 실패하면(S1255-N), 호스트는 S1235단계로 진입한다.
한편, S1215단계에서 수신된 메시지가 IIP 통신의 종료(Close Connection)을 요청하는 메시지이면, 호스트는 클라이언트에게 발급한 제1전용 티켓을 회수하고(S1245), 클라이언트와의 연결을 종료한다(S1250).
도 13은 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신 방법 중 클라이언트의 동작을 설명하기 위한 흐름도이다.
도 13의 동작을 수행하는 클라이언트와 호스트는 도 1을 참조하여 설명한 제1 및 제2디바이스들(100, 200)일 수 있다.
도 13을 참조하면, 클라이언트는 호스트에게 신규 연결을 요청하는 메시지를 전송할 수 있다(S1305). S1305단계, S1335단계 및 S1345단계에서 전송되는 메시지는 클라이언트의 IIP 계층으로부터 호스트의 IIP 계층으로 전송되는 IIP 헤더를 포함한 IIP 패킷을 의미한다.
클라이언트는 호스트에서 발급한 제1전용 티켓을 수신한 후(S1310), 데이터 송수신을 수행하거나 송수신 대기 상태로 동작할 수 있다(S1315). 데이터의 송수신 동작은 클라이언트의 IIP 계층에서 수행되지 않으나, 클라이언트의 동작 설명을 위해 도시된다.
클라이언트에서 이벤트가 발생한 경우(S1320-Y), 발생한 이벤트가 신규 IP의 추가를 요청하는 이벤트이면 클라이언트는 신규 IP의 추가를 요청하는 메시지를 생성하여 호스트에게 전송하고(S1325), S1315단계로 진입한다. S1325단계에 의해 메시지를 수신한 호스트는 S1220단계를 수행한다.
또한, S1320단계에서 발생한 이벤트가 기존 IP의 해제를 요청하는 이벤트이면, 클라이언트는 기존 IP가 IP 리스트에 기등록되어 있는지 확인한다(S1330). IP 리스트는 제1 및 제2전용 티켓들에 매핑된, 즉, 제1 및 제2전용 티켓들을 이용하여 데이터를 송수신할 경우 사용가능한 IP들을 기재하고 있다.
확인 결과, IP 리스트에 기존 IP가 등록되어 있으면(S1330-Y), 클라이언트는 IP의 제거를 요청하는 메시지를 생성하여 호스트에게 전송한 후(S1335), S1315단계로 진입한다. S1335단계에 의해 메시지를 수신한 호스트는 S1225단계를 수행한다.
반면, 기존 IP가 IP 리스트에 등록되어 있지 않으면(S1330-N), 클라이언트는 타임아웃 이전에 전송요구가 발생하는 경우(S1340-Y), 제1 및 제2전용 티켓을 인증하고 IP의 추가를 요청하는 메시지를 생성하여 호스트에게 전송한다(S1345). S1345단계에 의해 메시지를 수신한 호스트는 S1255단계를 수행할 수 있다.
또한, 일정 시간 동안 전송요구가 없으면 (S1340-N), 클라이언트는 IIP 통신의 연결을 종료한다(S1350).
또한, S1320단계에서 발생한 이벤트가 IIP의 통신 종료를 요청하는 이벤트이면, 클라이언트는 제1전용 티켓의 회수를 요청하는 메시지를 생성하여 호스트에게 전송하고(S1355), IIP 통신의 연결을 종료한다(S1350).
도 14는 본 발명적 개념의 예시적 실시예에 따른 멀티 호밍 통신 시스템이 적용된 이동통신 네트워크의 논리적인 구조를 도시한 도면이다.
도 14를 참조하면, 무선 네트워크 환경에서 각 노드에서 사용되는 프로토콜 구조는 기존의 프로토콜 구조와 거의 동일하다. 다만, 도 1을 참조하여 설명한 바와 같이 제1 및 제2디바이스들(100, 200)에는 IIP 계층이 전송 계층(TCP/UDP 계층)과 IP 계층 사이에 형성되어 있다. 즉, 본 발명의 실시예에 따르면, End-to-End 기반의 IIP 계층이 네트워크 계층인 IP 계층과 전송 계층인 TCP/UDP 계층 사이에 위치하고 있다. 따라서, 제1 및 제2디바이스들(100, 200)의 IIP 계층들은 (1) 경로를 이용하여 서로 전용 티켓들을 발급하고, 복수 개의 IP들을 포함하는 네트워크 자원이 사용 가능한지를 확인할 수 있다. 제1 및 제2디바이스들(100, 200)이 멀티 호밍을 위해 IP를 추가하려는 경우, 제1 및 제2디바이스들(100, 200)의 IIP 계층들은 (2) 경로를 통해 신규 IP를 추가함으로써 멀티 호밍 통신을 지원할 수 있다.
도 15는 본 발명적 개념의 예시적 실시예에 따른 외부 디바이스와 멀티 호밍 통신이 가능한 디바이스를 도시한 블록도이다.
도 15에 도시된 멀티 호밍 통신이 가능한 디바이스(300)는 도 1 내지 도 13을 참조하여 설명한 제1디바이스(100)와 유사하거나 동일하며, 외부 디바이스(400)는 제2디바이스(200)와 유사하거나 동일하므로, 중복되는 구체적인 설명은 생략될 수 있다.
도 15를 참조하면, 멀티 호밍 통신이 가능한 디바이스(300)는 스테이트 머신(310), 티켓 관리부(320), 패킷 생성부(330), 송수신부(340) 및 제어부(350)를 포함할 수 있다.
스테이트 머신(310)은 디바이스(300)의 IIP 계층에서 동작하며, 디바이스(300)의 상태를 모니터링할 수 있다. 스테이트 머신(310)에 의해 모니터링되는 디바이스(300)의 상태는 도 7을 참조하여 설명한 아이들 상태, 개시 상태, 개시 애크 상태, 트랜잭션 상태, 클로즈 상태 및 클로즈 애크 상태를 포함한다. 디바이스(300)는 스테이트 머신(310)에 의해 모니터링된 상태를 참조하여 외부 디바이스(400)와 상호 커넥션을 맺고, IIP 계층 기반의 멀티 호밍 통신(이하, ‘IIP 통신’이라 함)을 수행할 수 있다.
티켓 관리부(320)는, 디바이스(300)가 외부 디바이스(400)와 IP 기반으로 싱글 홈을 통해 통신하는 중, 외부 디바이스(400)와의 상호 인식을 위해 외부 디바이스(400)에게 제2전용 티켓을 발급하고, 외부 디바이스(400)로부터 발급된 제1전용 티켓을 수신하여 관리할 수 있다. 티켓 관리부(320)는 IIP 계층에서 동작하며, 후술할 송수신부(340)는 IIP 계층의 상위 계층에서 동작할 수 있다.
본 발명의 실시예에서 제1 및 제2전용 티켓은 디바이스(300) 및 외부 디바이스(400)의 상호 인식을 위해 ID 개념으로 사용되며, IIP 계층에서 발급될 수 있다. 또한, 제1 및 제2전용 티켓들은 디바이스(300) 및 외부 디바이스(400)의 ID 정보를 나타내고, 멀티 호밍 통신에 사용되는 복수 개의 IP들은 디바이스(300)의 위치 정보를 나타낼 수 있다.
티켓 관리부(320)는 티켓 요청부(321), 티켓 발급부(322), IP 관리부(323), 데이터 분배부(324), 바인딩부(325) 및 티켓 제거부(326)를 포함한다.
티켓 요청부(321)는 외부 디바이스(400)에게 IIP 통신이 가능한지를 문의하고, 외부 디바이스(400)로부터 IIP 통신이 가능하다는 애크를 수신하면, 디바이스(300)가 사용할 제1전용 티켓의 발급을 외부 디바이스(400)에게 요청할 수 있다.
티켓 발급부(322)는 외부 디바이스(400)로부터 외부 디바이스(400)가 사용할 제2전용 티켓의 발급을 요청하는 패킷이 수신되면, 외부 디바이스에게 제공할 제2전용 티켓을 IIP 계층에서 발급할 수 있다.
IP 관리부(323)는 제1 및 제2전용 티켓들이 발급된 후 또는 발급되는 동안, 외부 디바이스(400)에게 IIP 통신에 사용할 신규 IP의 추가를 요청하고, 외부 디바이스(400)가 신규 IP의 추가를 승인하면, 디바이스(300)의 IIP 계층에 존재하는 IP 리스트에 신규 IP를 추가 등록한다. 외부 디바이스(400)도 자신의 IIP 계층에 존재하는 IP 리스트에 자신이 승인한 신규 IP를 추가한다.
신규 IP가 IP 리스트에 추가되면, 데이터 분배부(324)는 외부 디바이스(400)에게 전송할 데이터를 신규 IP를 포함하는 복수 개의 IP들 별로 분배할 수 있다. 데이터 분배부(324)는 전송 계층으로부터 제공받은 데이터(예를 들어, 도 5에 도시된 TCP 데이터)를 IIP 계층에서 복수 개의 IP들의 개수에 맞게 분배할 수 있다.
바인딩부(325)는 데이터 분배부(324)에 의해 분배된 복수 개의 데이터들에게 동일한 제1전용 티켓을 디바이스(300)의 ID(예를 들어, 도 5에 도시된 Client ID)로서 바인딩하고, 제2전용 티켓을 외부 디바이스(400)의 ID(예를 들어, 도 5에 도시된 Host ID)로서 바인딩할 수 있다.
티켓 제거부(326)는 외부 디바이스(400)와 IIP 통신을 수행하는 중 IIP 종료 이벤트 또는 강제 종료 상황이 디바이스(300)에서 발생하면, 외부 디바이스(400)로부터 발급받은 제1전용 티켓을 제거하고, 외부 디바이스(400)에게 발급한 제2전용 티켓의 제거를 요청할 수 있다.
외부 디바이스(400)는 티켓 제거부의 요청에 의해 제1전용 티켓에 할당된 신규 IP에 대한 리소스를 회수하고, 신규 IP를 외부 디바이스(400)의 IIP 계층에 존재하는 IP 리스트로부터 제거하며, 발급한 제1전용 티켓과 발급받은 제2전용 티켓을 제거할 수 있다. 신규 IP는 디바이스(300)의 요청에 의해 추가된 IP이고, 신규 IP에 대한 리소스는 신규 IP에 할당된 네트워크 대역폭, 타임 스탬프 등을 포함한다. 그리고, 디바이스(300)와 외부 디바이스(400)는 IIP 통신 이전에 사용한 IP를 이용하여 싱글 호밍 통신을 하거나, 새로 재개할 IP를 이용하여 멀티 호밍 통신을 할 수도 있다.
한편, 패킷 생성부(330)는 싱글 호밍 환경에서 외부 디바이스(400)로 전송할 IP 패킷을 생성할 수 있다. 또한, 패킷 생성부(330)는 IIP 통신을 위해 발급된 제1전용 티켓, 제2전용 티켓 및 복수 개의 IP들을 참조하여 외부 디바이스(400)로 전송할 IIP 패킷을 복수 개 생성할 수 있다.
자세히 설명하면, 패킷 생성부(330)는 제1 및 제2전용 티켓들이 바인딩된 복수 개의 데이터들에 복수 개의 IP들의 IP 헤더를 캡슐화하여 복수 개의 IIP 패킷들을 생성할 수 있다. 예를 들어, 전송 계층에서 TCP를 사용하는 경우, 패킷 생성부(330)는 도 2를 참조하여 설명한 캡슐화 과정을 수행하여 IIP 패킷을 생성할 수 있다. 이러한 경우, 수신측인 외부 디바이스(400)는 캡슐화의 역과정인 역캡슐화를 수행하여 TCP 데이터를 만들 수 있다. IIP 패킷의 IIP 헤더는 도 3에 도시된 바와 같다.
또한, IIP 통신 시 사용하는 IIP 패킷의 타입은, [표 1]을 참조하여 설명한 바와 같이 제어 패킷 타입 및 데이터 패킷 타입을 포함한다. 패킷 생성부(330)는, 아이들 상태 또는 개시 상태에서는 IIP 계층의 상위 계층과 인터렉션없이 IIP 계층에서 제어 패킷 타입의 IIP 패킷을 생성한다. 그리고, 패킷 생성부(330)는 트랜잭션 상태에서는 상위 계층의 패킷에 캡슐화를 적용하여 데이터 패킷 타입의 IIP 패킷을 생성한다.
송수신부(340)는 복수 개의 IP들 별로 만들어진 IIP 패킷들을 복수 개의 IP들 및 외부 디바이스(400)의 IP 어드레스를 이용하여 외부 디바이스(400)와 멀티 호밍 통신을 수행할 수 있다. 즉, 송수신부(340)는 생성된 복수 개의 IIP 패킷들을 외부 디바이스(400)의 IP를 참조하여 외부 디바이스(400)로 각각 전송할 수 있다.
제어부(350)는 상술한 스테이트 머신(310), 티켓 관리부(320), 패킷 생성부(330) 및 송수신부(340)의 상술한 동작을 제어 또는 관리할 수 있으며, 이를 위해 하나 이상의 프로세서를 포함할 수 있다.
도 16은 본 발명적 개념의 예시적 실시예에 따른 IIP를 이용한 데이터 분배가 가능한 디바이스를 도시한 도면이다.
도 16을 참조하면, 디바이스(1600)의 IIP 계층에서는 IIP 계층의 상위 계층에게 수신측인 호스트로부터 발급받은 전용 티켓을 디바이스(1600)의 ID로서 통지하고, 호스트에게 발급한 전용 티켓을 호스트의 ID로서 통지한다. 이로써, 상위 계층인 응용 계층은 ID를 통해 호스트를 인식한다. 또한, IIP 계층은 복수 개의 IP들을 이용하여 멀티 호밍을 지원한다.
또한, 도 1을 참조하여 설명한 실시예에서는, IIP 계층이 데이터 분배를 자동으로 수행하였으나, 도 16의 실시예에서는 어플리케이션에 인터페이스를 제공하여 데이터 분배 기능을 응용 계층의 어플리케이션이 담당하도록 할 수 있다.
이로써, IIP 기반의 멀티 호밍 통신 환경에서 데이터 분배가 가능한 로드 발란스 매니저는 데이터 분배부(1610), 정책 수립부(1620), 데이터 전송부(1630) 및 네트워크 모니터링부(1640)를 포함할 수 있다.
데이터 분배부(1610)는 IIP를 이용한 네트워크 간 데이터를 분배할 수 있다. 즉, 데이터 분배부(1610)는 호스트로 전송할 데이터를 수립된 정책 및 멀티 호밍에 사용할 IP 개수에 따라 분배할 수 있다.
정책 수립부(1620)는 어플케이션에서 제공하는 서비스 타입에 따라 Best Effort, QoS with Realtime, QoS with High Bandwidth 등의 서비스에 해당하는 QoS 정책을 수립할 수 있다
데이터 전송부(1630)는 분배된 데이터를 호스트로 전송하고 호스트로부터 데이터를 수신할 수 있다.
네트워크 모니터링부(1640)는 디바이스(1600)에서 지원하는 IP 별로 송수신데이타를 측정하여 네트워크에 대한 품질을 측정한다. 정책 수립부(1620)는 네트워크 모니터링부(1640)의 측정 결과를 참조하여 서비스 정책을 업데이트할 수 있다. 따라서, 데이터 분배부(1610)는 IP 별로 분배되는 데이터 양을 네트워크 품질에 따라 조정할 수 있다.
도 17은 본 발명의 다른 실시예에 따른 멀티 호밍 통신이 가능한 시스템을 도시한 도면이다.
도 17을 참조하면, 멀티 호밍 통신이 가능한 시스템은 제1호스트(1710), 제1라우터(1720), 제2라우터(1730) 및 제2호스트(1740)를 포함한다. 제1 및 제2호스트들(1710, 1740)은 Legacy System이다. 도 1을 참조하여 설명한 IIP 계층은 제1 및 제2호스트들(1710, 1740)이 아닌 제1 및 제2라우터들(1720, 1730)에 형성될 수 있다. 즉, 도 17에 도시된 바와 같이 호스트 인식을 위한 식별자로 사용되는 티켓을 발급하는 IIP 계층은 제1 및 제2라우터들(1720, 1730)의 물리 계층과 IP 계층 사이에 형성될 수 있다. 제1 및 제2라우터들(1720, 1730)의 물리 계층은 이더넷 통신, 3G 통신 또는 LAN 통신 등 다양한 통신을 지원한다.
도 18은 본 발명의 다른 실시예에 따른 멀티 호밍 통신이 가능한 시스템을 도시한 도면이다.
도 18을 참조하면, 멀티 호밍 통신이 가능한 시스템은 제1 내지 제3호스트들(1810, 1820, 1830)을 포함한다. 제1 내지 제3호스트들(1810, 1820, 1830)은 1:다 또는 다:다 통신을 수행할 수 있다. 자세히 설명하면, 제1 내지 제3호스트들(1810, 1820, 1830) 간의 IIP 통신에 있어서, 제1 내지 제3호스트들(1810, 1820, 1830)은 서로 ID로서 사용되는 티켓들을 발급하고, 발급된 티켓들과 가용 IP들을 이용하여 IIP 기반의 멀티 호밍 통신을 수행할 수 있다.
예를 들어, 제1호스트(1810)가 호스트로 동작하고 제2 및 제3호스트들(1820, 1830)이 클라이언트로 동작하는 경우, 제1호스트(1810)에는 호스트 ID로서 ‘hostid-01’이 발급되고, 제2 및 제3호스트들(1820, 1830)에는 클라이언트 ID로서 서로 다른 ‘hostid-02’와 ‘hostid-03’이 각각 발급된다. 제1 내지 제3호스트들(1810, 1820, 1830)은 hostid-01, hostid-02 및 hostid-03을 ID로서 사용하여 1:3 IIP 통신을 수행한다.
도 19는 본 발명의 다른 실시예에 따른 멀티 호밍 통신이 가능한 시스템을 도시한 도면이다.
도 19를 참조하면, 멀티 호밍 통신이 가능한 시스템은 제1호스트(1910), 제1클라이언트(1920) 및 제2클라이언트(1930)를 포함한다.
제1호스트(1910)는 IIP 계층에서 지원하는 티켓과 IP 계층에서 지원하는 IP들을 이용하여 IIP 기반의 멀티 호밍을 통해 A 서비스(Service A)와 B 서비스(Service B)를 제공할 수 있다.
제1클라이언트(1920)는 A 서비스를 제공받아 사용자에게 실질적으로 제공하는 서비스 모듈을 포함하고, 제2클라이언트(1930)는 B 서비스를 제공받아 사용자에게 제공하는 서비스 모듈을 포함한다.
본 발명의 실시예에 따르면, 제1호스트(1910)는 다음 두 가지 정책 중 하나를 사용하여 A 서비스와 B 서비스를 제공할 수 있다.
첫 번째 정책의 경우, A 서비스가 모바일 VoIP 서비스이고, B 서비스가 대용량 동영상 스트리밍 서비스인 경우, A 서비스는 3G 통신 방식을 통해 제공하고, B 서비스는 WLAN을 통해 제공한다는 정책이다.
두 번째 정책의 경우, 모바일 VoIP 서비스인 A 서비스는 3G를 통해 데이터를 송수신하되, 필요한 경우 WLAN을 사용하며, 대용량 동영상 스트리밍 서비스인 B 서비스는 WLAN를 통해서 데이터를 송수신하되, 필요한 경우 3G를 사용한다는 정책이다.
위와 같이 서로 다른 정책을 사용하는 이유는, 서비스 별로 IIP 통신이 이루어져야 하는 경우, 서비스 별 상이한 ID를 관리하기 위함이다. 즉, 도 19에 도시된 바와 같이, A 서비스와 B 서비스에 대해서 제1호스트(1910)의 ID는 각각 hosied-01.A와 hosted-01.B이고, 제1클라이언트 및 제2클라이언트에 대해서 제1 및 제2클라이언트(1920, 1930)의 ID를 각각 hosied-01.A와 hosted-01.B로 발급함으로써, IIP 계층에서 서비스 별로 데이터를 분배하여 전송할 수 있다.
상기와 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 제1디바이스 200: 제2디바이스
300: 디바이스 400: 외부 디바이스
310: 스테이트 머신 320: 티켓 관리부
330: 패킷 생성부 340: 송수신부
350: 제어부

Claims (23)

  1. 제1 및 제2디바이스를 포함하는 시스템의 멀티 호밍 통신 방법에 있어서,
    상기 제1 및 제2디바이스가 IP(Internet Protocol) 기반으로 통신하는 중, 상기 제1 및 제2디바이스 간 상호 인식을 위해 상기 제1 및 제2디바이스에서 제1 및 제2전용 티켓을 발급하여 서로 공유하는 단계; 및
    상기 제1 및 제2디바이스가 상기 제1 및 제2전용 티켓 및 복수 개의 IP들을 이용하여 멀티 호밍 통신을 수행하는 단계;를 포함하며,
    상기 제1 및 제2전용 티켓은, 상기 제1 및 제2디바이스의 상호 인식을 위한 티켓 발급을 위해 전송 계층과 IP 계층 사이에 형성되는 ID IP(IIP: Identity Internet Protocol) 계층에서 발급되는 것을 특징으로 하는 멀티 호밍 통신 방법.
  2. 제1항에 있어서,
    상기 제1 및 제2전용 티켓들은 상기 제1 및 제2디바이스의 ID 정보를 포함하고, 상기 복수 개의 IP들은 상기 제1 및 제2디바이스의 위치 정보를 포함하며, 상기 멀티 호밍 통신에 사용되는 복수 개의 IP들이 상기 제1 및 제2전용 티켓들에 매핑저장되는 것을 특징으로 하는 멀티 호밍 통신 방법.
  3. 제1항에 있어서,
    상기 공유하는 단계는,
    상기 제1디바이스가 상기 제2디바이스에게 상기 IIP 계층 기반의 멀티 호밍 통신(이하, ‘IIP 통신’이라 함)이 가능한지를 문의하는 단계;
    상기 제2디바이스로부터 상기 IIP 통신이 가능하다는 애크를 수신하면, 상기 제1디바이스가 사용할 제1전용 티켓의 생성을 상기 제2디바이스에게 요청하는 단계;
    상기 제1디바이스가 상기 제2디바이스의 IIP 계층에서 발급된 상기 제1전용 티켓을 수신하는 단계;
    상기 제2디바이스가 사용할 제2전용 티켓의 발급 요청이 상기 제2디바이스로부터 수신되면, 상기 제1디바이스가 상기 제1디바이스의 IIP 계층에서 상기 제2전용 티켓을 발급하여 상기 제2디바이스에게 전송하는 단계; 및
    상기 제1 및 제2디바이스가 상기 제1 및 상기 제2전용 티켓을 이용하여 상기 IIP 통신을 준비하는 단계;를 포함하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  4. 제1항 또는 제3항에 있어서,
    상기 멀티 호밍 통신을 수행하는 단계는,
    상기 제1 및 제2전용 티켓이 발급된 후 또는 발급되는 동안, 상기 제1디바이스가 상기 제2디바이스에게 신규 IP의 추가를 요청하는 단계;
    상기 제2디바이스가 상기 신규 IP의 추가를 승인하면, 상기 제1 및 제2디바이스가 각각의 IIP 계층에 존재하는 IP 리스트들에 상기 신규 IP를 추가 등록하는 단계; 및
    상기 제1디바이스가 상기 제2디바이스에게 전송할 데이터를 상기 신규 IP를 포함하는 복수 개의 IP들 별로 분배하여 전송하는 단계;를 포함하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  5. 제4항에 있어서,
    상기 제1 및 제2디바이스가 상기 IIP 기반의 멀티 호밍 통신을 수행하는 중, 상기 IIP 종료 이벤트 또는 강제 종료 상황이 발생하면, 상기 제1디바이스가 상기 제2디바이스에게 상기 제1전용 티켓의 제거를 요청하는 단계;
    상기 제2디바이스가 상기 제1전용 티켓에 할당된 신규 IP에 대한 리소스를 회수하고, 상기 신규 IP를 상기 제2디바이스에 존재하는 IP 리스트로부터 제거하는 단계; 및
    상기 제1디바이스가 상기 제2전용 티켓을 제거하고, 상기 제2디바이스가 상기 제1전용 티켓을 제거하는 단계;를 더 포함하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  6. 제1항에 있어서,
    상기 멀티 호밍 통신을 수행하는 단계는,
    상기 제1디바이스가 상기 전송 계층으로부터 제공받은 데이터를 상기 IIP 계층에서 상기 복수 개의 IP들의 개수에 맞게 분배하는 단계;
    상기 분배된 복수 개의 데이터들에게 동일한 상기 제1전용 티켓을 상기 제1디바이스의 ID로서 바인딩하는 단계;
    상기 바인딩된 복수 개의 데이터들에 상기 복수 개의 IP들의 IP 헤더를 캡슐화(Encapsulation)하여 복수 개의 IIP 패킷들을 생성하는 단계; 및
    상기 생성된 복수 개의 IP 패킷들을 상기 제2디바이스로 전송하는 단계;를 포함하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  7. 제1항에 있어서,
    상기 멀티 호밍 통신을 수행하는 단계는,
    상기 제1디바이스는 상기 전송 계층으로부터 제공받은 복수 개의 데이터들에 동일한 상기 제1전용 티켓을 상기 제1디바이스의 ID로서 바인딩하는 단계;
    상기 바인딩된 복수 개의 데이터들에 상기 복수 개의 IP들의 IP 헤더를 캡슐화하여 복수 개의 IIP 패킷들을 생성하는 단계; 및
    상기 생성된 복수 개의 IP 패킷들을 상기 제2디바이스로 전송하는 단계;를 포함하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  8. 제1항에 있어서,
    상기 제1디바이스에서 동작하는 제1스테이트 머신이 상기 제1디바이스의 상태를 모니터링하고, 상기 제2디바이스에서 동작하는 제2스테이트 머신이 상기 제2디바이스의 상태를 모니터링하며, 상기 제1 및 제2디바이스는 모니터링된 상태를 참조하여 상기 IIP 계층 기반의 멀티 호밍 통신(이하, ‘IIP 통신’이라 함)을 수행하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  9. 제8항에 있어서,
    상기 제1 및 제2디바이스의 상태는, 상기 싱글 홈을 통해 IP 통신하는 아이들(Idle) 상태, 상기 제1 및 제2디바이스가 상기 IIP 통신이 가능하면 상기 제1 및 제2전용 티켓들의 발급을 요청하는 개시(Initiation) 상태, 상기 IIP 계층에서 상기 제1 및 제2전용 티켓들을 발급 및 수락하는 개시 애크(Initiation Ack) 상태, 상기 제1 및 제2전용 티켓들 및 상기 복수 개의 IP들을 이용하여 상기 IIP 통신을 수행하는 트랜잭션(Transaction) 상태 및 상기 IIP 통신이 중단되어 상기 제1 및 제2전용 티켓들을 제거하는 클로즈(Close) 상태를 포함하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  10. 제9항에 있어서,
    상기 IIP 통신 시 사용하는 IIP 패킷의 타입은, 상기 아이들 상태 또는 상기 개시 상태에서 사용되는 제어 패킷 타입 및 상기 트랜잭션 상태에서 사용되는 데이터 패킷 타입을 포함하며,
    상기 제1 및 제2디바이스는, 상기 아이들 상태 또는 상기 개시 상태에서 상기 IIP 계층의 상위 계층과 인터렉션없이 상기 IIP 계층에서 상기 제어 패킷 타입의 IIP 패킷을 생성하며, 상기 트랜잭션 상태에서 상기 상위 계층의 패킷에 캡슐화를 적용하여 상기 데이터 패킷 타입의 IIP 패킷을 생성하여 전송하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  11. 제1항에 있어서,
    상기 전송 계층에서 TCP(Transport Control Protocol)를 사용하는 경우,
    상기 제1디바이스는 TCP 세그먼트와 IIP 헤더를 조합하여 IIP 페이로드를 생성하며, 상기 IIP 페이로드와 IP 헤더를 조합하여 IP 패킷을 생성하는 캡슐화 과정을 수행하며,
    상기 제2디바이스는 상기 IP 패킷으로부터 상기 IIP 페이로드와 IP 헤더를 분류하고, 상기 IIP 페이로드로부터 상기 IIP 헤더와 상기 TCP 세그먼트를 분류하며, 상기 TCP 세그먼트로부터 TCP 헤더와 TCP 데이터를 분류하는 역캡슐화 과정을 수행하는 것을 특징으로 하는 멀티 호밍 통신 방법.
  12. 외부 디바이스와 멀티 호밍 통신이 가능한 디바이스에 있어서,
    상기 외부 디바이스와 IP(Internet Protocol) 기반으로 통신하는 중, 상기 외부 디바이스와의 상호 인식을 위해 상기 외부 디바이스에게 제2전용 티켓을 발급하고, 상기 외부 디바이스로부터 발급된 제1전용 티켓을 관리하는 티켓 관리부;
    상기 발급된 제1 및 제2전용 티켓 및 복수 개의 IP들을 참조하여 상기 외부 디바이스로 전송할 ID IP(IIP: Identity Internet Protocol) 패킷을 생성하는 패킷 생성부; 및
    상기 복수 개의 IP들을 이용하여 상기 멀티 호밍 통신을 수행하는 송수신부;를 포함하며,
    상기 제1 및 제2전용 티켓은, 상기 디바이스 및 외부 디바이스의 상호 인식을 위한 티켓 발급을 위해 전송 계층과 IP 계층 사이에 형성되는 IIP 계층에서 발급되는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  13. 제12항에 있어서,
    상기 티켓 관리부는 상기 IIP 계층에서 동작하며, 상기 송수신부는 상기 IIP 계층의 상위 계층에서 동작하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  14. 제12항에 있어서,
    상기 제1 및 제2전용 티켓들은 상기 디바이스 및 외부 디바이스의 ID 정보를 포함하고, 상기 복수 개의 IP들은 상기 디바이스 및 외부 디바이스의 위치 정보를 포함하며, 상기 멀티 호밍 통신에 사용되는 복수 개의 IP들이 상기 제1 및 제2전용 티켓들에 매핑저장되는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  15. 제12항에 있어서,
    상기 티켓 관리부는,
    상기 외부 디바이스에게 상기 IIP 계층 기반의 멀티 호밍 통신(이하, ‘IIP 통신’이라 함)이 가능한지를 문의하고, 상기 외부 디바이스로부터 상기 IIP 통신이 가능하다는 애크를 수신하면, 상기 디바이스가 사용할 제1전용 티켓의 발급을 상기 외부 디바이스에게 요청하는 티켓 요청부; 및
    상기 외부 디바이스로부터 상기 외부 디바이스가 사용할 제2전용 티켓의 발급 요청이 수신되면, 상기 제2전용 티켓을 상기 IIP 계층에서 상기 외부 디바이스에게 발급하는 티켓 발급부;를 포함하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  16. 제12항 또는 제15항에 있어서,
    상기 티켓 관리부는,
    상기 제1 및 제2전용 티켓이 발급된 후 또는 발급되는 동안, 상기 외부 디바이스에게 상기 멀티 호밍 통신에 사용할 신규 IP의 추가를 요청하고, 상기 외부 디바이스가 상기 신규 IP의 추가를 승인하면, 상기 IIP 계층에 존재하는 IP 리스트에 상기 신규 IP를 추가 등록하는 IP 관리부; 및
    상기 외부 디바이스에게 전송할 데이터를 상기 신규 IP를 포함하는 복수 개의 IP들 별로 분배하는 데이터 분배부;를 더 포함하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  17. 제16항에 있어서,
    상기 티켓 관리부는,
    상기 외부 디바이스와 상기 멀티 호밍 통신을 수행하는 중 상기 IIP 종료 이벤트 또는 강제 종료 상황이 발생하면, 상기 외부 디바이스에게 상기 제1전용 티켓의 제거를 요청하고, 상기 발급받은 제2전용 티켓을 제거하는 티켓 제거부;를 더 포함하며,
    상기 외부 디바이스는 상기 티켓 관리부의 요청에 의해, 상기 제1전용 티켓에 할당된 신규 IP에 대한 리소스를 회수하고, 상기 신규 IP를 상기 외부 디바이스의 IIP 계층에 존재하는 IP 리스트로부터 제거하며, 상기 발급받은 제1전용 티켓을 제거하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  18. 제12항에 있어서,
    상기 티켓 관리부는,
    상기 전송 계층으로부터 제공받은 데이터를 상기 IIP 계층에서 상기 복수 개의 IP들의 개수에 맞게 분배하는 데이터 분배부; 및
    상기 분배된 복수 개의 데이터들에게 동일한 상기 제1전용 티켓을 상기 디바이스의 ID로서 바인딩하는 바인딩부;를 포함하며,
    상기 패킷 생성부는, 상기 바인딩된 복수 개의 데이터들에 상기 복수 개의 IP들의 IP 헤더를 캡슐화하여 복수 개의 IIP 패킷들을 생성하고, 상기 송수신부는 상기 생성된 복수 개의 IP 패킷들을 상기 외부 디바이스로 전송하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  19. 제12항에 있어서,
    상기 티켓 관리부는,
    상기 전송 계층으로부터 제공받은 복수 개의 데이터들에 동일한 상기 제1전용 티켓을 상기 디바이스의 ID로서 바인딩하는 바인딩부;를 포함하며,
    상기 패킷 생성부는, 상기 바인딩된 복수 개의 데이터들에 상기 복수 개의 IP들의 IP 헤더를 캡슐화하여 복수 개의 IIP 패킷들을 생성하고, 상기 송수신부는 상기 생성된 복수 개의 IP 패킷들을 상기 외부 디바이스로 전송하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  20. 제12항에 있어서,
    상기 디바이스의 상태를 모니터링하는 제1스테이트 머신;을 더 포함하며,
    상기 디바이스의 상태는, 상기 싱글 홈을 통해 IP 통신하는 아이들(Idle) 상태, 상기 디바이스 및 외부 디바이스가 상기 IIP 통신이 가능하면 상기 제1 및 제2전용 티켓들의 발급을 요청하는 개시(Initiation) 상태, 상기 IIP 계층에서 상기 제1 및 제2전용 티켓들을 발급 및 수락하는 개시 애크(Initiation Ack) 상태, 상기 제1 및 제2전용 티켓들 및 상기 복수 개의 IP들을 이용하여 상기 IIP 통신을 수행하는 트랜잭션(Transaction) 상태 및 상기 IIP 통신이 중단되어 상기 제1 및 제2전용 티켓들을 제거하는 클로즈(Close) 상태를 포함하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  21. 제20항에 있어서,
    상기 IIP 통신 시 사용하는 IIP 패킷의 타입은, 상기 아이들 상태 또는 상기 개시 상태에서 사용되는 제어 패킷 타입 및 상기 트랜잭션 상태에서 사용되는 데이터 패킷 타입을 포함하며,
    상기 패킷 생성부는, 상기 아이들 상태 또는 상기 개시 상태에서 상기 IIP 계층의 상위 계층과 인터렉션없이 상기 IIP 계층에서 상기 제어 패킷 타입의 IIP 패킷을 생성하며, 상기 트랜잭션 상태에서 상기 상위 계층의 패킷에 캡슐화를 적용하여 상기 데이터 패킷 타입의 IIP 패킷을 생성하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  22. 제12항에 있어서,
    상기 전송 계층에서 TCP(Transport Control Protocol)를 사용하는 경우,
    상기 패킷 생성부는 TCP 세그먼트를 생성하고, 상기 TCP 세그먼트와 IIP 헤더를 조합하여 IIP 페이로드를 생성하며, 상기 IIP 페이로드와 IP 헤더를 조합하여 IIP 패킷을 생성하는 캡슐화 과정을 수행하며,
    상기 외부 디바이스는 상기 IIP 패킷으로부터 상기 IIP 페이로드와 IP 헤더를 분류하고, 상기 IIP 페이로드로부터 상기 IIP 헤더와 상기 TCP 세그먼트를 분류하며, 상기 TCP 세그먼트로부터 TCP 헤더와 TCP 데이터를 분류하는 역캡슐화 과정을 수행하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
  23. 제22항에 있어서,
    상기 IIP 헤더는 상기 IIP 계층 기반의 멀티 호밍 통신이 가능한지를 나타내는 정보가 기재되는 인디케이션 필드 및 상기 제1 및 제2전용티켓의 ID가 기재되는 ID 필드를 포함하는 것을 특징으로 하는 멀티 호밍 통신이 가능한 디바이스.
KR1020120058286A 2012-05-31 2012-05-31 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스 KR101387228B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120058286A KR101387228B1 (ko) 2012-05-31 2012-05-31 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120058286A KR101387228B1 (ko) 2012-05-31 2012-05-31 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스

Publications (2)

Publication Number Publication Date
KR20140015641A true KR20140015641A (ko) 2014-02-07
KR101387228B1 KR101387228B1 (ko) 2014-04-25

Family

ID=50264957

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120058286A KR101387228B1 (ko) 2012-05-31 2012-05-31 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스

Country Status (1)

Country Link
KR (1) KR101387228B1 (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100966584B1 (ko) * 2007-12-18 2010-06-29 한국전자통신연구원 차세대 통신망에서의 서비스 제공 시스템 및 그 방법
CN102025702B (zh) 2009-09-17 2014-11-05 中兴通讯股份有限公司 基于身份标识和位置分离架构的网络及其骨干网和网元
CN102045314B (zh) 2009-10-10 2016-08-03 中兴通讯股份有限公司 匿名通信的方法、注册方法、信息收发方法及系统

Also Published As

Publication number Publication date
KR101387228B1 (ko) 2014-04-25

Similar Documents

Publication Publication Date Title
EP3627793B1 (en) Session processing method and device
US20230023571A1 (en) Service processing method for proximity service, device, and system
US20220070095A1 (en) Data transmission method and apparatus, network adapter, and storage medium
JP7282146B2 (ja) Brasシステムベースのパケットカプセル化方法および装置
US9967738B2 (en) Methods and arrangements for enabling data transmission between a mobile device and a static destination address
CN110650168B (zh) 一种通信方法及其装置
WO2019011203A1 (zh) 设备接入方法、设备及系统
CN110166414B (zh) 一种通信方法、装置及系统
CN103036784A (zh) 用于自组织二层企业网络架构的方法和装置
KR20210048507A (ko) 통신 방법 및 통신 장치
US10411994B2 (en) Multi-link convergence method, server, client, and system
WO2022032464A1 (en) Associating transport identifiers with quality of service flows
US20150200938A1 (en) Method and device for transmitting wireless information
EP3664403B1 (en) User authentication of bras under architecture of mutually separated forwarding and control
WO2022048441A1 (zh) 应用数据的传输方法、系统及电子设备
WO2021204277A1 (zh) 通信方法、装置及系统
US20120300776A1 (en) Method for creating virtual link, communication network element, and ethernet network system
KR102055911B1 (ko) 세션 연결을 위한 시그널링 방법, 그리고 이를 구현한 장치
WO2023284231A1 (zh) 报文处理方法和报文处理系统
KR101387228B1 (ko) 멀티 호밍 통신 방법 및 멀티 호밍 통신이 가능한 디바이스
EP3896907B1 (en) Method and apparatus for acquiring network slice identification
KR101790192B1 (ko) 애플리케이션 관리 방법 및 장치
CN110620999B (zh) 用户面数据处理方法及装置
EP4124117A1 (en) Service transmission method, communication device and storage medium
WO2018018897A1 (zh) 设备通信方法、装置及系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170309

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180403

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 6