engineering/Network Eng.2006. 8. 10. 16:25

Multiprotocol Label Switching (MPLS)의 등장 배경과 장점

이글은 IETF의 "A Framework for MPLS"를 토대로 작성된 문서입니다.
MPLS의 등장 배경과 순수라우터기반 네트워크 및 IP over ATM 오버레이 네트워크와 비교를 통해 MPLS의 장점을 기술하고 있습니다.
이중에서 IP over ATM 오버레이 네트워크와 비교는 다음 문서에서 올리겠습니다. 화일이 커져서 화면뜰 때 갑갑하니까요.


여기서는 기존의 방식들에 대한 MPLS의 장점과 잠재적인 가치를 기술한다. 특히, 코어 네트워크(예를 들어, ISP 백본망)를 구성할 때 MPLS의 장점을 주로 기술한다. 학내망(Campus)이나 LAN에서 MPLS를 적용해도 역시 이득은 있지만 여기서는 이것에 대해서는 설명하지 않는다.

현재 코어 IP 네트워크를 구성하는 방법은 크게 두 가지가 있다. (1) 기존의 IP 데이타그램 라우터들로 구성-코어와 에지 모두 라우터로 구성 (순수 라우터 기반 구조)  (2) ATM 교환기로 코어 네트워크를 구성하고 그 위에(또는 에지에) 데이타그램 라우터를 두는 오버레이 모델로 구성하는 하는 것이다.

기존의 IP 백본 네트워크(대략, 1996년까지)은 (1)의 구조로 이루어져 있었으며, 여기서의 라우팅 파라다임은 네트워크내의 모든 라우터에서 매 패킷마다 Layer 3 packet forwarding (LPM) 기능을 수행하였다. 기존의 라우터는 소프웨어 기반으로 패킷의 Next-hop을 찾으므로, 네트워크 링크 속도가 증가하면서 이 포워딩 기능이 전체 네트워크의 성능 저하의 주된 요소가 되었다.

그래서, 대안으로 출현한 구조가 총 세 가지이다.

첫번째는 제일 먼저 나온 구조로 IP over ATM 오버레이 구조이다(대략, 1997-98년). 위의 (2).
(IP/ATM/SONET)

두번째는 (1)구조를 그대로 가면서(즉, 모든 라우터가 매 패킷마다 Layer 3 packet forwarding 수행), 문제가 되었던 라우터의 성능을 대폭 향상시키는 방안이다. 즉, 라우터의 패킷 포워딩 성능을 향상시키기 위해서 고속의 프러세서, 메모리, 스위칭 패브릭을 사용하고, 효율적인 LPM 알고리즘을 적용하고, 포워딩 엔진을 ASIC화하여 라우터의 포워딩 및 교환 능력을 몇 order 정도 향상시키는 방안이다. 98년부터 이러한 고속 라우터가 출시되기 시작하였으며 99년에는 많은 상용 ISP 네트워크에 설치되고 있다.
(IP/L2, or IP/SONET)

세번째는 바로 MPLS로 IP 백본 네트워크의 코어 라우터의 기능을 단순화시키는 접근 방법이다. 즉, 비연결-지향형 IP 네트워크에 연결-지향적인 미케니즘을 도입한 것이다.
(IP/MPLS/L2)
                        < Data forwarding >                          < Core Signaling >
---------------------------------------------------------------------------------------------
                  Edge                      Core
---------------------------------------------------------------------------------------------
IP over ATM       L3(IP)              L2(ATM, PVC/SVC, 연결지향)     PVC or ATM signaling
고속 라우터       L3(IP)              L3(IP, per-hop 라우팅)              -
MPLS               L3(IP)                L2(LSP, 연결지향)                   LDP
---------------------------------------------------------------------------------------------


그림 1. 순수 라우터기반 인터넷 백본 구조


그림 2. IP over ATM overlay 구조

그림 3. 고속 라우터의 등장



MPLS의 장점을 기술하기 위해서 먼저 MPLS의 대안(경쟁) 기술에 대해 알아보고, 이들과 MPLS를 상대적으로 비교함으로써 MPLS가 가져다주는 여러가지 이득에 관해 알아본다. 따라서, 이 글은 두 부분으로 나누어 지는 데, 첫번째는 순수 라우터 기반 네트워크(pure datagram routed network)와 비교했을 때 MPLS의 장점을 기술하고 두번째는 IP over ATM 오버레이 네트워크와 비교했을 때 MPLS의 장점에 대해 알아본다. 두번째 내용은 MPLS의 등장 배경과 장점 (2)에서 기술한다.

들어가기전에 MPLS네트워크의 라우팅 파라다임을 간단하게 알아보자. (후에 자세히 기술함.)


그림 4. MPLS 네트워크 구조



그림 4에서 보이듯이, MPLS 네트워크는 MPLS 네트워크의 에지에 위치하여 non-MPLS 네트워크와 연동하는 LER (Label Edge Router)와 MPLS 네트워크의 코어에 위치하는 LSR (Label Switch Router)로 이루어 진다.

Ingress LER은
(1) non-MPLS 네트워크로부터 전달되어 오는 패킷의 헤더(destination IP address, 등)를 분석하여 이 패킷이 전달될 LSP (Label Switched Path)를 결정한다.
(2) 해당 outgoing interface(Layer 2)에 따라 패킷을 인캡슐레이션한다(링크계층에 따라 다른 포맷의 레이블을 부착).

LSR은 LER로부터 레이블화된 패킷이 들어오면 그 레이블만 검사하여, 레이블값을 바꾸고 정해진 outgoing interface로 전달한다. 이 과정은 ATM 교환기에서 VPI/VCI 테이블을 룩업하여 셀을 교환하는 과정과 동일하다. (또한 ATM에서 VPI/VCI 룩업 테이블을 ATM signaling protocol이 생성하듯이 MPLS에서는 LDP 프로토콜이 룩업 테이블 (LIB: Label Information Base)를 생성한다.

Egress LER에서는 도착한 패킷에서 레이블을 제거하고 그 패킷의 목적지로 패킷을 전달한다.

이같은 과정에서 알 수 있듯이, MPLS 네트워크에서는 LSP의 종단점에 해당하는 LER에서는 Layer 3 apcket forwarding이 수행되고 코어의 LSR에서는 Layer 2 forwarding (스위칭) 기능을 수행하게 된다.

이 때, LER과 LSR에서 룩업 테이블은 LDP (Label Distribution Protocol) 프로토콜이 생성해준다. 이 과정은 추후 자세히 기술한다.




순수 라우터 기반 네트워크(pure datagram routed network)에 대한 MPLS의 장점
(Benefits Relative to Use of a Router Core)


 

/포워딩 구조의 단순화 (Simplified Forwarding)

기존의 라우터에서는 도착 패킷마다 도착 패킷의 Next-hop(근까, 목적지로 가기 위해 경유해야 하는 다음 라우터)를 알아내기 위해, IP address lookup을 수행하는 데, 이 때 각 패킷의 destination address prefix의 길이가 제각각 다르므로(CIDR의 사용으로 인해), 라우팅 테이블의 엔트리중에서 prefix가 가장 길게 매칭되는 엔트리를 찾아야 한다. 이 과정을 Longest Prefix Matching이라고 하며 긴 시간이 소요된다.
그러나 레이블 교환 방식은 가변길이의 긴 prefix로 LPM을 수행할 필요없이, 짧고 고정된 길이의 레이블에 대한 Exact match를 찾으면 되므로 패킷 포워딩 파라다임이 지극히 단순하고(마치 ATM과 똑같이 되고) 지극히 짧은 시간(보통, nsec)에 수행된다.
또한 MPLS에서 사용되는 레이블 헤더는 IP 헤더보다 훨씬 단순하다. 이로인해 기존의 라우터의 경우에 존재하던 IP 헤더 처리에 소요되는 시간을 없애준다.

/Efficient Explicit Routing

Explicit routing(Source Routing이라고도 함: source-여기서는 ingress LER-에서 destination-egress LER까지 망내 경로를 명시적/인위적으로 지정해줄 수 있는 기능)은 앞으로 다양한 목적으로 사용될 수 있는 매우 강력한 기술이다. 물론 순수한 데이타그램 라우팅에서도 이러한 기능은 지원된다. 이러기 위해서는, 각 패킷에 도착지까지의 모든 라우트를 실어야 하는 데 이는 아래 그림에서 보듯이 오버헤드가 너무 크다.


그림 5. IP packet format: IP 헤더 + route

MPLS에서는 이 explicit route(명시 경로)를 LSP를 설정할 때 한번 전달하면 되고 명시된 대로 LSP가 설정되면 그 다음부터는 IP 패킷을 그대로 보내면 되므로 실질적으로 의미있는 explicit routing을 구현할 수 있다.


(a)

(b)

(c)
그림 6. Explicit Routing의 좋은 점

/Traffic Engineering

트래픽 엔지니어링이란 트래픽을 네트워크상-많은 링크, 스위치, 라우터들-에 골고루 분산시키도록 트래픽을 경로를 제어해주는 기술을 의미한다. 특히, 네트워크내의 두 지점간에 복수개의 경로(또는 대체 경로)가 존재하는 경우 트래픽 엔지니어링은 큰 의미를 갖는다.
인터넷의 급속한 성장으로, 몇몇 코어 네트워크(ISP 백본망)는 이 급증하는 IP 트래픽에 대처하기 위해 자신들의 망내에 라우터와 전송 링크를 증설하고 있다. 이로 인해 ISP 백본망은 노드와 링크 측면에서 확장되고 있으며 따라서 망내에 수 많은 대체 경로가 존재하게 되었다. 이런 측면이 트래픽 엔지니어링의 필요성과 중요성을 더욱 부각시키고 있다.

그렇다면, 지금까지는 트래픽 엔지니어링 기술이 상용서비스망에서 적용되지 않았던 새로운 기술인가? 그렇지 않다. 오늘날 많은 ISP망이 IP over ATM 오버레이 모델을 취하고 있다. 즉, 코어에 고속 ATM 교환기를 배치하고 에지에(또는 위에) IP 라우터를 두는 구조이다. 이 라우터간에 연결성은 ATM PVC로 제공되며, 각 에지 라우터는 ATM PVC full-mesh의 형태로 연결되며 모든 라우터가 다른 라우터와 1-hop(layer 3)으로 연결된다.
ISP 네트워크 설계자/관리자는 각 라우터간에 ATM PVC를 설정할 때 ATM 네트워크에 부하가 골고루 분산되도록 (많이) 신경써서 설정한다. 근까, 현재도 트래픽 엔지니어링 기술은 적용되고 있는 것이다.

순수 라우터 기반 네트워크에서는 트래픽 엔지니어링을 구현하기란 여간 어려운게 아니다. 어느 정도의 부하 균등화 (load balancing)는 네트워크 링크와 관련된 메트릭(라우팅 알고리즘에서 사용됨.)을 조절하여 제공될 수는 있다. 그러나, 이런 식으로 트래픽을 다양한 링크로 분산시키기에는 한계가 있고, 특히, 대체 경로가 무지 많은 대규모 네트워크에서, 어느 두 지점간에 이러한 메트릭값을 조절하여 부하 균등 분산 효과를 얻는 것을 매우 어렵다. (이게 다 라우팅 알고리즘때문에 그렇다. 근까, OSPF처럼 최단 경로로 무조건 패킷을 포워딩하는 비지능성때문!) 이 예가 그림 7에 나타나 있다.


(a)

(b)

그림 7 IGP의 문제점


그림 8. Explicit LSP 설정을 통한 트래픽 엔지니어링 예

근데, MPLS에서는 그림6에서처럼 Explicit routing기능을 갖고 있어 홉수는 더 많더라도 다른 대체 경로를 선택할 수 있다. 그림 8처럼 LSP를 ingress LER이 설정하여 네트워크 자원은 효율적으로 쓰면서 사용자에게는 더 좋은 서비스(delay,loss 등의 측면에서, 근까, 한마디로 빠르게 해준다.)를 제공해줄 수 있게 된다.

/IP 패킷과 FEC의 매핑(Mappings from IP Packet to Forwarding Equivalence Class)

MPLS에서는 IP 패킷을 FEC로 딱 한번만, MPLS망의 유입부(ingress LER)에서, 매핑해주면 된다.
이 것이 얼마나 편한 건지 한 번 예를 들어 생각해 보자. 어떤 ISP가 차등화 서비스(differentiated services)에 가입한 고객에게 그렇지 않은 'best effort service'를 쓰는 사용자와 어떻게 서비스를 차별화 시켜줄 것인가? ISP 망이 순수 라우터 기반 네트워크인 경우에 차별화 서비스를 제공하려면, 일단 라우터가 도착하는 패킷들이 차등화 서비스에 가입한 고객이 보낸 패킷인지 아닌지를 구분해낼 수 있어야 한다. 알아야 서비스를 해주니까. 이를 위해서 도착 패킷의 source and destination IP address(L3), incoming interface, 또 필요하면 source and destination port number(L4) 등을 살펴봐야 되고 그럴려면 엄청난 량의 패킷 필터(packet filter or classifier)가 필요하다. 근데, 중요한 것은 이 패킷 필터링 기능(도착 패킷이 중요한 패킷인지 아니지를 식별해내는 기능)이 네트워크내의 모든 라우터에서 필요하다는 것이다. 라우터는 hop-by-hop개념으로 패킷을 포워딩하니까, 이전 라우터에서 그 패킷이 특별 대접을 받았다고 해도 다음 라우터에서는 이 패킷이 특별 대접을 해줘야 할 놈인지 아닌지는 모른다. 근까, 모든 라우터에 패킷 필터링 기능이 포함되어 있어야 종단간에 서비스 품질이 보장될 수 있다.
 
 


 
 

그림 9. 순수 라우터 기반 망과 MPLS망에서 필터링 기능의 차이


Posted by theYoungman