camada de aplicacao

Upload: anonymous-qn3c1ewabh

Post on 10-Jan-2016

7 views

Category:

Documents


0 download

DESCRIPTION

Camada de Aplicacao TCP IP

TRANSCRIPT

  • Administrao e Projeto de RedesMaterial de apoio

    Camada de Aplicao Internet

    Cap.3

    19/12/2008

    *

    EsclarecimentosEsse material de apoio para as aulas da disciplina e no substitui a leitura da bibliografia bsica.Os professores da disciplina iro focar alguns dos tpicos da bibliografia assim como podero adicionar alguns detalhes no presentes na bibliografia, com base em suas experincias profissionais.O contedo de slides com o ttulo Comentrio seguido de um texto, se refere a comentrios adicionais ao slide cujo texto indica e tem por objetivo incluir alguma informao adicional aos contedo do slide correspondente.Bibliografia bsica: KUROSE, James F.; ROSS, Keith. Redes de Computadores e a INTERNET - Uma nova abordagem. Pearson. : , 2004.

    *

    Criando uma aplicao de redeEscrever programas que sero executados em diferentes sistemas finais (hosts) de forma cooperativa e que se comunicam atravs de uma rede.Nenhum software escrito para dispositivos do ncleo da rede (roteadores).Dispositivos do ncleo da rede no trabalham na camada de aplicao.

    *

    Comunicao de processosProcesso: um programa que est sendo executado em um Host.

    Dentro do mesmo Host: dois processos se comunicam usando comunicao interprocesso (definido pelo Sistema Operacional).

    Processos em diferentes Hosts: se comunicam por meio de troca de mensagens usando os protocolos de comunicao existente entre os Hosts (exemplo: TCP/IP).

    Processo #1Processo #2Sist. Oper.Processo #1Camada de comunicaoSist. Oper.Processo #2Camada de comunicaoSist. Oper.Rede

    *

    Aplicao Cliente/ ServidorAplicao distribuda:Aplicao Cliente processada no computador Cliente.Aplicao Servidor processada no Servidor.

    Mdulo Cliente sempre inicia o processamento e solicita algo do mdulo Servidor (Pedidos).

    Mdulo Servidor recebe a solicitao do mdulo Cliente e retorna uma resposta.

    A transao pode terminar no mdulo Servidor ou no Cliente. Depende da soluo definida pelo desenvolvedor do aplicativo.

    Aplicaes com arquiteturas P2P possuem processos Cliente e processos Servidor que conversam entre si.ClienteServidorCliente-ServidorPedidosRespostasHost ClienteHost ServidorClienteServidorServidorClientePeer-to-peer (P2P)HostHostPedidosRespostasPedidosRespostas

    *

    Caractersticas da ArquiteturaCliente-ServidorCliente:Comunica-se com o Servidor.Cliente no se comunica diretamente com outros Clientes.Pode ser conectado intermitentemente.Pode ter endereo IP e/ou Porta dinmicos.Solicita servios ao Servidor.Inicia a transao.

    Servidor:Comunica-se com o Cliente.Servidor no se comunica diretamente com os outros servidores.Host sempre ativo.Endereo IP fixo.As aplicaes usam Portas definidas.Fornece servios solicitados pelo Cliente.

    *

    Caractersticas da Arquitetura P2P puraSistemas finais arbitrrios comunicam-se diretamente: aplicao Cliente de um host com a aplicao Servidor de outro host.

    Cada host tem uma aplicao Cliente e uma aplicao Servidor que se comunicam respectivamente com aplicao Servidor e Cliente de outro(s) hosts.

    Podem ter IP fixo ou dinmico.

    Pares so intermitentemente conectados e trocam endereos IP entre si.Ex.: Gnutella.

    Altamente escalveis mas difceis de gerenciar.

    *

    Arquitetura Hbrida de Cliente-Servidor e P2PSoluo de implementao que utiliza ambas estruturas (Cliente-Servidor e P2P) que so ativadas em momentos diferentes.

    Exemplo Napster: Transferncia de arquivo P2P.Hosts participantes so identificados em um Servidor Napster que mapeia os arquivos disponveis para compartilhamentoHost Cliente deseja buscar um arquivo na rede e estabelece uma comunicao Cliente-Servidor com o Servidor Napster e identifica o arquivo desejado.Servidor Napster localiza o host que tem o arquivo e indica o host destino ao solicitante.Host Cliente se conecta ao Host Servidor (onde tem o arquivo desejado) e estabelece uma comunicao P2P.

    Exemplo Instant messaging (MS-Messenger): Bate-papo entre dois usurios P2P. Deteco/localizao centralizada de presena:Usurio registra seu endereo IP no Servidor central do servio quando fica on-line (comunicao Cliente-Servidor).Usurio contata o Servidor central para encontrar endereos IP dos vizinhos ou de sua lista de contatos (comunicao Cliente-Servidor).Ao solicitar conexo com o destino se estabelece uma comunicao P2P.

    *

    Sockets (conecta o processoda aplicao ao protocolo TCP)Processo que envia/recebe mensagens para/de seu socket (Processo de Transporte Camada 4 do Modelo OSI).O socket anlogo a uma porta (por onde passam as informaes trocadas pelos processos).O processo de envio empurra a mensagem para fora da porta.O processo de envio confia na infra-estrutura de transporte no outro lado da porta que leva a mensagem para o socket no processo de recepo. API (Application Programming Interface) : um socket no mundo Microsoft Windows.

    *

    Processos de endereamento de aplicaesPara um processo receber mensagens, ele deve ter um identificador associado:IP + Porta TCP.

    O endereo IP identifica o Host na rede.

    A Porta TCP identifica o processo dentro do Host (podem existir muitos processos e portas em uso simultneo no Host).

    Exemplos de nmeros de porta padro de processo Servidor:Servidor HTTP: 80.Servidor de Correio: 25.

    www.iana.org (tem muitas informaes sobre padres).

    *

    O protocolo da camada de aplicaoTipo das mensagens trocadas:Mensagem de requisio enviada pelo mdulo Cliente.Mensagem de resposta enviada pelo mdulo Servidor.

    Sintaxe dos campos: so os campos que compe a mensagem e como esto delineados no pacote da mensagem. Define o formato da informao na mensagem. Por ex: campo numrico com 4 posies.

    Semntica dos campos: o significado da informao dos campos da mensagem. Por ex: campo Ano de Nascimento (do exemplo acima).

    Regras que definem quando e como os processos enviam e respondem as mensagens (protocolo).

    Protocolos de domnio pblico:Definidos nas RFCs.Recomendados para interoperabilidade (Ex.: HTTP, SMTP).Protocolos proprietrios (Ex: KaZaA).

    *

    TCP (Transmission control protocol) AplicaesO TCP um protocolo orientado a conexo e dito confivel porque garante a entrega de todos os pacotes transmitidos pelas aplicaes, recuperando eventuais pacotes perdidos e entregando todos na mesma sequncia transmitida.

    Uma conexo lgica estabelecida previamente entre os hosts, possibilitando a administrao do processo de transferncia dos pacotes. Identifica os pacotes recebidos pelo destinatrio e retransmite-os em caso de perda de pacotes.

    O TCP oferece um mtodo bastante confivel para transmitir cadeias de dados em formatos de byte entre aplicaes que usam protocolos como HTTP, FTP, TELNET, POP3, SMTP, entre outros, isso , as transaes precisam de troca de pacotes entre os hosts dentro da mesma sesso de trabalho.

    *

    TCP AplicaesHTTP: HyperText Transfer Protocol (Protocolo de Transferncia de Hipertexto): o protocolo usado para a transmisso de dados no sistema World-Wide Web (WWW). Cada vez que voc aciona um link, seu browser realiza uma comunicao com um servidor da Web atravs deste protocolo.

    FTP:File Transfer Protocol (Protocolo de Transferncia de Arquivos): o meio de transferncia de arquivos de diversos formatos, sendo desde uma foto, um texto, um artigo cientfico, uma pgina de Internet, um programa, um MP3, de um host a outro.

    *

    TCP AplicaesTELNET: Terminal Virtual: o protocolo Internet para estabelecer a conexo entre computadores. Atravs dessa conexo remota, pode-se executar programas e comandos em outra mquina, como se o teclado de seu computador estivesse ligado diretamente a ela (simula remotamente um Terminal Local).

    POP3:Post Office Protocol (POP3) um protocolo utilizado no acesso remoto a uma caixa de correio eletrnico no Servidor de E-mail. Permite que todas as mensagens contidas numa caixa de correio eletrnico possam ser transferidas seqencialmente para um computador local. Ento o usurio pode administrar seus emails em seu computador local (ler as mensagens recebidas, apag-las, responder-lhes, armazena-las, etc.).

    SMTP:Simple Mail Transfer Protocol (SMTP): o padro de fato para envio de e-mail atravs da Internet. O SMTP um protocolo relativamente simples, baseado em texto simples, em que um ou vrios destinatrios de uma mensagem so especificados (e na maioria dos casos validados), sendo depois a mensagem transferida de um Servidor de email a outro(s).

    *

    Portas Padro no Protocolo TCP (exemplos)Combinao de Endereo IP e Porta = Socket.

    *

    UDP - AplicaesUser Data Protocol (UDP) um protocolo no orientado conexo, no confivel e portanto com pouco overhead (sobrecarga). usado por protocolos da camada de aplicao como DNS, ICMP, SNMP e TFTP, entre outros.

    Usado para transmisso de dados em tempo real, protocolos de gerenciamento (SNMP) e resoluo de nomes (DNS).

    A vantagem para programas usarem o UDP em vez do TCP o tempo de resposta. Primeiro porque o tamanho do pacote UDP menor, j que o cabealho UDP bem menor que o TCP, e segundo, no UDP no existe um mecanismo de verificao de chegada do pacote, acelerando o envio da mensagem.

    O processo de garantia de entrega e validao dos dados transmitidos deve ser tratado na camada de aplicao, se necessrio.

    *

    UDP - AplicaesDNS:Domain Name System: Executa o servio de traduo de Nomes nos endereos IP correspondentes aos servidores onde esses nomes esto associados. As aplicaes no precisam conhecer o endereo IP do host destino, bastando ter o Nome e conhecer o IP do Servidor DNS que far a traduo do Nome pelo IP do Servidor Destino.

    ICMP:Internet Control Message Protocol: um protocolo integrante do Protocolo IP, utilizado para funes operacionais da rede como controle de erros de transmisso e fornecer relatrios de erros fonte original. Qualquer computador que utilize IP precisa aceitar as mensagens ICMP, e alterar o seu comportamento em resposta ao erro relatado.

    SNMP:Simple Network Management Protocol (Protocolo de Gerncia Simples de Rede) um protocolo usado para gerncia operacional de redes TCP/IP. Permite a superviso e controle remoto dos componentes da rede TCP/IP.

    TFTP:Trivial File Transfer Protocol: um sistema muito simples de transmisso de arquivos pela Internet. No inclui sistemas de autenticao e usado apenas para o boot remoto de sistemas.

    *

    Como as caractersticas de desempenho da rede impactam o desempenho das aplicaes?Perda de dados durante a transmisso de dados na rede:Algumas aplicaes (ex.: udio) podem tolerar alguma perda (sugesto: usar UDP).Algumas aplicaes (ex: transferncia de arquivos, Telnet) exigem transferncia de dados 100% confivel (sugesto: usar TCP).

    Temporizao (atraso, latncia).Algumas aplicaes (ex.: telefonia Internet, jogos interativos) exigem baixa latncia (sugesto: usar QoS Qualidade de Servio = priorizao no transporte de pacotes de dados na rede).

    Banda passante:Algumas aplicaes (ex.: multimdia) exigem uma banda mnima para serem efetivas (sugesto: dimensionar adequadamente o link e a rede).Algumas aplicaes melhoram o desempenho do tempo de resposta quando a banda disponvel aumenta (sugesto: usar banda por demanda - on-demand).

    *

    Comentrio: Aplicaes comuns e requisitos para o servio de transporteAplicao

    file transfer

    e-mail

    Web documents

    real-time udio/vdeo

    stored udio/video

    jogos interativos

    e-businessPerdas

    Sem perdas

    Sem perdas

    Tolerante

    Tolerante

    Tolerante

    Tolerante

    Sem perdaBanda

    Elstica

    Elstica

    Elstica

    udio: 5 Kb-1 Mbvdeo:10 Kb-5 Mb

    udio: 5 Kb-1 Mbvdeo:10 Kb-5 Mb

    kbps

    elsticaSensvel ao atraso

    No

    No

    No

    Sim, dcimos de segundo

    Sim, segundos

    Sim, dcimos de segundo

    Sim

    *

    Web e HTTPAlgumas definies:Pgina Web composta por objetos.Objeto pode ser arquivo HTML, imagem JPEG, Java applet, arquivo de udio,A pgina Web consiste de arquivo-HTML base que inclui os objetos referenciados.Cada objeto endereado por uma URL (Uniform Resource Locator).Exemplo de URL:

    www.someschool.edu/someDept/pic.gifNome do HostNome do caminho

    *

    Viso geral do HTTP (1/2)HTTP - HyperText Transfer Protocol.Protocolo da camada de aplicao da Web.

    Modelo Cliente/Servidor:Cliente: browser (programa no micro do usurio) que solicita, recebe e apresenta objetos da Web. Servidor: envia objetos em resposta a pedidos do browser.

    *

    Viso geral do HTTP (2/2)Utiliza TCP:Cliente inicia conexo TCP (cria socket) para o Servidor na porta 80.Servidor aceita uma conexo TCP do Cliente.Mensagens HTTP (mensagens do protocolo de camada de aplicao) so trocadas entre o browser (Cliente HTTP) e o Servidor Web (Servidor HTTP).A conexo TCP fechada ao final do envio dos objetos.

    HTTP stateless (o oposto chamado stateful).O Servidor no mantm informao sobre os pedidos passados pelos Clientes. Se a sesso cair, precisa recomear o processo.

    *

    Modelagem do tempo de respostaDefinio de RTT (Round Trip Time tempo de ida e volta): tempo para enviar um pequeno pacote que vai do Cliente para o Servidor e retorna.

    Tempo de resposta:Um RTT para iniciar a conexo TCP.Um RTT para requisio HTTP e primeiros bytes da resposta HTTP para retorno.Tempo de transmisso de arquivo:Total = 2RTT+ tempo de transmisso do arquivo

    *

    Tipos de conexes HTTPHTTP no persistente:A conexo TCP desfeita ao final da entrega de cada objeto.A conexo NO PERSISTE para outros objetos.O browser pode abrir vrias conexes TCP simultneas (paralelismo)...Pode sobrecarregar o Servidor (administrao de mais buffers e variveis TCP no lado Cliente e Servidor) e tem maior tempo de resposta (requisio de conexo a cada objeto solicitado).O HTTP/1.0 utiliza HTTP no persistente.

    HTTP persistenteMltiplos objetos podem ser enviados sobre uma mesma conexo TCP (com paralelismo ou sem paralelismo). Sem paralelismo, o Servidor fica ocioso entre o final do envio do objeto e a recepo da requisio de envio do prximo objeto (desperdcio de recurso) e maior tempo de reposta para montar a pgina WEB.O HTTP/1.1 utiliza conexes persistentes em seu modo padro.

    *

    Cookies: Estado usurio-ServidorSo informaes que permitem os sites monitorarem os usurios que o visitaram.

    A maioria dos Web sites utilizam cookies.

    Cookies possuem 4 componentes:Linha de cabealho do cookie na mensagem HTTP de requisio.Linha de cabealho de cookie na mensagem HTTP de resposta.Arquivo de cookie mantido no Host do usurio e manipulado pelo browser do usurio associado a uma identificao (ID).Restante das informaes armazenadas no Banco de dados backend no Web site associada ao mesmo ID do cookie.

    *

    CookiesO que os cookies podem trazer:Autorizao.Cartes de compra.Recomendaes.Estado de sesso do usurio (Web e-mail).

    Cookies e privacidade:Cookies permitem que sites saibam muito sobre voc.Voc pode fornecer nome e e-mail para os sites.Mecanismos de busca usam redirecionamento e cookies para saberem mais sobre voc.Companhias de propaganda obtm informaes por meio dos sites.

    *

    Web Caches (Proxy Server)Objetivo: atender a solicitao do Browser (Cliente) sem envolver o Servidor Web destino.

    Usurio configura o browser: acesso Web feito por meio de um Servidor Proxy (Web Cache).

    Cliente envia todos os pedidos HTTP para o Web cache:Se o objeto existe no Web cache: Web Cache retorna o objeto diretamente ao browser.Ou o Web Cache solicita objeto do Servidor Web destino e ento envia o objeto recebido ao Browser (Cliente).Servidor Web destinoServidor Web destino

    *

    Exemplo de cachingSem cache a pgina caminha pelo link de 1,5Mbps at o servidor destino (que pode estar do outro lado do mundo).Com cache, a pgina recebida a 10Mbps na LAN (ou WAN prxima, no caso do cache no provedor Internet - ISP).Sem Web CacheCom Web Cache

    *

    Por que usar Web Cache?Reduz o tempo de resposta para a requisio do Browser (Cliente). Se o Web Cache estiver na LAN, a velocidade de acesso o da LAN.

    Reduz o trfego na Internet e no enlace de acesso ao site desejado (Web Site destino), pois o Web Cache est mais prximo do Browser que do Servidor Web destino.

    A existncia de Web Caches na Internet habilita os provedores fracos (com servidores de capacidade limitada e com links de acesso Internet com velocidades limitadas) a efetivamente entregarem o contedo aos solicitantes, pois os objetos esto armazenados nos caches.

    *

    Problema do Web CacheProblema: O Servidor Web Cache pode entregar ao usurio, informao armazenada que esteja desatualizada.

    Soluo: Usar msg de requisio GET Condicional.

    A mensagem Get Condicional inclui a informao da data e hora da ltima verso do objeto solicitado que foi recebida pelo Web Cache.

    O Servidor de destino verifica se a verso do objeto teve alterao aps aquele instante:No houve alterao: Servidor Web destino envia mensagem 304 not modified indicando que o objeto ainda vlido.Houve alterao: Servidor Web destino envia o objeto atualizado que armazenado no Web Cache substituindo o antigo e repassa o objeto ao browser do usurio solicitante.

    *

    FTP File Transfer Protocol: protocolo de transferncia de arquivosTransferncia de arquivos de ou para o computador remoto (download ou upload respectivamente).Modelo Cliente Servidor.Cliente: lado que inicia a transferncia (seja de ou para o lado remoto).Servidor: Host remoto.FTP: RFC 959.FTP Servidor: usa portas 20 e 21 do TCP.

    *

    FTP: controle separado das conexes de dadosCliente FTP contata o Servidor FTP na porta 21 especificando o TCP como protocolo de transporte.Cliente obtm autorizao pela conexo de controle (porta 21).Cliente procura o diretrio remoto no Servidor FTP enviando comandos pela conexo de controle.Quando o Servidor FTP recebe um comando para uma transferncia de arquivo, ele abre uma conexo de dados TCP para o Cliente na porta 20.Aps a transferncia de um arquivo, o Servidor fecha a conexo de dados.Servidor abre uma segunda conexo de dados TCP para transferir outro arquivo, caso tenha sido solicitado pelo Cliente FTP.Conexo de controle: a conexo pela porta 21 mantida enquanto o processo FTP estiver ativo no Cliente FTP.Servidor FTP mantm estado: diretrio atual, autenticao anterior.

    *

    SMTP: Correio eletrnico (1/2)Trs componentes principais: Agentes de usurio. Servidores de Correio.Protocolo SMTP - Simple Mail Transfer Protocol.

    Agente de usurio:D acesso do usurio ao seu Servidor de Correio (emails).Composio, edio e leitura de mensagens de correio.Mensagens de entrada e de sada so armazenadas no Servidor.Ex.: Eudora, Outlook, Netscape Messenger.

    *

    SMTP: Correio eletrnico (2/2)Servidores de Correio: Caixa postal contm mensagens que chegaram para o usurio.Fila de mensagens contm as mensagens de correio a serem enviadas ao(s) outro(s) Servidor(es) de Correio.Exemplo: MS-Exchange.

    Protocolo SMTP: permite aos Servidores de Correio trocarem mensagens entre si.Cliente: Servidor de correio que envia.Servidor: Servidor de correio que recebe.

    *

    SMTP [RFC 821]: Correio eletrnicoUsa TCP para transferncia confivel de mensagens de correio do Cliente ao Servidor de Correio, porta 25 do TCP.Transferncia direta: a comunicao SMTP ocorre entre os servidores de correio de origem e de destino. No se usam servidores de correio intermedirios.Se o servidor de correio destino estiver indisponvel, a mensagem aguarda no servidor de email de origem.Trs fases de transferncia:Handshaking (apresentao).Transferncia de mensagens.Fechamento.Interao comando/resposta:Comandos: texto ASCII.Resposta: cdigo de status e frase.Mensagens devem ser formatadas em cdigo ASCII de 7 bits.

    *

    SMTPSMTP usa conexes persistentes.

    SMTP exige que as mensagens (cabealho e corpo) estejam em ASCII de 7 bits.

    Servidor SMTP usa CRLF.CRLF para indicar o final da mensagem (CR = fim da linha, LF = pular para a prxima linha).

    Comparao com HTTP:HTTP: pull (puxa) informao do servidor destino.E-mail: push (empurra) informao ao servidor destino.Ambos usam comandos e respostas em ASCII com interao comando/resposta e cdigos de status. HTTP: cada objeto est encapsulado na sua prpria mensagem de resposta.SMTP: mltiplos objetos so enviados numa mensagem multiparte (mltiplas partes).

    *

    Cenrio: Alice envia mensagem para BobAlice usa o agente de usurio (UA) para compor a mensagem para [email protected] agente de usurio dela envia a mensagem para o seu Servidor de correio. A mensagem colocada na fila de mensagens.O lado Cliente do SMTP abre uma conexo TCP com o Servidor de correio do Bob.O Cliente SMTP envia a mensagem de Alice pela conexo TCP.O Servidor de correio de Bob coloca a mensagem na caixa de correio de Bob.Bob invoca seu agente de usurio para ler a mensagem.

    *

    MIME: Formato das mensagensno ASCII (extenses multimdia)MIME: multimedia mail extension (RFC 2045, 2056).

    Mensagens com caractersticas multimdia (no caracter ASCII).

    Linhas adicionais no cabealho declaram o tipo de contedo MIME.Dados multimdiatipo, subtipo, declarao de parmetroMtodo usadopara codificar dadosVerso da MIMEDados codificados

    *

    POP3 e IMAPPOP3:No modo ler-e-apagar (download-and-delete) os emails recebidos pelo usurio so deletados do Servidor de Correio. O usurio no pode reler o e-mail no Servidor de Correio.No modo ler-e-guardar (download-and-keep), cpias das mensagens so mantidas no Servidor de Correio e podem ser lidas a qualquer tempo.POP3 stateless atravs das sesses.

    IMAP:Mantm todas as mensagens em um lugar: o Servidor de Correio.Permite que o usurio criar e organizar as mensagens em pastas dentro do Servidor de Correio.IMAP mantm o estado do usurio atravs das sesses:Nomes das pastas e mapeamentos entre os IDs da mensagem e o nome da pasta.

    *

    Webmail: Email pela WebO agente do usurio um browser Web comum.

    O usurio se comunica com sua caixa postal remota via HTTP.

    Como no IMAP, o usurio pode criar e administrar suas pastas e mensagens armazenadas no Servidor de Correrio.

    Muitas implementaes de Webmail utilizam Servidor IMAP.

    *

    Protocolos de acesso ao correioSMTP: cuida da entrega e armazenamento no Servidor do destino.

    Protocolo de acesso: recupera mensagens do Servidor: POP: Post Office Protocol [RFC 1939]:Autorizao (agente Servidor) e download. IMAP: Internet Mail Access Protocol [RFC 1730]:Maiores recursos (mais complexo).Manipulao de mensagens armazenadas no Servidor.HTTP: Hotmail , Yahoo! Mail etc.

    *

    DNS - Domain Name SystemIdentificao de Internet Hosts e roteadores:Endereos IP (32 bits): usados para enderear datagramas.nome: ex.: gaia.cs.umass.edu - usados por humanos.

    Para relacionar nomes com endereos IP usamos DNS - Domain Name System.

    DNS Domain Name System (tambm chamado de Domain Name Service): Base de dados distribuda implementada de forma hierrquica com vrios servidores de nomes que iro traduzir os nomes em endereo IP.

    uma funo interna da Internet, implementada como protocolo da camada de aplicao.

    *

    Servios prestados pelo DNSTraduo do nome do Host em endereo IP.Host aliasing (apelidos): alguns nomes de servidores no so fceis de se lembrar ento o DNS atribui um nome mais fcil de lembrar:Nomes cannicos (nome completo) e alias (apelido): Exemplo: nome cannico relay.west-coast.enterprise.com tem o apelido de enterprise.com.Mail server aliasing: Exemplo: relay.west-coast.hotmail.com tem o apelido hotmail.com.Distribuio de carga:Servidores Web replicados: um nome cannico estar associado a um conjunto de endereos IP. O DNS fornece a lista de todos os IPs desses servidores replicados para o solicitante que informou o nome cannico.O DNS, a cada consulta desse nome cannico, faz um rodzio da ordem dos endereos IP.Arquitetura hierrquica evita um nico ponto de falha e otimiza o trfego na Internet.

    *

    Base de dados distribuda, hierrquicaCliente quer o IP para www.amazon.com:Cliente consulta um Servidor de raiz para encontrar o Servidor DNS com.Cliente consulta o Servidor DNS com para obter o Servidor DNS amazon.com.Cliente consulta o Servidor DNS amazon.com para obter o endereo IP para www.amazon.com.Raiz

    TLD(Top Level Domain)

    Autorizados

    *

    DNS: Servidores de nomes raizSo contatados pelos Servidores de nomes locais que no podem resolver um nome.Servidores de nomes raiz:Buscam Servidores de nomes autorizados se o mapeamento do nome no for conhecido. Conseguem o mapeamento.Retornam o mapeamento para o servidor de nomes local.Em fevereiro/2004 eram 13 servidores de nomes raiz no mundo (figura).

    *

    Servidores TLD e AutorizadosServidores top-level domain (TLD): So responsveis pelos domnios com, org, net, edu etc e todos os domnios top-level nacionais uk, fr, ca, jp.

    Servidores DNS Autorizados: So Servidores DNS de organizaes que provm nome de Host autorizado para mapeamentos IP para Servidores de organizaes (ex.: Web e mail).

    Podem ser mantidos por uma organizao ou provedor de servios.

    *

    Servidor de nomes localNo pertence estritamente a uma hierarquia.

    Cada ISP (ISP residencial, companhia, universidade) possui umTambm chamado de Servidor de nomes default.

    Quando um Host faz uma pergunta a um DNS, a pergunta enviada para seu Servidor DNS local.Age como um proxy, encaminhando as perguntas para dentro da hierarquia.Uma vez que um Servidor de nomes apreende um mapeamento, ele armazena o mapeamento num registro do tipo cache.Registro do cache tornam-se obsoletos (desaparecem) depois de um certo tempo.Servidores TLD so tipicamente armazenados em cache nos Servidores de nome locais.

    *

    Exemplo do processo de traduo no DNSO Host em cis.poly.edu quer o endereo IP para gaia.cs.umass.edu.

    Seguir a sequncia numrica dos passos desenvolvidos no processo de traduo DNS.

    *

    Compartilhamento de arquivos P2P: Napster: diretrio centralizadoProjeto original Napster.Quando um par se conecta, ele informa ao Servidor central:Endereo IP.Contedo.

    Alice procura por Hey Jude.

    Alice requisita o arquivo de Bob.

    *

    P2P: Napster: problemas com diretrio centralizadoArquitetura Napster:Ponto nico de falhas.

    Gargalo de desempenho (sujeito a carga do uso).

    Infrao de copyright (o servidor prova material).

    Transferncia de arquivo descentralizada, mas a localizao de contedo altamente centralizada.

    *

    Compartilhamento de arquivos P2P: Gnutella: Query flooding (inundao)Processo totalmente distribudo:Sem Servidor central.Protocolo de domnio pblico.Muitos Clientes Gnutella implementando o protocolo.

    Rede de cobertura:Inundao de consultas de escopo limitado: Um determinado par de hosts ser tipicamente conectado a at 10 ns vizinhos na Rede de Sobreposio (o valor da quantidade de ns vizinhos configurvel).

    *

    P2P: Gnutella: protocoloMensagem de consulta (query) enviada pelas conexes TCP existentes.Os pares encaminham a mensagem de consulta.QueryHit (encontro) enviado pelo caminho reverso de mais de um par.O usurio seleciona qual deles ser utilizado.Escalabilidade: flooding de alcance limitado (j que a cobertura da Rede de Sobreposio limitada).Rede de Sobreposio

    *

    Compartilhamento de arquivos P2P: KaZaA: Explorando heterogeneidadeCada par ou um lder de grupo ou um par comum atribudo a um lder de grupo.O lder de grupo tem grande largura de banda e alta conectividade com a Internet.O lder de grupo acompanha o contedo em todos os seus discpulos.Cada lder de grupo tem:Conexo TCP com os pares de seu grupo.Conexes TCP entre alguns pares que so lderes de grupo.Um grupo como se fosse um mini-Napster.

    *

    P2P: KaZaACada arquivo possui um hash e um descritor.

    Um hash uma seqencia de letras ou nmeros geradas por um algortmo de hashing. Essa seqencia busca identificar um arquivo ou informao unicamente.

    O Cliente envia a consulta de palavra-chave para o seu lder de grupo.

    O lder de grupo responde com os encontros: Para cada encontro: metadata, hash, endereo IP.

    Se o lder de grupo encaminha a consulta para outros lderes de grupo, eles respondem com os encontros.

    O Cliente ento seleciona os arquivos para download.Requisies HTTP usando hash como identificador so enviadas aos pares que contm o arquivo desejado.

    Aplicao distribuda:Aplicao Cliente processada no computador Cliente.Aplicao Servidor processada no Servidor.Mdulo Cliente sempre inicia o processamento e solicita algo do mdulo Servidor (Pedidos). Mdulo Servidor recebe a solicitao do mdulo Cliente e retorna uma resposta.

    Cliente:Comunica-se com o Servidor.Cliente no se comunica diretamente com outros Clientes.Pode ser conectado intermitentemente.Pode ter endereo IP e/ou Porta dinmicos.Solicita servios ao Servidor.Inicia a transao.

    Esse slide est com um erro no original. A lozalizao de contedo centralizada e no descentralizada