What happens when you type https://www.holbertonschool.com in your browser and press Enter?
https://unsplash.com/photos/SYTO3xs06fU

What happens when you type https://www.holbertonschool.com in your browser and press Enter?

Daily you visit webpages in a web browser on your computer or phone, but do you really know what's happening in the background?

The devices you are using to connect Internet (for example, your computer connected to your Wi-Fi, or your phone connected to your mobile network) and the web-accessing softwareare (Chrome, Firefox, Safari) are called clients and the computers that store webpages, sites, or apps are called servers, in this order of ideas when a client device wants to access a webpage, a copy of the webpage is downloaded from the server onto the client machine to be displayed in the user's web browser.

No hay texto alternativo para esta imagen

The user enters the URL in his favorite web browser and expect to see the content of the page but what's going on behind, how works the intermediate process between the server where the website is stored and the client?

No hay texto alternativo para esta imagen
No hay texto alternativo para esta imagen

(DNS) - Where is the website that I am looking for?

There are currently millions of servers in the world, that are identified by a unique IP (Internet Protocol) address, https://www.holbertonschool.com is not an IP is a domain name, the IP is something like 54.88.73.204 .

Domain Name System (DNS) is the phonebook of the Internet. We access information online through domain names, because it's easier for us to remember that, than a long number, DNS translates domain names to IP addresses so browsers can load Internet resources.

No hay texto alternativo para esta imagen

The browser sends an HTTP request message to the server, asking it to send a copy of the website to the client (you go to the shop and order your goods). This message, and all other data sent between the client and the server, is sent across your internet connection using TCP/IP.

(TCP/IP) - Data traveling on the web?

Transmission Control Protocol and Internet Protocol are communication protocols that define how data should travel across the web. TCP/IP specifies how data is exchanged over the internet by providing end-to-end communications that identify how it should be broken into packets, addressed, transmitted, routed and received at the destination. TCP/IP requires little central management, and it is designed to make networks reliable, with the ability to recover automatically from the failure of any device on the network.

If the server approves the client's request, the server sends the client a "200 OK" message, which means "Of course you can look at that website! Here it is", and then starts sending the website's files to the browser as a series of small chunks called data packets.

(Firewall) - Not all connections are allowed

A firewall is a network security device that monitors incoming and outgoing network traffic and decides whether to allow or block specific traffic based on a defined set of security rules.

Firewalls have been a first line of defense in network security for over 25 years. They establish a barrier between secured and controlled internal networks that can be trusted and untrusted outside networks, such as the Internet. 

A firewall can be hardware, software, or both.

(HTTPS/SSL) - Safety first!

HTTPS (Hyper Text Transfer Protocol Secure) appears in the URL when a website is secured by an SSL certificate. The details of the certificate, including the issuing authority and the corporate name of the website owner, can be viewed by clicking on the lock symbol on the browser bar.

SSL stands for Secure Sockets Layer and, in short, it's the standard technology for keeping an internet connection secure and safeguarding any sensitive data that is being sent between two systems, preventing criminals from reading and modifying any information transferred, including potential personal details. The two systems can be a server and a client (for example, a shopping website and browser) or server to server (for example, an application with personal identifiable information or with payroll information).

Load-balancer

Acts as the “traffic cop” sitting in front of your servers and routing client requests across all servers capable of fulfilling those requests in a manner that maximizes speed and capacity utilization and ensures that no one server is overworked, which could degrade performance. If a single server goes down, the load balancer redirects traffic to the remaining online servers. When a new server is added to the server group, the load balancer automatically starts to send requests to it.

Web server

A web server stores and delivers the content for a website – such as text, images, video, and application data – to clients that request it. The most common type of client is a web browser program, which requests data from your website when a user clicks on a link or downloads a document on a page displayed in the browser.

Application server

A Web Server will send the HTML as output for all requests sent to the server. It does not have any backend logic.

But, Application server is where complex and large applications reside. It can have backend logic and makes the application dynamic by interacting with the Database servers. Application deployment happens on the application server. An application server can also handle the services and requests which a web server can handle. This means that there is an in-built web server in application servers.

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.

Data within the most common types of databases in operation today is typically modeled in rows and columns in a series of tables to make processing and data querying efficient. The data can then be easily accessed, managed, modified, updated, controlled, and organized. Most databases use structured query language (SQL) for writing and querying data.

At the end the browser assembles the small chunks into a complete website and displays it to you.


要查看或添加评论,请登录

Emma Juliana Gachancipá Castelblanco的更多文章

社区洞察

其他会员也浏览了