Redes I Os Protocolos Prof. Dr. Amine BERQIA [email protected] bamine
Transcript of Redes I Os Protocolos Prof. Dr. Amine BERQIA [email protected] bamine
![Page 1: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/1.jpg)
Redes IRedes I Os Protocolos Os Protocolos
Prof. Dr. Amine BERQIAProf. Dr. Amine BERQIA
[email protected] [email protected]
http://w3.ualg.pt/~bamine/http://w3.ualg.pt/~bamine/
![Page 2: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/2.jpg)
DefiniçãoDefinição
Um protocolo é uma descrição formal de Um protocolo é uma descrição formal de regras e de convenções a seguir em regras e de convenções a seguir em
uma troca de informações, que seja para uma troca de informações, que seja para encaminhar os dados até ao encaminhar os dados até ao
destinatário ou para que destinatário ou para que
destinatário compreenda como deve destinatário compreenda como deve utilizar os dados que recebeu. utilizar os dados que recebeu.
![Page 3: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/3.jpg)
Protocolos de transporte Protocolos de transporte
Fornece comunicação de aplicação-para-aplicação Fornece comunicação de aplicação-para-aplicação Precisa dum mecanismo adicional de Precisa dum mecanismo adicional de
endereçamento para identificar aplicações endereçamento para identificar aplicações Designa-se por extremo-a-extremoDesigna-se por extremo-a-extremo Pode fornecer:Pode fornecer:
FiabilidadeFiabilidade Controlo de FluxoControlo de Fluxo Controlo CongestãoControlo Congestão
![Page 4: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/4.jpg)
Exemplo de Camada Transporte : Exemplo de Camada Transporte : Transmission Control Protocol (TCP)Transmission Control Protocol (TCP)
Normalizado pelo IETF como RFC 793 Protocolo mais popular da Camada 4 Protocolo orientado à conexão Funciona entre aplicações e IP Funcionamento Full-duplex Interface tipo byte-stream
![Page 5: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/5.jpg)
Resumo do TCP Resumo do TCP
Fornece um serviço de transporte de fluxo full-duplex, orientado à conexão completamente fiável (nenhuma duplicação ou perda de dados), que permite dois programas aplicativos formar uma conexão, enviar dados em qualquer uma das direcções e então terminar a conexão.
![Page 6: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/6.jpg)
Relação Entre o TCP e Relação Entre o TCP e Outros Protocolos Outros Protocolos
TCP num computador utiliza o IP para comunicar com TCP noutro
computador
![Page 7: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/7.jpg)
Aparente ContradiçãoAparente Contradição
IP oferece entrega melhor-esforço (não fiável) TCP utiliza o IP TCP fornece transferência completamente
fiável Como é isto possível?
![Page 8: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/8.jpg)
Conseguir FiabilidadeConseguir Fiabilidade
Estabelecimento fiável da conexãoEstabelecimento fiável da conexão Transmissão fiável dos dadosTransmissão fiável dos dados Terminação fiável da conexãoTerminação fiável da conexão
![Page 9: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/9.jpg)
Transmissão fiável dos Transmissão fiável dos dados dados
Confirmação positiva Confirmação positiva O receptor devolve uma curta mensagem na chegada de O receptor devolve uma curta mensagem na chegada de
dadosdados Designa-se por confirmação (Designa-se por confirmação (acknowledgement)acknowledgement)
Retransmissão Retransmissão Remetente inicia cronometro sempre que uma Remetente inicia cronometro sempre que uma
mensagem é transmitida mensagem é transmitida Se o cronometro expira antes duma confirmação Se o cronometro expira antes duma confirmação
chegar, o remetente retransmite a mensagem chegar, o remetente retransmite a mensagem
![Page 10: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/10.jpg)
Retransmissão Retransmissão
![Page 11: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/11.jpg)
Quanto tempo deverá Quanto tempo deverá esperar o TCP Antes de esperar o TCP Antes de
Retransmitir? Retransmitir?
Tempo que leva para chegar uma confirmação depende de Distancia ao destino Presente condições de tráfego
Conexões múltiplas podem ser abertas simultaneamente
Condições de tráfego mudam rapidamente
![Page 12: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/12.jpg)
Resolver o Problema da Resolver o Problema da Retransmissão Retransmissão
Manter estimativa do tempo de viagem de ida-e-volta de cada conexão
Utilizar estimativa actual para fixar cronometro de retransmissão
Designado por retransmissão adaptável Motivo de sucesso do TCP
![Page 13: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/13.jpg)
Retransmissão adaptável Retransmissão adaptável
Intervalo depende da presente estimativa de ida-e-volta Intervalo depende da presente estimativa de ida-e-volta
![Page 14: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/14.jpg)
TCP Controlo de FluxoTCP Controlo de Fluxo
Receptor Receptor Anuncia espaço de Anuncia espaço de buffer buffer disponível disponível Designa-se por janela Designa-se por janela
RemetenteRemetentePode enviar até ao limite da janela antes da Pode enviar até ao limite da janela antes da
chegada do ACKchegada do ACK Também designado por protocolo de janela Também designado por protocolo de janela
deslizante (deslizante (sliding window protocolsliding window protocol))
![Page 15: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/15.jpg)
Estabelecimento e Estabelecimento e Terminação Terminação
Estabelecimento da conexão Estabelecimento da conexão Tem de ser fiávelTem de ser fiável
Terminação da conexão Terminação da conexão Deve ser graciosa Deve ser graciosa
Difícil Difícil
![Page 16: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/16.jpg)
Por que Por que Startup/Shutdown é Difícil Startup/Shutdown é Difícil
Segmentos podem ser perdidos duplicados atrasados entregue fora de ordemqualquer um dos participantes pode bloquear qualquer um dos participantes pode reiniciar
Necessário evitar que mensagem duplicada de terminação venha afectar conexão posterior
![Page 17: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/17.jpg)
A Solução de A Solução de Estabelecimento do TCP Estabelecimento do TCP
Utiliza troca de três mensagens Conhecido como “3-way handshake” Necessário e suficiente para estabelecimento
fiável e não ambígua Mensagens SYN (Synchronize) são utilizadas
para estabelecimento de conexão
![Page 18: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/18.jpg)
3-Way Handshake3-Way Handshake
![Page 19: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/19.jpg)
A Terminação do TCP A Terminação do TCP
![Page 20: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/20.jpg)
Portas de protocolo Portas de protocolo
A cada aplicação é atribuído um numero distinto Servidor
É Normalizado Utiliza sempre o mesmo número da porta Normalmente utiliza números de porta mais baixos
Cliente Obtém porto não utilizada do software de protocolo Normalmente utiliza números da porta mais altos
Veja / etc/services
![Page 21: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/21.jpg)
Exemplo de Porta de Exemplo de Porta de protocolo protocolo
Aplicação de servidor Web atribuída a porta 80 Aplicação cliente Web obtém porto 32938 Segmento de TCP enviado do cliente para servidor
tem número da porta origem 32938 número da porta destino 80
Quando servidor Web responder, segmento de TCP tem número da porta origem 80 número da porta destino 32938
![Page 22: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/22.jpg)
TCP Segmento Formato TCP Segmento Formato
![Page 23: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/23.jpg)
User Datagram Protocol User Datagram Protocol (UDP) (UDP)
Entrega de mensagem não fiável Protocolo sem conexão Nenhum controlo de fluxo (nenhuma janela) Nenhuma recuperação de erro (não há ACKs) Permite multiplexação da aplicação Detecção de erros opcional (campo de checksum)
![Page 24: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/24.jpg)
UDP Mensagem Formato UDP Mensagem Formato
![Page 25: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/25.jpg)
SMTP SMTP
Simple Mail Transfer Protocol SMTP Definido no RFC 821
Utiliza protocolo TCP Utilzado entre
Programa de transferência de correio no computador do remetente
Servidor de correio do destinatário Especifica como
Cliente interage com o servidor Destinatários são especificadosMensagem é transferida
![Page 26: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/26.jpg)
TELNET TELNET
Definido em RFC 854 Permite acesso interactivo a um computador de um local
remoto Interface texto Utilizador
invoca o cliente especifica computador remoto
Cliente inicializa conexão TCP ao servidor Transmite teclas premidas através da conexão exibe resultados em tela
![Page 27: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/27.jpg)
Protocolo de Protocolo de transferência de ficheiros transferência de ficheiros
(FTP) (FTP)
Definido no RFC 959 Cópia completa de ficheiro Utiliza o TCP Suporta transferências de ficheiros binários ou
de texto Conjunto extenso de comandos Até 1995, era a fonte principal de pacotes na
Internet
![Page 28: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/28.jpg)
FTP FTP
![Page 29: Redes I Os Protocolos Prof. Dr. Amine BERQIA bamine@ualg.pt bamine](https://reader036.fdocument.pub/reader036/viewer/2022081507/552fc101497959413d8bd688/html5/thumbnails/29.jpg)
Protocolo de Protocolo de Transferência de Transferência de
hipertexto (HTTP) hipertexto (HTTP)
Servidor Web disponibiliza páginas Servidor utiliza a porta 80 por defeito Cliente Web (browser) requisita páginas Cria uma conexão TCP ao servidor HTTP assenta em cima do TCP HTTP v1.1 definido no RFC 2068
melhoramento principal em relação á v1.0: única conexão de TCP para múltiplos pedidos de HTTP