반응형
MPLS 개요
■ MPLS는 기존의 목적지 기반 홉 단위 라우팅 대신, 레이블 스위칭 기법을 이용
■ 트래픽 증가에 따른 인터넷의 당면 과제를 해결하기 위한 고속 패킷 처리방안으로 등장
■ 짧은 고정길이의 레이블을 이용하므로 포워딩 엔진을 하드웨어로 구성하기가 쉬워 대용량 스위칭 구현 가능
■ 네트워트 확장에 따른 라우팅 테이블의 Look up 및 라우터의 전달기능을 단순화하여 고속 전송 실현
■ QoS, VPN 등의 용이한 적용 및 강력한 트래픽엔 장점을 가짐
MPLS 특징
■ 포워딩 단순화 : 짧은 고정길이의 라벨을 사용하므로 포워딩 단순 및 고속 처리
■ 트래픽 제어 : 트래픽 상황에 따른 부하분담 가능 (로드 밸런싱)
■ QoS 제공 : 별도의 LSP 경로 설정으로 MPLS 영역내에서 단대단 QoS 보장
■ VPN 제공 : 2계층 터널링 구축으로 VPN 지원 용이
■ 멀티 캐스트 지원
IP 스위칭 메카니즘
1. Process Switching
라우터가 각각의 패킷을 전송할 때마다 라우팅 테이블을 확인하고 넥스트 홉을 결정하여 패킷을 전송하는 방식을 Process Switching이라고 한다.
이 방식은 라우터의 CPU에 많은 부하가 걸리고 스위칭 속도도 느리다. 또 패킷별로 로드 밸런싱이 이루어진다. 즉 각각의 패킷별로 스위칭을 하기 때문에 목적지로 가는 경로가 2개 있을 경우에는 패킷별로 한번씩 다른 경로로 전송한다.
Process Switching 방식으로 동작시키려면 해당 인터페이스에 Router(config-if)#no ip route-cache명령을 입력하면 된다.
2. Fast Switching
라우터가 특정 목적지로 전송되는 패킷에 대하여 처음 한번은 Process Switching을 하고 두 번째부터는 처음 Process Switching때 만든 캐쉬 정보를 이용하여 패킷을 전송하는 방식을 Fast Switching이라고 한다.
Default Switching 방식이다. 이 방식은 목적지별로 로드 밸런싱이 이루어진다. Fast Switching 방식으로 동작시키려면 해당 인터페이스에
Router(config-if)#ip route-cache 명령을 입력하면 된다.
3. CEF(Cisco Express Forwarding) Switching
Fast Switching 방식을 다음과 같이 개선한 방식이다. Fast Switching 방식은 처음 한번은 Process Switching을 해야 캐쉬가 생성되지만 CEF Switching 방식은 처음부터 라우팅 테이블을 캐쉬로 복사해 놓는다. 캐쉬를 검색하는 속도도 더 빠르다. Fast Switching 방식은 목적지 주소와 그 목적지로 가는 경로를 기록하지만 CEF Switching 방식은 목적지 주소와 함께 출발지 주소, 목적지로 가는 경로가 기록된다. 이 방식은 출발지 -> 목적지별로 로드 밸런싱이 이루어진다. 단 interface mode로 들어가서 ip load-sharing per-packet이라는 명령을 넣어주면 패킷별로 로드 밸런싱이 가능하다.
CEF Switching 방식으로 동작시키려면 전체 설정모드에서 Router(config)#ip cef 명령을 입력하면 된다.
MPLS 구조
MPLS 망은 MPLS기능을 가진 라우터「LSR(Label Switch Router)」로 구성된다. MPLS망의 입구, 즉, MPLS 망의 엣지부분을 구성하는LSR을,「LER(Label Edge Router)」으로서 구별하여 부르는 것이 일반적이다.
MPLS망 내에 같은 목적지, 또는 같은 방식으로 취급하고 싶은 패킷의 집합이「FEC(Forwarding Equivalence Class)」다. 예를 들면, 라우팅에서 얻어진 경로 정보에 근거하여 MPLS 망 내에서 패킷을 포워딩 하고 싶은 경우, 라우팅 테이블에서 보여지는 하나의 목적지 어드레스(많은 경우는 IP 서브넷이나 서머라이즈 된 네트워크 어드레스)가 하나의 FEC가 된다. 그리고, 같은 FEC라는 것을 구별하는 인식자가 라벨이다. 라벨이 붙여진 패킷의 경로를「LSP(Label Switched Path)」라고 부른다. LSP는 Point-to-Point로서 사용할 수도 있으며, 목적지가 같은 경우라면 병합하는 것도 가능하다
라벨의 값은 LSR을 거칠 때 마다 다른 값으로 교체된다. 같은 값을 사용하는 방법으론 End-to-End로 라벨 값을 확보할 필요가 있어, 그것을 실현하는 방법이 복잡하기 때문이다. LSP는 단방향 패스이기 때문에, 통상, 양방향 패스로서 사용되기 위해서는 LSP가 2개 필요하다는 것에 주의 하여야 한다. MPLS망의 입구인 LER에서, 라벨을 붙여서 포워딩하는동작을「Push」라고 한다.(벤더마다 다른 듯, 시스코는 impose, input이라고 함) LSR에서 라벨을 바꿔 붙이며 포워딩하는 동작을 「Swap」이라고 한다. MPLS망의 출구가 되는 LER에서 라벨을 떼어내고, 포워딩하는 동작을 「Pop」이라고한다. 그 외에 LER의 하나 앞의 LSR에서 라벨을 떼어내고 포워딩하는 PHP(Penultimate Hop Popping)라고 불리우는 방법도 있다. 또한, 라벨은 스텍으로 붙이는 것이 가능하다. LSR은 외측 라벨(제일 앞단의 라벨)밖에 보지 않기 때문에, 이 스텍에 의해 단계적인 LSP를 만들 수 있게 된다. 즉, 외측의 LSP에 의해 내측의 LSP를 터널로서 만드는 것이 가능하다. 이 스택 라벨은 MPLS에 의한 VPN의 제공등에 많이 쓰인다.
라벨정보의 배포
패킷에 라벨을 붙이는 방법을 보자. 원래부터 패킷안에 라벨에 상당하는 부분을 가지고 있는 미디어, 예를 들면, ATM의 VPI/VCI나 F/R의DLCI는, 그 곳에 직접 라벨을 맵핑한다. 라벨에 상당하는 부분을 가지지 않은 미디어, 예를 들면, PoS(Packet over SONET)이나 이더넷은 새롭게「헤더」를 추가한다. 이 헤더안에 라벨이 포함되어 있다. 라벨은 20bits이기 때문에, 하나의 라벨로 약 100만의 어드레스・스페이스가 있다.(2의20승은 1,048,576이다. 다만, 0~15번은 예약되어 있다.) 그 외에 EXP(Experimental bits)는 CoS(Class of Service) / QoS의 정보를 싣기 위해서 사용되고 있다. S(Stackbits)는 스택 되어진 라벨의 마지막을 가리킨다. 그리고, TTL(TimeToLive)가 있다. 그리하여, MPLS는 서로 다른 미디어에 있어서도, 이러한 구조의 라벨을 삽입하여 유연하게 접속할 수 있다.
어떤 FEC에 어떤 라벨을 사용할것인가의 정보를 배포하는 수단이「LDP(Label Distribution Protocol)」다. LDP로 라벨을 배포하는 방법은 2종류가 있다. FEC가 특정한 목적지 IP어드레스를 지시하는 경로 정보라면, (IGP와 같은 목적지 IP어드레스), 즉, FEC를 가지고 있는 LSR에서 라벨의 값이 결정되어 배포하는 방법이「DU(Downstream Unsolicited)」모드이다. 이 LDP-DU가 IGP의 경로정보를 그대로 라벨로 전용하여 배포할 때의 사용되는 기본적인 모드이다.
가장 일반적인IP-VPN「BGP/MPLS VPN」
MPLS을 사용하여 IP-VPN을 실현하는 기술로서, 「BGP/MPLS VPN」방식이 유명하다. 최근에는, 이 기술을 일반적으로 「2547bis」라고도하지만, BGP/MPLS VPN은 RFC2547로서「벤더독자사양의 유익한 정보(Informational)」라는 취급되어 있고, 현재, 「RFC2547bis(『bis』는 2번째라는 의미)」라는 이름으로 표준화작업이 진행되고 있다. 최근에는 많은 벤더가 적극적으로 BGP/MPLS VPN을 실장한 제품을 출하하고 있어, 타 벤더 간에서의 상호 접속성도 확인되고 있다. 또한, 특히 일본에서는 많은 사업자가 BGP/MPLS VPN을 사용한IP-VPN서비스를 시작하고 있어 유저들에겐 「MPLS가IP-VPN을 실현하는 기술」이라고 오해받고 있을 정도로 침투되어 있다.
●BGP/MPLS VPN 용어의 정리
BGP/MPLS VPN을 해설하기 전에VPN을 실현하는 범용적인 모델을 보자. 사업자가 제공하는 VPN 서비스망은, 유저를 수용하는「PE(Provider Edge)라우터」와 백본을 구성하는 P(Provider)라우터」로 구축된다. 유저는「CE(Customer Edge)라우터를 통해 사업자의 VPN서비스에 접속하게 된다. 이 VPN서비스망이 MPLS기술을 사용하여 만들어진 것이 라면, PE가 LER,P는 LSR에 상당한다. VPN의 이야기에서는 LER/LSR이라고 하는 용어 대신에 이 PE/P라고하는 용어가 빈번히 사용된다.
BGP/MPLS VPN에서 배포하는 경로정보는, 복수의 유저가 같은 IP어드레스를 사용하는 것이 가능하기 때문에 다른 VPN간에서의 같은 IP어드레스를 구별하기 위해, 새로운 VPN-IPv4 어드레스・패밀리가 사용된다.
VPN-IPv4에서는 유저의 경로정보에 VRF를 식별하는 RD(Route Distinguisher)」가 추가 된다. 예를 들면, RD가「1000:1」이고 IP어드레스가 10.1.1.0/24」이라면, 그 VPN-IPv4 어드레스는「1000:1-10.1.1.0/24」이 된다. RD가 VPN을 식별하기 위해서 사용되는게 아니고 단순히 유니크한 경로정보를 제공하는데에 지나지 않는다는 것에 대해서는 주의가 필요하다. VPN의 멤버쉽을 확립하기 위한 정보로서 RT(Route Target)」가 사용된다. RT는VPN을 식별하는 번호와 접속 폴리시를 식별하는 정보로 구성된다. 예를들면, 「RT 1000:Red」라는 설정이 된 PE는 RT가「1000:Red、Blue」라고 설정된 PE와는 접속할 수 있지만, RT가「1000:Blue」라고 설정된 PE와는 같은 VPN번호 1000이라도 접속할 수 없다. 이것에 의해, 동일 VPN내에서의 풀메쉬 구성뿐만 아니라「허브&스포크」의 토폴로지로도 구성이 가능하게 된다. 그 외에도, 라우팅 루프를 방지하기 위해, 어떤PE에게 학습한 경로정보인가를 식별하는「SOI(SiteofOriginIdentifies:『SOO』라고도 함)」도 사용된다.
이상의 VPN-IPv4 어드레스와 RT/SOI를 경로 정보로서 사용해, 추가로, 라벨을 배포할 수 있게끔 BGP를 확장한 것이「BGP-MP」이다.
FIB : Forwarding Information Base
LIB : Label Information Base
MPLS-TE(Traffic Engineering) : CR-LDP(Constraint based Routing Label Shortest Path) LSR이 임의의 요구조건을 충족시키는 경로를 할당하는 과정
FEC : 같은 방식으로 취급하고 싶은 패킷의 집합「FEC(Forwarding Equivalence Class)」
LDP : Label Distribution Protocol
TDP : Tag Distribution Protocol
RSVP : Resource Reservation Protocol
LSP : Label Switched Path
SLA : Service Level Agreement
출처 : http://blog.naver.com/ultract2?Redirect=Log&logNo=110107045628
반응형