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

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

Apr 21, 2015

Download

Documents

Internet User
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Aula 64 – TEC 11ºF Redes de computadores Prof. António dos Anjos.

Aula 64 – TEC 11ºF

Redes de computadores

Prof. António dos Anjos

Page 2: 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);

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.

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

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).

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

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!

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

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.

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

TCP – Fiabilidade

Estabelecimento fiável de ligação;

Transmissão fiável de dados;

Encerramento fiável da ligação.

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

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).

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

TCP – 3-Way Handshake

Envia SYN

Recebe SYN

Envia SYN + ACK

Recebe SYN + ACK

Envia ACK

Recebe ACK

Comunicação Estabelecida!!!

Tempo Tempo

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

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;

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

TCP – Transmissão Fiável (2)

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

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!

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

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);

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

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).

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

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.

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

TCP – Encerramento Fiável (2)

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

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.

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

TCP - Formato

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

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;

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

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);

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

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.

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

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!

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

UDP - Formato

Lenght Comprimento em bytes do cabeçalho + dados;

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

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.