Abstract
An increasing number of applications are being developed using Distributed Object Computing (DOC) middleware, such as CORBA. Many of these applications require the underlying middleware, operating systems, and networks to provide dependable end-to-end Quality of Service (QoS) support to enhance their efficiency, predictability, scalability, and reliability. The Object Management Group (OMG), which standardizes CORBA, has addressed many of these application requirements individually in the Real-Time CORBA (RT-CORBA) and Fault-Tolerant CORBA (FT-CORBA) specifications. Though the implementations of RT-CORBA are suitable for mission-critical commercial or military distributed Real-Time and Embedded (DRE) systems, the usage of FT-CORBA with RT-CORBA implementations are not yet suitable for systems that have stringent simultaneous dependability and predictability requirements.
This paper provides three contributions to the study and evaluation of dependable CORBA middleware for performance-sensitive DRE systems. First, we provide an overview of FT-CORBA and illustrate the sources of unpredictability associated with conventional FT-CORBA implementations. Second, we discuss the QoS requirements of an important class of mission-critical DRE systems to show how these requirements are not well served by FT-CORBA today. Finally, we empirically evaluate new dependability strategies for FT-CORBA that can help make the use of DOC middleware for mission-critical DRE systems a reality.
Similar content being viewed by others
References
Object Management Group, The Common Object Request Broker: Ar-chitecture and Specification, 3.0 edn. (June 2002).
M. Henning and S. Vinoski, Advanced CORBA Programming with C++(Addison-Wesley, Reading, MA, 1999).
Object Management Group, Real-Time CORBA Specification, 1.1 edn. (August 2002).
D.C. Schmidt and F. Kuhns, An overview of the real-time CORBA specification, IEEE Computer Magazine, Special Issue on Object-Oriented Real-Time Computing 33(6) (2000).
D.C. Schmidt et al., TAO: A pattern-oriented object request broker for distributed real-time and embedded systems, IEEE Distributed Systems Online 3(2) (2002).
R. Callison, M. Goo and D. Butler, Real-time CORBA trade study, Tech. report D204-31159, The Boeing Company (1999).
D. Corman, WSOA-weapon systems open architecture demonstration-using emerging open system architecture standards to enable innovative techniques for time critical target (TCT) prosecution, in: Proceedings of the 20th IEEE/AIAA Digital Avionics Systems Conference (DASC) (October 2001).
C. O'Ryan, D.C. Schmidt, F. Kuhns, M. Spivak, J. Parsons, I. Pyarali and D. Levine, Evaluating policies and mechanisms for supporting em-bedded, real-time applications with CORBA 3.0, in: Proceedings of the 6th IEEE Real-Time Technology and Applications Symposium, IEEE, Washington, DC (May 2000).
T.H. Harrison, D.L. Levine and D.C. Schmidt, The design and perfor-mance of a real-time CORBA event service, in: Proceedings of OOP-SLA '97, ACM, Atlanta, GA (October 1997) pp. 184–199.
P. Narasimhan, Transparent fault tolerance for CORBA, Ph.D. thesis, Available as Technical report UCSB 99-18, University of California, Department of Electrical and Computer Engineering, Santa Barbara, CA (December 1999).
K. Birman and R. van Renesse, Reliable Distributed Computing with the Isis Toolkit (IEEE Computer Society Press, Los Alamitos, 1994).
S. Maffeis, Adding group communication and fault-tolerance to CORBA, in: Proceedings of the Conference on Object-Oriented Tech-nologies, USENIX, Monterey, CA (June 1995).
D.C. Schmidt, M. Stal, H. Rohnert and F. Buschmann, Pattern-Oriented Software Architecture: Patterns for Concurrent and Net-worked Objects, Vol. 2 (Wiley, New York, 2000).
P. Narasimhan, L.E. Moser and P.M. Melliar-Smith, Using Interceptors to Enhance CORBA, IEEE Computer 32(7) (1999) 64–68.
M. Cukier, J. Ren, C. Sabnis, W.H. Sanders, D.E. Bakken, M.E. Ber-man, D.A. Karr and R.E. Schantz, AQuA: An adaptive architecture that provides dependable distributed objects, in: IEEE Symposium on Re-liable and Distributed Systems (SRDS), West Lafayette, IN (October 1998) pp. 245–253.
P.Y. Chung, Y. Huang, S. Yajnik, D. Liang and C.Y. Shih, Providing fault tolerance to CORBA applications, in: Poster at Middleware '98, Lake District, England (September 1998).
B. Natarajan, A. Gokhale, D.C. Schmidt and S. Yajnik, DOORS: To-wards high-performance fault-tolerant CORBA, in: Proceedings of the 2nd International Symposium on Distributed Objects and Applications (DOA 2000), OMG, Antwerp, Belgium (September 2000)
B. Natarajan, A. Gokhale, D.C. Schmidt and S. Yajnik, Applying pat-terns to improve the performance of fault-tolerant CORBA, in: Pro-ceedings of the 7th International Conference on High Performance Computing (HiPC 2000), ACM/IEEE, Bangalore, India (December 2000).
P. Felber, R. Guerraoui and A. Schiper, The implementation of a CORBA object group service, Theory and Practice of Object Systems (TAPOS) 4(2) (1998) 93–105.
P.D. Ezhilchelvan, R.A. Macedo and S.K. Shrivastava, NewTop: A fault-tolerant group communication protocol, in: International Con-ference on Distributed Computing Systems (1995) pp. 296–306.
C. Marchetti, A. Virgillito and R. Baldoni, Design of an interoperable FT-CORBA compilant infrastructure, in: Proceedings of the 6th Inter-national Workshop on Object Oriented Real-Time Dependable Systems (WORDS'01), Rome, Italy (January 2001).
J.-C. Fabre and T. Perennou, Friends-a flexible architecture for implementing fault tolerant and secure distributed applications, in: European Dependable Computing Conference (1996) pp. 3–20.
J.K. Cross and D.C. Schmidt, Applying the quality connector pattern to optimize distributed real-time and embedded middleware, in: Patterns and Skeletons for Distributed and Parallel Computing, eds. F. Rabhi and S. Gorlatch (Springer, Berlin, 2002).
E. Gamma, R. Helm, R. Johnson and J. Vlissides, Design Patterns: El-ements of Reusable Object-Oriented Software (Addison-Wesley, Read-ing, MA, 1995).
D.C. Schmidt, D.L. Levine and S. Mungee, The design and perfor-mance of real-time object request brokers, Computer Communications 21(4) (1998) 294–324.
C.D. Gill, D.L. Levine and D.C. Schmidt, The design and performance of a real-time CORBA scheduling service, Real-Time Systems, The In-ternational Journal of Time-Critical Computing Systems, Special Issue on Real-Time Middleware 20(2) (March 2001).
F. Kuhns, D.C. Schmidt and D.L. Levine, The design and perfor-mance of a real-time I/O subsystem, in: Proceedings of the 5th IEEE Real-Time Technology and Applications Symposium, IEEE, Vancouver, British Columbia, Canada (June 1999) pp. 154–163.
C. O'Ryan, F. Kuhns, D.C. Schmidt, O. Othman and J. Parsons, The design and performance of a pluggable protocols framework for real-time distributed object computing middleware, in: Proceedings of the Middleware 2000 Conference, ACM/IFIP (April 2000).
D.C. Schmidt, S. Mungee, S. Flores-Gaitan and A. Gokhale, Software architectures for reducing priority inversion and non-determinism in real-time object request brokers, Journal of Real-Time Systems, Special issue on Real-Time Computing in the Age of the Web and the Internet 21(2) (2001).
A.B. Arulanthu, C. O'Ryan, D.C. Schmidt, M. Kircher and J. Par-sons, The design and performance of a scalable ORB architecture for CORBA asynchronous messaging, in: Proceedings of the Middleware 2000 Conference, ACM/IFIP (April 2000).
A. Gokhale and D.C. Schmidt, Measuring the performance of commu-nication middleware on high-speed networks, in: Proceedings of SIG-COMM '96, ACM, Stanford, CA (August 1996) pp. 306–317.
I. Pyarali, C. O'Ryan, D.C. Schmidt, N. Wang, V. Kachroo and A. Gok-hale, Applying optimization patterns to the design of real-time ORBs, in: Proceedings of the 5th Conference on Object-Oriented Technologies and Systems, USENIX, San Diego, CA (May 1999)
L.E. Moser, P.M. Melliar-Smith, D.A. Agarwal, R.K. Budhia and C.A. Lingley-Papadopoulos, Totem: A fault-tolerant multicast group com-munication system, Communications of ACM (1996).
A. Vaysburd and K. Birman, The maestro approach to building reliable interoperable distributed applications with multiple execution styles, Theory and Practice of Object Systems (TAPOS) 4(2) (1998) 73–80.
S. Poledna, A. Burns, A.J. Wellings and P. Barrett, Replica determinism and flexible scheduling in hard real-time dependable systems, IEEE Transactions on Computers 49(2) (2000) 100–111.
P. Barrett, A. Hilborne, P. Bond, D. Seaton, P. Verissimo, L. Rodrigues and N. Speirs, The Delta-4 extra performance architecture (XPA), in: Proceedings of the 20th International Symposium on Fault-Tolerant Computing Systems (FTCS-20) (1990).
K. Kim and C. Subbaraman, PSRR: A scheme for time-bounded fault tolerance in distributed object-based systems, in: Proc. IEEE High-Assurance Systems Engineering (HASE) Workshop, IEEE, Ontario, Canada (October 1996).
K. Kim and C. Subbaraman, Fault-tolerant real-time objects, Commu-nications of the ACM (January 1997).
L. Rodrigues, A. Casimiro and P. Verissimo, Priority-based totally or-dered multicast, in: Proceedings of the 3rd IFAC/IFIP Workshop on Al-gorithms and Architectures for Real-Time Control (AARTC'95) (May 1995).
D.C. Schmidt and S.D. Huston, C++Network Programming,Vol.1, Mastering Complexity with ACE and Patterns (Addison-Wesley, Boston, 2002).
D.C. Schmidt and S.D. Huston, C++Network Programming,Vol.2, Systematic Reuse with ACE and Frameworks (Addison-Wesley, Read-ing, MA, 2002).
G. Thaker, P. Lardieri and Ch. Winters, SCTP and its adaptation to TAO, i n: Proceedings of the 2nd Annual TAO Workshop (July 2002).
VITA Standards Organization, Myrinet-on-VME Protocol Specifica-tion Draft Standard; http://www.myri.com/open-specs (2000).
D.C. Sharp, Reducing avionics software cost through component based product line development, in: Proceedings of the 10th Annual Software Technology Conference (April 1998).
C. O'Ryan, D.C. Schmidt and J.R. Noseworthy, Patterns and perfor-mance of a CORBA event service for large-scale distributed interactive simulations, International Journal of Computer Systems Science and Engineering 17(2) (March 2002).
G. Parulkar, D.C. Schmidt, E. Kraemer, J. Turner and A. Kantawala, An architecture for monitoring, visualization, and control and gigabit networks, IEEE Network 11(5) (September/October 1997).
S. Landis and S. Maffeis, Building reliable distributed systems with CORBA, Theory and Practice of Object Systems 3(1) (1997) 31–43.
L. Moser, P. Melliar-Smith and P. Narasimhan, A fault tolerance frame-work for CORBA, in: International Symposium on Fault Tolerant Com-puting, Madison, WI (June 1999) pp. 150–157.
J.A. Zinky, D.E. Bakken and R. Schantz, Architectural support for qual-ity of service for CORBA Objects, Theory and Practice of Object Sys-tems 3(1) (1997) 1–20.
W3C HTTP-NG Working Group, W3C HTTP-NG Protocol, www.w3. org/Protocols/HTTP-NG (1998).
T. Wolf and A. Strohmeier, Fault tolerance by transparent replica-tion for distributed Ada 95, in: International Conference on Reliable Software Technologies-Ada-Europe'99, Santander, Spain, 7-11 June 1999, No. 1622, eds. M.G. Harbour and J.A. de la Puente (Springer, Berlin, 1999) pp. 412–424.
X. Defago, A. Schiper and N. Sergent, Semi-passive replication, in: Proceedings of the 17th IEEE Symposium on Reliable Distributed Sys-tems (IEEE Computer Society Press, Los Alamitos, CA, 1998) pp. 43–50.
K. Kim and C. Subbaraman, Principles of constructing a timeliness-guaranteed kernel and time-triggered message-triggered object sup-port mechanisms, in: Proceedings of the International Sympo-sium on Object-Oriented Real-Time Distributed Computing (ISORC) (IEEE/IFIP, April 1998).
K. Kim, APIs enabling high-level real-time distributed object program-ming, IEEE Computer Magazine, Special Issue on Object-Oriented Real-Time Computing (June 2000).
K. Kim, Issues insufficiently resolved in century 20 in the fault-tolerant distributed computing field, in: Proceedings of Symposium on Reliable Distributed Systems (IEEE Computer Society Press, Los Alamitos, CA, 2000).
M. Castro and B. Liskov, Practical byzantine fault tolerance, in: Pro-ceedings of the 3rd Symposium on Operating Systems Design and Im-plementation (February 1999).
Rights and permissions
About this article
Cite this article
Gokhale, A.S., Natarajan, B., Schmidt, D.C. et al. Towards Real-Time Fault-Tolerant CORBA Middleware. Cluster Computing 7, 331–346 (2004). https://doi.org/10.1023/B:CLUS.0000039493.73008.13
Issue Date:
DOI: https://doi.org/10.1023/B:CLUS.0000039493.73008.13