Camada de Transporte. Protocolos TCP e UDP

Documentos relacionados
Camada de Transporte. Protocolos TCP e UDP

Protocolos TCP e UDP. Protocolo TCP. Protocolo TCP. A necessidade de uma comunicação segura: Transmission Control Protocol

PROTOCOLOS DE COMUNICAÇÃO

Camada de Transporte Protocolos TCP e UDP

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

Jéfer Benedett Dörr

Protocolos com paralelismo (pipelining) Pipelining: aumento da utilização

SSC0641 Redes de Computadores

Redes de Computadores

Redes de Computadores. Camada de Transporte

TRANSPORTE. Prof. Me. Hélio Esperidião

Redes de computadores e a Internet. Capítulo 3. Camada de transporte

PTC Aula Transporte orientado para conexão: TCP. (Kurose, p ) (Peterson, p e ) 23/05/2017

AULA 3 - REDES. Prof. Pedro Braconnot Velloso

Protocolos de Interligação de Redes Locais e a Distância Protocolos de Transporte. Thiago Leite

Rede de computadores Protocolos UDP. Professor Carlos Muniz

Redes de Computadores

Funções da Camada de

Fragmentos das máquinas de estados finitos do RDT 2.2 (fonte: Kurose)

Agenda. Rede de Computadores (Técnico em Informática) Protocolo TCP Transmission Control Protocol. Introdução ao Protocolo TCP

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIADO RIO GRANDE DO NORTE IFRN

Protocolo de transporte em tempo-real (Real- Time Transport Protocol) Definido na RFC 3350 Normalmente usado sobre o UDP Serviços

Camada de transporte. Camada de transporte

Camada de Transporte Parte II Gerson Porciúncula 5 semestre

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581

Computadores Digitais 2. Prof. Rodrigo de Souza Couto

REVISÃO - Questões de Redes em Concursos. Semestre: 2 Bimestre:2 Data: / / 2013

Descrever os protocolos da camada de transporte da arquitetura TCP/IP e apresentar

Funcionalidades da camada de rede

Camada de Transporte, protocolos TCP e UDP

Rede de computadores Protocolos TCP. Professor Carlos Muniz

Tecnologia de Redes. Protocolo TCP

FUNDAMENTOS DE REDES DE COMPUTADORES Unidade 5 Camada de Transporte e Aplicação. Luiz Leão

Redes de Computadores

Redes de Computadores e Telecomunicações - Camada de Transporte

Redes de Computadores. Camada de Transporte de Dados: protocolos TCP e UDP Prof. MSc Hugo Vieira L. Souza

Redes de Computadores

Nível de Enlace. Nível de Enlace. Serviços. Serviços. Serviços. Serviços. Serviços oferecidos os nível de rede

REDES DE COMPUTADORES

Novos Protocolos de Streaming MMTP e SCTP

REDES DE COMPUTADORES

Redes de Computadores. Trabalho de Laboratório Nº7

Resumo P2. Internet e Arquitetura TCP/IP

Capítulo 3. A camada de enlace de dados

Redes de Computadores

Introdução à Redes de Computadores

Lista de Exercícios. Camada de Enlace de Dados

Nível de Transporte Portas, Protocolos UDP e TCP

Capítulo 3: Camada de Transporte. Multiplexação/desmultiplexação. Serviços e protocolos de transporte. Antônio Abelém abelem@ufpa.

REDES DE COMPUTADORES

Curso de Redes de Computadores

Redes TCP/IP. Protocolos de Transporte e Aplicação

TCP - multiplexação/demultiplexação

Redes de Computadores II

Redes de Computadores

TCP: Visão geral RFCs: 793, 1122, 1323, 2018, 2581

PTC Aula Princípios do controle de congestionamento 3.7 Controle de congestionamento no TCP

Prof. Marcelo Cunha Parte 6

CCNA 2 Conceitos Básicos de Roteadores e Roteamento

Níkolas Timóteo Paulino da Silva Redes de Computadores I ADS 2ºTermo

CCNA 1 Conceitos Básicos de Redes. Módulo 11 Camada de Transporte TCP/IP Camada de Aplicação

Protocolos de Rede. Protocolos em camadas

Trabalho do Curso de Redes de Computadores COS765/MAB /1

1. PRINCIPAIS PROTOCOLOS TCP/IP

Lista de exercícios - 1º bimestre 2016 REDES

REDES DE COMPUTADORES

Transcrição:

Camada de Transporte Protocolos TCP e UDP

O estabelecimento de conexão Como estabelecer a conexão de maneira confiável? Handshake de 3 vias SYN SYN ACK ACK

Transferência Confiável de Dados Importante nas camadas de aplicação, transporte e enlace Top-10 na lista dos tópicos mais importantes de redes! Caracteristicas dos canais não confiáveis determinarão a complexidade dos protocolos confiáveis de transferência de dados (rdt)

Transferência confiável: o ponto de partida rdt_send(): chamada da camada superior, (ex., pela aplicação). Passa dados para entregar à camada superior receptora deliver_data(): chamada pela entidade de transporte para entregar dados para cima lado transmissor lado receptor udt_send(): chamada pela entidade de transporte, para transferir pacotes para o receptor sobre o canal não confiável rdt_rcv(): chamada quando o pacote chega ao lado receptor do canal

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 ponto-a-ponto: um transmissor, um receptor confiável, seqüêncial byte stream: não há contornos de mensagens pipelined: (transmissão de vários pacotes em confirmação) Controle de congestão e de fluxo definem tamanho da janela buffers de transmissão e de recepção dados full-duplex: transmissão bi-direcional na mesma conexão MSS: maximum segment size orientado à conexão: handshaking (troca de mensagens de controle) inicia o estado do transmissor e do receptor antes da troca de dados controle de fluxo: transmissor não esgota a capacidade do receptor socket port aplicação envia dados TCP buffe de txr aplicação lê dados TCP buffer de rx socket port segment

Sockets socket port aplicação envia dados TCP aplicação lê dados TCP socket port buffe de txr segmento buffer de rx

Estrutura do Segmento TCP URG: dados urgentes (pouco usado) ACK: campo de ACK é válido PSH: produz envio de dados (pouco usado) RST, SYN, FIN: estabelec. de conexão (comandos de criação e término) Internet checksum (como no UDP) tam. cabe c. 32 bits porta porta origem número de seqüência destino número de reconhecimento não usad o U A P R S F janela de recep. dados urgentes Opções (tamanho variável) checksu m dados de aplicação (tamanho variável) contagem por bytes de dados (não segmentos!) número de bytes receptor está pronto para aceitar

Protocolo TCP Ponto-a-ponto: um transmissor, um receptor Confiável, seqüêncial de bytes stream. Pipelined: transmissão de vários pacotes em confirmação Controle de congestão e de fluxo definem tamanho da janela Usa buffers de transmissão e de recepção

Protocolo TCP Dados full-duplex: Transmissão bi-direcional na mesma conexão Orientado à conexão: Handshaking: troca de mensagens de controle, inicia o estado do transmissor e do receptor antes da troca de dados Controle de fluxo: transmissor não esgota a capacidade do receptor

Protocolo TCP socket porta Aplicação envia dados TCP buffe de tx Aplicação lê dados TCP buffer de rx socket porta segmento

Protocolo TCP URG: dados urgentes (pouco usado) ACK:é um segmento de confirmação PSH: envio de dados RST, SYN, FIN: estabelec. de conexão (comandos de criação e término) Internet checksum (como no UDP) porta origem tam. cabec. 32 bits porta destino número de seqüência número de reconhecimento não usado UA P R S F checksum janela de recep. dados urgentes Opções (tamanho variável) dados de aplicação (tamanho variável) contagem por bytes de dados (não segmentos!) número de bytes receptor está pronto para aceitar

Campos do TCP Portas de Origem e Destino (16 bits cada): Números das porta que indicam os programas da camada de aplicação Número de Sequência (32 bits): Usado para manter a ordem dos segmentos Número de Ack: se é um pacote de confirmação indica qual o segmento que está sendo confirmado Hlen: Header Length tamanho do cabeçalho TCP em unidades de 4 bytes (32 bits). Padrão 5.

Campos do TCP Flags URG Há dados urgentes a serem entregues neste segmento ACK Este é um segmento de confirmação (acknowledge) PSH Push indica que este é um segmento que contém dados RST Reset a conexão precisa ser reiniciada (fechada imediatamente) SYN Estabelece uma nova conexão FIN Finaliza uma conexão

Campos do TCP Window indica qual o espaço disponível na memória local para recepção de dados Urgent Pointer Indica que parte dos dados sendo transmitidos é urgente Options É opcional não necessariamente presente, pode trazer informações como tamanho máximo do segmento etc. Pad Enchimento dados aleatórios adicionados para fechar os 4 bytes se estiver usando options Data os dados efetivamente transmitidos

Janelamento Transmissor: Número de seqüência com k bits no cabeçalho do pacote janela de até N pacotes não reconhecidos, consecutivos, são permitidos

Ack Confirmação de recebimento ACK(n): reconhece todos os pacotes até o número de sequência N (incluindo este limite). ACK cumulativo Há um temporizador para cada pacote enviado e não confirmado Timeout(n): retransmite pacote n e todos os pacotes com número de sequência maior que estejam dentro da janela

Retransmissão de segmentos

Fechando a conexão Passo 1: o cliente envia o segmento TCP FIN ao servidor close cliente FIN servidor Passo 2: servidor recebe FIN, responde com ACK. Fecha a conexão, envia FIN. es p er a t emp. closed ACK FIN ACK close

Fechando a conexão Passo 3: cliente recebe FIN, responde com ACK. fechar cliente FIN servidor Entra espera temporizada - vai responder com ACK a FINs recebidos Passo 4: servidor, recebe ACK. Conexão fechada. es p er a t emp. feachada ACK FIN ACK fechar

Protocolo UDP Protocolo de transporte da Internet sem gorduras Serviço best effort, segmentos UDP podem ser: perdidos entregues fora de ordem para a aplicação Sem conexão: não há apresentação entre o UDP transmissor e o receptor cada segmento UDP é tratado de forma independente dos outros

Vantagens do UDP Não há estabelecimento de conexão (que pode redundar em atrasos) Simples: não há estado de conexão nem no transmissor, nem no receptor Cabeçalho de segmento reduzido Não há controle de congestionamento: UDP pode enviar segmentos tão rápido quanto possível

UDP Muito usado por aplicações de mutimídia contínua (Voz e vídeo) tolerantes à perda sensíveis à taxa Outros usos do UDP DNS Tamanho, em bytes do segmento UDP, incluíndo cabeçalho 32 bits porta origem porta destino tamanho checksum SNMP Transferência confiável sobre UDP: acrescentar confiabilidade na camada de aplicação recuperação de erro específica de cada aplicação Dados de Aplicação (mensagem) formato do segmento UDP

UDP Checksum Objetivo: detectar erros (ex.,bits trocados) no segmento transmitido Transmissor: computa o checksum do segmento a enviar coloca o valor do checksum no campo de checksum do UDP Receptor: computa o checksum do segmento recebido verifica se o checksum calculado é igual ao valor do campo checksum: Checksum diferente - erro detectado Checksum igual - não há erros

Atividade Descreva as características do protocolo TCP. Em que situação é recomendado o uso do UDP Descreva a funcão do campo window Qual a função do campo número de sequência Descreva o handshake em 3 vias