서버의 프로세서와 메모리의 발전처럼 네트워크 스위치 내의 스위칭 ASIC (Application-Specific Integrated Circuits)또한 빠른 속도로 발전하고 있습니다. 2014년 Cisco Nexus 9000 시리즈에 탑재되었던 28nm 공정의 1세대 ASIC는 최근 14nm 공정의 2세대 ASIC으로 새롭게 개선되었습니다. 무어의 법칙이 네트워크 프로세서에도 적용되고 있는 셈이죠.
2년전에 약 1.2 Tbps 의 스위칭 성능을 가졌던 SoC(System On Chip) 기반의 ASIC은 이제 3.6 Tbps이상의 성능을 제공할 뿐 아니라 새로운 데이터센터 트렌드에 맞춘 다양한 기술들을 포함하고 있습니다.
이번 칼럼에서는 하이퍼 컨버지드 인프라와 같은 새로운 데이터센터 환경을 효율적으로 지원하기 위한 기술들이 어떻게 스위치 ASIC 상에서 구현되었는지, 핵심 기술 기반으로 소개해드리고자 합니다.
반도체의 발전 현황 (출처: wikipedia)
빅데이터/하이퍼 컨버지드 인트라를 위한 네트워크
최근 데이터센터에서 화두가 되고 있는 빅데이터와 하이퍼 컨버지드 인프라의 가장 큰 특징은 스토리지 트래픽이 IP 네트워크 기반하에서 동작한다는 점입니다. 이제 IP 네트워크가 클라이언트-서버 연결을 위한 프론트 엔드 네트워크뿐 아니라 서버-스토리지의 백 엔드 네트워크까지도 포함하게 된다는 것입니다. 결국 프론트 엔드와 백 엔드 네트워크가 하나로 통합된 진정한 컨버지드 환경이 요구됩니다.
이러한 컨버지드 환경의 가장 큰 문제점은 대규모 트래픽(Elephant 트래픽 유형 - 대규모, 지속적)과 소규모 트래픽(Mice 트래픽 유형 - 소규모, 버스트성)이 공존한다는 것입니다. 서로 완전히 상이한 트래픽이 같은 IP 네트워크 상에서 효율적으로 처리되지 않으면 전체 애플리케이션의 응답 시간이 증가될 수 밖에 없기 때문에 이에 대한 고려가 네트워크에 반드시 반영되어야합니다.
이와 같은 문제들을 효과적으로 개선하기 위한 방법은 데이터센터 네트워크 인프라 상에서 운영되는 각각의 애플리케이션을 분석하여 해당 서비스 유형에 맞도록 QoS 정책을 적용하는 것입니다. 하지만, 현실적으로 작게는 수십 개, 많게는 수백, 수천 개에 이르는 데이터센터의 다양한 애플리케이션에 대해 QoS 정책을 엔드투엔드로 설정하고 관리하는 것은 쉽지 않은 일입니다.
이에 다양한 유형의 트래픽을 스위치 ASIC에서 지능적으로 처리하는 방법들이 연구되고 있으며, 최근 새롭게 출시된 Cisco Nexus 9000의 2세대 ASIC에는 새로운 트래픽 처리 기술들을 포함하고 있는데요. 그 중 DPP(Dynamic Packet Prioritization)와 AFD(Approximate Fair Drop)는 빅데이터 또는 컨버지드 인프라 환경에서 다양한 트래픽을 효율적으로 처리하도록 하는 중요한 기능입니다.
DPP와 AFD는 무엇일까요?
DPP(Dynamic Packet Prioritization)
DPP는 애플리케이션별로 복잡한 QoS 정책 설정 없이 작은 크기의 버스트성 트래픽(Mice flow)을 우선 순위가 높은 큐(Queue)에 할당하여 신속하게 처리하는 기능입니다.
이는 슈퍼마켓에서 소량 계산대를 운영하여 계산대 운영 효율을 높히는 것처럼 트래픽이 유입되는 스위치의 인그레스에서 크기가 작은 트래픽 플로우(mice flow)를 우선 순위가 높은 큐로 보내고, 다른 트래픽은 일반(normal) 우선 순위를 가진 큐로 보냅니다. 이렇게 함으로써 쿼리와 같이 응답 시간이 중요한 트래픽을 신속하게 처리하고, 작지만 중요한 제어 프로토콜과 같은 트래픽의 손실을 방지합니다.
AFD(Approximate Fair Drop)
대용량 버퍼가 순간적인 버스트 트래픽 처리에는 유리하지만, 대규모 트래픽(Elephant Flow)이 혼재된 상황에서는 버퍼가
순식간에 고갈되어 지연시간이 증가하는 문제점을 지니고 있습니다. 때문에 대용량 버퍼보다는 지능적인 큐잉과 버퍼 관리가 하이퍼컨버지드 인프라에서는 중요한 요소가 됩니다.
AFD는 혼잡 회피(Congestion Avoidance) 기술 중의 하나로 인그레스(ingress)에서 트래픽을 모니터링하여 대규모 트래픽 플로우에 대해서는 최소의 이그레스(egress) 버퍼를 할당하고, 빠른 응답시간이 요구되는 소규모 트래픽 플로우에 대해서는 패킷 손실을 최소화하기 위해 최대 크기의 이그레스 버퍼를 할당합니다.
그리고 최적의 버퍼 효율을 유지하기 위해 동적으로 이그레스 포트의 패킷 Drop 상태를 모니터링하여 대규모 트래픽 플로우에 대한 적정한(fair) 임계치(bytes)를 동적으로 조절합니다.
이러한 설정값은 관리자가 애플리케이션별로 설정하는 것이 아니라 ASIC 레벨에서 혼잡 상태를 모니터링하여 동적으로 조절되기 때문에 컨버지드 인프라와 같은 차세대 데이터센터 환경에서 큰 효과를 기대할 수 있습니다.
AFD/DPP로 인한 기대효과
일반적으로 기업의 데이터센터 트래픽의 95%는 100 KB 미만의 TCP 플로우 (Mice Flow)이지만, 1%도 안되는 10MB 이상의 TCP 플로우(Elephant Flow)가 전체 대역폭의 90%이상을 차지하여 어플리케이션 응답 시간에 영향을 미치게됩니다. 그래서, AFD/DPP와 같은 ASIC 기반의 기술들이 필요한 것입니다.
100KB 미만의 플로우 완료 시간 비교
(AFD/DPP 지원 ASIC vs Deep Buffer 지원 ASIC)
위 그림에서는 AFD/DPP 기술이 적용된 Nexus 9000 시리즈의 차세대 ASIC은 20-30MB의 버퍼를 포함하고 있지만 9GB에 이르는 대용량 버퍼를 가진 브로드컴의 ASIC에 비해 단시간 (1ms 이내)에 트래픽을 처리하는 것을 볼 수 있습니다. 성능은 트래픽 부하가 높아질수록 눈에 띄는 차이를 보이게 됩니다. (관련 문서: Speeding Applications in Data Center Networks – Miercom)
지금까지 Cisco Nexus 9000의 차세대 ASIC 주요 기술 중에서 하이퍼 컨버지드 인프라를 위한 기술인 DPP와 AFD에 대해 소개해드렸습니다. 이와 같은 새로운 기술들은 모두 ASIC 레벨에서 처리되어 실제 트래픽 처리에는 영향을 주지 않아 안정적인 서비스를 제공하게 합니다. 특별히 운영자의 개입이 필요하지 않기 때문에, 다양한 데이터센터 환경에 바로 적용하여 애플리케이션의 성능 개선을 기대할 수 있다는 점이 가장 큰 장점이랍니다. 하루가 다르게 발전하는 ASIC, 앞으로도 기대할만 하겠죠?
이 칼럼을 SlideShare에서 다운받으실 수 있습니다!
Cisco IT Connect 시스코 전문가들의 칼럼에 담긴 최신 IT 트렌드! 이 글은 시스코 조성덕 기업 네트워크 스페셜리스트가 작성한 칼럼입니다. |