금주 수행한 내용

Cloud 환경에서 SAN 기반 스토리지를 NVMe를 통해 연결할 수 있는 방법들 정리

NVMe-over-Fabrics

  • NVMe 명령어를 네트워크를 통해 원격 저장소로 전달하는 프로토콜
  • PCIe 기반 로컬 디스크의 성능을 네트워크 스토리지로 확장하는 데 목적
  • 대표적인 전송 계층: RDMA (RoCE), TCP, Fibre Channel, iWARP

AWS의 경우는?

퍼블릭 클라우드 환경에서는 RoCE, iWARP, TCP, 또는 AWS 독자 프로토콜인 SRD 등이 네트워크 전송 계층으로 사용 가능 - Nitro 기반 io2 Block Express의 경우 SRD전용 고속 전송 프로토콜 사용 - 일반적인 gp3, io1는 iSCSI over TCP와 유사한 구조일 것으로 추정됨

AWS와 같은 퍼블릭 클라우드는 정확한 내부 구현을 공개하지 않음 다만 EBS와 EC2 간 스토리지 연결에 있어 Ethernet 기반의 전송 계층을 사용하고 있으며, 일부 고성능 스토리지(io2 Block Express 등)는 NVMe-oF over SRD(Scalable Reliable Datagram)와 같은 독자적인 고성능 프로토콜을 사용하는 것으로 알려져 있음

https://aws.amazon.com/ko/blogs/tech/srd/

단점 및 고려 사항

  • 네트워크 홉 존재 → latency 증가 요인
  • 멀티 테넌시 환경에서 I/O 경합 가능성
  • 전송 계층에 따라 성능 편차 발생 (TCP vs RDMA)

인사이트

  • NVMe-oF는 로컬 PCIe SSD의 구조를 네트워크로 확장한 방식이지만, 클라우드에서는 네트워크 홉, 멀티 테넌시, 프로토콜 선택에 따라 성능 변동성이 큼
  • 따라서 vector search workload에서는 캐시 계층, prefetch 전략 등과 함께 전송 계층 수준에서의 latency 모델링도 병행되어야 함

차주 수행 할 내용

  • DiskANN에서 제안한 대용량 외부 SSD 기반 탐색 구조가 **NVMe-oF over TCP 또는 RDMA 환경에서도 동일한 성능 이점을 가질 수 있는지 검토