# 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"