PROTOCOLOS DE COMUNICAÇÃO

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

Camada de Transporte Protocolos TCP e UDP

Camada de Transporte. Protocolos TCP e UDP

Redes de Computadores. Prof. André Y. Kusumoto

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

Jéfer Benedett Dörr

Redes de Computadores e Aplicações. Aula 43 - Camada de Transporte TCP (Transmission Control Protocol)

Arquitetura de Redes de Computadores

Redes de Computadores

Redes de Computadores II. Camada de Transporte Visão Geral de Sockets

Funções da. Os principais serviços oferecidos pela camada de transporte são: Controle de conexão, Fragmentação, Endereçamento e Confiabilidade.

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

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

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

Nível de Transporte Portas, Protocolos UDP e TCP

Redes de Computadores

Funções da Camada de

Rede de computadores Protocolos TCP. Professor Carlos Muniz

Resumo P2. Internet e Arquitetura TCP/IP

Rede de computadores Protocolos UDP. Professor Carlos Muniz

Redes de Computadores. Camada de Transporte

AULA 3 - REDES. Prof. Pedro Braconnot Velloso

Redes: Quais as diferenças entre o Protocolo TCP e UDP

Capítulo 9: Camada de Transporte

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

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

Direto ou Indireto Monolítico ou Estruturado Simétrico ou Assimétrico Padronizado ou Não-Padronizado

Modelo de Referência OSI

Redes de Computadores

Sistemas Operacionais - Básico e Avançado - Prof. Celso Maciel da Costa Mestrado em Informática - PUCRS

PTC Aula Princípios da transferência de dados confiável 3.5 Transporte orientado para conexão: TCP

Canais de Comunicação

Capítulo 3 Camada de transporte

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

REDES DE COMPUTADORES

Redes de Computadores LTI

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

PTC Aula A camada de transporte. (Kurose, p ) 15/03/2017

Sockets - Conceitos Básicos. COMUNICAÇÃO ENTRE PROCESSOS Sockets. Conceitos Básicos. Tipos de Sockets

Camada de Transporte. Protocolos TCP e UDP

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

Protocolos da Arquitetura TCP/IP

Redes de Computadores Arquitetura TCP/IP. Prof. Alberto Felipe

Prof. Marcelo Cunha Parte 6

REDES DE COMPUTADORES

Redes de Computadores. Protocolos TCP/IP

Capítulo 3 Camada de transporte

INFO ARQ REDES. Prova 2 Bimestre. Obs: Questões RASURADAS são consideradas como ERRADAS GABARITO

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

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

Protocolos de Rede. Protocolos em camadas

FUNDAMENTOS DE REDES DE COMPUTADORES. Lista de Exercícios AV2-01. Luiz Leão

Programação com Sockets

Introdução à Redes de Computadores

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

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

REDES DE COMPUTADORES

Modelo OSI x Modelo TCP/IP

Redes de Computadores I

Transcrição:

PROTOCOLOS DE COMUNICAÇÃO 3º ANO / 2º SEMESTRE 2014 INFORMÁTICA avumo@up.ac.mz Ambrósio Patricio Vumo Computer Networks & Distribution System Group

Serviços de Transporte na Internet Arquitectura TCP/IP implementa dois protocolos de transporte com caracteristicas distintas: TCP e UDP. TCP - Transmission Controll Protocol: O TCP é um protocolo de transporte que executa importantes funções para garantir que os dados sejam entregues de forma confiável, ou seja, sem que os dados sejam corrompidos ou alterados UDP - User Datagram Protocol: O UDP é um protocolo não orientado a conexão e portanto é mais rápido que o TCP. Entretanto não garante a entrega dos dados.

Protocolos da camada de Transporte A camada de transporte no modelo TCP/IP realiza a transferencia de dados entre os extremos da comunicação. No lado do emissor, os dados recebidos da camada de applicação são divididos em segmentos. No lado do receptor, os segmentos são reagrupados e entregues à camada de aplicação.

Protocolos da camada de Transporte

O protocolo TCP é conhecido como sendo fiável porque garante que os dados são todos entregues na ordem correcta. Antes de iniciar a transferencia de dados, o TCP começa estabelecer uma sessão, com um protocolo de negociação de tres vias, que é terminada no final da transferencia. Especificação original: RFC 793, outros RFC s 1122, 1323, 2018 e 2581 É um protocolo orientado à ligação. Adicionalmente, o protocolo realiza o controlo de fluxo com janela, a partilha de ligações e a recuperação de erros.

Caracteristicas gerais: Uso o conceito de sockets para caracterizar uma conexão Socket = endereço IP + Porta Permite estabelecer uma conexão entre um par de Sockets de acordo com parâmetros de qualidade de serviço e segurança previamente especificados. Uma conexão é definida univocamente por um par de sockets. Provê comunicação do tipo full-duplex entre os dois Sockets da conexão. Esta comunicação é sempre unicast e ponto-a-ponto

Caracteristicas gerais: Controlo de fluxo baseado no uso de janelas deslizantes Controlo de erros através do uso de numeros de sequencia e do calculo do checksum para todo seguimento Recuperação de erros para dados perdidos e duplicados Demultiplicação entre múltiplas aplicações em um dado host destino Segmentação de dados para aumentar a eficiência de transmissão

O Conceito de porta: Por cada nivel de arquitectura existe um campo no protocolo da camada que indica para quem os dados encapsulados devem ser entregues. No vivel de enlance, o campo Type indica qual é o protocolo que está encapsulado no frame Ethernet (Por exemplo: um valor igual a 0x0800 indica que os dados devem ser passado para o IP) No nivel de rede, o campo protocol no cabeçalho do IP identifica o

O Conceito de porta: No nivel de rede, o campo protocol no cabeçalho do IP identifica o protocolo para qual o datagrama deve ser repassado (por exemplo: 17 para o UDP e 6 para o TCP) De maneira similar, para distiguir dentre as várias aplicações, o nivel de transporte associa um identificador a cada processo de aplicação. Esse identificador é chamado de Porta (Port Number)

O Conceito de porta: Uma porta é um objecto abstrato, codificado por um número inteiro de 16 bits, usado para identificar processo de aplicação Para uma aplicação poder falar com uma outra numa máquina remota, é preciso conhecer não apenas o endereço IP da maquina destino mas tambem a porta associada à aplicação parceira O UDP e O TCP fornecem um conjunto de portas que permite a multiplos processos dentro de uma única máquina usarem os serviços de comunicação providos pelo UDP e TCP simultaneamente.

Números de portas origem e destino sao incluidos no cabeçalho do TCP e do UDP

Número das portas Origem e Destino Identificam a aplicação transmissora e receptora, cada uma delas associada a um ponto da conexão Esses dois valores, juntamente com os endereços IP de origem e destino, identificam univocamnete a conexão Conexão = par de sockets

Número de sequência: Identifica o número do primeiro byte dentro do stream de bytes que está sendo transmitido naquele seguimento Assume valores entre 0 e 2 32-1

Número do Acknowledgement: Como cada byte é numerado, esse campo identifica o proximo número de sequência (próximo byte) que se espera receber do host remoto Esse valor é igual ao número do último byte recebido + 1 O campo é válido somente se o flag de ACK estiver ligado

Tamanho do Cabeçalho: Informa o tamanho do cabeçalho do segmento, mediso em palavras de 32 bits A informação de tamanho é necessária porque o campo de Options do TCP possui tamanho variável Com 4 bits, o tamanho do cabeçalho é limitado a 60 bytes. Sem opções, o tamanho default é de 20 bytes

Campo de flags : Os flags identificam o propósito e o conteúdo de cada segmento Existem seis flags: URG, ACK, PSH, RST, SYN e FIN Um ou mais podem estar ligados num certo momento

Tamanho da Janela: Para implementação do seu mecanismo de controlo de fluxo ( sliding window ), o TCP requer que cada um dos lados anuncie o tamanho da sua janela de recepção O tamanho da janela determina o número de bytes que se está disposto a aceitar, iniciando-se com o valor definido no campo ack number É limitado ao valor 65.535 (0 a 2 16-1)

Checksum e Urgent Pointer : O campo de checksum cobre todo o seguimento TCP (cabeçalho + dados) Emprega um esquema de cálculo semelhante ao do UDP, que inclui um pseudo-header extraido do cabeçalho do IP Urgent pointer é um offset positivo que deve ser adicionado ao campo de número de sequência, para indicar a posição do último byte dos dados urgentes

TCP Options e a Opção MSS: A especificação original do TCP (RFC 793) define cinco opções. As RFCs mais novas (por exemplo, a RFC 1323) definem opções adicionais A opção mais comum é o MSS ( Maximum Segment Size ) O valor do MSS especifica o maior tamanho de segmento que o nó está disposto a receber Normalmente, cada lado da conexão especifica o valor do MSS no estabelecimento da conexão (na troca de segmentos SYN)

Three-way Handshake O TCP utiliza mecanismo de Three-way Handshake para estabelecer uma conexão Essa mecanismo garante a correcta sincronização entre utilizadores da conexão de transporte O three-way handshake envolve a troca de três seguimentos ou mensagens (o mecanismo possui três passos)

Three-way Handshake O Cliente envia uma requisição SYN contendo o número da porta que pretende utilizar e um número de sequência inicial O Servidor responde com um ACK com o número sequencial enviado + 1 e um pacote SYN com um outro número de sequencia O Cliente responde com um ACK com o número recebido do SYN+1

Enviando dados com TCP divide o fluxo de dados em segmentos O rementente manda dados em sequimentos com um número sequencial O destinatário acusa o recebimento de cada segmento O remetente manda os dados seguintes se não recebe a confrmação do recebimento, manda novamente No caso da conexão ser abortada uma fleg RST é mandada ao remetente

Encerrando uma conexão TC O Cliente manda um pedido de FIN O Servidor responde acusando o recebimento com ACK O Servidor manda seu pedido de FIN O Cliente envia um ACK

Lista de portas de protocolos http://pt.wikipedia.org/wiki/anexo:lista_de_portas_de_protocolos

UDP - Protocolo sem Controlo da Transmissão O protocolo UDP, tal como o TCP, disponibiliza serviços de transferencia de dados e de partilha de ligação por várias applicações. No entanto, não é um protocolo fiavel, uma vez que não garante a entrega de todos os segmentos, nem a ordem por que são entregues. Além disso, não tem qualquer mecanismo de controlo de fluxo e não tem qualquer processo de inicialização e terminação de ligação, dai a designação de protocolo sem ligação. A redução de numero de serviços do protocolo UDP reduz consideravelmente o tamanho do seu cabeçalho, quando comparado com o do TCP.

UDP - Protocolo sem Controlo da Transmissão O Protocolo UDP [RFC 768] Ao contrario do TCP, o UDP provê um serviço de transação simples, com um minimo de overhead Oferece um serviço de entrega best-effort: Segmentos de dados podem ser perdidos Segmentos de dados podem ser entregues for a de ordem É um protocolo não orientado a conexão (connectionless): Não existe nenhum handshaking entre origem e destino Cada segmento UDP é completamente independente dos outros Nao existe o envio ou recebimento acknowledgments, mecanismo usado quando se deseja garantir a confiabilidade do serviço

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão

UDP - Protocolo sem Controlo da Transmissão TCP Serviço orientado por conexão Garante a entrega através do uso de confirmação e entrega sequenciada dos dados. Programas que usam TCP têm garantia de transporte confiável de dados. Mais lento, usa mais recursos e somente dá suporte a ponto a ponto. UDP Serviço sem conexão. Não é estabelecida conexão entre os hosts. Não garante ou não confirma entrega dos dados. Programas que usam UDP são responsáveis pela confiabilidade dos dados. Rápido, exige poucos recursos e oferece comunicação ponto a ponto e multiponto.