ice.hufs.ac.krice.hufs.ac.kr/w/img_auth.php/3/31/200401378_박찬홍.docx · web view사용자는...

53
졸졸 졸졸 졸졸 졸졸졸 졸졸 : 졸졸졸 졸졸졸졸 졸졸졸졸졸 MIH 졸졸 졸졸졸 졸졸졸졸 졸졸 졸졸졸졸 : 졸 졸 졸 졸졸졸 2012 졸 5 졸 25 졸 졸졸졸졸졸졸졸졸 졸졸졸졸 졸졸졸졸졸졸졸 졸졸 200401378 졸졸 졸졸졸 졸 졸 졸 졸 졸 졸 졸: 졸졸졸 졸졸졸졸 졸졸졸졸졸 MIH 졸졸 졸졸졸 졸졸졸졸 졸졸

Upload: lamanh

Post on 19-Jul-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

졸업 논문 최종 보고서

제목 : 이기종 네트워크 환경에서의 MIH 기반 수직적 핸드오버 기술

지도교수 : 정 성 호 교수님

2012 년 5 월 25 일

한국외국어대학교 공과대학 정보통신공학과

학번 200401378 성명 박찬홍

청 구 및 승 인 서

제 목: 이기종 네트워크 환경에서의 MIH 기반 수직적 핸드오버 기술

대 학: 공과대학 학부: 정보통신공학과

학번: 200401378 성 명: 박 찬 홍

이 논문을 제출하오니 승인하여 주십시오.

2012 년 5 월 25 일

성 명 :박 찬 홍 ( 인 )

위 학생의 논문 제출을 승인함.

2012 년 5 월 25 일

지도 교수 :정 성 호 ( 인 )

차그림 목차.............................................................................................................................4

표 목차................................................................................................................................6

제 1 장 서론.........................................................................................................................7

제 2 장 관련 기술동향 조사 및 분석.........................................................................................9

2.1 이기종 네트워크의 구성.............................................................................................9

2.2 이기종 네트워크의 연동 레벨....................................................................................11

2.2.1 접속 기능 제공 레벨.......................................................................................11

2.2.2 서비스 제공 레벨...........................................................................................11

2.2.3 서비스 연속성 제공 레벨.................................................................................11

2.3 무선 네트워크의 선택과 이동성 지원..........................................................................12

2.3.1 수직적 핸드오버 시나리오...............................................................................13

2.4 무선 자원 관리........................................................................................................15

2.5 이기종 네트워크에서의 멀티미디어 서비스 제공..........................................................17

제 3 장 MIH 기술분석 및 최적의 핸드오버를 위한 방안...........................................................19

3.1 IEEE 802.21 MIH 기술개요.....................................................................................19

3.2 MIH 참조 모델........................................................................................................19

3.3 MIH 서비스............................................................................................................21

3.4 MIH 프로토콜.........................................................................................................23

3.5 끊김없는 서비스를 위한 핸드오버 기술......................................................................25

3.5.1 지역 이동성 관리 기술(Local Mobility Management).......................................26

3.5.2 고속 핸드오버(Fast Handover) 기술...............................................................29

제 4 장 시뮬레이션을 통한 핸드오버 기술의 성능 분석.............................................................32

4.1 네트워크 시뮬레이터...............................................................................................32

4.1.1 네트워크 시뮬레이터의 구성요소.....................................................................32

4.2 시뮬레이션 환경 구축..............................................................................................34

4.3 MIH 에이전트 및 사용자 클래스................................................................................35

4.4 시뮬레이션 코드의 구현...........................................................................................38

4.5 시뮬레이션 결과 분석..............................................................................................50

제 5 장 결론 및 향후 과제....................................................................................................58

참고 문헌...........................................................................................................................59

그림 목차

그림 1. 무선 네트워크의 발전과 이기종 네트워크의 등장................................................7

그림 2. 이기종 네트워크의 구성..................................................................................9

그림 3. 멀티모드 단말의 구조...................................................................................10

그림 4. LTE-WLAN 간의 수직적 핸드오버...................................................................12

그림 5. 수직적 핸드오버 과정...................................................................................13

그림 6. 이기종 네트워크에서의 무선 자원 관리...........................................................15

그림 7. 이기종 네트워크에서의 멀티미디어 서비스 제공...............................................17

그림 8. MIH 참조 모델............................................................................................20

그림 9. MIH 구조와 서비스......................................................................................21

그림 10. MIH 통신 참조 모델...................................................................................23

그림 11. MIH 프로토콜 메시지 형태..........................................................................24

그림 12. HMIPv6 의 구조........................................................................................27

그림 13. HMIPv6 에서의 등록과정............................................................................28

그림 14. FMIPv6 의 기본구조..................................................................................29

그림 15. FMIPv6 Predictive Mode..........................................................................30

그림 16. FMIPv6 Reactive Mode............................................................................31

그림 17. NS-2 Directory 구조.................................................................................32

그림 18. OTcl and C++ : The Duality....................................................................33

그림 19. NS-2 클래스 계층 구조...............................................................................33

그림 20. vmware 를 통한 Fedora14 설치.................................................................34

그림 21. MIH Agent 에 의해 전달되는 과정...............................................................36

그림 22. MIH registration 흐름도...........................................................................37

그림 23. MIH 시뮬레이션 토폴로지...........................................................................38

그림 24. nam file 실행화면.....................................................................................50

그림 25. 시뮬레이션을 위한 네트워크 토폴로지 구성...................................................50

그림 26. 멀티모드 이동노드가 AP 범위 내에 없음.......................................................51

그림 27. 멀티모드 이동노드가 AP 범위 내에 들어옴....................................................52

그림 28. 두 네트워크간 핸드오버가 가능한 상황.........................................................52

그림 29. 시뮬레이션 실행 결과 콘솔 출력 화면...........................................................53

그림 30. UMTS 네트워크를 통한 패킷전송.................................................................54

그림 31. Ethernet 을 통한 패킷전송.........................................................................55

그림 32. WLAN 네트워크를 통한 패킷전송................................................................55

그림 33. 각 네트워크를 통한 패킷 전송......................................................................56

그림 34. 패킷 전송을 확대한 모습.............................................................................57

표 목차

표 1. 시뮬레이션 환경 구축......................................................................................35

표 2. 링크 계층의 핸드오버 관련 메시지....................................................................35

표 3. MIH User 클래스에서 핸드오버를 수행하는 함수................................................37

표 4. 시뮬레이션 코드의 구성...................................................................................38

표 5. 각 노드의 ID Table.........................................................................................50

제 1 장 서론

최근의 무선 통신은 LTE, WiMAX, 무선랜 등이 공존하는 이기종 네트워크와 다중 인터페이스를 탑재한 멀티 모드(Multi-Mode) 단말로 인하여 큰 발전을 이루고 있다. 이기종 네트워크는 다양한 무선 접속 기술을 갖는 통합 네트워크로 상황에 맞는 최적의 무선 네트워크를 이용하여 사용자에게 최상의 통신 서비스를 제공할 수 있다.

그림 1. 무선 네트워크의 발전과 이기종 네트워크의 등장

무선 통신 시스템의 발전은 주로 다양한 무선 접속 네트워크 (wireless access network)의 등장으로 이루어져왔다[1]. 셀룰러 네트워크는 GSM (Global System for Mobile communication)과 IS-95 (Interim Standard-95)의 2 세대로부터, UMTS (Universal Mobile Telecommunications System) 및 cdma2000 의 3 세대를 거쳐, 현재는 4 세대의 전 단계인 LTE(Long Term Evolution)[2]가 서비스 중이며, 이러한 발전은 LTE-Advanced 로 계속해서 이어지고 있다. 이와 별도로 IEEE (Institute of Electrical and Electronics Engineers) 진영의 시스템으로는 802.16e 에 기반한 모바일 WiMAX (Worldwide Interoperability for Microwave Access)[3]가 널리 사용되고 있으며, 이를 더욱 발전시킨 802.16m 의 상용화를 눈앞에 두고 있다. 뿐만 아니라, 802.11 에 기반한 무선랜(Wireless Local Area Network, WLAN)[4]은 802.11b 와 802.11g 를 거쳐서, 현재는 다중안테나(Multiple Input Multiple Output, MIMO) 기능이 추가된 802.11n 이 널리 사용되고 있다. 그림 1 은 전술한 무선 통신 시스템의 진화과정을, 지원하는 데이터 속도와 이동성에 따라 도식화 한 것이다. 이처럼 다양한 무선 네트워크의 상용화 및 공존과 함께 다수의 무선 네트워크에 접속할 수 있는 멀티모드 단말의 보급으로 인하여 사용자는 언제 어디서나 최상의 통신서비스를 이용할 수 있게 되었다.

기존의 무선 네트워크는 주로 셀룰러 네트워크의 진화에 따라서 그 세대가 구분되어 왔다. 그러나

최근에는 다양한 무선 접속 기술(radio access technology, RAT)의 등장과 발전으로 인하여 셀룰러 중심의 세대 구분에서 벗어나 새로운 관점으로 무선 네트워크의 진화 방향을 정의하게 되었다. 그 결과 다수의 무선 네트워크가 공존하는 이기종 네트워크(heterogeneous networks)의 개념이 탄생하게 되었는데, 이는 다양한 무선 접속 기술을 포함하는 네트워크의 통합체이며 이를 통해서 사용자에게 한 차원 높은 통신 서비스를 제공할 수 있을 것으로 기대되고 있다. 현재 사용되고 있는 무선 네트워크들은 각각 고유한 특징을 가지고 있다. 먼저 셀룰러 네트워크는 넓은 커버리지와 높은 수준의 이동성을 지원하지만 비교적 낮은 데이터 전송 속도를 제공한다. 이와는 반대로 무선랜을 사용할 때에는 고속 데이터 전송이 가능하지만 한정된 커버리지로 인하여 사용 범위 및 이동성의 제한을 받게 된다. 각 무선 네트워크의 장점만을 제공하는 새로운 시스템을 개발하는 것은 현실적으로, 또 기술적으로 제약이 따르며, 서로 다른 특징을 갖는 무선 네트워크의 통합체를 구성해서 상황과 환경에 맞는 최적의 무선 네트워크를 사용하는 것이 하나의 가능한 방안이다. 이러한 점에서, 이기종 네트워크는 무선 네트워크의 가장 현실적인 진화 방안이라고 할 수 있다. 본 논문에서는 네트워크 시뮬레이터인 NS-2(Network Simulator)를 이용하여 UMTS 네트워크와 WLAN 네트워크 그리고 Ethernet 네트워크 포함한 네트워크 토폴로지를 구성하며 이기종 네트워크간의 수직적 핸드오버를 시뮬레이션하고 그 결과를 분석한다. 본 논문의 구성은 다음과 같다. 제 2 장에서는 관련 기술동향을 조사 및 분석하고 제 3 장에서는 핵심기술인 MIH(Media Independent Handover)기술을 분석하고 최적의 핸드오버를 위한 방안을 제안한다. 제 4 장에서는 네트워크 시뮬레이터인 NS-2 을 통해서 핸드오버 기술의 성능을 분석한다.

제 2 장 관련 기술동향 조사 및 분석

2.1 이기종 네트워크의 구성

그림 2. 이기종 네트워크의 구성

이기종 네트워크에는 그림 2 와 같이 다수의 무선 네트워크들이 공존한다. LTE 와 같은 셀룰러 네트워크는 넓은 범위의 커버리지를 지원하기 때문에 언제 어디에서나 무선 접속 서비스를 제공할 뿐만 아니라 높은 수준의 이동성도 지원한다. 이로 인하여 셀룰러 네트워크는 음성 통화 및 기본 무선 접속 기능을 제공한다. 이에 반해 무선랜은 비교적 좁은 커버리지의 한계로 인하여, 사용자가 밀집되어 트래픽이 증가하는 주요 지점에 핫스팟(hot spot) 형태로 설치되어서 고속 데이터 서비스를 제공한다. 특히, 셀룰러 네트워크의 셀 경계 혹은 사용자가 지나치게 밀집되어 있는 곳에서 기존의 셀룰러 네트워크의 트래픽을 오프로딩(offloading)해서 사용자에게 향상된 서비스를 제공하고, 셀룰러 네트워크에 지나친 트래픽이 집중되는 것을 방지한다. 사용자는 이기종 네트워크에서 주어진 상황에 적합한 무선 네트워크를 선택함으로써 더 높은 수준의 QoS(Quality-of-Service)를 제공받을 수 있다. 이는 각 무선 네트워크의 장점만을 이용할 수 있는 것을 의미한다. 동시에 네트워크 사업자는 무선 네트워크를 통합적으로 운영해서 다양한 서비스를 제공함으로써 보다 높은 수익을 얻을 수 있다. 다수의 무선 접속 인터페이스(interface)를 탑재한 멀티모드 단말의 구조는 그림 3 과 같다. 멀티모드 단말은 개별 무선 네트워크에 접속 가능한 인터페이스들을 탑재하고 있으며 인터페이스 컨트롤러가 이를 제어한다. 또한 모든 인터페이스를 통합적으로 제어하기 위해 통합 인터페이스 컨트롤러(Common Interface Controller)가 존재한다. 최근에 출시되는 스마트폰과 같은 단말들은 LTE, 모바일 WiMAX, 무선랜 등의 인터페이스를 탑재하고 있으며, 사용자는 이를 이용해서 언제 어디에서나 원하는 무선 네트워크에 접속할 수 있다. 이와 더불어 여러 인터페이스를 통해 다수의 무선 네트워크에 동시 접속이 가능한 멀티홈(multi-home) 단말도 등장하고 있다. 이로 인해 네트워크 사업자들은 기존의 단일 네트워크 서비스의 한계에서 벗어나서 사용자에게 더욱 증가된 네트워크 용량을 제공할 수 있게 되었다. 멀티모드/멀티홈 기능은 이기종 네트워크에서 가장 필요한 단말의 기능이지만 다수의 인터페이스의 탑재 및 사용으로 인해 단말의 전력 소모를 증가시키고 제어를 복잡 하게한다. 특히 멀티홈 단말의 경우에는 동시에 두 개

이상의 인터페이스를 작동시키기 때문에 인터페이스 간의 상호 간섭과 같은 문제점을 야기하기도 한다. 따라서, 이를 해결하기 위한 노력이 다각도에서 이루어지고 있다[5].

그림 3. 멀티모드 단말의 구조

2.2 이기종 네트워크의 연동 레벨

이기종 네트워크를 구성하는 무선 네트워크 사이에는 다양한 수준의 연동(interworking)이 가능하다. 연동 레벨은 코어 네트워크 간의 통합 정도에 의해서 정의되거나, 사용자에게 제공하는 서비스의 연속성 측면에서 결정될 수 있다[6]. 각 연동 레벨에서 제공할 수 있는 서비스와 이를 위한 연동 구조는 아래의 3 단계로 구분할 수 있다[7].

2.2.1 접속 기능 제공 레벨

다수의 무선 네트워크 간에 단순히 접속 기능만을 제공하는 연동 수준을 의미한다. 사용자는 자신이 가입되어 있는 홈 네트워크가 아닌 외부 네트워크에서도 무선 접속 서비스를 제공받을 수 있다. 예를 들어서 A 통신사의 가입자가 B 통신사의 무선랜을 이용하여서 인터넷에 접속할 수 있다. 이 경우에 홈 네트워크와 외부 네트워크 사이에서 사용자를 인증하는 과정이 필요하다. 이를 위하여 홈 네트워크와 외부 네트워크 사이에서 AAA (Authorization-Authentication-Accounting) 기능을 공유할 수 있어야 하며, 사용자 정보를 교환하기 위한 인터페이스가 필요하다. 또한 사용자가 외부 네트워크를 사용할 경우 발생하는 요금을 결정하는 과금 체계에 대한 교환도 필요하다.

2.2.2 서비스 제공 레벨

홈 네트워크에서 제공하는 서비스를 외부 네트워크에서도 동일하게 사용할 수 있는 상황을 의미한다. 사용자는 외부 네트워크에서 무선 접속을 해도 자신이 사용하는 서비스를 이전과 동일하게 즐길 수 있다. 이를 위해 사용자 데이터를 홈 네트워크에서 외부 네트워크로 전송하기 위한 인터페이스가 필요하다. 그러나 서비스의 연속성은 제공되지 않는다. 만약 사용자가 현재 홈 네트워크에서 특정 서비스를 이용하고 있는 중에 외부 네트워크로 이동하게 되면 현재 서비스를 종료하고 외부 네트워크에서 서비스를 다시 시작하여야 한다.

2.2.3 서비스 연속성 제공 레벨

외부 네트워크로 이동할 경우에도 동일한 서비스를 제공받을 수 있을 뿐 아니라 서비스의 연속성까지도 보장되는 연동 레벨을 의미한다. 사용자에게 끊김없는 서비스(seamless service)를 보장하기 위해서는 다양한 프로토콜과 인터페이스가 필요하다. 네트워크 계층에서는 MIP(Mobile IP)를 통하여 사용자 이동성을 지원할 수 있으며 PMIP(Proxy Mobile IP) 이나 FMIP(Fast Mobile IP)도 사용 가능하다. MIP 와 PMIP 을 사용할 경우에는 각각 HA(Home Agent)와 LMA(Local Mobility Anchor) 기능이 코어 네트워크에서 구현되어야 한다. 또한 단말에서도 MIP 를 지원하기 위한 기능이 추가되어야 한다. 이와 함께 링크 계층에서도 서비스 연속성을 제공하기 위한 기능 및 인터페이스가 추가되어야 한다. 특히 MIP 를 사용할 경우 발생하는 지연 시간을 최소화 하기 위하여 링크 계층에서 미리 사용자가 이동할 외부 네트워크의 기지국 정보를 제공하거나 무선자원 예약과 같은 기능을 수행할 수 있다. 이 경우에 홈 네트워크와 외부 네트워크의 기지국 사이에서 정보 교환이 이루어져야 하며, 이를 위한 인터페이스가 필요하다.

2.3 무선 네트워크의 선택과 이동성 지원

기존의 핸드오버는 기지국의 커버리지 경계에서 수신 신호가 저하되어 접속이 더 이상 불가능 할 때 주변의 다른 기지국으로 이동하는 과정으로 단순히 접속 유지의 수단으로만 이용되었다. 이기종 네트워크에서의 핸드오버는 접속 유지의 수단이 아니라 주어진 순간에 최적의 무선 네트워크를 선택하는 과정으로 이를 위해 무선 접속 기술 선택(Radio Access Technology Selection)과 수직적 핸드오버(Vertical Handover)가 요구된다. 그림 4 에서는 LTE 와 무선랜 사이에서 발생하는 수직적 핸드오버 시나리오를 보여주고 있다. 무선랜을 사용하는 사용자가 커버리지 밖으로 이동하게 되면 LTE 로의 핸드오버가 일어난다. 이와 반대로 LTE 를 사용하는 사용자가 무선랜 커버리지로 진입하게 되면 고속 데이터 서비스가 가능한 무선랜으로의 핸드오버가 발생한다. LTE 는 이동성 지원, 무선랜은 고속 데이터 전송 지원이 가능하므로 각각의 무선 네트워크의 특징을 바탕으로 최적의 서비스를 제공할 수 있다.

그림 4. LTE-WLAN 간의 수직적 핸드오버

2.3.1 수직적 핸드오버 시나리오

수직적 핸드오버는 그림 5 와 같이 3 가지 단계를 거쳐서 이루어진다[9].

그림 5. 수직적 핸드오버 과정

핸드오버 정보 수집(Handover Information Gathering)핸드오버에 필요한 정보를 수집하는 과정이다. 네트워크 정보는 사용 가능한 무선 네트워크의 종류 및 상태, 수신 신호의 세기 등이 있으며 단말/사용자 측의 정보는 단말 전력 소모, 요금, 사용자의 선호도, 보안 등이 있다. 해당 정보는 단말이 단독적으로 수집하거나 혹은 기지국을 통해서 얻을 수

있으며 단말과 기지국 사이에 정보 교환도 가능하다. 핸드오버에 필요한 정보를 정의하고 획득하는 절차를 정의한 프로토콜/표준으로는 IEEE 802.21 MIH (Media Independent Handover)[10]와 3GPP ANDSF[8]가 대표적이다.

핸드오버 결정(Handover Decision)앞 단계에서 수집한 정보를 고려하여 핸드오버의 시점과 대상이 되는 무선 네트워크를 선택한다. 이 때 주어진 정보를 바탕으로 하여 최적의 서비스를 제공해 줄 수 있는 무선 네트워크를 결정하는 무선 접속 기술 선택(Radio Access Technology Selection)이 필요하다.

핸드오버 수행(Handover Execution)핸드오버의 대상이 되는 무선 네트워크로 이동한다. 이 때, 현재 제공받고 있는 서비스의 연속성을 제공하는 끊김없는 핸드오버가 요구되며, 이를 위해서 MIP, SIP(Session Initiation Protocol) 등의 프로토콜이 사용될 수 있다. 위의 과정 중에서, 무선 네트워크의 선택을 통한 핸드오버의 결정은 가장 핵심적인 부분으로서, 아래와 같은 다양한 방법들이 연구되어 왔다[11].

① 수신 신호 세기에 기반한 핸드오버 결정수신 신호 세기(Received Signal Strength)를 이용하는 방법은 주로 무선랜과 셀룰러 네트워크에서의 핸드오버에 사용되며, 무선랜 액세스 포인트(access point)로부터의 수신 신호를 지속적으로 측정하고, 이 값을 미리 설정해 놓은 임계치(RSS threshold)와 비교하여 핸드오버를 결정한다. 즉, 무선랜의 커버리지에 접근하여 수신 신호의 세기가 강해지면 무선랜으로 이동하며, 반대로 커버리지를 벗어나서 신호가 약해지면 연결을 유지하기 위해서 셀룰러 네트워크로 핸드오버를 수행한다[12].

② 사용 가능한 대역폭을 고려한 핸드오버 결정각각의 무선 네트워크가 제공해 줄 수 있는 가용 대역폭(available bandwidth)에 따라서 핸드오버를 결정하는 방법이다. 수신 신호 세기, 채널 상태, SINR (Signal to Interference plus Noise Ratio), 네트워크 부하(load) 상태 등을 고려하여 사용 가능한 대역폭을 계산한 후 가장 많은 대역폭을 제공해 줄 수 있는 무선 네트워크로 핸드오버를 수행한다[13].

③ 효용 함수의 최적화를 통한 핸드오버 결정핸드오버를 통해서 새로운 무선 네트워크로 이동했을 때 발생하는 효용(비용)을 정의하고 이를 최대화(최소화)하는 무선 네트워크를 선택한다. 효용을 정의할 때에는 네트워크의 상태 및 성능, 요금, 전력 소모, 보안 등이 고려된다. 이 때 각각의 요소들에 가중치(weight)를 부과하고 상황에 따라서 가중치의 값을 변경함으로써 다양한 상황에서의 능동적/적응적 핸드오버가 가능하다[14].

2.4 무선 자원 관리

이기종 네트워크에서는 개별 무선 네트워크가 제공할 수 있는 한정된 무선 자원을 이용하여 사용자에게 최적의 서비스를 제공해야 한다. 이 때 무선 자원의 효율적인 사용을 위한 무선 자원 관리가 필요하며 이는 무선 자원을 사용자에게 분배하는 방법을 결정한다. 기존의 무선 자원 관리는 개별 무선 네트워크의 무선 자원을 사용자에게 분배하는 것이었지만 이기종 네트워크에서는 모든 무선 네트워크의 무선 자원을 통합적으로 관리해야 하는 새로운 문제가 발생하게 된다.

그림 6. 이기종 네트워크에서의 무선 자원 관리

무선 자원 관리는 그림 6 과 같이 무선 자원 모니터링(Resource monitoring), 자원 사용여부 결정Decision making), 자원 사용 실행(Decision enforcement)의 3 단계로 이루어져 있으며 아래의 과정을 거치게 된다[15].

무선 자원 모니터링무선 자원 분배를 결정하는데 필요한 정보를 수집하는 과정이다. 이 때 미리 정해져 있는 정적 정보와 이와는 달리 시간에 따라서 지속적으로 변화하는 동적 정보가 구분된다. 정적 정보에는 사용자의 선호도, 사업자의 선호도, 단말의 성능, 무선 네트워크의 서비스 제공 레벨 및 보안 수준 등이 포함된다. 동적 정보에는 무선 네트워크의 부하 상태, 단말과 기지국 사이의 채널상태, QoS 레벨이 포함된다.

자원 사용 결정 무선 자원 모니터링에서 얻은 정보를 바탕으로 무선 자원을 어떻게 사용할지를 결정하는 단계이다. 이는 무선 자원 관리에서 가장 핵심적인 단계이며 자원 배분 방법에 관한 다양한 연구가 진행되어왔다. 자원 사용을 결정하는 주체에 따라서 네트워크 중심 자원 사용법(Network-centric resource management), 사용자 중심 자원 사용법(User-centric resource management), 협동적 자원 사용법(Collaborative resource management)으로 나눌 수 있다. 네트워크 중심 자원 사용법은 사용자의 요구 조건을 만족시키는 범위 내에서 네트워크 사업자의 효용을 극대화하는 방향으로 무선 자원을 사용하는 것이다. 사용자에게 서비스를 제공할 수 있는 다수의 무선 네트워크 중에서 네트워크 효용을 극대화 시킬 수 있는 것을 선택하는 방법이다. 또한 이기종 네트워크의 특징을 고려할 때 다수의 무선 네트워크를 동시에 사용하여서 사용자에게 무선 자원을 할당하는 결합 자원 관리(joint resource management)도 가능하다. 네트워크 효용을 결정하기 위해서 추계 프로그래밍(stochastic programming)[16], 게임이 론(game theory)[17], 효용함수(utility function)[18] 등을 사용할 수 있다. 사용자 중심 자원 사용법은 사용자의 효용을 극대화하는 방향으로 무선 자원을 사용하는 것이며 현재 사용자가 요구하는 QoS 레벨을 가장 잘 충족시킬 수 있는 무선 네트워크를 선택하거나 다수의 무선 네트워크 조합을 결정하는 것이다. 사용자 효용은 AHP (Analytical Hierarchy Process)[19], Profit function[20] 등에 의해서 정의될 수 있다. 이 경우에 사용자는 자신의 효용을 극대화하는 방향으로 무선 자원을 사용하려 하기 때문에 네트워크 혼잡 발생 및 기존 사용자의 QoS 저하와 같은 문제점이 발생할 수 있다. 이를 피하기 위하여 네트워크는 호수락 제어(admission control)를 통해 사용자가 요구한 무선자원을 할당하지 않을 수도 있다. 무선 자원 할당을 거부당한 사용자는 자신의 QoS 레벨을 낮추거나 충분한 무선 자원이 확보될 때까지 기다려야 한다. 협동적 자원 사용법에서는 사용자와 네트워크의 효용을 동시에 고려하기 때문에 사용자가 요구하는 무선 자원을 할당하면서도 네트워크 전체의 효용을 극대화 시킬 수 있다. 사용자 QoS 레벨, 네트워크 상태, 무선 채널 상태 등을 종합적으로 고려하여서 무선 자원 사용이 결정되며, Fuzzy logic controller[21], Objective function[22], TOPSIS (Technique for Order Preference by Similarity to Ideal Solution)[23]등을 통하여 효용 극대화 문제를 해결한다.

자원 사용 실행자원 사용 결정의 결과를 실행하는 단계로서, 사용자가 실제로 무선 네트워크를 통하여 서비스를 제공받게 된다. 사용자 중심 자원 사용법에서는 사용자가 자신이 선택한 무선 네트워크에 접속한 후에 원하는 양의 대역폭 사용을 요구한다. 이와 반대로 네트워크 중심 자원 사용법에서는 네트워크가 사용자에게 어떤 무선 네트워크에 접속할지를 알려준 다음에 해당 대역폭을 할당해주게 된다.

2.5 이기종 네트워크에서의 멀티미디어 서비스 제공 고성능 프로세싱 기능과 고화질 디스플레이를 탑재한 단말의 등장으로 인하여 점점 더 많은

사용자들이 모바일 비디오를 이용하고 있으며, 향후 모바일 트래픽의 50% 이상을 모바일 비디오가 차지할 것으로 예상된다[27]. 모바일 비디오는 실시간 스트리밍(real-time streaming)과 VoD 스트리밍(Video-on-Demand streaming)등으로 서비스되며, 사용자는 그림 7 과 같이 서버로부터 멀티미디어 콘텐츠를 다운로드하고 단말을 통해 재생한다.

그림 7. 이기종 네트워크에서의 멀티미디어 서비스 제공

이기종 네트워크에서는 서버로부터 사용자까지 데이터를 전송하는 경로가 다양하며, 따라서 기존과는 다른 여러 가지 이슈들이 발생하게 되는데, 대표적인 이슈들은 아래와 같다[28].

이기종 네트워크 사이의 이동에 따른 스트리밍율 제어서버가 사용자에게 멀티미디어 데이터를 전송하는 속도를 스트리밍율(streaming rate)이라고 정의한다. 스트리밍율은 서버와 사용자 사이의 종단(end-to-end) 경로에 의해서 결정되는데 주로 사용자가 이용하고 있는 무선 네트워크의 속도 및 부하 상태에 영향을 받는다. 대표적인 예로서, 802.11b-cdma2000, 802.11b-UMTS 와 같이 무선랜과 셀룰러 네트워크 사이에서 이동이 일어날 경우에 스트리밍율을 조절하는 연구가 활발히 진행되었다. 사용자가 무선랜을 사용할 경우에는 스트리밍율을 증가시키고 무선랜의 커버리지에서 벗어나 셀룰러 네트워크로 이동할 경우에는 스트리밍율을 감소시켜 끊김없는 스트리밍 서비스를 제공하는 것이 가능하다[29][30].

멀티미디어 스트리밍을 위한 무선 네트워크 선택이기종 네트워크에서는 스트리밍 서비스를 위한 무선 네트워크를 선택하는 것이 가능하다. 이를 위하여 무선 네트워크 중에서 최적의 스트리밍 서비스를 제공해 줄 수 있는 것을

선택하는 연구가 활발히 진행되었다[31]. 이 때 하나의 무선 네트워크를 선택하는 것뿐만 아니라 두 개 이상의 무선 네트워크의 조합을 결정하여 다중 경로 무선 스트리밍을 하는 것도 가능하다[32]. 이는 단말에서 멀티홈 기능이 지원되는 경우에 사용되며, 하나의 비디오 파일을 다중 경로로 분할하는 방법이 고려되어야 한다.

스트리밍 서비스 비용 최소화사용자가 스트리밍 서비스를 이용할 때에는 비용이 발생한다. 먼저 데이터를 다운받을 때 지불하는 통신 요금과 같은 금전적 비용(monetary cost)이 부과되며, 재생 중단 및 화질 저하와 같은 QoS 저하 비용(quality cost)이 발생한다. 금전적 비용과 QoS 저하 비용은 trade-off 관계를 갖는데 이는 높은 QoS 를 위해서는 더 많은 금전적 비용을 지불해야 하기 때문이다. 따라서 정해진 스트리밍 QoS 기준을 만족시키는 범위 내에서 비용을 최소화 하는 방법이 요구된다. 예를 들어, 셀룰러 네트워크는 안정적으로 데이터를 다운받을 수는 있으나 높은 요금과 낮은 데이터 전송 속도라는 문제점이 있다. 무선랜으로 스트리밍 서비스를 받을 때에는 적은 금전 비용 또는 무료로 데이터 다운로드가 가능하지만 사용자의 수의 변화 및 이동성으로 인하여 전송 속도의 변화가 일어난다. 이러한 특징들을 고려하여 QoS 를 보장하는 범위 내에서 최소의 비용으로 스트리밍 서비스를 제공하는 것이 필요하다. 대표적인 방법으로는, 스트리밍 버퍼(buffer)에 저장된 데이터의 양이 충분하면 저비용의 무선랜을 사용하여 금전전 비용을 줄이고, 버퍼된 데이터의 양이 부족하여 재생 중단이 일어날 위험이 있는 경우에는 셀룰러 네트워크를 통하여 안정적으로 데이터를 다운로드 하여서 QoS 저하 비용을 감소시킬 수 있다.

제 3 장 MIH 기술분석 및 최적의 핸드오버를 위한 방안

3.1 IEEE 802.21 MIH 기술개요

IEEE 802.21 WG 은 이기종 네트워크간 끊김없는 핸드오버를 지원하기 위하여 2004 년 3 월 신설되었으며, 해당 기술을 MIH 라고 명명했다[1]. MIH 기술에서는 단말이 둘 이상의 다른 특성을 갖는 네트워크 접속 인터페이스를 갖는 다중모드 단말을 고려했다. 또한, 와이브로와 무선랜과 같이 IEEE 802 계열 내 다른 특성을 갖는 네트워크간의 핸드오버와 와이브로와 3GPP 네트워크간의 핸드오버와 같이 IEEE 802 계열과 비 IEEE 802 계열 네트워크간의 핸드오버를 모두 작업의 범위로 한다.

IEEE 802.21 MIH 기술을 통하여 제공되는 끊김없는 이동성 서비스는 사용자 단말이 서로 다른 이기종 네트워크간 핸드오버 시 사용자가 이전 네트워크에서 제공받던 서비스 수준을 최대한 만족시켜 사용자가 서비스의 품질 저하를 느끼지 않을 정도의 품질을 보장하는 것을 의미한다. 일반적으로 서로 다른 특성을 갖는 이기종 네트워크간의 핸드오버는 서로 다른 IP 서브넷간 핸드오버를 유발시켜 이전 네트워크에서의 IP 연결을 계속 유지시키기 위한 이동성 관리 프로토콜의 수행이 필요하다. Mobile IP[2],[3] 및 Proxy Mobile IP[4] 등의 IP 이동성 관리 프로토콜은 새로운 네트워크에서의 IP 설정, 서브넷 이동 탐지 및 이동등록처리에 따른 지연문제가 지적되어 왔으며, 이러한 문제는 하부계층과의 밀접한 연동을 필요로 한다. IEEE 802.21 MIH 기술은 이동성 관리 프로토콜 이 하부 물리 및 링크 계층과 밀접한 연계를 통하여 이기종 네트워크간 핸드오버 시 사용자 응용서비스의 성능을 최적화하기 위한 구조, 서비스 및 프로토콜 절차를 규정하고 있다.

3.2 MIH 참조 모델

IEEE 802.21 표준에서 정의하는 MIH 참조 모델은 그림 8 과 같다. MIHF 는 계층 3 이상의 프로토콜, 응용 혹은 관리 기능과 계층 2 이하의 디바이스 드라이버의 중간 수준에 위치하는 기능 엔티티(entity)로서 하위 디바이스 드라이버에서 발생하는 네트워크 상태 정보 등을 상위 계층(예: 이동성 관리 프로토콜)으로 전달하여 상위 계층으로 하여금 IP 이상에서의 이동성 처리에 따른 성능을 최적화 할수 있도록 지원한다. 또한, 상위 계층이 하위 디바이스 드라이버를 제어할 수 있도록 지원하는데 예를 들면, 네트워크 접속 상태를 변경시키거나 네트워크 특성 및 상태 정보 질의에 응답하며, 원격지에 위치하고 있는 MIH 정보 서버와의 통신을 통해 인접한 이기종 네트워크들에 대한 정보를 제공하기도 한다. 인접 네트워크에 대한 정보의 예로써는 무선 접속장치 및 IP 라우터의 식별자, MAC 주소, IP 주소 및 네트워크 사업자명 등을 들 수 있다.

그림 8. MIH 참조 모델

초기 IEEE 802.21 표준에서는 MIHF 를 2.5 계층에 위치하는 것으로 간주하였으나 표준화 진행과정에서 더 이상 특정 2.5 계층이 아닌 시스템 내부 독립적인 기능 엔티티로 간주한다. 이는 MIHF 가 계층 1, 2 와 계층 3 이상의 상위 계층간의 정보소통 을 위한 징검다리 기능 이외에 원격지 MIHF 간 시그널링 메시지 교환을 통하여 상위 이동성 관리 프로토콜의 목적 네트워크 선택을 지원하는 시그널링 평면의 역할도 수행하기 때문이다. 또한, MIHF 는 MIH 프로토콜 메시지의 전송 계층으로 하위 계층인 2 계층의 MAC 프레임과 상위 계층인 3 계층 이상의 전송 프로토콜을 사용할 수 있는 유연성을 가지므로 MIHF 를 2.5 계층이 아닌 기능 엔티티로 간주한다.

3.3 MIH 서비스

IEEE 802.21 표준에서는 MIHF 가 제공하는 서비스를 크게 이벤트 서비스, 커맨드 서비스 및 정보 서비스로 분류하여 정의한다.

그림 9. MIH 구조와 서비스

MIH 이벤트 서비스MIH 이벤트 서비스는 하위 디바이스 드라이버에서 발생하는 네트워크 상태 정보를 이 동성관리 프로토콜로 전달하여 IP 계층 이상에서의 이동성 처리에 따른 성능을 최적화 할 수 있도록 지원한다. Mobile IP 및 Proxy Mobile IP 와 같은 이동성 관리 프로토콜은 이동단말이 새로운 IP 서브넷으로 이동할 경우 새로운 IP 주소를 설정, 중복주소검사, 새로운 IP 주소등록처리에 따른 패킷 손실 및 지연을 초래하여 전체 응용 서비스의 성능을 저하시킨다. 이러한 문제점을 해결하기 위하여 LLH[5] 및 FMIP[6]와 같은 빠른 핸드오버 프로토콜들에서는 현재 접속한 네트워크의 품질이 저하될 경우, 단말의 새로운 IP 주소를 미리 등록 처리하거나 현재 접속 액세스 라우터와 새로운 액세스 라우터간 패킷 손실을 줄이기 위한 터널을 설정한다. 따라서, 하부물리 및 링크 계층의 상태정보를 최적의 시점에 정확히 파악하는 것이 필요하다. 하지만, LLH 및 FMIP 과 같은 프로토콜은 3 계층 이상에 대한 표준화를 진행하는 IETF 의 프로토콜로 하부 링크 계층에서 발생하는 상태정보에 대한 정의는 작업의 범위로 두고 있지 않다.IEEE 802.21 표준의 MIH 이벤트 서비스는 하부물리 및 링크계층에서 발생하는 네트워크

상태정보를 세밀하게 정의한다. Link Event 는 특정 물리 네트워크에서 MIHF 측으로 전달되는 하부 물리 및 링크 계층의 상태정보이며, MIH Event 는 여러 이기종 네트워크에서 발생하는 Link Event 를 취합하여 상위 이동성 관리 프로토콜 및 응용 측에서 특정 네트워크 미디어에 독립적인 형태로 인식할 수 있도록 MIHF 에서 상위 계층으로 전달하는 이벤트이다. MIH Event 는 원격 MIHF 엔티티간 전달될 수 있으며, 이를 활용하여 원격에서 발생하는 링크 상태 변화를 파악할 수 있다.

MIH 커맨드 서비스MIH 커맨드 서비스는 상위 응용 및 이동성 관리 프로토콜에서 하위의 디바이스드라이 버를 제어할 수 있는 인터페이스를 지원하여 상위 응용 및 이동성 관리 프로토콜에서 네트워크 접속 상태를 변경시키거나 네트워크의 상태정보를 질의할 수 있도록 한다.Link 커맨드는 MIHF 에서 생성되어 하부 계층인 MAC 또는 PHY 계층으로 전달된다. Link 커맨드는 가능하면 특정 액세스 네트워크에서 정의한 커맨드를 활용하는 것을 원칙으로 하고 있다. 또한, Link 커맨드는 MHF 에서 생성되기는 하지만 MIHF 상위의 MIH User 명령을 수행하는 것을 목적으로 한다. 즉, MIHF 자체가 지능을 갖고 하부 계층을 제어하는 것이 아니라, 상위 MIH User 의 명령을 특정 미디어에 적합한 명령으로 파악하여 수행하는 것이다. 따라서, MIH User 입장에서는 특정 링크를 제어하기 위한 세부 명령형식을 이해할 필요 없이 MIH User 와 MIHF 간 이기종 미디어에 독립적인 인터페이스를 통하여 하부 계층의 동작을 제어하게 된다. IEEE 802.21 에서는 이러한 MIH User 와 MIHF 간의 미디어 독립적인 인터페이스를 MIH_SAP 으로 정의한다.

MIH 정보 서비스MIH 정보 서비스는 멀티모드단말이 위치하고 있는 현 네트워크에 인접한 다양한 이기종 네트워크에 대한 정보를 제공한다. 이를 위하여, 이기종 네트워크에 대한 정보를 관리하는 MIH 정보서버를 정의한다. MIH 정보서버에서는 이기종 네트워크에 위치하고 있는 인접한 무선 접속장치와 IP 라우터에 대한 식별자, MAC 주소, IP 주소 및 해당 네트워크의 사업자명 등에 대한 네트워크 정보를 수집, 관리하여 이를 이동 단말 또는 네트워크 장치가 요청 시 제공한다. MIH 정보서버가 관리하는 이기종 네트워크 정보의 단위를 IE 라 칭하며 크게 일반적이며 액세스 네트워크에 관련된 정보, PoA 에 관련된 정보, 벤더 및 기타 정보로 구분할 수 있다.

3.4 MIH 프로토콜

IEEE 802.21 에서는 원격 MIHF 엔티티들간 MIH 프로토콜 메시지 교환을 통하여 목적 네트워크 선택, 인접 네트워크 정보 전달, 원격 이벤트 및 커맨드 전달을 지원한다. MIH 서비스 제공을 위한 원격 MIHF 간 통신 참조 모델은 그림 10 과 같다.

그림 10. MIH 통신 참조 모델

IEEE 802.21 표준에서는 MIHF 가 탑재된 장치를 MIH 엔티티라 정의하며, 네트워크 측의 MIH 엔티티로는 이동 단말에게 직접적인 MIH 서비스를 제공하는 MIH PoS 와 이동 단말 측에 직접적인 서비스를 제공하지는 않지만, MIH PoS 와 연계하여 끊김없는 핸드오버를 지원하는 MIH Non-PoS 가 있다. MIH PoS 는 무선랜의 AP 또는 와이브로의 BS 과 같은 2 계층 연결접속장치인 PoA 에 위치하거나 3 계층 네트워크 접속장치인 IP 라우터 또는 별도의 원격 네트워크 서버에 위치할 수 있다. MIH PoS 가 PoA 에 위치할 경우 이동단말과 MIH PoS 간의 통신은 2 계층 프레임을 통하여 이루어지며, 그 외의 경우에는 통상 3 계층 이상의 IP 상위계층 프로토콜을 활용한다. 이기종 네트워크간 끊김없는 핸드오버를 위해서는 되도록 상대편의 링크 상태정보를 최적의 시점에 파악하여 빠른 명령을 통하여 최적의 목적 네트워크로 네트워크 연결성을 확보해주는 것이 필요하다. 따라서, MIH 이벤트 및 커맨드 서비스를 제공하는 MIH PoS 의 위치는 PoA 에 위치하는 것이 바람직하다. 하지만, 이는 기존 2 계층 프로토콜의 변경 및 MIH 를 수용하는 새로운 2 계층 장치가 여러 네트워크에 도입되어야 한다는 부담이 지적된다. MIH PoS 들간의 통신 및 MIH PoS 와 MIH Non_PoS 간의 통신은 통상 IP 상위 계층 프로토콜을 활용하여 통신하는 것으로 간주한다. MIH 프로토콜 메시지 형태는 그림 11 과 같다.

그림 11. MIH 프로토콜 메시지 형태

전체 MIH 메시지를 MIH function frame 이라 명칭하며, MIH function frame 은 MIH protocol header 와 MIH payload 로 나뉜다. MIH protocol header 에는 버전, ack 에 대한 요청 및 응답을 나타 내는 플래그가 포함된다. 또한, MIH function frame 이 인증되지 않은 상태에서 전달된다는 것을 나타내는 UIR 플래그가 포함된다. 실제 function frame 의 역할은 MIH message ID 를 통하여 구별되며, MIH message ID 는 SID, opcode 와 action ID 로 구성된다. SID 는 MIH function frame이 어떤 MIH 서비스에 속하는지를 나타내며, opcode 는 해당 frame 이 요청 메시지인지, 응답 메시지인지 아니면 단방향으로 알려주는 indication 메시지인지를 나타낸다. 구체적인 MIH function frame 의 메시지 타입은 action ID 에 포함된다. 예를 들어, MIH 이벤트 서비스의 경우 link up, link going down 등의 정보가 action ID 에 나타난다. MIH transaction ID 는 request 와 response 를 매칭하여 해당 요청에 대한 응답을 확인하기 위한 식별자이다. 각 메시지별 부가적인 정보는 MIHF payload 필드에 포함된다.

3.5 끊김없는 서비스를 위한 핸드오버 기술

IP 기술의 활성화에 따라 차세대 통신네트워크는 IP 기반의 핵심 네트워크를 기반으로 하여 다양한 종류의 액세스 네트워크를 수용하는 형태로 발전하고 있다. 뿐만 아니라 액세스 네트워크도 기존의 무선 LAN 을 포함하여 IP 기술을 기반으로 하는 액세스 네트워크들이 점차 주류로 등장하고 있다. 이러한 차세대 네트워크 구조에서 효율적인 이동성 지원을 위해서는 IP 기술에 기반한 이동성 지원 기술이 필수적이다. 현재 대표적인 IP 이동성 프로토콜로는 Mobile IPv4/v6 를 들 수 있다. Mobile IPv4/v6 는 이동노드가 홈 네트워크에서 사용하는 홈 주소 외에 이동노드의 현 위치를 알려주는 CoA(Care of Address)를 가지며 이를 위치 변경 시마다 홈 에이전트 또는 상대 노드에 등록(또는 바인딩 갱신, Binding Update)함으로써 상대 노드(CN)나 홈 에이전트(HA)에 대한 연결성을 유지한다. 그러나 이러한 방법은 실시간성이 요구되거나 패킷 손실에 민감한 응용에서는 문제점을 가질 수 있다. 즉, Mobile IPv4/v6 에서 이동 단말은 위치 변경 시마다 이동 단말로부터 먼 곳에

위치할 가능성이 있는 홈 에이전트나 상대 노드에 등록을 수행하여야 한다. 이 경우 이전 서브넷에서 새로운 서브넷으로의 등록이 완료되기 전까지는 상대 노드에 대한 연결성을 잃어버리게 되며 이로 인하여 패킷 손실과 지연을 가져오게 된다. 이러한 패킷 손실과 지연은 VoIP 와 같은 실시간성이 요구되는 응용에서는 수용할 수 없는 정도가 될 수도 있다. 이러한 문제를 해결하고 핸드오버 시 이동 단말에 대하여 끊김없는 이동성을 제공하기 위하여 Mobile IP 의 성능을 개선하기 위한 작업이 IETF의 mobile ip WG 을 중심으로 활발히 이루어지고 있다. 끊김없는 이동성은 IETF 에서 핸드오버 시 패킷 손실을 최소화하는 Smooth 핸드오버와 지연 시간을 최소화 하는 고속 핸드오버를 모두 포함하는 의미로 정의되었다. IETF 에서의 끊김없는 이동성 기술에 대한 표준화는 크게 두 부분으로 나누어져 진행되고 있다. 첫 번째는 지역적인 이동성 처리를 통해 등록 시간과 시그널링을 줄이는 지역 이동성 관리 접근 방식(local mobility management)이며 두 번째는 2 계층 핸드오버 사전 정보를 이용하여 2 계층 핸드오버 완료 이전에 3 계층 핸드오버를 미리 수행하는 고속 핸드오버 접근 방식이다 (fast handover method). 현재 표준화가 진행되고 있는 지역 이동성 관리 방법의 예로는 Mobile IPv4에서의 Mobile IPv4 Regional Registration, Mobile IPv6 에서의 HMIPv6(Hierarchical Mobile IPv6)를 들 수 있다. 고속 핸드오버 방법은 Mobile IPv4 에서의 Low Latency Handoffs in Mobile IPv4, Mobile IPv6 에서는 FMIPv6(Fast Handovers for Mobile IPv6)가 대표적인 예이다.

3.5.1 지역 이동성 관리 기술(Local Mobility Management)

전술한 바와 같이 Mobile IP 는 단말이 서브넷을 변경하는 경우 항상 홈 네트워크에 있는 홈 에이전트에 현재 위치에 대한 등록을 수행하여야 한다. 또한 경로 최적화 방법을 사용하거나 Mobile IPv6 를 사용하는 경우 상대 노드에 대해서도 바인딩 갱신을 수행하여야 한다. 만일 이동 단말이 홈 네트워크에서 먼 거리에 위치한 경우 이러한 등록 방식은 긴 등록 시간을 유발하며 네트워크에 불필요한 트래픽을 유발시킨다. 지역 이동성 관리 방법은 이러한 문제를 해결하기 위하여 제안되었으며 기본 개념은 각 지역 도메인이 지역 이동성 에이전트를 가지며 지역 내의 이동성은 지역 이동성 에이전트가 처리하게 함으로써 홈 에이전트나 상대 노드에 이동 단말의 지역적인 이동성을 숨기는 것이다.

지역 이동성을 구현하기 위한 방법으로는 Mobile IP 를 계층적으로 구성하거나 게이트웨이를 두고 게이트웨이 하부에 Mobile IP 와는 독립적인 이동성 관리 프로토콜을 운용하는 방법이 있다. 계층적 Mobile IP 방식의 대표적 예로는 Mobile IPv4 에서의 Mobile IPv4 Regional Registration, Mobile IPv6 에서의 HMIPv6 가 있다. 이와는 달리 글로벌한 이동성은 Mobile IP 를 이용하지만 지역 이동성에서는 이동성 관리에 더 효율적인 호스트 기반 라우팅을 이용하는 방법도 있다. 이러한 방법의 대표적인 예로 Cellular IP, HAWAII 를 들 수 있다. 그러나 이러한 호스트 기반 라우팅은 일반적인 IP 라우팅 규칙에 위배되는 것으로 아직은 IETF 에서 활성화 되지 못하고 있다. 따라서 지역 이동성에 대한 표준화는 계층적 Mobile IP 를 중심으로 이루어지고 있다.

Mobile IPv6 는 서브넷을 이동할 때마다 상대 노드와 홈 에이전트에 대한 바인딩 갱신을 수행하여야 한다. 상대 노드에 대한 바인딩 갱신을 인증하기 위하여 사용되는 RR(Return Routability)의 경우 HA 에 대한 바인딩 갱신과 동시에 수행되는 경우에도 최소 1.5 라운드 트립 지연(round trip delay)이 필요하다. 따라서 이러한 라운드 트립 지연으로 인하여 핸드오버 시에 서비스의 단절이 발생하게 된다. 또한 백본 네트워크에서의 시그널링 트래픽 증가와 상대 노드 및 홈 에이전트에서의 무선 구간에서의 시그널링 증가를 가져온다. 따라서 지역적 이동성을 관리하는 지역 앵커를 도입한다면 바인딩 갱신에 필요한 지연을 줄일 수 있을 뿐만 아니라 이러한 이동성 시그널링의 양을 줄일 수 있다. HMIPv6 에서는 이를 위하여 그림 12 에서와 같이 앵커의 역할을 수행하는 MAP(Mobile Anchor

Point)를 새로이 도입한다. 그림에서 AR 은 무선 인터페이스를 가지는 액세스 라우터를 나타낸다. MAP 은 개념적으로 지역적인 홈 에이전트로 동작하며 MIPv6 에 대한 변경을 최소로 하면서도 성능 향상을 가져올 수 있다. 또한 MAP 을 사용함으로써 동일한 MAP 영역 내에서의 이동은 상대 노드나 홈 에이전트에 숨겨지게 된다.

그림 12. HMIPv6 의 구조

HMIPv6 에서 이동 단말은 3 가지 주소를 가지게 된다. 즉, 홈 네트워크에서 구성한 고유한 홈 주소(HoA), 액세스 네트워크에서 구성한 CoA(LCoA) 그리고 MAP 을 기반으로 구성한 CoA(RCoA)를 가진다. 상대 노드와 홈 에이전트는 이동 단말의 위치를 RCoA 로 인식하며 이 주소로 데이터 를 전송한다. MAP 은 RCoA 와 LCoA 간의 바인딩 정보를 이용하여 데이터를 최종적으로 이동단말에게 포워딩 한다. HMIPv6 는 MAP 이라는 새로운 엔티티를 도입하나 이동 단말에 대해서는 최소한의 확장만이 필요하고 상대 노드와 홈 에이전트에 대해서는 변경을 필요로 하지 않는다. 또한 Mobile IPv4 에서 계층적인 구조를 제공하는 Mobile IPv4 Regional Registration 과는 구조적인 유사성으로 인하여 자연스러운 발전이 가능하다는 장점을 가진다. HMIPv6 에서 바인딩 갱신은 지역 등록과 일반적인 등록으로 구분된다. 그림 13 은 HMIPv6 에서의 등록 과정을 나타내었다.

그림 13. HMIPv6 에서의 등록과정

이동 단말이 MAP 이 관리하는 영역에 진입하면 AR1 에서 주기적으로 방송하는 라우터 광고 메시지를 받는다. 이 광고 메시지에는 AR1 에 MAP 의 영역 내에 있음을 알리는 MAP 옵션을 포함하고 있다. MAP 옵션이 포함된 라우터 광고 메시지를 받은 이동 단말은 AR1 상의 CoA 인 LCoA 와 MAP 상의 CoA 인 RCoA 를 stateless auto-configuration 형태로 생성한다. LCoA 와 RCoA 를 구성한 후 이동 단말은 MAP 에 대하여 LCoA 를 소스 주소로 하고 MAP 주소를 목적지 주소로, RCoA 를 홈 어드레스 옵션 주소로 하여 지역적 바인딩 메시지를 보낸다(1). MAP 은 LCoA 와 RCoA 를 바인딩하며 바인딩이 성공적인지 아닌지(실패했을 경우 적절한 fault code 정보를 포함하는)를 가진 바인딩 확인 메시지를 이동 노드로 돌려준다(2). 지역적 바인딩이 성공적으로 이루어지면 이동 단말은 HA 와 CN에 대하여 Mobile IPv6 에서 규정된 바인딩 갱신을 수행한다. 이 바인딩 갱신 메시지는 소스 주소를 RCoA, 목적지 주소를 HA/CN 의 주소로, 홈 어드레스 옵션에는 이동 단말의 홈 주소를 담아서 바인딩 갱신 메시지를 보내게 된다(3), (4). 만일 이동 단말이 MAP 영역 내에서 다른 AR 로 이동하는 경우 HA/CN 에 대해서는 동일한 RCoA 를 가지므로 바인딩 갱신을 필요로 하지 않으며 LCoA 를 갱신하는 지역적 바인딩 갱신만이 필요하게 된다(5). 따라서 동일한 MAP 영역 내에서의 이동 단말의 이동은 HA/CN 에 투명하게 이루어지게 된다. 등록이 완료된 이후 이동 단말로 전달되는 데이터가 있으면 이 데이터는 RCoA 로 전달되며 MAP 은 이 데이터를 터널링을 통해 이동 단말의 LCoA 로 전달한다. 이동 단말이 상대 노드로 데이터를 전송하는 경우 MAP 간의 터널링을 통해서 전송하며, 상대 노드와의 직접적인 전송을 하고자 하는 경우 RCoA 를 소스 주소로 하여 상대 노드로 직접 데이터를 전송할 수도 있다.

3.5.2 고속 핸드오버(Fast Handover) 기술

고속 핸드오버 방법은 핸드오버 시의 지연을 최소화 하기 위하여 2 계층에서의 핸드오버 예상 정보를 바탕으로 2 계층 핸드오버가 완료되기 전에 3 계층 핸드오버의 일부를 수행하거나 또는 양방향 터널을 이용하여 3 계층 등록을 미룸으로써 실시간 서비스를 지원하는 기술이다. 대표적인 빠른 핸드오버 방법은 Mobile IPv4 에서의 Low Latency Handoffs in Mobile IPv4, Mobile IPv6 에서는 Fast

Handovers for Mobile IPv6 를 들 수 있다. Mobile IPv6 는 핸드오버 시 새로운 CoA 주소를 생성하고 이에 대한 등록이 완료되기 전까지 이동 검출(Movement detection), IP 주소 구성(IP address configuration), 위치 갱신(location update)과 같은 필연적인 지연 요소를 가지게 된다. 이러한 지연들이 결합된 총 지연은 실시간 응용이나 손실에 민감한 응용에서 수용되지 못할 정도의 큰 지연이 될 수도 있다. FMIPv6 는 이러한 지연을 줄이기 위한 기술로서 새로운 링크 검출 시 즉각적인 데이터 송신을 가능케 하며 새로운 링크에 부착되는 즉시 이동 단말로 패킷이 전달될 수 있도록 하는 것을 목표로 하고 있다. FMIPv6 의 기본 구조는 그림 14 와 같다. 그림에서 PAR 은 이전 액세스 라우터(Previous AR), NAR(New AR)은 새로운 액세스 라우터를 각각 나타낸다.

그림 14. FMIPv6 의 기본구조

FMIPv6 에는 이동 노드가 L2 핸드오버 이전에 L3 핸드오버를 수행하기 위한 'Predictive Mode'와 'Reactive Mode' 시나리오가 있다. Predictive 의 경우 단말이 새로운 라우터로 이동 전에 정보 전송이 되는 경우로 단말이 새로운 노드로 핸드오버 전이나 진행 중에 바로 정보를 사용할 수 있다. Reactive 의 경우 새로운 라우터가 단말에게 정보를 요구하는 경우로 핸드오버가 수행 중이거나 마친 후에 이루어진다.

그림 15. FMIPv6 Predictive Mode

고속 핸드오버 동작은 최초 ‘AP 스캐닝'에 의해 단말이 이동해야 할 시점을 트러거링 하면서 시작된다. 이동노드는 자신이 이동 가능한 AP 를 관장하는 NAR 에 관한 정보를 얻기 위하여 PAR 에 RtSolPr 메시지를 보내고[절차 1.a] 그 응답으로 NAR 로부터 PrRtAdv 메시지를 받는다[절차 1.b]. 그리고 이 메시지에 포함된 Prefix 정보로부터 자신이 사용할 NCoA 를 생성하고 그 유효성을 검증하기위해 FBU 메세지에 NCoA 를 담아서 PAR 로 보낸다[절차 2].

PAR 은 이동노드를 대신하여 NCoA 의 유효성 확인검사를 위해서 NAR 로 HI 메세지를 보내고, 그것에 대한 응답 메세지인 HAck 를 수신한다[절차 3,4]. 그리고 이 유효성 여부를 이동노드에게 통지하기 위해서 FBack 메시지를 보낸다[절차 5]. 이동노드가 계속 움직여 PAR 링크를 벗어나면, PAR 은 이동노드에게 전달할 데이터를 터널링을 통해서 NAR 로 전달시킨다. 이동노드가 FBack 를 수신하고 NAR 링크에 들어가게 되면 FNA 를 NAR 에 전송하여 자신이 접속을 알리고 이동노드에게 배달된 패킷을 신속히 수신한다[절차 9].

그림 16. FMIPv6 Reactive Mode

'Reactive Mode'는 'Predictive Mode'와 마찬가지로 이동노드는 자신이 이동 가능한 AP 를 관장하는 NAR 에 관한 정보를 얻기 위하여 PAR 에 RtSolPr 메시지를 보내고 NAR 로부터 그 응답인 PrRtAdv 메시지를 받는다.[절차 1.a,b] 그러나 이동노드는 이미 PAR 영역을 벗어나 NAR 영역으로 들어가고 있는 상태이기 때문에 FBU 를 PAR 로 보내지 못하고 NAR 영역에서 FNA 메시지에 FBU 를 담아서 NAR 로 전송 한다.[절차 4] NAR 은 이동노드의 PAR 로 FBU 를 보내고 그 응답인 FBack 를 받는다.[절차 5,6] 그리고 NAR 은 PAR 로 배달된 이동노드의 데이터를 받아서 자신의 링크로 접속한 이동노드에게 그 데이터를 전달한다.[절차 8] Fast MIPv6 는 네트워크 계층에서 신속한 이동성을 지원한다. 그러나 보다 실현 가능한 Fast 핸드오버를 지원하기 위해서는 L2 에서의 L2 핸드오버가 고려된 이동 감지가 효과적으로 지원되어야만 한다.

제 4 장 시뮬레이션을 통한 핸드오버 기술의 성능 분석

4.1 네트워크 시뮬레이터

앞에서 살펴본 바와 같이 수직적 핸드오버에 대해서 더 정확한 이해를 위해 가상 시뮬레이터인 NS-2 시뮬레이터를 사용하기로 한다. 시뮬레이션이란 우리가 관찰하고자 하는 실제 시스템에서 시스템의 성질을 나타내는 모델을 만들고 그 모델을 이용하여 실험을 하는 것을 의미한다. 네트워크 시뮬레이션은 실제의 네트워크 환경을 가상적으로 구현하고 이를 이용하여 시뮬레이션을 수행하는 것을 말한다. 즉 소프트웨어적으로 구현한 링크, 노드, 장비 모델들을 실제의 장비를 구성하듯이 소프트웨어 상에서 가상적으로 구현함으로써, 실제로는 수행하기 어려운 신규 서비스의 테스트, 네트워크 구성 변경과 같은 관리적인 측면의 작업들과 더 나아가서는 새로운 아이디어를 적용한 프로토콜의 성능 테스트와 같은 작업들을 미리 수행해 볼 수 있다는 면에서 커다란 이점을 가진다. 그러나 이는 어디까지나 시뮬레이션이기에, 정확한 환경 데이터 수집과 모델의 구현이 갖추어질 때 비로소 실제 상황에 가까운 결과값을 이끌어낼 수 있다. ns-2 는 LBNL, Xerox PARC, UCB 및 USC/ISI 와 같이 공식적인 기관이나 단체가 연합하여 VINT 프로젝트를 통해 개발되었고, 세계적으로 가장 널리 알려지고 사용되고 있는 Open Source 기반의 네트워크 시뮬레이터로서, 세계적으로 많은 수의 사용자들이 이용하고 있으며, 이러한 사용자들이 개발하여 공유하는 모델들이 상당히 많이 유포되어 있다.

4.1.1 네트워크 시뮬레이터의 구성요소

그림 17. NS-2 Directory 구조

그림 17 은 ns-2 의 간단한 디렉토리 구조를 나타낸다. ns-all-in-one 패키지를 설치하면 아래와 같이 Tcl, Tk, TclCL, ns-2, OTcl, nam, xgraph 등의 디렉토리가 생성되고 각 디렉토리 마다 구성요소에 필요한 파일들을 포함한다. 프로토콜, 라우팅 알고리즘 등을 구현한 ns-2 의 핵심적인 소스 코드들은 ns-2 디렉토리 아래에 존재하며, ns-2 디렉토리의 하위 디렉토리인 Tcl 아래에는 여러 예제 프로그램들과 Validation Test 프로그램들이 OTcl 코드로 존재한다. nam 은 네트워크 애니메이션 도구로 시뮬레이션의 결과를 그래픽 사용자 인터페이스를 사용하여 보여줄 수 있는 도구이고, xgraph 는 X-Window 응용 프로그램으로 시뮬레이션 결과를 분석해서 그래프 형태로 보여주는 도구이다. ns-2 는 C++ 클래스 계층 구조와 OTcl 클래스 계층 구조를 모두 가지며, 두 계층 구조는 유사한 모습을 보인다. 두 계층 구조의 각 클래스는 TclCL 에 의해 연결되지만 두 계층 구조가 완전히 대응되는 것은 아니고 둘 사이에 연결이 없는 클래스들은 각자의 영역에서만 존재한다.

그림 18. OTcl and C++ : The Duality

그림 18 은 OTcl 과 C++의 객체들이 대응되는 모습을 나타낸 것이다. 두 개의 공간에서 연결되어 공유되는 객체가 있는 반면, 각자의 영역에서만 사용되는 객체도 존재한다.

그림 19. NS-2 클래스 계층 구조

그림 19 는 ns-2 의 클래스 계층 구조의 일부분을 간략하게 보인 것이다. TclObject 클래스가 모든 클래스의 root 가 되고 네트워크 구성요소들은 NsObject 클래스에 의해 구현된다. NsObject 클래스의 하위 클래스에는 Connector 클래스와 Classifier 클래스 등이 있다. Connector 클래스 아래에는 Agent, Delay, Queue, Trace 등의 클래스가 존재하고, 이들은 또한 각각에 해당되는 하위 클래스들을 가지고 있다. Classifier 클래스의 하위에는 AddressClassifier 클래스와 MCastClassifier 클래스가 존재하고, 이들은 라우팅 구현 시 유니캐스트, 멀티캐스트 방법에 사용된다. 하나의 네트워크 구성요소는 여러 개의 클래스들의 집합으로 구현된다. OTcl 에서의 ns-2 클래스 계층 구조는 다음과 같은 여섯 개의 중요한 클래스로 구성된다. Tcl 은 C++ 코드가 인터프리터를 사용하기 위한 함수를 포함하고 있다. TclObject 는 모든 시뮬레이터의 베이스 클래스이며, C++로 구현된 라이브러리에도 대응되는 클래스가 존재한다. TclClass 는 인터프리터에서 사용되는 클래스 계층을 정의하며, TclObject 를 객체로 생성할 수 있게 한다. TclCommand 는 간단한 전역 인터프리터 명령들을 정의할 수 있게 한다. EmbeddedTcl 은 시뮬레이션 설정을 쉽게 도와줄 수 있는 고급 내장 명령어들을 적재하는 함수를 포함한다. 마지막으로 InstVar 는 C++의 멤버 변수를 OTcl 에서 Instance 변수로 접근할 수 있게 한다.

4.2 시뮬레이션 환경 구축

NS-2 시뮬레이션 환경을 구축하기 위해 VMware Workstation / 7.1.3 build-324285 version 을 설치하고 Fedora 14.0 version 을 설치하였다.

그림 20. vmware 를 통한 Fedora14 설치

본 논문에서 사용할 MIH 모듈은 NIST 에서 제공하는 소스 코드를 기반으로 작성되었으며, 해당 코드는 아래 사이트의 Software Tools 란에 있는 Mobility Package 를 통하여 제공 받을 수 있다. NIST 의 Mobility Package 는 현재 ns-2.29 를 기준으로 작성되어 있다. 원활한 시뮬레이션을 위해 2.29 버전 중에서 all in one 버전을 다운로드하여 설치한다.

NIST MIH 모듈

http://www.antd.nist.gov/seamlessandsecure.shtml

ns-2 코드

http://www.isi.edu/nsnam/dist/

표 1. 시뮬레이션 환경 구축

수직적 핸드오버 시뮬레이션 환경

- VMware version-7.1.3- Fedora14- Ns-allinone-2.29.3.tar.gz- ns-2.29-nist-mob.022707.tgz

4.3 MIH 에이전트 및 사용자 클래스

핸드오버 메커니즘은 링크 계층에서 발생하는 다양한 신호로부터 현재 연결이 약해짐을 인지하고 새로운 연결점을 찾아내어 현재 연결을 끊고 새로운 연결로 이동하는 과정으로 구성된다. 이러한 과정을 위해 반드시 하위의 링크 계층으로부터 네트워크 상태에 대한 정보를 받아야 한다. 하위 계층으로부터 받을 수 있는 메시지의 예를 표 3 에서 소개한다.

표 2. 링크 계층의 핸드오버 관련 메시지

메시지 의 미MIH LINK UP 새로운 링크에 연결되어 데이터를 보낼 수 있음MIH LINK DOWN 현재 링크와 끊어짐MIH LINK GOING DOWN 현재 링크와 곧 끊어질 가능성이 높음MIH LINK DETECTED 연결 가능한 새로운 링크를 발견함MIH LINK PARAMETERS REPORT 현재 링크 계층의 정보를 알림MIH LINK EVENT ROLLBACK 전에 발생하였던 링크 계층의 정보가 틀렸음을 알림MIH LINK HANDOVER IMMINENT 핸드오버를 바로 수행하여야 함MIH LINK HANDOVER COMPLETE 핸드오버가 종료됨

핸드오버 메커니즘은 표 2 의 메시지에 따라 다음과 같은 과정으로 진행된다. 우선 새로운 접속네트워크를 발견하여 MIH LINK DETECTED 메시지가 발생하고, 현재 접속 중인 연결점으로부터 신호가 약해져 MIH LINK GOING DOWN 메시지가 발생하면, 새로운 연결점으로 핸드오버를 시도하게 된다. 링크 계층에서 핸드오버를 완료하여 새로운 연결점에 접속하면 MIH LINK UP 메시지가 발생하여 상위 계층에서 핸드오버를 수행할 수 있도록 한다. 상위 계층에서는 새로운 주소를 생성하고 바뀐 위치를 통신 중인 상대 노드(correspondent node)에 전달하여 데이터 통신을 재개한다. 이 과정을 수행하기 위해서는 위와 같은 메시지가 링크 계층에서 MIH Agent 클래스를 거쳐 MIH User 클래스에 정상적으로 전달되어야 하며, MIH User 클래스는 해당 메시지에 따른 기능을 수행하여야 한다.

그림 21. MIH Agent 에 의해 전달되는 과정

그림 21 에서 보여지듯이 링크 계층에서 발생한 메시지는 MIH Agent 에 전달된 후, 메시지를 전달받도록 등록된 모든 상위 계층의 MIH User 클래스에 메시지를 전달하고, 해당 메시지를 전달받을 상대 MIH Agent 에 다시 메시지를 패킷 형태로 변경하여 전달한다. 이를 전달받은 MIH Agent 는 다시 자신의 상위 MIH User 클래스에 메시지를 전달하고, 자신과 연결된 주변 MIH Agent 에게도 메시지를 전달한다. 일반적으로, MIH Agent 는 1 개의 MIH User 와 연결되어 있고, 상대 MIH Agent 또한 1 개이므로, 메시지는 1 개의 상위 MIH User 클래스와 1 개의 상대 MIH User Agent 에만 전달된다.

핸드오버 과정

그림 22 는 MIH 를 통하여 핸드오버를 수행하는 과정을 나타낸 것이다. 이동 노드(MN : Mobile Node)는 Node Discovery 과정을 통하여 연결이 가능한 MIH 노드를 찾은(router discovery) 후, 해당 MIH 노드에 Capability Discovery 과정을 통하여 해당 MIHF 의 접속과 관련된 정보를 얻고, MIH Registration 과정을 통하여 해당 MIH 노드에 등록을 하여 MIH 메시지가 전달될 수 있도록 한다. 이 모듈에서는 이와 관련된 메시지를 처리할 수 있는 함수를 사용자가 오버라이드(override)하여 사용할 수 있도록 하였다.

그림 22. MIH registration 흐름도

표 3. MIH User 클래스에서 핸드오버를 수행하는 함수

함 수 기 능 기본 클래스register_mih 로컬 MIH Agent 에 사용할 이벤트를 등록 HandoverRegister_remote_mih 원격 MIH Agent 에 사용할 이벤트를 등록 Handoverprocess_link_detected LINK DETECTED 메시지를 처리 MIHUserAgentprocess_link_up LINK UP 메시지를 처리 MIHUserAgentprocess_link_down LINK DOWN 메시지를 처리 MIHUserAgentprocess_link_going_down LINK GOING DOWN 메시지를 처리 MIHUserAgentprocess_link_rollback LINK ROLLBACK 메시지를 처리 MIHUserAgent

표 4 는 그림 22 와 같은 핸드오버를 수행하기 위해 필요한 기본적인 함수에 대한 리스트 이다. 사용자는 이 함수를 오버라이드하여 핸드오버 메커니즘을 구현할 수 있다.

4.4 시뮬레이션 코드의 구현

그림 23. MIH 시뮬레이션 토폴로지

그림 23 은 본 논문에서 시뮬레이션 하고자 하는 전체 네트워크 토폴로지(topology)를 도식화 한 것이다. 본 네트워크는 router0 (1.0.0)을 통하여 인터넷에 연결되어 있으며, router1 (2.0.0)은 서로 다른 3 종의 네트워크와 연결되어 있다. 이동 노드는 홈 주소(home address)로 고정 IP 주소 (4.0.0)를 가지고 있으며, 현재 연결된 인터페이스에 따라 각각 다른 IP 주소를 통하여 데이터를 교환한다. 각각의 인터페이스는 서로 다른 네트워크에 접속이 가능하며, 이동 노드의 움직임과 상황에 따라 적합한 네트워크로 핸드오버하며 네트워크를 사용하게 된다.

시뮬레이션 코드는 크게 아래와 같이 구성된다.

표 4. 시뮬레이션 코드의 구성

구 분 설 명

네트워크 구성 시뮬레이션을 위한 네트워크를 생성

다중 인터페이스 노드 생성 여러 네트워크에 접속 가능한 이동노드를 생성

Neighbor Discovery 설정이동노드가 네트워크의 접속 여부를 판단할 수 있도록 하는 Neighbor Discovery

를 설정

MIH 설정 핸드오버를 위한 MIH 와 MIH User 객체를 생성

트래픽 생성 시뮬레이션을 위한 네트워크의 가상 트래픽을 생성

UMTS 채널 설정 이동 노드가 접속할 수 있도록 UMTS 네트워크에서 사용하는 채널을 설정

인터페이스와 MIH 클래스의 연결 생성한 MIH, MIH User, Interface 객체를 연결

시뮬레이션 동작 설정 및 실행 시간에 따른 각 객체의 동작 시나리오를 작성한 후 실행

본 시뮬레이션의 네트워크는 다음과 같은 세 가지 네트워크로 구성되어 있다.

1. UMTS

2. WLAN

3. Ethernet (VLAN: Virtual LAN)

각각의 네트워크는 네트워크의 특성에 따라 서로 다른 방식으로 노드를 설정한다. 본 시뮬레이션에서 UMTS 네트워크는 모든 영역에 대하여 접속이 가능하도록 하였다. WLAN 네트워크의 경우 특정 위치를 기준으로 일정 반경 이내에서만 접속이 가능하며, Ethernet 은 사용자가 Ethernet 에 유선으로 연결할 경우에만 사용이 가능하다. 아래에 각 네트워크의 설정 과정에 대해 설명하였다.

UMTS 네트워크는 RNC, BS, UE 로 구성되어 있으며, ns-2 코드에서 네트워크의 구성 순서는 아래 코드와 같이 RNC, BS, UE 순으로 생성되도록 한다. 또한 UMTS 네트워크는 다른 노드들보다 먼저 생성되어야 하는데, 이 순서가 맞지 않을 경우, 잘못된 결과가 나올 수 있다.

<코드 1> UMTS 네트워크의 설정

# configure RNC node1 $ns node-config -UmtsNodeType rnc2 set rnc [$ns create-Umtsnode 0.0.0] ;# node id is 0.3 puts "rnc: tcl=$rnc; id=[$rnc id]; addr=[$rnc node-addr]"45 # configure UMTS base station6 $ns node-config -UmtsNodeType bs \7 -downlinkBW 384kbs \8 -downlinkTTI 10ms \9 -uplinkBW 384kbs \10 -uplinkTTI 10ms \11 -hs_downlinkTTI 2ms \12 -hs_downlinkBW 384kbs1314 set bsUMTS [$ns create-Umtsnode 0.0.1] ;# node id is 115 puts "bsUMTS: tcl=$bsUMTS; id=[$bsUMTS id]; addr=[$bsUMTS node-addr]"

# connect RNC and base station16 $ns setup-Iub $bsUMTS $rnc 622Mbit 622Mbit 15ms 15ms DummyDropTail 20001718 $ns node-config -UmtsNodeType ue \19 -baseStation $bsUMTS \20 -radioNetworkController $rnc21 set iface0 [$ns create-Umtsnode 0.0.2] ;# node id is 222 puts "iface0(UMTS): tcl=$iface0; id=[$iface0 id]; addr=[$iface0 node-add r]"각 노드의 생성 전에 UmtsNodeType 을 통하여 노드의 형식을 결정하고, 일반 노드와 달리 create-Umtsnode 함수를 통하여 노드를 생성하게 된다. create-Umtsnode 함수는 해당 노드의 생성에 필요한 설정을 마친 후, node 함수를 통하여 해당 노드를 생성한다.

<코드 2> IEEE 802.11 WLAN 의 설정

12345678910111213141516171819202122232425262728

# configure Access Points$ns node-config -adhocRouting $opt(adhocRouting) \ -llType $opt(ll) \

-macType $opt(mac) \-channel [new $opt(chan)] \-ifqType $opt(ifq) \-ifqLen $opt(ifqlen) \-antType $opt(ant) \-propType $opt(prop) \-phyType $opt(netif) \-topoInstance $topo \-wiredRouting ON \-agentTrace ON \-routerTrace OFF \-macTrace ON \-movementTrace ON \

# configure Base station 802.11set bstation802 [$ns node 3.0.0]$bstation802 set X_ [expr 300.0]$bstation802 set Y_ 300.0$bstation802 set Z_ 0.0puts "bstation802: tcl=$bstation802; id=[$bstation802 id];

# creation of the wireless interface 802.11$ns node-config -wiredRouting OFF \ -macTrace ONset iface1 [$ns node 3.0.1]

WLAN 네트워크는 AP 의 설정을 위해 많은 인자를 요구하는데, 각각의 인자는 시뮬레이션 하고자 하는 대상에 맞추어 설정된다. 코드 2 에서는 각각의 인자를 변수로 미리 설정하여 사용하였다. AP 는 UMTS 네트워크와 달리 통신 가능 범위가 작기 때문에, AP 의 위치를 지정하여 이동 노드가 특점 범위 이내에 있을 때에만 통신이 가능하도록 한다. 이와 같은 설정에 따라 이동 노드는 특정 영역 안에서만 AP 의 비콘 (beacon) 메시지를 받게 되고, 이를 이용하여 핸드오버를 결정하게 된다. 마지막으로, 이동 노드를 위한 인터페이스를 생성한다. 이동 노드의 인터페이스는 라우팅을 위해 AP 와 동일 IP주소 대역(3.0.X)으로 설정한다.

<코드 3> Ethernet 의 설정

123

set lan0 [$ns newLan $nodelist 10Mb 1ms \-llType LL -ifqType Queue/DropTail \-macType Mac/802_3 -chanType Channel -address 2.0.1]

Ethernet 은 코드 3 과 같이 newLan 함수를 통하여 router1(2.0.0)과 interface2(2.0.2) 사이에 새로운 노드 (2.0.1)를 생성하여, 새로운 노드에 의해 두 노드가 Ethernet 을 통하여 연결된 것과 같도록 한다.

<코드 4> Router1 과 각 네트워크의 연결

12345

# connect links$ns duplex-link $rnc $router1 622Mbit 0.4ms DropTail 1000$ns duplex-link $router1 $router0 100MBit 5ms DropTail 1000$ns duplex-link $router1 $iface2 100MBit 5ms DropTail 1000$rnc add-gateway $router1

마지막으로, 코드 4 와 같이 router1 과 각 네트워크의 연결 코드를 작성하여 토폴로지의 구성을 마친다. 각각의 네트워크는 서로 다른 경로를 통하여 이동 노드와 통신을 하므로, 각기 서로 다른 네트워크 주소를 가져야 한다. 위 코드에서는 UMTS 네트워크는 0.0.X, Ethernet 은 2.0.X, 802.11 WLAN 네트워크는 3.0.X 로 주소를 설정하여, 계층적 라우팅에 의해 이동 노드가 현재 연결된 네트워크에 따라 다른 경로로 데이터를 보낼 수 있도록 하였다.

다중 인터페이스 노드 생성

이와 같이 설정한 이동 노드의 인터페이스 0,1,2 는 각각 다른 노드로 생성된다. 따라서, 이러한 인터페이스를 묶어 하나의 노드로 만들기 위한 별도의 코드가 필요하다. ns-2 에서는 다중 인터페이스 노드를 위해 multiIf 옵션을 제공한다.

<코드 5> 다중 인터페이스 노드의 생성

123456789

# creation of the MutiFaceNodes. It MUST be done before the 802.11$ns node-config -multiIf ON ;#to create Mult iFaceNodeset multiFaceNode [$ns node 4.0.0] ;# node id is 6$ns node-config -multiIf OFFputs "multiFaceNode: tcl=$multiFaceNode; id=[$multiFaceNode id]; addr=[$ multiFaceNode node-addr]"

# add interfaces to MultiFaceNode$multiFaceNode add-interface-node $iface1$multiFaceNode add-interface-node $iface0

1011

$multiFaceNode add-interface-node $iface2

위의 코드 5 와 같이 multiIf 옵션을 ON 시킨 후, 새로운 노드를 만들고, 서로 생성된 노드에 여러 인터페이스를 붙임으로써 다중 인터페이스 노드를 생성할 수 있다. 이렇게 생성된 다중 인터페이스 노드는 상황에 따라 인터페이스를 바꾸면서 지속적으로 네트워크를 사용할 수 있다.

Neighbor Discovery 설정

이동성을 가진 다중 인터페이스 노드가 새로운 연결네트워크를 찾고, 연결점을 바꾸기 위해서는 ND(Neighbor Discovery) 과정이 필요하다. 그런데 이러한 기능이 ND 모듈에 구현되어 있다.

<코드 6> ND 모듈 설정

123456789101112131415161718 1920212223

# install ND modules# take care of UMTS# Note: The ND module is on the rnc node NOT in the base station

set nd_rncUMTS [$rnc install-nd]$nd_rncUMTS set-router TRUE$nd_rncUMTS router-lifetime 5$nd_rncUMTS enable-broadcast FALSE$nd_rncUMTS add-ra-target 0.0.2 ;#in UMTS there is no notion of broadcast.

#We fake it by sending unicast to a lis t of nodesset nd_ue [$iface0 install-nd]# now WLANset nd_bs [$bstation802 install-nd]$nd_bs set-router TRUE$nd_bs router-lifetime 5set nd_mn [$iface1 install-nd]

# finally Ethernetset nd_router [$router1 install-nd]$nd_router set-router TRUE$nd_router router-lifetime 5set nd_eth [$iface2 install-nd]

따라서 위의 코드 6 과 같은 형식으로 각 네트워크의 끝단과 다중 인터페이스 노드의 인터페이스들에 ND 모듈을 설치하면, 네트워크가 변경되었음을 감지하거나 접속이 가능한 새 네트워크를 인식하는 것이 가능해진다. 위의 코드는 각각의 네트워크와 인터페이스들에 차례로 ND 를 설치하는 과정이다. ND 메시지는 해당 범위 안의 같은 채널을 사용하는 모든 노드에 브로드캐스트로 전송되어야 한다. 그런데 구현된 모듈에서는 ND 모듈이 설치된 모든 노드에 유니캐스트(unicast)로 비콘 메시지를 전달한다. 그렇지만 비콘 메시지를 받은 노드 중 해당 AP 의 범위 내에 있는 노드만 비콘 메시지를 처리함으로써, 구현된 모듈도 일반적인 ND 모듈의 기능과 같은 결과를 가져오게 된다.

MIH 생성

이제 핸드오버를 수행하기 위해 MIH 기능을 각 노드에 추가하고 해당 MIH 기능과 이를 처리할 MIH User 클래스를 연결하는 코드를 작성한다.

<코드 7> 핸드오버를 수행하기 위한 MIH 생성

123456789101112131415161718 19202122

# install interface manager into multi-interface node and CN#Agent/MIHUser/IFMNGMT/MIPV6/Handover/Handover1 set case_ 2#set handover [new Agent/MIHUser/IFMNGMT/MIPV6/Handover/Handover1]set handover [new Agent/MIHUser/IFMNGMT/MIPV6/Handover/Simple]$multiFaceNode install-ifmanager $handover$nd_mn set-ifmanager $handover$handover nd_mac $nd_mn [$iface1 set mac_(0)] ;#to know how to send RS$nd_ue set-ifmanager $handover$nd_eth set-ifmanager $handover

set ifmgmt_cn [$router0 install-default-ifmanager]

# install MIH in multi-interface nodeset mih [$multiFaceNode install-mih]

$handover connect-mih $mih ;#create connection between MIH and iface man agement

# install MIH on APset mih_bs [$bstation802 install-mih]set tmp_bs [$bstation802 set mac_(0)]$tmp_bs mih $mih_bs$mih_bs add-mac $tmp_bs

우선 핸드오버를 위한 클래스로 Handover 클래스를 생성한다. Handover 클래스를 다중 인터페이스 노드에 생성하고, 다중 인터페이스 노드에 연결된 각 인터페이스의 ND 모듈에 등록하여, ND 모듈에서 발생한 신호가 MIH 객체로 전달될 수 있도록 한다. 인터페이스 1 의 경우 AP 와 RS/RA 신호를 주고 받아야 하기 때문에, 라인 7 와 같이 추가적으로 Handover 클래스에 등록한다. 다중 인터페이스 노드에 생성한 MIH User 클래스의 상대 MIH User 클래스는 router0 에 설치하는데, 본 코드에서는 router0 에서 특별한 기능을 수행하지 않기 때문에, 라인 11 과 같이 install-default-ifmanager 함수를 사용하여 기본 MIH User 클래스를 생성한다. 이제 다중 인터페이스 노드에 MIH 클래스를 생성하고(라인 14), Handover 클래스와 다중 인터페이스 노드의 MIH 클래스를 연결한다(라인 16). 또한 AP 에 MIH 클래스를 설치하여, 인터페이스 1 의 상대 MIH User 클래스로서의 기능을 수행할 수 있도록 한다.

트래픽 생성

이제 핸드오버 기능이 정상적으로 동작되는지를 확인하기 위한 트래픽 생성 코드를 작성한다.

<코드 8> 트래픽 발생 모델

123456789101112131415161718 19

#create traffic: TCP application between router0 and Multi interface node

# create a TCP agent and attach it to multi-interface nodeset tcp_(0) [new Agent/TCP/FullTcp]$multiFaceNode attach-agent $tcp_(0) $iface0 ;# new command: he interface is used for sending

# create a TPC agent and attach it to router0set tcp_(1) [new Agent/TCP/FullTcp]$ns attach-agent $router0 $tcp_(1)# Create a CBR traffic source and attach it to tcp_(1)set cbr_(0) [new Application/Traffic/CBR]$cbr_(0) set packetSize_ 500$cbr_(0) set interval_ 0.01$cbr_(0) attach-agent $tcp_(1)

# connect both TCP agent$handover add-flow $tcp_(0) $tcp_(1) $iface0 1$tcp_(0) listenputs "tcp stream made from [$router0 node-addr] and [$iface0 node-addr]"

다중 인터페이스 노드와 router0 간에 TCP 연결을 생성한 후, CBR 트래픽을 router0 에서 다중 인터페이스 노드로 전송한다. 이 때, 플로우를 Handover 클래스에서 관리할 수 있도록 라인 17 과 같이 Handover 클래스에 등록한다.

UMTS 채널의 설정

UMTS 네트워크는, UE(User Equipment)가 네트워크 상에서 데이터 통신을 할 수 있도록 하기 위해, 채널을 할당 받아야 한다. 따라서 인터페이스 0 를 통한 데이터 연결뿐만 아니라 제어 채널인 Handover 클래스와 nd_ue 클래스도 코드 9 와 같이 채널을 할당 받는 과정이 필요하다.

<코드 9> UMTS 의 채널 설정

12345678

# do registration in UMTS. This will create the MACs in UE and base stat ions$ns node-config -llType UMTS/RLC/AM \

-downlinkBW 384kbs \-uplinkBW 384kbs \-downlinkTTI 20ms \-uplinkTTI 20ms \-hs_downlinkTTI 2ms \-hs_downlinkBW 384kbs

9101112

# for the first HS-DCH, we must create. If any other, then use attach-dchset dch0 [$ns create-dch $iface0 $tcp_(0)]$ns attach-dch $iface0 $handover $dch0$ns attach-dch $iface0 $nd_ue $dch0

채널의 할당은 현재 연결하려는 채널의 상태를 설정한 후, 이루어진다. 처음 연결은 create-dch 로 생성할 수 있으며, 나머지 연결은 attach-dch 함수를 통하여 채널을 할당한다.

인터페이스와 MIH 클래스의 연결

위에서 생성한 MIH 모듈에 다중 인터페이스 노드의 각 인터페이스를 등록하는 코드를 작성한다.

<코드 10> UMTS, WLAN 및 Ethernet 인터페이스와 MIH 클래스의 연결

12

345678910

# Now we can register the MIH module with all the MACsset tmp2 [$iface0 set mac_(2)] ;#in UMTS and using DCH the MAC to use is 2 (0 and 1 are for RACH and FACH)$tmp2 mih $mih$mih add-mac $tmp2 ;#inform the MIH about the local MACset tmp2 [$iface1 set mac_(0)] ;#in 802.11 one interface is created$tmp2 mih $mih$mih add-mac $tmp2 ;#inform the MIH about the local MACset tmp2 [$iface2 set mac_(0)] ;#in 802.3 one interface is created$tmp2 mih $mih$mih add-mac $tmp2 ;#inform the MIH about the local MAC

위 코드 10 과 같이, 각 인터페이스의 mac 클래스에 mih 클래스를 등록하고, mih 클래스에도 연결된 mac 클래스를 등록한다. 이 코드를 통하여 mac 클래스에서 발생한 MIH 이벤트가 mih 클래스로 전달되고, mih 클래스에서도 mac 클래스로 명령을 전송할 수 있게 된다. 이 때, UMTS 네트워크의 UE 는 2 번 mac 클래스를 통하여 BS 와 통신을 하기 때문에 라인 2 와 같이 mac_(2)를 인자로 사용한다.

시뮬레이션 시나리오 설정 및 실행

이제, 초 단위로 시뮬레이션 코드를 작성한다. 처음 0초에 UMTS 네트워크, Ethernet 네트워크와의 연결을 끊은 후, 3초부터 AP 를 통하여 RA 신호를 보낸다. 9초에 UMTS 네트워크를 연결 한 후, 10초에 인터페이스 1 의 위치를 AP 와 통신이 가능한 범위로 재설정한다. 이로 인해, 이동 노드는 핸드오버 알고리즘에 따라 현재 접속 네트워크인 UMTS 에서 AP 로 핸드오버 할 수 있게 된다. 또한 이때부터 데이터 통신을 시작하여 초기 핸드오버가 완료되기 전까지 UMTS 네트워크를, 핸드오버가 끝난 후에는 WLAN 네트워크를 사용할 수 있도록 한다. 20초에는 Ethernet 을 연결하여 Ethernet 을 통하여 데이터가 전송되도록 하고, 다시 24초에 Ethernet 과의 연결이 해제되면서, WLAN 혹은 UMTS 네트워크를 사용하도록 한다[33].

<코드 11> 시뮬레이션 시나리오 설정 및 실행

1234

$ns at 10 "$cbr_(0) start" ;#we should make sure we have UMTS link up before starting to send.# set original status of interface. By default they are up..so to have a link up,# we need to put them down first.

567891011121314151617

$ns at 0 "[eval $iface0 set mac_(2)] disconnect-link" ;#UMTS UE$ns at 0 "[eval $iface2 set mac_(0)] disconnect-link" ;#Ethernet

# set the starting time for Router Advertisements$ns at 3 "$nd_bs start-ra"

$ns at 9 "[eval $iface0 set mac_(2)] connect-link" ;#umts link$ns at 20 "[eval $iface2 set mac_(0)] connect-link" ;#ethernet link$ns at 24 "[eval $iface2 set mac_(0)] disconnect-link" ;#ethernet link$ns at 45 "finish"

puts " Simulation is running ... please wait ..."

$ns run

4.5 시뮬레이션 결과 분석

그림 24. nam file 실행화면

시뮬레이션 코드를 실행하면 그림 24 와 같은 결과 화면을 볼 수 있다. 코드에 의해 구성된 네트워크 토폴로지에는 각 노드 별로 노드번호가 할당 되어있다. 이것을 쉽게 설명하기 위해 그림 25 에 다시 표현하였다.

그림 25. 시뮬레이션을 위한 네트워크 토폴로지 구성

표 5. 각 노드의 ID Table

노 드 아이디 노 드 아이디rnc 0 bstation802 5

bsUMTS 1 lan0 6iface0 2 iface1 7

router0 3 iface2 8router1 4 multiFaceNode 9

그림 26. 멀티모드 이동노드가 AP 범위 내에 없음

그림 26 에서 보면 현재 멀티노드인 9 번노드가 AP 의 범위 밖에 있기 때문에 AP 의 비콘 메시지를 수신을 할 수 없는 상태이다. 시뮬레이션 시나리오 설정을 보면 10초에 멀티노드인 9 번노드의 위치를 AP 의 비콘 메시지를 수신할 수 있는 범위로 설정하기 때문에 현재 9.7초인 상황에서는 메시지를 수신할 수 없는 상태이다. 따라서 9 번노드의 테두리가 회색으로 표시되어 AP 의 범위 밖에 있다는 것을 보여주고 있다.

그림 27. 멀티모드 이동노드가 AP 범위 내에 들어옴

그림 27 에서는 멀티노드인 9 번노드가 AP 의 비콘 메시지를 받을 수 있는 상태라는 것을 확인 할 수 있다. 10초가 지나 9 번노드의 위치가 AP 의 범위 안으로 들어오게 설정되어 현재 10.0005초인 상황에서 멀티노드는 AP 의 비콘 메시지를 수신 할 수 있다. 따라서 현재 접속중인 UMTS 네트워크에서 WLAN 네트워크로 핸드오버가 수행 가능한 상황이다.

그림 28. 두 네트워크간 핸드오버가 가능한 상황

현재 UMTS 네트워크와의 연결을 통해 데이터통신 중인 멀티 노드인 9 번노드가 이동하면서 AP 의 범위 안으로 들어와 WLAN 과의 접속이 가능하다는 것을 보여주고 있다. UMTS 와 WLAN 과의

핸드오버가 발생할 수 있는 상황이다.

그림 29. 시뮬레이션 실행 결과 콘솔 출력 화면

10초에 이동 노드는 AP 의 통신 가능 구역으로 이동하여 AP 의 비콘 메시지를 연결 가능한 새로운 네트워크가 있음을 MIH User 클래스에 전달한다. 이 신호를 전달받은 Handover 클래스는 process_link_detected 함수에 정의된 자체 알고리즘에 따라 새로운 링크와 현재 링크를 비교한 후, 새로운 링크로 연결을 바꾼다. 새로운 링크(WLAN)로 이동이 완료되면, LINK UP 신호를 생성하여 MIH Agent 에 전달한다. 인터페이스 매니저를 통하여 Handover 클래스로 해당 메시지가 전달되면, Handover 클래스는 ND 모듈에 RS 를 보낼 것을 요구한다. ND 모듈은 RS 를 보낸 후, RA 신호를 받으면 Handover 클래스의 process_new_prefix 함수를 호출하여 새로운 주소(3.0.1)을 생성하도록 한다. 이동 노드(4.0.0)는 인터페이스 1(3.0.1)을 통하여 Capacity Discovery 과정과 Registration 과정을 거쳐 데이터 통신이 가능하도록 한다.

그림 30. UMTS 네트워크를 통한 패킷전송

그림 30 은 UMTS 네트워크를 통한 패킷 전송을 나타낸다. 처음 10초에 UMTS 네트워크와 연결되어 패킷 전송을 하는 것을 보여준다. 10초이후 AP 의 범위 안으로 들어온 멀티노드는 WLAN 네트워크로 핸드오버를 수행한다. 16초 정도에서 다시 UMTS 네트워크를 잠시 사용한 후 다시 WLAN 네트워크로 이동하여 패킷을 전송한다. 그 후에는 시나리오에 설정된 것처럼 21초에 Ethernet 을 이용하여 패킷을 전송하고 24초에 Ethernet 과의 연결이 끊기면 다시 UMTS 네트워크를 이용하여 패킷을 전송한다.

그림 31. Ethernet 을 통한 패킷전송

그림 31 에서는 Ethernet 을 이용한 패킷 전송을 볼 수 있다. 21초에 Ethernet 과 연결되어 데이터를 전송하다가 24초 정도에 연결을 끊고 다른 네트워크를 사용하여 패킷을 전송하게 된다.

그림 32. WLAN 네트워크를 통한 패킷전송

그림 32 에서 WLAN 을 통한 패킷 전송을 볼 수 있다. 처음 10초에는 UMTS 네트워크를 통하여 패킷이 전송되다가 11초부터 WLAN 으로 핸드오버를 수행하여 패킷을 전송한다. 이 후 16초에 잠시 UMTS 네트워크로 이동하여 데이터를 전송하고 다시 17초부터 21초까지 WLAN 을 통하여 패킷을 전송한다. 21초부터 24초까지는 Ethernet 을 통하여 패킷이 전송되는 부분이다.

그림 33. 각 네트워크를 통한 패킷 전송

그림 33 에서는 각각의 네트워크를 통한 패킷이 전송되는 모습을 하나의 그래프를 통해서 보여주고 있다. 위에서 본 그림 30 에서 비어 있는 부분이 다른 네트워크를 통해서 패킷이 전송되고 있다는 것을 볼 수 있다. 그래프에서 보면 패킷 번호가 순차적으로 증가하면서 끊김없는 서비스가 수행되고 있는 것처럼 보이지만 핸드오버가 이루어지고 있는 부분을 확대해서 보면 부분적인 패킷 손실이 일어나고 있는 것을 알 수 있다. 그림 33 에서 점선으로 되어있는 부분을 확대해보면 그림 34 와 같다.

그림 34. 패킷 전송을 확대한 모습

그림 34 에서 보면 UMTS 네트워크에서 11 번째 패킷이 전송된 후 WLAN 네트워크로 핸드오버 하여 다음 패킷이 전송된다. WLAN 네트워크에서 전송이 시작된 패킷 번호는 18 번 이다. 따라서 핸드오버가 이루어 지면서 6 개의 패킷이 손실된 것을 알 수 있다.

제 5 장 결론 및 향후 과제

본 논문에서는 UMTS 네트워크, WLAN 네트워크 및 Ethernet 을 구성하고 MIH 기술을 이용한 이기종 네트워크에서의 수직적 핸드오버에 대해 시뮬레이션하고 성능을 분석하였다. 시뮬레이션에 사용한 프로토콜은 MIPv6 로서 핸드오버를 수행할 시 지연시간이 발생하여 서비스 중단이나 품질 저하의 문제가 발생한다. 핸드오버 지연 시간은 세가지로 분류 할 수 있는데 탐색지연, 인증지연,

재결합 지연이 그것이다. 최근 WLAN, 3G, Wibro, LTE 등 다수의 이기종 네트워크가 통합된 상황에서 각 네트워크로의 빈번한 핸드오버가 피할 수 없는 상황이 되었다. 이러한 상황에서 핸드오버 지연은 Qos 를 현저히 떨어뜨리게 된다. MIH 기술을 이용하게 되면 이러한 지연시간을 줄일 수 있어 더 빠른 핸드오버가 가능하게 되고 패킷 손실을 줄일 수가 있게 된다. 하지만 MIH 기술을 이용한다고 해서 핸드오버 지연과 패킷 손실을 완벽하게 극복할 수 있는 것은 아니다. 따라서 MIPv6 를 이용하여 핸드오버를 수행할 때 지연시간을 줄이는 방법이 나오게 되었다. IETF 의 mipshop 워킹그룹에서 제안하여 표준화한 두 가지 프로토콜인 FMIPv6 와 HMIPv6 이다. FMIPv6 는 2 계층 핸드오버 전에 3계층 핸드오버의 일부 과정을 미리 수행하여 핸드오버 지연시간을 줄이는 프로토콜이고, HMIPv6 는 일정한 범위를 커버할 수 있는 에이전트를 두어 이동성을 지역적으로 관리하여 핸드오버 지연시간을 줄이는 프로토콜이다. 특히 FMIPv6 는 핸드오버 동안에 손실되는 패킷들을 이전 액세스 라우터와 새로운 액세스 라우터 사이의 터널을 이용하여 패킷 손실을 감소시킴으로써 MIPv6 에서의 핸드오버 성능을 향상시켰다. 하지만 FMIPv6 는 MIPv6 와 같이 홈에이전트와 상대노드에게 새로운 주소에 대한 정보를 갱신하기 위한 지연시간이 여전히 길게 남아있다. 따라서 단지 대역폭에 따른 핸드오버를 수행하기 보다 User Centric 측면에서 새로운 네트워크로 이동했을 때 발생하는 효용(비용)을 정의하고 이를 최대화 또는 최소화하는 네트워크를 선택하는 새로운 매커니즘이 필요할 것이다.

참고 문헌

[1] G. Wu, M. Mizuno, and P. Havinga, “MIRAI Architecture for Heterogeneous Network,” IEEE Communications Magazine, 2002.

[2] 3GPP TS36.300, “Evolved Universal Terrestrial Radio Access (E-UTRA) and Evolved Universal Terrestrial Radio Access Network (E-UTRAN): Overall Description.”

[3] IEEE 802.16e-2005, “Air Interface for Fixed and Mobile Broadband Wireless Access Systems.”

[4] IEEE 802.11, “Wireless LAN Medium Access Control(MAC) and Physical Layer (PHY) Specifications.”

[5] E. McCune, “High-Efficiency, Multi-Mode, Multi-Band Terminal Power Amplifiers,” IEEE icrowave, Mar. 2005, pp. 44–55.

[6] W. Song et al., “Resource Management for QoS Support in Cellular/WLAN Interworking,” IEEE Network, 2005.

[7] Ramon Ferrus, Oriol Sallent and Ramon Agusti“ Interworking In Heterogeneous Wireless Networks: Comprehensive Framework And Future Trends”, IEEE Wireless Communications, 2010.

[8] 3 G P P T S 2 3 . 4 0 2 v . 8 . 2 . 0 , “ A r c h i t e c t u r e Enhancements for Non-3GPP Accesses (Release 8),” June 2008.

[9] M. Kassar, B. Kervella, and G. Pujolle, “An overview of vertical handover decision strategies in heterogeneous wireless networks,” Computer Communications, 2008.

[10] K. Taniuchi, Y.Ohba, V. Fajardo, S. Das, M.Tauil, Y. Cheng A. Dutta, D.Baker, M. Yajnik and D.Famolari, “IEEE 802.21: Media independent handover: Features, applicability, and realization,” IEEE Communications Magazine, 2009.

[11] X. Yan et al., “A survey of vertical handover decision algorithms in Fourth Generation heterogeneous wireless networks,” Computer Networks, 2010.

[12] S. Mohanty, I.F. Akyildiz, “A cross-layer (layer 2 +3) handoff management protocol for next-generation wireless systems,” IEEE Transactions on Mobile Computing, 2006.

[13] T. Zahariadis, D. Kazakos, “(R)evolution toward 4G mobile communication systems,” IEEE Wireless Communications, 2003.

[14] N. Nasser, A. Hasswa, H. Hassanein, “Handoffs in fourth generation heterogeneous networks,” IEEE Communications Magazine, 2006.

[15] 남창원, 이종욱, 박세웅 “이기종 네트워크의 개요와 주요 이슈 분석”, 정보와 통신, 2012 년 2 월

[16] A. Taha, H. Hassanein, H. Mouftah, “On robust allocation policies in wireless heterogeneous

networks,” IEEE QSHINE, 2004.

[17] D. Niyato, E. Hossain, “A Cooperative game framework for bandwidth allocation in 4G heterogeneous wireless networks,” IEEE ICC, 2006.

[18] X. Yang, J. Bigham, L. Cuthbert, “Resource management for service providers in heterogeneous wireless networks,” IEEE WCNC, 2005.

[19] Q. Song, A. Jamalipour, “A network selection mechanism for next generation networks,” IEEE ICC 2005.

[20] X. Liu, V.O.K. Li, P. Zhang, “Joint radio resource management through vertical handoffs in 4G networks,” IEEE GLOBECOM, 2006.

[21] A. Wilson, A. Lenaghan, R. Malyan, “Optimising wireless access network selection to maintain QoS in heterogeneous wireless environments,” Wireless Personal Multimedia Communications, 2005.

[22] G. Koundourakis, D. Axiotis, M. Theologou, “Network-based access selection in composite radio environments,” IEEE WCNC, 2007.

[23] A. Ben Nacef, N. Montavont, “A generic end-host mechanism for path selection and flow distribution,” IEEE PIMRC, 2008.

[24] IEEE 1900.4 WG; http://grouper.ieee.org/groups/emc/emc/1900/4/

[25] IEEE SCC41); http://www.scc41.org/

[26] S. Buljore, H. Harada, S. Filin, P. Houze, K.Tsagkaris, O. Holland, K. Nolte, T. Farnham, and V. Ivanov, “Architecture and enablers for optimized radio resource usage in heterogeneous wireless access networks: The IEEE 1900.4 working group,” IEEE Communications Magazine, 2009.

[27] Cisco, “Cisco Visual Networking Index: Global Mobile Data Traffic Forecast Update, 2010-2015.”

[28] A. H. Zahran and C. J. Sreenan, “Threshold-based media streaming optimization for heterogeneous wireless networks,” IEEE Transactions on Mobile Computing, 2010.

[29] A. Kassler et al., “Multimedia Communication in Policy Based Heterogeneous Wireless Networks,” IEEE VTC, 2004.

[30] M. Bernaschi, F. Cacace, R. Clementelli, and L.Vollero, “Adaptive Streaming on Heterogeneous Networks,” ACM WMuNeP, 2005.

[31] D.-N. Yang and M.-S. Chen, “Bandwidth Efficient Video Multicasting in Multiradio Multicellular Wireless Networks,” IEEE Transactions on Mobile Computing, 2008.

[32] K.-J. Peng and Z. Tsai, “Distortion and Cost Controlled Video Streaming in a Heterogeneous Wireless Network Environment,” IEEE PIMRC, 2006.

[33] NS-2 네트워크 시뮬레이터의 활용 저자 장영민 외 지음 출판사 홍릉과학출판사 | 2008.07.21