REAL-T: Time Modularization in Reactive Distributed Applications

In this paper, we propose REAL-T, a distributed event-based language with explicit support for time manipulation. The language introduces automata for operational time manipulation, causality constructs and Linear Temporal Logic for declarative time predicates, and a distributed-time aware event model. We have developed a compiler for the language and a dynamic run-time framework. To validate the proposal we study detection of complex patterns of security vulnerabilities in IoT scenarios.

[1]  Koushik Sen,et al.  A Temporal Logic Based Framework for Intrusion Detection , 2004, FORTE.

[2]  Grigore Rosu,et al.  Mop: an efficient and generic runtime verification framework , 2007, OOPSLA.

[3]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[4]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[5]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[6]  Grigore Rosu,et al.  An overview of the MOP runtime verification framework , 2012, International Journal on Software Tools for Technology Transfer.

[7]  Savas Konur,et al.  A survey on temporal logics for specifying and verifying real-time systems , 2013, Frontiers of Computer Science.

[8]  Dino Mandrioli,et al.  Modeling time in computing: A taxonomy and a comparative survey , 2008, CSUR.

[9]  C. A. Petri Fundamentals of a Theory of Asynchronous Information Flow , 1962, IFIP Congress.

[10]  In Lee,et al.  The Internet of Things (IoT): Applications, investments, and challenges for enterprises , 2015 .

[11]  Luis Daniel Benavides Navarro,et al.  Detecting and Coordinating Complex Patterns of Distributed Events with KETAL , 2011, CLEI Selected Papers.

[12]  Pierfrancesco Bellini,et al.  Temporal logics for real-time system specification , 2000, CSUR.

[13]  Dimitra Giannakopoulou,et al.  From States to Transitions: Improving Translation of LTL Formulae to Büchi Automata , 2002, FORTE.

[14]  John K. Ousterhout,et al.  Why Threads Are A Bad Idea (for most purposes) , 2003 .

[15]  Luis Daniel Benavides Navarro,et al.  Debugging and Testing Middleware with Aspect-Based Control-Flow and Causal Patterns , 2008, Middleware.

[16]  Robbert van Renesse,et al.  Horus: a flexible group communication system , 1996, CACM.

[17]  Cristina Nita-Rotaru,et al.  A survey of attack and defense techniques for reputation systems , 2009, CSUR.

[18]  Grigore Rosu,et al.  Java-MOP: A Monitoring Oriented Programming Environment for Java , 2005, TACAS.

[19]  J. R. Büchi Symposium on Decision Problems: On a Decision Method in Restricted Second Order Arithmetic , 1966 .

[20]  Koushik Sen,et al.  Program monitoring with LTL in EAGLE , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[21]  Stephan Merz,et al.  Temporal Logic and State Systems , 2008, Texts in Theoretical Computer Science. An EATCS Series.

[22]  Luca Cardelli,et al.  Modern concurrency abstractions for C# , 2002, TOPL.