Cloud

I/O 가상화란?

마시멜로를찾아서 2025. 6. 19. 09:24
728x90
반응형

I/O 가상화는 **하드웨어 자원(I/O 장치)**을 여러 가상머신(VM)들이 효율적으로 공유할 수 있도록 중개/추상화하는 기술입니다. 이는 하나의 물리 장비에 다수의 VM이 실행되는 환경에서 I/O 병목, 지연, 충돌 등을 해결하기 위해 매우 중요합니다.


🧩 I/O 가상화란?

  • CPU나 메모리는 가상화가 비교적 수월하지만,
  • I/O (디스크, 네트워크, GPU)는 VM 간 공유 시 성능 저하/지연/보안 이슈 발생
  • 이를 해결하기 위한 중간 계층 또는 I/O 가속 기술을 통틀어 “I/O 가상화”라 함

🚨 I/O 가상화의 주요 과제


 

문제 설명
병목현상 여러 VM이 하나의 디바이스에 동시에 접근 시 충돌
오버헤드 Hypervisor나 Driver의 중간 처리로 인한 성능 저하
보안 격리 하나의 디바이스를 여러 VM이 공유 시 메모리 침범 가능성
장치 지원 다양한 NIC, GPU, SSD에 대한 호환성 확보 필요
 

🔧 대표 기술 종류

 

기술 설명
Full Emulation 장치를 소프트웨어적으로 완전히 흉내냄 (QEMU 방식) – 가장 느림
Paravirtualization (VirtIO) 게스트 OS가 가상 하드웨어를 직접 인식하도록 드라이버 제공 (성능 우수)
SR-IOV (Single Root I/O Virtualization) 물리 디바이스가 VM에게 **가상 기능(VF)**을 직접 제공 – 네이티브에 가까운 성능
VFIO (Virtual Function I/O) 호스트 커널이 장치를 직접 넘겨서 사용자 공간에서 제어 가능 (KVM + DPDK 등과 연계)
vDPA / Vhost-user Zero-copy + 게스트 우선 성능 확보를 위한 커널-우회 통신 방식
 

📜 기술 발전 히스토리


 

시기 기술 내용
2000년대 초반 QEMU + emulated I/O CPU는 가상화 가능, I/O는 전부 느린 소프트웨어 처리
2010년대 VirtIO, SR-IOV 게스트와 장치 간 직접 연결로 성능 개선
2015 이후 VFIO, vDPA, DPDK 성능 극대화 및 커널 우회 경로 마련
2020 이후 GPU-V, Storage SR-IOV 고성능 디바이스에 대한 가상화 확장 시작
 

🧬 기술 비교

 

항목 Emulated VirtIO SR-IOV VFIO
성능 매우 낮음 중간 매우 높음 매우 높음
호환성 높음 높음 제한적 제한적
게스트 수정 필요 X O (드라이버 필요) X X
하드웨어 요구 낮음 낮음 높음 (SR-IOV 지원 NIC) 중간
주 용도 실험, 호환성 일반 VM 네트워크 고속 처리 고성능 스토리지/네트워크
 

🔮 최근/미래 동향


 

기술 설명
vDPA (vHost Data Path Acceleration) 커널/유저 공간에서 VirtIO 성능을 극대화 (DPDK 연계)
GPU-V (GPU Virtualization) NVIDIA GRID, AMD SR-IOV GPU 등 고성능 가속기 가상화
NVMe SR-IOV 고성능 SSD 디바이스 직접 가상화 (IOPS 병목 해소)
SmartNIC 가상화 BlueField, IPU 등 데이터 플레인 자체 가상화 제공
 

🧠 실제 적용 예

 

사용 환경 기술 선택 예시
일반 VM + 네트워크 VirtIO-Net, VirtIO-Block
고성능 Web 서버 SR-IOV NIC (Intel, Mellanox)
고속 DB 처리 VFIO + DPDK
GPU 렌더링 NVIDIA vGPU or SR-IOV GPU
쿠버네티스 + 고성능 워크로드 vDPA + Multus + SR-IOV CNI
 

✅ 요약

 

키워드 설명
병목 해결 VirtIO, SR-IOV, VFIO 도입
성능 개선 유저 스페이스 직접 연산 (Zero-copy 등)
추세 GPU, NVMe, SmartNIC 등으로 확장 중
전망 커널 우회 + 고가속 특화 구조의 I/O 전용 칩 증가
728x90
반응형