[Network] Eu, você e as camadas da Web!

Muita coisa deste artigo vai passar do escopo de um desenvolvedor, mas como profissional de TI é bom saber, mesmo que pouquinho. O Modelo OSI é um modelo de rede de computador dividido em 7 camadas, onde cada camada implementa um protocolo e sinaliza o que cada uma precisa fazer para a seguinte, garantindo a comunicação entre todas.


7ª Camada da Aplicação

É nessa camada que toda a magia rola, aqui está nossa aplicação rodando. Nela há um monte de coisas, como os protocolos famosos HTTP, SMTP, FTP, etc. Saber disso é muito importante, pois ao utilizar esta camada temos um ganho no acesso às informações, mas também uma perda de performance pela quantidade de dados que ela traz.


6ª Camada de Apresentação

Aqui a principal função é converter a transmissão recebida do modo que a camada 7 utilizará, por isso essa camada é muito importante, pois se você tem uma conexão HTTPS é nela que o encrypt e o decrypt acontece!


5ª Camada de Sessão

A parte stateful da coisa, essa camada faz uma marcação nos dados recebidos para um servidor específico. Pensando em uma conexão TCP, onde provavelmente chegarão diversas requisições ao mesmo tempo, é nela onde fazemos o “agregado” para o mesmo servidor.


4ª Camada de Transporte

É aqui que a loucura começa, pois é nesta camada que o nível de aplicação termina, e começamos a falar com a camada física da coisa. Essa camada pega todos os dados transmitidos e os repartem para se juntarem na camada de sessão. Uma coisa interessante dessa camada é que ela tem conhecimento do IP e também da porta que está sendo enviada, sendo assim um ótimo lugar para se utilizar um load balancer, já que há um ganho de performance fazendo essa comunicação diretamente com o dado cru que está sendo transmitido.


3ª Camada de Rede

Aqui já entra totalmente no mundo da galera que trabalha com redes, pois é nessa camada que acontecem os endereçamentos de IP.


2ª Camada de Ligação de Dados

Basicamente aqui acontece o agrupamento dos dados, fazendo com que os bits começam a ganhar vida.


1ª Camada Física

Aqui é literalmente seu cabo mandando sinais elétricos, 0s e 1s transformando-se em bits.


E é isso aí, claro que cada camada tem N coisas a mais para se aprofundar, mas como dev, é importante dar uma atenção especial para as camadas de aplicação (5, 6 e 7) e também a 4 (de transporte). Claro que a camada 7 é a mais importante, pois é onde trabalhamos (e onde a maioria dos load balancers rodam), mas conhecer a camada 4 nos proporciona o poder de fazer decisões mais assertivas em relação a como vamos melhorar o balanceamento das nossas requisições. Já puxando o assunto e falando de load balancers, eles geralmente ficam na camada 4 ou 7 tendo seus prós e contras em cada utilização, mas esse assunto fica para outro artigo. Abraços!