Microsoft is committed to improving its Windows Transmission Control Protocol and will soon roll out a series of improvements to this platform via the upcoming Anniversary Update. These improvements have two main goals: increase TCP startup speed and decrease time to recover from packet loss.
The TCP update for Windows 10 and Windows Server 2016 includes five new features:
- TCP Fast Open (TFO) for zero RTT TCP connection setup
- Initial Congestion Window 10 (ICW10) by default for faster TCP slow start
- TCP Recent ACKnowledgment (RACK) for better loss recovery
- Tail Loss Probe (TLP) for better Retransmit TimeOut response
- TCP LEDBAT (Windows Low Extra Delay BAckground Transport) for background connections
More specifically, TCP Fast Open generates a TFO cookie during the first three-way handshake (3WH) connection setup to achieve a zero RTT connection setup time. All the subsequent connections to the same server can use the TFO cookie to connect in zero-RTT.
TFO is one full Round Trip Time (RTT) faster than the standard TCP setup which requires a three way-handshake. This leads to latency savings and is very relevant to short web transfers over the Internet where the average latency is on the order of 40 msec.
The Initial Congestion Window 10 default value in Windows 10 and Server 2012 R2 is 4 MSS. Once the new improvements are rolled out, the default value will be 10 MSS.
This change in Windows TCP’s startup behavior designed to keep pace with the increased emission rates of network routing equipment used on the Internet today. The ICW determines the limit on how much data can be sent in the first RTT. Like Windows TFO, IW10 mostly affects small object transfers over the Internet. Windows IW10 can transfer small Internet objects up to twice as quickly as ICW4.
The new TCP Recent ACKnowledgment feature uses the notion of time instead of counting duplicate acknowledgments to detect missing packets for TCP Fast Recovery. A packet is considered lost if it was sent “sufficiently later” and has been cumulatively or selectively acknowledged.
The new Tail Loss Probe improves Windows TCP’s behavior when recovering from packet loss. TLP converts Retransmit TimeOuts (RTOs) into Fast Retransmits for much faster recovery.
TLP transmits one packet in two round-trips when a connection has outstanding data and is not receiving any ACKs. The transmitted packet (the loss probe), can be either new or a retransmission. When there is tail loss, the ACK from a loss probe triggers SACK/FACK based fast recovery, thus avoiding a costly retransmission timeout.
The TCP LEDBAT feature is aimed at enabling background transport that does not interfere with other TCP connections.
Windows LEDBAT is implemented as an experimental Windows TCP Congestion Control Module (CCM). Windows LEDBAT transfers data in the background and does not interfere with other TCP connections. LEDBAT does this by only consuming unused bandwidth. When LEDBAT detects increased latency that indicates other TCP connections are consuming bandwidth it reduces its own consumption to prevent interference.
RELATED STORIES YOU NEED TO CHECK OUT:
- Microsoft’s System Center 2016 and Windows Server 2016 Technical Preview bring better data center control
- Microsoft releases 2016 edition of Windows developer virtual machines
- Download and install Sysinternals on Windows 10