1 / 24

Unreliable Failure Detectors for Reliable Distributed Systems

Unreliable Failure Detectors for Reliable Distributed Systems. T. D. Chandra and S. Toueg Journal of the ACM, vol 43, no 2, March 1996, pp. 225-267 Apresentado por Lívia Sampaio livia@dsc.ufcg.edu.br. Motivação. Necessidade de construir aplicações tolerante a falhas (TF). Servidores web.

locke
Download Presentation

Unreliable Failure Detectors for Reliable Distributed Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Unreliable Failure Detectors for Reliable Distributed Systems T. D. Chandra and S. Toueg Journal of the ACM, vol 43, no 2, March 1996, pp. 225-267 Apresentado por Lívia Sampaio livia@dsc.ufcg.edu.br

  2. Motivação • Necessidade de construir aplicações tolerante a falhas (TF) LSD/UFCG 24/03/2006

  3. Servidores web Cliente Internet ... bc Motivação • Mecanismos de TF precisam de um serviço de detecção de falhas • Exemplo do serviço WEB replicado REQUISIÇÃO REQUISIÇÃO REQUISIÇÃO ? RESPOSTA RESPOSTA LSD/UFCG 24/03/2006

  4. Motivação • Como resolver o problema da detecção de falhas? • ambientes síncronos – trivial • ambientes assíncronos – complicado! • DIFICULDADES ASSÍNCRONO • impossível decidir se um processo falhou ou está lento • FLP85 • FACILIDADES - ASSÍNCRONO • semântica simples • aplicações portáveis • facilidade de programação LSD/UFCG 24/03/2006

  5. Motivação • Modelo assíncrono com detectores de falhas não confiáveis (DFNC) • Alternativa para “amenizar” FLP85 • Introdução de detectores de falhas que podem cometer erros LSD/UFCG 24/03/2006

  6. Conteúdo • Modelo assíncrono • Definição de DFNC • Projeto de DFNC • Especificação • Implementação • Aplicação LSD/UFCG 24/03/2006

  7. Modelo assíncrono • N processos • Comunicação por troca de mensagens através de uma rede confiável • Processos falham por parada • Incertezas nos atrasos para comunicação e processamento • Processos têm acesso a um relógio local • Introdução de detectores de falhas não confiáveis LSD/UFCG 24/03/2006

  8. p DFp rede Lista de suspeitos q r Entendendo DFNC • Definição • DFNC são oráculos que respondem sobre a situação de falhas do sistema; podem cometer erros. q q r q LSD/UFCG 24/03/2006

  9. Entendendo DFNC • Projeto • Serviço distribuído • “caixa-preta” que encapsula requisitos de sincronismo do sistema ; interface bem definida • Modularização • Separação de conceitos LSD/UFCG 24/03/2006

  10. Propriedades muito restritivas!!! Entendendo DFNC • Especificação de DFNC • Em termos de 2 propriedades: • Abrangência – quantidade de falhas detectadas • Exatidão – quantidade de falsas suspeições cometidas • Aplicações são definidas em função da especificação dos DFNC e não de uma implementação em particular • Detectores de falhas perfeitos (semântica mais forte) • Abrangência forte – em algum momento, todo processo falho será considerado suspeito, permanentemente, por qualquer processo correto; • Exatidão forte – nenhum processo correto será suspeitado por outro processo correto. LSD/UFCG 24/03/2006

  11. Entendendo DFNC • Enfraquecendo a semântica de DFNC • EM TERMOS DE ABRANGÊNCIA: • Abrangência fraca – em algum momento, todo processo falho será considerado suspeito, permanentemente, por algum processo correto; • EM TERMOS DE EXATIDÃO: • Exatidão fraca – algum processo correto nunca é suspeitado; • Exatidão forte eventual – em algum momento, o detector garante a exatidão forte; • Exatidão fraca eventual – em algum momento, o detector garante a exatidão fraca. LSD/UFCG 24/03/2006

  12. Exatidão “em atraso” Enfraquecendo a abrangência Enfraquecendo a exatidão Entendendo DFNC • Classificação • Em termos de semântica: forte -> fraca • São oito classes (= 2 abrangência * 4 exatidão) • Comparando as classes de DFNC LSD/UFCG 24/03/2006

  13. Entendendo DFNC • Equivalência de Classes • Considere a seguinte relação entre duas classes D e D’: D  D’  D  D’ • Conceito de redutibilidade • Um algoritmo de redução é aquele capaz de transformar um detector de falhas D em outro D’, tal que D  D’ LSD/UFCG 24/03/2006

  14. P P S S Q Q W W   Redução acontece sobre a propriedade de abrangência, então: 8 classes podem ser reduzidas a quatro Entendendo DFNC • Equivalência de classes • Aplicando o conceito de redutibilidade às classes de DFNC • A relação inversa também é verdade PQ, S  W, P Q, S W LSD/UFCG 24/03/2006

  15. p DFp rede q “Q está vivo” r “Q está vivo” Lista de suspeitos “Q está vivo” Implementação de DFNC • Independência de implementação • Implementações normalmente são baseadas em timeouts • Modelo push • Esse exemplo não implementa S ! • Timeouts mal configurados podem violar exatidão • É preciso usar timeouts dinâmicos ? q LSD/UFCG 24/03/2006

  16. Aplicação para DFNC • O problema do consenso • N processos, dentre os quais no máximo f<N podem falhar por parada, propõem um valor e tentam decidir sobre um dos valores propostos. • Formalmente: • Validade • Acordo • Terminação O consenso deve garantir segurança e exatidão! LSD/UFCG 24/03/2006

  17. Aplicação para DFNC • O protocolo de consenso CT96 • Paradigma do coordenador rotativo • Utiliza ◊S (N  2F+1) • Rodadas assíncronas • Cada rodada tem um coordenador conhecido a priori • O consenso termina quando existir um coordenador que não seja suspeitado por um número suficiente de participantes LSD/UFCG 24/03/2006

  18. Fase 2 Fase 3 Fase 4 Fase 1 p1 proposta ack ou nack decisão p2 p3 estimativas difusão confiável Rodada de CT96 sem falhas LSD/UFCG 24/03/2006

  19. Fase 2 Fase 3 Fase 4 Fase 1 p1 proposta ack ou nack p2 p3 estimativas Rodada de CT96 com falhas LSD/UFCG 24/03/2006

  20. Difusão atômica • O problema da difusão atômica • Dado um conjunto de N processos, estes irão entregar as mesmas mensagens e na mesma ordem. • Formalmente • Validade • Acordo • Ordenação total LSD/UFCG 24/03/2006

  21. Consenso e Difusão atômica • Aplica-se o conceito de redutibilidade • Problemas são equivalentes • Consenso com difusão atômica • Difusão atômica com consenso LSD/UFCG 24/03/2006

  22. Referências sobre detectores de falhas • [SBO03] Detectores de falhas em sistemas assíncronos (tutorial) • [OBB03] Projeto e Implementação de um Serviço de Detecção de Falhas com Semântica Perfeita. • [COB05] Engineering a Failure Detection Service for Widely Distributed Systems • [DUHK05] Definition and Specification of Accrual Failure Detectors • [LFA00] Optimal Implementation of the Weakest Failure Detector for Solving Consensus LSD/UFCG 24/03/2006

  23. Referências sobre detectores de falhas • [NJ-P04] QoS of Timeout-based Self-Tuned Failure Detectors: the Effects of the Communication Delay Predictor and the Safety Margin. • [CHT96] The Weakest Failure Detector for Solving Consensus • [CTA00] On the Quality of Service of Failure Detectors • [SB05] Adaptive Indulgent Consensus LSD/UFCG 24/03/2006

  24. Obrigada!!! Mais questionamentos???? LSD/UFCG 24/03/2006

More Related