Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

A survey on standards for real-time distribution middleware

Published: 01 March 2014 Publication History

Abstract

This survey covers distribution standards oriented to the development of distributed real-time systems. Currently, there are many distribution standards that provide a wide and different set of real-time facilities to control the temporal aspects of applications. Besides giving a general overview of these standards, we describe the real-time mechanisms proposed by each standard to manage both processor and network resources, discuss whether the available facilities are sufficient to guarantee determinism throughout the whole application, and identify a set of features and deployment options that would be desirable in any real-time distribution middleware regardless of its distribution model and standard. The survey identifies open issues and key challenges for future research.

References

[1]
M. Aldea, G. Bernat, I. Broster, A. Burns, R. Dobrin, J. M. Drake, G. Fohler, P. Gai, M. González Harbour, G. Guidi, J. J. Gutiérrez, T. Lennvall, G. Lipari, J. M. Martínez, J. L. Medina, J. C. P. Gutiérrez, and M. Trimarchi. 2006. FSF: A real-time scheduling architecture framework. In Proceedings of the IEEE Real Time Technology and Applications Symposium. 113--124.
[2]
Altran Praxis. 2011. SPARK—the SPADE Ada Kernel (including RavenSPARK), Edition 7.2.
[3]
M. Amoretti, S. Caselli, and M. Reggiani. 2006. Designing distributed, component-based systems for industrial robotic applications. In Industrial Robotics: Programming, Simulation and Applications, Low Kin Huat (Ed.). ISBN: 3-86611-286-6, InTech.
[4]
J. S. Anderson and E. D. Jensen. 2006. Distributed real-time specification for Java: A status report (digest). In Proceedings of the 4th International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES’06). ACM, New York, NY, 3--9.
[5]
ARINC. ARINC Specification 653p1. 2006. Avionics application software standard interface (ARINC-653).
[6]
ARINC. ARINC Specification 664p7. 2009. Aircraft data network, part 7—Avionics Full Duplex Switched Ethernet (AFDX) network.
[7]
N. Audsley and A. Wellings. 2001. Issues with using Ravenscar and the Ada Distributed Systems Annex for high-integrity systems. Ada Letters XXI, 33--39.
[8]
T. P. Baker, 1991. Stack-based scheduling for realtime processes. Real-Time Systems 3, 67--99.
[9]
J. Bard and V. J. Kovarik. 2007. Software Defined Radio: The Software Communications Architecture. Wiley-Blackwell. ISBN: 0-47086-518-0.
[10]
P. Basanta-Val, M. García-Valls, and I. Estévez-Ayres. 2010. An architecture for distributed real-time Java based on RMI and RTSJ. In Proceedings of the IEEE Conference on Emerging Technologies and Factory Automation (ETFA). 1--8.
[11]
G. S. Blair, G. Coulson, A. Andersen, L. Blair, M. Clarke, F. Costa, H. Duran-Limon, T. Fitzpatrick, L. Johnston, R. Moreira, N. Parlavantzas, and K. Saikoski. 2001. The design and implementation of open ORB 2. In IEEE Distributed Systems Online, Vol. 2.
[12]
G. Bollella and J. Gosling. 2000. The real-time specification for Java. IEEE Computer 33, 6, 47--54.
[13]
J. L. Campos, J. J. Gutiérrez, and M. G. Harbour. 2004. The chance for Ada to support distribution and real-time in embedded systems. In Reliable Software Technologies—Ada-Europe 2004, A. Llamosí and A. Strohmeier (Eds.). Lecture Notes in Computer Science, Vol. 3063. Springer, 91--105.
[14]
J. L. Campos, J. J. Gutiérrez, and M. G. Harbour. 2006. Interchangeable scheduling policies in real-time middleware for distribution. In Proceedings of the 11th Ada-Europe International Conference on Reliable Software Technologies. Lecture Notes in Computer Science, Vol. 4006. Springer, 227--240.
[15]
A. Corsaro and D. C. Schmidt. 2012. The data distribution service—the communication middleware fabric for scalable and extensible systems-of-systems. In System of Systems, Dr. Adrian V. Gheorghe (Ed.). ISBN: 978-953-51-0101-7, InTech.
[16]
R. I. Davis and A. Burns. 2011. A survey of hard real-time scheduling for multiprocessor systems. ACM Computing Surveys 43, 4, 35:1--35:44.
[17]
A. Dubey, G. Karsai, and N. Mahadevan. 2011. A component model for hard real-time systems: CCM with ARINC-653. Software: Practice and Experience (SPE) 41, 12, 1517--1550. http://dx.doi.org/10.1002/spe.1083
[18]
M. Felser. 2001. Ethernet TCP/IP in automation: A short introduction to real-time requirements. In Proceedings of the 8th IEEE International Conference on Emerging Technologies and Factory Automation, Vol. 2. 501--504.
[19]
G. Fohler and G. C. Buttazzo. 2002. Introduction to the Special Issue on Flexible Scheduling, Vol. 22. Springer Netherlands. 10.1023/A:1013489610047.
[20]
A. Foster and S. Aslam-Mir. 2005. Practical experiences using the OMG's Extensible Transport Framework (ETF) under a real-time Corba ORB to implement QoS sensitive custom transports for SDR. In Proceedings of the SDR Technical Conference and Product Exposition.
[21]
E. Freeman, S. Hupfer, and K. Arnold. 1999. JavaSpaces: Principles, Patterns, and Practice. Addison-Wesley, Reading, MA.
[22]
FRESCOR. Framework for Real-Time Embedded Systems Based on COntRacts. 2006. Project Web page. Retrieved September 2013 from http://www.frescor.org
[23]
M. Gillen, J. Loyall, K. Z. Haigh, R. Walsh, C. Partridge, G. Lauer, and T. Strayer. 2012. Information dissemination in disadvantaged wireless communications using a data dissemination service and content data network. In Proceedings of the SPIE Conference on Defense Transformation and Net-Centric Systems, Vol. 8405.
[24]
A. Gokhale, K. Balasubramanian, A. S. Krishna, J. Balasubramanian, G. Edwards, G. Deng, E. Tukay, J. Parsons, and D. C. Schmidt. 2008. Model driven middleware: A new paradigm for developing distributed real-time and embedded systems. Science of Computer Programming 73, 1, 39--58.
[25]
C. Grelck, J. Julku, and F. Penczek. 2012. Distributed S-Net: Cluster and grid computing without the hassle. In Proceedings of the 12th IEEE /ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid). 410--418.
[26]
J. J. Gutiérrez and M. Harbour. 1999. Prioritizing remote procedure calls in Ada distributed systems. Ada Letters XIX, 67--72.
[27]
J. J. Gutiérrez and M. Harbour. 2001. Towards a real-time distributed systems annex in Ada. Ada Letters XXI, 62--66.
[28]
M. T. Higuera-Toledano. 2012. Adaptive distributed embedded and real-time Java systems based on RTSJ. In Proceedings of the 15th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops (ISORCW). 164--171.
[29]
J. Hugues, B. Zalila, L. Pautet, and F. Kordon. 2008. From the prototype to the final embedded system using the Ocarina AADL toolsuite. ACM Transactions in Embedded Computing Systems 7, 4, 1--25.
[30]
IEEE: The Institute of Electrical and Electronics Engineers STD 802.1D. 2004. Media Access Control (MAC) bridges. http://www.ieee802.org/1/pages/802.1D.html
[31]
IEEE: The Institute of Electrical and Electronics Engineers STD 802.1Q. 2006. Virtual bridged local area networks. Annex G. http://www.ieee802.org/1/pages/802.1Q.html
[32]
IEEE: The Institute of Electrical and Electronics Engineers STD 802.1Qbb. 2011. Priority-based flow-control. http://www.ieee802.org/1/pages/802.1bb.html
[33]
ISO/IEC. 2006. Taft, S. T., Duff, R. A., Brukardt, R., Ploedereder, E., and Leroy, P. 2006. Ada 2005 Reference Manual. Language and Standard Libraries—International Standard ISO/IEC 8652 (E) with Technical Corrigendum 1 and Amendment 1. Lecture Notes in Computer Science, Vol. 4348. Springer.
[34]
ISO/IEC. 2012. Ada 2012 Reference Manual. Language and Standard Libraries—International Standard ISO/IEC 8652:2012(E).
[35]
E. D. Jensen, C. D. Locke, and H. Tokuda. 1985. A time-driven scheduling model for real-time systems. In Proceedings of IEEE Real-Time Systems Symposium. 112--122.
[36]
Y. Kermarrec. 1999. CORBA vs. Ada 95 DSA: A programmer's view. Ada Letters XIX, 39--46.
[37]
K. H. Kim. 2000. Object-oriented real-time distributed programming and support middleware. In Proceedings of the 7th International Conference on Parallel and Distributed Systems (ICPADS). IEEE Computer Society, Washington, DC, 10--20.
[38]
R. Klefstad, D. C. Schmidt, and C. O’Ryan. 2002. Towards highly configurable real-time object request brokers. In Proceedings of the 5th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC). 437--447.
[39]
H. Kopetz. 2011. Real-Time Systems: Design Principles for Distributed Embedded Applications (2nd ed., XVIII). Springer.
[40]
S. Lankes, A. Jabs, and T. Bemmerl. 2003. Integration of a CAN-based connection-oriented communication model into real-time Corba. In Proceedings of the 17th International Symposium on Parallel and Distributed Processing (IPDPS). IEEE Computer Society, Washington DC, 121--129.
[41]
J. W. S. Liu. 2000. Real-Time Systems. Prentice Hall PTR, Upper Saddle River, NJ.
[42]
C. L. Liu and J. W. Layland. 1973. Scheduling algorithms for multiprogramming in a hard-real-time environment. Journal of the ACM 20, 46--61.
[43]
T. Losert, W. Huber, K. Hendling, and M. Jandl 2004. An extensible transport framework for Corba with emphasis on real-time capabilities. In Proceedings of the 2nd IEEE International Conference on Computational Cybernetics (ICCC). 155--161.
[44]
A. K. Mok. 1983. Fundamental Design Problems of Distributed Systems for the Hard Real-Time Environment. Ph.D. Dissertation. Massachusetts Institute of Technology.
[45]
MultiPARTES. Multi-Cores Partitioning for Trusted Embedded Systems (2011--2014). Project Web page. Retrieved September 2013 from http://www.multipartes.eu
[46]
L. Neumeyer, B. Robbins, A. Nair, and A. Kesari. 2010. S4: Distributed stream computing platform. In Proceedings of the IEEE International Conference on Data Mining (ICDM). 170--177.
[47]
K. Nichols, S. Blake, F. Baker, and D. Black. 1998. Definition of the differentiated services field (DS field) in the Ipv4 and Ipv6 headers.
[48]
OMG. 2004. Extensible transport framework.
[49]
OMG. 2005. Realtime Corba Specification. v1.2. http://www.omg.org/spec/RT/1.2/
[50]
OMG. 2007. Data Distribution Service for Real-Time Systems. v1.2. http://www.omg.org/spec/DDS/1.2/
[51]
OMG. 2009. The Real-Time Publish-Subscribe Wire Protocol. DDS interoperability wire protocol specification. v2.1. http://www.omg.org/spec/DDSI/2.1/
[52]
OMG. 2011. Corba Core Specification. v3.2. http://www.omg.org/spec/CORBA/3.2/
[53]
OMG. 2012. Extensible and Dynamic Topic Types for DDS. v1.0. http://www.omg.org/spec/DDS-XTypes/1.0/
[54]
C. O’Ryan, F. Kuhns, D. C. Schmidt, O. Othman, and J. Parsons. 2000. The design and performance of a pluggable protocols framework for real-time distributed object computing middleware. In Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms. Springer-Verlag, New York, 372--395.
[55]
L. Pautet and S. Tardieu. 2000. Glade: A framework for building large object-oriented real-time distributed systems. In Proceedings of ISORC. 244--251.
[56]
P. Pedreiras, R. Leite, and L. Almeida. 2003. Characterizing the real-time behavior of prioritized Switched-Ethernet. In Proceedings of the 2nd Workshop on Real-Time LANs in the Internet Age (RTLIA).
[57]
S. Perathoner, E. Wandeler, L. Thiele, A. Hamann, S. Schliecker, R. Henia, R. Racu, R. Ernst, and M. G. Harbour. 2007. Influence of different system abstractions on the performance analysis of distributed real-time systems. In Proceedings of the 7th ACM & IEEE International Conference on Embedded Software (EMSOFT’’07). ACM, New York, NY, 193--202.
[58]
H. Pérez and J. J. Gutiérrez. 2009. Experience in integrating interchangeable scheduling policies into a distribution middleware for Ada. In Proceedings of the ACM SIGAda Annual International Conference on Ada and Related Technologies, ACM, New York, 73--78.
[59]
H. Pérez and J. J. Gutiérrez. 2012. On the schedulability of a data-centric real-time distribution middleware. Computer Standards and Interfaces 34, 1, 203--211.
[60]
H. Pérez and J. J. Gutiérrez. 2013. Experience with the integration of distribution middleware into partitioned systems. In Proceedings of the 17th Ada-Europe International Conference on Reliable Software Technologies. Lecture Notes in Computer Science, Vol. 7896. Springer, 1--16.
[61]
H. Pérez, J. J. Gutiérrez, and M. Harbour. 2012. Adapting the end-to-end flow model for distributed Ada to the Ravenscar profile. Ada Letters 33, 1, 53--63.
[62]
H. Pérez, J. J. Gutiérrez, D. Sangorrín, and M. Harbour. 2008. Real-time distribution middleware from the Ada perspective. In Proceedings of the 13th Ada-Europe International Conference on Reliable Software Technologies, F. Kordon and T. Vardanega (Eds.). Lecture Notes in Computer Science, Vol. 5026. Springer, 268--281.
[63]
M. Perrotin, E. Conquet, P. Dissaux, T. Tsiodras, and J. Hugues. 2010. The TASTE toolset: Turning human designed heterogeneous systems into computer built homogeneous software. In Proceedings of the European Congress on Embedded Real-Time Software (ERTS’10). Toulouse, France.
[64]
I. Pyarali, M. Spivak, R. Cytron, and D. C. Schmidt. 2001. Evaluating and optimizing thread pool strategies for real-time CORBA. In Proceedings of the 2001 ACM SIGPLAN Workshop on Optimization of Middleware and Distributed Systems. ACM, New York, NY, 214--222.
[65]
R. Rekik and S. Hasnaoui. 2009. Application of a can bus transport for DDS middleware. In Proceedings of the 2nd International Conference on the Applications of Digital Information and Web Technologies (ICADIWT). 766--771.
[66]
R. Rouvoy, P. Barone, Y. Ding, F. Eliassen, S. Hallsteinsen, J. Lorenzo, A. Mamelli, and U. Scholz. 2009. MUSIC: Middleware support for self-adaptation in ubiquitous and service-oriented environments. In Software Engineering for Self-Adaptive Systems. Lecture Notes in Computer Science, Vol. 5525. Springer-Verlag, Berlin, Heidelberg, 164--182.
[67]
M. Ryll and S Ratchev. 2008. Application of the data distribution service for flexible manufacturing automation. International Journal of Aerospace and Mechanical Engineering 2, 3, 193--200.
[68]
D. C. Schmidt. 1998. Evaluating architectures for multithreaded object request brokers. Communications of the ACM 41, 10, 54--60.
[69]
D. C. Schmidt. 2005. TAO Developer's Guide: Building a Standard in Performance. Object Computing, Inc.
[70]
D. C. Schmidt, A. Corsaro, and H. V. Hag. 2008. Addressing the challenges of tactical information management in net-centric systems with DDS. Journal of Defense Software Engineering, 24--29.
[71]
D. C. Schmidt and C. D. Cranor. 1996. Pattern Languages of Program Design 2. Addison-Wesley Longman, Boston, MA, 437--459.
[72]
D. C. Schmidt, D. L. Levine, and S. Mungee. 1998. The design of the TAO real-time object request broker. Computer Communications 21, 4, 294--324.
[73]
D. C. Schmidt, S. Mungee, S. Flores-Gaitan, and A. Gokhale. 2001. Software architectures for reducing priority inversion and non-determinism in real-time object request brokers. Journal of Real-Time Systems 21, 2, 77--125.
[74]
L. Sha, T. Abdelzaher, K. Arzén, A. Cervin, T. Baker, A. Burns, G. Buttazzo, M. Caccamo, J. Lehoczky, andA. Mok. 2004. Real time scheduling theory: A historical perspective. Journal of Real-Time Systems 28, 2--3, 101--155.
[75]
L. Sha, R. Rajkumar, and J. P. Lehoczky. 1990. Priority inheritance protocols: An approach to real-time synchronization. IEEE Transactions on Computers 39, 9, 1175--1185.
[76]
Sun Microsystems. 2000. JSR-50: Distributed Real-Time Specification. http://jcp.org/en/jsr/detail?id=50
[77]
Sun Microsystems. 2002. JavaTM Message Service Specification. v1.1. http://www.oracle.com/technetwork/java/docs-136352.html
[78]
Sun Microsystems. 2004. Java Remote Method Invocation (RMI). http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136424.html
[79]
Sun Microsystems. 2012. Distributed Real-Time Specification (Early draft) http://jcp.org/en/egc/download/drtsj.pdf?id=50&fileId=5028
[80]
D. Tejera, A. Alonso, and M. A. de Miguel. 2007. RMI-HRT: Remote method invocation—hard real time. In Proceedings of the 5th International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES’07). ACM, New York, NY, 113--120.
[81]
The Open Group. 1997. DCE: Remote Procedure Calls. v1.2.2. https://www2.opengroup.org/ogsys/jsp/publications/PublicationDetails.jsp?catalogno=t151x
[82]
The Open Group. 1998. POSIX .13 IEEE Std. 1003.13-1998. Information Technology—Standardized Application Environment Profile—POSIX Realtime Application Support (AEP).
[83]
The Open Group. 2010. Safety Critical Specification for Java. Draft Version 0.78. http://jcp.org/en/jsr/detail?id=302
[84]
S. Urueña and J. Zamorano. 2007. Building high-integrity distributed systems with Ravenscar restrictions. Ada Letters XXVII 2, 29--36.
[85]
T. Vergnaud, J. Hugues, L. Pautet, and F. Kordon. 2004. PolyORB: A schizophrenic middleware to build versatile reliable distributed applications. In Proceedings of Ada-Europe (2004-05-04), A. Llamosí and A. Strohmeier (Eds.). Lecture Notes in Computer Science, Vol. 3063. Springer, 106--119.
[86]
J. Vila-Carbó, J. Tur-Masanet, and E. Hernández-Orallo. 2008. An evaluation of Switched Ethernet and Linux traffic control for real-time transmission. In Proceedings of the ETFA, 400--407.
[87]
C. Zhang and V. Tsaoussidis. 2001. TCP-real: Improving real-time capabilities of TCP over heterogeneous networks. In Proceedings of the 11th International Workshop on Network and Operating Systems Support for Digital Audio and Video (NOSSDAV’01). ACM, New York, NY, 189--198.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Computing Surveys
ACM Computing Surveys  Volume 46, Issue 4
April 2014
463 pages
ISSN:0360-0300
EISSN:1557-7341
DOI:10.1145/2597757
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 March 2014
Accepted: 01 September 2013
Revised: 01 January 2013
Received: 01 October 2012
Published in CSUR Volume 46, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Middleware
  2. distribution standards
  3. networks
  4. real time
  5. scheduling

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)26
  • Downloads (Last 6 weeks)1
Reflects downloads up to 13 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Comprehensive Review and Future Research Directions on ICT StandardisationInformation10.3390/info1511069115:11(691)Online publication date: 2-Nov-2024
  • (2024)When tiny is big: design aliveSIMULATION10.1177/00375497241298648100:12(1225-1241)Online publication date: 2-Dec-2024
  • (2020)Real-Time Robot Software Platform for Industrial ApplicationIndustrial Robotics - New Paradigms [Working Title]10.5772/intechopen.91014Online publication date: 11-Mar-2020
  • (2020)Web services selection a perspective of computational physicsJournal of Physics: Conference Series10.1088/1742-6596/1587/1/0120171587(012017)Online publication date: 6-Aug-2020
  • (2019)Challenges in the Operation and Design of Intelligent Cyber‐Physical SystemsComplexity Challenges in Cyber Physical Systems10.1002/9781119552482.ch2(27-51)Online publication date: 13-Dec-2019
  • (2018)Reliable Communication Mechanism Design for Interaction Between Android and ROS2018 IEEE 8th Annual International Conference on CYBER Technology in Automation, Control, and Intelligent Systems (CYBER)10.1109/CYBER.2018.8688347(1496-1501)Online publication date: Jul-2018
  • (2017)Model-Driven Domain-Specific Middleware2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS.2017.197(1961-1971)Online publication date: Jun-2017
  • (2017)Handling heterogeneous partitioned systems through ARINC-653 and DDSComputer Standards & Interfaces10.1016/j.csi.2016.10.01250:C(258-268)Online publication date: 1-Feb-2017
  • (2016)MicROS-drt: supporting real-time and scalable data distribution in distributed robotic systemsRobotics and Biomimetics10.1186/s40638-016-0038-y3:1Online publication date: 12-May-2016
  • (2016)Enabling Data-Centric Distribution Technology for Partitioned Embedded SystemsIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2016.253169527:11(3186-3198)Online publication date: 1-Nov-2016
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media