Hi, Network performance on MirageOS Solo5/ukvm is not optimized yet, but you can try bridged networking by the following:
(I guess you have a bridge device "virbr0" created by libvirt) ip tuntap add tt0 mode tap ip link set dev tt0 up brctl addif virbr0 tt0 sudo ./ukvm-bin --net=tt0 iperf_server.ukvm Kind regards -- Takayuki Imada > On Oct 24, 2017, at 0:45, Justin Cinkelj <[email protected]> wrote: > > Hi > > I just tried to compile MirageOS, and wanted to test networking performance, > to compare regular linux/ubuntu KVM VM vs. mirageOS: > > Linux VM has IP 192.168.122.20: > ping 192.168.122.20 > PING 192.168.122.20 (192.168.122.20) 56(84) bytes of data. > 64 bytes from 192.168.122.20: icmp_seq=1 ttl=64 time=0.114 ms > ... > 20 packets transmitted, 20 received, 0% packet loss, time 19434ms > rtt min/avg/max/mdev = 0.116/0.157/0.193/0.027 ms > > mirage VM has IP 192.168.122.100. > ping 192.168.122.100 > PING 192.168.122.100 (192.168.122.100) 56(84) bytes of data. > 64 bytes from 192.168.122.100: icmp_seq=1 ttl=38 time=0.090 ms > ... > 20 packets transmitted, 20 received, 0% packet loss, time 19490ms > rtt min/avg/max/mdev = 0.087/0.119/0.169/0.021 ms > > So here mirage has lower latency, nice :) > > But with iperf server on VM, and client on host: > (mirage iperf is from https://github.com/TImada/mirage_iperf) > > ubuntu VM: > iperf -c 192.168.122.20 -t10 > ------------------------------------------------------------ > Client connecting to 192.168.122.20, TCP port 5001 > TCP window size: 85.0 KByte (default) > ------------------------------------------------------------ > [ 3] local 192.168.122.1 port 52674 connected with 192.168.122.20 port 5001 > [ ID] Interval Transfer Bandwidth > [ 3] 0.0-10.0 sec 52.9 GBytes 45.4 Gbits/sec > top: > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > > 4401 qemu 20 0 6038648 2.309g 22968 S 100.0 7.4 43:24.27 > qemu-system-x86 > 4422 root 20 0 0 0 0 R 83.2 0.0 0:22.90 vhost-4401 > > 24759 justin_+ 20 0 165812 1892 1728 S 51.5 0.0 0:03.91 iperf > > mirage VM: > sudo ./ukvm-bin --net=tt0 iperf_server.ukvm > justin_cinkelj@jcpc:~/devel/orange$ iperf -c 192.168.122.100 -t10 > ------------------------------------------------------------ > Client connecting to 192.168.122.100, TCP port 5001 > TCP window size: 85.0 KByte (default) > ------------------------------------------------------------ > [ 3] local 192.168.122.101 port 44920 connected with 192.168.122.100 port > 5001 > [ ID] Interval Transfer Bandwidth > [ 3] 0.0-10.0 sec 2.80 GBytes 2.40 Gbits/sec > top: > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > > 24788 root 20 0 528708 16148 16064 R 100.0 0.0 0:04.35 ukvm-bin > > Now, I guess I'm doing something wrong. I would try bridged networking with > mirage, but I don't know how. > What else could/should I change? > > BTW, the tt0 network device was created with: > tunctl -t tt0 > ip link set up dev tt0 > ip addr add 192.168.122.101/26 dev tt0 > > Justin > > _______________________________________________ > MirageOS-devel mailing list > [email protected] > https://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
_______________________________________________ MirageOS-devel mailing list [email protected] https://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
