엔비디아, 페이스북 데이터센터의 정확한 시간 동기화 지원
2021년 08월 19일
트위터로 보내기페이스북으로 보내기구글플러스로 보내기

4853ef3c1475f9f80a0abcfd2ee3a9e9_1629318554_4972.jpg


엔비디아(www.nvidia.co.kr, CEO 젠슨 황)는 페이스북(Facebook)이 자사의 커넥트X-6 Dx(ConnectX-6 Dx) 네트워크 인터페이스 카드(NIC)를 통해 데이터센터에 안전성, 신뢰성, 확장성, 경제성을 갖춘 최신 오픈 소스 시간 동기화 솔루션을 지원하고 있다고 밝혔다. 

 

페이스북은 데이터센터 전반에서 비용 효율적인 방식으로 매우 정밀한 타임 키핑(time keeping)과 시간 동기화를 제공하는 OCP TAP(Open Compute Project Time Appliance Project)를 오픈 소싱하고 있다. 해당 솔루션은 엔비디아 커넥트X-6 Dx(ConnectX-6 Dx) 네트워크 인터페이스 카드(NIC)와 프리시전 타이밍 프로토콜(PTP)를 통해 대부분의 상용 제품(COTS) 서버를 정확한 시간 어플라이언스로 전환하고, 데이터센터의 다른 서버와 정밀 타임 키핑을 공유할 수 있는 타임 카드(Time Card)를 포함하고 있다. 

 

데이터센터에서 정확한 시간이 중요한 이유

애플리케이션의 규모가 확장되고 IT 운영 범위가 전 세계로 확대되면서, 데이터센터 내의 서로 다른 서버 또는 다양한 대륙에 위치한 데이터센터 간에 데이터를 동기화하는 일이 더 중요하고 어려워지고 있다. 데이터베이스가 분산된 경우, 일관성을 유지하고 인과 관계를 표시하려면 정확한 이벤트 순서를 추적해야 한다. 예컨대, 두 사람이 동일한 주식을 매수하려고 한다면 어떤 주문이 먼저 도착했는지 확실히 알아야만 공정성 및 규정을 준수할 수 있다. 마찬가지로, 페이스북에서는 수많은 유저가 매시간 콘텐츠를 게시하고 게시물에 ‘좋아요’, ‘웃겨요’, ‘최고에요’를 누르므로, 각 게시물마다 ‘좋아요’가 달리고, 답글과 이모티콘이 게재되는 순서를 알아야 한다. 

 

데이터를 동기화 상태로 유지하는 한 가지 방법은 각 데이터센터가 각 트랜잭션 후 다른 데이터센터에 업데이트를 전송케 하는 것이지만, 이 방법은 너무 긴 데이터센터 간의 지연 시간으로 인해 시간당 발생하는 수백만 개의 이벤트를 지원할 수 없다. 

 

더 좋은 방법은 각 서버와 데이터센터를 1마이크로초 이내의 정확한 시간으로 동기화하는 것이다. 이를 통해 각 사이트는 시간을 추적할 수 있으며, 다른 데이터센터와 이벤트를 공유할 때 각 이벤트의 순서가 별다른 조치 없이도 정확하게 유지된다. 

 

시간 동기화가 정확할수록 애플리케이션의 속도가 더 빨라진다. 최근 테스트 결과에 따르면, 타임 키핑 정밀도를 80배 높이면(시간 불일치를 80배 낮추면) 분산 데이터베이스의 실행 속도가 3배 증가한다. 동일한 서버 하드웨어에서 시간을 더 정확하고 안정적으로 유지하는 것만으로도 놀라운 성능 향상 효과를 얻을 수 있다. 

 

시간 동기화에서 NIC 및 네트워크의 역할

OCP TAP 프로젝트에서는 타임 카드가 GPS 위성 네트워크에서 시간 신호를 수신하여 처리하고, 위성 신호를 일시적으로 사용할 수 없는 경우에도 정확한 시간을 유지하며, 시간 서버와 정확한 시간을 공유하는 정확한 방법을 정의하고 있다. 그러나 네트워킹, 사용하는 네트워크 카드도 매우 중요하다.

 

4853ef3c1475f9f80a0abcfd2ee3a9e9_1629318514_5826.png

<OCP 타임 카드는 정확한 시간을 유지하고, 엔비디아 커넥트X-6 Dx와 같이 PPS 입/출력을 

지원하는 NIC와 이를 공유한다(출처: 페이스북 엔지니어링 블로그).> 

 

시간 어플라이언스에서 NIC는 타임 카드에 연결할 PPS(초당 시간 펄스) 포트가 필요하다. 이를 통해 각 시간 서버의 NIC와 타임 카드 간에 몇 나노초 이내로 정확한 시간 동기화가 보장된다. 엔비디아 커넥트X-6 Dx는 이를 지원하는 최초의 현대적 25/50/100/200Gb/s NIC 중 하나다. 이는 들어오는 PPS 신호를 필터링하고 확인하며, ASIC의 하드웨어를 통해 내부적으로 시간을 유지하여 정확도와 일관성을 보장한다. 

 

마이크로초 미만의 정확한 타이밍을 지원하는 시간 어플라이언스는 네트워크 시간 프로토콜(NTP)를 사용하는 수백 개의 일반 서버나 PTP를 사용하는 수만 개의 서버와 이러한 타이밍을 공유할 수 있다. 네트워크가 시간 신호, NTP 및 PTP 타임스탬프 패킷에 지연 시간을 추가하므로, 양방향 이동 시간을 측정하고, 지터와 지연 시간을 고려하며, 각 서버의 정확한 시간을 계산한다(PTP가 훨씬 더 정확하므로 NTP를 대체하고 있다).

 

4853ef3c1475f9f80a0abcfd2ee3a9e9_1629318484_3797.jpg

<엔비디아 커넥트X-6 Dx는 PPS 입/출력 포트를 사용하여 타임 카드와의 직접적인 시간 동기화를 지원한다. 

또한 하드웨어에서 패킷의 정밀 하드웨어 시간 스탬핑을 수행한다.> 

 

대안은 소프트웨어 솔루션으로 타임스탬프를 찍는 것이지만, 현재 속도의 소프트웨어로 타임스탬프를 찍는 것은 매우 예측하기 어렵고 부정확하거나 불가능할 수도 있으며, 혼잡이나 CPU 방해로 인해 최대 밀리초(ms) 단위까지 편차가 생긴다. 반면, 커넥트X-6 Dx와 블루필드-2(BlueField-2) DPU(데이터처리장치)는 최대 100Gb/s의 속도로 네트워크에 도달하자마자 인바운드 패킷에 하드웨어 타임스탬프를 적용하고, 네트워크에 도달하기 직전에 아웃바운드 패킷에 하드웨어 타임스탬프를 적용한다. 커넥트X-6 Dx는 네트워크 부하가 높은 경우에도 4나노초(ns) 미만의 타임스탬핑 정밀도 편차로 모든 패킷에 타임스탬프를 찍을 수 있다. 다른 시간을 지원하는 대부분의 NIC는 일부 패킷에만 스탬프를 찍고, 네트워크 트래픽이 많을 때 타임스탬프 정밀도가 떨어지면서 훨씬 더 큰 정밀도 편차를 보여준다. 

 

엔비디아 네트워킹은 상용 NIC에서 사용할 수 있는 가장 정밀한 지연 시간 측정을 지원하므로 모든 서버의 시간이 가장 정확하고, 애플리케이션 시간 편차가 일반적으로 1마이크로초 미만(<1us)이다. 네트워크 타이밍이 더 정밀해지면 각 서버의 시간이 더 정확해지므로 분산 애플리케이션의 속도가 더 빨라진다(그리고 페이스북에서 모든 사용자가 ‘좋아요’를 더 많이 받을 수 있다).

 

4853ef3c1475f9f80a0abcfd2ee3a9e9_1629318452_3101.jpg

<OCP 시간 서버와 엔비디아 NIC 또는 DPU를 사용하여 NTP 또는 PTP를 배포하면 

데이터센터의 모든 서버에 매우 정확한 시간이 전파된다> 

 

모두를 위한 정확한 시간 동기화

OCP TAP는 정밀하고 정확하며 모든 조직이 접근할 수 있는 타임 키핑을 지원한다. 페이스북, 엔비디아, OCP의 오픈 타임 서버(Open Time Server)와 개방형 관리 도구는 모든 사람이 손쉽게 채택하여 하이퍼스케일러처럼 사용할 수 있는 비법을 제공한다. 

 

엔비디아는 정밀 시간 어플라이언스에 필요한 초정밀 타임스탬핑과 네트워크 동기화 기능을 지원하는 정밀 시간 지원 NIC와 DPU를 제공한다. 블루필드 DPU를 사용하는 경우, Arm 코어에서 PTP 스택을 실행하여 시간 스택을 다른 서버 소프트웨어와 격리하고, 해당 서버 내에서 시간의 정확도를 지속적으로 확인하고, 데이터센터 전체에 바인딩된 최대 시간 오류를 지속적으로 계산할 수 있다. 

 

클라우드 서비스와 데이터베이스는 이미 더 우수한 시간 서버 및 시간 동기화 기술을 활용하기 위해 새로운 시간 기반 명령과 API를 추가하고 있다. 해당 솔루션은 분산 애플리케이션의 성능을 개선하고 클라우드와 엔터프라이즈 모두에서 새로운 유형의 솔루션을 구현할 수 있는, 보다 정확한 타임 키핑을 가능하게 한다. 

 

사양, 설계도, 역학, 자재 명세서 및 소스 코드를 포함한 OCP TAP에 대한 세부 사항은 www.ocptap.com 에서 확인할 수 있다.

그래픽 / 영상
많이 본 뉴스