rc - sl02 - camada de aplicacao

Download RC - SL02 - Camada de Aplicacao

Post on 14-Jan-2015

3.150 views

Category:

Education

12 download

Embed Size (px)

DESCRIPTION

Unidade 2 sobre Camada de Aplicação da arquitetura TCP/IP. Os protocolos HTTP, FTP, SMTP, POP, IMAP, DNS, de P2P.

TRANSCRIPT

  • 1. Universidade Federal da ParabaCentro de Cincias Aplicadas e EducaoDepartamento de Cincias ExatasRedes de Computadores:Camada de Aplicao Prof. Rafael Marrocos Magalhesrafael@dce.ufpb.br28 de Fevereiro de 2012 UFPB - CCAE - DCEEsta apresentao contm partes, ou mesmo slides inteiros, da apresentao original disponibilizada por J.F Kurose e K.W. Ross, com permisso para utilizao como material de apoio instrucional. E, conforme solicitao do original, inclu aqui a nota de direito autoral.sexta-feira, 2 de maro de 121

2. MotivaoComo usamos a Internet?sexta-feira, 2 de maro de 12 2 3. SumrioAplicaesPrincpios de aplicaes em redesA Web e o Protocolo HTTPFTP - transferncia de arquivosCorreio Eletrnico (STMP, POP3, IMAP)DNS - Nomes X IPsAplicaes P2Psexta-feira, 2 de maro de 12 3 4. sexta-feira, 2 de maro de 12 4 5. Algumas aplicaesOutras aplicaes de rede ! e-mail ! redes sociais ! web! voice over IP ! mensagem instantnea ! vdeoconferncia em ! login remototempo real ! compartilhamento de! computao em gradearquivos P2P ! jogos em redemultiusurios ! clipes de vdeoarmazenados em fluxocontnuosexta-feira, 2 de maro de 12 5 6. ObjetivosAspectos conceituais sobre protocolos deaplicaomodelos de servio de transporteparadigma cliente-servidorparadigma peer-to-peerExemplos na prticaHTTP, FTP, STMP/POP3/IMAP, DNS, etc...sexta-feira, 2 de maro de 126 7. Criar Aplicaes!? Criando uma aplicao Criando uma aplicao de redeEscreva programas queaplicao de rede transporterede" executem em (diferentes)enlacefsica sistemas finais" se comuniquem pela rede aplicaoEscreva programas que " p. e., software de servidor Web se comunica com software detransport rede"executem em (diferentes)navegador WebNo preciso escrever softwareenlace fsicasistemas finais dispositivos do ncleo daparaaplicaorede transportese comuniquemdispositivos do ncleo da redepela rederede enlace" " fsicano executam aplicaes do applicationp. e., software usurioservidor Web de transport"networkdata link " as aplicaes nos sistemas finaisphysicalse comunica com software depermitem rpidonavegador Web desenvolvimento e propagaoNo preciso escrever softwarepara dispositivos do ncleo da aplicaoredetransporte redeenlace"dispositivos do ncleo da redesexta-feira, 2 de maro de 12fsica 7 8. Escreva programas que transporte rede " executem em (diferentes)enlaceCriar Aplicaes!? fsicasistemas finais " se comuniquem pela redeCriando uma aplicao " p. e., software de servidor Webde redese comunica comprogramas que deEscreva software aplicao transportenavegador Web" executem em (diferentes)rede enlacefsica sistemas finaisNo preciso escrever software" se comuniquem pela redepara dispositivos do ncleo da" p. e., software de servidor Web se comunica com software de aplicaorede navegador Webtransporte rede No preciso escrever softwareenlace " dispositivos do ncleo da rede da para dispositivos do ncleoaplicaofsica redetransporteno executam"aplicaesncleo da rede dispositivos dodorede enlacefsicausuriono executam aplicaes doapplication transport usurionetworkas aplicaes " as aplicaes nos sistemas finaisnos sistemas finaisdata link " physicalpermitem rpidopermitem rpido desenvolvimento e propagaodesenvolvimento e propagaosexta-feira, 2 de maro de 128 9. Arquitetura de AplicaesCliente-servidor Incluindo centros de dados/cloud computingPeer-to-peer (P2P)Hbrida cliente-servidor/p2psexta-feira, 2 de maro de 12 9 10. Arquitetura cliente-sercliente-servidorserrvidor servidor:rvidor: " hospedeiro sempre ligado " endereo IP permanenteclie " server farms por expansoentes:"comunicam-se com o servidor cliente/servidor"podem estar conectadosintermitentemente"podem ter endereos IPdinmicos"no se comunicam diretamenteentre sisexta-feira, 2 de maro de 1210 11. ervidor Arquitetura cliente-se cliente-servidorervidor: " hospedeiro sempre ligado se " endereo IP permanente " server farms por expanso ientes:cliente: comunicam-se com o servidor " cl "podem estar conectados intermitentemente "podem ter endereos IP cliente/servidor dinmicos "no se comunicam diretamente entre si sexta-feira, 2 de maro de 12 11 12. Centros de dados da Google ! custo estimado do centro de dados: $600M ! Google gastou $2,4B em 2007 em novos centros dedados ! cada centro de dados usa de 50 a 100 megawattsde potnciasexta-feira, 2 de maro de 12 12 13. rquitetura P2P puraArquitetura P2P pura P2P puraenhum servidor sempre! nenhum servidor sempregado ligado stemas finais arbitrrios! sistemas finais arbitrriose comunicam diretamente se comunicam diretamente! pares so conectadosares so conectados termitentemente e e intermitentemente mudam endereos IP udam endereos IP peer-peerpeer-peeraltamente escalonvel, altamente escalvel, masmente escalvel, masmas difcil de administrardifcil de administrarfcil de administrar sexta-feira, 2 de maro de 1213 14. Hbrido de cliente-servidor Hbrido: cliente-servidor-P2P Hbrido de cliente-servidor e P2P e P2PSkype " aplicao P2P voice-over-IP P2PSkype " aplicao centralizado: achando endereo da parte " servidor P2P voice-over-IP P2Premota: " servidor centralizado: achando endereo da parte " remota: cliente-cliente: direta (no atravs deconexoservidor) " conexo cliente-cliente: direta (no atravs deMensagem instantneaservidor)Mensagem instantneadois usurios P2P " bate-papo entreservio centralizado: deteco/localizao da " bate-papo entre dois usurios P2Ppresena do cliente " servio centralizado: deteco/localizao dapresena do cliente seu endereo IP com servidor usurio registracentral quando entra on-line usurio registra seu endereo IP com servidor central quando entra on-lineusurio contacta servidor central para descobrirendereos IP dos parceiros usurio contacta servidor central para descobrirendereos IP dos parceirossexta-feira, 2 de maro de 1214 15. Processos e comunicao Processos se comunicandoocessos se comunicandoprocesso: programa rodando dentro de umprocesso cliente:processo que inicia a hospedeiro comunicaonicandomesmo hospedeiro,! no processo servidor: processo cliente:cesso: programa se dois processos processo que esperaodando dentro de um comunicam usando a processo cliente:para ser contactado iniciaprocesso que a comunicao entreospedeiro (definida pelo processos que inicia a processo comunicao comunicaoo mesmo hospedeiro, SO).! Nota: aplicaes com processo servidor:! processo servidor:ois processos se processos em arquiteturas P2P tm processo que espera hospedeiros diferentes processos clientes & esperaprocesso queomunicam ser contactado para usando a se comunicam trocandopara ser contactadoprocessos servidoresomunicao entre lo mensagensrocessos (definida pelo! Nota: aplicaes com O). arquiteturas P2P tm ! Nota: aplicaes coms processos clientes &rocessos em servidoreso processosarquiteturas P2P tmospedeiros diferentes processos clientes &e comunicam trocandoprocessos servidores sexta-feira, 2 de maro de 12 15 16. Sockets ! processo envia/recebemensagens de/para seuSocketshospedeiroou servidorhospedeiroou servidor Socketssocket controlado pelo ! socket semelhante porta desenvolvedor processoda aplicaoprocesso" processo enviando empurra ! processo envia/recebe mensagem pela porta hospedeiro socket ou servidorhospedeiro socketou servidormensagens de/para seu" processo enviando conta comTCP com InternetTCP comsocketbuffers,buffers, infraestrutura devariveis controlado pelo variveis transporte no outro lado da ! socket que leva a mensagem porta,semelhante porta processodesenvolvedorda aplicao processo " processo enviando empurra ao socket no processocontrolado socketsocket mensagem pela porta receptor pelo OSTCP com TCP com " processo enviando conta com ! API: (1) escolha do protocolo de transporte; (2)buffers,Internetbuffers, infraestrutura devariveiscapacidade de consertar alguns parmetros (muito transporte no outro lado davariveismais sobre isso adiante) porta, que leva a mensagem ao socket no processocontroladopelo OS receptor ! API: (1) escolha do protocolo de transporte; (2)sexta-feira, 2 de maro de 12 16 17. Endereo X Processo Endereando processosEndereando processos ! para receber mensagens," R: No, muitos processos processo deve ter identificador estar rodando no mesmo para receber mensagens, hospedeiro! dispositivo hospedeiro tem R: No, muitos processos podem" processo deve ter! Identificador inclui endere endereo IP exclusivo de 32 estar rodando no mesmo identificador nmeros de porta associados bitshospedeiro dispositivo hospedeiro temprocesso no hospedeiro. ?! exerccio: use ipconfig Identificador inclui endereo IP e! do endereo IP exclusivo de 32 bitscomando prompt para obter seu de porta associados ao port nmeros Exemplos de nmero de!" servidor HTTP: 80 endereo IP (Windows) processo no hospedeiro. exerccio: use ipconfig doo endereo IP! Exemplos de servidorde porta:! P: Basta para obter seu do comando prompt" nmero de correio: 25 endereo IP (Windows) que o processo hospedeiro em" servidor HTTP: 80 executado para identificar oservidor de correio: 25 P: Basta o endereo IP do" processo? hospedeiro em que o processo executado para identificar o sexta-feira, 2 de maro de 1217 18. Definies de protocoloDenio de Protocoloda camada de aplicao Definies de protocolo da camada de aplicao! tipos de mensagens1 protocolos de domniotrocadas, ! tipos de mensagens pblico: domnio protocolos de " p. e., requisio, respostatrocadas, ! definidos em RFCs 2 sintaxe da mensagem: !pblico: p. e., requisio, resposta " ! prov interoperabilidade " que campos nas mensagens & ! definidos em RFCs ! sintaxe da os campos socomo mensagem: ! p. e., HTTP, SMTP, ! prov interoperabilidade" que campos nas mensagens &delineadosBitTorrent como os campos so! p. e., HTTP, SMTP, 3 semntica da mensagem ! delineados protocolos proprietrios:BitTorrent " significado da informao ! semntica da mensagem! p. e., Skype, ppstream protocolos proprietrios:nos campos" significado da informao 4 regras de quando e como !! p. e., Skype, ppstream nos camposprocessos enviam & ! regras de quando