Saltar para o conteúdoHisnLabs
← TCP/IP: endereços, portas e ligações

Lição 2 de 4 · 7 min

Portas, TCP e UDP

Porque é que um endereço IP consegue correr uma centena de conversas ao mesmo tempo, e porque é que algumas dessas conversas trocam velocidade por fiabilidade.

Um endereço IP leva um pacote ao dispositivo certo. Não diz que app nesse dispositivo o deve receber. Essa é a tarefa de uma porta: um número que diz ao seu Mac com que programa está a falar. O Centro de Aprendizagem da Cloudflare compara-a a um prédio de apartamentos: a morada da rua (o IP) leva o correio ao prédio certo, e o número do apartamento (a porta) leva-o à porta certa.

Uma ligação, muitas portas

As portas permitem que um computador distinga diferentes tipos de tráfego mesmo que tudo chegue pela mesma ligação Wi-Fi ou por cabo. A explicação da Cloudflare é direta: "as portas permitem que os computadores distingam facilmente entre diferentes tipos de tráfego: os e-mails vão para uma porta diferente das páginas web, por exemplo, mesmo que ambos cheguem a um computador pela mesma ligação à Internet." As portas vivem nos cabeçalhos TCP e UDP, uma camada acima do simples endereço IP; um pacote IP puro não tem espaço para dizer para que porta é.

Quem tem permissão para usar que número

Os números de porta vão de 0 a 65535, e a Internet Assigned Numbers Authority (IANA) gere quem recebe qual: as portas de sistema (0–1023) só são atribuídas através de revisão formal, as portas de utilizador ou registadas (1024–49151) podem ser registadas para um serviço específico, e o intervalo superior, 49152–65535, fica por atribuir para uso temporário, como o endereço de retorno que o seu navegador escolhe para o seu próprio lado de uma ligação.

Fonte: registo de nomes de serviço e números de porta de protocolo de transporte da IANA.
PortaServiço registadoO que normalmente a usa
22Secure Shell (SSH)Acesso remoto por linha de comandos
25Simple Mail TransferEnvio de e-mail entre servidores de correio
53Domain Name ServerPesquisas DNS
80HTTPPáginas web comuns, não encriptadas
443HTTPSPáginas web encriptadas

TCP: mais lento, mas nada se perde

O Transmission Control Protocol (TCP), definido na RFC 9293, foi construído para ser fiável: "fornece às aplicações um serviço de fluxo de bytes fiável e por ordem", detetando pacotes perdidos através de números de sequência e reenviando-os até o outro lado confirmar a receção. Essa fiabilidade custa algum tempo e sobrecarga, e é por isso que o TCP é a escolha certa para coisas que têm de chegar intactas e por ordem: uma página web, o descarregamento de um ficheiro, um e-mail.

UDP: rápido, e disposto a perder um pouco

O User Datagram Protocol, descrito na RFC 768, faz a contrapartida oposta: "fornece um procedimento para os programas de aplicação enviarem mensagens a outros programas com um mínimo de mecanismo de protocolo." Não há cumprimento (handshake), não há garantia de ordem, e não há reenvio automático. A Cloudflare nota que isto se adequa "especialmente a transmissões sensíveis ao tempo, como reprodução de vídeo ou pesquisas DNS", onde um pacote perdido é um pequeno percalço, mas esperar por uma retransmissão seria pior do que simplesmente continuar.

A reter

  • Uma porta é um número que diz a um dispositivo para que app ou serviço é um pacote; o endereço IP sozinho só identifica o dispositivo.
  • A IANA gere os números de porta em três bandas: portas de sistema (0–1023), portas de utilizador/registadas (1024–49151), e portas dinâmicas não atribuídas (49152–65535).
  • Portas comuns incluem a 22 (SSH), 25 (correio), 53 (DNS), 80 (HTTP) e 443 (HTTPS).
  • O TCP (RFC 9293) verifica e reenvia dados perdidos para uma entrega fiável e por ordem, a algum custo em velocidade.
  • O UDP (RFC 768) salta essas verificações pela velocidade, o que se adequa a tráfego sensível ao tempo como vídeo e pesquisas DNS.

Teste-se

  1. 1. Que problema resolvem as portas que um endereço IP sozinho não consegue?

    • Dizem à rede para que app num dispositivo é um pacote — Certo.
    • Encriptam a ligação
    • Eliminam a necessidade de um endereço IP
    • Tornam o Wi-Fi mais rápido

    O endereço IP encaminha um pacote até um dispositivo; a porta, transportada no cabeçalho TCP ou UDP, diz que programa nesse dispositivo o deve tratar.

  2. 2. Que porta está registada para HTTPS segundo o registo da IANA?

    • 21
    • 80
    • 443 — Certo.
    • 8080

    A IANA lista a porta 443 como "https", usada para HTTP sobre TLS/SSL. A porta 80 é HTTP simples, não encriptado.

  3. 3. Porque descreve a RFC 9293 o TCP como "fiável, por ordem"?

    • Porque o TCP deteta dados perdidos e reenvia-os, e mantém os dados na ordem em que foram enviados — Certo.
    • Porque o TCP nunca usa portas
    • Porque o TCP é sempre mais rápido do que o UDP
    • Porque o TCP encripta tudo por defeito

    O TCP acompanha números de sequência para detetar lacunas, reenvia dados em falta, e reconstitui o fluxo de bytes por ordem.

  4. 4. Porque usariam normalmente as pesquisas DNS e a reprodução de vídeo o UDP em vez do TCP?

    • O UDP é mais seguro
    • O UDP troca fiabilidade por velocidade, o que se adequa a tráfego onde um pacote em falta é só um pequeno percalço — Certo.
    • O TCP não consegue usar a porta 53
    • O UDP garante que os pacotes chegam por ordem

    A Cloudflare nota que o UDP se adequa "especialmente a transmissões sensíveis ao tempo, como reprodução de vídeo ou pesquisas DNS" precisamente porque salta o cumprimento e a sobrecarga de retransmissão do TCP.

Praticar com o FireAI

Ponha esta lição em prática no seu próprio Mac.

Fontes

Ponha em prática no seu Mac

Experimente todas as funcionalidades grátis durante 17 dias, sem cartão.

Transferir para Mac Docs