2. Conexão do cliente
Ferramentas básicas pra desenvolvimento de
sockets
Testes básicos de cliente / servidor
3.
4. Escuta as conexões em uma determinada
porta
◦ Intervalo de portas válidas (0 – 65535);
◦ Servidor pode suportar múltiplas conexões
simultâneas (mais de 1 usuário em uma mesma
porta, utilizando controle de recursos através de
múltiplas threads);
◦ Controle de acesso (senhas, autenticações);
5. Endereços de IP (verificar com o comando /sbin/ifconfig)
Rotas definidas (/sbin/route –n)
Verifica se a conexão está ativa (ping IP_DO_GATEWAY)
Verifica se a internet está funcionando (ping
www.google.com.br)
Testa resolução de domínios (nslookup www.furg.br)
Verifica identidade do domínio (whois www.furg.br)
Portas em uso (verificar com o comando netstat –an|grep
OUVINDO ou LISTENING)
Portas em abertas em uso ou filtradas (nmap localhost)
Listando regras de firewall (/sbin/iptables –L) (precisa
root)
Invocando um servidor (nc –l porta)
Cliente padrão (telnet IP porta)
6. Criando um servidor
◦ Abra um terminal e digite:
nc –l 1234
Isso abrirá um servidor na porta 1234
Testando o servidor
◦ Abra outro terminal e digite:
telnet localhost 1234
Isso conectará no servidor na porta 1234
Digite qualquer mensagem
7. Verifique seu IP
Escolha uma porta livre
Crie um servidor no seu computador
Informe o IP e a porta do seu computador
para o seu colega ao lado
Tente conectar no servidor do colega
utilizando o cliente padrão (telnet)
Peça pra ele fazer o mesmo com o seu
servidor que está rodando.
Tentem trocar mensagens
8. Socket é uma abstração de comunicação
utilizado para vários tipos de dispositivos,
através dele um aplicativo pode enviar e
receber dados, faz-se uma analogia com a
manipulação de um arquivo aberto.
Os sockets permitem que os aplicativos se
conecte à rede afim de se comunicarem com
outras aplicações em uma mesma rede.
Desta forma as Informações escritas por um
aplicativo em uma máquina pode ser lido por
outro aplicativo em uma máquina diferente.
9.
10.
11. O UDP não possui garantia de entrega, portanto
geralmente ele é usado para aplicações de tempo
real (VOIP, MOIP, streams de vídeo) as quais
geralmente podem ter perdas e atrasos variados.
O TCP possui garantia de entrega (AKs/NAKs),
dessa forma ele garante a integridade dos dados
enviados e recebidos.
O TCP é o mais utilizado. Exemplos simples:
(terminais remotos, qualquer transferência de
arquivos, navegação web, chat e muitos outros).