The process of an Internet Search
Have you ever wondered what really happens when you type a URL (Uniform Resource Locator) into a web browser? For instance, when you write www.google.com on any web browser, you will get a page similar to the one above. This blog walks readers through each stage of what happens when you type google.com and hit Enter.
When you search for www.google.com on your browser, a series of events occur that ultimately lead to the display of the Google homepage on your screen. These events involve several different components, including DNS request, TCP/IP, firewall, HTTPS/SSL, load-balancer, web server, application server, and database.
The first step in the process is a DNS request. When you type in the URL, your browser sends a request to the Domain Name System (DNS) to find the IP address associated with the domain name "google.com". The DNS server looks up the IP address in its database and returns it to your browser. This is necessary because websites are hosted on servers, which have unique IP addresses, and without the DNS, the browser would not know where to send the request.
Once the browser has the IP address, it uses the TCP/IP protocol to establish a connection with the web server. TCP/IP stands for Transmission Control Protocol/Internet Protocol. It is a set of communication protocols that are used to connect different devices on a network, such as computers and servers. TCP is responsible for establishing a connection between devices, breaking down data into smaller packets and ensuring that the packets are delivered to the correct destination. It does this by using a system of acknowledgements and retransmissions commonly referred to as three-way handshake. When a packet is sent, the receiving device sends an acknowledgement back to the sender, indicating that it has received the packet. If the sender does not receive an acknowledgement, it retransmits the packet. IP is responsible for addressing and routing packets on a network. It assigns a unique IP address to each device on the network, which is used to identify the device and send packets to it. It also uses routing tables to determine the best path for a packet to take to reach its destination.
Together, TCP and IP work together to ensure that data is transmitted reliably and efficiently between devices on a network. They are the foundation of the internet and are used by all devices that connect to the internet.
The next step is passing through the firewall. A firewall is a security system that controls access to a network, protecting it from unauthorized access and potential security threats. It uses a set of rules and policies, as well as different security techniques, to control access to the network and ensure that it is protected from potential security threats. The firewall checks to see if the incoming request is allowed and if it is, it sends the request through to the web server.
Recommended by LinkedIn
Once the request has passed through the firewall, it reaches the web server. The web server is a computer that is responsible for handling incoming requests and sending back the appropriate response. It is typically run on powerful computers that are capable of handling large numbers of requests simultaneously and can be configured to handle different types of requests and use different protocols. Web servers also can be configured with additional security measures to ensure that the server is protected from potential security threats and that the data being transmitted is secure. In the case of Google, the web server is responsible for handling millions of requests every day.
The web server then forwards the request to the load-balancer. As the name suggests, the load-balancer balances the load. It distributes incoming requests among multiple servers. This is necessary to ensure that the web server can handle the large number of requests it receives.
The load-balancer then sends the request to the appropriate application server. The application server is a computer that runs the software that is necessary to process the request and generate the appropriate response. In the case of Google, the application server is responsible for generating the HTML (Hypertext Markup Language) code that is sent back to the browser to display the webpage.
Finally, the application server may also access a database to retrieve any necessary information. The database is a collection of data that is stored on a computer and can be accessed by the application server. In the case of Google, the database may be used to retrieve information about a user's search history or to retrieve information about a specific webpage.
In conclusion, when you look up "https://www.google.com" in your web browser, a series of events occur that involve several different components. These include DNS request, TCP/IP, firewall, HTTPS/SSL, load-balancer, web server, application server, and database. Together, these components work together to ensure that the request is handled quickly and efficiently, and that the appropriate response is sent back to the browser to display the webpage.