KR100691286B1 - 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치 및 그방법 - Google Patents
유비쿼터스 환경에서의 끊김없는 이동성 지원 장치 및 그방법 Download PDFInfo
- Publication number
- KR100691286B1 KR100691286B1 KR1020050051066A KR20050051066A KR100691286B1 KR 100691286 B1 KR100691286 B1 KR 100691286B1 KR 1020050051066 A KR1020050051066 A KR 1020050051066A KR 20050051066 A KR20050051066 A KR 20050051066A KR 100691286 B1 KR100691286 B1 KR 100691286B1
- Authority
- KR
- South Korea
- Prior art keywords
- address
- mobile node
- node
- seamless mobility
- msctp
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/26—Network addressing or numbering for mobility support
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W36/00—Hand-off or reselection arrangements
- H04W36/16—Performing reselection for specific purposes
- H04W36/18—Performing reselection for specific purposes for allowing seamless reselection, e.g. soft reselection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치 및 그 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은 mSCTP(Mobile Stream Control Transmission Protocol) 및 DNS 서버를 사용하여 소프트웨어 로봇 프레임워크를 구현함으로써 유비쿼터스 환경에서 끊김없는 이동성을 지원하기 위한 이동성 지원 장치 및 그 방법을 제공하는데 그 목적이 있음.
3. 발명의 해결방법의 요지
본 발명은, 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치에 있어서, 이동 노드와 연관 노드 간에 끊김없는 이동성을 지원하는 장치를 구현하기 위한 데이터들을 저장하고 있는 데이터 저장부; 및 상기 데이터 저장부에 저장되어 있는 데이터들을 이용하여 상기 이동 노드의 위치 및 이동을 탐지하여 끊김없는 이동성을 지원하기 위한 이동 지원 수단을 포함하되, 상기 이동 지원 수단은, 타 네트워크로 상기 이동 노드의 이동 시, 상기 이동 노드와 상기 연관 노드 간의 초기 연결을 설정하고 상기 이동 노드의 새로운 주소를 획득하기 위한 이동 탐지부; 상기 새로 획득한 이동 노드의 주소를 상기 연관 노드에게 알리고 상기 이동 노드의 프라이머리 주소로 설정하도록 하기 위한 핸드오버 관리부; 및 DNS(Domain Name System) 서버로 상기 이동 노드의 현재 주소를 반영하는 DNS 레코드를 갱신하도록 요청하기 위한 위치 관리부를 포함함.
4. 발명의 중요한 용도
본 발명은 유비쿼터스 시스템 등에 이용됨.
유비쿼터스, 소프트웨어 로봇 프레임워크, 끊김없는 이동성, 모바일 mSCTP, DNS
Description
도 1은 본 발명에 따른 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치의 일실시예 구성도,
도 2는 본 발명에 따른 소프트웨어 로봇 프레임워크를 이용하여 끊김없는 이동성 지원 방법에 대한 일실시예 흐름도이다.
* 도면의 주요 부분에 대한 부호의 설명
110 : 데이터 저장부 120 : 이동 지원부
130 : 일반 데이터 저장부 140 : TCB
150 : 위치 관리부 160 : 이동 탐지부
170 : 핸드오버 관리부
본 발명은 유비쿼터스 시스템에 관한 것으로, 더욱 상세하게는 유비쿼터스 환경에서 끊김없는 이동성을 지원하기 위한 이동성 지원 장치 및 그 방법에 관한 것이다.
이하의 본 발명에서는 유비쿼터스 환경에서의 끊김없는 이동성을 지원하는 장치가 소프트웨어 로봇인 것을 예로 들어 설명하기로 한다. 그러나 본 발명이 이러한 일실시예에 의해 한정되는 것이 아님을 미리 밝혀둔다.
여기서, 소프트웨어 로봇은 유/무선 환경을 통해 네트워크에 접속된 특정 디바이스 상에서 실행되어 사용자의 작업을 도와주거나 지원하는 소프트웨어 프로그램이다. 소프트웨어 로봇은 코어 모듈과 플러그인 모듈로 크게 구성되는데 소프트웨어 로봇이 실행되는 디바이스는 코어 모듈을 실행하기 위한 최소의 환경을 가지고 있어야 하며, 플러그인 모듈은 필요시에 서버로부터 디바이스에 다운로드되어 실행된다.
한편, 유비쿼터스 컴퓨팅 환경은 값싼 소형의 컴퓨터들이 유/무선의 네트워크를 통해 인터넷에 연결되고 언제 어디서든 사용 가능하며, 사용자의 상황에 따라 그 서비스를 바꾸어 제공하는 특징이 있다.
이러한 유비쿼터스 환경을 지원하는 네트워크의 구조는 IP(Internet Protocol)v6 프로토콜을 사용하는 백본망(Backbone Networks)을 기반으로 하여 기본 IPv4의 인터넷 망과 그것에 연동된 이동망(Mobile Network) 및 무선망(Wireless Network)을 접속하여 구축된다.
한편, 소프트웨어 로봇이 유비쿼터스 환경에서 실행되기 위해서는 호스트(Host)의 이동성과 사용자의 이동성을 지원해야 하며 유/무선 네트워크 환경 모두를 지원해야 한다.
따라서 만약 현재의 인터넷 환경인 TCP/IP(Transmission Control Protocol/Internet Protocol)를 이용하여 유비쿼터스 소프트웨어 로봇의 프레임워크를 구현한다면 다음과 같은 문제점에 직면한다.
먼저, TCP는 원래 모바일이나 무선 환경을 고려하지 않은 유선 환경에 적합한 프로토콜로서 무선 환경에서는 그 성능이 상당히 떨어진다.
예를 들어, TCP는 데이터의 교환 전에 3방향 핸드세이크(3-way-handshake)를 사용하여 상대 노드와 연결 설정(connection setup)을 수행하지만, 블라인드(blind) SYN(SYNchronize sequence numbers) 플러드 공격에 대해 아무런 대비책이 없다.
여기서, SYN 플러드 공격(SYN flood attack)이란 네트워크가 더 이상 합법적인 연결 요청을 처리할 수 없어 서비스 거부(DoS)를 초래할 정도로 완료할 수 없는 연결 요청을 시작하는 SYN 패킷이 쇄도하는 것을 말한다.
또한, TCP는 HoL(Head of Line) 블록킹의 문제점이 있다. 여기서, HoL 블록킹이란 웹 문서에 들어있는 몇 개의 임베디드(embedded) 메시지들을 동시에 전송하는 경우를 가정하면, TCP의 연결 스트림은 단 하나가 유지되므로 통신망에서 어느 특정한 중간 메시지가 손실되는 경우, 수신 측에서는 미리 몇 개의 메시지가 수신 완료되었다 하더라도 바로 사용자에게 문서를 보여주지 못하고 손실된 중간 메시지가 재전송되어 수신될 때까지 기다리게 되는 현상을 말하며, 종단 사용자의 응답 시간을 늦추는 원인이 되고 있다.
물론, 무선 환경에서 TCP의 성능을 향상시키는 기법들로 "I-TCP", "M-TCP", 스눕(Snoop), ELN(Explicit Loss Notification) 등이 제안되어 있으나, 이러한 프로토콜들은 모바일 환경에서는 적용될 수 없다.
또한, TCP는 종단 간에 하나의 연결만을 허용하여, 그 연결과 관련된 경로가 물리적인 문제로 인해 통신 불능 상태가 되면 데이터 전송이 이루어질 수 없다.
기존 TCP 연결은 이동 노드가 새로운 네트워크로 진입하는 경우, 연결이 끊어지는 문제점을 가지고 있기 때문에 실제 응용에 제약을 주어 왔다.
그리고 마지막으로 이동성(mobility) 지원 문제이다. 현행 TCP/IP를 기반으로 하는 네트워크 구조에서는, 데이터를 송/수신하기 위해 먼저 이동 노드(Mobile Node)와 연관 노드(Correspondent Node) 사이에 연결이 설정되어야 한다. 이때, 연관 노드는 현재 이동 노드의 IP 주소를 이용하여 이동 노드의 현재 위치를 파악한 후 데이터를 송/수신하게 되는 것이다.
한편, 데이터를 송/수신하는 도중에 이동 노드가 새로운 네트워크로 진입하면, 연관 노드는 새로운 네트워크로 진입함으로써 변경된 이동 노드의 IP 주소를 이용하여 새로운 연결을 설정해야 하지만, TCP/IP를 기반으로 하는 네트워크 구조에서는 처음 연결에 사용되었던 IP 주소(홈 주소)를 바꿀 수 없어 이동 노드와 연관 노드 간의 연결이 끊어지는 문제가 발생한다. 이때, 교환중인 데이터가 어느 정도의 손실을 허용하는 음성 데이터인 경우에는 그 피해가 심각하진 않지만, 음성 데이터가 아닌 매우 중요한 실시간 데이터인 경우 그 피해가 심각하다.
따라서 유비쿼터스 환경에서 이동 노드가 자유롭게 타 네트워크로 이동하더라도 끊김없이 연관 노드와 통신할 수 있는 장치 및 방법이 절실히 요구된다.
본 발명은 상기 문제점을 해결하고 상기 요구에 부응하기 위하여 제안된 것으로, 유비쿼터스 환경에서 끊김없는 이동성을 지원하기 위한 이동성 지원 장치 및 그 방법을 제공하는데 그 목적이 있다.
즉, 본 발명은 mSCTP(Mobile Stream Control Transmission Protocol) 및 DNS 서버를 사용하여 소프트웨어 로봇 프레임워크를 구현함으로써 유비쿼터스 환경에서 끊김없는 이동성을 지원하기 위한 이동성 지원 장치 및 그 방법을 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 장치는, 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치에 있어서, 이동 노드와 연관 노드 간에 끊김없는 이동성을 지원하는 장치를 구현하기 위한 데이터들을 저장하고 있는 데이터 저장부; 및 상기 데이터 저장부에 저장되어 있는 데이터들을 이용하여 상기 이동 노드의 위치 및 이동을 탐지하여 끊김없는 이동성을 지원하기 위한 이동 지원 수단을 포함하되, 상기 이동 지원 수단은, 타 네트워크로 상기 이동 노드의 이동 시, 상기 이동 노드와 상기 연관 노드 간의 초기 연결을 설정하고 상기 이동 노드의 새로운 주소를 획득하기 위한 이동 탐지부; 상기 새로 획득한 이동 노드의 주소를 상기 연관 노드에게 알리고 상기 이동 노드의 프라이머리 주소로 설정하도록 하기 위한 핸드오버 관리부; 및 DNS(Domain Name System) 서버로 상기 이동 노드의 현재 주소를 반영하는 DNS 레코드를 갱신하도록 요청하기 위한 위치 관리부를 포함한다.
한편, 본 발명의 방법은, 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법에 있어서, 이동 노드와 연관 노드의 어소시에이션이 설정되어 있는 단계; 상기 이동 노드가 타 네트워크로 이동하여 새로운 주소를 획득함에 따라 자신의 데이터를 업데이트한 후, 상기 획득한 새로운 주소를 상기 연관 노드에게 전달하는 제 1 업데이트 단계; 상기 이동 노드의 새로운 주소를 이용하여 상기 연관 노드가 자신의 데이터를 업데이트하고 mSCTP를 이용하여 상기 이동 노드에게 응답하는 제 2 업데이트 단계; 상기 이동 노드가 mSCTP를 이용하여 상기 연관 노드에게 새로 획득한 주소를 자신의 프라이머리 주소로 요청하는 프라이머리 주소 변경 요청 단계; 상기 연관 노드가 상기 이동 노드로부터의 요청에 의해 프라이머리 주소를 업데이트한 후 mSCTP를 이용하여 상기 이동 노드에게 응답하는 프라이머리 주소 변경 단계; 상기 연관 노드가 상기 이동 노드의 요청에 의해 새로운 프라이머리 주소를 반영하도록 DNS 서버의 레코드를 업데이트하고 상기 이동 노드에게 응답하는 단계; 및 상기 연관 노드가 상기 이동 노드의 요청에 의해 기존의 주소를 삭제하고 mSCTP를 이용하여 상기 이동 노드에게 응답하는 주소 삭제 단계를 포함한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명 이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
도 1은 본 발명에 따른 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치의 일실시예 구성도이다.
도 1에 도시된 바와 같이, 본 발명에 따른 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치는, 이동 노드와 연관 노드 간에 끊김없는 이동성을 지원하는 소프트웨어 로봇 프레임워크를 구현하기 위한 데이터들을 저장하고 있는 데이터 저장부(110), 및 상기 데이터 저장부(110)에 저장되어 있는 데이터들을 이용하여 상기 이동 노드의 위치 및 이동을 탐지하여 끊김없는 이동성을 지원하기 위한 이동 지원부(120)를 포함한다.
상기와 같은 구성 요소를 포함하는 이동성 지원 장치는 이동 노드 및 연관 노드에서 각각 구현되어 이동 노드가 자유롭게 네트워크 간에 이동하여도 연관 노드와 끊김없이 통신할 수 있도록 한다.
여기서, 이동 노드는 이동하는 노트북이나 PDA(Personal Digital Assistance) 등을 포함한다. 이뿐 아니라 소프트웨어 로봇이 탑재되어 이동하는 모든 디바이스가 이동 노드가 될 수 있다.
그리고 연관 노드는 대개 고정된 위치에 놓여있다. 예를 들면, 웹 서버나 기타 파일 서버 또는 이동 노드에게 서비스를 제공하는 어떠한 서버도 연관 노드가 될 수 있다.
한편, 상기 데이터 저장부(110)는 어소시에이션(association) 식별 정보, 비밀 키(secert key), 주소 리스트, 포트 번호를 저장하고 있는 일반 데이터 저장부(130), 및 "peer verification tag", "my verification tag", "state", peer transport address list", "local transport address list", "primary path"를 저장하고 있는 TCB(Transmission Control Block : 이하 "TCB"라 함)(140)를 포함한다.
상기 어소시에이션(association) 식별 정보는 현재 연결된 어소시에이션에 관련된 데이터 소비자의 매핑 리스트로서, 데이터 소비자는 파일 기술자, 파이프 포인터 또는 테이블 포인터와 같은 프로세스 식별 정보이다.
그리고 비밀 키(secret key)는 종단 사용자의 보안을 위해 필요한 키로서, 반드시 암호화되어야 한다.
그리고 주소 리스트는 mSCTP 인스턴스가 바인딩되는 IP 주소 리스트로서, 연결을 설정할 때 "INIT"나 "INIT-ACK" 정보에 포함되어 상대 노드로 전송된다.
그리고 포트 번호는 종단 프로세스가 바인딩되는 로컬 포트 번호를 나타낸다.
그리고 상기 TCB(140)에 저장되어 있는 "peer verification tag"는 각 패킷마다 수신되는 상대 노드의 인증 값으로, 연결을 설정할 때 "INIT"나 "INIT-ACK" 정보에 포함되어 교환된다.
그리고 "my verification tag"는 각 송신 패킷에 부착되는 로컬 노드의 인증 값으로 "INIT"나 "INIT-ACK" 정보에 포함되어 교환된다.
그리고 "state"는 mSCTP의 현재 상태를 나타내는 값으로 연결 완료, 셧다운(shutdown), 및 종료 등을 표시한다.
그리고 "peer transport address list"는 상대 노드가 바인딩되는 트랜스포트 주소 리스트로서, 주어진 어소시에이션에 대해 수신 주소로 사용된다. 이 주소 리스트는 연결을 설정할 때 교환된다.
그리고 "local transport address list"는 현재 어소시에이션에 바인딩되어 있는 로컬 IP 주소 리스트를 나타낸다.
그리고 "primary path"는 상대 노드의 현재 프라이머리 목적지 주소를 나타낸다.
그리고 상기 이동 지원부(120)는 이동 노드의 현재 위치를 식별하고 이동에 따른 변화를 추적하기 위한 이동 탐지부(movement detection)(160), 연관 노드가 이동 노드와의 현재 연결점을 파악하고 적당한 호 설정 과정을 통해 세션을 설정할 수 있도록 하기 위한 위치 관리부(location management)(150), 및 세션 도중에 다른 네트워크 영역으로 이동 중인 이동 노드에게 끊김없는 핸드오버를 제공하기 위한 핸드오버 관리부(handover management)(170)를 포함한다.
여기서, 끊김없는(seamless) 핸드오버란 핸드오버 도중의 데이터 손실과 지연에 의한 서비스 중단을 최소화하는 핸드오버를 뜻한다.
본 발명에 따른 이동성 지원 장치는 인터넷 프로토콜 모델을 기반으로 구현된다. 따라서 상기 데이터 저장부(110)와 이동 지원부(120)의 이동 탐지부(160) 및 핸드오버 관리부(170)는 4계층인 트랜스포트 계층에서 구현되고, 이동 지원부(120)의 위치 관리부(150)는 5계층인 응용 계층에서 구현된다.
한편, 상기와 같이, 본 발명에 따른 이동성 지원 장치가 이동 탐지부(160) 및 핸드오버 관리부(170)를 지원할 수 있는 것은 트랜스포트 계층에서 TCP 대신 mSCTP를 이용하기 때문이다.
여기서, mSCTP는 기존의 SCTP에 ASCONF 확장(extension)을 추가한 프로토콜로서, 모바일 세션을 위한 끊김없는 핸드오버를 제공한다. 그러나 이 프로토콜은 현재 위치 관리 기능은 제공하지 않고 있다. 즉, 연관 노드에서 이동 노드로 세션을 확립하고자 할 때 이동 노드의 위치를 파악할 필요가 있는데, 이를 해결하기 위해서는 모바일(Mobile) IP의 위치 관리 기능을 이용하거나 DNS 서버 등을 이용할 수 있다.
본 발명에서는 위치 관리부(150)가 DNS 서버를 이용하여 이동 노드의 위치를 파악하는 것을 예로 들어 설명하기로 한다. 왜냐하면, 모바일 IP 버젼 4는 네트워크 관리의 어려움, 대역폭의 낭비, 이동 노드에 대한 위치 프라이버시의 제공 여부 등과 같은 문제점이 있기 때문이다.
한편, 상기 5계층인 응용 계층은 사용자 서비스를 담당하는 부분으로 이메일, 메시지 송/수신, 음성 서비스, 웹 컨텐츠 배달 서비스 등을 담당한다.
한편, 본 발명에서와 같이 4계층인 트랜스포트 계층에서 mSCTP를 사용하게 되면 기존 TCP를 사용할 때보다 5계층인 응용 계층의 보안이 현저하게 강화된다. 왜냐하면, mSCTP를 이용하면 4 방향 핸드 세이크(4-way-handshake)를 사용하여 연결을 설정하고, 세 번째 패킷을 교환할 때, "signed state-cookie"를 사용하기 때 문이다.
한편, 연결 설정 시 3개의 데이터를 교환하는 TCP에 비해 mSCTP는 4개의 패킷을 교환함으로써 데이터 교환량이 많은 것처럼 보이지만, TCP와 같이 세 번째 패킷부터 데이터를 전송할 수 있기 때문에 추가적인 부담은 없다.
또한, mSCTP를 사용하게 되면 TCP가 겪는 HoL(Head-of-Line) 블록킹을 피함으로써 종단 사용자에게 보다 빨리 데이터를 전달할 수 있다.
왜냐하면, mSCTP는 멀티-스트리밍(multi-streaming)을 사용할 수 있기 때문에 중간 소실 메시지가 나머지 메시지에 영향을 주지 않으므로 HoL 현상이 일어나지 않게 된다.
또한, mSCTP에서는 멀티-호밍을 사용하기 때문에 그러한 경우에도 대체 경로(alternate path)를 통해 데이터를 전송할 수 있으므로 고장 허용(fault tolerant)이 가능해 진다.
그 밖에 mSCTP를 사용하면 메시지 바운더리(boundary)를 이용한 부분 전달(partial delivery), 무순서 전달(unordered delivery) 및 SACK(Selective ACKnowledgement) 등과 같은 장점들이 있다.
한편, 상기와 같은 구성 요소들을 이용하여 유비쿼터스 환경에서 이동 노드와 연관 노드 간에 끊김없는 이동성을 지원하는 방법은 도 2를 참조하여 설명하기로 한다.
도 2는 본 발명에 따른 소프트웨어 로봇 프레임워크를 이용하여 끊김없는 이동성 지원 방법에 대한 일실시예 흐름도이다.
우선, 이동 노드와 연관 노드 간에 어소시에이션이 설정되어 있다. 이는 먼저, 이동 노드의 이동 탐지부(160)가 IPv6 "stateless address auto-configuration"을 이용하거나 또는 DHCPv4/v6 서버를 이용하여 IP를 획득한다. 또한, 올드(old) AR(Access Router)로부터의 광고 메시지에 의해 현재 네트워크의 "prefix" 정보를 획득한 후("Network prefix", 210), 이동 노드와 연관 노드의 이동 탐지부(160)는 각각 자신이 통신하고자 하는 IP 주소 리스트(address list)를 서로 교환함으로써 설정되는 것이다("Setup association", 215).
또한, 상기 이동 노드와 연관 노드의 이동 탐지부(160)는 어소시에이션 설정 과정 중에 일반 데이터 저장부(130)의 주소 리스트 중에서 "primary IP", "Secondary IP"를 지정하게 된다. 여기서, "primary IP"는 데이터 교환 시에 이용되는 주소이다. 그리고 "Secondary IP"는 상기 "primary IP"가 통신 불능이 되면 데이터 통신을 위해 대신 사용되는 주소이다.
또한, 이동 노드와 연관 노드의 이동 탐지부(160)는 어소시에이션 설정 과정에서 일반 데이터 저장부(130)에 주소 리스트, 포트 번호, 어소시에이션 식별 정보, 비밀 키와 같은 정보들을 저장한다.
또한, 이동 노드와 연관 노드의 이동 탐지부(160)는 각각 "peer verification tag", "my verification tag", "state", "peer transport address list", "local transport address list", 및 "primary path"와 같은 정보들을 자신의 TCB(140)에 저장한다.
상기와 같이, 어소시에이션이 설정되어 있는 상태에서 이동 노드가 새로운 네트워크로 이동함에 따라 이동 노드는 두 네트워크 사이의 오버랩드 영역에 들어가고, 상기와 같이 오버랩드 영역에 이동 노드가 들어감에 따라 이동 노드는 이전 네트워크에 있는 올드(old) AP(Access Pointer)로부터의 신호 세기가 감소하고, 새로운 네트워크의 뉴(new) AP(Access Pointer)로부터의 신호 세기가 증가하게 된다. 즉, 이동 노드의 2 계층(링크 계층)에서 2 계층 핸드오버가 시작된다. 이때, 이러한 2 계층에서의 이벤트(새로운 네트워크로의 진입) 발생을 4 계층에서 트리거(trigger)하여 빠른 핸드오버를 할 수 있도록 한다.
한편, 이동 노드의 이동 탐지부(160)는 뉴(new) AP(Access Pointer)가 광고하는 RA(Router Advertisement) 메시지에서 새로운 네트워크 "prefix" 정보를 수신한다("Router ADV", 220).
이후, 이동 노드의 이동 탐지부(160)는 상기 수신한 "prefix"가 자신이 가지고 있는 기존의 "prefix"와 다른 경우, 이동 노드는 자신이 새로운 네트워크로 이동되었음을 감지하게 된다.
이후, 이동 노드의 이동 탐지부(160)는 새로운 IP 주소를 획득한다.
만약, 이동 노드의 이동 탐지부(160)가 IP 주소를 획득하기 위해 IPv4를 사용하는 경우, 이동 노드의 이동 탐지부(160)는 DHCP 서버로 새로운 주소를 얻기 위한 요구 메시지를 전송하여 응답을 받는다("Request IP address from new domain"과 "Assign IP address to MN", 225, 230).
이렇게 새로 획득한 IP 주소는 핸드오버 관리부(170)로 전달되고, 핸드오버 관리부(170)는 자신의 일반 데이터 저장부(130)의 주소 리스트에 상기 새로 획득한 IP 주소를 삽입하고, 현재의 어소시에이션과 관련된 TCB(140)의 "local transport address list"에도 상기 새로 획득한 IP 주소를 삽입한다. 이후, 이동 노드가 새로운 IP 주소를 획득하였다는 정보가 핸드오버 관리부(170)의 알림에 의해 응용 엔진으로 전달된다.
또한, 상기와 같이, 이동 노드의 핸드오버 관리부(170)는 새로운 IP 주소를 획득한 후에, 앞으로 그 주소를 새로운 IP 주소로 사용할 것이라고 연관 노드에게 알린다. 즉, 이동 노드의 핸드오버 관리부(170)는 mSCTP ASCONF(Address Configuration Change)에 정의된 "ASCONF add_ip" 정보를 연관 노드에게 전송한다("ASCONF add_ip", 235).
이후, 연관 노드의 핸드오버 관리부(170)는 일반 데이터 저장부(130)의 주소 리스트 및 TCB(140)의 "peer transport address list"를 상기 새로 획득한 IP 주소를 참조하여 수정한 후 이를 알리기 위해 "ASCONF add_ip_ack" 정보를 이동 노드로 전송한다("ASCONF add_ip_ack", 240). 이때, 이동 노드는 멀티-호밍 상태가 된다.
상기와 같이, 이동 노드가 멀티-호밍 상태가 됨으로써, 만일 현재의 프라이머리 주소와 관련된 경로에 물리적인 문제가 발생하면 새로 획득된 주소가 대체 주소가 될 수 있으므로, 핸드오버 도중에 패킷 손실을 최소화할 수 있게 된다. 기존 프라이머리 주소와 관련된 경로에 문제가 없는 경우에는 이동 노드가 새롭게 획득한 IP 주소를 프라이머리로 설정해 주기를 요청하기 전에는 이전의 프라이머리 주소가 그대로 사용된다.
새로 획득한 IP 주소를 프라이머리 IP 주소로 변경하는 과정은 새로운 IP 주소가 탐지된 순간에 이동 노드의 핸드오버 관리부(170)가 "Set Primary Address” 파라미터를 포함하는 "ASCONF_set_primary" 정보를 연관 노드로 전송하여 새로 획득한 IP 주소를 프라이머리 IP 주소로 변경할 것을 요청하고, 연관 노드의 핸드오버 관리부(170)는 상기 이동 노드로부터의 요청에 의해 TCB(140)의 "primary path"를 TCB(140)의 "peer transport address list"에 이미 삽입되어 있는 자신의 새로 획득한 주소로 변경함으로써 이루어진다. 이후, 이를 "ASCONF_set_primary_ack" 정보를 전송하여 이동 노드에게 알린다("ASCONF set_primary" 와"ASCONF_set_primary_ack", 245, 255).
한편, 기존의 IP 주소가 사용되지 않는 경우, 이동 노드의 핸드오버 관리부(170)는 주소 리스트로부터 해당 주소의 삭제를 "ASCONF delete_ip" 정보를 이용하여 연관 노드에게 요청하고 연관 노드의 핸드오버 관리부(170)는 상기 이동 노드의 요청에 의해 자신의 일반 데이터 저장부(130)의 주소 리스트로부터 상기 이동 노드의 기존 주소를 삭제하고 이를 "ASCONF delete_ip_ack" 정보를 이용하여 상기 이동 노드에게 알린다. 그리고 이동 노드의 핸드오버 관리부(170)는 일반 데이터 저장부(130)의 주소 리스트에서 이전 자신의 주소를 삭제한다("ASCONF delete_ip"와 "ASCONF delete_ip_ack", 265, 270).
그 이유는 새로운 IP 주소(프라이머리)가 고장이 나는 경우, 기존 주소가 삭제되지 않았다면 그 주소가 대체 주소가 되기 때문에 데이터가 전송된다. 그러나 이미 기존 주소에는 접근이 불가능하므로 불필요한 데이터 트래픽이 증가하게 된다. 임의의 주소가 사용 중인지 그렇지 않은지를 확인하는 방법은 mSCTP에서 제공되는 "Heartbeat"와 "Heartbeat-ACK" 정보를 주기적으로 전송하면 된다.
한편, 전술한 바와 같이 mSCTP와 mSCTP는 위치 관리 기능을 가지고 있지 않기 때문에, 연관 노드에서 이동 노드로 연결을 설정하는 경우에는 문제가 된다. 이를 해결하기 위해 본 발명에서는 전술한 바와 같이, 위치 관리부(150)에서 DNS 서버를 이용하여 위치 관리를 수행한다.
일반적으로 DNS 서버는 호스트의 도메인 이름을 IP 주소로 매핑시킨 레코드의 분산 데이터베이스로 "Dynamic DNS extension"을 사용하면 데이터베이스의 수정이 관리자의 개입 없이 이루어진다. 따라서 본 발명에서는 "Dynamic DNS extension"을 사용하여 이동 노드의 위치를 관리한다.
상기와 같이, DNS 레코드를 갱신함으로써 수행되는 위치 관리는 모바일 IP처럼 기존의 인터넷 구조에 새로운 요소(홈 에이전트와 외부 에이전트 등)를 추가하는 대신에 기존의 구성 요소를 그대로 이용하는 장점이 있다. 또한, 원격 공격으로부터 동적(Dynamic) DNS를 보호하기 위해 개인 키(private key) 등을 이용하여 주소를 갱신할 수 있기 때문에 보안을 강화할 수 있다.
한편, 응용 엔진이 DNS 서버에 새로 획득한 IP 주소를 등록하는 시점은 프라이머리 주소의 변경이 연관 노드에 의해 성공적으로 이루어진 다음 시점이 된다("Location Update Request와 Localtion Update Reply", 250, 260).
한편, 프라이머리 주소가 변경되었다는 이벤트는 프로토콜 엔진에 의해 이벤트 통지의 형태로 응용 엔진에 전달된다. 이렇게 DNS 서버에 등록된 새로운 주소는 또 다른 연관 노드가 이동 노드에게 연결을 요청할 때 사용될 것이다.
상기와 같이, 트랜스포트 계층에서 mSCTP를 이용하고, 위치 관리 기능을 보완하기 위해 DNS 서버를 이용함으로써, 유비쿼터스 환경에서 이동 노드와 연관 노드 간에 끊김없는 이동성을 지원할 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
상기와 같은 본 발명은, mSCTP(Mobile Stream Control Transmission Protocol) 및 DNS 서버를 사용하여 소프트웨어 로봇 프레임워크를 구현함으로써 유비쿼터스 환경에서 끊김없는 이동성을 지원할 수 있는 효과가 있다.
Claims (11)
- 삭제
- 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치에 있어서,이동 노드와 연관 노드 간에 끊김없는 이동성을 지원하는 장치를 구현하기 위한 데이터들을 저장하고 있는 데이터 저장부; 및상기 데이터 저장부에 저장되어 있는 데이터들을 이용하여 상기 이동 노드의 위치 및 이동을 탐지하여 끊김없는 이동성을 지원하기 위한 이동 지원 수단을 포함하되,상기 이동 지원 수단은,타 네트워크로 상기 이동 노드의 이동 시, 상기 이동 노드와 상기 연관 노드 간의 초기 연결을 설정하고 상기 이동 노드의 새로운 주소를 획득하기 위한 이동 탐지부;상기 새로 획득한 이동 노드의 주소를 상기 연관 노드에게 알리고 상기 이동 노드의 프라이머리 주소로 설정하도록 하기 위한 핸드오버 관리부; 및DNS(Domain Name System) 서버로 상기 이동 노드의 현재 주소를 반영하는 DNS 레코드를 갱신하도록 요청하기 위한 위치 관리부를 포함하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치.
- 제 2 항에 있어서,상기 위치 관리부는,상기 DNS 서버를 이용하는 응용 계층에 위치하고,상기 핸드오버 관리부 및 상기 이동 탐지부는,mSCTP를 이용하는 트랜스포트 계층에 위치하는 것을 특징으로 하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치.
- 제 2 항 또는 제 3 항에 있어서,상기 데이터 저장부는,어소시에이션 식별 정보, 비밀 키(secert key), 주소 리스트, 및 포트 번호를 저장하고 있는 일반 데이터 저장부; 및"peer verification tag", "my verification tag", "state", "peer transport address list", "local transport address list", 및 "primary path"를 저장하고 있는 TCB(Transmission Control Block)을 포함하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치.
- 제 4 항에 있어서,상기 데이터 저장부는,mSCTP를 이용하는 트랜스포트 계층에 위치하는 것을 특징으로 하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치.
- 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법에 있어서,이동 노드와 연관 노드의 어소시에이션이 설정되어 있는 단계;상기 이동 노드가 타 네트워크로 이동하여 새로운 주소를 획득함에 따라 자신의 데이터를 업데이트한 후, 상기 획득한 새로운 주소를 상기 연관 노드에게 전달하는 제 1 업데이트 단계;상기 이동 노드의 새로운 주소를 이용하여 상기 연관 노드가 자신의 데이터를 업데이트하고 mSCTP를 이용하여 상기 이동 노드에게 응답하는 제 2 업데이트 단계;상기 이동 노드가 mSCTP를 이용하여 상기 연관 노드에게 새로 획득한 주소를 자신의 프라이머리 주소로 요청하는 프라이머리 주소 변경 요청 단계;상기 연관 노드가 상기 이동 노드로부터의 요청에 의해 프라이머리 주소를 업데이트한 후 mSCTP를 이용하여 상기 이동 노드에게 응답하는 프라이머리 주소 변경 단계;상기 연관 노드가 상기 이동 노드의 요청에 의해 새로운 프라이머리 주소를 반영하도록 DNS 서버의 레코드를 업데이트하고 상기 이동 노드에게 응답하는 단계; 및상기 연관 노드가 상기 이동 노드의 요청에 의해 기존의 주소를 삭제하고 mSCTP를 이용하여 상기 이동 노드에게 응답하는 주소 삭제 단계를 포함하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법.
- 제 6 항에 있어서,상기 제 1 업데이트 단계는,상기 이동 노드의 이동 탐지부가 새로운 주소를 획득하는 단계;상기 이동 노드의 핸드오버 관리부가 자신의 데이터 저장부의 주소 리스트 및 TCB의 "local transport address list"를 상기 새로 획득한 주소로 업데이트하는 단계; 및상기 이동 노드의 상기 핸드오버 관리부가 mSCTP chunk인 "ASCONF add_ip" 정보를 이용하여 새로운 주소를 상기 연관 노드에게 전달하는 단계를 포함하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법.
- 제 7 항에 있어서,상기 제 2 업데이트 단계는,상기 연관 노드의 핸드오버 관리부가 자신의 데이터 저장부의 주소 리스트 및 TCB의 "peer transport address list"를 상기 이동 노드의 새로운 주소로 업데이트하는 단계; 및상기 연관 노드의 상기 핸드오버 관리부가 mSCTP chunk인 "ASCONF add_ip_ack" 정보를 이용하여 새로운 주소의 업데이트 사실을 상기 이동 노드에게 알리는 단계를 포함하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법.
- 제 8 항에 있어서,상기 프라이머리 주소 변경 요청 단계는,상기 이동 노드의 상기 핸드오버 관리부가 mSCTP chunk인 "ASCONF set_primary" 정보를 이용하여 상기 연관 노드에게 새로 획득한 주소를 자신의 프라이머리 주소로 요청하는 것을 특징으로 하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법.
- 제 9 항에 있어서,상기 프라이머리 주소 변경 단계는,상기 연관 노드의 상기 핸드오버 관리부가 TCB의 "primary path"를 TCB의 "peer transport address list"의 주소로 업데이트하는 단계; 및상기 연관 노드의 상기 핸드오버 관리부가 mSCTP chunk인 "ASCONF set_primary_ack" 정보를 이용하여 프라이머리 주소 변경 사실을 상기 이동 노드에게 알리는 단계를 포함하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법.
- 제 10 항에 있어서,상기 주소 삭제 단계는,상기 이동 노드의 상기 핸드오버 관리부가 mSCTP chunk인 "ASCONF_delete_IP" 정보를 이용하여 상기 연관 노드에게 자신의 이전 주소 삭제를 요청하는 단계;상기 요청에 의해 상기 연관 노드의 상기 핸드오버 관리부가 상기 자신의 데이터 저장부의 주소 리스트에서 이전의 이동 노드 주소를 삭제하는 단계;상기 연관 노드의 상기 핸드오버 관리부가 mSCTP chunk인 "ASCONF_delete_IP_ack" 정보를 이용하여 이전 주소의 삭제 사실을 상기 이동 노드에게 알리는 단계; 및상기 이동 노드의 상기 핸드오버 관리부가 상기 자신의 데이터 저장부의 주소 리스트에서 자신의 이전 주소를 삭제하는 단계를 포함하는 유비쿼터스 환경에서의 끊김없는 이동성 지원 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040099535 | 2004-11-30 | ||
KR20040099535 | 2004-11-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060060533A KR20060060533A (ko) | 2006-06-05 |
KR100691286B1 true KR100691286B1 (ko) | 2007-03-12 |
Family
ID=37157361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050051066A KR100691286B1 (ko) | 2004-11-30 | 2005-06-14 | 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치 및 그방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100691286B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100827925B1 (ko) * | 2006-09-08 | 2008-05-07 | 아주대학교산학협력단 | 유비쿼터스 환경에서 애플리케이션의 분산 및 이동성을위한 애플리케이션 프레임워크 시스템 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050039070A (ko) * | 2003-10-23 | 2005-04-29 | 한국전자통신연구원 | 블루투스 기반 피.디.에이를 이용한 사용자 이동성지원시스템 및 방법 |
KR20050054539A (ko) * | 2003-12-05 | 2005-06-10 | 한국전자통신연구원 | Sip 기반의 개인이동성 제공 장치 및 방법 |
-
2005
- 2005-06-14 KR KR1020050051066A patent/KR100691286B1/ko not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050039070A (ko) * | 2003-10-23 | 2005-04-29 | 한국전자통신연구원 | 블루투스 기반 피.디.에이를 이용한 사용자 이동성지원시스템 및 방법 |
KR20050054539A (ko) * | 2003-12-05 | 2005-06-10 | 한국전자통신연구원 | Sip 기반의 개인이동성 제공 장치 및 방법 |
Non-Patent Citations (2)
Title |
---|
1020050039070 |
1020050054539 |
Also Published As
Publication number | Publication date |
---|---|
KR20060060533A (ko) | 2006-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI437863B (zh) | 異質性ipv4網路中之同級間行動能力管理 | |
US10367716B2 (en) | Information distribution in a wireless communication system | |
US8909743B2 (en) | Dynamic session maintenance for mobile computing devices | |
JP4746044B2 (ja) | 状態転送にコアベースのノードを使用するよう拡張された技術 | |
JP4579934B2 (ja) | レガシーノードとhipノード間のホストアイデンティティプロトコル(hip)接続を確立するためのアドレス指定方法及び装置 | |
CA2803190C (en) | Information selection in a wireless communication system | |
US20110310813A1 (en) | Information dissemination in a wireless communication system | |
WO2006097031A1 (fr) | Procede de transmission de message dans le reseau du protocole internet mobile | |
US20190021065A1 (en) | Reducing Time Required for Location Lookup When Downlink Packets Arrive By Assisting Preloading of a Location of a Wireless Device Into the IP Advertisement Point (IAP) | |
KR100691286B1 (ko) | 유비쿼터스 환경에서의 끊김없는 이동성 지원 장치 및 그방법 | |
US20080318568A1 (en) | Method and apparatus for determining home agent attached by mobile node | |
JP2007166146A (ja) | 通信中にアドレス変更が可能な通信装置、システム及び通信方法 | |
WO2012019525A1 (zh) | 基于hip的通信方法、系统及设备 | |
JP5803718B2 (ja) | パケット経路制御装置 | |
WO2009117927A1 (zh) | 移动节点的上下文信息传输方法、移动通信系统及设备 | |
WO2009082935A1 (fr) | Procédé, système et dispositif pour obtenir l'adresse d'une passerelle d'accès mobile | |
CN102457510B (zh) | 一种hap切换的方法和系统 | |
JP2010021713A (ja) | 代理端末、通信方法および通信プログラム | |
JP2006025341A (ja) | Vlanの近隣探索代理方式および方法、並びにルータ装置 | |
CN113992583A (zh) | 一种表项维护方法及装置 | |
Lee et al. | Novel web agent framework to support seamless mobility for data networks | |
JP2005318060A (ja) | モバイルipのha及び/又は通信相手端末への登録方法及び通信端末 | |
KR20060117808A (ko) | 모바일 인터넷 프로토콜 기반의 네트워크에서 반사 공격방지 방법 |
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: 20130205 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20140123 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150126 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20160127 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20170124 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |