A detecção de defeitos pode ser usada como base no projeto de algoritmos e aplicações distribuídas que dependem, de alguma forma, de informações de estado sobre processos distribuídos. O problema de acordo entre processos (consenso), que é um dos problemas fundamentais da computação distribuída, bem como difusão atômica (atomic broadcast), eleição de líder (leader election) e gerenciamento de grupos (membership) necessitam de informações de estado dos processos envolvidos, portanto, do resultado da atividade dos detectores. Esses protocolos, geralmente, são usados como blocos básicos para a construção de outros algoritmos, serviços ou aplicações distribuídas tolerantes a falhas. Os detectores de defeitos, de forma prática, têm sido desenvolvidos com base em parâmetros funcionais de redes locais e não operam bem no contexto de sistemas distribuídos de larga escala e de redes de longa distância (WANs). Sistemas conectados por WANs, geralmente, oferecem um ambiente mais hostil do que as LANs e clusters, devido aos atrasos longos e variáveis e à maior probabilidade de ocorrência de defeitos de temporização (flutuações na latência de comunicação) e omissão (perdas de mensagens), impondo um desafio na concepção de mecanismos que detectem defeitos de forma completa, precisa e que atendam a requisitos de dependabilidade exigidos pelas aplicações. A detecção de defeitos, também, pode ser oferecida na forma de um serviço, podendo ser este serviço utilizado por diferentes aplicações, sem que estas necessitem agregar a implementação do detector em seus projetos. Neste trabalho, foram pesquisadas estratégias aplicáveis à organização e à comunicação entre módulos de detecção de defeitos, focando sistemas de larga escala que operem sobre WANs. Está sendo proposto um modelo de serviço configurável que opera sob demanda das aplicações, e utiliza uma organização hierárquica dos módulos detectores de defeitos. Com base nesse modelo, foi implementado e testado um protótipo, utilizando o framework de simulação Neko. Os testes avaliaram a utilização da estratégia hierárquica com base no tipo e número de mensagens trocadas pelo serviço durante sua operação. Os resultados mostraram que adotar a hierarquia em dois níveis (LAN e WAN) resulta em poucas mensagens adicionais de controle e significativa redução do número de mensagens trafegando entre redes locais. O serviço tirou proveito do conhecimento da topologia da rede e escalou bem, quando um número maior de máquinas foi utilizado. Adicionalmente, para ajustar dinamicamente a detecção aos atrasos impostos pelas WANs, foi utilizado o pacote de predição de timeout do AFDService. / The failure detection may be used as basis for the design of algorithms and distributed applications that need information about the state of distributed processes. The agreement problem among processes (consensus) is one of the fundamental problems in distributed computing as well as other protocols such as atomic broadcast, leader election and membership that also need information about involved processes and consequently need also the results from the failure detector activity. These protocols are generally used as basic blocks to design other algorithms, services or fault-tolerant distributed applications. The failure detectors, in practice, have been developed based on local network parameters; consequently they are not tuned for the context of large-scale distributed systems nor wide area networks (WANs). Systems interconnected by WANs generally are environments more adverse than LAN and traditional clusters, due to variable and long delays and more prone to timing and omission failures. A natural consequence is that it is challenging to develop mechanisms that can accurately detect failures and give the needed support for dependability requirements of the applications. The failure detection may also be offered as a service for the different applications, which do not need to include their own detectors in their design. In this work are investigated strategies previously defined and applied on the communication of failure detector modules, focusing the analysis on large scale systems on WANs. From this, we propose a configurable failure detection service model that works on demand of applications and adopts the hierarchical organization of failure detection modules. Based on this model, a prototype implementation has been developed and tested using Neko simulation framework. The tests evaluate the utilization of hierarchical strategy based on the type and number of messages exchanged by the service during its operation. The experiments show that the two-level (LAN and WAN) hierarchical structure adopted results in a few additional control messages and a significant reduction on the message traffic between local networks. The service uses the knowledge of the topology and scales well when many machines are used. Additionally, to dynamically adjust the delay imposed by WANs on time detection, the timeout prediction package of AFDService has been used.
Identifer | oai:union.ndltd.org:IBICT/oai:lume56.ufrgs.br:10183/11451 |
Date | January 2007 |
Creators | Balbinot, Jeysonn Isaac |
Contributors | Jansch-Porto, Ingrid Eleonora Schreiber |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Format | application/pdf |
Source | reponame:Biblioteca Digital de Teses e Dissertações da UFRGS, instname:Universidade Federal do Rio Grande do Sul, instacron:UFRGS |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0023 seconds