52
UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações -1- Copyright Cesar Augusto Tacla 2008

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 1 -

Copyright Cesar Augusto Tacla 2008

Page 2: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 2 -

Copyright Cesar Augusto Tacla 2008

Page 3: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 3 -

Copyright Cesar Augusto Tacla 2008

Page 4: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Segundo (Garg, 2004), são sistemas compostos por múltiplos processadores conectados por uma rede de comunicação, sendo a rede de comunicação uma LAN (Ethernet) ou WAN (Internet).

- 4 -

Copyright Cesar Augusto Tacla 2008

Page 5: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Segundo (Tanenbaum & Steen, 2002), sistema distribuído é uma coleção de computadores independentes percebidos pelos usuários como se fosse um computador único, ou seja, o usuário vê o sistema como composto por um único computador que resolve um dado problema ou provê um serviço quando, na realidade, a resolução do problema é realizado ou o serviço é executado por vários computadores. Esta definição faz referência a um conceito importante em sistemas distribuídos, o da transparência.

- 5 -

Copyright Cesar Augusto Tacla 2008

Page 6: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Computadores podem estar separados por qualquer distância: na mesma sala, cidade, país ou em continentes diferentes.

- 6 -

Copyright Cesar Augusto Tacla 2008

Page 7: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 7 -

Copyright Cesar Augusto Tacla 2008

Page 8: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

A Web pode ser considerado um sistema distribuído, pois quando um usuário navega na Internet solicita páginas de vários servidores de forma relativamente transparente em relação à localização dos arquivos (páginas). Apesar de teclar URLs no browser ou clicar sobre links em páginas HTML, o usuário não fornece o endereço IP e porta dos servidores. Ao invés disso, utiliza o serviço do DNS de resolução de nomes. Os servidores proxy também fazem parte deste enorme sistema, provendo acesso às páginas armazenadas em cache. Não se pode esquecer dos roteadores, que fazem os pacotes trafegarem pela rede utilizando

Ressaltar o conceito de transparência de localização (utilizar URLs ao invés de endereços IPs.

- 8 -

Copyright Cesar Augusto Tacla 2008

fazem os pacotes trafegarem pela rede utilizando bases de dados distribuídas sobre os links.

Do ponto de vista do usuário, quais são os serviços oferecidos por este sistema distribuído:

-Acesso remoto a páginas (arquivos);

-Transferência de arquivos;

-Envio/recepção de emails.

É um sistema aberto, pode ser estendido pela adição de novos servidores e novos tipos de serviços. Por exemplo, serviços de streams tem-se difundido na Web (vídeo, áudio, enfim, multimídia). A animação mostra que do ponto de vista do usuário, o “hardware da rede” é transparente, ele enxerga serviços!

Page 9: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 9 -

Copyright Cesar Augusto Tacla 2008

Page 10: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Neste exemplo ressaltar que objetos

compartilhados podem sofrer acessos

concorrentes (ex. uma conta

corrente) por diferentes transações.

Transparência de localização, o

usuário do sistema não precisa saber

se os dados de sua conta estão

armazenados em Curitiba ou em outra

cidade.

Confiável: não deixa os objetos em

estados inconsistentes.

Bases de dados replicadas:

aumentam a tolerância a falhas, mas

podem tornar o sistema não confiável!

- 10 -

Copyright Cesar Augusto Tacla 2008

Page 11: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 11 -

Copyright Cesar Augusto Tacla 2008

Page 12: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 12 -

Copyright Cesar Augusto Tacla 2008

Page 13: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 13 -

Copyright Cesar Augusto Tacla 2008

Page 14: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Napster é um sistema peer-to-peer (não-puro) onde usuários podem compartilhar arquivos de música sem passar pelo servidor, exceto no momento de buscar os arquivos desejados. A arquitetura do Napster é híbrida, pois tem aspectos de cliente-servidor (anúncio e descoberta) e peer-to-peer (transferência de arquivo).

- 14 -

Copyright Cesar Augusto Tacla 2008

Page 15: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 15 -

Copyright Cesar Augusto Tacla 2008

Page 16: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 16 -

Copyright Cesar Augusto Tacla 2008

Page 17: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 17 -

Copyright Cesar Augusto Tacla 2008

Page 18: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

O cluster da universidade de Purdue serve aos alunos de graduação contrariamente a maioria dos outros que são preferencialmente montados para pesquisas.

Programação utilizando MPI (Message PassingInterface)

O modelo de Message Passing é um conjunto de processos que possuem acesso à memória local. As informações são enviadas da memória local do processo para a memória local do processo remoto. [http://www.fisiocomp.ufjf.br/seminarios/Introducao

- 18 -

Copyright Cesar Augusto Tacla 2008

[http://www.fisiocomp.ufjf.br/seminarios/IntroducaoMPI.pdf]

Open MPI

http://www.open-mpi.org/

Page 19: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

1 billion computing core-hours for researchers to

tackle huge scientific challenges

4/07/2011 03:24:00 PM

Computing is an invaluable resource for advancement of scientific breakthroughs. Today we’re announcing an academic research grant program called Google Exacycle for Visiting Faculty, which provides 1 billion hours of computational core capacity to researchers. That’s orders of magnitude larger than the computational resources most scientists normally have access to.

- 19 -

Copyright Cesar Augusto Tacla 2008

access to.

This program is focused on large-scale, batch computations in research areas such as biomedicine, energy, weather and climate, earth sciences and astronomy. For example, scientists could use massive amounts of computation to simulate how pharmaceuticals interact with proteins in the human body to develop new medicines. Other uses could include simulations to predict weather patterns and analysis of telescope images to understand how the universe changes over time.

Exacycle for Visiting Faculty is part of our University Relations team’s larger efforts to stimulate advances in science and engineering research. If you're a full-time faculty member, we encourage you to apply by May 31, 2011.

In the future, we think this service could also be useful for businesses in various industries, like biotech, financial services, manufacturing and energy. If your business can benefit from hundreds of millions of core-hours to solve complex technical challenges and you want to discuss potential applications, please contact us.

Posted by Alfred Spector, VP of Research and Special Initiatives

Page 20: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 20 -

Copyright Cesar Augusto Tacla 2008

Page 21: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Um grid oferece a possibilidade de utilizar padrões e protocolos abertos para compartilhar dados, capacidade de processamento, armazenamento e outros recursos computacionais disponíveis na rede. Um grid é um tipo de sistema distribuído que permite compartilhar, selecionar e agregar recursos distribuídos em diversos domínios administrativos com base na disponibilidade dos recursos, capacidade, desempenho, custo e QoS (Quality of Service) necessário ao usuário final.

- 21 -

Copyright Cesar Augusto Tacla 2008

Fonte: IBM Solutions Grid for Business Partners: Helping IBM Business Partners to Grid-enable applications for the next phase of e-business on demand

Page 22: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

É bastante utilizada em tarefas complexas que podem ser decompostas em subtarefas cujos resultados parciais podem ser obtidos de forma independente e, posteriormente, coletados para compor o resultado final.

- 22 -

Copyright Cesar Augusto Tacla 2008

Page 23: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Um grid permite utilizar os recursos computacionais (ex. memória, processador) das máquinas conectadas à Internet quando estão ociosas. São exemplos de projetos que utilizam o conceito de grid:

World Community Grid

Projeto Human Proteome Folding: identificar proteínas produzidas por genes humanos. Com esta informação, é possível entender como os defeitos das proteínas podem causar doenças tornando mais fácil encontrar curas. Em 2003, com este grid, em menos de três

- 23 -

Copyright Cesar Augusto Tacla 2008

curas. Em 2003, com este grid, em menos de três meses, cientistas identificaram 44 tratamentos potenciais para a cura da varíola. Sem o grid, o trabalho levaria mais de um ano.

BOINC

Berkeley Open Infrastructure for Network Computing

(BOINC).

Infra-estrutura aberta para computação em rede.

Page 24: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 24 -

Copyright Cesar Augusto Tacla 2008

Page 25: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 25 -

Copyright Cesar Augusto Tacla 2008

Page 26: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 26 -

Copyright Cesar Augusto Tacla 2008

Page 27: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 27 -

Copyright Cesar Augusto Tacla 2008

Page 28: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 28 -

Copyright Cesar Augusto Tacla 2008

Page 29: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 29 -

Copyright Cesar Augusto Tacla 2008

Page 30: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 30 -

Copyright Cesar Augusto Tacla 2008

Page 31: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Os tipos de aplicação possíveis para sistemas distribuídos variam da resolução distribuída aos sistemas heterogêneos à sistemas multi-agentes. Nos primeiros, o desenvolvedor projeta exatamente como será a distribuição dos processos entre as máquinas e que parte do problema cada processo resolverá. No segundo, sistemas multi-agentes, são sistemas abertos e heterogêneos onde vários desenvolvedores desenvolvem agentes, softwares dotados de um certo grau de inteligência e, principalmente, de interação com outros agentes, capazes de interagirem e produzirem algum resultado útil ao usuário embora não

- 31 -

Copyright Cesar Augusto Tacla 2008

produzirem algum resultado útil ao usuário embora não tenha sido concebidos inicialmente com aquele objetivo específico.As definições seguintes foram extraídas de http://www.pcs.usp.br/~jaime/papers/marietto_iberamia02_p.pdf:

Resolução Distribuída de Problemas

A RDP tem como base o problema que é modelado através de uma abordagem descendente (top-down). A solução do problema é previamente estruturada, e os agentes são desenvolvidos para atuarem conforme o esquema proposto para a solução. Isto significa dizer que grande parte do raciocínio sobre a solução é inserido no sistema pelo

projetista, levando ao desenvolvimento de controles geralmente hierárquicos e centralizados.

Page 32: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

O slide ilustra uma decomposição de tarefa de renderização entre três processos. Os resultados parciais são coletados por um processo central que remonta a imagem. Fonte da imagem: http://www.lightwavers.net/albums/mylw3d/04_G.jpg

- 32 -

Copyright Cesar Augusto Tacla 2008

Page 33: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

No documento fonte, a universidade de Purdue tem um grid para calcular renderização. Tipicamente uma renderização para um filme de 2 minutos utilizando o software Renderman da Pixar(provavelmente numa máquina desktop) leva 7200 minutos. Num DRE (Distributed Render Environment) isto leva 36 minutos.

- 33 -

Copyright Cesar Augusto Tacla 2008

Page 34: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 34 -

Copyright Cesar Augusto Tacla 2008

Page 35: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Este paper (o da fonte) dá uma idéia geral sobre a área de Inteligência Artificial distribuída e suas áreas de aplicação, tal como, simulação para análises de sociedades artificiais

- 35 -

Copyright Cesar Augusto Tacla 2008

Page 36: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Há uma série de serviços disponíveis na Web oferecidos de forma isolada. É possível integrar estes serviços num nível mais abstrato, do ponto de vista do cliente. Abordagens SOA (Service Oriented Architecture) utilizam o mesmo princípio, o da integração de serviços.

- 36 -

Copyright Cesar Augusto Tacla 2008

Page 37: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

P2P é inspirado na igualdade entre os participantes

SMA tem inspiração (ao menos uma parte deles) em modelos sociológicos e cognitivos.

- 37 -

Copyright Cesar Augusto Tacla 2008

Page 38: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Sovereign computing is peer-to-peer social networking taken to extremes. It is the freedom to share information and hardware resources with your friends any way you please. Sovereign applications are open source, peer-to-peer, social network applications (Fonte: http://sneer.me/project.html).

- 38 -

Copyright Cesar Augusto Tacla 2008

Page 39: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 39 -

Copyright Cesar Augusto Tacla 2008

Page 40: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

•Desempenho: uma coleção de computadores frequentemente é capaz de produzir melhor que um computador centralizado.

•Distribuição natural: algumas aplicações são naturalmente distribuídas e, portanto, a arquitetura de um sistema distribuído se adapta perfeitamente. Por exemplo, aplicações bancárias, CSCW, videoconferência, etc.

•Robustez: se uma das máquinas ou um link de um SD cai, o sistema ainda pode sobreviver?

•Escalabilidade: um sistema distribuído pode ser

- 40 -

Copyright Cesar Augusto Tacla 2008

•Escalabilidade: um sistema distribuído pode ser aumentado de forma incremental através da inclusão de novos servidores e clientes sem perda significativa de desempenho introduzida pelo controle e comunicação extras.

•Compartilhar recursos: alguns recursos caros podem ser compartilhados (ex. impressora cara), dados também podem ser compartilhados (dados bancários, dados de reserva de bilhetes aéreos).

•Comunicação entre humanos torna-se mais fácil.

Page 41: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Um sistema distribuído deve tratar todos os aspectos mencionados nesta transparência.

- 41 -

Copyright Cesar Augusto Tacla 2008

Page 42: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 42 -

Copyright Cesar Augusto Tacla 2008

Page 43: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Aspectos importantes num sistema distribuído bancário:

•Acessos múltiplos (concorrentes) à mesma conta: vários usuários acessam a mesma conta ou um programa do próprio banco (ex. emissão de relatórios) acessa ao mesmo tempo em que usuários realizam transações.

•Transações bancárias podem envolver contas armazenadas em diferentes bancos ou localidades.

•O serviço deve ser transparente ao usuário – não interessa se os dados de sua conta estão armazenados no banco 1 ou banco 2, a aplicação não deve em nenhum momento deixar transparecer aspectos internos do sistema

•O serviço deve ser confiável e seguro

•Bases de dados replicadas devem ser consistentes

- 43 -

Copyright Cesar Augusto Tacla 2008

•Tolerância a falhas

Page 44: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

A camada de middleware esconde as diferenças das camadas inferiores de rede, sistema operacional e hardware. A maior parte dos middlewares são implementados sobre a camada dos protocolos Internet que, por sua vez, mascaram as diferenças das redes. Todos os middlewares lidam com as diferenças existentes nos sistemas operacionais e no hardware. Além de resolver os problemas de heterogeneidade, o middleware define um modelo computacional uniforme para a programação de aplicações distribuídas. São exemplos de modelos: invocação remota de objetos (RMI), notificação remota de eventos, acesso SQL

- 44 -

Copyright Cesar Augusto Tacla 2008

(RMI), notificação remota de eventos, acesso SQL remoto e processamento de transações distribuídas. Por exemplo, CORBA permite que um objeto chame um método de outro objeto remoto escondendo os detalhes ao programador: o fato de que a chamada é transformada numa mensagem, enviada ao receptor que devolve uma resposta passando pela rede.

Page 45: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

OMG: object management group http://www.omg.org/

IETF: Internet Engineering Task Force www.ietf.org

- 45 -

Copyright Cesar Augusto Tacla 2008

Page 46: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Os dois primeiros problemas tem soluções baseadas em criptografia. Existem medidas contra os problemas que persistem, mas não são completamente tratáveis até o momento (Coulouris et al. 2003).

- 46 -

Copyright Cesar Augusto Tacla 2008

Page 47: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

- 47 -

Copyright Cesar Augusto Tacla 2008

Page 48: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Falhas parciais significam que um componente do sistema falha enquanto os outros funcionam normalmente. Entretanto cada componente deve estar ciente que outros componentes podem falhar e como podem falhar para poder detectar e tratar estas falhas.

- 48 -

Copyright Cesar Augusto Tacla 2008

Page 49: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Nem sempre é adequado esconder as falhas, as vezes é mais produtivo mostrá-las

- 49 -

Copyright Cesar Augusto Tacla 2008

Page 50: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Os tipos de transparência mais importantes são de acesso e localização. Um exemplo de falta de transparência de acesso seria um sistema que permitisse acessar arquivos locais através de uma interface gráfica e arquivos remotos somente através de ftp textual.

URLs são transparentes quanto a localização – utilizam o nome do domínio e não o endereço IP. Porém, não são transparentes quanto a mobilidade, pois não podemos mudar uma página de um domínio a outro

- 50 -

Copyright Cesar Augusto Tacla 2008

podemos mudar uma página de um domínio a outro porque links de outras páginas ainda apontariam para a localização antiga.

Replicação pode ser utilizada para fins de aumento de desempenho ou aumento da disponibilidade do sistema.

Page 51: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Exemplo de transparência de falhas: envio de email, o servidor de envio tenta durante vários dias enviar o email sem que o emissor saiba. Quando não consegue enviar, retorna o email.

Exemplo de transparência de mobilidade: quando uma pessoa telefona (celular) para outra, esta última fora da sua base, o emissor da chamada desconhece a localização do receptor.

- 51 -

Copyright Cesar Augusto Tacla 2008

Há outros tipos de transparências que dizem respeito à transparência de falhas, desempenho e escala:

Falhas: permite aos usuários e programas completarem suas tarefas apesar de falhas no hardware ou software

Desempenho: o sistema pode ser reconfigurado para melhorar seu desempenho sem afetar a operação normal do mesmo.

Escala: o sistema pode aumentar sem mudar a estrutura do sistema ou os programas das aplicações.

Page 52: UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Taclatacla/EspSD/Aula1/0010... · 2012-09-13 · UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla Anotações 1

UTFPR - Sistemas Distribuídos – Prof. Cesar Augusto Tacla

Anotações

Sistemas distribuídos são úteis para...

- 52 -

Copyright Cesar Augusto Tacla 2008