How does Browser Opens any Website

aditya goel
3 min readJan 21, 2023

Question:- What happens when someone types-in some URL into the Browser ?

Answer → Following are the steps being followed, whenever someone types-in some URL into the Browser :-

Step 1.) Client enters the URL into the Browser.

Step 2.) Browser needs to know, how to reach to the Server (In this case → example.com). This is done using the process of DNS-LookUp. Basically, objective here is to find the IP-Address of the server.

Step 3.) Browser then establishes the TCP-connection with the Server, using the IP-address it got.

Step 4.) Browser now sends HTTP request to the Server, over the established TCP-connection.

Step 5.) Server processes the request & sends back the response.

Step 6.) Browser now reads the response & finally renders the content.

Question:- What are various components of the URL ?

Question:- Explain a bit about the process of DNS ?

  • DNS stands for Domain Name System. DNS is Phonebook of Internet.
  • DNS helps to translate the domain name to the IP-Address of the server, so that Browser can know the resources.

Question:- Explain the process of DNS-LookUp ?

Answer → This process is an elaborate and elegant process. DNS information is heavily cached at various places :-

  • First, Browser checks for this information from its own caches for a short period of time.
  • Next step, if the DNS mapping is not being found, then it checks with the Machine’s Operating-System which also caches this information for a short period of time.
  • Next, if the DNS mapping is still not being found from the OS’s cache, then Browser makes a query out to the Internet to a DNS-Resolver. This further sends out the chain of requests, until the DNS-mapping is being found. This step involves many servers in the DNS Infrastructure.

Finally, the Browser has the IP-address of the server. This has been shown above in step-2nd of image above.

Question:- Explain how does the TCP Connection established ?

Answer → This is again an detailed and complex process :-

  • There is a handshake involved in establishing the process of TCP-Connection. It takes several network-round-trips , in order for this process to complete.
  • In order to make this process faster, modern browsers uses something called as Keep-Alive-Connection, to try to reuse & establish TCP connection to the Server as much as possible.
  • If the connection to be established is HTTPS, then the process to establish connection is even more complex. It requires SSL-TLS-Handshake, to establish encrypted connection between the Browser & Server.
  • This Handshake is expensive and therefore the Browsers uses techniques like SSL-Redemption, to try to lower the cost.

Finally, the Browser is able to establish a TCP-Connection with the Server. This has been shown above in step-3rd of image above.

That’s all in this blog. If you liked reading it, do clap on it. We shall see you in next document..

--

--

aditya goel

Software Engineer for Big Data distributed systems