What happens when you type holbertonschool.com in your browser and press Enter?
We have all been using technological devices most of our lives and mostly nowadays with the remote working or classes due to the covid issue, but have you ever thought about what it actually happens on your device when you search something on the internet? That’s exactly what i’m going to be explaining in this blog, with simple words and going straight to the point.
DNS Request and IP
First of all, you have to know that every device that uses internet communicates using an IP address which looks something like 126.96.36.199. Each device connected to a computer network is label with one of those, every single website you visit on the internet has an IP address (Internet Protocol Address). Humans will never memorize those number for every single page they visit, it is a lot easier to just type the name www.holberton.com which you will easily remember for future times.
But, what does www.holberton.com has anything in common with 188.8.131.52? Well, here it’s where DNS (Domain Name System) comes. It can be seem as many different ways but i’ll explain it in the most easier ones. The first way it can be seem is as a translator, we all know a translator can translate (obviously) from one language to another. So basically, DNS translates the words we type of the name of the domain we want to access to, into the large number of the IP address we will never memorize. The second way might be easier to understand if you’re familiar with the term “alias”. There are actually many different ways to use the term “alias”, but at the end they all have the same meaning, which is to relate a name or command with another word. Therefore, the DNS are the words we put as an alias of the IP, meaning that it doesnt matter if we put the DNS or the IP, we will always get the same website.
However, if you want to go further into the information about DNS, i’ll explain it in this paragraph in not so simple words. DNS searches for the IP address in different places such as browser cache, operative system cache, resolver (internet sever provider) and root name servers (.com, .co, .org, .edu). Then when the DNS finds the IP is when it will appear the webpage you were expecting whe you pressed ‘Enter’.
Let’s now clear up some concepts of what composes a webpage:
As we mentioned before, IP address means Internet protocol and it is the way to identify devices on Internet. Now we have TCP, which stands for Transmission Control Protocol.
Protocol: Network protocols are sets of established rules that dictate how to format, transmit and receive data.
In few words a firewall is a network security system in charge of monitoring an control incoming and outgoing network traffic based on predetermined security rules. In simple word is a guard who checks everyone who comes in and out of a building, telling who can or can’t go in depending on the politics of the building.
HTTPS (Hyper Text Transfer Protocol Secure) isthe primary protocol used to transfer data between a web browser and a website, in encrypted ways to secure data transfer. Then we have SSL (Secure Socket Layer) which is a protocol to establish authenticated and encrypted links between networkes computers.
In conclusion, HTTPS/SSL creates a security for the user to navigate with no problem inside the websites, knowing that his information is in safe hands. But how would they know it is a safe website? If the link of the website they are in starts with https, or if it has a lock which is actually easier to realize the moment you see it.
The Load balancer is the one in charge to receive the requests and depending on how it is configured will “balance” the requests into the different web servers there are.
The request normally goes straight to the server with the information. But, if we have 3 servers and many users are requesting a page, then it will make no sense if all the requests goes only to the server one. Here’s where the Load Balancer acts and distributes the requests into the different servers.
A Web server is a software or hardware that uses HTTP (Hypertext Transfer Protocol) and other protocols to respond to client requests made over the World Wide Web (WWW) which is something you clearly have seen but had no idea what it means. Web server software controls how a user accesses hosted files. It is accessed through the domain names of websites and ensures the delivery of the site’s content to the requesting user.
Following the simple and basic definitions, aplicatin server is a server (obviously) which hosts applications.
A database is an organized collection of data, generally stored and accessed electronically from a computer system. Which might be a term most people might already know no matter what they have studied.
a structured set of data held in a computer, especially one that is accessible in various ways.