EVA: an event-based framework for developing specialised communication protocols

Presents a framework for the development of higher level communication protocols that provides extra functionalities not supplied by standard off-the-shelf lower level communication protocols. The framework is based on the event channel abstraction which allows circumventing the main drawbacks of the layered-based approach traditionally used to develop such protocols, whilst at the same time providing a flexible, simple and well structured way to implement them. The event channel service provided by EVA establishes how entities that share the same address space interact. Then, the application designer has the opportunity to define the most appropriate lower level communication protocols that control the way entities that execute within different processes will interact. The framework specifies a way to accommodate these protocols and provides several standard protocol implementations. Further a development methodology is described for constructing applications on top of the framework. In designing the framework, we have followed the approach of using, whenever possible, well established concepts, thus the paper also discusses the utilisation of such concepts in improving both the efficiency and the structuring of the framework and of the applications to be built on top of it.

[1]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[2]  Michel Raynal,et al.  Group membership failure detection: a simple protocol and its probabilistic analysis , 1999, Distributed Syst. Eng..

[3]  Shivakant Mishra,et al.  Design, implementation and performance evaluation of a CORBA group communication service , 1999, Digest of Papers. Twenty-Ninth Annual International Symposium on Fault-Tolerant Computing (Cat. No.99CB36352).

[4]  Matti A. Hiltunen,et al.  Coyote: a system for constructing fine-grain configurable communication services , 1998, TOCS.

[5]  Patrick Th. Eugster,et al.  Distributed Asynchronous Collections: Abstractions for Publish/Subscribe Interaction , 2000, ECOOP.

[6]  Paul D. Ezhilchelvan,et al.  TMR processing without explicit clock synchronisation , 1995, Proceedings. 14th Symposium on Reliable Distributed Systems.

[7]  Sam Toueg,et al.  Unreliable failure detectors for reliable distributed systems , 1996, JACM.

[8]  Ulrik Pagh Schultz,et al.  Towards Automatic Specialization of Java Programs , 1999, ECOOP.

[9]  Douglas C. Schmidt,et al.  The ADAPTIVE Communication Environment An Object-Oriented Network Programming Toolkit for Developing Communication Software , 1993 .

[10]  Michel Raynal,et al.  Primary component asynchronous group membership as an instance of a generic agreement framework , 2001, Proceedings 5th International Symposium on Autonomous Decentralized Systems.

[11]  Mark Garland Hayden,et al.  The Ensemble System , 1998 .

[12]  Louise E. Moser,et al.  Totem: a fault-tolerant multicast group communication system , 1996, CACM.

[13]  Christoph Kreitz,et al.  Building reliable, high-performance communication systems from components , 2000, OPSR.

[14]  Rachid Guerraoui,et al.  Flexible protocol composition in BAST , 1998, Proceedings. 18th International Conference on Distributed Computing Systems (Cat. No.98CB36183).

[15]  Raimundo José de Araújo Macêdo,et al.  A general framework to solve agreement problems , 1999, Proceedings of the 18th IEEE Symposium on Reliable Distributed Systems.

[16]  David Powell,et al.  Group communication , 1996, CACM.

[17]  Christoph Peter Malloth,et al.  Conception and implementation of a toolkit for building fault-tolerant distributed applications in large scale networks , 1996 .

[18]  Dale Skeen,et al.  The Information Bus: an architecture for extensible distributed systems , 1994, SOSP '93.

[19]  Vinny Cahill,et al.  An Event Based Object Model for Distributed Programming , 1995, OOIS.

[20]  Larry L. Peterson,et al.  The x-Kernel: An Architecture for Implementing Network Protocols , 1991, IEEE Trans. Software Eng..

[21]  Raghu V. Hudli,et al.  CORBA fundamentals and programming , 1996 .

[22]  Douglas C. Schmidt,et al.  The design and performance of a real-time CORBA event service , 1997, OOPSLA '97.

[23]  Suchitra Gupta,et al.  Event notifier: a pattern for event notification , 2000 .

[24]  Robbert van Renesse,et al.  Horus: a flexible group communication system , 1996, CACM.

[25]  Achour Mostéfaoui,et al.  Consensus in asynchronous systems where processes can crash and recover , 1998, Proceedings Seventeenth IEEE Symposium on Reliable Distributed Systems (Cat. No.98CB36281).