Silver Peak의 SD-WAN에 관해 살펴본 지난 블로그에 이어, 본 블로그에서는 Citrix의 SD-WAN의 주요 Feature들을 알아본다.
1. Network Measurement
SD-WAN에서 가장 중요한 측면은 Underlay 네트워크 경로들의 품질을 측정하고 이를 토대로 어느 경로로 패킷을 보낼 것인가를 똑똑하게 선택하는 것이다.
Citrix의 SD-WAN CPE ( 장비명: CloudBridge )는 복수개의 WAN 경로에 대해 실시간으로 단방향 품질을 측정한다. 송신측 SD-WAN CPE가 매 패킷 (이용자 패킷)마다 Tag를 붙이는 데, 여기에 <패킷을 보낸 시각, 패킷이 속한 Flow내 순서번호>를 쓴다.
수신측 SD-WAN CPE는 이 Tag를 읽어 latency, jitter, packet loss 등의 해당 경로의 품질 정보를 측정한다. 이 품질 정보는 매 도착 패킷마다 업데이트 된다. 수신측 SD-WAN CPE는 송신측 SD-WAN CPE에게 이 품질 정보를 feedback해준다. 즉, 기본적으로 Passive Monitoring이고, 이용자가 주고 받는 모든 패킷이 품질 측정에 사용된다. 만일 이용자 패킷이 없는 경우(idle link)에는 1초에 20개씩 Health check 패킷(probe)을 보낸다 (이 때는 Active Monitiroing임).
2. Latency-aware Path Selection
High priority 응용 (VoIP, Skype, 화상 회의와 같은 실시간성 응용)에게는 Low latency WAN 경로가 할당된다. SD-WAN CPE는 현재 시각에서 가장 Latency가 작은 경로로 High priority 응용 트래픽을 전달한다. 아래 그림의 예에서 MPLS 경로가 현재 시각에서 Latency 품질이 가장 좋아 VoIP 트래픽이 MPLS 경로로 보내진 예이다.
3. 네트워크 품질 변화에 따른 동적 경로 변경
VoIP 통화중에 MPLS 경로의 품질 저하가 관측되면 (지터 과다 발생, Packet loss 과다 발생 등), 송신측 SD-WAN CPE는 그 순간 가장 품질이 좋은 다른 WAN 경로로 VoIP 패킷들을 보낸다. 아래 그림은 초기에 MPLS 경로로 패킷을 보내다가 이 경로에 품질 저하가 관측되 인터넷 경로로 경로 변경한 예이다. 마찬가지로 계속 통화하다가 인터넷 경로의 품질이 저하되면 MPLS 경로로 변경하고, 이를 반복하여 VoIP 패킷들은 통화시간내에 항상 최적의 품질을 갖는 경로를 타고 다니게 된다.
4. Bond Multiple Links
큰 파일의 업로드/다운로드 속도를 극대화하기 위해 Citrix는 하나의 flow에 속한 패킷들을 복수의 경로로 나누어 전달해주는 Bonding 기능을 제공한다. 예를 들어 지사에서 본사로 파일을 업로드할 때 패킷1은 MPLS 경로로, 패킷 2는 인터넷 경로로 보내는 식이다.
아래 그림은 인터넷 경로 only, MPLS 경로 only 그리고 두 경로를 Bonding하여 로드밸런싱시킨 경우의 Throughput 측정치이다.
당연히 Bonding한 경우가 Throughput이 높음을 볼 수 있다.
5. 실시간 응용을 위한 Packet Duplication
VoIP, Skype와 같은 응용들은 지연과 패킷 손실에 민감하다. 특히 패킷 손실은 보통 VoIP bearer 트래픽은 UDP이고 (재전송 없다), 응용 레이어에서 재전송해도 실시간 응용이라 별 의미없다. 패킷 손실은 바로 음성 단절로 이어진다. 이와 같이 손실에 민감한 응용 트래픽의 서비스 단절없는 전달을 위해, Citrix는 Packet duplication을 지원한다. 송신측 SD-WAN CPE가 패킷을 복사하여 두 개의 WAN 경로로 보내고, 수신측 SD-WAN CPE는 먼저 온 패킷을 사용하고 두 번째로 온 패킷은 버린다.
동일 패킷이 두 개의 망에서 모두 손실될 확률은 극히 낮아 Citrix는 거의 Zero-loss를 제공한다고 하고 있다. 또한 두 경로 중 먼저온 패킷을 취하므로 Latency 성능도 단일 경로만로 보냈을 때보다 우수하다.
6. Unidirectional Path Selection
통상적인 SD-WAN 구현에서는 응용별로 경로가 정해지면 그 응용의 Upstream traffic과 Downstream traffic은 동일 망으로 전달된다. 즉, 아래 그림처럼 MPLS 경로가 선택되었으면 양방향 트래픽은 모두 MPLS 경로로 전달된다.
아래 그림에서 처럼 본사와 지사간에 MPLS 경로와 인터넷 경로가 존재할 때 각 경로의 단방향 망 품질은 상이할 수 있다. 즉 어느 순간에는 경로 1 (지사->MPLS->본사)은 품질이 양호한 데, 경로 2 (본사->MPLS->지사)는 혼잡 상황일 수 있다. 또 다른 시간에는 또 다를 수 있다.
Citrix의 SD-WAN은 한 응용의 두 방향 트래픽을 서로 다른 WAN 경로로 전달할 수 있게 개발되었다. 아래 그림의 예에서 경로 1, 4는 현재 품질 양호, 경로 2,3은 혼잡 상황이면 지사->본사 방향 트래픽은 MPLS 경로로, 본사->지사 방향 트래픽은 인터넷 경로로 보내진다. 시간에 따라 4개 경로의 품질 상태가 바뀌면 이에 맞춰 경로는 또 변경된다.
SD-WAN 벤더들의 솔루션을 분석하면서 드는 생각은 "참 할 수 있는 것은 다 하는 구나, 생각나는 아이디어는 다 구현하는 구나"이다.
뭐 소프트웨어니까.
그게 SD-WAN의 최대 장점이다.
다음 문서도 보세요
SD-WAN 벤더 솔루션 비교 Version 1.1, 넷매니아즈 원샷 갤러리