28
Questões Questões Resolvidas - Resolvidas - A.C.-10/08/05 A.C.-10/08/05

Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Embed Size (px)

Citation preview

Page 1: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Questões Resolvidas - Questões Resolvidas - A.C.-10/08/05A.C.-10/08/05

Page 2: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

QuestõesQuestões

Defina com sua palavras, o que é sistemas Defina com sua palavras, o que é sistemas Distribuídos?Distribuídos?

Cite explique os dois modelos mais usados em Cite explique os dois modelos mais usados em sistemas distribuídos?sistemas distribuídos?

Cite algumas vantagens e desvantagens do Cite algumas vantagens e desvantagens do sistemas distribuídos.sistemas distribuídos.

Com base no projeto “Artes gráfica Renato” Com base no projeto “Artes gráfica Renato” indique um modelo. Justifique a sua indicação.indique um modelo. Justifique a sua indicação.

Page 3: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

RESPOSTA 1RESPOSTA 1

Page 4: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

O que éO que é

Um Um Sistema DistribuídoSistema Distribuído definido por definido por TanenbaumTanenbaum é é uma uma coleção de computadores independentes que se coleção de computadores independentes que se apresenta ao usuário como um sistema único e apresenta ao usuário como um sistema único e consistenteconsistente; outra definição, de ; outra definição, de Coulouris,Coulouris, seria uma seria uma coleção de computadores autônomos interligados coleção de computadores autônomos interligados através de uma rede de computadores e equipados através de uma rede de computadores e equipados com software que permita o compartilhamento dos com software que permita o compartilhamento dos recursos do sistema: hardware, software e dadosrecursos do sistema: hardware, software e dados..

Page 5: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

RESPOSTA 2RESPOSTA 2

Page 6: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Modelo de Cliente ServidorModelo de Cliente Servidor

Cliente/ServidorCliente/Servidor O O clientecliente manda um pedido para o manda um pedido para o servidorservidor e o e o

servidorservidor o retorna. o retorna. Peer-to-peer (P2P)Peer-to-peer (P2P)

O O banco de dadosbanco de dados manda um pedido para o manda um pedido para o gerenciadorgerenciador, o , o gerenciadorgerenciador retorna para o retorna para o banco banco de dadosde dados e pede confirmação, e o e pede confirmação, e o banco de dadosbanco de dados retorna para o retorna para o gerenciadorgerenciador..

Page 7: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

P 2 PP 2 P P2PP2P ou ou Peer-to-PeerPeer-to-Peer é uma tecnologia que possibilita a é uma tecnologia que possibilita a

distribuição de arquivos em rede e que tem como característica distribuição de arquivos em rede e que tem como característica permitir o acesso de qualquer usuário dessa rede a um nó, ou a permitir o acesso de qualquer usuário dessa rede a um nó, ou a outro usuário (peer) de forma direta, possibilitando a partilha outro usuário (peer) de forma direta, possibilitando a partilha entre os usuários de ciclos de processamento das máquinas, entre os usuários de ciclos de processamento das máquinas, banda de rede, espaço de armazenamento entre outros recursos banda de rede, espaço de armazenamento entre outros recursos que em outros sistemas acabavam sendo desperdiçados. que em outros sistemas acabavam sendo desperdiçados. Basicamente pode-se dizer que cada computador é cliente e Basicamente pode-se dizer que cada computador é cliente e servidor ao mesmo tempo.servidor ao mesmo tempo.

Page 8: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

P 2 P...P 2 P...

O conceito de peer-to-peer disseminou-se pelo O conceito de peer-to-peer disseminou-se pelo mundo inteiro, devido ao surgimento, na internet, de mundo inteiro, devido ao surgimento, na internet, de sistemas de gestão de redes descentralizadas, que sistemas de gestão de redes descentralizadas, que permitem aos utilizadores partilhar arquivos de forma permitem aos utilizadores partilhar arquivos de forma direta, sem necessitarem de se ligar a um servidor direta, sem necessitarem de se ligar a um servidor central. O mais conhecido desses sistemas, o Napster, central. O mais conhecido desses sistemas, o Napster, especializado na partilha de música, tornou-se especializado na partilha de música, tornou-se mundialmente célebre devido a ser alvo de ataque mundialmente célebre devido a ser alvo de ataque jurídico por parte das companhias discográficas.jurídico por parte das companhias discográficas.

Um dos tipos de arquivos mais frequentemente Um dos tipos de arquivos mais frequentemente compartilhado nas redes P2P é o mp3compartilhado nas redes P2P é o mp3

Page 9: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

RESPOSTA 3RESPOSTA 3

Page 10: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Vantagens PotenciaisVantagens Potenciais

Adequação à estrutura das organizaçõesAdequação à estrutura das organizações– – Distribuição física e acesso distribuído Distribuição física e acesso distribuído

a sistemas de informação das organizaçõesa sistemas de informação das organizações Adequação à interação entre pessoasAdequação à interação entre pessoas

– – E-mail, boletins eletrônicosE-mail, boletins eletrônicos– – Suporte para trabalho cooperativoSuporte para trabalho cooperativo

Adequação dos serviços às máquinasAdequação dos serviços às máquinas– – Mainframes para SGBDs, PCs para as Mainframes para SGBDs, PCs para as

aplicações gráficasaplicações gráficas

Page 11: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Vantagens PotenciaisVantagens Potenciais

Partilha de recursosPartilha de recursos

– – Poder computacional, informação, Poder computacional, informação, periféricosperiféricos

Difusão de informação entre pessoasDifusão de informação entre pessoas

– – E-mailE-mail Acesso a serviçosAcesso a serviços

– – E-business E-business

Page 12: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Vantagens PotenciaisVantagens Potenciais

DisponibilidadeDisponibilidade

– – A falha de uma parte pode não perturbar A falha de uma parte pode não perturbar todo o sistematodo o sistema

– – ReplicaçãoReplicação FlexibilidadeFlexibilidade

––Escalabilidade no desenvolvimento de Escalabilidade no desenvolvimento de sistemas com elevado potencialsistemas com elevado potencial

Page 13: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Problemas da DistribuiçãoProblemas da Distribuição Falha independente das componentes do sistemaFalha independente das componentes do sistema

– – Máquinas diretamente envolvidas nas Máquinas diretamente envolvidas nas interaçõesinterações

– – Infra-estrutura de comunicaçãoInfra-estrutura de comunicação Interação via troca de mensagensInteração via troca de mensagens

– – Incapacidade de comunicar com o destinatárioIncapacidade de comunicar com o destinatário– – Perda de mensagens, alteração do seu fluxo Perda de mensagens, alteração do seu fluxo

ou conteúdoou conteúdo– – Latência variávelLatência variável– – Heterogeneidade de representação de dadosHeterogeneidade de representação de dados

Page 14: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Problemas da DistribuiçãoProblemas da Distribuição

SegurançaSegurança– – Acesso não autorizado a recursos remotosAcesso não autorizado a recursos remotos– – Inspeção ou alteração ilegítimas de Inspeção ou alteração ilegítimas de

conteúdos de mensagensconteúdos de mensagens Desenvolvimento de softwareDesenvolvimento de software

– – Concepção de sistemas operativos, Concepção de sistemas operativos, linguagens e aplicações mais apropriadoslinguagens e aplicações mais apropriados

– – Definir o que deve ser feito pelo sistema e o Definir o que deve ser feito pelo sistema e o que deve ser feito pelos utilizadores que deve ser feito pelos utilizadores

Page 15: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

RESPOSTA 4RESPOSTA 4

Page 16: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Modelos para sistemas Modelos para sistemas distribuídosdistribuídos

Page 17: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Modelos para sistemas Modelos para sistemas distribuídosdistribuídos

Como aumentar a nossa intuição para resolver Como aumentar a nossa intuição para resolver problemas?problemas? ExperimentaçãoExperimentação

abordagem prática baseada no acúmulo de informação;abordagem prática baseada no acúmulo de informação; pode ser usada para construir coisas similares a outras já pode ser usada para construir coisas similares a outras já

construídas.construídas.

Modelagem e análiseModelagem e análise abordagem teórica baseada na simplificação do objeto de estudo abordagem teórica baseada na simplificação do objeto de estudo

(“mundo real”);(“mundo real”); seguida de análise - matemática ou lógica - para inferir seguida de análise - matemática ou lógica - para inferir

propriedades.propriedades.

Page 18: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Modelagem x experimentaçãoModelagem x experimentação

modelagem oferece mais “controle” sobre a modelagem oferece mais “controle” sobre a intuição adquirida;intuição adquirida;

modelagem só é útil se o modelo caracteriza o modelagem só é útil se o modelo caracteriza o objeto de estudo de forma apropriada;objeto de estudo de forma apropriada;

experimentação é muito importante para validar experimentação é muito importante para validar modelos.modelos.

Page 19: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

O que é um bom modelo?O que é um bom modelo?

PrecisoPreciso a análise do modelo deve levar a conclusões verdadeiras a análise do modelo deve levar a conclusões verdadeiras

sobre o objeto de estudosobre o objeto de estudo TratávelTratável

um modelo que não permite a execução de uma análise um modelo que não permite a execução de uma análise é inútilé inútil

em um modelo tratável, as regras que governam o em um modelo tratável, as regras que governam o comportamento dos atributos do modelo são comportamento dos atributos do modelo são normalmente definidas através de fórmulas matemáticas normalmente definidas através de fórmulas matemáticas ou lógicas ou lógicas

Page 20: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

SimulaçãoSimulação

Alternativa à experimentaçãoAlternativa à experimentação Mais próximo do sistema real sem a necessidade Mais próximo do sistema real sem a necessidade

de arcar com o custo de construí-lode arcar com o custo de construí-lo Alternativa à modelagemAlternativa à modelagem

Permite analisar situações que não podem ser Permite analisar situações que não podem ser modeladas de forma tratável/representativamodeladas de forma tratável/representativa

Page 21: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Que respostas um bom modelo Que respostas um bom modelo pode dar?pode dar?

ViabilidadeViabilidade Que classes de problemas podem ser resolvidosQue classes de problemas podem ser resolvidos

CustoCusto Para as classes que podem ser resolvidas, quão cara (em Para as classes que podem ser resolvidas, quão cara (em

termos de recursos, tempo de processamento, etc.) uma termos de recursos, tempo de processamento, etc.) uma solução precisa sersolução precisa ser

Ambas as respostas têm valor prático e teóricoAmbas as respostas têm valor prático e teórico

Page 22: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Modelos para sistemas Modelos para sistemas distribuídos: um exemplodistribuídos: um exemplo

O problema da coordenaçãoO problema da coordenação Dois processos, A e B, se comunicam através de troca Dois processos, A e B, se comunicam através de troca

de mensagens. Nenhum processo falha, mas o canal de de mensagens. Nenhum processo falha, mas o canal de comunicação pode perder algumas mensagens. Construa comunicação pode perder algumas mensagens. Construa um protocolo que permita que ou a ação um protocolo que permita que ou a ação ou a ação ou a ação possa ocorrer, mas (i) A e B executam a mesma ação, e possa ocorrer, mas (i) A e B executam a mesma ação, e (ii) nenhum executa ambas as ações.(ii) nenhum executa ambas as ações.

Page 23: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Prova de impossibilidadeProva de impossibilidade A prova é por contradiçãoA prova é por contradição

se existir um tal protocolo deve envolver troca de mensagens se existir um tal protocolo deve envolver troca de mensagens entre A e Bentre A e B

vamos escolher o protocolo que resolve o problema com o vamos escolher o protocolo que resolve o problema com o número mínimo de trocas de mensagens (i.e. não existe um número mínimo de trocas de mensagens (i.e. não existe um protocolo que use menos mensagens) e, sem perda de protocolo que use menos mensagens) e, sem perda de generalidade, assumir que generalidade, assumir que mm, a última mensagem enviada no , a última mensagem enviada no protocolo, foi enviada por Aprotocolo, foi enviada por A

as ações tomadas por A e B não dependem de as ações tomadas por A e B não dependem de mm, portanto , portanto mm é é supérflua e é possível construir um protocolo com uma supérflua e é possível construir um protocolo com uma mensagem a menos; uma contradição! mensagem a menos; uma contradição!

Page 24: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Vamos entender melhor o que Vamos entender melhor o que fizemosfizemos

Nós concluímos que o Problema da Coordenação não Nós concluímos que o Problema da Coordenação não tem solução, construindo um modelo simples e tem solução, construindo um modelo simples e informal, usando duas observações:informal, usando duas observações: todos os protocolos distribuídos entrem os dois processos todos os protocolos distribuídos entrem os dois processos

são equivalentes a uma série de trocas de mensagens; esão equivalentes a uma série de trocas de mensagens; e ações tomadas por um processo dependem apenas da ações tomadas por um processo dependem apenas da

seqüência de mensagens recebidas.seqüência de mensagens recebidas. A partir desse modelo, nossa “intuição” sobre o A partir desse modelo, nossa “intuição” sobre o

problema pode ser refinadaproblema pode ser refinada

Page 25: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Quais são os atributos mais Quais são os atributos mais importantes de um sistema importantes de um sistema

distribuído?distribuído? Atrasos no escalonamento e na transmissão de Atrasos no escalonamento e na transmissão de

mensagensmensagens síncronos x assíncronossíncronos x assíncronos

Semântica de falha dos componentesSemântica de falha dos componentes parada (parada (failstopfailstop), crash, omissão), crash, omissão desempenhodesempenho valorvalor arbitrária (Bizantina)arbitrária (Bizantina)

restrições obtidas através de autenticaçãorestrições obtidas através de autenticação

Page 26: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Sistemas distribuídos assíncronosSistemas distribuídos assíncronos

Nenhuma restrição em relação aos atrasos de Nenhuma restrição em relação aos atrasos de escalonamento e de transmissão de mensagensescalonamento e de transmissão de mensagens

Falhas arbitráriasFalhas arbitrárias Não há como obter acordo, mesmo que só um processo Não há como obter acordo, mesmo que só um processo

falhe e mesmo que a semântica seja falhe e mesmo que a semântica seja crashcrash

Page 27: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Detectores de falhas não confiáveisDetectores de falhas não confiáveis

Uma outra abordagem é definir o sincronismo Uma outra abordagem é definir o sincronismo extra necessário em termos de propriedades extra necessário em termos de propriedades que precisam ser satisfeitasque precisam ser satisfeitas Classes de detectoresClasses de detectores

Abrangência: que falhas são detectadasAbrangência: que falhas são detectadas Exatidão: que erros podem acontecerExatidão: que erros podem acontecer

Sincronismo no tempoSincronismo no tempo Global Stabilization TimeGlobal Stabilization Time

Page 28: Questões Resolvidas - A.C.-10/08/05. Questões Defina com sua palavras, o que é sistemas Distribuídos? Defina com sua palavras, o que é sistemas Distribuídos?

Como escolher um modelo?Como escolher um modelo?

Características do ambiente de execuçãoCaracterísticas do ambiente de execução Tipos dos componentesTipos dos componentes Qualidade dos componentesQualidade dos componentes Controle sobre o ambienteControle sobre o ambiente

Requisitos da aplicaçãoRequisitos da aplicação Aplicações críticasAplicações críticas

Usar uma coleção de modelosUsar uma coleção de modelos Processadores com semântica de falha controladaProcessadores com semântica de falha controlada Canais confiáveisCanais confiáveis