Typically three steps are required to establish a connection to an HTTP server: DNS lookup: finding the server IP address based on the domain name TCP connection: enabling reliable communication TLS/SSL connection: enabling secure encrypted communication After that HTTP requests can be made to request resources from the server.