Professional Documents
Culture Documents
1
TX
Guest
Guest
KVM
KVM tap
tap
qemu
qemu
2
RX
Guest
Guest
KVM
KVM tap
tap
qemu
qemu
3
Vhost-net
Guest
Guest
qemu
qemu
4
TX
Guest
Guest
KVM
KVM Vhost-net
Vhost-net tap
tap
5
RX
Guest
Guest
KVM
KVM Vhost-net
Vhost-net tap
tap
6
ioeventfd
Guest
Guest
KVM
KVM eventfd
eventfd Vhost-net
Vhost-net
qemu
qemu
7
ioeventfd
Guest
Guest
KVM
KVM eventfd
eventfd Vhost-net
Vhost-net
qemu
qemu
8
irqfd
Guest
Guest
KVM
KVM eventfd
eventfd Vhost-net
Vhost-net
qemu
qemu
9
irqfd
Guest
Guest
KVM
KVM eventfd
eventfd Vhost-net
Vhost-net
qemu
qemu
10
Mb/s
●
Guest Host ●
Host Guest
vhost
User User vhost
space space
11
trans/s
vhost
User space
12
macvtap
Guest
Guest
KVM
KVM Vhost
Vhost tapmacvtap
tap bridge
bridge
NIC
NIC
13
zcopy
Guest
Guest
KVM
KVM Vhost
Vhost macvtap
NIC
NIC
14
zcopy
Guest
Guest
KVM
KVM Vhost
Vhost backend
NIC
NIC
15
Header copy
Guest
Guest hdr
KVM
KVM Vhost
Vhost backend
NIC
NIC
skbuff
16
alignment
hdr data
Guest
Guest
KVM
KVM Vhost
Vhost backend
NIC
NIC 17
multiqueue
Guest
TX RX TX RX
TX RX Macvtap TX RX
?
RX NIC
TX TX RX
18
Virtio ring
Avail Desc Used
Guest Vhost
19
fragmentation
Desc
41 packets
packet
Vhost
20
new ring
Avail Desc Used
id
Vhost
21
window
!
Used
Guest Vhost
22
Publish guest index
!
Used
Guest Vhost
23
Guest 2 external
Guest
Guest Guest
Guest
KVM
KVM Vhost
Vhost tap
tap bridge
bridge tap Vhost
tap Vhost KVM
KVM
NIC
NIC
Guest
Guest Guest
Guest
KVM
KVM Vhost
Vhost tap
tap bridge
bridge tap Vhost
tap Vhost KVM
KVM
26
TODO
●
Zero copy +
●
Multiqueue +
●
Virtio ring +
●
Threading ?
●
Level interrupts ?
27