From KVM
Line 33: Line 33:
  
 
= Starting from Vista =
 
= Starting from Vista =
 +
Starting from Windows Vista the mentioned above setting are not effecting Windows networking stack.
 +
 +
netsh configuration tool should be used to configure the networking settings.
 +
 +
 +
== Compound TCP ==
 +
To increase the TCP Windows with the faster rate Compound TCP should be enabled.
 +
On Vista and Windows 7, CTCP is off by default. On Windows 2008 it is on.
 +
 +
To enable CTCP:
 +
    netsh int tcp set global congestionprovider=ctcp
 +
 +
To disable CTCP:
 +
    netsh int tcp set global congestionprovider=none

Revision as of 18:24, 15 January 2011

This page describes best practice for configuring Windows TCP\IP related parameters to archive the best performance with Windows guests. Those parameters are unrelated to kvm\VirtIO drivers , rather general Windows settings. After changing those setting reboot is required for the changes to effect the system.

Windows XP and 2003 registry settings

Registry settings

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters]

"DefaultSendWindow"=dword:00100000

"DefaultReceiveWindow"=dword:00100000

"FastSendDatagramThreshold"=dword:00004000


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]

"Tcp1323Opts"=dword:00000001

"TcpWindowSize"=dword:00100000


  • Tcp1323Opts - allows the scaling of the TCP window above 16k. For more info read Tcp1323Opts
  • "DefaultSendWindow", "DefaultReceiveWindow" and "TcpWindowSize" control TCP window size
  • "FastSendDatagramThreshold" - controls fast UDP transmit.

Additional links


Starting from Vista

Starting from Windows Vista the mentioned above setting are not effecting Windows networking stack.

netsh configuration tool should be used to configure the networking settings.


Compound TCP

To increase the TCP Windows with the faster rate Compound TCP should be enabled. On Vista and Windows 7, CTCP is off by default. On Windows 2008 it is on.

To enable CTCP:

   netsh int tcp set global congestionprovider=ctcp

To disable CTCP:

   netsh int tcp set global congestionprovider=none