[이해하기] SD-WAN 에 대하여 (vs MPLS)

네트워크에도 클라우드 바람이 불어오고 있습니다. SD-WAN 이란, Software Defined 형태로 엔터프라이즈의 지점간 통신을 위한 WAN 환경을 가상화/클라우드화 하여 구성한 것을 말합니다. 필자가 관리하는 조직의 지점 네트워크 들도 2018년도에 이미 SD-WAN 으로 모두 전환 완료하여 전체 네트워크 회선의 비용을 80% 절감하고 (연간 4.5억 이상) 그에 반해 구성에 따라 대역폭을 2배에서 최대 50배 이상 늘릴 수 있었습니다.

SD-WAN 이 무엇 이길래 시장에서 이렇게 핫 한지, 그리고 어떻게 위와 같은 비용 절감과 성능 개선을 동시에 달성할 수 있었는지 한 번 자세히 알아 보겠습니다.

[MPLS 란?]

SD-WAN 을 이야기 하기 전에, 먼저 MPLS 를 빼놓을 수가 없습니다. (자주 비교되는 기술입니다.) 대부분의 규모가 있는 조직들은 사설 망이 필요합니다. 한 마디로, 외부 세계와는 단절해서 우리 끼리만 통신을 하는 것이죠. (물론 끝단 어디에선가 외부와도 통신하게 만들 수 있습니다.) 다만 조직이 크고 전 세계 여러 지역에 지점들이 퍼져서 위치해 있다면 직접 일일이 통신 선로를 설치할 수는 없고, 회선 사업자의 회선을 빌려 다양한 방법으로 자체적인 사설 망을 구축합니다. 이 때, MPLS (Multi Protocol Lable Switching) 라는 기존의 전통적인 라우팅 방식과는 다른 일종의 전용 망을 구성할 수 있습니다. 일반적인 라우팅 방법과 비교해서 설명하면 다음과 같습니다.

– 일반적인 라우팅
> 라우터는 들어오는 패킷에서 네트워크 계층 (L3) 의 헤더만 보고 판단하여 각 IP 패킷의 포워딩을 실행합니다. (라우터가 받는 IP 패킷에는 목적지 IP 주소 이외에는 아무런 정보도 없습니다. 이 패킷을 목적지까지 어떻게 전달해야 하는지, 그 과정에서 패킷을 어떻게 취급해야 하는지에 대한 지침이 없습니다.)
> 이 때, 라우터는 패킷을 보낼 다음 지점을 매번 계산해야 하며, 이 작업을 위해 복잡한 라우팅 테이블을 같이 확인합니다. (패킷이 최종 목적지에 도착할 때까지 경로를 따라 매 홉(hop)에서 이 작업이 계속 반복됩니다. 다들 한 번쯤 Traceroute 또는 tracert 명령어는 써보셨겠죠?)
> 이 때문에 실시간 스트리밍 (예> 생방송 중계) 같은 빠른 처리가 필요한 환경에서는 비교적 처리 속도가 떨어질 수 있습니다.

** 다양한 라우팅 방법, 즉 라우팅 프로토콜들에 대해서는 별도의 포스팅을 통해 다뤄보도록 하겠습니다.

| 일반적인 라우팅


– MPLS 라우팅
> MPLS 도메인 내에서 각 노드 (라우터) 들은 OSPF(Open Shortest Path First) 또는 BGP (Border Gateway Protocol) 을 사용하여 LER (Lable Edge Router) 과 LSR (Labe Switch Router) 을 계속 라우팅 테이블에 업데이트 합니다.
> 한편, MPLS 의 신호 Protocol 인 LDP (Lable Distribution Protocol) 는 MPLS 의 레이블을 설정하기 위한 정보 또는 맵핑 정보를 인접한 라우터 간에 공유합니다.
> 패킷이 LER 로 도달하여 처음 네트워크로 진입할 때 특정 FEC (Forwarding Equivalence Class) 에 할당됩니다. 이 FEC 는 패킷에 별도의 레이블 (짧은 비트 시퀀스로 할당) 로 표시되어 구분 됩니다. 레이블에 표시되는 4가지의 정보는 다음과 같습니다.
| 레이블(Label) : MPLS 라우터에서 패킷을 포워딩해야 할 위치를 결정하는 모든 정보 포함 (MPLS 라우팅을 위한 구분)
| 익스페리멘탈 (Experimental) : QoS 에 적용할 우선 순위를 설정하는 데 사용
| 바텀 오브 스택 (Bottom-of-Stack) : MPLS 라우터에 마지막 홉 인지, 더 이상 관련된 레이블이 없는지 여부를 알려주며 해당되는 경우는 출구 라우터로 인식
| 타임 투 리브 (Time-To-Live) : 포워딩 가능한 홉 횟수 식별 (일정 홉 이 후는 패킷을 버림)
> 레이블을 부착한 패킷은 종단의 LER 에 도착할 때까지 네트워크 계층에서 패킷 헤더를 해석없이 레이블을 통해 포워딩합니다. 즉, LSR 에서는 레이블에 따라 L2 계층에서 패킷을 전달합니다. (네트워크 각 라우터에는 패킷을 어떻게 처리할지 (어느 라우터로 던져줄지) 나타내는 테이블이 이미 설정 되어 있습니다.)
> LSR 에서는 각 패킷의 레이블을 읽고 자신이 유지하고 있는 라우팅 테이블의 목록에 따라 패킷의 레이블을 새로운 레이블로 변환하여 다음 노드로 전달합니다. 이와 같은 과정이 LSR 간에 반복되며 LSR 에서 포워딩된 패킷을 수신한 끝단의 LER 은 레이블을 제거하고 패킷의 헤더를 읽고 최종 목적지에 패킷을 전달합니다.
> 요약하여 MPLS 는 쉽게 말해, 고 효율의 경로를 미리 설정해 놓고 IP 패킷에 별도의 레이블을 붙여 라우팅하는 방식입니다.

** MPLS 는 OSI 7계층 중 2계층인지 3계층인지에 대한 논란이 여전히 남아 있습니다. 계층 중 딱 들어 맞는 계층이 없기 때문입니다.

| MPLS 라우팅


위와 같은 MPLS 의 라우팅 방식 특징 덕분에, 장점들은 다음과 같습니다.
> 이름에서와 같이 ‘Multi Protocol’, 즉 특정 기술에 의존하지 않으며 공용 인터넷망과 떨어져 작동하는 사전 설정된 경로 (LSP – Lable Switching Path) 를 이용하는 방식이므로 경우에 따라 VPN (Virtual Private Network) 과 같은 기능을 제공 하기도 합니다. 그래서 순수 IP 기반 서비스 거부 공격등에 취약하지 않으며 비교적 높은 보안성을 제공합니다. (** LSP 는 단방향으로 트래픽이 전송됩니다. 따라서 돌아오는 트래픽은 다른 LSP 를 통해 전송됩니다.)
> MPLS 회선의 경우 문제가 발생하면 비교적 트러블 슈팅을 하기가 쉽습니다. (지정된 경로로만 패킷을 나르기 때문)
> 특정 패킷 (예> 특정 애플리케이션의 트래픽을 나르는 패킷) 에 대해서 일괄적인 처리가 가능해집니다. 예를 들면, 다른 지점에서 진행하는 타운홀 미팅의 생중계/스트리밍 서비스는 저 지연 경로로 끊김 없이 전송 되게끔 쉽게 매핑 할 수 있겠죠. (효율적인 대역폭 활용 -> 좋은 성능 보장)
> 지정된 경로가 있으므로 대역폭의 확장성이 좋으며, 네트워크 혼잡이 적습니다.


기술이니 좋은 점만 있는건 아니겠죠. 단점들은 다음과 같습니다.
> 비쌉니다. (많이….) 2020년도 기준 200MB 대역폭의 DIA (Direct Internet Access) 회선 견적을 받아보면 서울/경기권 평균 월 50만원-90만원 수준인데 MPLS 회선의 경우 30MB 수준의 대역폭임에도 해외 망을 거치는 경우 월 수천불의 비용을 지불해야 합니다.
> 지점이 해외에 있고, 특히 서비스하기가 어려운 지역이라면 MPLS 서비스가 가능한 글로벌 회선 사업자를 찾는 것이 쉽지 않을 수 있습니다. (혹은 계약한 회선 사업자가 현지 회선 사업자와 Back-end 계약을 통해 비용이 증가할 수 있는 여지가 많습니다.)
> MPLS 는 지점-데이터센터로 트래픽이 돌아가는 구조를 기준으로 만들어진 기술이므로 최근의 트렌드와 같이 지점에서 클라우드로 직접 엑세스를 하고자 하는 경우에는 지연 시간이 증가할 수 있습니다.
> 한 번 고정된 경로 (LSP) 는 수정하기가 어렵습니다.

[SD-WAN 이란?]

SD-WAN 은 위와 같은 비싼 MPLS VPN 서비스를 이용하지 않고 비교적 저렴한 인터넷 회선 (심지어 가정용 인터넷 회선이나 LTE 로도 가능) 을 이용해 WAN 환경에서 오버레이 네트워크 (물리적인 네트워크를 기반으로 구성하는 별도의 가상 네트워크) 를 구성 하는 기술을 말합니다. 즉, SDN (Software Defined Network) 을 WAN 환경으로 확장한 개념이라고 할 수 있습니다.

| SD-WAN 구성도 (+MPLS)


SD-WAN 의 구성요소는 다음과 같이 크게 2가지로 구분할 수 있습니다.

1) 중앙 컨트롤러 : 중앙에서 각 SD-WAN 노드 (액세스 노드) 들을 컨트롤하며 다음의 역할들을 주로 수행합니다.
> 액세스 노드의 프러비져닝 (액세스 노드의 네트워크 및 정책을 중앙에서 설정)
> 액세스 노드의 구성 저장 (Repository 역할)
> 네트워크 토폴로지 관리
> QoS 및 액세스 정책 설정
> 사용량 및 성능 모니터링

g00427.png
| Cisco Viptela vManage 컨트롤러 화면

2) SD-WAN 노드 (액세스 노드) : 각 지점이나 본사에 위치하여 동작하는 CPE (Customer Premises Equipment) 장비로서 다음과 같은 역할들을 주로 수행합니다.
> 가상화 네트워크 기능 구현 – VNF (Virtual Network Function)
> 가상 오버레이 네트워크 생성을 위한 라우팅 및 터널링
> 두 개 이상의 회선 또는 업링크들의 트래픽을 동시에 전송 (하이브리드 WAN)
> 방화벽, 보안, 암호화
> OSI 7 계층 중 응용 계층 트래픽의 모니터링, QoS 및 액세스 정책 적용
> 네트워크 지연 및 패킷 손실 측정 및 보고
> WAN 최적화 기능 : 캐싱, 압축, 에러 정정 (FEC: Forward Error Correction), 트래픽 우선 순위 설정, 로드 밸런싱


위와 같은 SD-WAN 의 특징 덕분에 장점은 다음과 같습니다.
> 당연히 MPLS 회선 대비 저렴합니다. (많이)
> 좀 더 유연한 지점 간 WAN 을 구성할 수 있습니다. (중앙 컨트롤러를 이용)
> 하이브리드 WAN 환경을 구성할 수 있으므로, 트래픽 목적에 따라 여러 회선을 구성하여 정책 설정을 통해 고품질의 네트워크 서비스를 제공할 수 있습니다. (예> 스트리밍 서비스는 MPLS 회선을 이용, 나머지 대용량 파일 전송 트래픽은 높은 대역폭의 일반 회선을 이용) 이러한 복수의 경로를 최대한 사용할 수 있도록 하는 것을 Tunnel Bounding 이라고 합니다.
> 여러 경로로 패킷을 보낼 경우 순서가 변경되어 TCP 재전송을 유발할 수 있으나 SD-WAN CPE 에서는 Re-sequencing 기능을 제공하여 이를 방지합니다. 이것을 POC (Packet Order Correction) 이라고 합니다.
> 클라우드로의 직접 엑세스가 필요한 경우, 고정된 경로를 따라가야만 하는 MPLS 경로 대비 더 빠른 접근이 가능할 수 있습니다. (Low Latency)
> 원래 패킷 기반 망은 혼잡 (Congestion) 이 발생할 수 있는 구조를 가지고 있습니다. 그러나 SD-WAN 은 실시간으로 망 상황을 파악하여 경로를 변경하여 혼잡 상황을 피할 수 있습니다. 이 것을 DPC (Dynamic Path Control) 이라고 합니다.


장점이 많은 SD-WAN 이지만, MPLS 와 마찬가지로 기술이기 때문에 단점 또한 존재합니다.
> 여러 경로를 탐색할 수 있는 여지가 많기 때문에 문제가 발생하면 트러블 슈팅하기가 어렵습니다. (유연한 만큼 많은 경우의 수가 발생)
> 조직의 VPN 을 지윈하기 위한 기술이므로 일반적인 서비스에 대응하기에는 한계점이 있습니다.

MPLS 와 함께 SD-WAN 에 대해서 조금 상세히 알아보았습니다. 이제 서두에서 말씀드린 많은 비용 절감과 더불어 대역폭 확보가 동시에 가능한 이유를 이해 하시겠죠? 그러나 기술해드린 것과 같이 각 기술들은 단점 또한 존재하고 있고, 그것을 보완하기 위한 새로운 기술들이 끊임 없이 등장하고 있습니다. 위와 같은 단점들을 보완하기 위한 다른 기술은 어떤 것들이 등장하게 될지, 앞으로 또 어떤 방식으로 진화 될지 기대 됩니다.

#Steven

답글 남기기