TCP window scale option

The TCP Receive Window (Size ), also briefly RWin or Window, English for " receive window (size ) " is next to the Maximum Segment Size (MSS ) is a parameter that controls the function of the network protocol Transmission Control Protocol (TCP). It describes the maximum amount of data that can receive a computer without having to confirm data. Conversely, it is therefore the maximum amount of data that can be sent to a computer without an acknowledgment ( TCP ACK, of Engl. Acknowledgment = acknowledgment) of the recipient to have to wait. This ensures that the receive memory (buffer ) of the receiver does not overflow, because it never receives data at a time when he has allowed the transmitter by sending its current receive window size. Only when the recipient data confirmed (and thus removed from the buffer ) is, the transmitter sends the next data.

At a reception window too low, then the transmitter must often wait for acknowledgment packets to send back can, while a larger receive window the transmitter allows a more continuous transmission. To this must be an error occurs, ie when not transmitted or erroneous packets, a larger amount data to be retransmitted, namely all already sent but not yet acknowledged by the receiver data, the maximum receive window size. For very poor network quality can therefore be performant a smaller size of the receive window.

In addition, the receive window size determines, together with the Round Trip Time (RTT ) between the transmitter and receiver the theoretical data throughput rate equal to the quotient of two quantities.

The optimal value

Promise Various magazines and manuals in Internet forums to get more speed from about a DSL connection by " tuning" of RWin and some other values ​​. In practice, the achievable acceleration - except for older operating systems with a very broad band connections - often negligible, since the fixed predefined or automatically determined by the operating system since Windows Vista default value for common applications is adequately dimensioned.

In Microsoft Windows 9x, Me, and NT the receive window was enabled by default 8 kilobytes. Windows 2000 and XP reserve 16 kilobytes. Since Windows Vista and Windows Server 2008, the receive window size is determined automatically based on the connection type and quality, and can be up to 16 megabytes there. This " auto-tuning " called behavior can be switched off.

By 2006, the German Telekom recommended a RWin value of 16 or 32 kilobytes size for T- DSL connections. For modem and ISDN connections, the value should not exceed 8 kilobytes.

Upper limit

To fully utilize the packet lengths, and to avoid IP fragmentation, generally an integral multiple of the maximum is segment size (MSS ) is recommended, and therefore often given the value only as a factor for the receive window. The MSS turn corresponds to the maximum transmission unit (MTU) minus 40 bytes for the IP and TCP header ( IPv6 60 bytes ), so that when an MTU of for example 1492 bytes ( standard for most Internet service provider), the MSS is 1452 bytes.

16 bits in the TCP header to the RWIN value are provided, which corresponds to a maximum of 65,535 bytes. As the largest integer multiple that is less than this limit, a maximum RWin value of 44 × 1460 = results, for example for Ethernet with an MTU of 1500 bytes and typically a corresponding MSS of 1460 bytes 64 240 bytes. For ADSL connections, which reduce the segment size according to PPP over Ethernet to 8 bytes, a maximum RWin value of 45 × 1452 = 65,340 bytes of results accordingly.

TCP Window Scale option

RFC 1323 describes a TCP Window Scale option (short window scaling, English for " Window Scaling " ) called extension of the TCP header, which makes it possible to multiply the RWin value by a factor of up to 214 and thus to a maximum of 1 gigabyte increase. In Microsoft Windows, this option is enabled for Windows 2000 available as an option and for Windows Server 2008 by default, but limited to 16 megabytes. The option is to connecting clients and works only if it is supported by both sides.

698689
de