TCP vs UDP: Qual a Diferença?
TCP e UDP são os dois protocolos de transporte que carregam praticamente todo o tráfego da internet. A escolha entre eles define o equilíbrio entre confiabilidade e velocidade.
| Característica | TCP | UDP |
|---|---|---|
| Conexão | Orientado a conexão (handshake de 3 vias) | Sem conexão |
| Confiabilidade | Garante entrega e ordem | Sem garantias |
| Velocidade | Mais lento (overhead de controle) | Mais rápido (cabeçalho mínimo) |
| Retransmissão | Sim, pacotes perdidos são reenviados | Não |
| Casos de uso | Web, email, SSH, transferência de arquivos | Jogos, VoIP, streaming, DNS |
Como o TCP funciona
Antes de trocar dados, o TCP realiza o three-way handshake:
É exatamente esse handshake que o nosso verificador utiliza: se o SYN-ACK retorna, a porta está aberta; se o servidor responde RST (reset), está fechada; se nada retorna, está filtrada.
Como o UDP funciona
O UDP simplesmente envia datagramas, sem estabelecer conexão, sem confirmar recebimento e sem reordenar pacotes. Se um pacote se perde, a aplicação decide o que fazer — em uma chamada de voz, por exemplo, é melhor perder 20ms de áudio do que esperar a retransmissão.
Por que verificar UDP é mais difícil
Como não há handshake, não existe uma resposta padrão para "esta porta está aberta?". Uma porta UDP aberta só responde se receber um pacote no formato que o serviço espera. E uma porta fechada pode responder com um ICMP "port unreachable" — mas muitos firewalls descartam até isso. Resultado: uma porta UDP que não responde pode estar aberta, fechada ou filtrada. Por isso nosso verificador foca em TCP, que dá respostas determinísticas.
Quando usar cada um
- TCP — qualquer coisa em que perder dados corrompe o resultado: páginas web, APIs, email, SSH, FTP, bancos de dados.
- UDP — quando atraso é pior que perda: jogos online, chamadas VoIP (SIP/RTP), streaming ao vivo, DNS, NTP, VPNs (WireGuard usa UDP 51820).