## 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 n^{o} 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