I have two physical servers with Ubuntu 10.04 server on them. They are connected with a 1Gbps card over a gigabit switch. Each of these host servers has one Win 2008 guest VM. Both VMs are well provisioned (4 cores, 12GB RAM), RAW disks.

My asp.net/sql server applications are running much slower compared to very similar physical setups.

Both machines are setup to use virtio for disk and network. I used iperf to check network performance and I get: Physical host 1 -----> Physical Host 2: 957 Mbits/sec Physical host 1 -----> Win 08 Guest 1: 557 Mbits/sec Win 08 Guest 1 -----> Phy host 1: 182 Mbits/sec Win 08 Guest 1 -----> Win 08 Guest 2: 111 Mbits /sec

My app is running on Win08 Guest 1 and Guest 2 (web and db). There is a huge drop in network throughput (almost 90%) between the two guest. Further the throughput does not seem to be symmetric between host and guest as well.

The CPU utilization on the guests and hosts is less than 2% right now (we are just testing right now).

Apart from this, there have been random slow downs in the network to as low as 1 Mbits/sec making the whole application unusable.

Any help to trouble shoot this would be appreciated.

1 Answer 1

  1. What host OS is used?
  2. for every one of the NICs ethtool -k $NIC and it's probably a good idea to disable offloads with 'ethtool -K $NIC tso off ; ethtool -K $NIC gso off'
  3. bridged or NAT networking?
  4. Where are the virtio drivers from? Are they signed?
  5. IPv4 or 6?
  6. is ToE enabled in the guests?
  • 1. Host OS: Ubuntu 10.04 2. This is on the host? I did this and got "no offload settings changed". Assuming it is disabled. 3. Bridged. Do you want the config output? 4. From RedHat and they are signed from what I can tell. alt.fedoraproject.org/pub/alt/virtio-win/latest/images 5. IPV4. But I have not disable IPV6 on the host or guest. IPV6 has some random address. Never have paid attention to it till now. 6. I have not done TOE explicitly, so not sure. I check the RedHad VirtIO Ethernet Adapter Propertes, the only thing that could be relates Offloast Tx LSO?
    – taazaa
    Commented May 21, 2011 at 16:08
  • 1. Can you try on a fedora host? seen ubuntu kvm builds acting up a lot. 2. ethtool -k eth0 - post the output 3. no, bridges is usually good enough. 4. ok 5. ok 6. netsh int tcp set global chimney=disabled check settings afterwards, disable LSO if you see it still on
    – dyasny
    Commented May 21, 2011 at 20:25
  • 1. I can switch, but it will be some work. Can plan for this. 2. ethtool -k eth0: Offload parameters for eth0: Cannot get device GRO settings: Operation not permitted rx-checksumming: on tx-checksumming: on scatter-gather: on tcp-segmentation-offload: on udp-fragmentation-offload: off generic-segmentation-offload: on generic-receive-offload: off large-receive-offload: off
    – taazaa
    Commented May 22, 2011 at 3:07
  • Running the netsh int tcp set global chimney=disabled command on windows - should improve performance? I will try it shortly.
    – taazaa
    Commented May 22, 2011 at 3:09
  • the netsh command will improve IIS -> network performace. On the host, you have TSO and GSO on, you need to turn them off ethtook -K eth0 TSO off and the same for GSO
    – dyasny
    Commented May 22, 2011 at 5:47

You must log in to answer this question.

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