Microsoft have implemented their own homemade congestion provider as an
alternative to the standard TCP congestion provider. It is called
Compound TCP (CTCP) and attempts to help certain connection types where
TCP Slow Start takes forever:
TCP slow start is a way to probe the network connection, where one "slowly" increases the TCP Send Window as one verifies that the network connection can handle it. If retransmissions are required then it will slow down the growth of the TCP Send Window. If having a high bandwidth and high latency connection, then it might take an hour or more for TCP to make use of the full bandwidth. CTCP allows the TCP Send Window to grow faster, even if retransmissions are needed, but only if it detects that network connection can handle it.
To change the congestion provider to CTCP (default on Windows 2008):
- High bandwidth connections requiring very large receive windows (RWIN)
- Lossy connections requires lots of retransmission if the RWIN is too large.
TCP slow start is a way to probe the network connection, where one "slowly" increases the TCP Send Window as one verifies that the network connection can handle it. If retransmissions are required then it will slow down the growth of the TCP Send Window. If having a high bandwidth and high latency connection, then it might take an hour or more for TCP to make use of the full bandwidth. CTCP allows the TCP Send Window to grow faster, even if retransmissions are needed, but only if it detects that network connection can handle it.
To change the congestion provider to CTCP (default on Windows 2008):
netsh interface tcp set global congestionprovider=ctcpTo revert the congestion provider to default TCP (default on Windows Vista):
netsh interface tcp set global congestionprovider=none
No comments:
Post a Comment