Sistemas Distribuídos: Conceitos e Projeto Resiliência de Processos

Tamanho: px
Começar a partir da página:

Download "Sistemas Distribuídos: Conceitos e Projeto Resiliência de Processos"

Transcrição

1 Sistemas Distribuídos: Conceitos e Projeto Resiliência de Processos Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA 24 de julho de 2013 Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

2 Resiliência Propriedade de um material de recuperar a sua forma ou posição original após sofrer choque ou deformação; elasticidade; Poder de recuperação. Capacidade de superar, de recuperar de adversidades; Capacidade de um ecossistema retornar à condição original de equiĺıbrio após suportar alterações ou perturbações ambientais. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

3 Resiliência de Processos A resiliência de processos preocupa-se em criar mecanismos de proteção a processos, tentando fazer com que os mesmos sobrevivam a eventuais falhas em um sistema; Uma forma de tornar um processo resiliente é a utilização de processos redundantes (redundância física); Um aspecto chave para contornar falhas de processos é organizar vários processos idênticos em um grupo no qual todos os processos recebam todas as mensagens enviadas ao mesmo. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

4 Questões de Projeto: Grupos Simples vs Grupos Hierárquicos Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

5 Questões de Projeto: Grupos Simples vs Grupos Hierárquicos Grupo Simples: Todos os processos são iguais Decisões são tomadas coletivamente Vantagens: Não tem ponto de falha único Mesmo que um processo caia, o grupo continua a oferecer o serviço Desvantagem: Tomada de decisão pode ser complicada, com necessidade de uma votação atraso Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

6 Questões de Projeto: Grupos Simples vs Grupos Hierárquicos Grupo Hierárquico: Existe um processo coordenador, os demais são denominados operários Sempre que uma requisição é gerada, é enviada ao coordenador O coordenador decide qual é o operário mais adequado para executá-la Vantagem: Decisões decididas de forma simples, já que é centralizada Desvantagem: Perda do coordenador provoca parada repentina Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

7 Questões de Projeto: Associação a um Grupo Problemas: Como criar e eliminar grupos? Como permitir que processos se juntem e saiam dos grupos? Abordagens: 1 Servidor de grupos 2 Gerenciamento distribuído Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

8 Servidor de Grupos Todas as requisições são enviadas a este servidor Mantem um banco de dados completo de todos os grupos e seus associados Método direto, eficiente e razoavelmente fácil de implementar Problemas: Se o servidor de grupo cair, o gerenciamento deixa de existir Provavelmente, grupos deverão ser reconstituídos do zero Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

9 Gerenciamento Distribuído Se existe multicast confiável, um processo pode enviar uma mensagem a todos os membros do grupo anunciando que deseja se juntar ao mesmo; Para sair de um grupo, o processo deveria mandar uma mensagem. No entanto, é difícil de prever quedas! Membros tem que descobrir quedas experimentalmente; Os métodos Entrar/Sair de um grupo devem ser síncronos com as mensagens enviadas/recebidas: a partir do momento que um processo se junta ao grupo, ele deve receber todas as mensagens já enviadas. Ao sair, ele não deve mais receber mensagens do grupo e nem este deve receber mensagens dele. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

10 k-tolerância a Falhas Um sistema é k-tolerante a falha se puder sobreviver a falhas em k componentes e ainda assim cumprir suas especificações; Quanta redundância é necessária? 1 Falhas silenciosas : se k pararem sem propagar informações erradas, basta ter k +1 processos 2 Falhas bizantinas: é preciso um mínimo de 2k + 1 processadores para conseguir k-tolerância. Uma precondição impĺıcita relevante é que todas as requisições cheguem a todos os servidores na mesma ordem. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

11 Acordo em Sistemas com Falhas Em muitos casos, um grupo de processos deve chegar a um acordo: eleger um coordenador, decidir a validação de uma transação, etc. Objetivo: Todos os processos que não apresentam falhas devem chegar a um consenso sobre alguma questão, dentro de um número finito de etapas; Premissas diferentes sobre o sistema requerem soluções diferentes: se o atraso de comunicação é limitado ou não; se a entrega de mensagens é ordenada ou não; se a transmissão de mensagens é feita em unicast ou multicast. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

12 Problema dos Dois Exércitos Vamos considerar um caso simples: processos são perfeitos mas a comunicação pode perder mensagens; Um exército vermelho de 5000 homens está acampado em um vale. Dois exércitos azuis de 3000 homens cada estão acampados em colinas próximas; Se o exército azul conseguir coordenar o ataque será bem sucedido. Caso contrário será destruído; General Alexandre envia uma mensagem ao general Bonaparte contendo vamos atacar amanhã ao anoitecer ; O mensageiro entrega a mensagem e recebe uma outra contendo combinado ; Alexandre recebe a confirmação e prepara suas tropas; No dia seguinte, Alexandre percebe que se Bonaparte não tiver certeza que ele recebeu suas mensagem de confirmação poderá não atacar e decide enviar um mensageiro com uma mensagem de confirmação. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

13 Problema dos Dois Exércitos Novamente Bonaparte recebe a mensagem mas agora fica preocupado que se Alexandre não receber uma confirmação poderá não atacar; Esta situação se repetirá continuamente. Mesmo que se estabeleça uma quantidade finita de passos, ainda assim o último que enviar uma confirmação não terá certeza se sua mensagem foi entregue; Conclusão: mesmo que processos não falhem, a concordância entre dois processos é impossível caso a comunicação não seja confiável. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

14 Problema do Acordo Bizantino O exército vermelho continua acampado no vale mas agora existem n generais azuis com exércitos acampados na colinas; A comunicação é feita por telefone aos pares e é instantânea e perfeita; No entanto, m generais são traidores; Definição do problema: como obter consenso entre os componentes de um sistema distribuído que não falham onde componentes podem exibir falhas bizantinas, ou seja, um componente pode enviar valores diferentes a componentes diferentes para o mesmo dado? Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

15 Problema do Acordo Bizantino: Lamport 1982 Premissas: processos síncronos (atrasos de mensagens e diferenças entre a velocidade relativa de processadores são limitados), mensagens unicast, ordenação preservada e o atraso de comunicação limitado; Sistema: N processos, onde cada processo i forneça um valor v i aos demais; Objetivo: Cada processo deve construir um vetor V de comprimento N tal que, se o processo i não for faltoso, V[i] = v i. Caso contrário, V[i] é indefinido. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

16 Passos do Algoritmo Lamport 82 1 Cada general envia uma mensagem a todos os demais generais anunciado suas forças; 2 Os resultados do passo 1 são coletados e mantidos em vetores; 3 Cada general passa seu vetor a todos os demais generais; 4 Cada general decide se existe para cada entrada no vetor maioria. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

17 Problema do Acordo Bizantino: Lamport 1982 Figura: Três generais leais e um traidor (a): generais anunciam suas forças (b): vetores de cada general baseados na informação do passo a (c): o vetor de cada general após o passo 3 Todos os generais concluem que as forças são: (1, 2, não sei, 4); Portanto, o traidor não conseguiu corromper a informação dos generais leais. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

18 Problema do Acordo Bizantino: Lamport 1982 Figura: Mesmo problema para dois generais leais e um traidor Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

19 Problema do Acordo Bizantino: Lamport 1982 Neste caso, o algoritmo falha em produzir concordância; Lamport provou que em um sistema com k processos faltosos, a concordância somente poderá ser atingida caso 2k + 1 processos continuem operando normalmente de um total de 3k + 1 processos; Ou seja, são necessários mais de dois terços de processos operando corretamente; Fischer et al. em 1985 provou que em um sistema distribuído no qual mensagens não podem ser entregues em um tempo conhecido finito, não é possível atingir concordância mesmo que apenas um processo falhe (a não ser que falhem silenciosamente); A essência do problema está em como distinguir se um processo caiu ou está muito lento. Francisco Silva (UFMA/LSD) SD: Princípios e Algoritmos 24 de julho de / 19

Sistemas Distribuídos Capítulo 8 - Aula 13

Sistemas Distribuídos Capítulo 8 - Aula 13 Sistemas Distribuídos Capítulo 8 - Aula 13 Aula de hoje Aula Passada Exclusão Mútua Algoritmos de Eleição Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo 1 Tolerância

Leia mais

Sistemas Distribuídos Capítulo 8 - Aula 14

Sistemas Distribuídos Capítulo 8 - Aula 14 Sistemas Distribuídos Capítulo 8 - Aula 14 Aula Passada Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo Aula de hoje Comunicação Confiável Cliente-Servidor Comunicação

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Resiliência de Processos Comunicação Confiável Cliente-Servidor Capítulo 8 Resiliência de Processos Idéia Básica: Replicar processos em grupos,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Tolerância a faltas Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello 3 de dezembro de 2015

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Comunicação Confiável de Grupo Capítulo 8 Comunicação Confiável de Grupo Camadas de Transporte oferecem comunicação ponto-a-ponto confiável (TCP)

Leia mais

Tolerância a Falhas. Sumário. Acordo Distribuído. December 18, Grupos de Processos

Tolerância a Falhas. Sumário. Acordo Distribuído. December 18, Grupos de Processos Tolerância a Falhas Acordo Distribuído December 18, 2009 Sumário Grupos de Processos Acordo Distribuído Com falha nas comunicações Modelos de Sincronismo Sistemas Assíncronos Sistemas Síncronos Grupos

Leia mais

Sistemas Distribuídos Capítulo 8 - Aula 15

Sistemas Distribuídos Capítulo 8 - Aula 15 Sistemas Distribuídos Capítulo 8 - Aula 15 Aula de hoje Aula Passada Comunicação Confiável Cliente-Servidor Comunicação Confiável de Grupo Comunicação Confiável de Grupo Multicast Atômico Sincronia Virtual

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Recuperação Capítulo 8 Agenda Introdução Pontos de Verificação Registro de Mensagens Introdução Essência: Quando ocorre uma falha no sistema, é

Leia mais

Algoritmos Distribuídos Modelo Computacional

Algoritmos Distribuídos Modelo Computacional Algoritmos Distribuídos Modelo Computacional Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br http://www.dcc.ufmg.br/~loureiro UFMG/ICEx/DCC 1 Modelo Computacional Modelo: Esquema que possibilita

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Comunicação em Grupo Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 10.4 pág. 304-311 2 Comunicação em Grupo Suponha que se deseja um serviço de arquivos único

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Modelo de Interação (Clocks e Eventos) Em SDs é difícil estabelecer limites de tempo sobre o tempo tomado para execução de processos,

Leia mais

(Broadcast - um emissor envia a mensagem para todos os nós do sistema) Multicast um emissor, um grupo de processos como receptores

(Broadcast - um emissor envia a mensagem para todos os nós do sistema) Multicast um emissor, um grupo de processos como receptores Comunicação em Grupo (Broadcast - um emissor envia a mensagem para todos os nós do sistema) Multicast um emissor, um grupo de processos como receptores Exemplos de aplicação: - ferramentas de trabalho

Leia mais

falhas em sistemas distribuídos

falhas em sistemas distribuídos Tolerância a Falhas falhas em sistemas distribuídos Lamport: A distributed system is a system where I can t get any work done if a machine I ve never heard of crashes. sistemas distribuídos e falhas parciais

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Sincronização Slide 7 Nielsen C. Damasceno Introdução Utilizando Sistemas Distribuídos, uma grande dificuldade que temos é como garantir o acesso exclusivo a um recurso compartilhado,

Leia mais

Sistemas Distribuídos Capítulo 6 - Aula 12

Sistemas Distribuídos Capítulo 6 - Aula 12 Sistemas Distribuídos Capítulo 6 - Aula 12 Aula Passada Relógios Lógicos Relógios de Lamport Relógios Vetoriais Aula de hoje Exclusão Mútua Algoritmos de Eleição 1 Exclusão Mútua - Questão fundamental

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência e Replicação Capítulo 7 Agenda Distribuição de Conteúdo Estado versus operações Protocolos de recuperação de atualizações versus protocolos

Leia mais

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Sistemas Distribuídos. Ricardo Ribeiro dos Santos Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Setembro/2003 Tópicos Sincronização em Sistemas Distribuídos Sincronização de Relógio Estados Globais

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência Causal(3) Neste exemplo temos uma sequência de eventos permitida quando o depósito é consistente por causalidade, mas proibida quando

Leia mais

Algoritmos Distribuídos. AD Modelo Computacional 1

Algoritmos Distribuídos. AD Modelo Computacional 1 Algoritmos Distribuídos Modelo Computacional Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br http://www.dcc.ufmg.br/~loureiro AD Modelo Computacional 1 Modelo Computacional Modelo: Esquema que possibilita

Leia mais

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar - Aula 3-1. REVISÃO SOBRE CONCEITOS FUNDAMENTAIS DE SISTEMAS DISTRIBUÍDOS Na segunda parte abordamos o tema tolerância a falhas, assunto este muito relacionado a redes de computadores, mas que nos mostra

Leia mais

Sincronização de Relógios e Relógios Lógicos. Histórico da comunicação. Tempo Global. Mecanismos de ordenação total

Sincronização de Relógios e Relógios Lógicos. Histórico da comunicação. Tempo Global. Mecanismos de ordenação total WTF : Computação mini-curso Distribuída LCMI/DAS/CTC/UFSC canismos de ordenação total Sincronização de Relógios e Relógios Lógicos Prof. Lau Cheuk Lung E-mail: lau.lung@inf.ufsc.br Departamento de Informática

Leia mais

Sistemas Distribuídos Aula 15

Sistemas Distribuídos Aula 15 Sistemas Distribuídos Aula 15 Aula passada Relacionando eventos Relógios lógicos Algoritmo de Lamport Propriedades Aula de hoje Limitação de Lamport Relógio de vetores Propriedades Garantindo ordenação

Leia mais

Arquitectura de Sistemas Paralelos e Distribuídos Comunicação Multicast

Arquitectura de Sistemas Paralelos e Distribuídos Comunicação Multicast Comunicação Multicast MSc. Eugénio Alberto Macumbe Bach. José Tomás Matsimbe A comunicação de uma rede comutada é feita de três formas: unicast, multicast e broadcast: Unicast: Comunicação na qual um quadro

Leia mais

Programação de Sistemas Distribuídos e Concorrência

Programação de Sistemas Distribuídos e Concorrência Programação de Sistemas Distribuídos e Concorrência Aula 4 15/08/09 Prof Carlos Eduardo 1 Descentralizadas Arquiteturas centralizadas são distribuições verticais (componentes logicamente diferentes em

Leia mais

Sincronização em Sistemas Distribuídos

Sincronização em Sistemas Distribuídos Sincronização em Sistemas Distribuídos Universidade Federal do ABC Turma: Ciência da Computação Prof. Dr. Francisco Isidro Massetto Sincronização Como as regiões críticas são implementadas em um SD? Como

Leia mais

Consistência. ncia. Sistemas Distribuídos e Tolerância a Falhas. Trabalho realizado por:

Consistência. ncia. Sistemas Distribuídos e Tolerância a Falhas. Trabalho realizado por: Sistemas Distribuídos e Tolerâ a Falhas Consistê Trabalho realizado por: Gonçalo Dias, Nº. 14638 João Tavares, Nº 14888 Rui Brás, Nº 14820 Consistê Índice Consistent Global States; Distributed Consensus;

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Exclusão Mútua Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 11.2 pág. 325-329 Conteúdo Algoritmo centralizado Algoritmo distribuído (Algoritmo

Leia mais

Sistemas Distribuídos Aula 17

Sistemas Distribuídos Aula 17 Sistemas Distribuídos Aula 17 Aula passada Garantindo ordenação total Relógio de vetores Propriedades Aula de hoje Exclusão mútua Algoritmo centralizado Algoritmo de Lamport Token Ring Exemplo Bancário

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Exclusão Mútua Gustavo Reis gustavo.reis@ifsudestemg.edu.br - Questão fundamental em SDs Concorrência e colaboração entre vários processos Processos vão precisar acessar simultaneamente

Leia mais

Sistemas Distribuídos Aula 16

Sistemas Distribuídos Aula 16 Sistemas Distribuídos Aula 16 Aula passada Relacionando eventos Relógios lógicos Algoritmo de Lamport Propriedades Aula de hoje Limitação de Lamport Relógio de vetores Propriedades Garantindo ordenação

Leia mais

Sistemas Distribuídos: Conceitos e Projeto

Sistemas Distribuídos: Conceitos e Projeto Sistemas Distribuídos: Conceitos e Projeto Relógios Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br 11 de junho

Leia mais

falhas em sistemas distribuídos

falhas em sistemas distribuídos Tolerância a Falhas falhas em sistemas distribuídos Lamport: A distributed system is a system where I can t get any work done if a machine I ve never heard of crashes. sistemas distribuídos e falhas parciais

Leia mais

Roteiro. Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua

Roteiro. Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua Sincronização Roteiro Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua Introdução A comunicação entre processos é importante, mas não é só isso que importa; Uma

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I BARRAMENTO Slide 1 Sumário Introdução Componentes de Computador Funções dos Computadores Estruturas de Interconexão Interconexão de Barramentos Slide 2 Introdução

Leia mais

AULA ANTERIOR: MODELOS FUNDAMENTAIS

AULA ANTERIOR: MODELOS FUNDAMENTAIS AULA ANTERIOR: MODELOS FUNDAMENTAIS Modelos fundamentais de um sistema distribuído Permitem estabelecer quais as premissas existentes a respeito de aspetos chave. Permitem avaliar de forma objetiva as

Leia mais

Sistemas Distribuídos Exclusão Mútua. Edeyson Andrade Gomes

Sistemas Distribuídos Exclusão Mútua. Edeyson Andrade Gomes Sistemas Distribuídos Exclusão Mútua Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Introdução Coordenação e Acordo Suposição de Falhas Exclusão Mútua Algoritmos Centralizado Distribuído Anel

Leia mais

Redes de Computadores. Prof. MSc André Y. Kusumoto

Redes de Computadores. Prof. MSc André Y. Kusumoto Redes de Computadores Prof. MSc André Y. Kusumoto andrekusumoto.unip@gmail.com Nível de Rede Comunicação entre dispositivos de uma mesma rede ocorrem de forma direta. Quando a origem e o destino estão

Leia mais

Sincronização em Sistemas Distribuídos

Sincronização em Sistemas Distribuídos Sincronização em Sistemas Distribuídos problemas clássicos ordenação de mensagens exclusão mútua distribuída eleição de líder... transações ordenação de acontecimentos relógio físico dificuldades relógio

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Deadlocks Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 11.5 pág. 340-344 2 Conteúdo Detecção de deadlock distribuído Detecção centralizada

Leia mais

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina - Sistemas Distribuídos Prof. Andrey Halysson Lima Barbosa Aula 5 Comunicação em Sistemas Distribuídos Sumário Comunicação

Leia mais

Relógio Lógico Algoritmo de Lamport. Relógio Lógico Algoritmo de Lamport. Relógio Físico Algoritmo Centralizado. Relógio Físico Algoritmo Centralizado

Relógio Lógico Algoritmo de Lamport. Relógio Lógico Algoritmo de Lamport. Relógio Físico Algoritmo Centralizado. Relógio Físico Algoritmo Centralizado Relógio Lógico Algoritmo de Lamport Objetivo: Sincronização de clocks lógicos Os tempos associados aos eventos não são necessariamente próximos ao tempo real. Os processos não precisam estar de acordo

Leia mais

Exclusão Mútua Distribuída. Algoritmos para eleição de um coordenador ou líder. UBI, DI, Paula Prata SDTF T04 1

Exclusão Mútua Distribuída. Algoritmos para eleição de um coordenador ou líder. UBI, DI, Paula Prata SDTF T04 1 Exclusão Mútua Distribuída Algoritmos para eleição de um coordenador ou líder 1 Suponhamos N processos, pi, i=1,2,,n que não partilham variáveis, mas que partilham algum recurso partilhado ao qual devem

Leia mais

Coordenaçãoe consenso

Coordenaçãoe consenso Sistemas Distribuídos Coordenaçãoe consenso Nazareno Andrade Universidade Federal de Campina Grande 02/2008 Fundamentos Coordenando processos Construíndo sistemas Sistemas construídos 2 Fundamentos Coordenando

Leia mais

Departamento de Informática

Departamento de Informática Departamento de Informática Licenciatura em Engenharia Informática Sistemas Distribuídos 1ª chamada, 19 de Janeiro de 2011 1º Semestre, 2011/2012 NOTAS: Leia com atenção cada questão antes de responder.

Leia mais

Sistemas Distribuídos. 7 Coordenação e Acordo. Coordenação e Acordo. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR

Sistemas Distribuídos. 7 Coordenação e Acordo. Coordenação e Acordo. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Sistemas Distribuídos 7 Coordenação e Acordo n Coordenação e Acordo Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Exclusão Mútua Evitar interferência entre um conjunto de processos e garantir a

Leia mais

Modelos Fundamentais. Introdução. Interação. Falhas. Segurança. Prof. Adriano Fiorese

Modelos Fundamentais. Introdução. Interação. Falhas. Segurança. Prof. Adriano Fiorese Modelos Fundamentais Introdução Interação Falhas Segurança 1 Introdução Como entender/classificar o comportamento de um sistema: Quais são as principais entidades do sistema? Como elas interagem? Quais

Leia mais

Introdução. Matemática Discreta. Prof Marcelo Maraschin de Souza

Introdução. Matemática Discreta. Prof Marcelo Maraschin de Souza Introdução Matemática Discreta Prof Marcelo Maraschin de Souza Disciplina Aulas: Segunda-feira e terça-feira: 8:00 até 9:50 Avaliações: listas de exercícios e três provas; Livros disponíveis na biblioteca

Leia mais

Sistemas Distribuídos. Capítulo 6 - Aula 10

Sistemas Distribuídos. Capítulo 6 - Aula 10 Sistemas Distribuídos Aula Passada Capítulo 6 - Aula 10 Nomeação estruturada Implementação de um espaço de nomes Implementação de resolução de nomes Nomeação baseada em atributo Introdução ao problema

Leia mais

Departamento de Informática Faculdade de Ciências e Tecnologia UNIVERSIDADE NOVA DE LISBOA

Departamento de Informática Faculdade de Ciências e Tecnologia UNIVERSIDADE NOVA DE LISBOA Departamento de Informática Faculdade de Ciências e Tecnologia UNIVERSIDADE NOVA DE LISBOA Licenciatura em Engenharia Informática Sistemas Distribuídos I 1ª chamada, 26 de Junho de 2006 2º Semestre, 2005/2006

Leia mais

Tolerância a Falhas com Máquinas de Estado

Tolerância a Falhas com Máquinas de Estado Sistemas Distribuídos junho de 2013 Histórico Lamport,1984: Using time instead of timeout for fault tolerance in distributed systems Schneider, 1990: Implementing Fault-Tolerant Services using the State

Leia mais

Exclusão Mútua Distribuída. Algoritmos para eleição de um coordenador ou líder. UBI, DI, Paula Prata SDTF T04 1

Exclusão Mútua Distribuída. Algoritmos para eleição de um coordenador ou líder. UBI, DI, Paula Prata SDTF T04 1 Exclusão Mútua Distribuída Algoritmos para eleição de um coordenador ou líder 1 Há situações em que os processos de um sistema distribuído necessitam de coordenar as suas ações: - quando há recursos partilhados,

Leia mais

Comunicação de Grupo: Disfusão Confiável e Atômica

Comunicação de Grupo: Disfusão Confiável e Atômica WTF 2000: Computação mini-curso Distribuída LCMI/DAS/CTC/UFSC Comunicação de : Disfusão Confiável e Atômica Prof. Lau Cheuk Lung E-mail: lau.lung@inf.ufsc.br Departamento de Informática e Estatística stica

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Desafios e Características Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características

Leia mais

Ordenação. Sistemas Distribuídos e Tolerância a Falhas. Universidade da Beira Interior 07/08

Ordenação. Sistemas Distribuídos e Tolerância a Falhas. Universidade da Beira Interior 07/08 Ordenação Sistemas Distribuídos e Tolerância a Falhas Universidade da Beira Interior 07/08 Benjamim Marques M1440 Daniel Félix M1441 João Duarte a14951 Índice Introdução Problema FIFO Ordenação Causal

Leia mais

Tolerância a Falhas. Reliable Broadcast e Atomic Commitment. June 2, 2010

Tolerância a Falhas. Reliable Broadcast e Atomic Commitment. June 2, 2010 Tolerância a Falhas Reliable Broadcast e Atomic Commitment June 2, 2010 Sumário Difusão/Multicast Fiável Multicast Fiável em Grupos Dinâmicos Multicast: Aplicação à Replicação Atomic Commitment Two-phase

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Comunicação em Grupo abril de 2017 Grupos em Aplicações Distribuídas Primitiva de comunicação em grupo um processo envia uma mensagem para um grupo de processos e todos os destinatários

Leia mais

Um Algoritmo Probabilista de Recuperação de Erros para Difusão Fiável

Um Algoritmo Probabilista de Recuperação de Erros para Difusão Fiável Um Algoritmo Probabilista de Recuperação de Erros para Difusão Fiável Zhen Xiao, Kennneth P. Birman Apresentação: Henrique Moniz Sumário Introdução: multicast e o contexto do problema Tipos de multicast

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Sincronização de Relógios Físicos Departamento de Informática, UFMA Graduação em Ciência da Computação Francisco José da Silva e Silva 1 Serviços de Tempo Em sistemas centralizados,

Leia mais

Licenciatura Plena em Computação

Licenciatura Plena em Computação Licenciatura Plena em Computação Professor Ivan Pires Pacote Divide dados em blocos pequenos chamados de pacote Redes de comutação de pacotes Quando ocorrem erros de transmissão, os dados podem ser perdido

Leia mais

Dados em programas são estruturados, enquanto que mensagens carregam informação seqüencial: Linearização x Restauração de dados Requisição

Dados em programas são estruturados, enquanto que mensagens carregam informação seqüencial: Linearização x Restauração de dados Requisição 6LVWHPDV'LVWULEXtGV 0GHO&OLHQWH6HUYLGU &PXQLFDom 6XPiUL Introdução Elementos Básicos de Comunicação Comunicação Cliente-Servidor Comunicação em Grupo Chamada emota de Procedimento (PC) Prof a. Cristina

Leia mais

Sistemas Distribuídos Grupos

Sistemas Distribuídos Grupos Sistemas Distribuídos Grupos Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Roteiro da Aula Definição de Grupos Tipos Atomicidade Ordenamento 3 RPC Comunicação entre Pares Cliente - Servidor

Leia mais

A camada de enlace de dados executa diversas funções específicas. Dentre elas

A camada de enlace de dados executa diversas funções específicas. Dentre elas A camada de enlace de dados executa diversas funções específicas. Dentre elas estão as seguintes: Fornecer uma interface de serviço bem definida à camada de rede. Lidar com erros de transmissão. Regular

Leia mais

Camada de Enlace de Dados

Camada de Enlace de Dados Camada de Enlace de Dados Camada de Enlace de Dados aborda algoritmos que permitem uma comunicação eficiente e confiável entre dois computadores adjacentes em nível da camada de enlace de dados (adjacentes

Leia mais

Redes de Computadores. Prof. André Y. Kusumoto

Redes de Computadores. Prof. André Y. Kusumoto Redes de Computadores Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com 2/16 Nível de Rede Comunicação entre dispositivos de uma mesma rede ocorrem de forma direta. Quando a origem e o destino estão

Leia mais

Tempos e Estados Globais. ECO036 - Sistemas Paralelos e Distribuídos

Tempos e Estados Globais. ECO036 - Sistemas Paralelos e Distribuídos Tempos e Estados Globais ECO036 - Sistemas Paralelos e Distribuídos Tópicos Abordados - Tempo - Relógios e Ordenação de eventos. - Relação Happened- Before - Relógios Lógicos - Vetor de Relógios - Relógios

Leia mais

Flávio G F Camacho Vipnet Baixada Telecomunicações e Informática LTDA

Flávio G F Camacho Vipnet Baixada Telecomunicações e Informática LTDA Flávio G F Camacho Vipnet Baixada Telecomunicações e Informática LTDA Sede em Duque de Caxias / RJ Filial em São João de Meriti / RJ Foco exclusivo fornecimento de links dedicados a empresas. Sempre com

Leia mais

Rede de computadores Protocolos UDP. Professor Carlos Muniz

Rede de computadores Protocolos UDP. Professor Carlos Muniz Rede de computadores Professor Carlos Muniz User Datagram Protocol O User Datagram Protocol (UDP) é um protocolo simples da camada de transporte. Ele é descrito na RFC 768 [1] e permite que a aplicação

Leia mais

Sistemas Distribuídos Estados globais. Vinícius Fernandes Soares Mota

Sistemas Distribuídos Estados globais. Vinícius Fernandes Soares Mota Sistemas Distribuídos Estados globais Vinícius Fernandes Soares Mota 1 2 Tópicos Tempo e relógio lógicos (revisão curta) Relógios vetoriais Estados Globais Snapshot distribuído 3 Antes... Por que a sincronização

Leia mais

LEIC/LERC 2008/09 2º Teste de Sistemas Distribuídos

LEIC/LERC 2008/09 2º Teste de Sistemas Distribuídos Número: Nome: LEIC/LERC 2008/09 2º Teste de Sistemas Distribuídos 11 de Julho de 2009 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 1h30m - 7 Páginas Grupo I

Leia mais

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso 1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso aos dados neles armazenados e com falhas ao nível da comunicação de dados. - Na replicação

Leia mais

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar - Aula 1-1. A CAMADA DE ENLACE DE DADOS (Parte 1) Relembrando as aulas do semestre passado quando estudamos os modelos de referência, lembramos que a Camada de Enlace de Dados é a camada responsável pela

Leia mais

Programação Distribuída. Arquiteturas

Programação Distribuída. Arquiteturas Programação Distribuída Arquiteturas Programação Distribuída A arquitetura de um Sistema Distribuído diferencia entre a organização de componentes de software e a realização física. A organização de sistema

Leia mais

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso 1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso aos dados neles armazenados e com falhas ao nível da comunicação de dados. - Na replicação

Leia mais

LEIC/LERC 2007/08 Segundo Teste de Sistemas Distribuídos

LEIC/LERC 2007/08 Segundo Teste de Sistemas Distribuídos LEIC/LERC 2007/08 Segundo Teste de Sistemas Distribuídos 27 de Junho de 2008 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 1h30m Grupo I Um número de telefone

Leia mais

Abordagem, Instalação e Realização de benchmarks para LibPaxos2 e RingPaxos

Abordagem, Instalação e Realização de benchmarks para LibPaxos2 e RingPaxos Abordagem, Instalação e Realização de benchmarks para LibPaxos2 e RingPaxos Cristian Cleder Machado Disciplina de Programação com Objetos Distribuídos TF Professor: Cláudio Fernando Resin Geyer cristian@cristian.com.br

Leia mais

Canais de Comunicação

Canais de Comunicação Canais de Comunicação February 24, 2010 Sumário Comunicação via Mensagens Propriedades dum Canal de Comunicação Protocolos da Internet UDP TCP Aplicação Distribuída O que é? É uma aplicação que consiste

Leia mais

Sistemas entre Pares e Redes Sobrepostas

Sistemas entre Pares e Redes Sobrepostas Redes estruturadas: CAN 1 ricardo.pereira@inesc-id.pt IST 21-10-2009 1 Imagens retiradas de A Scalable Content Addressable Network por Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, Scott

Leia mais

Aluísio Augusto Silva Gonçalves 17 de maio de 2018

Aluísio Augusto Silva Gonçalves 17 de maio de 2018 CONSISTÊNCIA E CONSENSO CONSTRUINDO SISTEMAS DISTRIBUÍDOS TOLERANTES A FALHAS Aluísio Augusto Silva Gonçalves 17 de maio de 2018 CONTEÚDO Recapitulando Garantias de consistência Linearizabilidade Garantias

Leia mais

Bancos de Dados Distribuídos. Lucas Henrique Samuel Queiroz

Bancos de Dados Distribuídos. Lucas Henrique Samuel Queiroz Bancos de Dados Distribuídos Lucas Henrique Samuel Queiroz O que é Uma coleção de nós interconectados via rede. Cada nó da rede possui um banco de dados local. Em conjunto atuam como um único sistema de

Leia mais

Redes de Computadores e Aplicações. Aula 37 Roteamento IP Unicast Dinâmico RIP

Redes de Computadores e Aplicações. Aula 37 Roteamento IP Unicast Dinâmico RIP Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do N Campus Currais Novos Redes de Computadores e Aplicações Aula 37 Roteamento IP Unicast Dinâmico RIP Prof. Diego Pereira

Leia mais

O que é um sistema distribuído?

O que é um sistema distribuído? Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores

Leia mais

Blockchain em Seguros Realidade e Possibilidades

Blockchain em Seguros Realidade e Possibilidades Blockchain em Seguros Realidade e Possibilidades Agenda Como trabalhamos na Sura Conceitos importantes Aplicações possíveis em seguros Algumas questões que precisam ser resolvidas Onde aplicamos na Seguros

Leia mais

Introdução aos Sistemas Distribuídos

Introdução aos Sistemas Distribuídos Introdução aos Sistemas Distribuídos Prof. Leonardo Barreto Campos http://sites.google.com/sitew/leonardobcampos 1/29 Sumário Ementa; Bibliografia Calendário Site Introdução Características http://sites.google.com/sitew/leonardobcampos

Leia mais

Camada de Enlace de Dados

Camada de Enlace de Dados Camada de Enlace de Dados Camada de Enlace de Dados aborda algoritmos que permitem uma comunicação eficiente e confiável entre dois computadores adjacentes em nível da camada de enlace de dados (adjacentes

Leia mais

Introdução à Ciência da Computação Correção da AV1 de Prof. Fred Sauer

Introdução à Ciência da Computação Correção da AV1 de Prof. Fred Sauer Introdução à Ciência da Computação Correção da AV1 de 2018-2 Prof. Fred Sauer http://www.fredsauer.com.br fsauer@gmail.com 1ª questão 1 (0,9 ponto) Assinale a definição CORRETA: ( ) Um ALGORITMO é um script

Leia mais

Sincronização. Tempo e Relógios. Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol

Sincronização. Tempo e Relógios. Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol Sincronização Tempo e Relógios Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol 1 Caso mais simples: Sincronização interna entre dois processos num sistema

Leia mais

Novas Propostas para Protocolos de Streaming Luiz Eduardo Fontes Mello de Almeida

Novas Propostas para Protocolos de Streaming Luiz Eduardo Fontes Mello de Almeida Novas Propostas para Protocolos de Streaming Luiz Eduardo Fontes Mello de Almeida Escola de Engenharia Universidade Federal Fluminense (UFF) Rua Passo da Pátria, 156 Niterói RJ Brazil luizedu.almeida@ibest.com.br

Leia mais

Sistemas entre Pares e Redes Sobrepostas

Sistemas entre Pares e Redes Sobrepostas 1-HOP routing 1 ricardo.pereira@inesc-id.pt IST 2-11-2009 1 Imagens retiradas de One Hop Lookups for Peer-to-Peer Overlays por Anjali Gupta, Barbara Liskov, Rodrigo Rodrigues ou When Multi-Hop Peer-to-Peer

Leia mais

# $ % & ' ( ) * ' ( ) *! " " Orientador +, -

# $ % & ' ( ) * ' ( ) *!   Orientador +, - #$ %&'()* '()*!"" Orientador +,- ."%&/0#12 3"/%'0)/))&/ )4506 7" %/0)/))&/ 8906 8)) :"'/0)/))&/ '% '); Um roteador recebe em alguma de suas interfaces um pacote vindo da rede local ou da rede externa.

Leia mais

Grupo I [7,5v] {H(M)}K1, {K2}K3, {M}K4

Grupo I [7,5v] {H(M)}K1, {K2}K3, {M}K4 Número: Nome: Página 1 de 7 LEIC/LETI, 2014/15, Repescagem do 2º Teste de Sistemas Distribuídos 30 de Junho de 2015 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração:

Leia mais

Disciplina Estruturas de Comunicação de Dados

Disciplina Estruturas de Comunicação de Dados Disciplina Estruturas de Comunicação de Dados Capítulo 1 Introdução as Estruturas de Comunicação de Dados Curso Técnico em Redes de Computadores Prof. Emerson Felipe Estrutura de Comunicação de Dados Material

Leia mais

AULA CRM: INTRODUÇÃO & VISÃO GERAL

AULA CRM: INTRODUÇÃO & VISÃO GERAL AULA CRM: INTRODUÇÃO & VISÃO GERAL SISTEMAS INTEGRADOS DE GESTÃO Prof. Esp. Tiago A. Silva RIBEIRÃO PRETO 2017 INTRODUÇÃO NESTA AULA VEREMOS: Marketing e CRM O que um CRM deve fazer? Vantagens e Desvantagens

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Camada de Transporte Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br Departamento de Ciência da Computação Universidade Federal de Minas Gerais UFMG/DCC Redes de Computadores

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Comunicação Sincronização Prof. Marcelo de Paiva Guimarães 1 Comunicação de Grupo Grupo É uma coleção de processos que agem juntos em um sistema, de tal forma que quando uma mensagem

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Transações atômicas Conteúdo O modelo transacional Armazenamento estável Primitivas transacionais Propriedades das transações Transações aninhadas Implementação Área de trabalho privada

Leia mais

Experiência 04: Comandos para testes e identificação do computador na rede.

Experiência 04: Comandos para testes e identificação do computador na rede. ( ) Prova ( ) Prova Semestral ( ) Exercícios ( ) Prova Modular ( ) Segunda Chamada ( ) Exame Final ( ) Prática de Laboratório ( ) Aproveitamento Extraordinário de Estudos Nota: Disciplina: Turma: Aluno

Leia mais

AULA 08 CRIPTOGRAFIA E SEGURANÇA DE DADOS CRIPTOGRAFIA ASSIMÉTRICA CHAVES E ALGORITMOS 03/03/2016 PROF. FABIANO TAGUCHI

AULA 08 CRIPTOGRAFIA E SEGURANÇA DE DADOS CRIPTOGRAFIA ASSIMÉTRICA CHAVES E ALGORITMOS 03/03/2016 PROF. FABIANO TAGUCHI 03/03/2016 PROF. FABIANO TAGUCHI http://fabianotaguchi.wordpress.com CRIPTOGRAFIA E SEGURANÇA DE DADOS AULA 08 CRIPTOGRAFIA ASSIMÉTRICA CHAVES E ALGORITMOS 1 CONCEITOS DA TECNOLOGIA CRIPTOGRAFIA ASSIMÉTRICA

Leia mais

Correção de Erros. Erros de memória de semicondutores podem ser:

Correção de Erros. Erros de memória de semicondutores podem ser: Correção de Erros Erros de memória de semicondutores podem ser: Erros graves que constitui um defeito físico permanente; Erros moderados, onde a(s) célula(s) não são capazes de armazenar os dados ou fazem

Leia mais