Linux 기반의 DiffServ over MPLS 망구축및 IEEE 1394 활용방안연구 Construction of Linux Based DiffServ over MPLS Network for IEEE 1394 Service Provisioning 권호한, 윤상식, 최덕재전남대학교정보통신연구소 {zeany, ssyoon}@tyranno.chonnam.ac.kr, dchoi@chonnam.ac.kr 요약오늘날고대역폭의전송속도와 QoS(Quality of Service) 를요구하는실시간동영상과같은응용서비스들이증가하고있다. 그러나, IPv4 의 Best-Effort 서비스만으로는이러한요구사항을충족시킬수없기때문에 IETF 에서는 QoS 보장을위하여 DiffServ (Differentiated Services) 와 Layer 2 의 switching 기술을사용함으로써보다빠른패킷전송속도를보이는 MPLS(Multi Protocol Label Switching) 를제시하였다. 또한 MPLS 망에 DiffServ 의기능을추가시킨 DiffServ over MPLS 망이제시되어현재논의중에있다. 본논문에서는 Linux 환경에서 DiffServ over MPLS 망을구축하여 IEEE 1394 응용서비스를시험해보고, 이를통해 DiffServ over MPLS 시험망과일반인터넷망의성능을비교분석해보고자한다. 향후본논문을이용하여 DiffServ over MPLS 망에서활용될수있는새로운서비스를개발하고시험해볼수있을것이라고생각한다. 1. 서론 현재의 IP 프로토콜은 Best-Effort 방식으로패킷을전송하고있다. 이는네트워크상의모든패킷들을동일하게취급하는방식으로, 사용자의등급이나패킷의중요성, 응용프로그램의종류에따른 QoS(Quality of Service) 를전혀지원하지않고있다. 이러한다양한 QoS 를제공하기위해 IETF(the Internet Engineering Task Force) 에서는 1994 년에 IntServ(Integrated Service) 모델을제안하였다 [1]. IntServ WG(Working Group) 은 voice/video 와같은실시간응용서비스들이요구하는 QoS 를만족시킬수있는라우터와망구조를정의하였고더나아가서는 end-to-end 에서의 QoS 를만족시킬수있는기술을제안하였으나, 인터넷백본망의모든패킷플로우에대해자원예약시필요한정보및상태를플로우마다소프트링크상태로유지하기위해서는라우터가너무나큰메모리공간과계산능력을가져야하기때문에실제인터넷망에서의적용은불가능 했다. 이러한문제를해결하기위하여 IETF 에서는 DiffServ WG 을만들어각트래픽플로우에대한 QoS 지원이아니라특정패킷들의집합에대한 QoS 를보장해주는방법을제시하였다. DiffServ 는기본적으로 DS 도메인의입구라우터에서 QoS 를만족시키기위한보다복잡한처리과정을수행하고내부라우터는단순히패킷에정해진처리행동에따라서빨리처리해주는방법이다. 인터넷이직면해있는또다른문제는사용자수가급증하고응용프로그램이발전하면서트래픽양의증가가하드웨어의발전속도를능가하고있다. 때문에한정된자원인대역폭을보다효율적으로사용할수있는방법이필요하게되었다. 이러한인터넷트래픽문제를해결하기위해서 IETF 에서는 Layer 3 의확장성을그대로적용하면서 Layer 2 의고속패킷교환기능을사용하는 MPLS(Multi Protocol Label Switching) 기술을개발하였다. MPLS 망의경계라우터에서고정길이의짧은레이블
을할당하고중간라우터는단지레이블을교환하면서출구라우터까지패킷을전달할수있는기능이다. 이방식을사용하면중간라우터에서는 IP 계층까지패킷이올라가지않기때문에고속으로패킷을전송할수있다. DiffServ 는 IP 계층에서패킷들을분류하고 MPLS 는 Data Link 계층에서패킷들을전송하기때문에두기술을쉽게결합시켜 DiffServ over MPLS 라는새로운서비스를제공할수있다. 이렇게 DiffServ 의패킷분류기능과 MPLS 의패킷전송기능을동시에사용한다면인터넷이반드시해결해야만하는중요한두문제인응용서비스들의 QoS 보장에대한요구와인터넷트래픽증가의문제를모두해결할수있을것이다. 본논문에서는 Linux 기반으로 MPLS 망에서 DiffServ 기능을지원하는 DiffServ over MPLS( 이하 DSMPLS) 시험망을구축하고 IEEE 1394 를이용하여디지털비디오를전송하는실험을해보고자한다. 2 장에서는관련연구에대해살펴보고 3 장에서는 MPLS 망에 DiffServ 기능을추가시키기위해필요한사항들을설명하였다. 4 장에서는 Linux 기반의 PC 라우터를이용하여 DSMPLS 시험망을구축하였고 5 장에서는 IEEE 1394 를이용한디지털비디오데이터전송을통하여시험망의성능을측정하였다. 2. 관련연구 2.1 DiffServ DiffServ 망의입구라우터에서는패킷헤더의특정정보를보고차등화된서비스를위한패킷들의모임인 BA(Behavior Aggregate) 를결정한다. 각 BA 에따라서망내부에서 PHB(Per-Hop Behavior) 를결정하는 DSCP(DiffServ Code Point) 값을패킷에 Marking 하고트래픽조절기능을수행한다. 내부라우터에서는단순히자원할당과 PHB 에따른패킷처리를수행하게된다 [2]. 아래 < 그림 1> 은 DiffServ 의일반적인구조를보여주고있다. 이렇게 DiffServ 는입구라우터에서만복잡한기능을수행하기때문에내부라우터의패킷처리에대한부담을줄여처리속도를향상시켰다. DSCP 는 IPv4 의헤더부분의 Type of Service(ToS) 필드를재정의하여사용하고있다 [3]. 입구라우터 BA 결정 DSCP 마킹 Traffic Conditioning 내부라우터 DiffServ 망 PHB 에따른패킷처리 PHB 에따른패킷처리 < 그림 1. DiffServ 망구조 > 출구라우터 DSCP 값과 PHB 매핑문제는 DS 망운영의지역정책에따라달라질수가있는데 IETF 에서권장하는 PHB 의종류에는 Default PHB, EF PHB, 그리고 AF PHB 가있다. Default PHB 는 non DiffServ 패킷에대해기본적으로서비스해주는 PHB 로써현재의 Best-Effort 서비스와같은정도의서비스이며 DSCP 는 000000 이다. EF PHB 는적은손실, 지연, 지터와대역폭보장서비스를제공할수있는 PHB 로써양질의서비스를요구하는트래픽을서비스하기에가장적절하며 DSCP 는 101110 (0x2e) 이다. AF PHB 는망의혼잡및폭주상황에서도트래픽의최소한의전송속도를보장하는 PHB 이다. 이러한 AF PHB 는크게 4 개의서비스클래스로나누어지고각클래스에는다시 3 개의다른패킷폐기우선순위를적용하게된다 [4][5]. 경계라우터에서 TC(Traffic Conditioning) 기능은구체적으로 Classifier, Meter, Marker, Shaper/Policer 등으로구성되어있다. Classifier 는입력패킷들을 BA 로구분해주며, Marker 는결정된 PHB 에따라패킷에 DSCP 값을마킹한다. Meter 는패킷이미리정해진트래픽 profile 을준수하는지여부를결정하고, 위배된패킷에대해서는 Shaper/Policer 에서조정또는폐기시키게된다 [2]. 아래 < 그림 2> 는 TC 의구조를보여주고있다. packets Classifier Meter Marker Shaper/ Dropper < 그림 2. DiffServ 의 Traffic Conditioning 구조 > DiffServ 망내의각라우터들은 PHB 별로큐를할당하고버퍼링함으로써차등서비스를 2
실행한다. EF PHB 를위해서는 CBWFQ(Class Based Weighted Fair Queuing), WRR(Weighted Round Robin), DRR(Deficit Round Robin) 등과같은큐잉방법을사용하고 AF PHB 를위해서는각 AF 클래스에따라다른패킷폐기방법을적용할수있는 RED(Random Early Detection), WRED(Weighted RED) 등과같은여러큐잉메커니즘이사용된다. 2.2 MPLS MPLS는패킷전송을고속화하기위한기술이며, 이를위해 Layer 2의교환기술을사용한다. 또한망의확장성을제공하기위해서 Layer 3의라우팅기술을접목하였다. MPLS는패킷을전달하기전에반드시입구라우터에서출구라우터까지의경로를 LSP(Label Switched Path) 로미리설정하여야하고, IP 주소대신에고정된길이의짧은레이블을사용하여패킷을전송한다. 즉입구라우터에서패킷들을 FEC(Forwarding Equivalence Class) 로분류하고이에따라레이블을결정하게되며, 그레이블을보고미리설정된 LSP를선택하여패킷을전송하게된다. 그러므로패킷을전송하기위해필요한 IP 헤더처리과정이입구에서한번만수행되며내부라우터에서는단지레이블을교환하면서 Layer 2의고속전송을하게된다 [6]. MPLS의또다른특징중에하나는기존의인터넷망에서는가능하지못했던 TE(Traffic Engineering) 기능을제공한다는것이다. 이것은단지목적지주소만을보고홉단위로라우팅을수행하는기존의인터넷프로토콜과는달리 MPLS에서는 LSP를설정할때네트워크관리자가선택적으로 Explicit Route를설정할수있는기능과 LSP 설정시망자원을임의로할당할수있는기능을제공함으로써가능하다 [7]. 또한 MPLS는 VPN(Virtual Private Network) 서비스를제공하기에적합하다. 기존인터넷망에서 VPN 서비스를제공하기위해서는 PPTP(Point-to-Point Tunneling Protocol), L2F(Layer 2 Forwarding), L2TP(Layer 2 Tunneling Protocol) 과같은별도의터널링프로토콜을제공해야하지만, MPLS에서는 LSP에서이용되는레이블과 VPN 식별자정보를매핑시킴으로써쉽게 VPN 서비스를제공할수있다. MPLS 라우터가레이블을교환하면서패킷을전달하기위해서는각라우터가사용하는레이블정보를서로주고받아야하고각 LSP가차 등서비스를제공하기위해서는경로설정시에필요한 QoS 정보들을전달할수있게하는제어프로토콜이필요하다. 현재 IETF 에서표준화단계에있는레이블분배프로토콜은 LDP(Label Distribution Protocol) 와기존의 RSVP 를확장한 RSVP-TE 가있다 [8][9]. 아래 < 그림 3> 은 MPLS 망의일반적인구조이다. 입구라우터 FEC 결정레이블할당 LSP 결정 내부라우터 MPLS 망 LSP 레이블 swapping 패킷스위칭 레이블 swapping 패킷스위칭 < 그림 3. MPLS 망구조 > 출구라우터 2.3 IEEE 1394 와 DV(Digital Video) 응용서비스 2.3.1 IEEE 1394 의개요 IEEE 1394 는고속의시리얼버스인터페이스를정의한표준을말한다. 이기술은 1980 년대 Apple 사의 "FireWire" 에근간을두고있는데, Apple 은자신들의매킨토시컴퓨터에사용되는 SCSI 버스를보충하는저가격의기술로개발하였다. IEEE 1394 의가장큰장점으로는빠른전송속도를들수있으며모드에따라 100Mbps, 200Mbps, 400Mbps 등세가지의속도를낼수있기때문에고속의대역폭을요구하는다양한디지털장비들사이의표준으로주목되고있으며, 따라서많은전자제품들이 IEEE 1394 인터페이스를제공하기시작하고있다 [10]. 몇년안에캠코더, 비디오, 오디오, HDTV 등의많은장비들이 IEEE 1394 인터페이스를제공하게되며, 이들은모두아날로그가아닌고속의디지털데이터전송에기반으로동작하게된다. 또한쌍방향통신이뛰어나기때문에 PC 를이용한화상회의등의응용분야에도적용이용이하다. 2.3.2 디지털비디오응용서비스 디지털비디오 (DV) 는 packet based video/audio 포맷이며 magnetic tape media 에영상과음성을저장하기에최적화되어설계되어있고작은사 3
이즈의 tape media(6mm, 120min/cassette) 와 8mm 와비교해서적당한가격으로인해가장인기있는포맷이되었다. DV 스트림데이터는인터넷상에서리얼타임스트림을위해설계된 RTP(Realtime Transport Protocol) 사용한다. DV 스트림데이터는 3 byte ID 헤더를포함한 80바이트크기의 DIF block으로구성되며같은 RTP 패킷안에있는 DIF block들은같은비디오프레임안에있는것들이며그다음비디오프레임의 DIF block들과같은 RTP 패킷안에존재할수없다. 그리고 DV 스트림은 RTP 타임스탬프 (time stamp) 에의해한프레임에서다음프레임으로넘어가게된다 [10]. 3. DSMPLS 개요 DiffServ MPLS 입구라우터 1. 패킷검사 2. BA 결정 3. PHB 선택 4. DSCP 결정 1. 패킷검사 2. FEC 결정 3. LSP 결정 4. label 할당 내부라우터 DSCP 를참조하여 scheduling & dropping label 을참조하여 swapping & switching < 표 1. DiffServ 와 MPLS 의비교 > 출구라우터 - label 제거 DiffServ 와 MPLS 는 < 표 1> 과같이비교할수있다. 자세히살펴보면, 입구라우터에서대부분의작업을수행하며내부라우터에서는상대적으로단순한작업만을수행한다. 또한수행계층이 DiffServ 는 IP 계층이고 MPLS 는 Data Link 계층이기때문에각각의구조가서로충돌하거나겹치는부분이없다. 이러한이유로두서비스를통합하는것이아주용이하다. 기본적인실행시나리오를살펴보면입구라우터의 IP 계층에서 DiffServ 의 PHB 를선택하게되고 Data Link 계층으로내려보내게된다. 여기서 PHB 에따라 MPLS 의레이블과 EXP 필드가결정되어해당 LSP 에따라패킷전송서비스가시작된다. 내부라우터에서는 DiffServ 의관점으로보면 MPLS 터널을통과하게되므로특별히 DiffServ 에선처리해줄작업이없다. 즉 DiffServ 의기능은 MPLS 의존재여부에관계없이변함없다. MPLS 망에서 DiffServ 를제공하기위해서해 결해야하는문제들은다음과같은것들이있다 [11]. DiffServ 에정의되어있는 PHB 들을 MPLS LSP 에매핑시키는방법 DiffServ 패킷전달을위한 MPLS 라우터의패킷포워딩엔진의구조변경 DiffServ 를지원하는 LSP 를표현하기위한 LSP 설정방법 3.1 PHB 의 LSP 매핑방법 MPLS 망에서 DiffServ 를제공하기위해서제일먼저해결해야하는문제는 DiffServ 의 BA 들을어떻게 MPLS LSP 에매핑시키는것이다. BA 들을 LSP 에매핑하는문제는간단히하나의 BA 에하나의 LSP 를설정하는방법과여러 BA 들을하나의 LSP 에매핑시키는방법이있을수있다. 이를위해, IETF 에서는 Label-Only- Inferred LSP(L-LSP) 와 EXP-Inferred-PSC LSP(E- LSP) 를정의하고있다. 두 LSP 에대해서설명하기앞서 DiffServ 가지원되는 MPLS 에서새로추가된용어들이있는데하나는순서가지켜져야할여러 BA 들의집합을 OA(Ordered Aggregate) 로정의하고있고 OA 에속한 BA 들에적용할하나또는그이상의 PHB 집합을 PSC(PHB Scheduling Class) 라고정의하고있다. 3.1.1 E-LSP MPLS Shim Header BA BA BA OA 레이블 EXP S TTL PSC 패킷폐기우선순위 < 그림 4. E-LSP 의 BA 매핑방법 > E-LSP 는여러 OA 들에대해서하나의 LSP 를사용하는것이다. FEC 에의해서 E-LSP 는결정 4
되고하나의 E-LSP 내에서는 MPLS Shim 헤더의 EXP 필드를이용하여 PHB 를결정한다. Shim 헤더의 EXP 필드가 3 비트이므로하나의 E-LSP 에는최대 8 가지의서로다른 BA 들을전달할수있다. EXP 필드하나로 PSC 와패킷폐기우선순위까지결정되기때문에 "EXP- Inferred-PSC LSP" 라고부른다. EXP 필드와 PHB 의매핑방법은 E-LSP 설정시에명시해주는방법과미리정의된규칙에따라매핑하는방법이있다. 3.1.2 L-LSP FEC BA BA BA OA 얻을수없기때문에 PHB 를 MPLS 헤더에인코딩하고그값에따라 PHB 를결정하는방식이순수 DiffServ 와다르다. 따라서 DiffServ LSR 레이블전달구조는변경되어져야한다. DiffServ 를지원하기위해서변경되어야하는 MPLS LSR 의패킷포워딩구조는먼저 PHB 에해당하는패킷들을구분할수있는분류기 (A), 출력 PHB 를결정할수있는부분 (B), Traffic Conditioning(TC), 레이블교환부분 (C), 그리고 DiffServ 정보를패킷에설정하는인코딩기능 (D) 등이추가되어져야한다. 아래 < 그림 6> 은 IETF 에서정의한 DiffServ 가지원되는 MPLS LSR 의레이블포워딩모델을보여주고있다. 그림에서 (*) 표시는 LSR 이 MPLS ingress 일때, 입력패킷이레이블이없을수도있다는것을의미하며, (&) 는 MPLS egress LSR 일때, 출력패킷이레이블없이전달될수있다는것을의미하고있다. MPLS Shim Header 레이블 EXP S TTL PSC 폐킷폐기우선순위 < 그림 5. L-LSP 의 BA 매핑방법 > L-LSP 는 <FEC, OA> 쌍에대하여하나의 LSP 를사용하는방법이다. 따라서 LSP 설정시에하나의 PSC 가결정되고각 LSR 들은레이블을보고해당 PSC 를매핑시킬수있다. 그리고, 패킷폐기우선순위는 MPLS Shim 헤더가존재하면 EXP 필드를보고결정하며 Shim 헤더가사용되지않는경우에는해당데이터링크계층에서제공하는패킷폐기우선순위필드를참조하여결정한다 ( 예, CLP: MPLS-over- ATM, DE: over-frame Relay, User_Priority: over- IEEE802.1). EXP 를고려하지않고단지 LSP 의레이블만으로 PSC 가결정되기때문에 "Label- Only-Inferred-PSC LSP" 라고부른다. 3.2 MPLS 라우터의패킷포워딩엔진의구조 하나의 LSP 에여러 OA 들이전송되기때문에 DiffServ LSR 의레이블교환방식은패킷의 BA 에따라정해지며 DSCP 값을직접 LSR 이 < 그림 6. DSMPLS LSR 의패킷포워딩구조 > 입력 PHB 결정 (B) MPLS LSR 에입력되는패킷이어느 PHB 에속하는지를결정하는패킷분류기역할을수행한다. 구분방법은지원하는 DiffServ 터널링모드에따라결정되는레이블스택엔트리를고려하는방법과 IP 헤더의 DS 부분을고려하여결정하는두가지방법이있다. TC 기능이추가된출력 PHB 결정 (B) 출력 PHB 를결정하는부분으로가능하면 TC 기능도수행한다. TC 기능은부가적으로수행되고만약 TC 기능을거치지않으면출력 PHB 는입력 PHB 와동일하다. 레이블교환 (C) MPLS 패킷의레이블교환을수행하는부분으로레이블이부착되어도착한패킷은 ILM(Incoming Label Map) 을참조하여하나또는여러개의 NHLFE(Next Hop Label Forwarding 5
Entry) 로매핑될수있다. 레이블이없는패킷은 FTN(FEC-To-NHLFE) 맵을참조하여매핑한다. DiffServ 를지원하는레이블을나타내기위한문맥정보를다음과같이정의한다. - ' 제공되는 PHB 들 ' - 'LSP 유형 '(E-LSP, L-LSP) - 입력레이블을위한 'Encaps PHB 매핑 ' - 출력레이블을위한 'Set of PHB Encaps 매핑 ' 이러한문맥정보는 ILM 과 FTN 에추가되고 LSP 설정시에구성되어진다. E-LSP 설정시에 EXP PHB 매핑정보를명시하지않은 E- LSP 에대해서는미리정의된기본 PHB 가 ' 제공되는 PHB 들 ' 에설정되고명시적으로알려준경우에는전달받은매핑정보가구성된다. L- LSP 의 ' 제공되는 PHB 들 ' 은 LSP 설정시에반드시명시적으로전달받은정보가설정되어진다. 정의이다. E-LSP 의 class 는 TBD 이고, C_Type 은 1 이며 PHBID 는 IANA 에정의된값이다. L-LSP 의 C_Type 값은 2 이며 MAP 엔트리에 EXP 값이없다. RSVP 를이용하여 E-LSP 나 L-LSP 를설정할때에는기본적으로세션유형을 LSP_Tunnel_IPv4 의세션유형과 LABEL_REQUEST 객체를포함한 PATH 메시지를보내어설정한다. 이 PATH 메시지에 DIFFSERV 객체를포함하여레이블에대한 DiffServ 문맥정보를구성할수있도록전달되어진다. DIFFSERV 객체를포함한목적지 LSR 은 PATH 메시지의 DIFFSERV 객체를포함하지않는 Resv 메시지를보냄으로써실제로 LSP 가설정되어진다. 레이블요청이받아들여지고레이블이할당되어지면 DiffServ LSR 은자신의 DiffServ 문맥정보를구성하고패킷처리모듈의매개변수값을요구된차등서비스를제공할수있도록버퍼스케쥴링및폐킷폐기방법을설정한다. DiffServ 정보의인코딩 (D) DiffServ 관련된정보를해당하는패킷에설정하고필요에따라적절히변환해주는부분이다. 즉, MPLS Shim 헤더의 EXP, ATM CLP, FR DE, 802.1 의 User_Priority 필드에정보를인코딩한다. 3.3 DiffServ 지원 LSP 설정방법 DiffServ 를지원하는 LSP 설정방법은기존의제어시그널링 (LDP, RSVP-TE) 을약간확장함으로써가능하다. 즉, LDP(Label Distribution Protocol) 은 DiffServ TLV 를정의하여기존의 Label Request 메시지에 DiffServ TLV 를추가하여전달함으로써 DiffServ LSP 가설정될수있으며, RSVP-TE 는 DIFFSERV 객체를새로정의하여 PATH 메시지에실어서보냄으로써가능하다. 3.3.1 DSMPLS 를위한 RSVP 확장 차등화서비스지원이가능한 LSR 이 E-LSP 를통해차등화서비스를지원할경우 DIFFSERV 객체에대한지원은선택적이고, 만약 L-LSP 를통해차등화서비스를지원할경우, DIFFSERV 객체의지원은필수적이다. 다음 < 그림 7> 은 RSVP 의 DIFFSERV 객체에대한 < 그림 7. DIFFSERV 객체 > 3.3.2 DSMPLS 를위한 LDP 확장 DiffServ 를지원하기위해서는 LDP 를확장해야한다. 이를위해서추가적인 DiffServ TLV 에대해서 IETF 는정의하고있다. 이 DiffServ TLV 는미리구성된 'EXP PHB 매핑 ' 을사용하는 E-LSP 를설정할경우에는생략되고, 명시적으로알려주는 'EXP PHB 매핑 ' 을사용하는 E-LSP 나 L-LSP 를설정할때 Label 요청메시지에추가되어전달되어진다. 아래 < 그림 8> 은 DiffServ TLV 의형식을보여 6
주고있다. E-LSP 의 T 는 0 이며 MAPnb 는 DiffServ TLV 에포함되는 MAP 엔트리의수를나타내며, 각 MAP 엔트리는하나의 EXP 필드값과하나의 PHB 를매핑하는것을정의한다. L-LSP 의 T 는 1 이며단지 LSP 에의해지원되는 PSC 값만을가지고있다. < 그림 8. DiffServ TLV> 4. DSMPLS 시험망구축 DSMPLS 시험망구축을 Linux 를이용하여 LSR 을 3 대만들어각각입구라우터, 내부라우터, 출구라우터로설정하였다. 그리고, 완성된시험망의성능측정을위하여 IEEE 1394 를이용한 DV 전송서비스를하였는데, 이를위하여경계라우터에필요한장비들을설치하였다. 였다. 시그널링프로토콜은 Alexey Kuznetsov 가개발한 RSVP 데몬에 E-LSP 의설정이지원되도록수정하여사용하였다. 들어오는패킷들을분류하고 DSCP 를마킹하기위해서 iptables 패키지를설치하고 IPv4 의 ToS 필드부분에 DSCP 를마킹할수있도록패치시켰다. LSP 에망자원을차등분배하기위해서각각의 LSP 에스케쥴링큐를연결하고이를통해라우팅할수있는 iproute2 패키지를설치하였다. 스케쥴링큐의설정은 iproute2 패키지내의 'tc' 를사용하였다. 라우팅기능은특별한라우팅프로토콜을사용하지않고 Linux 자체의기능을사용하였다. 수신한패킷을다른네트워크로전송하기위해서는 /proc/sys/net/ipv4/ip_forward 라는파일의내용을 '1' 로써주면가능하다. 설치순서는커널에 MPLS 패치와 iptables 의 DSCP 마킹을위한패치를먼저실행해야한다. 그리고, 커널에필요한기능들을설정하고컴파일한후다른소프트웨어들을설치한다. 커널에설정해야할기능들은아래 < 표 2> 와같다. 4.1 Linux LSR 설치 시험망구축을위해사용한하드웨어장비는펜티엄 4 PC 3 대에 100Mbps 이더넷카드를사용하였다. DSMPLS 를지원하는 PC 라우터구축을위하여필요한소프트웨어들을살펴보면아래와같다 [12]. - RedHat 계열의 Linux 에커널버전은 2.4.9 를사용하였다. DiffServ 의기능은커널 2.4 버전이후기본적으로커널내에포함되어있으므로, 특별히설치할필요는없다. MPLS 기능은 Linux 용오픈소스개발사이트인 SourceForge[13] 에서제공하는 MPLS 패치를 DiffServ 와연동을위해 PHB 를레이블과 EXP 로변환시키는기능을추가시켜서사용하 < 표 2. Linux 커널설정옵션 > Linux LSR 내에서의패킷의흐름을설치한소프트웨어들의연동구조로살펴보면아래 < 그림 9> 와같다. 7
패킷 BA 분류방법 iptables DSCP 마킹 LSP 설정 RSVPD DSMPLS 레이블, EXP 결정 큐설정 iproute < 그림 9. Linux LSR 의구조 > 4.2 DV 전송서비스를위한하드웨어설치 패킷포워딩 IEEE 1394 를이용한 DV 전송서비스의시험에사용한하드웨어장비의목록이다. 아래의장비들은 DV 의송신과수신을위해각 2 개씩필요하다. - 펜티엄 3 PC - DV 의송수신에사용할 Sony TRV900 디지털비디오카메라 - DV 카메라와 PC 간의 IEEE 1394 인터페이스와연결에필요한 FireBird DV 1394 card (Texas Instruments chip: TSB12LV26) & cable (4-6 pin) - 100Mbps 이더넷카드 - 사운드카드 위의하드웨어를장착한각각의 PC 에 MS- Windows 2000 을운영체제로설치하고 DV 의전송을위해 DVTS(Digital Video Transport System) 을설치하였다 [14]. 위의장비들을이용하여구축한시험망은아래 < 그림 10> 과같다. 시험망의성능을측정한후일반인터넷망과성능을비교분석하였다. 5.1 일반인터넷망에서의 DV 송수신 일반인터넷망의성능을측정하기위한시나리오는아래와같다. 1. 송신측 PC 와수신측 PC 의 DVTS 응용프로그램을실행시켜서각각 sender 와 receiver 로설정한후송신측 DV 카메라에서수신측 DV 카메라로테스트용 DV 의전송을시작한다. 2. 시험망에 DV 이외의다른트래픽이없기때문에입구라우터에서출구라우터까지백그라운드트래픽을발생시킨다. 3. 백그라운드트래픽의양을 10Mbps 단위로점차증가시킨다. 4. 위의상황에서발생되는 DV 패킷의손실율을측정기록한다. 패킷손실율 (%) 100 80 60 40 20 0 0 10 20 30 40 50 60 백그라운드트래픽 (Mbps) < 그림 11. 일반인터넷망에서의패킷손실율 > 송신 DV 10.1.0.2 DiffServ over MPLS 시험망 10.0.0.2 10.0.1.2 PC 라우터 10.2.0.2 수신 DV MS-Windows 2000 10.1.0.1 10.0.0.1 10.0.1.1 10.2.0.1 MS-Windows 2000 PC 라우터 PC 라우터 < 그림 10. DSMPLS 시험망 > 5. IEEE 1394 DV 의전송시험및결과 4 절에서구축한 DSMPLS 시험망위에 DV 데이터전송을위해 EF PHB 를설정하고다른패킷들을위해 Default PHB 를설정하여패킷을전송했을때 DV 데이터의손실율을계산하여 위의 < 그림 11> 은시나리오에따른일반인터넷망에서의백그라운드트래픽증가에따른패킷손실율을나타내고있다. 이처럼 QoS 보장이없는망의경우망에흐르는트래픽의양이적을때는패킷의손실이발생하지않지만, 양이점차증가하여망의성능을능가하는어느순간부터패킷손실율은기하급수적으로증가함을알수있다. 5.2 DSMPLS 시험망에서의 DV 송수신 DSMPLS 시험망의성능을측정하기위해기본적으로설정한사항은아래와같다. 8
1. 입구라우터에서출구라우터까지 LSP 를설정한다. 2. DSCP 가 EF PHB 로마킹되어오는패킷에대해 EXP 필드를 '1' 로마킹하도록설정한다. 즉, PHB EXP 를 'EF PHB (DSCP : 0x2e) 1' 로설정한다. 3. EF PHB 와 Default PHB 를위한스케쥴링큐를설정한다. EF PHB 를위한큐는 TBF(Token Bucket Flow) 큐를사용하였고 Default PHB 를위해서는 RED(Random Early Detection) 큐를사용하였다. 4. 송신측 PC 에서수신측 PC 로가는 DV 패킷의 DSCP 를 EF PHB 값인 0x2e 로마킹하도록설정하고백그라운드트래픽은 Default PHB 값인 0x00 로마킹하도록설정한다. 5. DSCP 0x2e 로마킹한패킷들을하나의 FEC 로묶어서 1 에서설정한 LSP 를통하여전송되도록한다. 6. 송신측 DV 카메라에서수신측 DV 카메라로테스트용 DV 의전송을시작한다. 이렇게설정되어있는상황에서 EF PHB 와 Default PHB 의우선순위차이를보기위하여 EF PHB 의트래픽허용량을 35Mbps 로보장해주면서백그라운드트래픽의양을 10Mbps 단위로점차적으로증가시키면서 DV 패킷의손실율을살펴보았다. 패킷손실율 (%) 100 80 60 40 20 0 0 10 20 30 40 50 60 백그라운드트래픽 (Mbps) < 그림 12. DSMPLS 망에서백그라운드트래픽에따른 EF PHB 의패킷손실율 > 위의 < 그림 12> 에서알수있듯이백그라운드트래픽의양에관계없이 EF PHB 의트래픽은항상보장됨을알수있다. DSMPLS 시험망에서두번째실험은입구라우터에서출구라우터까지백그라운드트래픽의 양을 60Mbps 로설정한후 EF PHB 를위해사용한 TBF 큐의대역폭을 5Mbps 단위로증가시켜패킷손실율을살펴보았다. 아래 < 그림 13> 은 DSMPLS 시험망에서 DV 를위한 EF PHB 의대역폭을점차적으로증가시켰을경우의패킷손실율을나타내고있다. 패킷손실율 (%) 100 80 60 40 20 0 0 5 10 15 20 25 30 35 EF PHB 의대역폭 (Mbps) < 그림 13. DSMPLS 망에서 EF PHB 의대역폭변화에따른패킷손실율 > EF PHB 를위해설정한대역폭은다른 PHB 에서사용할수없다. 그러므로 Default PHB 로설정된백그라운드트래픽의증감여부에상관없이 EF PHB 의대역폭은보장되며패킷손실율은거의변동이없다. 위의그림을살펴보면 DVTS 의요구대역폭은 30Mbps 이며이를보장해주었을때는망내의트래픽이매우혼잡한상황에서도원활한패킷전송이가능함을보여주고있다. 즉, 위의실험결과에서알수있듯이일반인터넷망에서보장해주지못하는 QoS 를고대역폭의전송속도를요구하는응용서비스에게보장해줌으로써보다좋은결과를얻을수있음을알수있다. 그러나, 각각의 PHB 에적절한대역폭이보장되지않을경우기존의인터넷망보다못한결과를보일수도있으므로망의특성에따라적절한대역폭의분할이요구된다. 6. 결론및향후연구과제 본논문에서는 Linux 기반의 PC 를이용하여 DSMPLS 시험망을구축하고고대역폭의전송속도를요구하는 IEEE 1394 를이용한 DV 전송서비스를 QoS 를보장하여수행해보았다. DSMPLS 망을이용해야할필요성이있는응용서비스를개발할경우본논문에서구축한 9
시험망을이용하여테스트할수있기때문에보다빠르고효율적인개발및비용절감효과를볼수있을것이라고생각한다. 본논문에서구축한시험망에사용한시그널링프로토콜은 RSVP-TE이며 DiffServ를지원하는 LSP로는 E-LSP를사용하였다. 향후에는 CR-LDP를시그널링프로토콜로사용하고 L- LSP를지원할수있도록수정하여보다완벽한 DSMPLS PC 라우터를만들계획이다. 또한 DSMPLS를지원하는 PC 라우터에사용된각각의제어프로그램들과운영자사이에통합설정프로그램을구현함으로써 DSMPLS 시험망의운영을보다일괄적이고쉽게설정할수있도록하여사용자의편의를도모하고자한다. 참고문헌 [1] Braden, R., Clark, D. and S. Shenker, "Integrated Services in the Internet Architecture: an Overview", RFC 1633, June 1994. [2] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z. and W. Weiss, "An Architecture for Differentiated Services", RFC 2475, December 1998. [3] Nichols, K., Blake, S., Baker, F. and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, December 1998. [4] Heinanen, J., Baker, F., Weiss, W. and J. Wroclawski, "Assured Forwarding PHB Group", RFC 2597, June 1999. [5] Jacobson, V., Nichols, K. and K. Poduri, "An Expedited Forwarding PHB", RFC 2598, June 1999. [6] Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol Label Switching Architecture", RFC 3031, January 2001. [7] Awduche, D. et al., "Requirements for Traffic Engineering over MPLS", RFC 2702, September 1999. [8] Andersson et al., "LDP Specification", RFC 3036. [9] Awduche, D., Berger, L., Gan, D., Li, T., Swallow, G. and V. Srinivasan, "RSVP-TE: Extensions to RSVP for LSP Tunnels," RFC 3209, December 2001. [10] A. Ogawa, K.Kobayashi, et al., "Design and Implementation of DV based video over RTP", PVW2000, 2000 [11] "MPLS Support of Differentiated Services", draft-ietf-mpls-diff-ext-09, September 2001. [12] Pim Van Heuven, "RSVP-TE daemon for DiffServ over MPLS under Linux", http://dsmpls.atlantis.rug.ac.be [13] "Source Forge", http://www.sourceforge.net [14] "DV Stream on IEEE 1394 Encapsulated into IP", http://www.sfc.wide.ad.jp/dvts [15] Srinivas Vegesna, "IP Quality of Service", Cisco Press, 2001 [16] Kalevi Kilkki, "Differentiated Services for the Internet", MTP, 1999 권호한 1999.2 전남대학교전산학학사 2001 현재전남대학교전산학석사과정관심분야 : MPLS, DiffServ 윤상식 1996 전남대학교전산학학사 1999 전남대학교전산통계학석사 1999 - 현재전남대학교전산학박사과정관심분야 : MPLS, TE, QoS 최덕재 1982 서울대학교컴퓨터공학학사 1984 한국과학기술원전산학석사 1995 Univ.of Missouri-Kansas 컴퓨터망박사 1984-1996 전남대학교전자계산소운영부장 1997-1998 전자통신연구원통신시스템연구단위탁연구원 1996-2000 전남대학교전산학과부교수 2001.1 현재전남대학교전산학과교수관심분야 : 네트워크관리, 서비스관리, TMN, 차세대인터넷 10