Windows 7, Vista, 2. Tweaks. Tweaking Windows 7 / Vista TCP/IP settings for broadband internet connections. Philip. Tags: patch, Nagle, Qo. S, Syn. Attack. Protect, DNS, Default. TTL, Net. DMA, TCP 1.
SpeedGuide: Windows Vista introduces a number of new features to the TCP/IP stack, including CTCP, and TCP Window Auto-Tuning. If you want to get the most out of your Windows Box networking, then you will need access to the administrator account, or administrative privileges. General Gaming Performance Tweaks (part 2) Hardware and Operating Systems.
Options, MTU, auto- tuning, Compound TCP, Chimney Offload, CTCP, TCP Window, Registry, TCP/IP, tweak, Vista, Windows 7. Windows Vista introduces a number of new features to the TCP/IP stack, including CTCP, and TCP Window Auto- Tuning. This new implementation works much better by default than previous Windows versions with broadband internet connections, and is able to adjust the RWIN value on the fly, depending on the BDP (bandwidth- delay product). This, however, introduces some problems with older routers and restricts the user from tweaking some of the TCP/IP parameters.
Still, there is always some room for improvement, and this article explains the known tweakable TCP/IP parameters. To enter some of the commands below, you will need to run "elevated" command prompt. To do so, click the Start icon > Run > type: cmd , then click CTRL+SHIFT+ENTER. Alternatively, you can navigate to Start > All Programs > Accessories > right- click Command Prompt and choose "Run as Administrator". Check the TCP/IP state. To check the current status of the Vista TCP/IP tweakable parameters, in elevated command prompt type the following command: netsh int tcp show global. You will be presented with something like the following: The settings, as well as their default and recommended state are explained below.
The two most important tweakable parameters are "Auto- Tuning Level" and "Congestion Control Provider". When checking the TCP state with the "netsh int tcp show global" command, it is also possible to see the following message below all those parameters: ** The above autotuninglevel setting is the result of Windows Scaling heuristics overriding any local/policy configuration on at least one profile. It is displayed when the "Receive Window Auto- Tuning Level" is not explicitly set, or if the system deemed it necessary to make a change because of user prompted "repairing" of your network connection, for example. Disable Windows Scaling heuristics. Windows Vista/7 has the ability to automatically change its own TCP Window auto- tuning behavior to a more conservative state regardless of any user settings.
It is possible for Windows to override the autotuninlevel even after an user sets their custom TCP auto- tuning level. When that behavior occurs, it can have a very noticeable negative impact on throughput, and it does not automatically correct itself. If auto- tuning gets limited, the "netsh int tcp show global" command displays the following message: ** The above autotuninglevel setting is the result of Windows Scaling heuristicsoverriding any local/policy configuration on at least one profile. To prevent that behavior and enforce any user- set TCP Window auto- tuning level, you should execute the following command: netsh int tcp set heuristics disabledpossible settings are: disabled,enabled,default (sets to the Windows default state)recommended: disabled (to retain user- set auto- tuning level)Note this should be executed in elevated command prompt (with admin priviledges) before setting the autotuninlevel in next section. If the command is accepted by the OS you will see an "Ok." on a new line.
The corresponding Registry value (not necessary to edit if setting via netsh) is located in: HKEY_LOCAL_MACHINESYSTEMCurrent. Control. SetservicesTcpipParameters. Enable. Wsd=0 (default: 1, recommended: 0)Note: This automatic limitation of the TCP Window usually occurs in the presence of some packet loss, which can be common in longer transfers and server applications. TCP Auto- Tuning. To turn off the default RWIN auto tuning behavior, (in elevated command prompt) type: netsh int tcp set global autotuninglevel=disabled.
The default auto- tuning level is "normal", and the possible settings for the above command are: disabled: uses a fixed value for the tcp receive window. Limits it to 6. 4KB (limited at 6. It enables RWIN values of over 1. MB)Our recommendation: normal (unless you're experiencing problems).
Den Diensten von Windows den Hahn zudrehen: Die Windows Dienste starten nach dem Systemstart - hier erfahren, wie Sie automatische Updates etc. abschalten.
If you're experiencing problems with your NAT router or SPI firewall, try the "restricted", "highlyrestricted", or even "disabled" state. Notes: - Reportedly, some older residential NAT routers with a SPI firewall may have problems with enabled tcp auto- tuning in it's "normal" state, resulting in slow speeds, packet loss, reduced network performance in general.- auto- tuning also causes problems with really old routers that do not support TCP Windows scaling. See MSKB 9. 35. 40. If you're experiencing problems with Auto- Tuning, see also: MSKB 8. MSKB 9. 34. 43. 0 - network connectivity behind firewall problems. MSKB 9. 40. 64. 6 - 3.
G WWAN throughput issues. MSKB 9. 29. 86. 8 - web browsing issues. MSKB 9. 32. 17. 0 - slow network file transfer. Compound TCP - Improve throughput. Add- On Congestion Control Provider. The traditional slow- start and congestion avoidance algorithms in TCP help avoid network congestion by gradually increasing the TCP window at the beginning of transfers until the TCP Receive Window boundary is reached, or packet loss occurs.
Want to watch this again later? Sign in to add this video to a playlist. Next part 3 speed up your PC for gaming : http:// Watch part 1. Windows 7 vs Windows Vista Speed & Performance Test Comparison. Click here http:// to SUBSCRIBE to PCWizKid. Click here http.
For broadband internet connections that combine high TCP Window with higher latency (high BDP), these algorithms do not increase the TCP windows fast enough to fully utilize the bandwidth of the connection. Compound TCP (CTCP) is a newer method, available in Vista and Server 2.
XP x. 64 and 2. 00. Server - MSKB 9. 49. CTCP increases the TCP send window more aggressively for broadband connections (with large RWIN and BDP). CTCP attempts to maximize throughput by monitoring delay variations and packet loss. It also ensures that its behavior does not impact other TCP connections negatively. By default, Vista and Windows 7 have CTCP turned off, it is only on by default under Server 2.
Turning this option on can significantly increase throughput and packet loss recovery. To enable CTCP, in elevated command prompt type: netsh int tcp set global congestionprovider=ctcp. To disable CTCP: netsh int tcp set global congestionprovider=none. Possible options are: ctcp, none, default (restores the system default value). Recommended setting: ctcp. It is better to use this newer generation CTCP congestion control algorithm for most broadband connections, we highly recommend it being turned on.
ECN Capability. ECN (Explicit Congestion Notification, RFC 3. It is aimed to decrease retransmissions.
In essence, ECN assumes that the cause of any packet loss is router congestion. It allows routers experiencing congestion to mark packets and allow clients to automatically lower their transfer rate to prevent further packet loss. Traditionally, TCP/IP networks signal congestion by dropping packets. When ECN is successfully negotiated, an ECN- aware router may set a bit in the IP header (in the Diff. Serv field) instead of dropping a packet in order to signal congestion. The receiver echoes the congestion indication to the sender, which must react as though a packet drop were detected. ECN is disabled by default in Vista and other modern TCP/IP implementations, as it is possible that it may cause problems with some outdated routers that drop packets with the ECN bit set, rather than ignoring the bit.
To check whether your router supports ECN, you can use the Microsoft Internet Connectivity Evaluation Tool. The results will be displayed under "Traffic Congestion Test". To change ECN, in elevated command prompt type: netsh int tcp set global ecncapability=default. Possible settings are: enabled, disabled, default (restores the state to the system default). The default state is: disabled.
Recommendation: enabled (only for short- lived, interactive connections and HTTP requests with routers that support it, in the presense of congestion/packet loss), disabled otherwise (for pure bulk throughput with large TCP Window, no regular congestion/packet loss, or outdated routers without ECN support). Notes: ECN is only effective in combination with AQM (Active Queue Management) router policy.
It has more noticeable effect on performance with interactive connections and HTTP requests, in the presence of router congestion/packet loss. Its effect on bulk throughput with large TCP Window are less clear. Currently, we do not recommend enabling this setting, as reportedly it has negative impact on throughput with some residential US ISPs. EA multiplayer games that require a profile logon do not support ECN as well (you will not be able to logon). However, it can also reduce latency in some games with ECN- capable routers in the presence of packet loss (dropped packets). More information on ECN: Explicit Congestion Notification (ECN) for TCP/IPRSS - Receive- side Scaling.
The receive- side scaling setting enables parallelized processing of received packets on multiple processors, while avoiding packet reordering. It avoids packet reordering y separating packets into "flows", and using a single processor for processing all the packets for a given flow. Packets are separated into flows by computing a hash value based on specific fields in each packet, and the resulting hash values are used to select a processor for processing the flow. This approach ensures that all packets belonging to a given TCP connection will be queued to the same processor, in the same order that they were received by the network adapter. To set RSS: netsh int tcp set global rss=enabled.
Possible rss settings are: disabled, enabled, default (restores rss state to the system default). Default state is: enabled.
Recommended: enabled (if you have 2 or more processor cores and a NIC that can handle RSS)In Windows Server 2. RSS to be enabled and to use a maximum of four CPUs.
While this is usually enough, administrators can adjust the maximum number of RSS processors by setting the Max. Num. Rss. Cpus registry value in HKLMSystemCurrent. Control. SetServicesNDISParameters.