Problema de consenso de sistemas distribuídos


8

Comecei a ler sobre sistemas distribuídos pela primeira vez. Há uma prova bastante clara da impossibilidade de consenso em um modelo assíncrono usando alguma topologia combinatória. Por outro lado, existem vários protocolos de consenso usados ​​em sistemas práticos para sincronizar máquinas de estado distribuídas como Paxos e Raft. Parece que a chave para essa contradição percebida é o que é chamado de detecção de falhas.

Minha pergunta é a seguinte: O que protocolos como Paxos e Raft desistem, ou seja, como eles não estão contradizendo o teorema? Como a detecção de falhas se encaixa aqui?

Existem documentos que discutam esses relacionamentos que valem a pena examinar?

Respostas:


6

O teorema da FLP [1] diz que

É impossível para um conjunto de processadores em um sistema distribuído assíncrono concordar com um valor binário, mesmo que apenas um único processador esteja sujeito a uma falha inesperada .

Existem várias maneiras de contornar esses resultados de impossibilidade , segundo Jennifer Welch; Eu sugiro que você leia a página da web vinculada

  1. alterando as suposições do sistema

    • Assumindo um sistema síncrono, como no problema "Generais bizantinos" [2]
    • Assumindo um sistema síncrono parcial no qual os detectores de falha [3] são usados
  2. ou alterando a declaração do problema

    • Nenhuma garantia para rescisão (andamento) como Paxos [4]
    • Protocolo randomizado [5]
    • Não há necessidade de concordar com um valor único, como no problema de acordo com ok
    • Não há necessidade de concordar com valores exatos em acordo aproximado

[1] Impossibilidade de consenso distribuído com um processo defeituoso ) JACM, 1985.

[2] Chegar a um acordo na presença de falhas JACM, 1980.

[3] Detectores de falhas não confiáveis ​​para sistemas distribuídos confiáveis JACM, 1996.

[4] Paxos simplificou TR. Por Lamport

[5] Outra vantagem da livre escolha (Resumo estendido): Protocolos de acordos completamente assíncronos PODC, 1983. Acabou de receber o Prêmio Edsger W. Dijkstra de 2015 .

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.