A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Missão da camada de enlace Serviços oferecidos TCP UDP

Apresentações semelhantes


Apresentação em tema: "Missão da camada de enlace Serviços oferecidos TCP UDP"— Transcrição da apresentação:

1 Missão da camada de enlace Serviços oferecidos TCP UDP
3.5) A Camada de Transporte 7 6 4 3 2 1 A B Aplicação Apresentação Sessão Transporte Rede Enlace Física 5 Visão Geral: Missão da camada de enlace Serviços oferecidos TCP UDP

2 transporte lógico fim-a-fim
3.5.1) Protocolos e Serviços de Transporte: Funções básicas Fornecem comunicação lógica entre processos de aplicação em diferentes hosts; Os protocolos de transporte são executados nos sistemas finais da rede; Funções complementares: . Camada de rede: transferência de dados entre computadores (end systems); . Camada de transporte: transferência de dados entre processos; A camada de transporte utiliza e aprimora os serviços oferecidos pela camada de rede. aplicação transporteeerede enlace física transporte rede transporte lógico fim-a-fim

3 transporte lógico fim-a-fim
3.5.2) Protocolos e Serviços de Transporte: Principais tipos aplicação transporteeerede enlace física transporte rede transporte lógico fim-a-fim Serviços de Transporte da Internet: Confiável, seqüencial e unicast (TCP): . Controle de congestionamento; . Controle de fluxo; . Orientado à conexão; Não confiável (“best-effort”), não seqüencial, entrega unicast ou multicast (UDP): . Sem controle de congestionamento; . Sem controle de fluxo; . Não orientado à conexão.

4 3.5.3) Multiplexação de Aplicações
32 bits Visa reunir dados de múltiplos processos de aplicação, configurando cabeçalhos com informações necessárias para a correta demultiplexação; Criado o conceito de segmento, que é a unidade de dados trocada entre entidades da camada de transporte; Para permitir que vários processos (de cada aplicação) possam ser tratados em um único host, cada um dos processos utilizam determinadas portas de acesso entre as camadas de aplicação e transporte. As portas assumem números de 0 a e somente para o caso de aplicações bem conhecidas, tais portas tem números bem definidos de 0 a 1023 (Exemplos: FTP - 21, SMTP - 25, HTTP - 80, Telnet - 23); Assim, a multiplexação/demultiplexação é possível pois está baseada no número de porta do transmissor, número de porta do receptor e endereços IP presentes no segmento TCP/UDP; porta origem porta destino outros campos de cabeçalho dados de aplicação (mensagem) Formato do segmento TCP/UDP host A servidor B porta orig: 1028 porta dest.: 23 IP orig : A IP dest: B porta origem:23 port dest.: 1028 IP orig: B IP dest: A Aplicação Telnet

5 3.5.4) TCP - Transmission Control Protocol
É orientado à conexão; Realiza comunicação fim-a-fim Possui controle de fluxo através de utilização de janelas de transmissão; A conexão é definida pelos processos origem e destino; A ordem dos dados enviados é mantida a mesma na recepção. Mesmo que sejam entregues fora de ordem, o destinatário ordena os pacotes para passar para a camada superior (sessão) através do uso de número de seqüência (SEQ); Aplicações mais comuns: TELNET, FTP, SMTP,HTTP.;

6 3.5.5) Estabelecimento de conexão TCP
TCP transmissor estabelece conexão com o receptor antes de trocar segmentos de dados, inicializando variáveis, números de seqüência, buffers para controle de fluxo; É estabelecida conexão através de Three way handshake: Passo 1: sistema final cliente envia TCP SYN ao servidor e especifica número de seqüência inicial ; Passo 2: sistema final servidor que recebe o SYN, responde com segmento SYNACK onde: . Reconhece o SYN recebido; . Aloca buffers; . Especifica o número de seqüência inicial do servidor; Passo 3: o sistema final cliente reconhece o SYNACK através de um segmento ACK e inicia envio de dados;

7 3.5.5) Estabelecimento de conexão TCP (cont)
SYN SYN, ACK ACK Host Origem Host Destino (servidor) dados O estabelecimento da conexão TCP é feito através de um segmento TCP que possui a indicação de tentativa de conexão, denominado SYN. Este segmento não possui dados, sendo reconhecido por possuir o bit SYN do campo flag do cabeçalho TCP “ligado”. Neste segmento são informados o tamanho da janela TCP e o tamanho máximo do campo de dados TCP, chamado de MSS (Maximum Segment Size). A resposta do segmento TCP SYN é o segmento SYN-ACK, que também não possui dados e é reconhecido por ter os bits SYN e ACK do campo flag do cabeçalho TCP “ligados”. Neste segmento de aceite de pedido de conexão são também informadas a janela TCP e o MSS. A conexão estará estabelecida após o envio de um segmento ACK, completando o handshake TCP. A recusa no estabelecimento da sessão TCP (através de um segmento TCP RST) normalmente indica um dos seguintes problemas: o número de conexões no servidor ultrapassou o limite máximo, a aplicação servidora não está ativa a aplicação não está definida.

8 3.5.6) Encerramento de conexão TCP
Após o envio dos dados, a sessão TCP pode ser encerrada por qualquer uma das partes (cliente ou servidor) “elegantemente” através de um segmento FIN. Este segmento não possui dados, sendo reconhecido por ter o bit FIN do campo Flag do cabeçalho TCP “setado”. dados Host Origem FIN Host Destino (servidor) ACK,FIN ACK

9 TCP 21 23 25 TELNET S F M T T P P 3.5.7) Well-known TCP Ports nível
Aplicação Transporte port numbers 21 23 25 TCP Os endereços dos ports TCP estão definidos no padrão 2 (documento STD 2) do IETF. Os números dos ports estão divididos nos seguintes grupos: de 0 a 254: reservados para aplicações de domínio público de 255 a 1023: reservados para aplicações comerciais cadastradas acima de 1023: desregulamentado São chamados de well-known ports os ports situados na faixa de 1 a 1023.

10 3.5.8) Seqüencialização de segmentos
Cada segmento TCP enviado tem um número de seqüência para que o módulo TCP no nó destino possa reordena-los na chegada. Quando o nó destino recebe um segmento, envia uma confirmação através de um segmento TCP com o campo Acknowlege preenchido. Neste campo está o número de seqüência do próximo segmento esperado, indicando para o nó origem o correto recebimento, pelo nó destino, dos pacotes anteriores. Recebi o #10; agora aguardo o #11. Estou enviando o #10. Agora estou enviando o #11. SP DP SEQ ACK 1028 23 10 1 ... SP DP SEQ ACK 23 1028 1 11 ... SP DP SEQ ACK Cada segmento TCP enviado tem um número de seqüência para que o módulo TCP no nó destino possa reordena-los na chegada. Quando o nó destino recebe um segmento, envia uma confirmação através de um segmento TCP com o campo Acknowlege preenchido. Neste campo está o número de seqüência do próximo segmento esperado, indicando para o nó origem o correto recebimento, pelo nó destino, dos pacotes anteriores. 1028 23 11 2 ...

11 número de reconhecimento
3.5.9) Formato do segmento TCP 32 bits URG: dados urgentes (pouco usado) contagem por bytes de dados (não segmentos!) porta origem porta destino número de seqüência ACK: campo de ACK é válido número de reconhecimento tam. cabec. não usado PSH: produz envio de dados (pouco usado) U A P R S F janela de recep. checksum dados urgentes número de bytes receptor está pronto para aceitar RST, SYN, FIN: estabelec. de conexão (comandos de criação e término) Opções (tamanho variável) dados de aplicação (tamanho variável) Internet checksum Os campos source port e destination port do cabeçalho TCP contém respectivamente os endereços dos processos origem e destino. Cada segmento tem um número de seqüência (sequence number) para que o módulo TCP destino possa ordenar a mensagem na chegada. No campo acknowledgement number tem-se o número do segmento esperado, que servirá para o nó origem identificar os segmentos anteriores que foram enviados com sucesso. O campo hlen indica o tamanho, em palavras de 32 bits, do cabeçalho TCP. Os seguintes bits, quando ligados, indicam o tipo de segmento: URG - sinaliza eventos assíncronos ACK - indica que é um segmento de ACK PSH - indica que este segmento requer urgência RST - indica segmento de término de sessão TCP de forma abrupta RESET SYN - indica segmento de pedido de estabelecimento de sessão TCP FIN - indica segmento de término de sessão TCP de forma natural FIN O campo header checksum contém o resultado do cálculo do checksum do cabeçalho TCP. O campo window define o tamanho, em bytes, da janela. O campo urgent pointer é usado para sinalizar eventos assíncronos através do envio de caracteres de controle ou de outros comandos de interrupção. O campo urgent pointer é usado para sinalizar eventos assíncronos através do envio de caracteres de controle ou de outros !comandos de interrupção.

12 3.5.10) UDP - User Datagram Protocol
Protocolo de transporte internet “sem gorduras”, que faz o serviço “best effort”; Segmentos UDP podem ser perdidos e/ou entregues fora de ordem para a aplicação; Não orientado à conexão e sem controle de fluxo: . Não há apresentação entre o UDP transmissor e o receptor . Cada segmento UDP é tratado de forma independente dos outros; Justificativas para utilização do UDP: . Rapidez, pois não há estabelecimento de conexão (que pode redundar em atrasos); . Simples, pois não não há verificação do estado de conexão (nem no transmissor nem no receptor); . Cabeçalho de segmento reduzido; . Não há controle de congestionamento, assim o UDP pode enviar segmentos tão rápido quanto desejado (e possível); Aplicações: SNMP, TFTP (Trivial File Transfer Protocol), DNS e em aplicações de multimídia contínua (streaming) tolerantes à perda e sensíveis à taxa. O UDP é um protocolo de transporte não orientado à conexão. Possui um cabeçalho menor que o TCP (8 bytes) e não faz sequenciamento dos pacotes, deixando esta tarefa a cargo da aplicação.

13 UDP 53 69 161 TFTP S N M P DNS 3.5.11) Well-known UDP Ports nível
Aplicação Transporte port numbers 53 69 161 UDP

14 Formato do segmento UDP
32 bits porta origem porta destino Tamanho, em bytes do segmento UDP, incluindo cabeçalho tamanho checksum Dados de Aplicação (mensagem) Formato do segmento UDP

15 TCP UDP IP Enlace Físico
3.5.13) Transição do pacote TCP/IP T E L N D N S T F P F T P 23 21 53 69 TCP UDP 6 17 IP Enlace endereço MAC Físico

16 TCP UDP IP Enlace Físico
3.5.13) Transição do pacote TCP/IP (cont) T E L N D N S T F P F T P 23 21 53 69 TCP UDP 6 17 IP Protocol Enlace endereço MAC Físico

17 TCP UDP IP Enlace Físico
3.5.13) Transição do pacote TCP/IP (cont) T E L N D N S T F P F T P 23 21 53 69 TCP UDP Protocol 6 17 IP Protocol Enlace Endereço MAC Físico

18 TCP UDP IP Enlace Físico
3.5.13) Transição do pacote TCP/IP (cont) T E L N D N S T F P F T P 23 21 53 69 Port numbers TCP UDP Protocol 6 17 IP Protocol Enlace Endereço MAC Físico

19 Protocolos específicos:
3.6) A Camada de Aplicação 7 6 4 3 2 1 A B Aplicação Apresentação Sessão Transporte Rede Enlace Física 5 Protocolos específicos: . HTTP . FTP . SMTP . DNS Programação de aplicações de rede . Socket API

20 Aplicações - Hosts Aplicações - Rede
3.6.1) A Camada de Aplicação Aplicações - Hosts Aplicações - Rede Processador de textos Banco de dados Gerenciamento Correio eletrônico Planilha de cálculo Transferência de arquivos Emulação de terminal

21 3.6.1) Aplicações e Protocolos de Aplicações
Aplicação: São processos distribuídos em comunicação onde: . Executam nos computadores usuários da rede como programas de usuário; . Trocam mensagens para realização da aplicação. Exemplo: , FTP, WEB; Protocolos de aplicação: . Fazem parte das aplicações e definem mensagens trocadas e as ações tomadas; . Usam serviços de comunicação das camadas inferiores. aplicação transporte rede enlace física

22 Processo: programa executando num host.
3.6.2) Aplicações de Rede: Definições Processo: programa executando num host. Processos executando em diferentes hosts se comunicam com um protocolo da camada de aplicação; Agente usuário: software que faz interface entre os usuários da rede. Implementa protocolo da camada de aplicação, ou seja: . WEB: browser; . leitor de correio; . Streaming audio/video: media player.

23 pedido resposta 3.6.3) Aplicações de Rede: Cliente - Servidor
Aplicações de rede típicas têm duas partes: cliente e servidor Cliente: . Inicia comunicação com o servidor (“fala primeiro”); . Tipicamente solicita serviços do servidor, . Web: cliente implementado no browser e no leitor de correio; Servidor: . Fornece os serviços solicitados ao cliente; . Exemplos: Web server envia a página Web solicitada, servidor de envia as mensagens. aplicação transporte rede enlace física pedido resposta

24 3.6.4) Interfaces de Programação
API: Application Programming Interface Define a interface entre a camada de aplicação e de transporte Socket: Internet API Dois processos se comunicam enviando dados para o socket e lendo dados de dentro do socket Identificação e comunicação entre processos: Um processo “identifica” o outro processo com o qual ele quer se comunicar através de: . IP address do computador no qual o processo remoto executa; . Port Number que permite ao computador receptor determinar o processo local para o qual a mensagem deve ser entregue.

25 Aplicação File Transfer E-mail Web Documents Real-time Audio/video
3.6.5) Alguns requisitos de Transporte de Aplicações comuns Aplicação File Transfer Web Documents Real-time Audio/video Stored Audio/video Jogos Interativos E-business Perdas Sem Perdas Tolerante Sem Perda Banda Elástica Aúdio: 5Kb-1Mb Vídeo:10Kb-5Mb Igual à anterior Kbps Sensível Ao Atraso Não Sim, até 100 ms Sim, segundos Sim

26 Protocolo de Aplicação
3.6.6) Aplicações e protocolos de Transporte da Internet Protocolo de Aplicação SMTP [RFC 821] TelNet [RFC 854] HTTP [RFC 2068] ftp [RFC 959] RTP ou proprietário (e.g. RealNetworks) NSF (e.g., Vocaltec) Protocolo de Transporte TCP TCP ou UDP Tipicamente UDP Aplicação Acesso De Terminais Remotos Web Transferência De Arquivos Streaming Multimedia Servidor de Arquivos Remoto Telefonia Internet


Carregar ppt "Missão da camada de enlace Serviços oferecidos TCP UDP"

Apresentações semelhantes


Anúncios Google