Redes e a Internet

Circuitos, pacotes, camadas e encapsulamento, com contas de transmissão em série.

TLDR

Perguntar sobre esta página

ChatGPTClaudePerplexityGrokGeminiCopiar e abrirDeepSeekCopiar e abrir

Um portátil pede um ficheiro a um servidor. Os dados seguem em pacotes, que os routers encaminham entre redes. O portátil pode usar TCP para recuperar perdas, mas o serviço IP que transporta os pacotes não garante chegada, ordem ou ausência de duplicados.

Um bit é um 0 ou 1, e um byte são 8 bits. Aqui usamos kbit/s e Mbit/s decimais; 10310^3 e 10610^6 bits por segundo.

Circuitos e pacotes

Na comutação de circuitos, reservas capacidade antes de transmitir. FDM reserva bandas de frequência e TDM reserva intervalos de tempo. A reserva dá débito previsível, mas fica ocupada mesmo quando a origem não envia.

Na comutação de pacotes, os fluxos partilham capacidade conforme a necessidade. Um router liga redes e escolhe o caminho de cada pacote; recebe um pacote, escolhe a saída e espera que fique livre. Na multiplexagem estatística, a capacidade da saída não fica reservada a um fluxo, por isso quando um fica sem dados outro pode usá-la; em compensação, pode criar filas e perdas quando a procura excede o serviço.

Uma rede de pacotes pode usar datagramas, com decisão de encaminhamento por pacote, ou circuitos virtuais, com estado de ligação no caminho. IP usa datagramas. Uma ligação TCP entre aplicações não transforma a rede IP numa rede de circuitos virtuais: o TCP corre nos terminais, por cima de datagramas independentes.

Num circuito virtual, a tabela pode associar (porta de entrada, identificador do circuito) a (porta de saída, novo identificador). A associação (1, 12) → (3, 22) manda um pacote que entra na porta 1 com identificador 12 sair na porta 3 com identificador 22. A consulta é exata e os identificadores podem mudar por ligação, ao contrário do endereço IP de destino, que cada router consulta por prefixo sem alterar. Um circuito virtual também não implica, por si só, capacidade reservada: isso depende do serviço estabelecido, não do mecanismo de consulta.

Store-and-forward e segmentação

Em store-and-forward, um equipamento só começa a enviar um pacote depois de o receber inteiro. Para NN pacotes iguais de LL bits, através de HH ligações iguais de débito RR, sem propagação, filas ou processamento:

T=(H+N−1)LR.T = (H+N-1)\frac{L}{R}.

O primeiro pacote ocupa HH tempos de transmissão. Os restantes chegam espaçados de L/RL/R, porque as ligações trabalham em paralelo.

Exemplo. Divide 3 Mbit em três pacotes de 1 Mbit. Há duas ligações de 1 Mbit/s. O primeiro chega em 2 s, o segundo em 3 s e o terceiro em 4 s. Sem divisão, o pacote único demoraria 6 s. Com mais cabeçalhos ou pacotes menores, muda a quantidade transmitida.

Cada bloco mostra a transmissão completa de um pacote numa ligação. Entre 1 e 2 s, a origem envia P2 enquanto o router envia P1, porque já o recebeu inteiro; esta sobreposição entre ligações mantém o store-and-forward, pois nenhuma segunda transmissão começa antes de terminar a primeira.

Neste modelo, cada transmissão demora L/R=1L/R=1 s. O primeiro pacote precisa de H=2H=2 intervalos para atravessar as duas ligações e cada um dos N−1=2N-1=2 pacotes restantes acrescenta um intervalo até à última chegada; por isso, contamos H+N−1=2+3−1=4H+N-1=2+3-1=4 intervalos, e não H×N=6H\times N=6 transmissões feitas uma de cada vez.

Para um circuito com capacidade de 1 Mbit/s, estabelecimento de 0,5 s e propagação desprezável, a mensagem demoraria 0,5+3=3,50{,}5+3=3{,}5 s. O circuito ganha neste exemplo isolado. Isso não prova que aproveite melhor uma rede com muitos utilizadores intermitentes.

Se os débitos forem diferentes, desenha início e fim de cada transmissão, porque a expressão acima exige ligações iguais. A transmissão seguinte começa quando o pacote já chegou inteiro e a saída está livre; usa o mais tardio desses dois instantes.

Camadas, unidades e endereços

CamadaUnidade habitualIdentificação e função
AplicaçãoMensagemNomes e operações, como um pedido HTTP
TransporteSegmento TCP ou datagrama UDPPortas e entrega entre processos
RedePacote ou datagrama IPEndereços IP e encaminhamento entre redes
LigaçãoTramaEndereços MAC quando usados, entrega no salto local
FísicaBits e símbolosRepresentação do sinal no meio

O modelo OSI separa ainda sessão e apresentação entre aplicação e transporte. O modelo TCP/IP não exige essa separação em camadas distintas. Não confundas os modelos com protocolos concretos.

No encapsulamento, o TCP acrescenta o seu cabeçalho aos dados, o IP envolve o segmento e a Ethernet envolve o pacote com verificação de erros. O destino desfaz estas etapas. Um router retira a trama, processa IP e constrói outra para a ligação seguinte. O cabeçalho de ligação muda por salto; os IP de origem e destino mantêm-se, salvo traduções como NAT.

Ponto do percursoO que mudaO que se mantém
Host origemCria segmento, pacote e tramaDados da aplicação
RouterRetira a trama, baixa TTL, refaz checksum IPv4, cria nova tramaIP de origem e destino, conteúdo TCP
Host destinoRetira trama, pacote e segmentoDados, entregues por ordem se o transporte o garantir

Equipamentos e topologias

Terminais, ligações e equipamentos distinguem-se pela função. Um concentrador repete sinais, um comutador encaminha tramas e um router encaminha pacotes IP; um aparelho doméstico pode combinar os três sem tornar iguais estas funções. Uma rede de comutadores Ethernet oferece comutação de pacotes baseada apenas em endereços MAC: não é uma rede de circuitos, nem consulta endereços IP para escolher a porta.

Uma ligação Bluetooth entre o portátil e um periférico é uma rede pessoal, PAN. A rede local de uma casa ou edifício é uma LAN; redes de âmbito metropolitano e alargado são designadas MAN e WAN. Estas designações descrevem o âmbito, não garantem um débito ou um protocolo. A Internet interliga redes de vários âmbitos.

Distingue topologia física de topologia lógica, isto é, cabos de percursos permitidos; uma VLAN pode separar duas redes lógicas no mesmo comutador. Distingue também débito da ligação de débito útil, porque o segundo conta só dados entregues à aplicação.

Exercícios

Calcular a chegada do último pacote

Quatro pacotes de 12000 bits atravessam três ligações de 2 Mbit/s, store-and-forward. Sem outros atrasos, quantos ms demora a chegar o último?

Pista

Conta o primeiro pacote e o espaçamento dos seguintes.

Solução

(3+4−1)×12000/2000000=0,036 s, ou 36 ms. As três ligações funcionam em paralelo após o primeiro pacote.

Erros frequentes

Multiplicar 4 ×3 ×6 ms e ignorar o paralelismo.

Voltar à explicação
Contar apenas dados úteis

Um pacote tem 1000 bytes de dados e 40 bytes de cabeçalhos. Um canal sem perdas transmite 104 kbit/s sempre ocupado. Qual o débito útil em kbit/s?

Pista

A fração útil é dados divididos pelo total.

Solução

104 ×1000/1040=100 kbit/s. A utilização do canal é 100%, mas o débito útil exclui cabeçalhos.

Voltar à explicação
Seguir o encapsulamento

Explica o que um router retira e acrescenta ao encaminhar um pacote IPv4 de Ethernet para outra Ethernet, sem NAT.

Pista

Um router liga dois saltos de ligação; revê o quadro de encapsulamento na lição.

Solução

O router retira o invólucro de ligação, processa IP e cria a trama da ligação seguinte. Os IP dos extremos mantêm-se neste cenário. TTL diminui de um em cada router IPv4 e a checksum do cabeçalho é recalculada; a explicação completa de TTL e checksum está na página de IP.

Confere a tua resposta:

  • Retira a trama recebida e verifica os campos aplicáveis.
  • Decide pelo destino IP e atualiza TTL/checksum IPv4.
  • Cria outra trama com MAC da saída e do próximo salto.
Voltar à explicação
Seguir duas ligações com débitos diferentes

Dois pacotes de 1000 bits atravessam uma ligação de 1 Mbit/s e depois outra de 0,5 Mbit/s, em store-and-forward. A origem envia-os seguidos, desde t=0. Ignora propagação, processamento e outro tráfego. Em que instante chega o último bit do segundo pacote ao destino, em ms?

Pista

O router só envia depois de receber o pacote inteiro e de a saída ficar livre.

Solução

P2 espera até 3 ms, porque a saída ainda transmite P1. Demora mais 2 ms nessa ligação e termina em 5 ms. As transmissões da primeira ligação terminam em 1 e 2 ms; as da segunda, em 3 e 5 ms.

Voltar à explicação

À tua maneira

Aparência

Modo de cor
Tema
Cor de destaque

Leitura

Fonte de leitura

Álgebra, lógica e uma ideia de cada vez.

Código

Fonte do código

Navegação

Cursor de leitura, sem edição. h, j, k, l movem; / pesquisa nesta página. v seleciona caracteres; V seleciona linhas; y copia. Tab permite destacar ou comentar. Espaço ou Enter abre blocos recolhíveis. Nos cartões, h, j, k, l mudam o foco.

CSS personalizado

Ativa uma sugestão ou guarda o teu CSS. Só muda este navegador.

Usa --page, --text e --accent para acompanhar o tema.

Seletores e recuperação

.site-header, .prose, .course-card, [data-reading-history], [data-playground] e .page-actions.

Abre a aparência com a tecla vírgula ou no rodapé. Se o CSS esconder os controlos, abre esta página sem CSS personalizado.

Pesquisar

Escreve para pesquisar em todo o site.

para escolher · Enter para abrir · Esc para fechar

Copiar fórmula

A cópia automática não está disponível. Copia o LaTeX abaixo.

Pesquisar nesta página

Enter procura · n / N repetem · Esc cancela. Ctrl / Cmd K pesquisa todo o site.

Atalhos de teclado

Clica numa tecla para a mudar. Esc cancela. Backspace desativa.

PesquisarCtrl / Cmd K

Os atalhos não interferem enquanto escreves. Tab e Enter funcionam sempre.