scispace - formally typeset
Open Access

The corba object group service: a service approach to object groups in corba

Pascal Felber
Reads0
Chats0
TLDR
This thesis contributes to ongoing standardization e orts that aim to support fault tolerance in CORBA, using entity redundancy by proposing a system model and an open architecture to add support for object groups to the CORBA middleware environment.
Abstract
Distributed computing is one of the major trends in the computer industry. As systems become more distributed, they also become more complex and have to deal with new kinds of problems, such as partial crashes and link failures. To answer the growing demand in distributed technologies, several middleware environments have emerged during the last few years. These environments however lack support for \one-to-many" communication primitives; such primitives greatly simplify the development of several types of applications that have requirements for high availability, fault tolerance, parallel processing, or collaborative work. One-to-many interactions can be provided by group communication. It manages groups of objects and provides primitives for sending messages to all members of a group, with various reliability and ordering guarantees. A group constitutes a logical addressing facility: messages can be issued to a group without having to know the number, identity, or location of individual members. The notion of group has proven to be very useful for providing high availability through replication: a set of replicas constitutes a group, but are viewed by clients as a single entity in the system. This thesis aims at studying and proposing solutions to the problem of object group support in object-based middleware environments. It surveys and evaluates di erent approaches to this problem. Based on this evaluation, we propose a system model and an open architecture to add support for object groups to the CORBA middleware environment. In doing so, we provide the application developer with powerful group primitives in the context of a standard object-based environment. This thesis contributes to ongoing standardization e orts that aim to support fault tolerance in CORBA, using entity redundancy. The group architecture proposed in this thesis | the Object Group Service (OGS) | is based on the concept of component integration. It consists of several distinct components that provide various facilities for reliable distributed computing and that are reusable in isolation. Group support is ultimately provided by combining these components. OGS de nes an object-oriented framework of CORBA components for reliable distributed systems. The OGS components include a group membership service, which keeps track of the composition of object groups, a group multicast service, which provides delivery of messages to all group members, a consensus service, which allows several CORBA objects to resolve distributed agreement problems, and a monitoring service, which provides distributed failure detection mechanisms. OGS includes support for dynamic group membership and for group multicast with various reliability and ordering guarantees. It de nes interfaces for active and primary-backup replication. In addition, OGS proposes several execution styles and various levels of transparency. A prototype implementation of OGS has been realized in the context of this thesis. This implementation is available for two commercial ORBs (Orbix and VisiBroker). It relies solely on the CORBA speci cation, and is thus portable to any compliant ORB. Although the main theme of this thesis deals with system architecture, we have developed some original algorithms to implement group support in OGS. We analyze these algorithms and implementation choices in this dissertation, and we evaluate them in terms of e ciency. We also illustrate the use of OGS through example applications.

read more

Citations
More filters
Journal ArticleDOI

Comparative analysis of quality of service and memory usage for adaptive failure detectors in healthcare systems

TL;DR: This paper proposes one optimization over the existing methods, called tuning adaptive margin failure detector (TAM FD), which significantly improves QoS, especially in the aggressive range and when the network is unstable.
Proceedings ArticleDOI

Improving fault-tolerance by replicating agents

TL;DR: This paper examines the use of transparent agent replication, a technique in which the replicates of agents appear and act as one entity thus avoiding an increase in system complexity and minimizing additional system loads.
Journal ArticleDOI

Experiences, strategies, and challenges in building fault-tolerant CORBA systems

TL;DR: The objective is to reveal the intricacies, challenges, and strategies in developing fault-tolerant CORBA systems, including the authors' own, as well as some of the open issues, such as nondeterminism and partitioning, that remain to be resolved.
Proceedings ArticleDOI

A Self-tuning Failure Detection Scheme for Cloud Computing Service

TL;DR: Experimental results demonstrate that the proposed SFD scheme can automatically adjust SFD control parameters to obtain corresponding services and satisfy user requirements, while maintaining good performance.
Book ChapterDOI

Design and implemantation of a CORBA fault-tolerant object group service

TL;DR: The design and implementation of a CORBA middleware service for managing object groups is described, both dynamic and fault-tolerant: ordering and liveness is preserved even if membership changes occur due to member failures, voluntary member departures and new group formations.
References
More filters
Book

Design Patterns: Elements of Reusable Object-Oriented Software

TL;DR: The book is an introduction to the idea of design patterns in software engineering, and a catalog of twenty-three common patterns, which most experienced OOP designers will find out they've known about patterns all along.
Book

The C++ Programming Language

TL;DR: Bjarne Stroustrup makes C even more accessible to those new to the language, while adding advanced information and techniques that even expert C programmers will find invaluable.
Journal ArticleDOI

Impossibility of distributed consensus with one faulty process

TL;DR: In this paper, it is shown that every protocol for this problem has the possibility of nontermination, even with only one faulty process.
Book

Smalltalk-80: The Language and its Implementation

TL;DR: This book is the first detailed account of the Smalltalk-80 system and is divided into four major parts: an overview of the concepts and syntax of the programming language, a specification of the system's functionality, and an example of the design and implementation of a moderate-size application.
Journal ArticleDOI

Linearizability: a correctness condition for concurrent objects

TL;DR: This paper defines linearizability, compares it to other correctness conditions, presents and demonstrates a method for proving the correctness of implementations, and shows how to reason about concurrent objects, given they are linearizable.
Related Papers (5)