Synchronizing clocks in the presence of faults
Journal of the ACM (JACM)
Clock synchronization in distributed real-time systems
IEEE Transactions on Computers - Special Issue on Real-Time Systems
A new fault-tolerant algorithm for clock synchronization
Information and Computation
The Consistent Comparison Problem in N-Version Software
IEEE Transactions on Software Engineering
Hardware-Assisted Software Clock Synchronization for Homogeneous Distributed Systems
IEEE Transactions on Computers
Implementing fault-tolerant services using the state machine approach: a tutorial
ACM Computing Surveys (CSUR)
A new and improved algorithm for fault-tolerant clock synchronization
Journal of Parallel and Distributed Computing
Consistent object replication in the eternal system
Theory and Practice of Object Systems - Special issue high availability in CORBA
The implementation of a CORBA object group service
Theory and Practice of Object Systems - Special issue high availability in CORBA
Practical Byzantine fault tolerance
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Inexact agreement: accuracy, precision, and graceful degradation
Proceedings of the fourth annual ACM symposium on Principles of distributed computing
Intrusion detection systems and multisensor data fusion
Communications of the ACM
System architecture directions for networked sensors
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
Multisensor Data Fusion
The Rampart Toolkit for Building High-Integrity Services
Selected Papers from the International Workshop on Theory and Practice in Distributed Systems
QoS Aspect Languages and Their Runtime Integration
LCR '98 Selected Papers from the 4th International Workshop on Languages, Compilers, and Run-Time Systems for Scalable Computers
Consensus service: a modular approach for building agreement protocols in distributed systems
FTCS '96 Proceedings of the The Twenty-Sixth Annual International Symposium on Fault-Tolerant Computing (FTCS '96)
AQuA: An Adaptive Architecture that Provides Dependable Distributed Objects
SRDS '98 Proceedings of the The 17th IEEE Symposium on Reliable Distributed Systems
An Object-level Gateway Supporting Integrated-Property Quality of Service
ISORC '99 Proceedings of the 2nd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
Providing Support for Survivable CORBA Applications with the Immune System
ICDCS '99 Proceedings of the 19th IEEE International Conference on Distributed Computing Systems
The N-Version Approach to Fault-Tolerant Software
IEEE Transactions on Software Engineering
The design of the TAO real-time object request broker
Computer Communications
Building a dependable system from a legacy application with CORBA
Journal of Systems Architecture: the EUROMICRO Journal
Implementing a CORBA-Based Architecture for Leveraging the Security Level of Existing Applications
On the Move to Meaningful Internet Systems, 2002 - DOA/CoopIS/ODBASE 2002 Confederated International Conferences DOA, CoopIS and ODBASE 2002
Effective Fault Treatment for Improving the Dependability of COTS and Legacy-Based Applications
IEEE Transactions on Dependable and Secure Computing
Flexible intrusion tolerant voting architecture
Proceedings of the 2007 ACM workshop on Scalable trusted computing
Experiences in engineering active replication into a traditional three-tiered client-server system
Proceedings of the 2008 RISE/EFTS Joint International Workshop on Software Engineering for Resilient Systems
Future directions in distributed computing
Hi-index | 0.00 |
Abstract: Middleware is a class of software systems above the operating system which is becoming widely used for programming distributed systems. Voting is a fundamental operation when distributed systems involve replicated components. However, support for voting in middleware is very limited. This paper describes issues involved with supporting voting, and more general data fusion, in middleware. We describe the Voting Virtual Machine (VVM) architecture, which can be embedded in different middleware substrates such as .NET and CORBA. We also describe its companion Voting Definition Language (VDL), which allows for portable description of voting algorithms. The VVM and VDL, together with the external VVM voting manager, provide for voting transparency and adaptive voting. Finally, we describe how the simple "byte-by-byte" value comparison schemes used in other voting middleware as well as in byzantine fault tolerant multicast systems do not work in the face of the heterogeneity inherent in distributed systems.