Escolar Documentos
Profissional Documentos
Cultura Documentos
Agenda
Histrico
Histria
1945-1955
Histria
1955-1965 - Processamento Batch
Tarefas eram enfileiradas Programador tinha que reservar hora para usar o computador
Histria
1965-1980 - Timesharing
Histria
1980s
Microprocessadores com alto poder computacional Redes Locais de maior velocidade O protocolo TCP/IP torna-se um padro de facto
1990s 2000s
Disponibilidade e facilidade de comunicao
Menor tempo de obteno da resposta de programas
Internet
Servios Distribudos
11/8/2009
Definies
Um sistema distribudo algo que no deixa voc trabalhar por causa da falha de uma mquina da qual nunca se ouviu falar (Leslie Lamport) Um sistema distribudo uma coleo de computadores independentes que aparecem para os usurios do sistema como um nico computador (Tanenbaum, 1995) computador
Um sistema distribudo algo no qual componentes localizados em uma rede de computadores comunicam-se e coordenam suas aes atravs de troca de mensagens (Couloris, 2005) Um sistema distribudo um sistema composto de vrios computadores interconectados atravs de uma rede e que hospedam processos que usam um conjunto comum de regras (protocolos distribudos) para ajudar a execuo coerente de suas atividades. (Verssimo, 2000)
Definies
Conjunto de computadores independentes interconectadas atravs de um subsistema de comunicao interagindo para prover um servio de forma cooperativa
Comunicao atravs de troca de mensagens Necessidade de infra-estrutura de comunicao. Ausncia de relgio global Viso independente dos eventos Estado compartilhado
(Estado = trnsito de mensagens + valores das variveis)
Definies
Lembrando Leslie Lamport...
Voc sabe que est num Sistema Distribudo quando impedido de prosseguir com seu trabalho devido a FALHA de outro computador que voc nunca ouviu falar...
Definies
1.1
etc.
Retirado de: Tanenbaum, A. Distributed Operating Systems
persistncia
11/8/2009
Definies
Extenso dos sistemas de redes onde a interao inclui:
comunicao e cooperao/colaborao.
Motivao
Compartilhamento de recursos Barateamento da plataforma de Hardware
Maior poder de processamento Melhor relao custo x desempenho
Cooperao
Todos por todos. Cada um com a sua tarefa.
Colaborao
Todos por um. Todos com a mesma finalidade
Heterogeneidade
Aplica-se a:
Redes Hardware de computador Sistemas Operacionais Linguagens de programao Implementaes por diferentes programadores
Solues:
Middleware Mquinas virtuais (ex: Applets Java)
Abertura
Determina se o sistema pode ser estendido ou reimplementado de diversas maneiras. Como alcanar:
Publicao de interfaces Documentao e especificao Cdigo aberto (Open-source)
Escalabilidade
Suporta o aumento dos recursos e usurios mantendo um desempenho satisfatrio. Desafios:
Controlar o custo dos recursos fsicos Controlar a perda de performance (quantidade) Prevenir esgotamento de recursos (ex: IP) Evitar gargalos de performance (centralizao)
Exemplos:
RFCs Repositrio
11/8/2009
Segurana
Caractersticas
Confidencialidade Integridade Disponibilidade
Tratamento de falhas
Tipos de falhas
Fsica, software e humana
Tcnicas:
Deteco de falhas Ocultao de falhas Tolerncia a falhas (replicao) Recuperao de falhas
Desafios
Negao de Servio (DOS) Cdigo Mvel ...
Concorrncia
Permitir que recursos compartilhados sejam utilizados por diversos processos Questes:
Sincronizao Disponibilidade Segurana
Transparncia
Transparncia de acesso: recursos locais e remotos so acessados pelas mesmas operaes. Transparncia de localizao: recursos so acessados sem que sua localizao seja determinada. Transparncia de concorrncia: processos executam concorrentemente, utilizando recursos compartilhados, sem interferirem na execuo dos outros. Transparncia de replicao: mltiplas cpias de um recurso para aumentar a performance e disponibilidade dos seus servios, sem o conhecimento das rplicas por usurios e programadores.
Transparncia
Transparncia a falhas: ocultar e tratar as falhas, hardware ou software, permitindo que as aplicaes ou usurios completem suas tarefas Transparncia de mobilidade: movimento de recursos ou clientes dentro do sistema no podem afetar a operao dos usurios ou programas. Transparncia de performance: sistema deve permitir ser reconfigurado para melhorar a performance conforme a variao de carga. Transparncia de escala: as aplicaes e o sistema devem permitir serem expandidas, sem modificar a estrutura ou algoritmos.
11/8/2009
Aspectos de Projetos
Sistemas Distribudos
Propriedades
Safety (Integridade):
determinada propriedade ruimnunca ocorre
Requisitos so Conflitantes
... Transparncia Abertura (Openness) Escalabilidade
Liveness (Validade):
determinada propriedade boa acontecer
(Lamport, 1977)
Propriedades
safety: dois semforos nunca estaro verde ao mesmo tempo liveness: um carro esperando na luz vermelha, receber luz verde no futuro
WEB
11/8/2009
Outros Exemplos
Aplicaes Comerciais
Sistemas de reserva e venda de passagens areas Complexidade Sistemas de caixas eletrnicos de bancos Transporte Roteamento e distribuio
Outros Exemplos
Software bsico para implementaes do UNIX distribudo:
NFS - Network File System Sun Microsystems RPC - Remote Procedure Call
Aplicaes WEB
Correio eletrnico Servios bancrios e comrcio eletrnico
Comparao
O que no Sistema Distribudo?
Sistemas Distribudos X Sistemas Centralizados
11/8/2009
Facilidades de comunicao
Correio eletrnico, grupos de trabalho
Crescimento incremental
Riscos e Custos Planejamento de Capacidade
Infraestrutura de comunicao
Vulnerabilidade das redes Erros, falhas, etc. Sobrecarga, performance, etc.
Mecanismos de tolerncia a falhas Poltica de segurana Mtodos de localizao e resoluo de nomes Transparncia, eficincia Coordenao do compartilhamento de recursos Manuteno de consistncia e integridade de objetos replicados
42
PERGUNTAS E RESPOSTAS
Leitura Complementar
Couloris, G; Dollimore, J; Kindberg, T. Sistemas Distribudos: Conceitos e Projetos (4 edio)
Captulo 1
11/8/2009
PARA REFLETIR...
Referncias
Couloris, G; Dollimore, J; Kindberg, T. Sistemas Distribudos: Conceitos e Projetos (4 edio) Tanenbaum, A. S.; STEEN, M. V. Sistemas Distribudos Princpios e Paradigmas (2 edio) Notas de aulas da Especializao Avanada em Sistemas Distribudos LASID/UFBA, ministradas pelo Prof. Raimundo Macdo e Prof Alrio S