Dissertação
Generalized Paxos made Byzantine, Visigoth and Less Complex EVALUATED
Um dos membros mais recentes da família de protocolos Paxos é o protocolo Generalized Paxos. Esta variante tem a característica de se separar da especificação original de consenso, o que lhe permite ter uma condição de consistência mais fraca onde diferentes processos podem ter noções diferentes da sequência de comandos que está a ser concordada. No entanto, tal como o Paxos original, o protocolo Generalized Paxos não tem uma implementação simples. Para além disso, com a recente adoção prática de protocolos de tolerância a faltas Bizantinas, é relevante entender como é que o Generalized Paxos pode ser implementado no modelo Bizantino. O mesmo pode ser dito relativamente ao modelo Visigoth que tem como alvos ambientes semelhantes a datacenters ao permitir assunções de faltas e sincronia parametrizáveis. Esta dissertação faz várias contribuições. Em primeiro lugar, fornecemos uma descrição do protocolo Generalized Paxos mais fácil de entender, baseada numa especificação de consenso simplificada, juntamente com uma especificação em pseudocódigo que pode ser prontamente implementada. Em segundo lugar, estendemos o protocolo para o modelo de faltas Bizantino, fornecendo também uma descrição em pseudocódigo para facilitar o seu mapeamento numa linguagem de programação. Esta contribuição é suplementada com provas de correção e uma discussão de extensões e otimizações relevantes. Em terceiro lugar, expandimos esta implementação para o modelo de faltas Visigoth, fornecendo também uma descrição acessível em pseudocódigo e provas de correção.
novembro 2, 2017, 17:0
Publicação
Obra sujeita a Direitos de Autor
Orientação
ORIENTADOR
Rodrigo Seromenho Miragaia Rodrigues
Departamento de Engenharia Informática (DEI)
Professor Catedrático