Files

53 lines
1.1 KiB
Plaintext

# control/setup path 는 QEMU 를 지나고 data path 는 backend 에 따라 QEMU 를 지나기도 안 지나기도 한다
# Question: 설정하는 경로와 packet 이 흐르는 경로는 어디에서 갈라지고, 그 두 갈래 가운데 어느 쪽이 QEMU 사용자 공간을 지나는가
direction: down
n0: "virsh" {
shape: rectangle
}
n1: "libvirt" {
shape: rectangle
}
n2: "QEMU" {
shape: rectangle
}
n3: "virtio-net Device Model" {
shape: rectangle
}
n4: "Physical NIC" {
shape: rectangle
}
n5: "Physical NIC Driver" {
shape: rectangle
}
n6: "Linux Bridge /\nRouting / NAT" {
shape: rectangle
}
n7: "TAP" {
shape: rectangle
}
n8: "vhost-net" {
shape: rectangle
}
n9: "QEMU virtio backend" {
shape: rectangle
}
n10: "virtqueue" {
shape: queue
}
n11: "Guest" {
shape: rectangle
}
n0 -> n1: "Control / Setup"
n1 -> n2: "NIC/network configuration"
n2 -> n3: "QEMU process"
n4 -> n5: "Ethernet Frame"
n5 -> n6: "L2 forwarding"
n6 -> n7: "Ethernet Frame"
n3 -> n8: "vhost-net backend 설정"
n3 -> n9
n7 -> n8: "vhost-net 사용"
n7 -> n9
n8 -> n10: "Data Path"
n9 -> n10: "Data Path"
n10 -> n11: "virtio-net Frontend Driver"