Winsock TCP maxsynretransmissions

Gao, Chao 0 Reputation points
2023-04-03T13:01:37.3733333+00:00

Hello,

I was inspecting TCP delay and found something not very correct.

In my Windows 10 the default settings for SYN retransmission is "Initial RTO=1000" and "Max SYN retransmissions=4". In this case we should get 1+2+4+8+16=31 seconds time-out after 4 retransmissions. But, the actual timeout is only 21 seconds.

If I set "Max SYN retransmissions=3" and "5", I got correct time delay as 15 and 63 seconds respectively.

Here is the batch file I ran to test it.

@echo Started: %time%

@echo off

telnet 10.10.10.10

@echo on

@echo Completed: %time%

Is this a small bug?

regards,

CHAO GAO

Not Monitored
Not Monitored
Tag not monitored by Microsoft.
42,607 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. matejlabudic 0 Reputation points
    2025-03-11T20:37:13.2166667+00:00

    The default settings for SYN retransmission used to be InitialRTO=3000 and MaxSynRetransmissions=2 which results in total timeout being 3+6+12=21 sec.

    Ever since Microsoft changed the defaults to be InitialRTO=1000 and MaxSynRetransmissions=4 this specific combination results in 21 sec timeout, instead of being 31 sec.

    Both Windows 10 and Windows 11 are affected, although I could not find which builds this was changed in, but seems to be the case for at least 5 years now.

    If anyone has additional input on this, it would be much appreciated.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.