Portas, sockets, cliente e servidor
Objetivo
Distinguir host, porta, socket, cliente e servidor.
Conceitos essenciais
Porta
TCP e UDP utilizam números de porta para identificar endpoints/serviços. Porta é lógica, não conector físico.
Convenções
80 é associado a HTTP tradicional, 443 a HTTPS e 22 a SSH, mas serviços podem ser configurados em outras portas.
Servidor
Servidor é um papel de software que oferece serviço; seu notebook pode executar um servidor local.
Cliente
Cliente normalmente inicia comunicação com um serviço.
Socket
É uma abstração de endpoint fornecida pelo sistema operacional e APIs de rede.
Porta ocupada
Dois processos normalmente não podem escutar a mesma combinação de protocolo/endereço/porta sem mecanismos específicos. Erros “address already in use” são comuns em desenvolvimento.
Modelo mental
CLIENTE → SOCKET → IP:PORTA → SOCKET → PROCESSO SERVIDORExemplo e demonstração
Um navegador é cliente ao acessar 127.0.0.1:8000; o processo Python do laboratório é servidor.
Experimento / prática
- Explique 192.168.1.50:8080 separando host e porta.
- Dê exemplo de um dispositivo comum que também pode desempenhar papel de servidor.
Erros comuns
- Porta TCP é conector físico.
- Servidor precisa ser hardware especial.
Resumo
Ao concluir esta aula, revise o modelo mental e tente explicá-lo com suas próprias palavras antes de avançar.