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

Mike Mbea
5 min readSep 5, 2021

When we are navigating in the internet we type names to get web pages, we simply type an address and our screen changes to display data contained in a page but most of the people navigating don’t know the process behind of getting a web page.

To understand what is behind of typing a name in the browser and pressing enter, it’s necesary to talk about the concepts that are involved in this process.

DNS request.

When we type an address in the browser bar and press enter key, basically we are asking a server for information (you can imagine a server like a computer storing data). The DNS (The Domain Name System) is a server that stores all the information related with the domain names in the internet. All devices connected to the internet have an unique IP (internet protocol) that facilities the communitation between them; if DNS servers did not exist we couldn’t search Holberton school page by only typing www.holbertonschool.com but we would need to type the IP address of the server that stores the holberton page and IP addresses could be long sequences of numbers hard to remember.
DNS servers eliminate the need for us to memorize IP addresses, they are the phonebook of the Internet.

After pressing enter key to holbertonschool.com in the browser a DNS request is sent and we are asking the server to search the IP address corresponding to that domain name

TCP/IP.

TCP/IP, or the Transmission Control Protocol/Internet Protocol, is a suite of communication protocols used to interconnect network devices on the internet and allow the transmission of data. It’s based on the internet protocol (IP) and on the transmission control protocol (TCP) and also allow to link computers on the internet with differents operative systems.
In this model exist four abstraction layers for the communication between the devices:

Process/Application Layer:
Is the first layer of the model and offers the possibility of physical access to the network, and specifies the way in which information should be routed regardless of the type of network used.

Host-to-Host/Transport Layer:
This layer provides the datagrams and the management of the Ip adresses. Datagrams constitute the minimum information in a network, they are data packets. This layer is consider the most important and involves protocols such as IP,ARP, ICMP, IGMP y RARP.

Internet Layer:
This layer can be compared with the network layer of the OSI model, here is carried out the error-free transmission of data packets.

Network Access/Link Layer:
This is the last layer of the TCP/IP model and is also called a network access layer. In this layer is defined details of how data should be sent using the network.

Firewall.

Firewalls are network security systems that monitors and controls the incoming and outgoing network traffic. The main objective of firewalls is to protect individuals computers, servers or devices connected to the internet of non-desired accesses, this non-desired accesses are those which could to steal or to put in risk private information.

HTTPS/SSL.

HTTP(Hypertext transfer protocol) is the protocol of transfer of information that allows the communication in the web. When we type an URL in the browser, for example: https://www.holbertonschool.com, we are performing an HTTP request. HTTPS ( Hypertext Transfer Protocol Secure) is an extension of HTTP protocol, this protocol allows the secure communication through the web since the information that is transfer is encrypted. SSL (Secure Sockets Layer) It’s a protocol that uses digital certificates to establish secure communications over the internet because of the information is hidden through cryptographic methods. Banks, online stores and services that requires to store private information need a SSL certificate.

Load balancer.

A load balancer is a server that efficiently distributes the petitions from clients to servers. for example, so holberton school page can works efficiently when many students try to access, the page needs several servers that contain copies of the page so that the traffic can be distributed among them. load balancers are those that distribute requests equally so that the site can function efficiently, if only one server received all requests, the page would not work since only one server cannot process all requests at once.

Web server.

A web server can be understood as a server that uses HTTP to give web pages to clients as a response of a petition. In a web server are contained all components that form the web page like HTML, CSS and javascript files. We can access to a web server through the domain names of websites and this allow the delivery of the content of the site.

Application server.

Application servers are also known as appservers. In application servers are contained the code responsible of generate dynamic HTTP content. This is one aspect that makes a difference between web and app server, while web server content and generates static content, app server generates dynamic content.

Database.

Basically, databases are the data containers of the webpages, here is where the information of all user registered in a website is stored and organized and can look like this:

--

--