6 research outputs found

    Un sistema distribuido tolerante a fallas basado en protocolos de membresía y difusión atómica

    Get PDF
    Los sistemas distribuidos tolerantes a fallas típicamente utilizan alguna estrategia de replicación de servicios en diferentes nodos, a fin de que poder sobrevivir a la caída de alguno de ellos. A fin de simplificar la programación de tales sistemas se considera que los procesadores forman un grupo, y se utiliza entonces un servicio de membresía grupal y un servicio de difusión atómica. El servicio de membresía grupal brinda acuerdo sobre los grupos de servidores que han prestado un determinado servicio a lo largo del tiempo, mientras que el servicio de difusión atómica brinda acuerdo sobre el historial de actualizaciones de estado aplicadas en tales grupos. El presente trabajo describe la implementación de un sistema distribuido tolerante a fallas, a partir de un equipo de computadoras conectadas en red. A fin de asegurar la consistencia entre réplicas, solamente se permite aplicar actualizaciones dentro de grupos mayoritarios completos. El servicio de membresía grupal se encarga de construir el historial de grupos mayoritarios completos, a fin de detectar si el mismo u otro nodo ha estado separado (particionado) de dicho historial, y tomar las medidas pertinentes.Eje: Sistemas distribuidos y paralelismoRed de Universidades con Carreras en Informática (RedUNCI

    Un sistema distribuido tolerante a fallas basado en protocolos de membresía y difusión atómica

    Get PDF
    Los sistemas distribuidos tolerantes a fallas típicamente utilizan alguna estrategia de replicación de servicios en diferentes nodos, a fin de que poder sobrevivir a la caída de alguno de ellos. A fin de simplificar la programación de tales sistemas se considera que los procesadores forman un grupo, y se utiliza entonces un servicio de membresía grupal y un servicio de difusión atómica. El servicio de membresía grupal brinda acuerdo sobre los grupos de servidores que han prestado un determinado servicio a lo largo del tiempo, mientras que el servicio de difusión atómica brinda acuerdo sobre el historial de actualizaciones de estado aplicadas en tales grupos. El presente trabajo describe la implementación de un sistema distribuido tolerante a fallas, a partir de un equipo de computadoras conectadas en red. A fin de asegurar la consistencia entre réplicas, solamente se permite aplicar actualizaciones dentro de grupos mayoritarios completos. El servicio de membresía grupal se encarga de construir el historial de grupos mayoritarios completos, a fin de detectar si el mismo u otro nodo ha estado separado (particionado) de dicho historial, y tomar las medidas pertinentes.Eje: Sistemas distribuidos y paralelismoRed de Universidades con Carreras en Informática (RedUNCI

    Relying on Safe Distance to Achieve Strong Partitionable Group Membership in Ad Hoc Networks

    Get PDF
    The design of ad hoc mobile applications often requires the availability of a consistent view of the application state among the participating hosts. Such views are important because they simplify both the programming and verification tasks. We argue that preventing the occurrence of unannounced disconnection is essential to constructing and maintaining a consistent view in the ad hoc mobile environment. In this light, we provide the specification for a partitionable group membership service supporting ad hoc mobile applications and propose a protocol for implementing the service. A unique property of this partitionable group membership is that messages sent between group members are guaranteed to be delivered successfully, given appropriate system assumptions. This property is preserved over time despite movement and frequent disconnections. The protocol splits and merges groups and maintains a logical connectivity graph based on a notion of safe-distance. An implementation of the protocol in Java is available for testing. The implementation is used to implement Lime 1, a middleware for mobility that supports transparent sharing of data in both wired and ad hoc wireless environments

    Rigorous Design of Distributed Transactions

    No full text
    Database replication is traditionally envisaged as a way of increasing fault-tolerance and availability. It is advantageous to replicate the data when transaction workload is predominantly read-only. However, updating replicated data within a transactional framework is a complex affair due to failures and race conditions among conflicting transactions. This thesis investigates various mechanisms for the management of replicas in a large distributed system, formalizing and reasoning about the behavior of such systems using Event-B. We begin by studying current approaches for the management of replicated data and explore the use of broadcast primitives for processing transactions. Subsequently, we outline how a refinement based approach can be used for the development of a reliable replicated database system that ensures atomic commitment of distributed transactions using ordered broadcasts. Event-B is a formal technique that consists of describing rigorously the problem in an abstract model, introducing solutions or design details in refinement steps to obtain more concrete specifications, and verifying that the proposed solutions are correct. This technique requires the discharge of proof obligations for consistency checking and refinement checking. The B tools provide significant automated proof support for generation of the proof obligations and discharging them. The majority of the proof obligations are proved by the automatic prover of the tools. However, some complex proof obligations require interaction with the interactive prover. These proof obligations also help discover new system invariants. The proof obligations and the invariants help us to understand the complexity of the problem and the correctness of the solutions. They also provide a clear insight into the system and enhance our understanding of why a design decision should work. The objective of the research is to demonstrate a technique for the incremental construction of formal models of distributed systems and reasoning about them, to develop the technique for the discovery of gluing invariants due to prover failure to automatically discharge a proof obligation and to develop guidelines for verification of distributed algorithms using the technique of abstraction and refinement

    Rigorous design of distributed transactions

    Get PDF
    Database replication is traditionally envisaged as a way of increasing fault-tolerance and availability. It is advantageous to replicate the data when transaction workload is predominantly read-only. However, updating replicated data within a transactional framework is a complex affair due to failures and race conditions among conflicting transactions. This thesis investigates various mechanisms for the management of replicas in a large distributed system, formalizing and reasoning about the behavior of such systems using Event-B. We begin by studying current approaches for the management of replicated data and explore the use of broadcast primitives for processing transactions. Subsequently, we outline how a refinement based approach can be used for the development of a reliable replicated database system that ensures atomic commitment of distributed transactions using ordered broadcasts. Event-B is a formal technique that consists of describing rigorously the problem in an abstract model, introducing solutions or design details in refinement steps to obtain more concrete specifications, and verifying that the proposed solutions are correct. This technique requires the discharge of proof obligations for consistency checking and refinement checking. The B tools provide significant automated proof support for generation of the proof obligations and discharging them. The majority of the proof obligations are proved by the automatic prover of the tools. However, some complex proof obligations require interaction with the interactive prover. These proof obligations also help discover new system invariants. The proof obligations and the invariants help us to understand the complexity of the problem and the correctness of the solutions. They also provide a clear insight into the system and enhance our understanding of why a design decision should work. The objective of the research is to demonstrate a technique for the incremental construction of formal models of distributed systems and reasoning about them, to develop the technique for the discovery of gluing invariants due to prover failure to automatically discharge a proof obligation and to develop guidelines for verification of distributed algorithms using the technique of abstraction and refinement.EThOS - Electronic Theses Online ServiceGBUnited Kingdo
    corecore