Hello,
I have some problem with poor network performance on libvirt with qemu and openvswitch.
I’m using libvirt 1.3.1, qemu 2.5 and openvswitch 2.6.0 on Ubuntu 16.04 currently.
My connection diagram looks like below:
+---------------------------+
+---------------------------+ |
Net namespace |
+------------------+ | OVS bridge | |
|
| | | | |
|
| VM | | | |
|
| | +----+---+ +----+-----+ +----+---+
|
| +------+tap dev | | veth A +---------+ veth B |
|
| | +--------+ +----------+ +--------+
|
| iperf
-s<---------------------------------------------------------------------------+iperf -c
|
| | | | |
|
+------------------+ | | |
|
| | |
|
+---------------------------+
+---------------------------+
I haven’t got any QoS in tc configured on any interface. When I do this iperf test I have
something about 150Mbps only. IMHO it should be something about 20-30 Gbps there.
Other strange thing is that if I made more such VMS (each connected in same way, with own
OVS bridge and own namespace) bandwidth is lower for each of them and it looks for me that
summarize bandwidth is then something about 1Gbps (30 VMs - each got something about
30Mbps in such test).
When I removed VM and added „tap dev” as internal port in OVS and made same test, then I
had result about 30 Gbps.
I have no idea what can be wrong there. Maybe someone of You had such problems earlier?
One more thing, on different host with Ubuntu 14.04, OVS 2.0.2, Libvirt 1.3.1 and qemu 2.3
I don’t have this problem.
Kernel on both hosts is 4.4.0 (from Ubuntu repo).
Pozdrawiam / Best regards
Sławek Kapłoński
slawek(a)kaplonski.pl