[#1036] Use SocketTimeoutException when a connection timeout is detected to make it easier to detect timeout vs refused