Como funciona a internet? - Internet
Tags: programming, beginners, internet, webdev
Published: 2023-06-27 12:28:11

Você está começando no mundo da web e quer entender melhor como a internet funciona? Como você digita um endereço no campo de busca do navegador, e ele te retorna uma página? Pensando nisso decidi criar uma série com cinco artigos introduzindo os principais temas para compreender melhor o mundo da internet.

Lembrando que todos os assuntos são bem mais complexos do que irei apresentar aqui, a ideia é te dar uma introdução para que você possa ter uma base e conhecer um pouco dos conceitos.

Todas as cinco partes serão baseadas no [roadmap.sh](http://roadmap.sh/) criado por Kamran Ahmed, onde eu irei fazer um compilado de todo o conteúdo e resumir em artigos mais direcionados e exemplificado.

Iremos começar pelo “How does the internet work? / Como funciona a internet?”.

![Roadmap.sh ilustrando o tema Internet](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qalae4qzzustsh12jzbl.png)

---

## Início da Internet

A internet teve início durante a Guerra Fria, nos Estados Unidos. Como um projeto de pesquisa do Departamento de Defesa dos Estados Unidos, chamado ARPANET, na década de 1960. Foi desenvolvida como uma rede de computadores para compartilhamento de informações entre universidades e instituições de pesquisa. O objetivo era criar uma rede robusta e descentralizada que pudesse resistir a um possível ataque de seus inimigos, e mesmo assim poder transitar as informações sem perigo de perda, permitindo a troca de dados de forma eficiente. 

A ideia é que eles pudessem trocar informações e documentos em vários pontos a qualquer momento, caso alguma dessas estruturas (computador) viesse a sofrer algum ataque, ou deixar de funcionar, os outros computadores ainda teria a capacidade de acessar aquele documento,

![Ilustração de uma rede utilizando uma analogia de um bairro](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ihq482864qhp0eiiu8nw.png)


Ao longo do tempo, a internet evoluiu, expandindo-se para além das fronteiras acadêmicas e se tornando uma rede global acessível a todos, conectando pessoas, empresas e organizações em todo o mundo, abrindo as portas para o que nós temos hoje.

---

## O que é uma rede

No mundo da internet, uma rede é um sistema de conexão entre diferentes dispositivos, como computadores, smartphones e servidores, que permite a troca de informações e recursos. É como uma teia de conexões que permite que esses dispositivos se comuniquem entre si.

Uma simples analogia, seria pensar em uma rede de telefones fixos em uma vizinhança. Cada casa tem um telefone e está conectada a outras casas por fios telefônicos. Se alguém em uma casa quer ligar para outra, ele discará o número do telefone daquela casa e a ligação será estabelecida através da rede de fios. Da mesma forma, na internet, os dispositivos estão conectados através de cabos, sinais sem fio ou até mesmo redes móveis, permitindo a comunicação entre eles.

Usando o exemplo do telefone, é como se cada roteador fosse uma rua, e cada dispositivo fosse uma casa. Em cada rua, nós temos diversas casas que se conversam entre si através de cabos, e existem diversas ruas que se conectam.

![Ilustração de uma rede utilizando uma analogia de um bairro](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n2bndmpr6kuthcukicm2.png)

Atualmente, com o avanço da tecnologia e a proliferação de dispositivos conectados, a rede da internet se expandiu globalmente. É como se fosse uma rede mundial interconectada. Agora, podemos imaginar algo como um grande sistema de estradas, onde cada dispositivo é como um veículo na estrada. Esses dispositivos podem se comunicar com outros dispositivos em qualquer parte do mundo, enviando informações, compartilhando arquivos, transmitindo vídeos e muito mais. É uma rede global que conecta pessoas, empresas e serviços, permitindo a comunicação instantânea e o acesso a uma infinidade de recursos e informações.

_Se quiser ler um pouco mais sobre Rede:_
https://aws.amazon.com/pt/what-is/computer-networking/

---

## Visão geral da Internet

A Internet é uma rede global que permite a comunicação e transferência de dados entre dispositivos conectados. Para entender como ela funciona, é importante conhecer alguns conceitos básicos. Vou explorar esses conceitos de forma clara e simples para aqueles que estão começando na área.

Vamos começar com o básico: a Internet é como uma superestrada que conecta todos os dispositivos do mundo. E o segredo por trás dessa conexão são dois heróis: o Protocolo de Internet (IP) e o Transmission Control Protocol (TCP). O IP é o guia que ajuda os pacotes de dados a encontrarem seu destino, enquanto o TCP garante que esses pacotes cheguem lá.

Para ter um melhor entendimento é interessante conhecer alguns conceitos que se repetem a todo momento, aqui vai alguns importantes.

- Pacote: É uma pequena unidade de dados que a Internet envia pelos ares.
- Roteador: É um dispositivo que direciona os pacotes de dados para o lugar certo, pulando de rede em rede.
- Endereço IP: É como um RG da Internet, um identificador exclusivo para cada dispositivo conectado.
- Nome de domínio: É um nome legível usado para identificar um site, como "[google.com](http://google.com/)".
- DNS: É o sistema responsável por traduzir nomes de domínio em endereços IP.
- HTTP: É a linguagem dos navegadores e sites, que permite a transferência de dados.
- HTTPS: É a versão criptografada do HTTP, que garante que a comunicação entre cliente e servidor seja segura e tranquila.
- SSL/TLS: São protocolos de segurança usados para proteger nossas informações pessoais durante a navegação na Internet.

---

## IP e DNS

Um endereço IP é como o endereço de uma casa, é o identificador único do seu dispositivo na Internet. Representado por uma série de números separados por pontos, como "192.168.1.1".

Os nome de domínio é o apelido charmoso que atribuímos aos sites. O DNS (Domain Name System) entra em ação para traduzir esses apelidos em endereços IP, por exemplo, "google.com" é um nome de domínio.

![Ilustração de uma requisção e resposta ao entrar em um site](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6a7szwfq8w62b9ul1v2j.png)

O fluxo que ocorre nos bastidores da internet é o seguinte:

Quando você digita um domínio na barra de busca do seu navegador, como por exemplo "**[https://www.google.com](https://www.google.com/)**", o navegador envia uma solicitação a um servidor DNS, perguntando se ele tem o IP correspondente àquele domínio. Caso o servidor DNS não possua essa informação, ele busca em outros servidores DNS até encontrar o IP correto. Assim que o servidor encontra o IP, ele o retorna ao usuário para que possa se conectar ao site desejado.

_Se quiser ler um pouco mais sobre IP e DNS:_  https://support.google.com/a/answer/2573637?hl=pt

---

## HTTP e HTTPS

HTTP (Hypertext Transfer Protocol) e HTTPS (HTTP Secure) são dois dos protocolos mais usados em aplicativos e serviços baseados na Internet.

HTTP é o protocolo usado para transferir dados entre um cliente (navegador) e um servidor (site). Ao entrar em um site, o seu navegador realiza uma solicitação HTTP para o servidor, essa solicitação pode ser a própria página ou recursos como imagens, vídeos, etc. O trabalho do servidor é responder, com os recursos que foram solicitados pelo cliente.

HTTPS é uma versão mais segura do HTTP, que criptografa os dados transmitidos entre o cliente e o servidor usando SSL/TLS, com isso temos uma camada extra em questão de segurança, já que essa comunicação é realizada com a criptografia SSL/TLS, protegendo dados sensíveis, como é mostrado na imagem.

![Ilustração de um site com HTTP e HTTPS](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1pa39rxfei5n6bod657e.png)


_Se quiser ler um pouco mais sobre HTTP e HTTPS:_ https://www.alura.com.br/artigos/qual-e-diferenca-entre-http-e-https?gclid=Cj0KCQjw7uSkBhDGARIsAMCZNJsCrmh2CPNjpRzQFwRbetkjJbkd3oN0ab_7JS-idxXEKlHQJvTyO0EaApwxEALw_wcB

---

## TCP/IP

O TCP/IP (Transmission Control Protocol/Internet Protocol) é um protocolo de comunicação utilizado pela maior parte dos aplicativos e serviços que nós temos hoje na internet, focando na entrega de dados confiáveis, ordenadas e com verificação de erros entre aplicativos executados em diferentes dispositivos.

![Ilustração de como é uma conexão utilizando o protocolo TPC/IP](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fk9rbehyhgsav3yddtni.png)

Termos e conceitos chaves para entender melhor o TCP/IP:

- Portas: São usadas para identificar o aplicativo ou serviço em execução em um dispositivo, cada aplicativo ou serviço recebe um número de porta exclusivo.
- Sockets: São como fones de ouvido, conectando os endereços IP e as portas para uma conversa exclusiva entre aplicativos.
- Conexões: São estabelecidas entre dois sockets quando dispositivos desejam se comunicar. Durante o processo de estabelecimento da conexão, são negociados parâmetros importantes.
- Transferência de dados: Uma vez que a conexão está rolando, os dados fluem entre os aplicativos em pacotes com metadados, garantindo uma entrega de sucesso.

_Se quiser ler um pouco mais sobre TCP/IP:_ https://tecnoblog.net/responde/o-que-e-tcp-ip/

---

## SSL/TLS

SSL/TLS é um protocolo usado para criptografar os nossos dados que são transmitidos pela Internet. É usado para fornecer conexões seguras para aplicativos.

Termos e conceitos chaves para entender melhor o SSL/TLS:

- Certificados: São usados para estabelecer a confiança entre cliente e servidor. Contêm informações sobre a identidade do servidor e são assinados por terceiros confiáveis.
- Handshake: É o processo de troca de informações entre cliente e servidor para negociar a criptografia e outros parâmetros para a conexão segura.
- Criptografia: Após a conexão segura ser estabelecida, os dados são criptografados usando o algoritmo acordado e transmitidos com segurança entre cliente e servidor.

_Se quiser ler um pouco mais sobre SSL/TLS:_ https://rockcontent.com/br/blog/tls-ssl/

---

Dessa maneira chegamos ao fim desse artigo, falamos um pouco sobre alguns tópicos de como a internet é formada, o objetivo era apenas trazer alguns conceitos para que nós possamos nos aprofundar futuramente. No segundo artigo, irei trazer um pouco mais sobre “O que é HTTP”.

---

Fonte:

How does the Internet Work?: https://cs.fyi/guide/how-does-internet-work

The Internet: IP Addresses & DNS: https://www.youtube.com/watch?v=5o8CwafCxnU&ab_channel=Code.org

How does the Internet work?: https://developer.mozilla.org/en-US/docs/Learn/Common_questions/Web_mechanics/How_does_the_Internet_work

História da internet: 
 https://pt.wikipedia.org/wiki/Hist%C3%B3ria_da_Internet

O surgimento da internet: https://www.fatosdesconhecidos.com.br/o-surgimento-da-internet/