47 research outputs found

    The GARF Library of DSM Consistency Models

    No full text
    Rachid Guerraoui, Benoit Garbinato, Karim R. Mazouni D'epartement d'Informatique Ecole Polytechnique F'ed'erale de Lausanne CH-1015, Suisse e-mail: [email protected] GARF is an object-oriented system intended to support high level and modular programming of reliable distributed applications. GARF provides a distributed shared memory abstraction, but does not enforce any particular consistency criterion. GARF rather offers an extensible library of consistency criteria. The programmer can bind a specific criterion to each object, according to its use and semantics. This flexible approach enables to increase availability of objects of which behaviors do not require strong consistency guarantees. 1 Introduction Shared memory is an attractive programming paradigm to represent communication among distributed computing entities. It has been widely used for many years, and is at a higher abstraction level than the message passing paradigm. Providing the shared memory abstraction on top of..

    Tuple Space Middleware for Wireless Networks

    No full text
    Wireless networks define a very challenging scenario for the application programmer. Indeed, the fluidity inherent in the wireless media cannot be entirely masked at the communication layer: issues such as disconnection and a continuously changing execution context most often must be dealt with according to the application logic. Appropriate abstractions, usually provided as part of a middleware, are therefore required to support and simplify the programming task

    Flexible Protocol Composition in Bast

    No full text
    This paper presents Bast, an object-oriented library of reliable distributed protocols. We show how Bast can be used to build fault-tolerant distributed applications, and how new protocols can be added to it. We discuss some distributed protocol design issues and the way these issues are circumvented in Bast. We briefly describe our Smalltalk and Java implementations of Bast, together with some performance results. 1 Introduction Reliable distributed applications are challenging to build, because programmers have to deal with many complex issues, e.g., reliable communication, failure detection, replication management, transaction management, etc. Each of these issues actually corresponds to a distributed problem to solve, and programmers have to face a distributed problems "jungle" (Figure 1) to choose the right protocol for the right problem, or to compose existing protocols and make them work together. Bast 1 is an extensible object-oriented library of reliable distributed pr..

    Abstract Using the Strategy Design Pattern to Compose Reliable Distributed Protocols

    No full text
    Reliable distributed systems involve many complex protocols. In this context, protocol composition is a central concept, because it allows the reuse of robust protocol implementations. In this paper, we describe how the Strategy pattern has been recursively used to support protocol composition in the BAST framework. We also discuss design alternatives that have been applied in other existing frameworks.

    Using the Strategy Design Pattern to Compose Reliable Distributed Protocols

    No full text
    Reliable distributed systems involve many complex protocols. In this context, protocol composition is a central concept, because it allows the reuse of robust protocol implementations. In this paper, we describe how the Strategy pattern has been recursively used to support protocol composition in the BAST framework. We also discuss design alternatives that have been applied in other existing frameworks. 1 Introduction This paper presents how the Strategy pattern has been used to build BAST 1 , an extensible objectoriented framework for programming reliable distributed systems. Protocol composition plays a central role in BAST and relies on the notion of protocol class. In this paper, we focus on the recursive use of the Strategy pattern to overcome the limitations of inheritance, when trying to flexibly compose protocols. In a companion paper [6], we have presented how generic agreement protocol classes can be customized to solve atomic commitment [10] and total order multicast [20..
    corecore