Investigando a implementação do consenso escalável sobre o VCUBE

Detalhes bibliográficos
Autor(a) principal: Terra, Acácia dos Campos, 1996-
Data de Publicação: 2020
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFPR
Texto Completo: https://hdl.handle.net/1884/67885
Resumo: Orientador: Prof. Dr. Elias Procópio Duarte Jr.
id UFPR_db0ebfe21200a674538ccca5acd98791
oai_identifier_str oai:acervodigital.ufpr.br:1884/67885
network_acronym_str UFPR
network_name_str Repositório Institucional da UFPR
repository_id_str 308
spelling Terra, Acácia dos Campos, 1996-Camargo, Edson Tavares deUniversidade Federal do Paraná. Setor de Ciências Exatas. Programa de Pós-Graduação em InformáticaDuarte Junior, Elias Procópio, 1966-2021-06-21T20:08:54Z2021-06-21T20:08:54Z2020https://hdl.handle.net/1884/67885Orientador: Prof. Dr. Elias Procópio Duarte Jr.Coorientador: Prof. Dr. Edson Tavares de Camargo.Dissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa : Curitiba, 17/04/2020Inclui referências: p. 41-42Área de concentração: Ciência da ComputaçãoResumo: Um dos algoritmos essenciais na construção de sistemas distribuídos é o consenso, que garante que todos os processos corretos do sistema decidem por um mesmo valor dentre valores que foram propostos. O Paxos é um dos mais importantes algoritmos de consenso existentes. O Paxos tolera falhas por parada, garantindo a propriedade da segurança (safety) e, sob condições de assincronia fraca, garante o progresso (liveness). O Paxos foi proposto originalmente para a replicação máquina de estado. Variações do algoritmo, com destaque para o Ring Paxos, foram propostas com o intuito de melhorar o desempenho do sistema. O Ring Paxos executa o Paxos dispondo os processos em um anel lógico direcional. Neste trabalho é proposto um algoritmo de consenso escalável que implementa uma instância do Paxos. No algoritmo os processos acceptors são organizados na topologia virtual para sistemas distribuídos conhecida como VCube. O VCube organiza os processos em um hipercubo quando todos estão sem-falha, sendo um algoritmo que apresenta diversas propriedades logarítmicas mesmo quando há processos falhos. No algoritmo proposto, os acceptors são agrupados em clusters, e o coordenador executa o Paxos utilizando uma difusão de mensagens de melhor esforço sobre o VCube. Inicialmente o algoritmo tenta alcançar a maioria apenas no maior cluster. Caso haja processos falhos o algoritmo continua nos demais clusters até que obtenha uma maioria de acceptors. Conforme um acceptor encaminha a mensagem recebida para o próximo acceptor no cluster, concatena junto à mensagem a sua resposta para o coordenador. A mensagem percorre o ramo da árvore gerada pelo VCube e, sempre que um acceptor for folha, envia uma mensagem de resposta para o coordenador contendo as respostas concatenadas de todos os acceptors daquele ramo. Desta forma o coordenador sabe quando atingiu uma maioria entre os N acceptors. O algoritmo foi implementado através de simulação e foram obtidos resultados positivos para a quantidade de mensagens trocadas durante a execução do consenso, quando em comparação com uma versão do Paxos em anel inspirada no Ring Paxos. Nesta dissertação é apresentada uma especificação, implementação e os resultados obtidos através de simulação. Palavras-chave: VCube. Sistema Distribuído. Consenso. Paxos. Tolerância a Falhas.Abstract: Consensus is one of the most important building blocks for building fault-tolerant distributed systems. The execution of consensus ensures that all the correct processes in the system decide the same value among a set of values initially proposed. Paxos is one of the most important consensus algorithms. Paxos tolerates crash faults, guarantees safety always, and liveness under weak synchrony assumptions. Paxos was originally proposed for state machine replication. Variations of the algorithm, in particular Ring Paxos, have been proposed in order to improve the performance of the system. Ring Paxos executes Paxos by organizing the processes on a directional logical ring. This work proposes a scalable consensus algorithm that implements an instance of Paxos. In the algorithm, acceptors are organized in a virtual topology for distributed systems known as VCube. The VCube is a hypercube when every process is correct, and presents several logarithmic properties even when processes fail. In the proposed algorithm, the acceptors are grouped in clusters, and the coordinator runs Paxos using a best effort broadcast algorithm that sends messages across the VCube. Initially the algorithm tries to reach a majority only in the largest cluster. In case there are faulty processes, the algorithm continues in the other clusters until it reaches a majority of acceptors. As an acceptor forwards the received message to the next acceptor in the cluster, it concatenates its response in the message that is sent up to the coordinator. The message travels through branches of the tree generated on the VCube and, whenever an acceptor is a leaf, it sends a reply message to the coordinator containing the concatenated responses of all acceptors of that branch. In this way as the coordinator receives the message it knows whether a majority among the N acceptors has replied. The algorithm was implemented through simulation and positive results were obtained for the amount of messages exchanged during the execution of the consensus, when compared to an equivalent Paxos version inspired on Ring Paxos. In this dissertation we present a specification of the algorithm, as well as an implementation and results obtained through simulation. Keywords: VCube. Distributed System. Consensus. Paxos. Fault Tolerance.42 p. : il. (algumas color.).application/pdfAlgorítmos de computadorSistemas operacionais distribuidos (Computadores)Ciência da ComputaçãoInvestigando a implementação do consenso escalável sobre o VCUBEinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisporreponame:Repositório Institucional da UFPRinstname:Universidade Federal do Paraná (UFPR)instacron:UFPRinfo:eu-repo/semantics/openAccessORIGINALR - D - ACACIA DOS CAMPOS DA TERRA.pdfapplication/pdf1209690https://acervodigital.ufpr.br/bitstream/1884/67885/1/R%20-%20D%20-%20ACACIA%20DOS%20CAMPOS%20DA%20TERRA.pdffbb694b875bc81629c61a6ec47c6e786MD51open access1884/678852021-06-21 17:08:54.451open accessoai:acervodigital.ufpr.br:1884/67885Repositório de PublicaçõesPUBhttp://acervodigital.ufpr.br/oai/requestopendoar:3082021-06-21T20:08:54Repositório Institucional da UFPR - Universidade Federal do Paraná (UFPR)false
dc.title.pt_BR.fl_str_mv Investigando a implementação do consenso escalável sobre o VCUBE
title Investigando a implementação do consenso escalável sobre o VCUBE
spellingShingle Investigando a implementação do consenso escalável sobre o VCUBE
Terra, Acácia dos Campos, 1996-
Algorítmos de computador
Sistemas operacionais distribuidos (Computadores)
Ciência da Computação
title_short Investigando a implementação do consenso escalável sobre o VCUBE
title_full Investigando a implementação do consenso escalável sobre o VCUBE
title_fullStr Investigando a implementação do consenso escalável sobre o VCUBE
title_full_unstemmed Investigando a implementação do consenso escalável sobre o VCUBE
title_sort Investigando a implementação do consenso escalável sobre o VCUBE
author Terra, Acácia dos Campos, 1996-
author_facet Terra, Acácia dos Campos, 1996-
author_role author
dc.contributor.other.pt_BR.fl_str_mv Camargo, Edson Tavares de
Universidade Federal do Paraná. Setor de Ciências Exatas. Programa de Pós-Graduação em Informática
dc.contributor.author.fl_str_mv Terra, Acácia dos Campos, 1996-
dc.contributor.advisor1.fl_str_mv Duarte Junior, Elias Procópio, 1966-
contributor_str_mv Duarte Junior, Elias Procópio, 1966-
dc.subject.por.fl_str_mv Algorítmos de computador
Sistemas operacionais distribuidos (Computadores)
Ciência da Computação
topic Algorítmos de computador
Sistemas operacionais distribuidos (Computadores)
Ciência da Computação
description Orientador: Prof. Dr. Elias Procópio Duarte Jr.
publishDate 2020
dc.date.issued.fl_str_mv 2020
dc.date.accessioned.fl_str_mv 2021-06-21T20:08:54Z
dc.date.available.fl_str_mv 2021-06-21T20:08:54Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/1884/67885
url https://hdl.handle.net/1884/67885
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 42 p. : il. (algumas color.).
application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPR
instname:Universidade Federal do Paraná (UFPR)
instacron:UFPR
instname_str Universidade Federal do Paraná (UFPR)
instacron_str UFPR
institution UFPR
reponame_str Repositório Institucional da UFPR
collection Repositório Institucional da UFPR
bitstream.url.fl_str_mv https://acervodigital.ufpr.br/bitstream/1884/67885/1/R%20-%20D%20-%20ACACIA%20DOS%20CAMPOS%20DA%20TERRA.pdf
bitstream.checksum.fl_str_mv fbb694b875bc81629c61a6ec47c6e786
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositório Institucional da UFPR - Universidade Federal do Paraná (UFPR)
repository.mail.fl_str_mv
_version_ 1801860473610567680