msctp 를이용한종단간이동성지원방안393 msctp 를이용한종단간이동성지원방안 (An End-to-End Mobility Support Mechanism based on msctp) 장문정 이미정 고석주 (MoonJeong Chang) (MeeJeong Lee) (SeokJoo Koh) 요약최근트랜스포트계층에서이동성을지원하기위한방안으로 msctp 가제안되었다. msctp 는 SCTP 의멀티호밍특성을기반으로하며, 노드의이동성을지원하기위해 SCTP 커넥션의종단점에매핑되는 IP 주소를동적으로추가 삭제하는기능을이용한다. 본논문에서는 msctp 의성능향상을위해 2 계층정보를이용하여새로운 IP 주소를추가하거나이전 IP 주소를삭제하는시점을결정하는방안과이동노드에서데이타전송경로변경을결정하는방안을제안하였다. 또한, 새로운데이타경로를획득하는시간이길어지는경우핸드오버지연을줄이기위한방안을제안하였다. 시뮬레이션을통하여제안하는방안이네트워크계층의이동성지원과대등한성능을보임을확인하였고, 이동노드의속도가빠를때는네트워크계층에서의이동성지원방안보다더나은성능을제공함을볼수있었다. 키워드 : 트랜트포트계층, 이동성, msctp, SCTP Abstract Recently, msctp (Mobile SCTP) has been proposed as a transport layer approach for supporting mobility. msctp is based on the 'multi-homing' feature of Stream Control Transmission Protocol(SCTP), and utilize the functions to dynamically add or delete IP addresses of end points to or from the existing connectionin order to support mobility. In this paper, we propose a mechanism to determine when to add or delete an IP address, utilizing the link layer radio signal strength information in order to enhance the performance of msctp. We also propose a mechanism for a mobile node to initiate the change of data delivery path based on link layer radio signal strength information. In addition, if it takes long time to acquire new data path, we propose an approach for reducing handover latency. The simulation results show that the performance of proposed transport layer mobility support mechanism is competitive compared to the traditional network layer mobility supporting approach. Especially, when the moving speed of mobile node is fast, it shows better performance than the traditional network layer approaches. Key words :transport layer, mobility, msctp, SCTP 1. 서론 차세대인터넷사용자들을위해서는이동하면서연속적으로인터넷에접속하고통신할수있도록지원하는것이필수적이다. 현재까지 Mobile IP[1] 를기점으로다양한네트워크계층에서의이동성지원프로토콜들이제안되어왔다. 네트워크계층에서이동성을지원하면트랜스포트계층에서사용자의이동을인식하지않고 학생회원 : 이화여자대학교컴퓨터학과 mjchang@ewha.ac.kr 정회원 : 이화여자대학교컴퓨터학과교수 lmj@ewha.ac.kr 비회원 : 경북대학교컴퓨터학과교수 sjkoh@cs.knu.ac.kr 논문접수 : 2003년 11월 19일심사완료 : 2004년 3월 19일 세션을계속진행할수있지만, 네트워크에이동성지원을위한특별한엔터티를두어야하고이로인해터널링이나삼각라우팅등의오버헤드및비효율성이발생한다 [1-6]. 그런데최근에는이와같은네트워크계층에서의이동성지원과는전혀다른접근방식으로서, Migrate TCP[7] 와같이 TCP에서이동성을지원하는방안과 SCTP(Stream Control Transmission Protocol) [8] 나 DCCP(Datagram Congestion Control Protocol) [9] 와같이새로운트랜스포트계층프로토콜에서이동성을지원하는방안이언급되고있다 [10]. 현재까지, 트랜스포트계층에서의연구는네트워크계층에서이동성을지원할경우, 트랜스포트계층에서의성능을향상시키기위한방안들이대부분이며, 트랜스포트계층자체
394 정보과학회논문지 : 정보통신제 31 권제 4 호 (2004.8) 에서이동성을지원하는방안에대한연구는 Migrate TCP를제외하고는없다. 이처럼트랜스포트계층에서의이동성지원은코어네트워크에홈에이전트나외부에이전트와같은특별한엔터티들의추가를요구하지않기때문에디플로이가상대적으로용이하며, 종단간이동성을지원할수있기때문에네트워크계층에서의이동성지원방안에서발생하는터널링오버헤드나비효율적인라우팅문제를해결한다. 그런데 TCP를이용하여이동성을지원하는방안인 Migrate TCP의경우, 핸드오버지연시간이 Mobile IP 에서경험하는핸드오버지연시간과유사하거나혹은더길다 [11]. Migrate TCP에서의핸드오버지연시간은 DNS 갱신에필요한시간과 TCP 연결을이주하는데걸리는시간이며, 이시간들은환경에따라상당히길어질수있기때문이다. 또한 Migrate TCP는 TCP를기반으로하기때문에동시에여러개의액세스포인트들을가질수없으며, 핸드오버시간이길어지는경우 TCP 연결이끊어지는한계를가진다. 따라서트랜스포트계층에서완전한이동성을지원하기위해서는동시에여러개의액세스포인트들을가질수있어야하고, 이러한특성을가진트랜스포트계층프로토콜로는현재 SCTP가유일하다. SCTP의경우, 이동성지원을위한확장방안으로 msctp(mobile Stream Control Transmission Protocol)[11,12] 가제안되었다. msctp는 SCTP 커넥션의한종단점인이동노드가이동함에따라그 IP 주소가변경될때, 동적으로 IP 주소를추가 삭제함으로써세션진행중에그커넥션에매핑되는종단점의 IP 주소를동적으로변경한다. 따라서 Mobile IP에서와같은홈 / 외부에이전트없이도점대점방식에의해이동해간새로운위치로데이타가전송되도록한다. 그러나현재 msctp의연구는아주초보적인연구단계로, msctp 명세에서는세션이동성을지원하는 ADDIP와 DELETEIP 기능을이용하기위한기본적인요구사항과제안들만기술하고있다. 즉새로운 IP 주소를추가하는시점과이전 IP 주소를삭제하는시점을구체적으로정의하지않았고, 핸드오버시에 CN(Correspondent Node) 에서데이타전송목적지를변경하여야하는데언제어떠한기준에의해이를변경할것인지에대하여구체적으로정의하지않았다 [11,12]. 이와같은문제들이정의되지않고서는현재 msctp는이동성을지원할수없다. 예를들어, 데이타전송경로를언제변경하고어떻게선택하는지에대한적당한메커니즘을정의하지않는다면, 핸드오버동안진동문제가발생하여심각한성능저하를초래한다. 이에본논문에서는이동노드가 2계층전파세기정보를이용하여새로운 IP 주소를추 가하는시점과이전 IP 주소를삭제하는시점및데이타전송경로를변경하는시점을결정하고새로운데이타전송경로를선택하도록하는방안을제안하였다. 또한 msctp는트랜스포트계층프로토콜이므로핸드오버시 2계층핸드오버혹은새로운 IP 주소획득등에소요되는지연이길어지는경우트랜스포트계층에서이동을감지할수있다는점을이용하여성능저하를최소화할수있는방안을제안하였다. 본논문의구성은다음과같다. 1장의서론에이어 2 장에서는 msctp에대해살펴보고 3장에서는제안하는방안의동작방식에대해서자세히설명한다. 4장에서는시뮬레이션수행결과를통해그성능을비교 분석하며마지막으로 5장에서는결론을맺는다. 2. msctp(mobile Stream Control Transmission Protocol) msctp는 IETF(Internet Engineering Task Force) 의 SIGTRAN(Signaling Transport) 워킹그룹에서제안한 SCTP를기반으로한다. SCTP는원래시그널전송을위한트랜스포트계층프로토콜로제안되었으나, 다양한응용의성능향상에도움을줄수있다고판단되어, 현재는 UDP, TCP와함께 IP 네트워크를위한범용트랜스포트계층표준프로토콜로지정되었다 [13]. SCTP는 TCP와마찬가지로연결기반의트랜스포트프로토콜로써두엔드포인트는통신하기위해커넥션을설립하는데이커넥션을어소시에이션 (association) 이라부른다. SCTP의오류및플로우제어방식등은 TCP 를거의그대로따르고있다. SCTP 패킷혹은 PDU(Protocol Data Unit) 는그림 1과같이하나의헤더 (header) 와여러개의청크 (chunks) 로구성되며, 각청크는제어정보혹은응용데이타를포함한다. 멀티호밍 (Multi-homing) 지원은 SCTP의대표적인특징가운데하나다. 멀티호밍은그림 2와같이하나의노드에여러개의 IP 주소가지정되는것을허용하는것으로 SCTP에서는이들여러주소들가운데하나의주소만데이타를주고받는데사용하며이주소에해당하는전송경로를 우선경로 라고부른다. 즉 SCTP는멀티호밍을지원하지만데이타는오직하나의우선경로를통해서만전송하고, 그이외의경로들은패킷재전송과백업의목적으로만사용한다. 우선경로에서패킷손실이발생한경우 SCTP는이를대체경로로재전송하며우선경로에서연속적으로발생한재전송횟수가임계치보다커지는경우에는송신측에서해당 SCTP 어소시에이션에속해있는목적지주소리스트들중에서무작위로새로운우선경로를위한주소를선택한다.
msctp 를이용한종단간이동성지원방안395 그림 1 SCTP packet format 그림 2 SCTP의멀티호밍멀티호밍특성에의해하나의종단점에여러개의 IP 주소를동시에매핑하는것이가능하기때문에이동노드가새로운 IP 서브네트워크로이동하여새 IP 주소를획득했을때, 현재서브네트워크에서의 IP주소를그대로유지하면서새로운 IP 주소를어소시에이션에추가할수있다. msctp는이와같은 SCTP의멀티호밍특성을바탕으로이동성을지원하기위해 SCTP 어소시에이션에매핑되는 IP 주소를동적으로변경하는 AD- DIP와 DELETEIP 기능을사용한다 [12]. ADDIP 기능은새로운 IP 주소를 SCTP 어소시에이션에추가하는기능이며, DELETEIP 기능은현재어소시에이션의종단점 IP 주소로등록되어있는것을삭제하는기능이다 [12]. 이동노드는새로운서브네트워크로이동하여새 IP 주소를획득한경우 ADDIP를이용하여 CN이해당 SCTP 어소시에이션에그주소를추가하도록하고 DELETEIP를이용해데이타전달이불가능해진이전서브네트워크에서의 IP 주소를삭제하도록한다. 어소시에이션에대해 ADDIP, DELETEIP, 우선경로변경등의 IP 주소재구성이필요한경우, SCTP는관련주소정보를그림 3의 (a) 와같은 ASCONF (Address Configuration Change) 제어청크에실어상대방에전송하며, 상대방은그림 3의 (b) 와같은 ASCONF- ACK (Address Configuration Acknowledgment) 청크로응답한다 [14]. 현재 [12] 에서정의하고있는 msctp의동작과정은그림 4와같다. 이동노드 (Mobile Node) 가액세스라우터 A(Access Router A) 에서액세스라우터 B로이동하는경우이동노드는액세스라우터 B가담당하는서브네트워크에서의 IP 주소를획득하면, CN에게 ADDIP ASCONF 청크를전송하여새로이획득한주소를알린다. CN은이를받으면, 해당 SCTP 어소시에이션에이를추가한다. 그리고이동노드는액세스라우터 A의전송범위를완전히벗어나면액세스라우터 A 가담당하는서브네트워크에서의 IP 주소를 CN이유지하는어소시에이션의종단점주소매핑에서제외시키기위해 DELETEIP ASCONF 청크를 CN에전송한다. CN은이를받으면, 서브네트워크 A에서의 IP 주소를 (a) ASCONF 청크 그림 3 ASCONF 청크와 ASCONF-ACK 청크 (b) ASCONF-ACK 청크
396 정보과학회논문지 : 정보통신제 31 권제 4 호 (2004.8) 그림 4 msctp 동작과정 해당 SCTP 어소시에이션주소리스트에서삭제하고, 해당 SCTP 어소시에이션의우선경로를새로운서브네트워크에서의 IP 주소로변경한다. 3. 제안하는방안의동작방식본장에서는제안하는방안의동작을자세히설명한다. 제안하는방안에서는 2계층핸드오버와새로운 IP 주소획득을수행하는방법은 Mobile IP에서와같다고가정한다. 새로운 IP 주소는 IPv4일경우 DHCP (Dynamic Host Configuration Protocol) 에의해획득하거나 CCoA (Co-located Care-Of Address) 를사용한다고가정하며 IPv6일경우 Stateless Address Auto configuration에의하여획득한다고가정한다. 제안하는방안은 2계층핸드오버와 IP 주소획득이순차적으로이루어지는경우 ( 이후순차적방법이라부름.) 와 [15] 에서와같이병렬적으로이루어지는경우 ( 이후병렬적방법이라부름.) 를모두다룰수있다. 순차적방법은 2계층핸드오버를완료한후, IP 주소획득이시작되는방법이며병렬적방법은 2계층핸드오버시작과동시에 IP 주소획득이트리거되어두작업이동시에진행되도록함으로써핸드오버지연을단축시키는것을목적으로하는방법이다 [15]. 제안하는방안은통신가능한전파세기 ( 이후로 2계층핸드오버임계값이라부름.) 이상의시그널을제공하는액세스라우터가발견되는즉시해당서브네트워크에서의 IP 주소에대해 ADDIP를수행하고일단 AD- DIP가수행된 IP 주소에대해서는더이상통신이불가능해진후즉, 전파세기가 2계층핸드오버임계값보다낮아진경우에 DELETEIP를수행한다. 이와같이 ADDIP와 DELETEIP를수행함으로써제안하는방안에서는데이타전달이가능한모든서브네트워크에대해가능한한빨리 SCTP 어소시에이션에 IP 주소를매핑시켜둔다. 한편현재 msctp는핸드오버시에, 우선경로를변경하는방안에대하여특별히언급하지않고있으며 SCTP 자체에서는연속적인재전송횟수가일정임계치를넘으면송신측에서우선경로를변경한다고정의하고있다. 따라서이동환경에서핸드오버가발생하여이동노드가현재우선경로로부터데이타를전송받지못하는상황이될때, 현재 msctp가 SCTP의우선경로변경방식을그대로따른다면우선경로에대해 DELETEIP가실행되고이로인해 CN에서우선경로를변경하게된다. 따라서매핸드오버마다현재의우선경로로부터데이타를받지못하게되는시점부터 CN의우선경로가변경되고새로운경로로데이타가전송될때까지데이타손실이발생하게된다. 즉, 그림 4의두서브네트워크의중첩지역내에서이미서브네트워크 B에서의 IP 주소가등록된다고하더라도이동노드가서브네트워크 A를완전히벗어나서브네트워크 A에서의 IP 주소에대한 DELETEIP가수행되고난후에야경로변경이이루어지므로 seamless 핸드오버수행이어렵다. 이에제안하는방안은 2계층전파세기정보를고려하여중첩지역내에서가능하다면현재우선경로에대한 DELETEIP가수행되기전에미리우선경로를변경함으로써 seamless한핸드오버가가능하게하고자한다. 그리고우선경로변경시점과어떤대체경로를우선경로로선택할것인지를결정하는데 2계층전파세기정보를이용하기위하여원래 SCTP의우선
msctp 를이용한종단간이동성지원방안397 변경방식과는달리수신원인이동노드에서이를수행하도록한다. 제안하는방안은우선경로변경횟수를최소화하기위해우선경로변경트리거를위한전파세기임계값 ( 이후우선경로변경임계값이라부름.) 을가능한한적게잡되우선경로변경이 DELETEIP가수행되기이전에완료되도록하기위해 2계층핸드오버임계값보다는조금큰값을사용한다. 또한 SCTP에따르면우선경로를변경해야하는경우어소시에이션에매핑되는주소리스트가운데임의의 IP 주소를선택하도록하는데반해제안하는방안에서는이동노드로의데이타전송이가능한액세스라우터가여러개인경우이들가운데가장전파세기가센액세스라우터가속한서브네트워크를선택하여새로운우선경로로사용한다. 먼저 3.1절에서는제안하는방안의구성요소및요소간시그널링에대해설명하고, 3.2절에서제안하는방안에서핵심기능을수행하는 AMM (Address Management Module) 에대해설명한다. 3.1 제안하는방안의구성요소및요소간시그널링제안하는방안은핵심적인기능을수행하기위해서 AMM(Address Management Module) 을정의한다. AMM은그림 5와같이 2계층과 IP 주소획득모듈로부터받는시그널들을관리하고이를기반으로 ADDIP, DELETEIP, 우선경로변경을수행하는시점을결정하며이를 msctp에게알리는역할을한다. 이때, AMM은이들시그널들을받는순서에는전혀영향을받지않는다. 노드의 2계층에서는 AMM에게링크계층의상대적인전파세기정보를알려주기위해 전파세기 시그널과 최대전파세기 시그널을발생시킨다. 전파세기 시그널은그림 6과같이전파세기에대해 2계층핸드오버임계값 과 우선경로변경임계값 을가지고있으면서임의의액세스라우터로부터비콘을받을때마다그비콘의전파세기가이들임계값들을넘어변하였는지점검하고이를 AMM에게알린다. 전파세기시그널은해당액세스라우터에대한인터페이스ID와전파세기변화종류를표시하는 S 필드로구성되며전파세기변화에따라 S 필드값은표 1과같이설정된다. 또한 2계층은받은비콘의전파세기와현재유지하고있는가장강한전파세기를가지는액세스라우터의전파세기를비교하여가장강한전파세기를가지는액세스라우터가변경되는경우에 AMM에게최대전파세기시그널을보낸다. 최대전파세기시그널에는전파세기가가장센새로운액세스라우터에대한인터페이스ID를알려준다. 그림 62계층전파세기변화와전파세기시그널의 S 필드설정 표 1 전파세기변화에따른전파세기시그널의 S 필드값전파세기변화전파세기시그널의 S 필드값 1 1 2, 3 2 4 3 5 4 6 5 그림 5 제안하는방안에서사용되는시그널이동노드의 2계층에서는 AMM에게 2계층핸드오버완료 시그널을발생시키며링크계층의상대적인전파세기정보를알려준다. 어떤액세스라우터에대한 2계층핸드오버가완료되면이동노드의 2계층에서는 2계층핸드오버완료시그널을보내어해당액세스라우터에대한인터페이스ID를 AMM에게알려준다. 또한이동 한편이동노드의 IP 주소획득모듈에서는획득한새 IP 주소를 AMM에게알려주기위해 IP 주소획득완료시그널을발생시킨다. 이시그널은획득한새 IP 주소와해당액세스라우터에대한인터페이스ID로구성된다. 3.2 AMM(Address Management Module) 이동노드의 AMM은그림 7과같이 주소테이블 을유지한다. 주소테이블은비콘의전파세기가 2계층핸드오버임계값이상인모든액세스라우터에대해인터페
398 정보과학회논문지 : 정보통신제 31 권제 4 호 (2004.8) 이스ID와해당서브네트워크에서할당된이동노드의 IP 주소를저장하는 IP주소필드를유지한다. 또한해당인터페이스에대한 2계층핸드오버의완료유무를나타내는플래그 H와전파세기의상대적인정도를나타내는전파세기필드를둔다. 전파세기필드의값은해당인터페이스의전파세기 ρ에따라표 2와같이설정된다. 즉, 2계층으로부터전파세기시그널을받으면전파세기시그널의 S 필드에따라주소테이블의해당인터페이스엔트리의전파세기필드를표 3과같이수정한다. 이동노드의 AMM에서는이와같은주소테이블과함께어떤인터페이스가우선경로인터페이스인지그리고최대전파세기를가지는인터페이스는어떤것인지를저장해둔다. 그림 7 AMM에서유지하는주소테이블표 2 주소테이블에서전파세기필드값 SS 전파세기 ρ 0 ρ < L2 핸드오버임계값 1 L2 핸드오버임계값 < ρ < Primary 변경임계값 2 Primary 변경임계값 < ρ 표 3 전파세기시그널의 S 필드에따른주소테이블의 SS값 S 주소테이블의전파세기필드 1 1 2 2 3 1 4 0 5 0 AMM은 2계층으로부터 2계층핸드오버완료시그널이나 IP 주소획득모듈로부터 IP 주소획득완료시그널을받으면이들시그널에포함된인터페이스ID로써주소테이블에서해당엔트리를찾아해당엔트리의플래그 H 혹은 IP 주소필드의정보를갱신한다. 또한어떤인터페이스에대한전파세기시그널을받아주소테이블의 SS 필드값이갱신될때, AMM은 SS 필드값의변화에따라그림 8처럼동작한다. 먼저 AMM이어떤시그널을수신함으로써해당엔트리에대해 H=1이되고 IP 주소필드가채워지는작업이모두완료된다면, 새로운서브네트워크에서의 IP 주소획득이완료된것이므로 AMM은 msctp에게이 IP 주소를해당 SCTP 어소시에이션에추가하기위한 그림 8 AMM에서 SS 필드값에따른상태전이도 ADDIP를트리거한다. 즉그림 8에서주소테이블의 SS 필드값이 0에서 1이나 2로변하는경우이다. AMM이현재우선경로인터페이스에대하여 S=3 혹은 S=5인전파세기시그널을받는경우는각각우선경로인터페이스의전파세기가우선경로변경임계값보다더높다가우선경로변경임계값혹은 2계층핸드오버임계값보다더낮아진경우이므로우선경로를변경해야한다. 이는그림 8에서보듯이주소테이블의 SS 필드값이 2에서 0이나 1로변경되는경우이다. 그러므로 AMM은 msctp에게우선경로변경을트리거한다. 이경우, AMM은이동노드가실제로이동해갈가능성이가장높은서브네트워크로우선경로를변경하기위해가장전파세기가센액세스라우터가속한서브네트워크를새로운우선경로로선정하여 msctp에게알려준다. 그런데임의의서브네트워크가우선경로가되기위해서는그서브네트워크에대한이동노드의 2계층핸드오버와 IP 주소획득이완료되어야한다. 즉, 주소테이블에서최대전파세기를가지는인터페이스에대해 2 계층핸드오버가완료되었음을표시하는플래그 H가세트되어있어야하고 IP 주소필드에값이설정되어있어야한다. 또한, 해당액세스라우터의전파세기가우선경로변경임계값보다더커야한다. 여기서유의할것은해당액세스라우터의전파세기가최대이더라도우선경로변경임계값보다적을수도있다는것이다. 이와같이최대전파세기를가지는인터페이스가세가지조건을모두만족하면 AMM은 msctp에게우선경로변경을트리거한다. 그러나현재최대전파세기를가지는인터페이스가위의세가지조건중한가지라도만족하지못한다면 AMM은우선경로변경시점을미루고이후최대전파세기를가지는인터페이스에대해이들세가지조건을모두만족시키게되는시그널이완료되는즉시 msctp에게우선경로변경을트리거한다. 즉, 우선경로의인터페이스에대해전파세기필드가 0 혹은 1인
msctp 를이용한종단간이동성지원방안399 경우에는 2계층혹은 3계층으로부터최대전파세기를가지는인터페이스에대해세가지조건을모두만족시키게되는시그널을받는즉시 msctp에게우선경로변경을트리거한다. 한편, S=4 혹은 S=5인전파세기시그널을받는경우 AMM은 msctp에게해당인터페이스에대해 DELE- TEIP를트리거한다. 즉그림 8에서주소테이블의 SS 필드값이 1이나 2에서 0으로변경되는경우이다. 이경우 AMM은 DELETEIP를트리거하기전에해당인터페이스가현재우선경로인터페이스인지를검사한다. 만약해당인터페이스가우선경로인터페이스라면적합한대체경로를찾는다. 만약적합한대체경로가준비되어있지않다면 AMM은우선경로변경시점을미루게되므로해당인터페이스에대한 DELETEIP 시점도미루어야한다. 그리고추후 msctp에게우선경로변경을트리거할때, 해당인터페이스에대한 DELETEIP도함께트리거한다. 즉, 우선경로에해당하는주소테이블엔트리의전파세기필드가 0인경우 AMM은 msctp에게우선경로변경과현재우선경로에대한 DELETEIP를함께트리거한다. CN의 msctp는먼저우선경로변경을수행하고, 우선경로변경후우선경로에대한 DELETEIP를수행한다. 그런데이와같이우선경로변경과우선경로에대한 DELETEIP가함께수행되는일은이동노드가중첩된지역을완전히벗어난후에우선경로변경이수행되는경우에발생하게된다. 이러한경우송신원은이전경로로전송한데이타에대해이동노드가전송한 ACK을받지못하기때문에더이상새로운경로로데이타를전송하지못한다. 이에송신원은중복 ACK을발생시킬수있는데이타를전송하지못하기때문에빠른재전송 (fast retransmit) 을수행할수없다. 따라서송신원은새로운데이타전송경로로데이타를전송하기위해서 ACK 타이머가타임아웃될때까지휴지상태로기다려야하므로프로토콜의성능이저하된다. 특히, 이동노드가중첩된지역을벗어나우선경로변경을수행하는시점까지의지연이길어지면송신원에서는연속적인타임아웃이발생하여 RTO가지수적으로증가한다. 이경우송신원은새로운데이타경로로데이타를전송하기위해서는증가된 RTO만큼휴지상태로기다려야하므로프로토콜의성능은크게저하된다. 이에제안하는방안에서는트랜스포트계층에서이동성을감지할수있음을이용하여이동노드가중첩된지역을완전히벗어나우선경로를변경하는경우, 송신원이 ACK 타이머가타임아웃될때까지기다리지않고이동노드로부터 ASCONF 청크를받는즉시변경된새로운우선경로로데이타를전송할수있도록함으로써성능저하 그림 9 제안하는방안에서의 ASCONF 청크를최소화한다. 이를위해그림 9와같이 ASCONF 청크의청크플래그중하나를 N 플래그로정의하여사용한다. 송신원이 N 플래그가 1인 ASCONF 청크를받으면기존에전송한데이타에대한타이머들을모두멈추고다음전송해야할데이타패킷하나를이동노드에게전송한후 ACK을기다린다. 송신원은이패킷에대한 ACK을전송받으면이동노드가마지막으로받은데이타에대한정보를알수있으므로이동노드가손실한첫번째데이타부터송신원이마지막으로전송한데이타전까지의손실된데이타를전송한다. 4. 시뮬레이션본장에서는시뮬레이션에서사용한네트워크모델에대하여설명하고, 시뮬레이션결과를통해제안하는방안과 TCP over Mobile IP ( 이후, TOM이라고부름 )[1] 의성능을비교 분석한다. TOM은네트워크계층에서의이동성지원방안들중에서가장대표적인프로토콜이기때문에특별히성능비교를위한프로토콜로선택하였다. 또한 1장에서설명한것처럼, 기존 msctp는이동성을지원할수없기때문에제안하는방안과의성능평가는수행될수없다. 기존트랜스포트계층에서의이동성지원방안인 Migrate TCP의경우도 1장에서설명한것처럼, 핸드오버시에 TCP 연결이끊어지는경우가발생하기때문에제안하는방안과의수치적성능비교는수행될수없다. 시뮬레이션은버틀리대학 (U.C Berkeley) 의네트워크시뮬레이터 (Network Simulator)[16] 에 SCTP를패치 [17] 하여구현하였으며, Redhat 7.3 버전 (Linux Kernel 버전 : 2.4.18-3) 에서수행되었다. 4.1 시뮬레이션모델시뮬레이션을위한네트워크모델은그림 9와같다. 유선링크는대역폭과전파지연시간이각각 10Mpbs, 5ms이며, 셀의크기는 300m이고셀간중첩지역의크기는 80m라고가정하였다. 그리고핸드오버가발생할때성능을비교하기위해이동노드가일정한속도로이동하면서액세스라우터 A와 B의서브네트워크를번
400 정보과학회논문지 : 정보통신제 31 권제 4 호 (2004.8) 갈아가며이동하는상황에서의성능을측정하였다. msctp를탑재한이동노드는 [17] 에서구현한다중인터페이스를가지는 SCTP 노드를이용하여구현하였다. 그런데현재 ns-2에구현되어있는다중인터페이스를가지는 SCTP 노드는실제로하나의중심노드에각인터페이스에대해그역할을담당하는노드를접속시킨형태이고, 이들인터페이스들을중심노드에동적으로추가하거나삭제할수없다는제약을가진다. 따라서이동노드의이동에따라인터페이스를동적으로추가 삭제할수없고, 하나의 SCTP 노드를구성하는여러노드가일관되게함께움직이도록하는것이매우어렵다는문제가있다. 그림 10 시뮬레이션네트워크모델이에본시뮬레이션에서는먼저단일인터페이스를가지는이동노드를그림 9의네트워크환경에서이동시키면서시간이흐름에따라이동노드 2계층에서감지하는각엑세스라우터별전파세기가어떻게변화하는지를추적하고, 이에의해 2계층에서 msctp에게언제어떤시그널을보내야하는지와언제어떤서브네트워크에서의무선링크가전송가능한전파세기가되는지등의정보만을기록하는프리시뮬레이션 (presimulation) 을수행하였다. 구체적으로, 이프리시뮬레이션에서는 2계층에서그림 6의 1~6의이벤트가발생할 때마다그때의시뮬레이션시각과함께해당이벤트에대해 2계층에서 msctp에게시그널을보내는데필요한정보들을기록하였고, 각엑세스라우터별로이동노드로의무선링크상태가데이타전달가능 / 불가능한상태로변화하는시뮬레이션시각및변화내용 ( 가능 / 불가능 ) 을기록하였다. 그리고 [18,19] 에서등에서무선환경을유선네트워크로모델링하여실험한것과유사하게그림 11과같이그림 10의무선이동환경을유선망으로모델링하고, 프리시뮬레이션에서수집한정보를이용해노드이동에따라데이타전달이가능한엑세스라우터가변경되는시점에해당엑세스라우터와이동노드사이의링크를업혹은다운시키고, 역시프리시뮬레이션에서수집한정보에따라 2계층에서 msctp에게적시에전파세기시그널과최대전파세기시그널을발생시키도록하였다. 그리고 [20] 에서제시한실험결과에따라 2계층핸드오버와 IP 주소획득에소요되는시간은각각 [0.2~8.0] 초와 [0~1] 초사이의랜덤한값을가진다고가정하였다. [20] 에서는하나의액세스라우터에의해서비스되는서브네트워크의용량및이동노드수에따라 2계층핸드오버시간이약 0.2~8.0초까지변화할수있음을보였다. 본시뮬레이션에서는 msctp와 TOM을비교하기위한성능측정치로서 CN에서 FTP로 140MB 파일을전송하는데소요된시간과핸드오버지연시간을측정하였다. 핸드오버지연시간은이동노드가새로운데이타경로로첫번째데이타를받는시간과이전데이타경로로마지막데이타를받는시간의차로정의한다. 그리고시뮬레이션파라미터로는이동노드의속도와 (2계층핸드오버시간 + 새로운 IP 주소를획득하는데소요된시간 ) ( 이후주소획득시간이라부름 ) 을변경시켜보았다. 4.2 시뮬레이션결과그림 12와그림 13은각각이동노드의속도가 30m/s일경우주소획득시간을변화시켜보면서 140MB 크기의파일을전송하는데소요된시간과핸드 (a) msctp 시뮬레이션네트워크모델 그림 11 유선네트워크모델 (b) TOM 시뮬레이션네트워크모델
msctp 를이용한종단간이동성지원방안401 그림 12 이동노드의속도가 30m/s일경우파일전송시간 (a) 중첩된지역내에서주소획득완료가빨리이루어지는경우 그림 13 이동노드의속도가 30m/s일경우핸드오버지연 (b) 중첩된지역내에서주소획득완료가늦게이루어지는경우 오버지연시간을측정한결과를보인것이다. 주소획득시간이매우짧은경우에는그림 14의 (a) 와같이 TOM와 msctp 모두중첩된지역내에서빠르게새로운데이타경로를설립할수있고, 송신원에서이전경로로데이타전송하는것이상대적으로일찍중단되어두스킴모두이전데이타경로로보내어진데이타를이동노드가중첩된지역을벗어나기전에모두전송받을수있는가능성이높다. 그림 12와 13에서주소획득시간이가장짧은경우인 1초일때가이와같은경우에해당한다. 그런데이와같은경우에는 TOM 의성능이 msctp보다좋음을알수있다. 이는 msctp의헤더와프로토콜프로세싱오버헤드가 TCP 보다더크고, 새로운데이타경로로데이타를전송할경우 TOM은이전데이타경로의 CWND(Congestion control Window size) 값을그대로사용하는반면 msctp는 CWND가 2부터시작하는슬로우스타트 (Slow Start) 를시작하기때문이다. 한편주소획득시간이좀더길어지게되면그림 14 의 (b) 와같이중첩된지역내에서새로운데이타경로를설립할수있으나상대적으로중첩된지역내에서더오랜시간동안송신원이이전경로로데이타를전송하므로이전경로로보내진데이타를이동노드가중첩된지역을벗어나기전에받을수있는시간이상대적으로충분하지못하여이전경로로전송된데이타가 (c) 중첩된지역을벗어나주소획득완료가이루어지는경우그림 14 주소획득완료시간에따른데이타전송경로손실될수있다. msctp의경우는경로별로별도의혼잡제어를수행하므로이와같은손실에의해새로운경로의데이타전송이영향을받지않는다. 그러나 TOM의경우는 TCP에서핸드오버사실을알지못하므로손실발생에의해 TCP의전송속도가영향을받게된다. 단, 이경우는중첩지역내에서이미새로운경로로의데이타전송이시작된상태이므로새로운경로로전송되는데이타들에대한 ACK에의해이전경로로전송된데이타의손실이빠른재전송으로복구될수있으므로 TOM의성능이크게저하하지는않는다. 주소획득시간이더길어지면그림 14의 (c) 와같이 TOM와 msctp 모두중첩된지역을벗어나새로운데이타경로를설립하게된다. 그림 12와 13에서주소획득시간이 3초~9초사이인경우가이에해당하는데이때는 msctp가 TOM보다성능이좋음을볼수있다.
402 정보과학회논문지 : 정보통신제 31 권제 4 호 (2004.8) 그이유중하나가그림 13에서보듯이이와같은경우에는 msctp의핸드오버지연이 TOM보다짧기때문이다. 제안하는 msctp는주소획득이완료된시점에우선경로를변경하여바로데이타를받을수있기때문에핸드오버지연시간이그림 15의 (a) 와같이이동노드가이전액세스라우터의전송범위를벗어나는시점부터주소획득이완료되는시점까지이다. 반면 TOM 에서는송신측 TCP가핸드오버발생을알지못하므로핸드오버지연이길어지면송신측 TCP에서는이전경로로전송한데이타에대해타임아웃이발생할수있다. 만약주소획득시간이매우길어이기간동안홈에이전트에새로운 IP 주소를등록하는송신원측에서연속적인타임아웃이발생하게된다면재전송타임아웃시간이지수적으로증가하게되어새로운데이타경로가설립되어도그림 15의 (b) 와같이이경로로보낼데이타를송신원 TCP에서전송하기까지의시간이길어지게된다. 게다가이경우에는타임아웃에의한재전송이므로 TOM도새로운데이타경로로데이타가전송될때슬로우스타트를수행한다. 위와같은이유로중첩된지역을벗어나새로운데이타경로를설립하는경우에는 msctp가 TOM보다성능이좋다. 그림 16과그림 17은이동노드의속도를 10m/s~ 40m/s로변화시켜보면서핸드오버지연시간과 CN이 140MB의 FTP파일을전송하는데소요되는시간을측정한결과를보인것이다. 그림 16을보면두스킴모두이동노드의속도가증가할수록핸드오버지연시간은길어진다. 이는이동노드의속도가빨라질수록이동노드가중첩된지역을경유하는시간이단축되기때문이다. 속도가다른이동노드가같은주소획득시간을가지며같은시간에핸드오버를시작한다고가정하면빠른속도를가진이동노드의경우중첩지역을경유하는시간이더짧기때문에이전데이타경로로마지막데이타를받는시간이더이르다. 따라서이동노드의속도가빨라질수록핸드오버지연시간이길어진다. 예를들어이동노드의속도가 40m/s일경우와 10m/s일경우를비교하면중첩된지역 그림 16 핸드오버지연 80m를지나는데걸리는시간이이동노드가 40m/s일경우에는약 2초가소요되는반면이동노드의속도가 10m/s일경우에는약 8초가소요된다. 같은시간에 2계층핸드오버가시작되며주소획득시간이 5초라고가정하면이동노드의속도가 10m/s인경우중첩된지역내에서새로운데이타경로를획득하여핸드오버지연시간없이새로운데이타경로로첫번째데이타를받게된다. 그러나이동노드의속도가 40m/s인경우에는 2계층핸드오버가시작되고 2초후에중첩된지역을벗어나버리기때문에중첩지역을벗어난후 3초가지나서야주소획득이완료되어새로운데이타경로를획득하게되고이경로로첫번째데이타를받게된다. 따라서핸드오버지연시간이최소한 3초가된다. 한편그림 16에서이동노드의속도변화에관계없이 msctp가 TOM보다핸드오버지연시간이항상더짧음을볼수있다. 이는그림 13에서설명한것처럼 msctp는이동노드가중첩된지역을벗어나주소획득이완료되면그즉시우선경로가변경되어새로운데이타가이경로를통해전송되는반면, TOM은 TCP 재전송타임아웃인터벌로인해핸드오버완료이후에도일정시간동안데이타를전송하지못하는경우가발생하기때문이다. 그림 16에서보듯이두스킴모두이동노드의속도가증가할수록핸드오버지연시간이증가하기때문에이로인해그림 17에서와같이파일전송시간이길어진다. 한편그림 12에서설명한것처럼중첩된지역내 (a) msctp (b) TOM 그림 15 중첩된지역을벗어나주소획득이완료된경우의핸드오버지연시간
msctp 를이용한종단간이동성지원방안403 층의이동성지원과대등한성능을보임을확인하였고, 이동노드의속도에관계없이핸드오버지연시간이네트워크계층에서의이동성지원방안보다짧으며특히이동노드의속도가빠를경우에는네트워크계층의이동성지원방안보다더나은성능을제공함을볼수있었다. 참고문헌 그림 17 파일전송시간에서경로변경이완료되는경우 TOM이 msctp보다성능이좋으며중첩된지역을벗어나경로변경이완료되는경우에는반대로 msctp가 TOM보다성능이좋기때문에그림 17에서이동노드의속도가 10~20m/s 일때즉중첩지역경유시간이길어상대적으로경로변경이중첩지역내에서이루어질수있는확률이높은경우 TOM이 msctp보다성능이좋으며그반대경우인이동노드의속도가 30~40m/s일때는 msctp 가 TOM보다성능이좋다. 한편그림 16과그림 17에서공통적으로 2계층핸드오버와 IP 주소획득이순차적으로이루어지는경우보다병렬적으로이루어지는경우에제안하는 msctp의성능이더좋음을알수있다. 병렬적으로 2계층핸드오버와새로운 IP 주소획득수행하면주소획득시간이단축되므로이동노드가중첩된지역내에서새로운데이타경로를획득할수있는가능성이높아지기때문이다. 종합적으로, 핸드오버지연시간측면에서는 msctp 가 TOM보다우수한성능을제공할수있음을볼수있었고파일전송지연에있어서는이동노드의속도가매우빠를때는 TOM보다우수한성능을보임을알수있었다. 5. 결론최근, 트랜스포트계층에서종단간이동성을지원하는 msctp가제안되었다. 본논문에서는기존 msctp를크게다음의 3가지측면에서수정 확장하였다. 2계층전파세기정보를사용하여새로운 IP 주소를추가하는시점과이전 IP주소를삭제하는시점을결정하는방안을제안함 수신원인이동노드에서 2계층전파세기정보를이용하여우선경로변경시점을결정하고새로운우선경로를선택하도록하는방안을제안함 핸드오버시에주소획득시간이길어지는경우핸드오버지연을줄이기위한방안을제안함시뮬레이션을통해, 제안하는 msctp가네트워크계 [1] Perkins C., "IP Mobility Support for IPv4," IETF RFC3344, August 2002. [2] Campbell A. T., et al., "Comparison of IP Micro- Mobility Protocols," IEEE Wireless Comm. Magazine, February 2002. [3] Perkins C., "Mobile IP Regional Registration," IETF Internet Draft, draft-ietf-mobile-ip-regtunnel-04.txt, March 2001. [4] Ramjee R., et al., "IP-Based Access Network Infrastructure for Next-Generation Wireless Data Network: HAWAII," IEEE Personal Communications, August 2000. [5] Campbell A. T., et al., "Design, Implementation, and Evaluation of Cellular IP," IEEE Personal Communications, August 2000. [6] Misra A., et al., "IDMP-Based Fast Handoffs and Paging in IP-Based 4G Mobile Networks," IEEE Communications Magazine. March 2002. [7] Alex. C. S, Hari B., "An End-to-end Approach to Host Mobility," 6th ACM/IEEE International Conference on Mobile Computing and Networking, August 2002. [8] Ong L., Yoakum J., "An Introduction to the Stream Control Transmission Protocol(SCTP)," IETF RFC 3286, May 2002. [9] Kohler E., "Datagram Congestion Control Protocol (DCCP)," IETF Internet Draft, draft-ietf-dccpspec-04, June 2003. [10] Koh S., "Use of SCTP for seamless handover," IETF Internet Draft, draft-sjkoh-mobile-sctphandover-00.txt, February 2003. [11] Xing W., et al., "M-SCTP : Design and Prototypical Implementation of an End-to-end Mobility Concept," Proceeding Information Workshop the Internet Challenge: Technology and Application, October 2002. [12] Riegel M. and Tuexen M., "Mobile SCTP", IETF Internet Draft, draft-reigel-tuexen-mobile-sctp- 03.txt, August 2003. [13] Stewart R., et al., "Stream Control Transmission Protocol," IETF RFC 296, October 2000. [14] Stewart R., "Stream Control Transmission Protocol (SCTP) Dynamic Address Reconfiguration," IETF Internet Draft, draft-ietf-tsvwg-addip-sctp- 08.txt, September 2003. [15] Singh A., "Fast handoff L2 trigger API," IETF
404 정보과학회논문지 : 정보통신제 31 권제 4 호 (2004.8) Internet Draft, draft-signh-l2trigger-api-00.txt, October 2002. [16] http://www.isi.edu/nsnam/ [17] http://pel.cis.udel.edu/#downloads [18] Raisinghani V. T., et al., "Improving TCP Performance over Mobile Wireless Environments using Cross Layer Feedback," IEEE Intnl Conference on Personal and Wireless Communications, December 2002. [19] Ni Q., et al., "Simulation-based Analysis of TCP Behavior over Hybrid Wireless & Wired Networks," 1st International Workshop on Wired/ Wireless Internet Communications, February 2002. [20] Montavont N. and Noël T., "Handover Management for Mobile Nodes in IPv6 Networks," IEEE Communication Magazine, August 2002. 장문정 정보과학회논문지 : 정보통신제 31 권제 2 호참조 이미정 정보과학회논문지 : 정보통신제 31 권제 2 호참조 고석주 1992년 2월한국과학기술원경영과학과 ( 공학사 ). 1994년 2월한국과학기술원경영과학과 ( 공학석사 ). 1998년 8월한국과학기술원산업공학과 ( 공학박사 ). 1998년 8월~2004년 2월한국전자통신연구원표준연구센터선임연구원. 2004년 3월~현재경북대학교컴퓨터과학과조교수. 2000년~현재 ITU-T SG17 Q.8, SSG Q.2 Editor. 관심분야는인터넷멀티캐스트, IP mobility, SCTP