What happens when you type "https.://www.google.com" in your browser and press "Enter"
Day by day, we enter several web pages to consult information, to look for entertainment, to carry out some procedure, among other things. For most users, just typing an address in the address bar and having the browser show them the page, but actually, in the process, unnoticed by the user and within fractions of a second, the browser goes into contact with servers located in all parts of the world, consult there the stored data packets and deliver a web page to the screen of the device.
Next we will see what will happen in the course of this process and we will name some points through which the information passes:
The first thing I am going to explain is the DNS service, when a user accesses a distributed Internet service using a URL, the domain name in the URL is translated to the IP address of a server that is close to the user. The key functionality of DNS exploited here is that different users can simultaneously receive different translations for the same domain name, a key point of divergence from a traditional phone book view of DNS. For example, the domain name www.example.com translates to the addresses 93.184.216.34 (IPv4) and 2606:2800:220:1:248:1893:25c8:1946 (IPv6).
TCP/IP
Earlier we talked
about how domain names represent IP addresses , but IP is not the only type of
protocol used by the Internet. We'll talk a little bit about TCP/IP, which
stands for Transmission Control Protocol, which in turn also contains other
types of protocols.
This model allows a
reliable data exchange within a network, defining the steps to follow from when
the data is sent (in packets) until it is received. To achieve this, it uses a
system of layers with hierarchies (a layer is built after the previous one)
that communicate only with its upper layer (to which it sends results) and its
lower layer (to which it requests services).
Layer
1: Network access layer
The network access
layer, also known as the data link layer, manages the physical infrastructure
that allows computers to communicate with each other over the Internet. This
includes, among other elements, Ethernet cables, wireless networks, network
interface cards, and device drivers in the computer.
The network access
layer also includes technical infrastructure, such as code that converts
digital data into transmissible signals, which make a connection possible.
Cover
2: Internet Cover
The Internet layer,
also called the network layer, controls the flow and routing of traffic to
ensure that data is sent quickly and correctly. This layer is also responsible
for reassembling the data packet at the destination. If there is a lot of
traffic on the Internet, this layer may take a little longer to send a file,
but the file is less likely to get corrupted.
Cover
3: Transport cover
The transport layer
is the one that provides a reliable data connection between two communication
devices. It's like sending an insured package: the transport layer splits the
data into packets, confirms the packets it has received from the sender, and
makes sure that the recipient confirms the packets received by them.
Layer
4: Application Layer
The application layer
is the application pool that allows the user to access the network. For most of
us, this means email, messaging apps, and cloud storage programs. This
is what the end user sees and interacts with when receiving and sending data.
What IP addresses does TCP/IP work with?
Whether you have an IPv4 or IPv6 address, it is very likely that
you are already using the TCP/IP model. This is the standard model for most
Internet infrastructure. There are different categories of IP addresses that
can affect your privacy or how the protocol works (for example, public vs. local or static vs. dynamic IP addresses),
but they all follow the standard TCP/IP model.
TCP/IP: the most common protocol
TCP/IP is the most commonly
used set of protocols on the Internet. It's so common that most people don't
realize they're using it. Most computers include TCP/IP as standard, so no
manual configuration is required. Just connect to your local wireless network
and you're good to go.
What is port
443?
So what is port 443? Port 443
is a virtual port that computers use to divert network traffic. Billions of
people around the world use it every day. Any web search you do, your computer
connects to a server that hosts that information and gets it for you. This
connection is made through a port, either HTTP or HTTPS port. I would have seen
these precursors in web addresses. They represent which port is being used.
It is essential to know the
difference between the two. HTTPS is secure and on port 443, while HTTP is
unsecured and available on port 80. Information traveling on port 443 is
encrypted using Secure Sockets Layer (SSL) or its new version, Transport Layer
Security (TLS) and is therefore more secure.
The Firewall
What is a firewall and how it works The main function of a firewall or
firewall is to block any attempt at unauthorized access to private internal
devices of our data network (LAN) from external internet connections commonly
called WAN. A firewall or firewall provides a way to filter information that
communicates over the network connection. When they are present on an
individual computer, it is called a personal firewall. When firewalls are
present in an enterprise network for the protection of multiple computers it is
called Network Firewall.
How does a firewall work? A firewall acts by blocking unauthorized traffic
and each deployment design will focus on the characteristics and needs of each
type of company. There are several methods that are used to filter data
traffic, which can be used individually or combined on a firewall computer:
Firewall Policies Here the firewall only allows communications to the
protected network based on requests coming from computers within that network.
No one will be able to scan the network, from the outside you only see the IP
address of the firewall, you do not see internal resources inside the network.
All inbound gateways are closed and all outbound ports are open. There is the
possibility of allowing exceptions.
Content Filtering: This function allows packet filtering, examines the
communication packets that try to pass through the firewall, comparing them
with the rules. Rules determine how communication is handled. These rules are
based on the source IP address of the data and the port to which it is
intended. Content filtering allows administrators to easily block some types of
web content without having to do so manually with each individual URL.
Inappropriate websites and social media websites are blocked quickly and
easily.
HTTPS/SSL – Security and Encryption
Now that the browser has the IP address, it will take care of the other
part of the URL, the https:// part. HTTPS stands for HyperText Transfer
Protocol Secure and is a secure version of regular HTTP. This transfer protocol
defines different types of requests and responses to clients and servers over a
network. In other words, it is the main way to transfer data between a browser
and a website. HTTP and HTTPS requests include GET, POST, PUT, and others.
HTTPS requests and responses are encrypted, which guarantees users that their
data cannot be stolen or used by third parties. For example, if we put our
credit card information on a website that uses HTTPS, we have the assurance
that this information will not be stored in plain text somewhere accessible to everyone.
Another key component to securing websites is the SSL certificate. SSL
stands for Secure Sockets Layer (also known as TSL, Transport Layer Security).
The certificate must be issued by a trusted Certificate Authority, such as the
famous Let's Encrypt, for example, which grants free SSL certificates. When a
website has this certificate, we can see a small padlock icon next to the name
of the website in the search bar. In some browsers and with certain types of
SSL certificates, the bar turns green.
Load balancer
Online traffic has increased
exponentially in the last ten years. Internet users are increasingly demanding
in terms of speed of access and security, so web servers must face a greater
demand. Load balancing technology, understood as a workload optimization
strategy, offers an answer to this new reality. This technology allows a
group of servers (cluster) to cope with traffic peaks and even provide a backup
solution in case of breakdown. That's when the load balancer intervenes,
balancing the workload between the servers to maintain their capacity at an
optimal level. In this way, websites hosted on servers with a load balancer
will be less prone to slowdowns or service interruptions.
Load balancers or load spreaders
are installed on dedicated infrastructures, physical or virtual. In the case of
physical platforms, a server will act as a load balancer, so it will be
necessary to make the corresponding investment. Load balancing programs can
also be installed on virtual machines (VMs). In that case, it will take the
form of an application delivery controller or ADC (application delivery
controller). In its virtual version, the load balancer will be more flexible
and will allow the user to scale the load automatically based on traffic
forecasts.
In both cases, it will be
identified in real time which server is the most suitable to respond to a
request, guaranteeing a stable level of performance in the cluster. In the
event of a machine failure, the load balancer must divert the workload to
another server.
When a user requests to load the
page of a website, the load balancer intervenes between the visitor and the
server, analyzing which machine is best suited to respond to this request, and
then transmitting it. It is also possible to add or remove servers depending on
the load, depending on the needs of each project.
What is a Web
server, and what is it for?
A web server
is software that is part of the server and has as its main mission to return
information when it receives requests from users.
In other
words, it is the software that allows users who want to view a web page in
their browser to do so.
How a web server works
For the proper functioning of a web server we need
a web client that makes an http or https request through a browser and a server
where the information is stored.
Application Server
In computer science, an application server is a server on a computer network that runs certain applications.
It is usually a software device
that provides application services to client computers. An application server
generally handles most (or all) of the negotiation logic and data access
functions of the applications. The main benefits of applying application server
technology are centralization and decreased complexity in application
development.
Application servers typically also include middleware (or connectivity software) that
allows them to intercommunicate with various services, for purposes of
reliability, security, non-repudiation, etc. Application servers also provide
developers with an Application Programming Interface (API), so
they don't have to worry about the operating system or the large number of
interfaces required in a modern web application .
Application servers also support a wide variety of standards, such as HTML, XML, IIOP, JDBC, SSL,
etc., which allow them to operate in web environments and connect to a wide
variety of data sources, systems and devices.
Database
A database is an
organized collection of stored and accessed data electronically. Small
databases can be stored in a file system, while large databases are hosted in
clusters of computers or cloud storage. Database design encompasses formal
techniques and practical considerations, including data modeling, efficient
data representation and storage, query languages, security and privacy of
sensitive data, and distributed computing issues, including support for
concurrent access and fault tolerance.
A database
management system (DBMS) is software that interacts with end users,
applications, and the database itself to capture and analyze data. The DBMS
software also includes the basic functions provided to manage the database. The
sum total of the database, DBMS, and associated applications can be called the
database system. Often, the term "database" is also loosely used to
refer to any of the DBMS, the database system, or an application associated
with the database.
Computer scientists
can classify database management systems according to the database models they
support. Relational databases became dominant in the 1980s. These model data as
rows and columns in a series of tables, and the vast majority use SQL to write
and query data. In the 2000s, non-relational databases became popular,
collectively referred to as NoSQL because they use different query languages.
A web
stack has many layers and we only touch the surface. When we type a URL into a
browser, it only takes microseconds for all the agents we're talking about to
form a response and deliver it to the customer. Even knowing what happens
behind the curtain, it is still quite magical to see it happen before our eyes.
----
I share an image of a previous job where everything that records the data is represented by means of a diagram when entering a URL in the browser:
Some of the resources used:
https://latam.kaspersky.com/resource-center/definitions/what-is-a-ssl-certificate
https://docs.oracle.com/cd/E19957-01/820-2981/ipov-10/
https://www.avg.com/es/signal/what-is-tcp-ip
https://es.wikipedia.org/wiki/Servidor_de_aplicaciones
Comentarios
Publicar un comentario