Pacotes e roteamento
Fundamentos de pacotes e roteamento
Na comunicação pela Internet, dados como texto, imagens, vídeos e arquivos não são enviados como um único bloco enorme.
Na prática, os dados são divididos em unidades que a rede consegue tratar e são enviados com informações como o destino.
Essa pequena unidade transportada pela rede é geralmente chamada de pacote.
Entender o mecanismo dos pacotes facilita pensar em como os dados se movem pela rede, o que os roteadores observam ao encaminhá-los e que informações são tratadas no caminho da comunicação.
O que é um pacote
Pacote é uma unidade de dados enviada e recebida pela rede.
Ao navegar em sites, enviar imagens, assistir a vídeos ou enviar mensagens, os dados da comunicação são divididos em unidades mais fáceis de tratar pela rede. Cada unidade é então enviada com informações de controle, como destino.
Tecnicamente, o nome muda conforme a camada de comunicação. Por exemplo, na camada IP pode ser chamado de pacote IP, na camada TCP pode ser chamado de segmento, e na camada de enlace de dados pode ser chamado de quadro.
Neste artigo, porém, não entraremos profundamente nos nomes de cada camada. Vamos tratar de forma ampla como "pacotes" as unidades de comunicação que são divididas e transportadas pela rede.
| Nome | Camada em que é usado principalmente | Significado |
|---|---|---|
| Pacote | Camada IP / camada de rede | Unidade transportada pela rede com informações como endereço IP de destino |
| Segmento | Camada TCP | Unidade de dados tratada pelo TCP |
| Datagrama | Contexto de UDP ou IP | Dado tratado como uma unidade independente de entrega |
| Quadro | Camada de enlace de dados | Unidade que se move entre equipamentos dentro do mesmo trecho de rede |
O ponto importante é que os dados de comunicação não são enviados apenas como "conteúdo"; eles são processados junto com informações necessárias para a entrega.
Por que os dados são divididos em partes pequenas
Dados grandes são divididos em partes pequenas para que a rede como um todo consiga tratar grandes volumes de comunicação com eficiência.
Se arquivos grandes ou dados de vídeo fossem enviados como um único bloco enorme, essa comunicação tenderia a ocupar por muito tempo a linha ou o processamento dos equipamentos. Com isso, outras comunicações ficariam esperando e a eficiência da rede como um todo pioraria.
Ao enviar em unidades de pacote, é possível processar de forma fina e intercalada as comunicações de vários usuários e aplicações.
| Método | Característica | Facilidade de tratamento na rede |
|---|---|---|
| Enviar dados grandes como estão | Uma comunicação flui em uma unidade grande | É difícil intercalar outras comunicações e a eficiência tende a piorar |
| Dividir em pequenos pacotes e enviar | A comunicação é dividida em unidades pequenas | Facilita processar muitas comunicações em paralelo |
Graças a esse mecanismo, navegação Web, vídeo, chat, envio de arquivos e outras atividades podem funcionar ao mesmo tempo na mesma rede.
Transformar dados em pacotes é um mecanismo básico que permite à Internet processar muitas comunicações simultaneamente.
Pacotes incluem informações de destino
Para um pacote se mover pela rede, ele precisa de informações que indiquem "para onde deve ser entregue".
Na comunicação IP, informações representativas são o endereço IP de origem e o endereço IP de destino.
O endereço IP de origem indica de onde a comunicação foi enviada. O endereço IP de destino indica para onde a comunicação deve ser entregue.
| Informação | Papel |
|---|---|
| Endereço IP de origem | Indica a origem do pacote |
| Endereço IP de destino | Indica o destino de entrega do pacote |
| Parte de dados | Contém parte do conteúdo que se quer enviar |
| Informações de controle | Contêm informações auxiliares necessárias ao processamento da comunicação |
Aqui não trataremos da estrutura detalhada do cabeçalho IP.
O ponto a guardar é que um pacote contém não só "parte dos dados que se quer enviar", mas também "informações para entregá-lo pela rede".
O que os roteadores fazem
Um equipamento representativo que encaminha pacotes é o roteador.
O roteador verifica as informações de destino do pacote recebido e decide para onde deve enviá-lo em seguida.
Esse mecanismo de decisão e encaminhamento é geralmente chamado de roteamento.
Mais precisamente, o roteador consulta as informações de rota que possui com base no endereço IP de destino e decide o próximo encaminhamento. Esse "próximo encaminhamento" não é necessariamente o destino final em si. Em muitos casos, ele entrega o pacote ao próximo roteador ou à próxima rede.
| Elemento | Papel |
|---|---|
| Pacote | Unidade de comunicação que se move pela rede |
| Endereço IP de destino | Informação que indica para onde o pacote deve ser entregue |
| Roteador | Equipamento que decide o próximo encaminhamento com base nas informações de destino |
| Roteamento | Processo que decide a direção de avanço do pacote usando informações de rota |
Em geral, o roteador não encaminha pacotes entendendo o significado da parte de dados.
Por exemplo, ele não decide lendo o conteúdo textual de uma página Web ou o significado de uma imagem; ele encaminha principalmente olhando informações de destino e informações de rota.
Pacotes chegam passando por várias redes
A Internet não é uma única rede gigantesca e isolada.
Na prática, ela é formada pela conexão de muitas redes, como redes domésticas, redes corporativas, redes de operadoras de comunicação e redes de data centers.
No caminho da origem ao destino, um pacote passa por vários roteadores e redes.
Nesse momento, cada roteador não administra em detalhe "todo o percurso até o destino final". Basicamente, ele decide para onde entregar em seguida com base nas informações de rota que possui.
Ou seja, o pacote se aproxima do destino sendo encaminhado em cada ponto da rede.
A rota nem sempre é completamente igual
Mesmo ao acessar o mesmo site, a rota de comunicação nem sempre é completamente igual.
Normalmente, o mesmo fluxo de comunicação tende a passar por rotas semelhantes, mas a rota pode mudar conforme o estado da rede.
Por exemplo, há fatores como os seguintes.
| Fator | Conteúdo |
|---|---|
| Falha de rede | Parte das linhas ou equipamentos deixa de poder ser usada e a comunicação muda para outra rota |
| Congestionamento | Outra rota pode ser usada por balanceamento de carga ou controle de rota |
| Alteração de configuração | A rota muda por alterações feitas por operadoras de comunicação ou administradores |
| Mudança nas relações de conexão | A rota muda conforme a situação de conexão entre redes |
No entanto, é impreciso entender que "cada pacote escolhe livremente uma rota completamente diferente a cada vez".
Na maioria dos casos, roteadores encaminham conforme informações de rota. Comunicações para o mesmo destino muitas vezes passam pela mesma rota, e mudanças de rota dependem do estado e das configurações da rede.
Aqui não trataremos de controles de rota detalhados como BGP. O ponto importante é que a comunicação na Internet passa por várias redes, e essa rota não é uma linha única e fixa.
No lado receptor, os dados voltam a uma forma utilizável
Os dados divididos no lado de envio são restaurados no lado de recebimento para uma forma que possa ser tratada.
Por exemplo, ao abrir uma página Web, o navegador recebe vários dados de comunicação e os processa como HTML, CSS, JavaScript, imagens e assim por diante.
Em comunicações TCP, a ordem e a confirmação de chegada dos dados divididos são tratadas para que o lado receptor possa usá-los na ordem correta.
Por outro lado, em comunicações de natureza diferente, como UDP, o próprio protocolo não realiza confirmação de chegada ou controle de reenvio da mesma forma. Por isso, dependendo do uso, a aplicação realiza o processamento necessário.
| Tipo de comunicação | Tratamento no lado receptor |
|---|---|
| Comunicação que usa TCP | Por controle de ordem e reenvio, facilita restaurar os dados para uma forma tratável na ordem correta |
| Comunicação que usa UDP | Não pressupõe garantia de chegada nem controle de ordem; a aplicação trata conforme necessário |
O usuário normalmente não percebe esse processamento.
Isso acontece porque o navegador ou a aplicação exibe e processa os dados recebidos como uma tela ou arquivo que uma pessoa consegue ver.
Comunicação por pacotes sustenta grandes volumes de comunicação
Na Internet, usuários do mundo todo se comunicam ao mesmo tempo.
Em vez de fazer cada comunicação ocupar uma rota dedicada, os dados são divididos em pequenos pacotes, e equipamentos de rede os encaminham sucessivamente para processar grandes volumes de comunicação.
O fluxo básico da comunicação por pacotes pode ser organizado assim.
| Etapa | Processamento |
|---|---|
| Lado de envio | Divide os dados em unidades tratáveis pela rede |
| Pacotização | Adiciona informações de controle, como destino |
| Na rede | Roteadores e outros equipamentos encaminham com base nas informações de destino |
| No caminho | Passa por várias redes em direção ao destino |
| Lado receptor | Restaura os dados recebidos para uma forma tratável pela aplicação |
Esse mecanismo permite à Internet processar muitas comunicações ao mesmo tempo.
Pacotes são unidades pequenas, mas a soma deles sustenta navegação Web, distribuição de vídeo, envio de mensagens, reuniões online, transferência de arquivos e muitas outras atividades.
Ponto importante ao pensar em anonimato
Pacotes não chegam diretamente da origem ao destino em um instante.
No caminho da comunicação há vários pontos intermediários, como roteadores, redes de operadoras de comunicação e redes de data centers.
Por isso, ao pensar em anonimato e privacidade, é necessário entender em que ponto da rota de comunicação quais informações podem ficar visíveis.
Por exemplo, quando o conteúdo da comunicação está criptografado, um terceiro no caminho não necessariamente consegue ler o conteúdo diretamente.
No entanto, há informações que não desaparecem por completo mesmo com criptografia, como o fato de a comunicação ter ocorrido, o endereço IP de destino, o volume de comunicação e o momento da comunicação.
| Informação | Possibilidade de ficar visível no caminho | Complemento |
|---|---|---|
| Conteúdo da comunicação | Pode ficar visível se não estiver criptografado | Com HTTPS e mecanismos semelhantes, o conteúdo tende a ser protegido |
| Endereço IP de destino | Alta possibilidade de ficar visível | Informação necessária para o roteamento |
| Volume de comunicação | Pode ficar visível | Tendência da quantidade de dados enviados e recebidos |
| Momento da comunicação | Pode ficar visível | Informação sobre quando a comunicação ocorreu |
| Informação de origem | Pode ficar visível | A forma como aparece muda conforme NAT, e outras configurações |
Entender o básico de pacotes e roteamento é uma base para pensar em como as informações se movem pela rede e em que pontos podem ser observadas.
Resumo
Pacote é uma pequena unidade de comunicação usada para enviar e receber dados pela rede.
Dados grandes são divididos em unidades tratáveis pela rede, recebem informações como destino e são enviados.
O roteador decide para onde encaminhar em seguida com base nas informações de destino e nas informações de rota do pacote.
Pacotes seguem até o destino passando por várias redes, mas a rota nem sempre é completamente fixa. Ela pode mudar por falhas, congestionamento, alterações de configuração e situações de conexão entre redes.
No lado receptor, os dados recebidos são processados para uma forma tratável pela aplicação. Há comunicações, como TCP, que realizam controle de ordem e reenvio, e comunicações, como UDP, que priorizam entrega leve.
Entender esse mecanismo permite pensar com mais precisão em como a comunicação na Internet é transportada e que informações podem ser tratadas no caminho da comunicação.
Ferramentas relacionadas
WhatIsMyIP
Recurso externo relacionado a este artigo. Abra apenas se fizer sentido para sua situação e seu modelo de ameaça.
Por que aparece aqui: Pode ajudar com o tema do artigo, mas fica fora do Anonymity Sense e deve ser avaliado antes do uso.