Abstract
Ethernet-based time-triggered networks (e.g. TTEthernet) enable the cost-effective integration of safety-critical and real-time distributed applications in domains where determinism is a key requirement, like the aerospace, automotive, and industrial domains. Time-Triggered communication typically follows an offline and statically configured schedule (the synthesis of which is an NP-complete problem) guaranteeing contention-free frame transmissions. Extending the end-to-end determinism towards the application layers requires that software tasks running on end nodes are scheduled in tight relation to the underlying time-triggered network schedule. In this paper we discuss the simultaneous co-generation of static network and task schedules for distributed systems consisting of preemptive time-triggered tasks which communicate over switched multi-speed time-triggered networks. We formulate the schedule problem using first-order logical constraints and present alternative methods to find a solution, with or without optimization objectives, based on satisfiability modulo theories (SMT) and mixed integer programming (MIP) solvers, respectively. Furthermore, we present an incremental scheduling approach, based on the demand bound test for asynchronous tasks, which significantly improves the scalability of the scheduling problem. We demonstrate the performance of the approach with an extensive evaluation of industrial-sized synthetic configurations using alternative state-of-the-art SMT and MIP solvers and show that, even when using optimization, most of the problems are solved within reasonable time using the incremental method.
Similar content being viewed by others
Notes
The terms task and tt-task as well as message and tt-message will be used interchangeably in this paper.
Note that TTEthernet supports three traffic classes, namely time-triggered (TT), rate-constrained (RC), and best-effort (BE). We explicitly base this work on the TT traffic class in order to establish a time-triggered paradigm across the network and application domains. Extending the results presented in this paper to accommodate other traffic classes is a concern currently being addressed in the context of mixed-criticality systems (e.g. Steiner 2011; Tamas-Selicean et al. 2012).
We have identified a clear performance disparity between available MIP solvers, which in practice has limited our evaluation scope to a single one of the state-of-the-art MIP solver.
The assignment of tasks to CPUs is completely done during design time and corresponds to system requirements as well as other physical constraints (e.g. sensing tasks assigned to the node where the sensors are physically connected).
Note that in ARINC (2009) virtual links are defined as multicast, e.g. with one sender and one or more receivers whereas in this work we constrain VLs to being unicast, e.g. one sender and one receiver. Our model can be extended to support multicast VLs without compromising the validity of the methods. For the sake of simplicity we leave this trivial extension as future work.
Note that despite we do not implicitly synthesize a schedule for the incoming frames the arrival schedule is a trivial transformation of the related schedules of the predecessor frames.
Note that physical links and by extension also ports are full-duplex, and therefore, each ingress port has an egress port as counterpart. For this analysis we only need to consider incoming traffic.
Frames of the same task scheduled sequentially on the time-line can be joined into a bigger virtual task to increase the performance of the feasibility test.
By “arbitrary” we mean that the SMT solver will return the first valid solution that it finds which, depending on the implementation, is not chosen according to schedulability criteria but rather depends on the specific generic search mechanism of the solver.
We thank Gurobi Optimization, Inc for their generous licensing support.
This finding is reaffirmed in Meindl and Templ (2013), in which the authors present a detailed performance comparison of several commercial and open-source MIP solvers for a particular problem domain.
This ratio is chosen as a representative figure based on the author’s experience. Note, however, that the evaluation and validity of the presented method is not bound to these values and can be generalized to any proportion between free and communicating tasks.
The parameter specifies that after a certain threshold, nodes are to be compressed and written to disk instead of stored in memory (Gurobi Optimization 2014, p. 497).
References
Abdelzahe TF, Shin KG (1995) Optimal combined task and message scheduling in distributed real-time systems. In: Proc. RTSS. IEEE Computer Society
Abdelzaher TF, Shin KG (1999) Combined task and message scheduling in distributed real-time systems. IEEE Trans Parallel Distrib Syst 10(11):1179–1191
Al Sheikh A, Brun O, Chéramy M, Hladik PE (2013) Optimal design of virtual links in afdx networks. Real-Time Syst 49(3):308–336
Al Sheikh A, Brun O, Hladik PE, Prabhu BJ (2012) Strictly periodic scheduling in ima-based architectures. Real-Time Syst 48(4):359–386
ARINC Report 664P7-1 (2009) Aircraft Data Network, Part 7: Avionics Full Duplex Switched Ethernet (AFDX) Network
Barrett C, Sebastiani R, Seshia S, Tinelli C (2009) Satisfiability modulo theories. Handbook of satisfiability, vol 185. IOS Press, Amsterdam
Baruah SK, Rosier LE, Howell RR (1990) Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor. Real-Time Syst 2(4):301–324
Bisschop J (2006) Aimms optimization modeling. Paragon Decision Technology, Haarlem
Bradley S, Hax A, Magnanti T (1977) Applied mathematical programming. Addison-Wesley, Reading
Buttazzo GC (2004) Hard real-time computing systems: predictable scheduling algorithms and applications (real-time systems series). Springer, New York
Chetto H, Silly M, Bouchentouf T (1990) Dynamic scheduling of real-time tasks under precedence constraints. Real-Time Syst 2(3):181–194
Computer Science Laboratory—SRI International: The Yices SMT Solver. URL: http://yices.csl.sri.com/. Retrieved 15-Apr-2015
Craciunas SS, Serna Oliver R (2014) SMT-based task- and network-level static schedule generation for time-triggered networked systems. In: Proc. RTNS. ACM
Craciunas SS, Serna Oliver R, Ecker V (2014) Optimal static scheduling of real-time tasks on distributed time-triggered networked systems. In: Proc. ETFA. IEEE Computer Society
De Moura L, Bjørner N (2008) Z3: an efficient SMT solver. In: Proc. TACAS. Springer
De Moura L, Bjørner N (2011) Satisfiability modulo theories: introduction and applications. Commun ACM 54(9):69–77
Derler P, Resmerita S (2010) Flexible static scheduling of software with logical execution time constraints. In: Proc. CIT. IEEE
Forget J, Boniol F, Grolleau E, Lesens D, Pagetti C (2010) Scheduling dependent periodic tasks without synchronization mechanisms. In: Proc. RTAS. IEEE Computer Society
Forget J, Grolleau E, Pagetti C, Richard P (2011) Dynamic priority scheduling of periodic tasks with extended precedences. In: Proc. ETFA. IEEE Computer Society
Gaglio S, Re G (2013) Advances onto the internet of things: how ontologies make the internet of things meaningful. Advances in Intelligent Systems And Computing. Springer, Cham
GLPK: GNU Linear Programming Kit. URL: http://www.gnu.org/software/glpk/. Retrieved 10-Jan-2015
Gurobi Optimization I (2014) Gurobi optimizer reference manual, version 6.0. URL: http://www.gurobi.com. Retrieved 12-Jan-2015
Hanzalek Z, Burget P, Šucha P (2009) Profinet IO IRT message scheduling. In: Proc. ECRTS. IEEE Computer Society
Honeywell Aerospace (2014) Application specific integrated circuits based on TTEthernet ready for first Orion test flight. URL: http://aerospace.honeywell.com/about/media-resources/newsroom. Retrieved 22-May-2014
Huang J, Blech JO, Raabe A, Buckl C, Knoll A (2012) Static scheduling of a time-triggered network-on-chip based on SMT solving. In: Proc. DATE. IEEE Computer Society
Institute of Electrical and Electronics Engineers, Inc 802.1Qbv (2015) Enhancements for Scheduled Traffic. URL: http://www.ieee802.org/1/pages/802.1bv.html. Retrieved 20-Jan-2015
Institute of Electrical and Electronics Engineers, Inc (2015) Time-sensitive networking task group. URL: http://www.ieee802.org/1/pages/tsn.html. Retrieved 20-Jan-2015
Kermia O, Cucu L, Sorel Y (2006) Non-preemptive multiprocessor static scheduling for systems with precedence and strict periodicity constraints. In: Proc. PMS
Kermia O, Sorel Y (2008) Load balancing and efficient memory usage for homogeneous distributed real-time embedded systems. In: Proc. ICPP-W. IEEE
Kermia O, Sorel Y (2008) Schedulability analysis for non-preemptive tasks under strict periodicity constraints. In: Proc. RTCSA. IEEE Computer Society
Kopetz H (1997) Real-time systems: design principles for distributed embedded applications. Kluwer Academic Publishers, Boston
Kopetz H, Ademaj A, Grillinger P, Steinhammer K (2005) The time-triggered ethernet (TTE) design. In: Proc. ISORC. IEEE
Kopetz H, Bauer G (2003) The time-triggered architecture. Proc IEEE 91(1):112–126
Kopetz H, Grunsteidl G (1993) Ttp—a time-triggered protocol for fault-tolerant real-time systems. In: The 23rd International Symposium on Fault-Tolerant Computing, 1993. FTCS-23. Digest of Papers, pp. 524–533
Leung J, Kelly L, Anderson JH (2004) Handbook of scheduling: algorithms, models, and performance analysis. CRC Press, Boca Raton
Leung JYT, Merrill M (1980) A note on preemptive scheduling of periodic, real-time tasks. Inf Process Lett 11(3):115–118
Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard-real-time environment. J ACM 20:46–61
Meindl B, Templ M (2013) Analysis of commercial and free and open source solvers for the cell suppression problem. Trans Data Priv 6(2):147–159
Metzner A, Franzle M, Herde C, Stierand I (2005) Scheduling distributed real-time systems by satisfiability checking. In: Proc. RTCSA. IEEE Computer Society
Moura L, Bjørner N (2009) Satisfiability modulo theories: an appetizer. Formal methods: foundations and applications. Springer, Berlin, pp 23–36
NASA (2014) Orion Exploration Flight Test-1. URL: https://www.nasa.gov/pdf/663703main_flighttest1_fs_051812.pdf. Retrieved 24-Jun-2015
Nikoletseas S, Rolim J (2011) Theoretical aspects of distributed computing in sensor networks. Monographs in theoretical computer science. An EATCS series. Springer, Berlin
Ousterhout K, Wendell P, Zaharia M, Stoica I (2013) Sparrow: distributed, low latency scheduling. In: Proc SOSP. ACM
Pellizzoni R, Lipari G (2004) A new sufficient feasibility test for asynchronous real-time periodic task sets. In: Proc. ECRTS. IEEE Computer Society
Pellizzoni R, Lipari G (2005) Feasibility analysis of real-time periodic tasks with offsets. Real-Time Syst 30(1–2):105–128
Peng DT, Shin K, Abdelzaher T (1997) Assignment and scheduling communicating periodic tasks in distributed real-time systems. IEEE Trans Softw Eng 23(12):745–758
Pop P, Eles P, Peng Z (1999) An improved scheduling technique for time-triggered embedded systems. In: Proc. EUROMICRO. IEEE Computer Society
Pop P, Eles P, Peng Z (2004) Schedulability-driven communication synthesis for time triggered embedded systems. Real-Time Syst 26(3):297–325
Pop T, Eles P, Peng Z (2002) Holistic scheduling and analysis of mixed time/event-triggered distributed embedded systems. In: Proc. CODES. ACM
Sebastiani R (2007) Lazy satisfiability modulo theories. JSAT 3(3–4):141–224
Serna Oliver R, Craciunas SS, Stöger G (2014) Analysis of Deterministic Ethernet Scheduling For The Industrial Internet Of Things. In: Proc. CAMAD. IEEE
Stankovic J (1998) Deadline scheduling for real-time systems: EDF and related. Real-time systems series. Springer, New York
Steiner W (2010) An evaluation of SMT-based schedule synthesis for time-triggered multi-hop networks. In: Proc. RTSS. IEEE Computer Society
Steiner W (2011) Synthesis of static communication schedules for mixed-criticality systems. In: Proc. ISORCW. IEEE Computer Society
Steiner W, Bauer G, Hall B, Paulitsch M (2011) TTEthernet: time-triggered ethernet. In: Obermaisser R (ed) Time-triggered communication. CRC Press, Boca Raton
Steiner W, Dutertre B (2011) Automated formal verification of the TTEthernet synchronization quality. NASA formal methods. Lecture notes in computer science, vol 5517. Springer, Berlin
Tamas-Selicean D, Pop P, Steiner W (2012) Synthesis of communication schedules for TTEthernet-based mixed-criticality systems. In: Proc. CODES+ISSS. ACM
Texas Instruments: TMS570LS Series 16/32-BIT RISC Flash Microcontroller. URL: http://www.ti.com/lit/ds/symlink/tms570ls3137.pdf. Retrieved 12-Jun-2014
Yomsi PM, Sorel Y (2009)S chedulability analysis for non necessarily harmonic real-time systems with precedence and strict periodicity constraints using the exact number of preemptions and no idle time. In: Proc. MISTA
Zeng H, Zheng W, Di Natale M, Ghosal A, Giusto P, Sangiovanni-Vincentelli A (2009) Scheduling the flexray bus using optimization techniques. In: Proc. DAC. ACM
Zhang L, Goswami D, Schneider R, Chakraborty S (2014) Task- and network-level schedule co-synthesis of ethernet-based time-triggered systems. In: Proc. ASP-DAC. IEEE Computer Society
Zurawski R (2014) Industrial communication technology handbook. Industrial information technology. Taylor & Francis, Boca Raton
Acknowledgments
The research leading to these results has received funding from the European Union Seventh Framework Programme (FP7/2007–2013) under Grant Agreement no 610640 (DREAMS).
Author information
Authors and Affiliations
Corresponding author
Additional information
This paper is an extended version of Craciunas and Serna Oliver (2014).
Rights and permissions
About this article
Cite this article
Craciunas, S.S., Oliver, R.S. Combined task- and network-level scheduling for distributed time-triggered systems. Real-Time Syst 52, 161–200 (2016). https://doi.org/10.1007/s11241-015-9244-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-015-9244-x