Você está na página 1de 48

SISTEMAS DISTRIBUDOS 2008.

Captulo 1 Introduo

Andr Ribeiro Cardoso - andrec@larces.uece.br 1

Apresentao
Prof. 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 mdia = (P + P + T + S) Seminrios - S Condio para aprovao: mdia >= 7,0 Nota final = (mdia + NEF) / 2 >= 5,0
1 2

/4

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

Objetivos
Apresentar os princpios de funcionamento, conceitos avanados e tecnologias subjacentes dos Sistemas Distribudos Explorar os conhecimentos adquiridos atravs de Trabalhos Prticos e Seminrios Avanados

Cronograma (60horas)
Dezembro/2008 02, 04, 09, 11, 16, 18, 23 -------------------- 2009 -------------------Janeiro 06, 08, 13, 15, 20, 22, 27, 29 Fevereiro 03, 05, 10, 12, 17, 19, 26 Maro 03, 05, 10, 12, 17, 24, 26, 31 Abril 02, 07, 14, 16, 20

Sumrio
Definio
Metas Tipos de Sistemas Distribudos

Definio
Um sistema distribudo (SD) um conjunto de computadores independentes que se apresenta a seus usurios como um sistema nico e coerente (Tanenbaum) Um sistema em que componentes de hardware e software localizados em computadores em rede se comunicam e coordenam suas aes por passagem de mensagens (Coulouris et al.) Implica em: concorrncia, ausncia de relgio global e falhas isoladas e independentes Motivao: compartilhamento de recursos
7

Definio
Sistemas Distribudos
Voc que tem um quando a falha de um computador do qual voc nunca ouviu falar impede que voc faa qualquer trabalho

Definio

Arquitetura geral de um SD

Middleware: camada de software que se estende por vrias mquinas e oculta das aplicaes as diferenas em hardware e sistemas operacionais
9

Sumrio
Definio

Metas
Tipos de Sistemas Distribudos

10

Metas
Acesso a recursos
Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana

11

Metas
Acesso/compartilhamento de recursos
Considerada PRINCIPAL META Tipos 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

Metas
Acesso a recursos Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana

Transparncia da distribuio

13

Metas
Transparncia da distribuio
Oculta o fato de recursos estarem distribudos Um SD se apresenta a usurios e aplicaes como um sistema nico (TRANSPARENTE) Tipos de transparncias Acesso, Localizao, Migrao, Relocao, Replicao, Concorrncia e Falha

14

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 arquivos so manipulados O nome do recurso deve ser independente de sua localizao fsica (sist. nomeao tem papel importante) Nomes lgicos (URL): usurio acessa recursos da independente de onde ele est
15

Localizao

Metas
Transparncia da distribuio (cont.) Migrao
Objetos 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

Metas
Transparncia da distribuio (cont.) Relocao
Oculta que um recurso (notebook) possa ser movido para outra localizao durante o uso Quando um usurio mvel? Um notebook se movimentando dentro da mesma rea de cobertura (no mvel) Um automvel passando por vrias redes de acesso sem fio, com conexo ininterrupta (mvel) Um notebook numa lanchonete sem necessidade de conectividade durante trajetria (mvel)
17

Metas
Transparncia da distribuio (cont.) Replicao
Permite que vrias instncias de recursos sejam usadas para aumentar a confiabilidade e o desempenho Deve Mascarar o conhecimento das rplicas por parte dos usurios ou dos programadores de aplicativos

18

Metas
Transparncia da distribuio (cont.) Concorrncia
Coordenar 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

Metas
Transparncia da distribuio (sumrio)

20

Metas
Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana
21

Abertura

Metas
Abertura
SD 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

Metas
Acesso a recursos Transparncia da distribuio Abertura Confiabilidade Flexibilidade Desempenho Heterogeneidade Segurana
23

Escalabilidade

Metas
Escalabilidade De tamanho Entrada de vrios usurios ao sistema Geogrfica Usurios e recursos devem estar longe uns dos outros Administrativa Envolvimento de vrias organizaes administrativas
24

Metas
Escalabilidade/Problemas (tamanho)

25

Metas
Escalabilidade/Problemas (geogrfica)

26

Metas
Escalabilidade/Problemas (administrativa)

27

Metas
Escalabilidade/Tcnicas Ocultar latncias (geogrfica) Idia: evitar o tempo de resposta a req. remotas Comunicao assncrona: execuo de outros trabalhos Distribuio Idia: dividir um componente em partes e espalhar pelo sistema Ex: DNS e Web Replicao / Cache Idia: replicar recursos para aumentar disponibilidade 28

Metas
Escalabilidade/Tcnicas
Ocultar latncias: Aplicaes interativas no usam comunicao assncrona Soluo: uso de formulrios

Diferena entre deixar um servidor ou um cliente verificar formulrios


29

Metas
Escalabilidade/Tcnicas Distribuio

Diviso do espao de nomes do DNS em zonas


30

Metas
Escalabilidade/Tcnicas
Replicao/Cache (*)

Replicao: deciso do proprietrio Cache: deciso do cliente (*) Problema de consistncia de dados

31

Metas
Acesso a recursos Transparncia da distribuio Escalabilidade Flexibilidade Desempenho Heterogeneidade Segurana

Confiabilidade

32

Metas
Confiabilidade
Tolerar 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

Metas
Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Desempenho Heterogeneidade Segurana

Flexibilidade

34

Metas
Flexibilidade
Capacidade de modificao e incluso Correo/manuteno do sistema sem interrupo do servio Incluso de novas funcionalidades e recursos (integrao de componentes)

35

Metas
Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Heterogeneidade Segurana

Desempenho

36

Metas
Desempenho
Objetivo: 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 e sincronizao Explorar uso de paralelismo de alta granularidade (threads, concorrncia etc.)

37

Metas
Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Segurana

Heterogeneidade

38

Metas
Heterogeneidade
Objetivo: 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 de dados (XDR, XML etc.) Camadas de adaptao (Middleware)

39

Metas
Acesso a recursos Transparncia da distribuio Escalabilidade Confiabilidade Flexibilidade Desempenho Heterogeneidade

Segurana
40

Metas
Segurana
Objetivo: 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

Sumrio
Definio Metas

Tipos de Sistemas Distribudos

42

Tipos de SDs
Sistemas de Computao Distribudos
Sistemas de Informao Distribudos Sistemas Embutidos Distribudos

43

Tipos de SDs
Sistemas de Computao Distribudos
Sistemas de computao de clusters Sistemas de computao em grade (grids)

44

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 programa executado em vrias mquinas

45

Tipos de SDs

Ex: Cluster Beowulf N mestre (middleware) Aloca ns de computao a um determinado programa paralelo, mantm uma fila de jobs e gerencia o cluster N de computao 46 SO padro

Tipos de SDs
Sistemas de computao em grade (grids)
SDs montados como federao de computadores, na qual cada sistema pode cair sob um sistema administrativo diferente, e pode ser muito diferente no que 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 organizaes reunidos para permitir a colaborao de um grupo (conceito de organizao virtual) Foco dirigido para a arquitetura
47

Tipos de SDs
Sistemas Distribudos Pervasivos
Dispositivos 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 sade
48

Você também pode gostar