MPLS란 무엇인가요?
멀티 프로토콜 라벨 스위칭(Multi-Protocol Label Switching, MPLS)이란 데이터 패킷에 IP 주소가 아닌 별도의 라벨을 붙여 스위칭하고 라우팅하는 기술입니다. MPLS는 20년 넘게 이용된 기술이며 많은 기업에서 아직도 MPLS 기술에 의존하고 있습니다.그렇다면 MPLS란 무엇이고 아직도 신뢰할 만한 기술일까요? MPLS 대신 SD-WAN을 이용해도 괜찮을까요? 또한 MPLS와 VPN을 함께 이용해도 될까요? 이 글을 통해서 MPLS의 원리와 장단점 등을 자세히 알아보도록 하겠습니다.
MPLS의 원리
MPLS의 원리를 이해하려면 우선 일반적인 라우팅의 원리를 이해해야 합니다. 여러분이 브라우저에서 웹사이트를 방문할 때 백엔드에서는 많은 일이 일어나고 있습니다. 여러분이 내린 웹 요청은 패킷이라는 작은 조각으로 나눠집니다.
각 패킷에서는 어디서 나오는지 그리고 최종적으로 어디로 향하는지에 대한 정보를 담고 있습니다. 라우터에서 패킷을 다른 라우터로 포워딩함으로써 패킷이 네트워크 상에서 이동합니다. 두 개의 패킷이 같은 대상으로 이동하더라도 다양한 경로를 통해서 이동할 수 있습니다.
그렇다면 MPLS는 어떤 원리를 따르는 것일까요? MPLS는 데이터 포워딩 시스템으로 각 패킷으로 라벨을 할당합니다. 이러한 라벨은 패킷이 이동하는 방식을 결정해 비공개 네트워크를 형성합니다. MPLS가 2계층인지 아니면 3계층인지를 둘러싸고 많은 혼란이 있긴 합니다. 하지만 패킷이 2계층(노드 간 데이터 전송 담당)에서 3계층(패킷 포워딩 및 라우팅 담당)으로 전환되는 사이에 레이블링되기 때문에 MPLS를 ‘2.5계층 프로토콜’이라고 부릅니다.
MPLS의 장단점
장점
- 높은 전송 속도: 기존 라우터는 소프트웨어 기반의 라우팅을 하는데 이러한 라우팅은 IP 주소를 기반으로 합니다. 반면에 MPLS 네트워크의 경우 패킷이 고정되고 예측 가능한 경로로 효율적으로 포워딩되며 매번 IP를 찾아볼 필요가 없습니다. MPLS의 전체적인 라우팅 절차에서 ‘일반적인’ 라우팅 절차에 비해서 컴퓨팅 자원을 덜 소모하게 됩니다. 실시간 애플리케이션을 실행하는 등 연결 속도가 빨라야 할 때 MPLS를 이용하면 좋습니다.
- 높은 전송 품질: MPLS에는 QoS 옵션이 있어 패킷이 네트워크에서 이동할 때 패킷의 성능과 효율성을 개선할 수 있습니다.
- 원격 연결 가능: MPLS는 클라우드 호스팅 네트워크이기 때문에 하드웨어를 추가로 구매하지 않아도 새로운 원격 연결을 추가할 수 있습니다.
- 네트워크 혼잡 감소: MPLS는 웹 요청을 다른 라우터로 분할하므로 네트워크 혼잡을 피합니다.
- 작동 시간 개선: 다운 타임(가동 중지 시간)이 발생하는 경우 MPLS는 트래픽을 다른 경로로 전환할 수 있어 작동 시간을 개선할 수 있습니다.
- 높은 유연성: 유연한 트래픽 엔지니어링이 가능합니다. 동일한 대상 주소라고 하더라도 원본 주소에 따라서 패킷 흐름을 다르게 하여 라우팅할 수 있습니다.
- 실시간 데이터 전송에 유용함: 연결에 실패하더라도 미리 계산된 백업 경로를 통해서 빠르게 재라우팅하기에 실시간 데이터 전송에 유리합니다.
- 특정 기반 기술에 의존하지 않음: MPLS의 장점 중 하나는 특정 기반 기술에 의존하지 않는다는 점입니다. MPLS에서 ‘MP’는 멀티 프로토콜을 의미합니다. ‘멀티 프로토콜 라벨 스위칭’이라는 이름에서 알 수 있듯이 MPLS는 본래 성능 개선과 간소화를 위해 오버레이 기법으로 설계된 기술입니다.
단점
- 설치하기 어려움: MPLS를 이용하려면 라우터에 적용해야 하는 설정이 많습니다. MPLS에 대해서 잘 알지 못한다면 MPLS를 직접 설치하는 것은 좋은 생각이 아닙니다. 따라서 MPLS에 대해서 잘 모른다면 IT 전문가가 설치하도록 하는 것이 좋습니다.
- 높은 비용: MPLS는 통신사에 돈을 내고 구매해야 하는 서비스로, 공용 인터넷을 통해 트래픽을 전송하는 것보다 더 많은 비용이 듭니다. 즉, MPLS의 경우 매달 데이터에 대한 비용을 내야 하기 때문에 돈이 많이 나갈 수 있습니다. 인터넷 서비스 공급업체(ISP)에서 전체 MPLS 인프라를 설치해주고 여러분을 대신해서 관리해줄 수 있지만, 이렇게 하면 비용이 더 많이 듭니다.
- 제어권 감소: 인터넷 업체에서 여러분을 대신해 네트워크를 설정하기 때문에 여러분이 네트워크를 100% 제어할 수는 없습니다.
- 낮은 접근성: MPLS는 지점 간 연결에 적합하며 SaaS나 클라우드 애플리케이션에는 적합하지 않습니다.
- 느린 배포 속도: 회사 사무실이 다른 나라에 있거나 심한 경우 다른 대륙에 위치한다면 MPLS를 배포하는 데 몇 달이 걸릴 수도 있습니다.
SD-WAN과 MPLS의 차이점은 무엇인가요?
소프트웨어 정의 광대역 네트워크(Software-Defined Wide Area Network, SD-WAN)라는 이름에서 알 수 있듯이 SD-WAN은 광대역 네트워크(Wide Area Network, WAN)를 관리하는 소프트웨어 기반의 접근 방식입니다. SD-WAN은 MPLS와 보다 고급 네트워크이며 MPLS보다 더 안전하고 비용은 더 적게 들면서도 성능도 뛰어납니다.
MPLS와 SD-WAN 둘 다 네트워크 연결에 이용되며 재택 근무하는 사용자를 본사 혹은 원격 지점에 연결해주는 데 이용되고 있습니다.
향후에 SD-WAN이 MPLS를 완전히 몰아낼 거라고 보는 IT 전문가들도 있습니다. 어쩌면 몇십 년 후에는 가능한 일일 수도 있습니다. 하지만 사실은 MPLS와 SD-WAN은 완전히 똑같은 기술은 아니며 각기 다른 용도로 이용될 수 있습니다. 그러므로 기업에서는 SD-WAN과 MPLS를 함께 이용하는 것이 좋습니다.
SD-WAN은 전송 중립적 오버레이로 모든 유형의 트래픽을 라우팅할 수 있습니다. 또한 SD-WAN은 중앙 지점에서 기업 WAN 트래픽 설계자가 모든 WAN 기기에 정책을 적용하기가 쉽다는 장점이 있습니다. 반면에 MPLS의 고정된 경로를 프로비저닝하는 데 시간이 꽤 많이 걸리며 고정된 회로가 가동된 이후에는 변경하기도 힘듭니다.
하지만 일단 MPLS 네트워크를 구축하면 뛰어난 실시간 트래픽 전송 성능을 보장할 수 있습니다. 반면에 SD-WAN은 트래픽을 가장 효율적인 경로로 라우팅하기는 하지만 IP 패킷이 개방된 인터넷에 접근하는 경우에는 뛰어난 전송 성능을 보장할 수 없습니다.
그러므로 MPLS 대신 SD-WAN을 이용하기보다는 SD-WAN과 MPLS는 각기 장단점이 다르므로 상호 보완해주는 방식으로 이용하는 것이 좋습니다.
MPLS과 VPN 비교
‘MPLS vs VPN’처럼 같이 MPLS와 VPN을 비교하는 글을 흔히 볼 수 있습니다. 하지만 이렇게 비교하는 건 사과와 오렌지를 비교하는 것과 같습니다. MPLS와 VPN은 서로 다른 기술이며 각기 다른 목적으로 이용됩니다. MPLS는 네트워킹 기술인 반면 VPN은 트래픽을 암호화하고 실제 IP 주소가 유출되지 않도록 숨겨주는 역할을 합니다.
VPN은 컴퓨터 네트워크 위에 계층화된 네트워크인 반면, MPLS는 한 네트워크 노드에서 다른 네트워크 노드로 데이터를 전달하는 역할을 합니다. 또한 VPN은 암호화된 터널링 프로토콜을 이용하여 보안을 강화하는 반면 MPLS는 데이터 링크 계층(Data Link Layer)과 네트워크 계층(Network Layer) 사이에서 작동할 수 있습니다.
보안이 뛰어난 VPN은 기밀 유지를 위해서 암호화된 터널링 프로토콜을 이용합니다. 덕분에 터널을 통해서 사용자가 온라인에서 뭘 하고 있는지 염탐하거나 사용자의 개인정보를 수집할 수 없습니다. 양질의 VPN을 이용하면 안전이 보장되지 않은 공용 와이파이를 이용할 때도 마음 놓고 인터넷을 이용할 수 있습니다. 또한 재택 근무할 때도 업무 파일에 안전하게 접근할 수 있습니다.
SD-WAN이 MPLS를 대체하는 것이 아니듯이 MPLS와 VPN은 서로를 대체한다고 보기 어렵습니다. 각기 다른 용도로 이용되고 장단점이 서로 다르기 때문에 VPN과 MPLS는 상호 보완적인 기술이라고 볼 수 있습니다. 그러므로 MPLS와 VPN의 장점을 모두 누리기 위하여 둘 다 이용할 수 있습니다.
MPLS를 이용하여 재택 근무하는 직원을 다른 지사에 연결해주고 동시에 VPN도 함께 이용하면서 직원들을 온라인에서 보호해줄 수 있습니다. MPLS는 트래픽을 암호화하지 않으므로 VPN과 함께 이용하면서 전송되는 데이터를 보호할 수 있습니다.