A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

CONSENSO O grande mal-entendido

Apresentações semelhantes


Apresentação em tema: "CONSENSO O grande mal-entendido"— Transcrição da apresentação:

1 CONSENSO O grande mal-entendido
Tolerância a Faltas Distribuída Madalena Miguel Março 2003

2 O que é o Consenso? Acordo em sistemas distribuídos
Obrigar processos, com valores iniciais diferentes, a escolherem o valor inicial de um deles. Conclusão de FLP (Fisher, Lynch e Paterson): o problema é insolúvel em sistemas assíncronos. Solúvel em sistemas síncronos, parcialmente síncronos e assíncronos com detector de falhas. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

3 6 mal-entendidos É apenas para teóricos Os time-outs são suficientes
Não há vida após FLP O modelo do detector de falhas é irrealista Time-free significa ineficiência Algoritmos assíncronos não podem ser usados em aplicações de tempo crítico Tolerância a Faltas Distribuída Madalena Miguel Março 2003

4 1 - É apenas para teóricos
Tolerância a Faltas Distribuída Madalena Miguel Março 2003

5 É apenas para teóricos Prós e Contras: O consenso não é real.
A Ordem total é semelhante. A resolução de um pode ser aplicada no outro e vice-versa. O consenso pode ser usado para resolver a ordem total, não tem que ser usado. Os outros problemas, serão pelo menos igualmente difíceis. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

6 1. É apenas para teóricos Conclusão:
Uma aproximação rigorosa da resolução do consenso tem uma enorme importância para o fabrico de sistemas distribuídos tolerantes a faltas, já que pode ser usada na resolução de outros problemas de acordo. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

7 2 - Os time-outs são suficientes
Tolerância a Faltas Distribuída Madalena Miguel Março 2003

8 2 - Os time-outs são suficientes
Prós e Contras: O consenso pode solucionar-se com time-outs, para detectar paragens dos processos. O tempo não resolve o consenso já que não permite distinguir processos parados dos lentos. Os cenários de FLP nunca ocorreriam num sistema real. Relação entre probabilidade de detecção incorrecta de falhas e reacções rápidas a paragens dos processos. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

9 2. Os time-outs são suficientes
Conclusão: Existe uma proximidade notável entre a dificuldade de resolução do consenso e a dificuldade de conseguir que um sistema reaja rapidamente a paragens de processos (reduzindo os períodos de black-out). Tolerância a Faltas Distribuída Madalena Miguel Março 2003

10 3 - Não há vida após FLP Tolerância a Faltas Distribuída Madalena Miguel Março 2003

11 3. Não há vida após FLP Prós e Contras:
O consenso por vezes é resolúvel e outras vezes não. Aceitem isto. Não há algoritmos que resolvam o consenso em todas as corridas, temos que caracterizar as corridas em que os algoritmos o resolvem. Modelos de sistemas: parcialmente síncrono, assíncrono temporário, assíncrono com detector de falhas, em que os processo nunca discordam no valor a decidir. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

12 3. Não há vida após FLP Modelos:
Parcialmente síncrono: existe de um tempo t após o qual não há falhas temporárias. Assíncrono temporário: o sistema atravessa períodos estáveis (sem falhas temporárias) e instáveis. Assíncrono com detector de falhas: existe um tempo t após o qual um processo correcto não é suspeito por nenhum processo correcto. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

13 3. Não há vida após FLP Conclusão:
A conclusão de FLP levou ao aparecimento de vários modelos menos restritivos que o modelo síncrono, e que nos permitem caracterizar as corridas em que um dado algoritmo soluciona o consenso. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

14 4 - O modelo do detector de faltas é irrealista
Tolerância a Faltas Distribuída Madalena Miguel Março 2003

15 4. Modelo detector de faltas é irreal
Prós e Contras: ΔS é o detector de falhas mais fraco que permite resolver o consenso. ΔS não se aplica a sistemas assíncronos. (os períodos estáveis são implementáveis. ΔS é uma especificação para a implementação do mecanismo do detector de falhas. Controlar time-out/rapidez de resposta. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

16 4. Modelo detector de faltas é irreal
Prós e Contras: O modelo não prevê a recuperação dos processos. Um processo que falha e depois recupera pode ser considerado correcto ? Todos os processos correctos devem decidir. A solução do consenso no modelo crash/recover é muito próxima da do modelo crash/no recovery. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

17 5 - Time-free significa ineficiência
Tolerância a Faltas Distribuída Madalena Miguel Março 2003

18 5. Time-free significa ineficiência
Prós e Contras: O modelo assíncrono com detector de falhas é time-free. O modelo time-free, é complexo e ineficiente. Complexo: tolera um nº ilimitado de suspeitas incorrectas de falhas (pode solucionar numa ronda). Complexidade ≠> Ineficiente. Medida da eficiência: nº de etapas de comunicação em corridas sem paragens de processos. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

19 5. Time-free significa ineficiência
Nº de Etapas: 3 etapas: p1 difunde v1; p2 envia ack para p1; quando p1 tem maioria de acks, difunde v1. 2 etapas: p1 difunde v1; todos os processos aceitam v1, reenviando esse valor para todos. Um processo decide depois de ter recebido v1 da maioria dos processos. 1 etapa: pi recebe v1, espera um tempo Δ, para detectar falhas na rede e se não houver, decide por esse valor. O algoritmo em 2 etapas é mais rápido do que este último. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

20 6 – Algoritmos assíncronos não servem para aplicações de tempo crítico
Tolerância a Faltas Distribuída Madalena Miguel Março 2003

21 6. Não servem para aplicações críticas
Prós e Contras: Não limitam o tempo de envio de mensagens na presença de falhas. Os algoritmos que limitam o tempo, não são mais sofisticados, apenas restringem do nº de falhas. 2 fases para criar aplicações de tempo crítico: Desenho: criar algoritmo no modelo time-free e provar que é correcto; Implementação: integrar algoritmo num sistema real, onde a configuração do detector de falhas depende da rede. Tolerância a Faltas Distribuída Madalena Miguel Março 2003

22 CONCLUSÃO Os problemas do acordo são solucionados no modelo mais generalista – assíncrono com detector de falhas. Esta aproximação deve ser adequada a aplicações de tempo crítico, já que não causa perdas de eficiência. É mais importante a actualidade dos dados do que a rapidez da resposta. Tolerância a Faltas Distribuída Madalena Miguel Março 2003


Carregar ppt "CONSENSO O grande mal-entendido"

Apresentações semelhantes


Anúncios Google