How does Browser Opens any Website
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..