1 / 34

Redes de Computadores I

Redes de Computadores I. Prof. Mateus Raeder. Universidade do Vale do Rio dos Sinos - São Leopoldo -. Camada de Transporte. É responsável pela transmissão lógica dos dados A camada de enlace é responsável pela transmissão física Dois tipos de transmissão: Orientado a conexão

rozene
Download Presentation

Redes de Computadores I

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. Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos- São Leopoldo -

  2. Camada de Transporte • É responsável pela transmissão lógica dos dados • A camada de enlace é responsável pela transmissão física • Dois tipos de transmissão: • Orientado a conexão • TCP – Transmission Control Protocol • Não orientado a conexão • UDP – User Datagram Protocol Redes de Computadores I – Prof. Mateus Raeder

  3. Camada de Transporte • O transporte dos dados pode ser tratado na camada de enlace • Entretanto, o transporte trabalha com a pior hipótese (enlace não controlar o transporte) • Isto, então, é tratado logicamente na Camada de Transporte • Na camada de Rede (abaixo do Transporte), sabe-se apenas o host destino • Sem distinções entre qual aplicação receberá Redes de Computadores I – Prof. Mateus Raeder

  4. Camada de Transporte • TCP e UDP acrescentam um mecanismo que escolhe diferentes “locais de entrega” em um host • Porta • Vários aplicativos enviam e recebem mensagens individualmente • Necessário, pois os Sistemas Operacionais geralmente são multitarefa • Várias tarefas ao mesmo tempo Redes de Computadores I – Prof. Mateus Raeder

  5. Camada de Transporte • Portas identificam os diferentes processos sendo executados • São definidas como um número inteiro positivo • Processos que utilizam a rede utilizam determinada porta para comunicação • Um processo transmissor precisa conhecer não somente o endereço IP do destino, mas também a porta a ser utilizada • Identifica host e aplicação Redes de Computadores I – Prof. Mateus Raeder

  6. Camada de Transporte • Além da identificação do destino, a porta de origem deve ser enviada também • Assim, o processo receptor pode responder a mensagem ao processo origem Destino Origem 198.12.3.11:27789 200.19.10.1:16784 198.12.3.11:27789 200.19.10.1:16784 Identifica a conexão, permitindo Várias conexões entre Origem e Destino Redes de Computadores I – Prof. Mateus Raeder

  7. UDP (User Datagram Protocol) • Protocolo do nível de transporte • Entrega de mensagens sem conexão • Não confiável • O UDP também permite a distinção entre os vários processos (aplicativos) nos hosts • Uma mensagem UDP carrega dados, porta de destino e porta de origem • Mensagens UDP são Datagramas Redes de Computadores I – Prof. Mateus Raeder

  8. UDP (User Datagram Protocol) • Aplicações que utilizam UDP são totalmente responsáveis por lidar com confiabilidade • Perda de mensagens • Duplicação de mensagens • Retardo de mensagens • Erros de transmissão • Erros de conexão Redes de Computadores I – Prof. Mateus Raeder

  9. UDP (User Datagram Protocol) 31 • Datagrama UDP possui 2 partes • Cabeçalho • Dados 0 16 Porta Origem Porta Destino Tamanho Checksum Dados Redes de Computadores I – Prof. Mateus Raeder

  10. UDP (User Datagram Protocol) 31 • Portas Origem e Destino • Número de 16 bts, utilizado para entregar os datagramas entre os programas 0 16 Porta Origem Porta Destino Tamanho Checksum Dados Redes de Computadores I – Prof. Mateus Raeder

  11. UDP (User Datagram Protocol) 31 • Tamanho • Tamanho total incluindo cabeçalho e dados • Contagem de octetos (valor mínimo é 8) 0 16 Porta Origem Porta Destino Tamanho Checksum Dados Redes de Computadores I – Prof. Mateus Raeder

  12. UDP (User Datagram Protocol) 31 • Checksum • Soma de verificação • Verifica se o Datagrama UDP está correto 0 16 Porta Origem Porta Destino Tamanho Checksum Dados VERIFICA mas não RECUPERA erros Redes de Computadores I – Prof. Mateus Raeder

  13. UDP (User Datagram Protocol) • Checksum • Campo opcional • Preenchido com zeros no caso de não ser usado • Mínimo overhead possível • Unicamente para verificar se os dados chegaram intactos e possam ser usados • Para realizar o Checksum, o UDP utiliza mais informações do que existem no seu cabeçalho • Adiciona-se um pseudocabeçalho ao datagrama Redes de Computadores I – Prof. Mateus Raeder

  14. UDP (User Datagram Protocol) • Checksum • O pseudocabeçalho é criado com o IP origem e destino e o campo protocolo • De onde vem estas informações? • Do datagrama IP, e não do UDP • O Tamanho é o único campo extraído do UDP 31 0 16 IP Origem IP Destino 00000000 (zeros) Protocol Tamanho Pseudoheader Redes de Computadores I – Prof. Mateus Raeder

  15. UDP (User Datagram Protocol) • Checksum • Acrescenta um octeto de zeros para preencher, fazendo-o um múltiplo de 16 bits • A soma de verificação é calculada com todo o objeto • IMPORTANTE: pseudoheader não percorre a rede 31 0 16 IP Origem IP Destino 00000000 (zeros) Protocol Tamanho Pseudoheader Redes de Computadores I – Prof. Mateus Raeder

  16. UDP (User Datagram Protocol) • Checksum • Remetente • O remetente calcula a soma dos valores contidos nos campos • Realiza complemento de 1 no resultado • Coloca no campo checksum da mensagem • Destino • Cria o pseudocabeçalho • Realiza o mesmo cálculo do remetente • Soma o resultado ao checksum Redes de Computadores I – Prof. Mateus Raeder

  17. UDP (User Datagram Protocol) • Checksum • Se o resultado for 0, não houve erros na mensagem • Checksum é opcional • Coloca-se 0 quando não deseja • E se o checksum no remetente resultar em 0? • Neste caso, todos os bits do checksum são marcados em 1 Redes de Computadores I – Prof. Mateus Raeder

  18. UDP (User Datagram Protocol) 31 • Dados • Dados do usuário • O que será entregue para a Camada de Aplicação 0 16 Porta Origem Porta Destino Tamanho Checksum Dados Redes de Computadores I – Prof. Mateus Raeder

  19. UDP (User Datagram Protocol) • Encapsulamento Cabeçalho UDP Dados Cabeçalho IP Cabeçalho UDP Dados Cabeçalho Ethernet Cabeçalho UDP Cabeçalho IP Dados Redes de Computadores I – Prof. Mateus Raeder

  20. UDP (User Datagram Protocol) • Multiplexação e demultiplexação • Multiplexar: dados que saem da Camada de Aplicação e passam para a Camada de Transporte • Acrescentar informações • Demultiplexar: dados que saem da Camada de Transporte e passam para a Camada de Aplicação • Retirar informações • Baseados nas portas definidas na comunicação • No destino, UDP aceita as mensagens da Camada de Rede e desmultiplexa com base na porta destino do UDP Redes de Computadores I – Prof. Mateus Raeder

  21. UDP (User Datagram Protocol) • Multiplexação e demultiplexação • UDP recebe um datagrama • Verifica se a porta de destino combina com alguma das que podem ser utilizadas • Caso não haja, envia uma mensagem de erro ICMP de porta inalcançável (port unreacheable), descartando o datagrama • Se encontra a combinação informada, enfileira na porta da aplicação • Fila cheia: mensagem descartada Redes de Computadores I – Prof. Mateus Raeder

  22. UDP (User Datagram Protocol) • Multiplexação e demultiplexação Porta X Porta Y Porta Z Porta W UDP: realiza a demultiplexação de acordo com a porta Camada de Rede Redes de Computadores I – Prof. Mateus Raeder

  23. UDP (User Datagram Protocol) • UDP não realiza diversas ações • Controle de fluxo • Controle de erros • Retransmissão de mensagens incorretas • Sequenciamento de mensagens • Fornece apenas a principal tarefa dos protocolos de transporte • Entrega dos dados na Camada de Aplicação Redes de Computadores I – Prof. Mateus Raeder

  24. UDP (User Datagram Protocol) • Trata-se de um protocolo simples • Implementação • Utilização • Aplicações de tempo real (como Voz sobre IP (VoIP), por exemplo) necessitam desta simplicidade • Deve ser utilizado em aplicações que não requerem segurança nos dados • Velocidade e simplicidade Redes de Computadores I – Prof. Mateus Raeder

  25. UDP (User Datagram Protocol) • Desvantagens • Não confirma a entrega dos dados • Não ordena os dados enviados • Os erros devem ser tratados na aplicação • Vantagens • Facilidade de implementação e utilização • Menos overhead na rede • Sem mensagens de controle Redes de Computadores I – Prof. Mateus Raeder

  26. TCP (Transmission Control Protocol) • O protocolo TCP implementa a funcionalidade não implementada no UDP • Orientação a conexão • Trata-se, então, de uma implementação mais complexa • O protocolo TCP tem o objetivo de sanar os erros de envio das camadas mais baixas • Todas entregando pacotes de forma não confiável Redes de Computadores I – Prof. Mateus Raeder

  27. TCP (Transmission Control Protocol) • As aplicações inúmeras vezes necessitam enviar grandes volumes de dados entre si • Sistemas não confiáveis e não orientados a conexão • Trazem tarefas nem sempre desejáveis aos programadores, pois eles são os que precisam controlar os erros que vão ocorrer • O TCP realiza estes controles para os aplicativos Redes de Computadores I – Prof. Mateus Raeder

  28. TCP (Transmission Control Protocol) • Quatro características • Orientação de streams • Dados são considerados streams (fluxo) de bits • O receptor recebe a mesma sequência de bytes que o remetente enviou • Circuito virtual: • Como uma chamada telefônica (chamada/aceita) • A comunicação deve ser autorizada • Durante transferência, protocolos continuam se comunicando para eventuais erros Redes de Computadores I – Prof. Mateus Raeder

  29. TCP (Transmission Control Protocol) • Quatro características • Transmissão bufferizada: • Programas enviam streams de dados através do circuito virtual • Repassam diversos octetos para o protocolo • Cada aplicativo pode enviar a quantidade de dados que achar necessário • O protocolo, então, entrega estes octetos na mesma ordem que recebeu • O protocolo pode, então, dividir o stream de dados em quantas partes ele desejar Redes de Computadores I – Prof. Mateus Raeder

  30. TCP (Transmission Control Protocol) • Quatro características • Transmissão bufferizada (cont.): • Quanto mais dados houver no datagrama, mais eficaz e com menos tráfego na rede será a comunicação • Se a aplicação gerar blocos muito extensos, o protocolo pode dividir em pequenas partes para transmissão • Conexão full duplex • Permitem transferência de dados nas duas direções • De A  B e de B  A Redes de Computadores I – Prof. Mateus Raeder

  31. TCP (Transmission Control Protocol) • O TCP garante os fluxos de uma máquina para a outra sem duplicação e sem perda de dados • Utiliza-se a técnica conhecida como Confirmação Positiva com Retransmissão • Positive Acknowledgement with Retransmition • Esta técnica requer que um destinatário envia uma mensagem de confirmação (ACK) Redes de Computadores I – Prof. Mateus Raeder

  32. TCP (Transmission Control Protocol) • O remetente mantém registro de cada pacote enviado • aguarda confirmação para enviar o próximo pacote • Quando envia um pacote, dispara um timer • Retransmite o pacote quando o timer expira sem um ACK retornado Redes de Computadores I – Prof. Mateus Raeder

  33. TCP (Transmission Control Protocol) • Envio sem problemas na transmissão Origem Destino Envio do pacote 1 Recebe pacote 1 Envio do ACK 1 Recebe ACK 1 Envio do pacote 2 Recebe pacote 2 Envio do ACK 2 Recebe ACK 2 Redes de Computadores I – Prof. Mateus Raeder

  34. TCP (Transmission Control Protocol) • Envio com problemas na transmissão Origem Destino Envio do pacote 1Início timer Fim do timer Retransmite pacote 1 Recebe pacote 1 Envio do ACK 1 Recebe ACK 1 Redes de Computadores I – Prof. Mateus Raeder

More Related