1 / 16

Capítulo 2: Camada de Aplicação

Metas do capítulo: aspectos conceituais e de implementação de protocolos de aplicação em redes paradigma cliente servidor modelos de serviço. Mais metas do capítulo protocolos específicos: dns. Capítulo 2: Camada de Aplicação. Aplicação: processos distribuídos em comunicação

jirair
Download Presentation

Capítulo 2: Camada de Aplicação

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. Metas do capítulo: aspectos conceituais e de implementação de protocolos de aplicação em redes paradigma cliente servidor modelos de serviço Mais metas do capítulo protocolos específicos: dns Capítulo 2: Camada de Aplicação 2: Camada de Aplicação

  2. Aplicação: processos distribuídos em comunicação executem em hospedeiros no “espaço de usuário” trocam mensagens para implementar aplicação p.ex., correio, transf. de arquivo, WWW Protocolos da camada de apl. uma “parte” da aplicação define mensagens trocadas por apls e ações tomadas usam serviços providos por protocolos de camadas inferiores aplicação transporte rede enlace física aplicação transporte rede enlace física aplicação transporte rede enlace física Aplicações e protocolos da camada de aplicação 2: Camada de Aplicação

  3. Um processo é um programa que executa num hospedeiro. 2 processos no mesmo hospedeiro se comunicam usando communicação entre processos definida pelo sistema operacional (SO). 2 processos em hospedeiros distintos se comunicam usando um protocolo da camada de apalicação. Um agente de usuário (UA) é uma interface entre o usuário e a aplicação de rede. WWW: browser Correio: leitor/compositor de mensagens streaming audio/video: tocador de mídia Aplicações de rede: algum jargão 2: Camada de Aplicação

  4. Apl. de rede típica tem duas partes: cliente and servidor resposta pedido aplicação transporte rede enlace física aplicação transporte rede enlace física Paradigma cliente-servidor (C-S) Cliente: • inicia contato com o servidor (“fala primeiro”) • tipicamente solicita serviço do servidor • para WWW, cliente implementado no browser; para correio no leitor de mensagens Servidor: • provê ao cliente o serviço requisitado • p.ex., servidor WWW envia página solicitada; servidor de correio entrega mensagens 2: Camada de Aplicação

  5. API: interface de programação de aplicações define interface entre aplicação e camada de transporte socket (= tomada) : API da Internet 2 processos se comunicam enviando dados para um socket ou lendo dados de um socket P: como um processo pode “identificar”o outro processo com o qual quer se comunicar? endereço IP do hospedeiro do outro processo “número de porta” - permite que o hospedeiro receptor determine a qual processo deve ser entregue a mensagem Protocolos da camada de aplicação (cont). … voltamos mais tarde a este assunto. 2: Camada de Aplicação

  6. Perda de dados algumas apls (p.ex. áudio) podem tolerar algumas perdas outras (p.ex., transf. de arquivos, telnet) requerem transferência 100% confiável Temporização algumas apls (p.ex., telefonia Internet, jogos interativos) requerem baixo retardo para serem “viáveis” De que serviço de transporte uma aplicação precisa? Largura de banda • algumas apls (p.ex., multimídia) requerem quantia mínima de banda para serem “viáveis” • outras apls (“apls elásticas”) conseguem usar qq quantia de banda disponível 2: Camada de Aplicação

  7. Requisitos do serviço de transporte de apls comuns Sensibilidade temporal não não não sim, 100’s mseg sim, alguns segs sim, 100’s mseg sim e não Aplicação transferência de arqs correio documentos WWW áudio/vídeo de tempo real áudio/vídeo gravado jogos interativos apls financeiras Perdas sem perdas sem perdas sem perdas tolerante tolerante tolerante sem perdas Banda elástica elástica elástica áudio: 5Kb-1Mb vídeo:10Kb-5Mb como anterior > alguns Kbps elástica 2: Camada de Aplicação

  8. serviço TCP: orientado a conexão: setup requerido entre cliente, servidor transporte confiável entre processos remetente e receptor controle de fluxo: remetente não vai “afogar” receptor controle de congestionamento: estrangular remetente quando a rede carregada não provê: garantias temporais ou de banda mínima serviço UDP: transferência de dados não confiável entre processos remetente e receptor não provê: setup da conexão, confiabilidade, controle de fluxo, controle de congestionamento, garantias temporais ou de banda mínima P: Qual é o interesse em ter um UDP? Serviços providos por protocolos de transporte Internet 2: Camada de Aplicação

  9. Apls Internet: seus protocolos e seus protocolos de transporte Protocolo da camada de apl smtp [RFC 821] telnet [RFC 854] http [RFC 2068] ftp [RFC 959] proprietário (p.ex. RealNetworks) NSF proprietário (p.ex., Vocaltec) Protocolo de transporte usado TCP TCP TCP TCP TCP ou UDP TCP ou UDP tipicamente UDP Aplicação correio eletrônico accesso terminal remoto WWW transferência de arquivos streaming multimídia servidor de arquivo remoto telefonia Internet 2: Camada de Aplicação

  10. Pessoas: muitos identificadores: CPF, nome, no. de Passaporte hospedeiros, roteadores Internet : endereço IP (32 bit) - usado p/ endereçar datagramas “nome”, e.g., jambo.ic.uff.br - usado por gente P: como mapear entre nome e endereço IP? Domain Name System: base de dados distribuída implementada na hierarquia de muitos servidores de nomes protocolo de camada de aplicação permite hospedeiros, roteadores, servidores de nomes communicarem para resolvernomes (tradução endereço/nome) note: função imprescindível da Internet implementada como protocolo de camada de aplicação complexidade na borda da rede DNS: Domain Name System 2: Camada de Aplicação

  11. Nenhum servidor mantém todos os mapeamento nome-para-endereço IP servidor de nomes local: cada provedor, empresa tem servidor de nomes local (default) pedido DNS de hospedeiro vai primeiro ao servidor de nomes local servidor de nomes autoritativo: p/ hospedeiro: guarda nome, endereço IP dele pode realizar tradução nome/endereço para este nome Por quê não centralizar o DNS? ponto único de falha volume de tráfego base de dados centralizada e distante manutenção (da BD) Não é escalável! Servidores de nomes DNS 2: Camada de Aplicação

  12. procurado por servidor local que não consegue resolver o nome servidor raíz: procura servidor autoritativo se mapeamento desconhecido obtém tradução devolve mapeamento ao servidor local ~ uma dúzia de servidores raíz no mundo (+ espelhos) DNS: Servidores raíz 2: Camada de Aplicação

  13. hospedeiro manga.ic.uff.br requer endereço IP de www.cs.columbia.edu 1. Contata servidor DNS local, pitomba.ic.uff.br 2.pitomba.ic.uff.br contata servidor raíz, se necessário 3. Servidor raíz contata servidor autoritativo cs.columbia.edu, se necessário servidor local pitomba.ic.uff.br Exemplo simples do DNS servidor de nomes raíz 2 4 3 5 servidor autoritativo cs.columbia.edu 1 6 solicitante manga.ic.uff.br www.cs.columbia.edu 2: Camada de Aplicação

  14. Servidor raíz: pode não conhecer o servidor de nomes autoritativo pode conhecer servidor de nomes intermediário: a quem contactar para descobrir o servidor de nomes autoritativo servidor local pitomba.ic.uff.br servidor intermediário saell.cc.columbia.edu Exemplo de DNS servidor de nomes raíz 6 2 3 7 5 4 1 8 servidor autoritativo cs.columbia.edu solicitante manga.ic.uff.br www.cs.columbia.edu 2: Camada de Aplicação

  15. consulta recursiva: transfere a responsabilidade de reolução do nome para o servidor de nomes cntatado carga pesada? consulta iterada: servidor consultado responde com o nome de um servidor de contato “Não conheço este nome, mas pergunte para esse servidor” servidor local pitomba.ic.uff.br servidor intermediário saell.cc.columbia.edu DNS: consultas iteratadas servidor de nomes raíz consulta iterrada 2 3 4 7 5 6 1 8 servidor autoritativo cs.columbia.edu solicitante manga.ic.uff.br www.cs.columbia.edu 2: Camada de Aplicação

  16. uma vez um servidor qualquer aprende um mapeamento, ele o coloca numa cache local futuras consultas são resolvidas usando dados da cache entradas no cache são sujeitas a temporização (desaparecem depois de certo tempo)ttl = time to live (sobrevida) estão sendo projetados pela IETF mecanismos de atualização/notificação dos dados RFC 2136 http://www.ietf.org/html.charters/dnsind-charter.html DNS: uso de cache, atualização de dados 2: Camada de Aplicação

More Related