URL: http://ppgia.pucpr.br/~jamhour Redes Prof. Edgard Jamhour email: jamhour@ppgia.pucpr.br URL: http://ppgia.pucpr.br/~jamhour.

Slides:



Advertisements
Apresentações semelhantes
REDES DE COMPUTADORES Prof. Evandro Cantú.
Advertisements

Capítulo 3: Camada de Transporte
TCP: Visão geral RFCs: 793, 1122, 1323, 2018, 2581 ponto a ponto:
Missão da camada de enlace Serviços oferecidos TCP UDP
Capítulo 3: Camada de Transporte
Família tcp/ip Prof: Diovani Milhorim
Redes I Os Protocolos Prof. Dr. Amine BERQIA
FEUPDEECRedes de Computadores, 4º Ano de EEC, ramo de ACI TCP (Transmission Control Protocol) Abril, 98Isidro Vila Verde 1 Aspectos Gerais.
Protocolos de Transporte da Pilha TCP/IP
Protocolos de Transporte da Pilha TCP/IP Profa. Ana Cristina Benso da Silva Redes de Computadores.
URL: CSMA/CD Prof. Edgard Jamhour URL:
EXERCÍCIOS DE REVISÃO REDES DE COMPUTADORES EDGARD JAMHOUR
Transporte Referência:
TCP: Visão geral RFCs: 793, 1122, 1323, 2018, 2581 ponto a ponto:
Capítulo 3: Camada de Transporte
Conteúdo do Capítulo Serviços da camada de transporte
TCP Serviço de Transporte Confiável
TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 ponto-a-ponto:
Paulo Roberto Freire Cunha
Obtenção de IP TCP UDP.
Universidade do Vale do Rio dos Sinos - São Leopoldo -
REVISÃO MÓDULO 3(Camada de Transporte)
TCP (Transmission Control Protocol)
PROTOCOLOS DE COMUNICAÇÃO
Escola Secundária Filipa de Vilhena Ano Lectivo 2010/ Turma IGR1
Modelo de referência OSI
Interconexão e Transporte em Redes
URI - Santo Ângelo - DECC
Redes Aula 7 Professor: Marcelo Maia.
Camada de Transporte OSI
Aula 64 – TEC 11ºF Redes de computadores Prof. António dos Anjos.
Capítulo 3: Camada de Transporte
O Modelo OSI Guilherme Guimarães.
Camada de Transporte prof. Eduardo.
Comunicação entre Processos - Sockets. Conceitos Básicos Sockets são uma forma de IPC ( InterProcess Communication ) fornecida pela 4.3 BSD que fornecem.
Transmission Control Protocol TCP
Transmission Control Protocol TCP
Comunicação de dados Protocolos básicos de enlace de dados.
Protocolos de Janela Deslizante
ARQUITECTURA TCP/IP.
© 2010 Pearson Prentice Hall. Todos os direitos reservados.slide 1 Capítulo 3 Camada de transporte Nota sobre o uso destes slides ppt: Estamos disponibilizando.
TCP Conexão Fiabilidade Full Duplex Entrega ordenada Controlo de fluxo
Escola Secundaria Sebastião da Gama Trabalho realizado por: André Santos 12ºL nº:2 Prof: Carlos Pereira.
REDES DE COMPUTADORES Camada de Transporte Professor: M.Sc. Carlos Oberdan Rolim.
Camada de Transporte: protocolo TCP Parte 1
MODELO DE REFERÊNCIA TCP/IP
Transmissão de Dados O Modelo de Referência TCP/IP
Protocolo TCP e UDP Ricardo Costa Nº 10 12ºL.
Escola Politécnica da USP abril de 2013 PTC 2550 – Redes de Comunicação De Dados e P1 Transporte Multimídia PTC 2550 – Redes de Comunicação De Dados e.
Disciplina: Comunicação de Dados Ricardo Bento 12ºL.
Arquitectura tcp. Camada tcp Ao contrário do protocolo UDP, o TCP representa um grande incremento de qualidade relativamente ao protocolo IP que lhe serve.
Arquitetura de Redes de Computadores – Luiz Paulo Maia Camada de Transporte1 Arquitetura de Redes de Computadores Luiz Paulo Maia Camada de Transporte.
1) A camada de transporte provê comunicação lógica entre hosts.
TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 ponto-a-ponto:
Redes de computadores: Camada de Transporte Prof. Dr. Amine BERQIA
Arquitetura TCP/IP Aplicação Transporte Rede Enlace Física.
TCP È um dos protocolos sob os quais assenta o núcleo da Internet nos dias de hoje. A versatilidade e robustez deste protocolo tornaram adequado para.
Escola Politécnica da USP abril de 2013 PTC 2550 – Redes de Comunicação De Dados e P1 Transporte Multimídia PTC 2550 – Redes de Comunicação De Dados e.
Rede de Computadores MAT164 – Redes de Computadores I Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.
Administração e Projeto de Redes Material de apoio Camada de Transporte Cap.4 10/02/2010.
Redes de computadores e a Internet
Arquitetura em Camadas
© 2010 Pearson Prentice Hall. Todos os direitos reservados.slide 1 Capítulo 3 Camada de transporte Nota sobre o uso destes slides ppt: Estamos disponibilizando.
Redes de Computadores Prof. Msc. Moisés Pereira Bastos.
Redes de Computadores Protocolos de Transporte
3: Camada de Transporte 3b-1 Conteúdo do Capítulo 3 r 3.1 Serviços da camada de transporte r 3.2 Multiplexação e demultiplexação r 3.3 Transporte não orientado.
Prof. Ivair Teixeira Redes de Computadores.
Redes de Computadores e Aplicações – Camada de Transporte IGOR ALVES.
Curso Superior em Redes de Computadores Camada de Transporte Prof. Sales Filho.
Escola de Ciência e Tecnologia Arquitetura TCP/IP Arquitetura TCP/IP Protocolos TCP, UDP e ICMP Etienne César R. de Oliveira
Transcrição da apresentação:

URL: http://ppgia.pucpr.br/~jamhour Redes Prof. Edgard Jamhour email: jamhour@ppgia.pucpr.br URL: http://ppgia.pucpr.br/~jamhour

CONTEÚDO 1) Camada de Transporte 2) TCP 3) UDP 3) Camada de Aplicação

Protocolo do nível de transporte Conceito: Os protocolos de transporte são capazes de manipular múltiplos endereços numa mesma estação, permitindo que várias aplicações executadas no mesmo computador possam enviar e receber datagramas independentemente.

Protocolo TCP Conceito: Protocolo da camada de transporte que oferece um serviço de comunicação confiável e orientado a conexão sobre a camada de rede IP. O Protocolo TCP (Transmission Control Protocol) é um protocolo orientado a conexão destinado a construir comunicações ponto a ponto confiáveis. O protocolo TCP utiliza um nível de endereçamento complementar aos endereços IP, que permite distinguir vários endereços de transporte numa mesma estação. Os endereços de transporte são números inteiros de 16 bits denominados portas.

Endereçamento por Portas

Transmissão Por Fluxo O protocolo TCP é implementado no sistema operacional. Ele oferce aos desenvolvedores a possibilidade de escrever aplicações que transmitem e recebem bytes num fluxo contínuo, sem se preocupar com a fragmentação dos dados em pacotes. aplicação aplicação Fluxo contínuo de bytes (stream) Fluxo contínuo de bytes (stream) socket socket TCP TCP segmentos segmentos IP IP

Segmentação O fluxo contínuo de bytes é transformado em segmentos para posterior encapsulamento no protocolo IP. O tamanho máximo de um segmento é denominado MSS (Maximum Segment Size). O valor default do MSS é geralmente escolhido de forma a evitar a fragmentação IP (MSS < MTU).

TCP = Protocolo Confiável O protocolo TCP é um protocolo confiável e orientado a conexão. A técnica usada pelo TCP é retransmissão por ausência de confirmção. Um protocolo confiável inclui mensagens para confirmação de recebimento Mensagem Processo Transmissor Processo Receptor ACK A mensagem é retransmitida se não houver confirmação Mensagem ACK Kernel Kernel REDE

Segmento TCP tamanho do cabeçalho em paravras de 32 bits FLAGS: URG, ACK, PSH, RST, SYN, FIN

Campos TCP Número de Sequência (32 bits) Corresponde ao número do primeiro byte do segmento em relação a fluxo contínuo de bytes da conexão TCP. Na prática, o número inicial não é 0, mas sim um número escolhido de forma aleatória para cada conexão. Essa técnica diminui a possiblidade de que segmentos de uma conexão antiga já encerrada sejam inseridos em novas conexões TCP. Número de Confirmação (32 bits) Número de sequência do próximo byte que o host está aguardando receber.

Comunicação Confiável 100 - 149 150 - 179 200 - 209 210 - 299 peer peer seq=100, conf=200, dados=50 bytes seq=200, conf=150, dados=10 bytes seq=150, conf=210, dados=30 seq=210, conf=180, dados=90 bytes tempo tempo

Estabelecimento de uma Conexão TCP Estágio 1: do cliente para o servidor (segmento SYN) Define o valor inicial do número de sequência do cliente: SEQ = clienteseq Flag de controle: SYN = 1, ACK = 0 Estágio 2: do servidor para o cliente (segmento SYNACK) Confirma o valor do número de sequência: ACK = clienteseq + 1 Define o valor inicial do número de sequencia do servidor SEQ = servidorseq SYN = 1, ACK = 1 Estágio 3: do cliente para o servidor SEQ = servidorseq + 1 ACK = servidorseq + 1 SYN = 0, ACK = 1

Encerramento da Conexão O encerramento de conexão e feito utilizando o Flag FIN. Exemplo: O cliente encerra a conexão Do cliente para o servidor FIN = 1 Do servidor para o cliente ACK

Retransmissão A técnica de retransmissão do TCP é o reconhecimento positivo com temporizadores. O TCP não usa NAK. Se o ACK não chegar no transmissor num tempo pré-determinado, o segmento é retransmitido. O receptor pode enviar pacotes sem dados, apenas com confirmação, quando não tem nada para transmitir.

Temporização A temporização é estimada em função do tempo médio de Round-Trip Time (RTT) para enviar e confirmar um segmento. O transmissor pode adotar várias técnicas para estimar este tempo. Uma estratégia comum é a seguinte: EstimatedRTT = 0.875 EstimatedRTT + 0.125 SampleRTT Temporizador = EstimatedRTT + 4 . Desvio Desvio = 0.875 Desvio + 0.125 (SampleRTT – EstimatedRTT) Onde: SampleRTT: última medição de RTT Desvio: medida da flutuação do valor do RTT

Recomendações RFC 1122 e 2581 EVENTO Chegada de um segmento na ordem. Chegada de um segmento fora de ordem (número mais alto que o esperado). Chegada de um segmento que preenche a lacuna. AÇÃO TCP DESTINATÁRIO Aguarda 500 ms. Se outro segmento não chegar, confirma o segmento. Se outro segmento vier, confirma os dois com um único ACK. Envia imediatamente o ACK duplicado com o número do byte aguardado (isto é, repete o último ACK de ordem correta). Envia imediatamente o ACK (se o preechimento foi na parte contigua baixa da lacuna).

Retransmissão Rápida Segmentos que são recebidos fora de ordem não são confirmados pelo receptor. O receptor repete o último valor confirmado para o transmissor. Se o transmissor receber 3 segmentos com o mesmo número de confirmação, ele retransmite os segmentos perdidos. Essa técnica é denominada retransmissão rápida (retransmissão antes de expirar o temporizador do segmento). Algumas implementações de TCP usam a retransmissão de 3 ACK duplicados como um NAK implícito.

Janela de Recepção (32 bits) Controle de Fluxo Janela de Recepção (32 bits) Informa a quantidade de bytes disponíveis no buffer de recepção do host. Quando o receptor informa ao transmissor que a janela de recepção tem tamanho 0, o transmissor entra num modo de transmissão de segmentos de 1 byte, até que o buffer do receptor libere espaço.

Controle de Fluxo Transmissão de A para B RcvBuffer = buffer de recepção de B LastByteRead = número do último byte lido pela aplicação B LastByteRcvd = último byte recebido por B A janela de recepção enviada de B para A é definida por: RcvWindow = RcvBuffer - [LastByteRcvd - LastByteRead] A quantidade máxima de pacotes de A para B é dada por: LastByteSent - LastByteAcked <= RcvWindow

Controle de Congestionamento Na prática, o TCP impõe uma outra janela que limita o enviou de bytes pelo tranmissor: LastByteSent - LastByteAcket <= min(CongWin, RcvWindow) A janela CongWin é recalculada a cada RTT. A taxa de envio máxima é dada por: CongWing/RTT bytes/s A janela CongWin é aumentada pelo transmissor se seus pacotes são recebidos com sucesso, e diminuída em caso de falha.

Algoritmo a) Inicialização: CongWin = 1 MSS (Maximum Segment Size = 1460 bytes) Threshold = 65 kbps b) Fase de crescimento exponencial (a cada ACK recebido) se CongWin < Threshold vai para Partida Lenta CongWin = CongWin + MSS Isto é, CongWin= Congwin*2 por RTT senão vai para Prevenção de Congestionamento CongWin = CongWin + (MSS/CongWin) Isto é, CongWin = CongWin + 1 MSS por RTT c) Em caso de detecção de perda por 3 ACK duplicados: Threshold = CongWin = CongWin/2 Vai para prevenção de congestionamento d) Em caso de detecção de perda por Temporização Threshold = CongWin/2 CongWin = 1 MSS (volta para partida lenta)

Variantes do TCP TCP Tahoe: TCP Reno: TCP Vegas: mais antiga volta para partida lenta (CongWin=1MSS) para qualquer evento de perda TCP Reno: mais recente adota uma recuperação rápida (CongWin=CongWin/2) no caso de deteção de perda por 3 ACK duplicados e partida lenta em caso de detecção de perda por temporização. TCP Vegas: proposta Reduz a taxa de transmissão de pacotes mesmo antes da ocorrência de perda, monitorando o aumento do valor do RTT (confirmação dos ACKs).

Outros Bits de Controle PHS O receptor deve passar os dados imediatamente para a camada superior. URG Existem dados no segmento marcados como urgentes. A indicação do último byte considerado urgente no segmento é definida pelo ponteiro de urgência (16 bits).

Protocolo UDP Conceito: Protocolo da camada de transporte que oferece um serviço de comunicação não orientado a conexão, construído sobre a camada de rede IP. Sendo não orientado a conexão, o protocolo UDP pode ser utilizado tanto em comunicações do tipo difusão (broadcast) quanto ponto a ponto.

Mensagem UDP As mensagens UDP são bem mais simples que o TCP pois não oferece a mesma qualidade de serviço.

TCP X UDP TCP UDP Orientado a Conexão Não Orientado a Conexão Transmissão por Fluxo Segmentação e Remontagem feita pelo S.O. Transmissão por Datagramas: Segmentação e Remontagem feita pela aplicação. Confiável (confirma recebimento e retransmite pacotes perdidos) Não confiável Somente Unicast Unicast, Multicast ou BroadCast Controle de Fluxo Controle de Congestionamento Sem controle Indicado para transferir grandes quantidades de dados Indicado para transmissões rápidas (poucos dados) ou que não admitam grande atraso (tempo-real)

Protocolos do nível de aplicação. Conceito: Protocolos que disponibilizam serviços padronizados de comunicação, destinados a dar suporte ao desenvolvimento de aplicações para os usuários.

Descrição dos Protocolos de Aplicação FTP: File Transfer Protocol. Protocolo que implementa serviços de transferência de arquivos de uma estação para outra (ponto a ponto) através de rede. TELNET: Serviço de Terminal Remoto. Protocolo utilizado para permitir aos usuários controlarem estações remotas através da rede. SMTP: Simple Mail Transfer Protocol. Protocolo utilizado para transferência de mensagens de correio eletrônico de uma estação para outra. Esse protocolo especifica como 2 sistemas de correio eletrônico interagem. HTTP: Hypertext Tranfer Protocol. Protocolo utilizado para transferência de informações multimídia: texto, imagens, som, vídeo, etc. SNMP: Simple Network Monitoring Protocol. Protocolo utilizado para monitorar o estado das estações, roteadores e outros dispositivos que compõe a rede. NFS: Network File System. Protocolo desenvolvido pela "SUN Microsystems, Incorporated", que permite que as estações compartilhem recursos de armazenamento de arquivos através da rede.