Sd capitulo01

download Sd capitulo01

of 48

  • date post

    27-Jun-2015
  • Category

    Documents

  • view

    1.202
  • download

    0

Embed Size (px)

Transcript of Sd capitulo01

  • 1. SISTEMAS DISTRIBUDOS 2008.2 Captulo 1 IntroduoAndr Ribeiro Cardoso - andrec@larces.uece.br1

2. ApresentaoProf. Andr Ribeiro Cardoso (andrec@larces.uece.br) Material didtico: http://www.larces.uece.br/~andrec/SD20082 Sistema de avaliao: Duas provas tericas - P1 e P2 Trabalhos prticos - T Seminrios - S mdia = (P + P + T + S) 1 2 /4 Condio para aprovao: mdia >= 7,0 Nota final = (mdia + NEF) / 2 >= 5,02 3. Bibliografia Sistemas Distribudos Princpios e Paradigmas(2a edio)Andrew Tanenbaum / Maarten Van Steen Sistemas Distribudos Conceitos e Projetos(4a edio)George Coulouris, Jean Dollimore e Tim Kindberg 3 4. Objetivos Apresentar os princpios de funcionamento, conceitosavanados e tecnologias subjacentes dos SistemasDistribudos Explorar os conhecimentos adquiridos atravs deTrabalhos Prticos e Seminrios Avanados4 5. Cronograma (60horas)Dezembro/2008 02, 04, 09, 11, 16, 18, 23-------------------- 2009 --------------------Janeiro 06, 08, 13, 15, 20, 22, 27, 29Fevereiro 03, 05, 10, 12, 17, 19, 26Maro 03, 05, 10, 12, 17, 24, 26, 31Abril 02, 07, 14, 16, 20 5 6. Sumrio Definio Metas Tipos de Sistemas Distribudos 6 7. Definio Um sistema distribudo (SD) um conjunto decomputadores independentes que se apresenta a seus usurioscomo um sistema nico e coerente (Tanenbaum) Um sistema em que componentes de hardware e softwarelocalizados em computadores em rede se comunicam ecoordenam suas aes por passagem de mensagens(Coulouris et al.) Implica em: concorrncia, ausncia de relgio global efalhas isoladas e independentes Motivao: compartilhamento de recursos7 8. DefinioSistemas DistribudosVoc que tem um quando a falha de um computador doqual voc nunca ouviu falar impede que voc faa qualquer trabalho 8 9. DefinioArquitetura geral de um SD Middleware: camada de software que se estende porvrias mquinas e oculta das aplicaes as diferenasem hardware e sistemas operacionais 9 10. Sumrio Definio Metas Tipos de Sistemas Distribudos 10 11. Metas Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana11 12. MetasAcesso/compartilhamento de recursosConsiderada PRINCIPAL METATipos de recursos Impressoras, computadores, dados, Hds etc. Um SD deve oferecer fcil acesso a recursos remotos e compartilhamento eficiente/controlado Compartilhamento de recursos induz a economia 12 13. Metas Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana13 14. MetasTransparncia da distribuioOculta o fato de recursos estarem distribudosUm SD se apresenta a usurios e aplicaes como um sistema nico (TRANSPARENTE) Tipos de transparncias Acesso, Localizao, Migrao, Relocao,Replicao, Concorrncia e Falha 14 15. Metas Transparncia da distribuio (cont.) Acesso Trata de ocultar diferenas em representao de dados(mquinas com arquiteturas diferentes) Diferenas entre sistemas de nomeao e como arquivosso manipulados Localizao O nome do recurso deve ser independente de sualocalizao fsica (sist. nomeao tem papel importante) Nomes lgicos (URL): usurio acessa recursos daindependente de onde ele est 15 16. MetasTransparncia da distribuio (cont.)MigraoObjetos podem migrar de uma mquina a outra por questes de desempenho, confiabilidade, segurana etc. Deve Ser feita de forma automtica pelo sistema Manter nome do objeto Garantir continuidade de comunicao 16 17. MetasTransparncia da distribuio (cont.)RelocaoOculta que um recurso (notebook) possa ser movido para outra localizao durante o uso Quando um usurio mvel? Um notebook se movimentando dentro da mesmarea de cobertura (no mvel) Um automvel passando por vrias redes de acessosem fio, com conexo ininterrupta (mvel) Um notebook numa lanchonete sem necessidade deconectividade durante trajetria (mvel) 17 18. MetasTransparncia da distribuio (cont.)ReplicaoPermite que vrias instncias de recursos sejam usadas para aumentar a confiabilidade e o desempenho Deve Mascarar o conhecimento das rplicas por parte dosusurios ou dos programadores de aplicativos18 19. Metas Transparncia da distribuio (cont.) ConcorrnciaCoordenar acessos a recursos compartilhados Ordenao de eventos: todos usurios ter uma mesma viso do sistema Garantir excluso mtua Evitar postergao indefinida Evitar deadlocks Tolerar falhas, detectar e recuperar falhas 19 20. Metas Transparncia da distribuio (sumrio)20 21. Metas Acesso a recursos Transparncia da distribuio Abertura Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana21 22. Metas AberturaSD aberto oferece servios de acordo com regras padronizadas para descreverem a sintaxe e semntica dos servios Ex: Em redes, existe a padronizao de protocolos que regem o contedo, formato e significado das mensagens Em SDs, os servios so especificados por IDLs IDLs capturam a sintaxe dos servio (especificam nome das funes, tipos de parmetros, valores de retorno, excees etc. Especificao da semntica (parte complicada)22 23. Metas Acesso a recursos Transparncia da distribuio Abertura Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana23 24. MetasEscalabilidade De tamanho Entrada de vrios usurios ao sistema Geogrfica Usurios e recursos devem estar longe uns dosoutros Administrativa Envolvimento de vrias organizaesadministrativas24 25. Metas Escalabilidade/Problemas (tamanho) 25 26. Metas Escalabilidade/Problemas (geogrfica)26 27. Metas Escalabilidade/Problemas (administrativa)27 28. MetasEscalabilidade/Tcnicas Ocultar latncias (geogrfica) Idia: evitar o tempo de resposta a req. remotas Comunicao assncrona: execuo de outrostrabalhos Distribuio Idia: dividir um componente em partes eespalhar pelo sistema Ex: DNS e Web Replicao / Cache Idia: replicar recursos para aumentardisponibilidade28 29. Metas Escalabilidade/Tcnicas Ocultar latncias: Aplicaes interativas no usamcomunicao assncrona Soluo: uso de formulriosDiferena entre deixar um servidor ou um cliente verificar formulrios29 30. MetasEscalabilidade/Tcnicas Distribuio Diviso do espao de nomes do DNS em zonas30 31. Metas Escalabilidade/Tcnicas Replicao/Cache (*)Replicao: deciso do proprietrioCache: deciso do cliente (*) Problema de consistncia de dados 31 32. Metas Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana32 33. MetasConfiabilidadeTolerar falhas Habilidade do sistema continuar operacional mesmo na presena de falhas (redundncia e controle distribudo) Detectar e recuperar falhas Capacidade para detectar ocorrncia de falhas e levar o sistema a um estado aceitvel para a continuidade da operao (mecanismos de retransmisso de msgs)33 34. Metas Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana34 35. Metas FlexibilidadeCapacidade de modificao e incluso Correo/manuteno do sistema sem interrupo do servio Incluso de novas funcionalidades e recursos (integrao de componentes) 35 36. Metas Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana36 37. MetasDesempenhoObjetivo: transformar o desempenho to bom quanto, ou mesmo superior, a de um sistema centralizado Tcnicas bsicas Uso da cache Minimizar a necessidade de transferncia de dados esincronizao Explorar uso de paralelismo de alta granularidade(threads, concorrncia etc.) 37 38. Metas Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana38 39. MetasHeterogeneidadeObjetivo: permitir a interao de sistemas diferentes tanto em nvel de software como de hardware Inclui diferentes SOs e linguagens de programao Tcnicas bsicas Uso de protocolos Uso de formatos comuns para representao dedados (XDR, XML etc.) Camadas de adaptao (Middleware) 39 40. Metas Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana40 41. MetasSeguranaObjetivo: proteo recursos compartilhados e manuteno da confiabilidade de dados Deve considerar mecanismos para: Autenticao Autorizao Integridade Confidencialidade Autenticidade Tcnicas de criptografia Preocupao com ataques (DoS, DDoS)41 42. Sumrio Definio Metas Tipos de Sistemas Distribudos 42 43. Tipos de SDs Sistemas de Computao Distribudos Sistemas de Informao Distribudos Sistemas Embutidos Distribudos43 44. Tipos de SDs Sistemas de Computao Distribudos Sistemas de computao de clusters Sistemas de computao em grade (grids)44 45. Tipos de SDs Sistemas de computao de clusters Conjunto de estaes de trabalho ou PCs semelhantes,conectados por meio de uma rede de alta velocidade Cada n executa o mesmo SO Hardware subjacente homogneo Usado para processamento paralelo nico programaexecutado em vrias mquinas 45 46. Tipos de SDsEx: Cluster Beowulf N mestre (middleware) Aloca ns de computao a um determinadoprograma paralelo, mantm uma fila de jobs egerencia o cluster N de computao SO padro 46 47. Tipos de SDs Sistemas de computao em grade (grids) SDs montados como federao de computadores, naqual cada sistema pode cair sob um sistemaadministrativo diferente, e pode ser muito diferente noque tange a hardware, software e tecnologia empregada Apresentam alto grau de heterogeneidade Software usado para permitir acesso a recursos (e.g.muitas vezes clusters) de diferentes organizaesreunidos para permitir a colaborao de um grupo(conceito de organizao virtual) Foco dirigido para a arquitetura 47 48. Tipos de SDsSistemas Distribudos PervasivosDispositivos de computao mveis e embutidos Pequeno porte Alimentao por bateria Ausncia geral de controle humano Exemplos Sistemas domstios Redes de sensores Sistemas eletrnicos para tratamento de sade48