[ kvm-Bugs-2834538 ] low network speed with Windows virtio NIC drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bugs item #2834538, was opened at 2009-08-09 20:23
Message generated for change (Comment added) made by thekozmo
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=893831&aid=2834538&group_id=180599

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Andreas Unterkircher (unki)
Assigned to: Nobody/Anonymous (nobody)
Summary: low network speed with Windows virtio NIC drivers

Initial Comment:
Host-CPU: 2x Intel Xeon E5420 (Quad cores)
Host: KVM 85
Host: 64-bit
Guest: Windows XP (SP3) and Windows 2003 (SP2)

We are powering several guests on a KVM host. All of them using TAP interfaces bridged together via one bridge. Within the guests we installed the lasted virtio NIC drivers (from that ISO file). While the Interface status show that the interfaces are set to 1Gbit/s, the maximum bandwidth we can achieve is about 100-120Mbit/s (tested with iperf). Funilly, one the same host, two Debian Lenny guests (so using 2.6.26 with builtin virtio modules) can achieve the full bandwidth of 1Gbit/s and more without a problem.

So we suspect that the Windows virtio drivers for the NICs are causing this problem.

How can we track down that problem? Can we provide more infos? We are willing to help in debuggig!

Thx,
Andreas

----------------------------------------------------------------------

Comment By: Dor Laor (thekozmo)
Date: 2009-08-10 11:15

Message:
The driver should be able to saturate 1G link. 
We'll soon post new version of the driver but there are no massive
changes.
You can try and play with the socket buffers (iperf -w), windows is very
sensitive for it.
Also, make sure TSO is on. Here is the windows registry configuration we
use:

TCPIP Params from the registry:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"NV Hostname"="marksbox"
"NameServer"=""
"ForwardBroadcasts"=dword:00000000
"IPEnableRouter"=dword:00000000
"Domain"=""
"Hostname"="marksbox"
"SearchList"=""
"UseDomainNameDevolution"=dword:00000000
"EnableICMPRedirect"=dword:00000001
"DeadGWDetectDefault"=dword:00000001
"DontAddDefaultGatewayDefault"=dword:00000000
"EnableSecurityFilters"=dword:00000000
"ReservedPorts"=hex(7):33,00,33,00,34,00,33,00,2d,00,33,00,33,00,34,00,33,00,00,00,00,00
"EnableTCPA"=dword:00000000
"EnableRSS"=dword:00000000
"EnableTCPChimney"=dword:00000000
"Tcp1323Opts"=dword:00000003
"TcpAckFrequency"=dword:00000002
"TcpWindowSize"=dword:00100000
"DhcpNameServer"="192.168.122.1"

For the Windows Socket Layer

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters]
"DefaultReceiveWindow"=dword:00100000
"DefaultSendWindow"=dword:00100000

Note that it looks like the 10G and 1G interfaces were slightly different
in the guest.  Will investigate more

 

1G Interface

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\0012]
"BusNumber"="0"
"Characteristics"=dword:00000004
"BusType"="15"
"ComponentId"="pci\\ven_1af4&dev_1000&subsys_00010000"
"BatchReceive"="1"
"ConnectRate"="1000"
"ConnectTimer"="0"
"DebugLevel"="0"
"DoLog"="0"
"Gather"="1"
"HwOffload"="0"
"IPPacketsCheck"="0"
"LogStatistics"="0"
"OffLoad.TxIP"="0"
"OffLoad.TxLSO"="0"
"OffLoad.TxTCP"="0"
"PacketFilter"="0"
"Priority"="0"
"Promiscuous"="0"
"RxCapacity"="256"
"TxCapacity"="256"
"InfPath"="oem1.inf"
"InfSection"="kvmnet5.ndi"
"ProviderName"="Qumranet"
"DriverDateData"=hex:00,40,f5,36,ed,71,c9,01
"DriverDate"="1-9-2009"
"DriverVersion"="5.1.209.110"
"MatchingDeviceId"="pci\\ven_1af4&dev_1000&subsys_00010000"
"DriverDesc"="Qumranet ParaVirtualized Ethernet Adapter"
"NetCfgInstanceId"="{C4BF0807-F8F0-4A57-8BC5-85B2A9C5464A}"

 

10G Interface

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\0010]
"BusNumber"="0"
"Characteristics"=dword:00000004
"BusType"="15"
"ComponentId"="pci\\ven_1af4&dev_1000&subsys_00010000"
"BatchReceive"="1"
"ConnectRate"="1000"
"ConnectTimer"="0"
"DebugLevel"="0"
"DoLog"="0"
"Gather"="1"
"HwOffload"="1"
"IPPacketsCheck"="0"
"LogStatistics"="0"
"OffLoad.TxIP"="1"
"OffLoad.TxLSO"="1"
"OffLoad.TxTCP"="1"
"PacketFilter"="1"
"Priority"="0"
"Promiscuous"="0"
"RxCapacity"="256"
"TxCapacity"="256"
"InfPath"="oem1.inf"
"InfSection"="kvmnet5.ndi"
"ProviderName"="Qumranet"
"DriverDateData"=hex:00,40,f5,36,ed,71,c9,01
"DriverDate"="1-9-2009"
"DriverVersion"="5.1.209.110"
"MatchingDeviceId"="pci\\ven_1af4&dev_1000&subsys_00010000"
"DriverDesc"="Qumranet ParaVirtualized Ethernet Adapter"
"NetCfgInstanceId"="{249CC8A2-822D-46BF-8A64-CF572F7D07D6}"

  

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=893831&aid=2834538&group_id=180599
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux