Windows + Cygwin + NS2 문서최초작성일 : 2007-04-21 < Ver 0.1 > 문서최종수정일 : 2007-05-29 < Ver 0.2 > 문서작성자 : 정은석이메일주소 : EunSeok.Jeong@Gmail.com # 본문서의가장최신버전은 http://infosec.pe.kr에서받을수있습니다. 본설치매뉴얼은 Windows 플랫폼상에서 NS2를어떻게설치하는지알려주기위하여작성하였습니다. 이설치매뉴얼을작성한저도사실 NS2에대하여아직거의아는것이없지만차차공부를해나가면서 NS2에관련하여습득한지식을정리하여공개할생각입니다. 따라서혹시틀린내용이있거나도움이될만한내용이있으면언제든지메일을보내주시길바랍니다. ^^ 지금부터는편의상존칭을생략하고적도록하겠습니다. < Cygwin > Cygwin은레드햇에서개발된윈도우를위한유닉스환경이다. Cygwin은두개의부분으로구성되어있는데하나는 DLL(cygwin1.dll) 이며이는실질적인유닉스 API의기능을제공하는유닉스에뮬레이터이다. 그리고다른하나는유닉스로부터포팅된툴들의모음이다. Cygwin DLL은 x86계열의모든 Windows 버전 (Windows CE 제외 ) 에서잘동작한다. GCC 및기타유닉스에서사용할수있는 GNU의모든툴이사용가능하다. ( 인용 : 심파일 ) < NS2> NS2(Network Simulator Version 2) 는네트워킹을연구하기위하여개발된이벤트기반의시뮬레이터 (Event-Driven Simulator) 로, 이시뮬레이터의적용범위로는유선네트워크의경우 TCP, UDP, FTP, HTTP등과같은 TCP/IP 프로토콜패밀리부터시작하여라우팅프로토콜, 멀티캐스팅프로토콜등아주다양한인터넷프로토콜을시뮬레이션할수있다. 또한, 무선네트워크역시시뮬레이션이가능하여 Ad Hoc, WLAN, Mobile-IP, 위성네트워크등매우적용범위가광범위한네트워크시뮬레이터이다. NS 시뮬레이터의전신은콜롬비아대학에서개발한시뮬레이션테스트베드인 NEST를기반으로 UC 버클리에서 1988년에개발한 REAL 네트워크시뮬레이터이다. 그리고 1989년에 LBNL이라는네트워크연구그룹이 REAL을기초로하여네트워킹에적용할수있는프로그램을연구하였는데, 이연구결과로발표된것이 NS1이라는네트워크시뮬레이터이다. 1995년에 VINT 프로젝트의일환으로 DARPA에서자금지원을받아, NS1 시뮬레이터가완성되었다. 그리고 1996년에 NS1 시뮬레이터의기능을더욱더향상시킨 NS2가발표되었다. NS2는 NS1과완벽한 Backward 호환성을지원한다. NS2는지금도계속해서기능이추가되어소스코드가인터넷상에서소개되고있다. ( 인용 : NS2기초와활용 )
[ 설치과정 ] 본매뉴얼에따라 NS2 를설치하기위해서는다음과같은것들을미리준비한다. 1. Windows System : Windows 2000 or Windows XP : 이것은기본적으로이미갖추어진환경이라본다. 2. Cygwin : Cygwin ( setup file version 2.510 ) : Cygwin은 http://www.cygwin.com/ 이곳에서다운로드받을수있다. 3. NS2 : NS2 ( ns-allinone-2.31.tar.gz ) : NS2는 http://www.isi.edu/nsnam/ns/ 이곳에서다운로드받을수있다. Cygwin은 setup.exe만을다운로드받아설치를시작하면설치프로그램에서설치에필요한파일들을다운로드받는다. NS-2의경우 Windows 플랫폼상에설치하기위해알맞은 allinone 패키지를다운로드받는다. 이매뉴얼의작성시점 (2007년 4월 21일 ) 에가장최신의버전들을이용하여설치하였으나 Major Version Up이아닌이상설치과정에큰차이를보이지는않을것으로생각된다. 위의것들이준비되었다면설치를시작해보자. [ Cygwin 의설치과정 ] 1. 다운로드받은 setup.exe 를실행하면다음과같은화면으로설치를시작하게된다.
2. 설치하고자하는원본파일들의위치를선택하는화면이다. * Install form Internet : 인터넷에서설치파일을다운받아바로설치한다. 다운로드한설치파일들은다음번의사용을위해서지워지지않고디스크상에보관된다. * Download Without Installing : 설치를시작하지않고설치파일만다운로드한다. * Install fromm Local Directory : 사전에이미다운로드받아놓은설치파일을이용해서설치한다. 세가지방식중우리는처음으로설치를하는것이기때문에두번째항목인 Download Without Installing을선택하여일단다운로드만받는다. 3. 다운로드받을경로를선택한다.
4. 인터넷연결설정을선택한다. 일반적으로첫번째항목 Direct Connection을선택하면되지만혹시환경이프락시서버를이용해야한다면세번째항목을선택하고그에따른정보를입력해주면된다. 5. 설치파일을다운로드받을서버를선택한다. 우리나라에서는 kaist 또는 kreonet 중의하나를선택하면빠른다운로드속도를기대할수있다.
6. 다운로드받을패키지를지정하는데, 시간이좀오래걸리더라도한번전체패키지를다운로드받아놓으면나중에설치할때편하기때문에모든패키지를다선택한다. Category에 All이라되어있는데그옆에보면기본값으로 Default라되어있다. 이부분을한번클릭하면 Install로변경된다. 그리고그하위의모든항목들도자동으로모두 Install로변경된다. 이렇게되면전체패키지를다운로드받는설정이된것이다.
7. 경고가하나뜨는데사실이경고는 NS2의설치에는전혀무관하므로그냥다음으로넘어가도무방하다. 8. 이제부터실제로서버로부터설치파일을다운로드받게된다. 전체패키지를선택했으므로다운로드를완료하는데시간이좀소요된다. 점잖게기다리자. ^^; 다운로드가완료되고나면 Download Complete란메시지와함께프로그램이자동으로종료된다. 여기까지정상적으로됐다면 Cygwin의설치에필요한모든패키지를다운로드받은상태가되므로이제본격적으로설치해보자. Setup.exe를다시실행한다.
9. 이제설치파일이하드디스크에있으므로세번째항목을선택하여설치를시작한다. 10. 설치파일이있는경로를지정해준다.
11. 설치할패키지를선택하는데아까다운로드시와동일한방법으로전체패키지를선택한다. NS2의사용만이목적이라면굳이전체패키지를선택할필요없이요구되는패키지만을지정하여설치하여도되나사실나도어떤패키지만을골라서설치하면되는지아직정확하게잘모른다. -_-;; 따라서그냥전체패키지를선택하여설치하는것이설치시에문제도생기지않는다. 참고로, 인터넷상의자료를참조한결과, 다음과같은패키지만설치하면 NS2의구동이가능하다는자료를보았지만실제로테스트해보지는않았다. 전체패키지설치가싫은분은한번시도해보는것도괜찮을듯싶다. 필수설치패키지 : XFree86-base, XFree86-bin, XFree86-prog, XFree86-lib, XFree86-etc, make, patch, perl, gcc, gcc-g++, gawk, gnuplot, tar, gzip 12. 설치가진행된다.
13. 설치가모두완료되고나면바탕화면에 Cygwin이라는단축아이콘이생성된다. 이를실행하면다음과같은프로그램이실행된다. 이프로그램이정상적으로실행된다면이제 Cygwin의모든설치는완료가된것이다. 이제다음으로 NS2를설치해보자. [ NS2 의설치과정 ] 1. Cygwin을설치한경로에가서 home아래에보면자신의아이디가보인다. 이곳에 NS2 의설치파일을복사해넣는다. 즉, NS2설치파일은다음과같은경로에존재하게된다. 이제 ls를실행하면그파일이보일것이다. C: cygwin home esjeong80 ns-allinone-2.31.tar.gz
2. tar xvfz ns-allinone-2.31.tar.gz 명령어를실행하여압축을푼다. 3. 이제압축을푼디렉토리안으로들어가./install 을실행하여설치를시작한다. 어느정도의시간이지나고설치가완료되면다음과같은화면을볼수있다.
4. NS2설치가끝났으면환경설정을약간고쳐야한다. /home/ 사용자ID/.bash_profile에다음과같은내용을추가한다. 만약홈디렉토리에.bash_profile이라는파일이존재하지않을경우에는 /etc/skel 디렉토리에보면.bash_profile 파일이있다. 이파일을자신의홈디렉토리에복사하여사용하면된다. NS=~/ns-allinone-2.31 export PATH=$PATH:$NS/bin:$NS/tcl-8.4.14/unix:$NS/tk8.4.14/unix export LD_LIBRARY_PATH=$NS/otcl-1.13:$NS/lib export TCL_LIBRARY_PATH=$NS/tcl8.4.14/library 5. 이제환경설정까지모두했으면, 설치과정을완전히마친것이다. NS2가정상적으로구동되는지확인해보자. 위의명령창에서 startxwin.bat를실행한다. 아래와같은창이하나뜨게된다.
6. 새로이뜬 Xwindow 콘솔창에서다음과같은경로로이동한다. /home/esjeong80/ns-allinone-2.31/ns-2.31/tcl/ex 그리고아래명령을실행하면다음과같은프로그램들이실행되면정상적으로 NS2가동작하는것이다. ns nam-example.tcl [ 맺음말 ] 여기까지모든과정이문제없이진행되었다면 Cygwin과 NS2를성공적으로설치한것입니다. 축하합니다 ~! ^^; 이제앞으로남은일은이것들을가지고열심히지지고볶고해서 NS2를익히는것이겠죠? 앞으로의험난한여정을위해설치매뉴얼은이것으로끝을내고다음문서를통해다시만나도록합시다. ^^ / 오늘은토요일인데.. 밖에는먹구름만떠다니고.. 바람도엄청불고.. 흑흑.. 연구실에서.. 이렇게끄적끄적.. 주말을주말답게보내고싶다아 ~~~!!! -_-;;; ㅋㅋㅋ
< NS2 설치매뉴얼갱신내역 > 설치매뉴얼최종 Version : 0.2 2007-04-21 : NS2 설치매뉴얼최초작성 Ver 0.1 2007-05-29 : 1 차수정 Ver 0.2 ( 수정내용 : [ NS2 의설치과정 ] 의 4 번에서.bash_profile 관련부분내용수정 ) ///////////////////////////////////////////////////////////////////////////////////////////////////// 문서최초작성일 : 2007-04-21 < Ver 0.1 > 문서최종수정일 : 2007-05-29 < Ver 0.2 > 문서작성자 : 정은석이메일주소 : EunSeok.Jeong@Gmail.com # 본문서의가장최신버전은 http://infosec.pe.kr 에서받을수있습니다.