4

i have a KVM linux based virtual machines, as the network performance of the host is running perfect with 1 Gbps (on the internal network) and using iperf tools it show that the network is running perfect on the host, but guests have slow network performance as iperf result was so strange as it is not 100 Mbps and is not 1 Gbps, it's between 350 and 500 Mbps maximum. This is the result of runnin iperf -c servername -P 15:

[ ID] Interval       Transfer     Bandwidth
[ 17]  0.0-10.0 sec  68.6 MBytes  57.5 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  18.6 MBytes  15.5 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-10.0 sec  61.9 MBytes  51.9 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[ 11]  0.0-10.0 sec  16.0 MBytes  13.4 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[ 10]  0.0-10.0 sec  24.3 MBytes  20.4 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[ 15]  0.0-10.0 sec  20.2 MBytes  16.9 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[ 12]  0.0-10.0 sec  30.2 MBytes  25.3 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  36.2 MBytes  30.3 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  8]  0.0-10.0 sec  23.6 MBytes  19.8 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  9]  0.0-10.0 sec  24.2 MBytes  20.3 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[ 14]  0.0-10.0 sec  31.0 MBytes  25.9 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  7]  0.0-10.0 sec  16.6 MBytes  13.9 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  6]  0.0-10.0 sec  18.8 MBytes  15.7 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[ 13]  0.0-10.0 sec  13.3 MBytes  11.2 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[ 16]  0.0-10.0 sec  29.6 MBytes  24.8 Mbits/sec
[SUM]  0.0-10.0 sec    433 MBytes    363 Mbits/sec

I tested different network models and the best result was with the virtio model any one please can help to get the full performance of network and be 1 Gbps.

I would like to add that when i execute the command brctl show I got the fbridge name

bridge id       STP enabled interfaces
br0     8000.d067e5fb7dec   no      eth0
                            vnet0
                            vnet1
                            vnet2
br2     8000.d067e5fb7dee   no      eth1
virbr0      8000.000000000000   yes

can this affect the network speed of the guest?

10
  • 3
    What drivers are you using for your guest? Try virtio if you are not doing so already.
    – Devator
    Feb 11, 2013 at 12:02
  • Did you already look at this? Feb 11, 2013 at 12:32
  • Can you elaborate on the kvm setup, are you using attached storage via network, etc. is the network slow between kvms on different hardware hosts?
    – Danie
    Feb 11, 2013 at 13:25
  • 1
    You are specifiying the host's hardware. The guests are the VM's. You need to set the network adapter (of the guests) to virtio.
    – Devator
    Feb 11, 2013 at 15:25
  • 1
    Ubuntu 10? Any ubuntu, but especially older versions are known for problematic virtualization performance. Try with a fresh Fedora or RHEL build.
    – dyasny
    Jun 15, 2014 at 13:53

3 Answers 3

5

Try changing ethernet driver settings.

/sbin/ethtool --offload eth0 gso off tso off sg off gro off 

If you experience low performance with the para-virtualized network drivers, verify the setting for the GSO and TSO features on the host system. The para-virtualized network drivers require that the GSO and TSO options are disabled for optimal performance.

2
4

I suppose you already using virtio driver in your VMs, its a must to have decent network performance.

You can also try using quite new guest netdev model, which uses some advanced memory mapping techniques to achieve even better network performance. You VMs should use the same configuration as with virtio drivers; kvm parameters to set start VM should be like this (fix them for your needs):

-netdev tap,vhost=on,ifname=vnet0,id=guest0,script=/path/to/custom/tap-ifup,downscript=no \
-device virtio-net-pci,netdev=guest0,mac=00:16:3e:47:aa:53

With this configuration I've achieved 6 Gb/s.

1
  • i copied the virtual machine to the server whose network performance is perfect and he network perofamance of the guest work perfect and running with 1GB/s so the problem is a host problem, can you advice what it may to be ?
    – Moaz Refat
    Feb 18, 2013 at 12:59
3

For best network performance, use virtio drivers in the definition of the host in KVM.

For example:

<interface type='bridge'>
  <source bridge='virbr0'/>
  <mac address="46:AD:2B:48:00:00"/>
  <model type='virtio'/>
</interface>

This posssibly requires additionnal virtio drivers. They are found in a CD that can be mounted on the virtual host. (source code https://github.com/virtio-win/kvm-guest-drivers-windows and binary download https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.217-1/)

1
  • 1
    This have been worked to me! It jumped a upload from 10 mbps to 200 mbps.
    – Felipe
    Sep 15, 2023 at 21:56

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .