vhost

Creator
Creator
Seonglae Cho
Created
Created
2021 May 16 9:6
Editor
Edited
Edited
2024 Apr 21 14:7
Refs
Refs
KVM의 vhost (이하 k-vhost)가 범용적으로 사용
Vhost는 Virtio를 이용한 장치 가상화의 성능을 개선하는 모듈
QEMU Emulator에 구현되어 있던 VirtIO backend를 커널에서 직접 수행함으로써 성능을 더욱 향상
Vhost의 종류에는 네트워크는 k-vhost-net, 스토리지는 k-vhost-scsi, k-vhost-blk 등
다양한 게스트 머신이 호출하는 I/O가 QEMU Emulator로 Serialize 되는 것을 막아주어 Global Mutex를 벗어날 수 있게 함으로써 성능의 Scalability를 보장
Virtio back-end 역할을 vhost가 커널에서 직접 수행함으로써 Mode Switching Overhead를 감소시키며 Scalability 문제도 함께 해결하는 구조
 
 
notion image
 
 

인터럽트 기반의 복잡한 호출 구조를 가지고 있고, memcpy나 lock이 다수 존재하여 성능의 한계가 분명히 존재

 
 
  • vhost-net
  • vhost-scsi
  • vhost-blk
 
 
 
 
 
 

Recommendations