1 / 23

Aula 64 – TEC 11ºF

Aula 64 – TEC 11ºF. Redes de computadores Prof. António dos Anjos. Camada de Transporte (relembrar). Assegura a entrega fiável dos pacotes: Como estabelecer uma ligação lógica? (e.g. SYN, FIN) Como saber se o pacote foi entregue com sucesso? (e.g. ACK ≈ Aviso Recepção);

anevay
Download Presentation

Aula 64 – TEC 11ºF

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aula 64 – TEC 11ºF Redes de computadores Prof. António dos Anjos

  2. Camada de Transporte (relembrar) • Assegura a entrega fiável dos pacotes: • Como estabelecer uma ligação lógica? (e.g. SYN, FIN) • Como saber se o pacote foi entregue com sucesso? (e.g. ACK ≈ Aviso Recepção); • Quanto tempo esperar pela confirmação? • Como fazer para não sobrecarregar o destinatário com demasiados pacotes? (e.g. WinSize); • Que mecanismos utilizar para permitir o reagrupamento dos pacotes ao nível lógico? (e.g. Sequence Number). • Ao nível da Camada de Transporte, a unidade de informação é o SEGMENTO. • Exemplos de protocolos que respondem: TCP, UDP.

  3. Camada de Transporte – Protocolos • Temos: • TCP – Transmission Control Protocol; • Usado por Telnet, HTTP, POP, FTP, etc… • UDP – User Datagram Protocol; • Usado por DHCP, TFTP, SNMP, etc… • Objectivos: • Permitir comunicação entre aplicações; • Dotar a comunicação de fiabilidade (se desejado); • Controlar fluxo e congestão (se desejado).

  4. Camada de Transporte – Protocolos (2) • Necessitam de: • Mecanismo de endereçamento adicional para identificar cada uma das aplicações que estão a comunicar; • As aplicações são identificadas por um número ao qual se chama porta; • Exemplos: • HTTP é identificado pelo número 80; • FTP é identificado pelo número 21; • NOTA: O tema portas será aprofundado ao se analisar os protocolos da camada de aplicação!

  5. TCP – Transmission Control Protocol • Normalizado pelo IETF como RFC 793; • O mais conhecido da camada de transporte (TCP/IP suite); • Protocolo orientado à ligação; • Estabelece a ligação lógica entre duas aplicações; • Transposta os dados entre elas; • Termina a ligação. • Criado para assegurar a fiabilidade comunicações de dados.

  6. TCP – Fiabilidade • Estabelecimento fiável de ligação; • Transmissão fiável de dados; • Encerramento fiável da ligação.

  7. TCP – Estabelecimento de Ligação • Faz-se através da troca de três mensagens: • “Three-way handshake” (aperto de mão a três tempos); • O mínimo e suficiente para assegurar o estabelecimento da ligação; • São utilizadas mensagens: • De sincronização (SYN – Synchronize); • De confirmação (ACK – Acknowledged).

  8. TCP – 3-Way Handshake Tempo Tempo Envia SYN Recebe SYN Envia SYN + ACK Recebe SYN + ACK Envia ACK Recebe ACK Comunicação Estabelecida!!!

  9. TCP – Transmissão Fiável • Confirmação de recepção: • O receptor confirma, através de uma mensagem curta (Acknowledgment), que recebeu o segmento enviado; • Retransmissão: • Se a confirmação não for recebida dentro de um período determinado, o segmento é reenviado;

  10. TCP – Transmissão Fiável (2)

  11. TCP - Retransmissão • Quanto tempo esperar pela confirmação (ACK)? • Depende da distância ao destino e das condições do tráfego no momento. • O tempo de espera num determinado momento é estimado a partir do Round-Trip Time de cada ligação e o tempo estimado presente: • Chama-se, por isso, retransmissão adaptável; • O segredo do sucesso do TCP!

  12. TCP – Controlo de Congestão • A congestão é detectada por: • Ocorrência de Timeout (ACKs não chegam); • Recepção duplicada de ACKs. • Ao serem detectadas colisões: • O envio de segmentos é reduzido drásticamente (Collision Avoidance Algorithm); • Depois começa a aumentar devagar, inicialmente, e exponencialmente com o tempo (Slow Start Algorithm);

  13. TCP – Controlo de Fluxo • O receptor: • Anuncia, a cada ACK, o espaço livre do seu bufffer (window size); • O emissor: • Envia segmentos até ao limite da janela (window size), sem ter de esperar por confirmação (ACKs); • Este mecanismo é conhecido como Protocolo da Janela Deslizante (Sliding Window Protocol).

  14. TCP –Encerramento Fiável • Importante por causa da segurança: • Se não for encerrada de forma correcta, poderão ficar portas abertas; • Alguém mal intencionado poderá aproveitar.

  15. TCP – Encerramento Fiável (2)

  16. TCP – Encerramento Fiável (3) • O mecanismo de encerramento do TCP permite que uma das partes termine a ligação e a outra possa continuar a enviar dados; • Chama-se half-close: • O fecho da ligação num dos lados, não obriga ao fecho de ambos.

  17. TCP - Formato

  18. TCP – Formato (2) • Source/Destination Port • Porta remetente/destinatária (aplicação); • Sequence Number • Número de sequência do pacote; • Acknowledgment Number • Próximo número de sequência que o emissor espera receber; • HLen • Tamanho do cabeçalho;

  19. TCP – Formato (3) • URG • O campo Urgent Pointer é válido; • ACK • O segmento é uma confirmação (Acknlowledgement); • PSH • O receptor deverá passar os dados para a camada de aplicação logo que possível; • RST • Segmento enviado não faz sentido (e.g. porta não existe); • SYN • Pedido de sincronização de números de sequência (p/iniciar ligação); • FIN • Computador emissor acabou o envio de dados (p/terminar ligação);

  20. TCP – Formato (4) • Window • Número de bytes que o host está disposto a aceitar (espaço livre no buffer); • Checksum • Cobre o cabeçalho + dados; • Urgent Pointer • Posição onde serão colocados os dados urgentes. • Options • A opção mais comum é a MSS que define o tamanho máximo do segmento que pode ser enviado.

  21. UDP – User Datagram Protocol • A entrega da mensagem não é assegurada (não fiável); • Não é estabelecida ligação; • Não há controlo de fluxo (não tem Window); • Não há recuperação de erros (não há ACKs); • Detecção de erros opcional (Checksum é opcional); • VANTAGEM? • Muito menor overhead!

  22. UDP - Formato • Lenght • Comprimento em bytes do cabeçalho + dados;

  23. TPC • Faça a análise de uma sessão de HTTP: • Atenção ao 3-Way Handshake; • Atenção à terminação da ligação; • Tente perceber as mensagens da coluna Info (no Ethereal); • Esquematize os dois acontecimentos. • Utilize os filtros de captura para capturar apenas segmentos de TCP e o tráfego do seu computador; • Ajudas: • Para iniciar sessão: Executar um browser de Internet com um endereço web. • Escolha uma página simples. Por exemplo http://www.google.pt.

More Related