Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2
|Data type||Range||Default value|
0–0x3FFFFFFF (1073741823 decimal) bytes
Sets the maximum size of the TCP receive window. The receive window specifies the number of bytes that a sender can transmit without receiving an acknowledgment. In general, larger receive windows improve performance over high-latency, high-bandwidth networks. For greatest efficiency, the receive window should be an even multiple of the TCP Maximum Segment Size.
The TCP/IP stack of Windows Server 2003 was designed to tune itself in most environments. Instead of using a fixed size for the receive window, TCP negotiates for and adjusts to an even increment of the maximum segment size. Matching the receive window to even increments of the maximum segment size increases the percentage of full-sized TCP segments used during bulk data transmission. (Sizes larger than 64 KB can be achieved only when connecting to other systems that support RFC 1323 Window Scaling.)
The default value is the smaller of the following numbers:
Value of registry entry GlobalMaxTcpWindowSize
Four times the MSS on the network
Even multiple of the MSS larger than 16384
This entry does not exist in the registry by default. You can add it by using the registry editor Regedit.exe.
You must restart the computer for changes to this entry to take effect.
The default window size can start at 17520 for Ethernet, but may shrink slightly when a connection to another computer is established that supports extended TCP options (such as SACK and TIMESTAMPS) because these options increase the TCP header beyond the usual 20 bytes, which decreases room for data.
When an entry with the name of this entry is in HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters, it sets the receive window size globally for all TCP interfaces. However, an entry with this name is in HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface-name has precedence for the interface named in its registry path, and its value, rather than whatever value might be set globally, is used for that interface.