What happens when you type google.com in your browser and press Enter

Katherin Gomez
5 min readFeb 21, 2024

When you enter your browser and enter a web page on the internet, have you ever stopped to think how can I do it? Knowing how the interconnection between electronic devices can happen nowadays is very fascinating.

To understand how these connections between devices occur, let’s first review the basic concepts.

Internet

It is common to confuse the term network and internet, but these are different concepts.

Networks are local connections between a device and an internet router, for example the connection between your computer or mobile phone and your router.

Internet is a set of globally interconnected devices, basically every device connected through a network makes up the internet. This makes it really complicated, there are too many processes and agents (internet providers, browsers, among others…) that must be organized for everything to work properly. This is what the TCP/IP model takes care of.

TCP/IP Model

The TCP/IP model standardizes the sending of information over the Internet from one device to another, so that regardless of the hardware (computer, cell phone) or agent operation is always the same, for this it uses five layers that provide abstraction and protocols that establish a set of agreed rules.

This model is the one currently used, it is an evolution of the OSI model. It is important not to confuse the TCP/IP model with the TCP and IP protocols (which are in layers 4 and 3 respectively).

Client/Server

The device you are currently viewing is presenting you with content, this blog, but where is this information coming from?

To browse the Internet, two actors are needed, one that requests the information (the browser) and another that contains this information (the server), this scheme is known as the client/server model.

Server

The server is a computer or a set of computers and software that serve and respond to requests from a client, these are usually stored in a data center or places dedicated to providing this service.

DNS

When you enter in the search bar of your browser you can see a URL like https://www.google.com Have you ever wondered what that bunch of letters is, it’s known as a domain name and is made up of:

⦁ Scheme

Set the type of protocol used for communication between your browser and the web server, in this case HTTPS (Hyper Text Transfer Protocol Secure) is used, this encrypts the information transmitted in a secure way through the SSL protocol.

There is also the HTTP protocol which does not encrypt the information so its transmission is done in a non-secure way, exposing data that can be easily intercepted. Can you imagine your banking information transmitted this way on the internet; chances are that by the time you finish reading this article it will be empty.

Depending on the protocol, a port is set that directs communication to the appropriate application on the web server. The default port for HTTPS is 443 and for HTTP it is 80.

⦁ Subdomain

A subdomain is an autonomous extension of a domain name.

⦁ Name

It is an identifier of a company or person, basically generates a general idea of the website, it would be something like your name.

⦁ Extension/TLD

This is granted according to the type of activity that the web page performs, for example: .org indicates that it belongs to a non-governmental organization, .edu to an educational establishment or .co normally to a commercial company, among others.

When you tell the browser to take you to the URL, it has to do a series of steps.

1 — Domain name to IP address translation

For us it is easier to remember a text string such as the domain name, however, numbers are a more optimal way to perform queries because they minimize errors; under these needs a mechanism was created that allows the customer face to present the addresses as letters https://www.google.com but facing the web as numerical sequences known as IP addresses.

The IP address indicates the location of a particular server on the Internet, this translation is responsible for the DNS servers, these contain a database that relates domain names with IP addresses, for example if you put in your browser the domain name DNS -> https://www.google.com/ or Ip ->172.217.30.196 will take you to the same place.

The browser obtains the IP address from the DNS servers, through a resolution process.

2 — Make request to the web server

Once the browser knows the address of the web server it must establish a communication to obtain the information the user is requesting so it uses HTTP requests/response.

HTTP requests/response is an asymmetric communication between the client (browser) and the server (Web server). Broadly speaking, it works like this: the browser sends the URL through a request message for the server to interpret and the server returns a response according to the result, with the requested resource or an error message, then the browser interprets the message and displays the content on the screen.

Normally when you are accessing very large services like Google, these are hosted on multiple servers at the same time, in order to process all the requests that many users around the world are doing at the same time; to orchestrate all these requests load balancers servers are used, but before these requests need to be filtered to reduce the possibility of vulnerabilities, for this we use the firewall.

Firewall

They are a set of security rules that monitor incoming and outgoing communication on a network, allowing or denying traffic on the same, this is used on servers to mitigate security vulnerabilities.

Load balancer

It allows to control and distribute the requests between the different systems such as: web servers, databases, among others, balancing the loads to respond to a large number of requests. Also if any system is out of service the load balancer redirects the requests to another server allowing to provide a timely response.

3 — Consult information

Once the request is filtered by the load balancer’s firewall the request is directed to a server which first checks it through its firewall and then interprets it. There are different types of servers, but in this case we are going to see two.

Web server

It is a physical computer or software whose main purpose is to serve the static content (Html, css, Javascript, images, among others) of a website to respond to the requirements made through the HTTP protocol.

Application server

It is a physical computer or software that is used to run applications which generate dynamic content, ie code, which allows to transform the data to meet the functionality of the application, this may include web servers and work in conjunction with them.

Nowadays these differences are becoming more and more blurred, you can read this interesting article from IBM that describes this situation in a clear way.

Database

A database is an organized collection of structured information, or data, typically stored electronically in a computer system. A database is usually controlled by a database management system (DBMS). Together, the data and the DBMS, along with the applications that are associated with them, are referred to as a database system, often shortened to just database.

Thank you for your time, if you find any technical or grammatical error I would appreciate it if you let me know in the comments.

--

--

Katherin Gomez

Passionate Software Engineer with +2 years of experience applying problem-solving through software development in data engineering and cybersecurity.