Today I encountered an error on SQL Server Management Studios when remotely connecting to MS SQL Server 2014 hosted on Windows Server 2012 R2. One of the detailed messages was as follows:
"Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement. This could be because the pre-login handshake failed or the server was unable to respond back in time. The duration spent while attempting to connect to this server was - [Pre-Login] initialization=13412; handshake=16760; (.Net SqlClient Data Provider)"
I looked up for the web and none of the solutions provided a fix. Some of them mentioned enabling and activating the TCP/IP protocol from the SQL server Configuration Manager on the server. I tried to connect to the server using IP address, but it didn't help. At the end while playing with some of the connection options on SSMS, the setting that did the trick was by selecting theNamed Pipes option from the Network Protocol. I hope this post will be of some help for anyone running into the same problem.