Skip to main content

14.02.2024

Bounded-memory runtime enforcement with probabilistic and performance analysis

verfasst von: Saumya Shankar, Ankit Pradhan, Srinivas Pinisetty, Antoine Rollet, Yliès Falcone

Erschienen in: Formal Methods in System Design

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Runtime Enforcement (RE) is a technique aimed at monitoring the executions of a system at runtime and ensure its compliance against a set of formal requirements (properties). RE employs an enforcer (a safety wrapper for the system) which modifies the (untrustworthy) output by performing actions such as delaying (by storing/buffering) and suppressing events, when needed. In this paper, to handle practical applications with memory constraints, we propose a new RE paradigm where the memory of the enforcer is bounded/finite. Besides the property to be enforced, the user specifies a bound on the enforcer memory. Bounding the memory poses various challenges such as how to handle the situation when the memory is full, how to optimally discard events from the buffer to accommodate new events and let the enforcer continue operating. We define the bounded-memory RE problem and develop a framework for any regular property. All of our results are formalized and proved. We also analyze probabilistically how much memory is required on an average case for a given regular property, such that the output of the bounded enforcer is equal to that of the unbounded enforcer up to a fixed probability. The proposed framework is implemented and a case study is worked out to show the practicability and usefulness of the bounded enforcer in the real-world and to show the usage of the aforementioned probabilistic analysis on them. The performance is evaluated via some examples from application scenarios and it indicates linear changes in the execution time of the enforcers in response to increases in trace length, property complexity, and buffer sizes.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Anhänge
Nur mit Berechtigung zugänglich
Fußnoten
1
Storing/ delaying the events (into the internal memory of the enforcer) makes this enforcement mechanism suitable for transactional systems and unsuitable for reactive systems which has to continuously capture and emit events.
 
2
For applications/systems where discarding of events is not acceptable, one may use the approach of halting when the above situations raise. For all the applications/systems where halting of the system/enforcer is not acceptable, the proposed approach can be used to minimally discard “idempotent" events and let the enforcer/system continue to operate.
 
3
We employ finite-state automata to model and define regular properties. We consider enforcement of all regular properties, where the property to be enforced is modelled/defined as an automaton and given as input to the enforcement mechanism. With each input event, the state of the property automaton progresses, and the potential output is determined based on the state it reaches. For instance, when the automaton depicted in Fig. 2 of Example 1 moves from state \(q_2\) to \(q_0\) (an accepting state), the enforcer generates output by emitting the events accumulated in its internal memory. This occurs because the input word is accepted by the automaton, marked by the attainment of an accepting state.
 
4
In various contexts, such as queue-based systems like FIFO (First-In-First-Out), the most obsolete event is an event that was initially encountered or recorded earliest in the timeline.
 
5
Within the degraded mode, there exist distinct categories of suppression i.e., suppression due to a lack of future property satisfaction or due to buffer fullness. At present, our framework generates a common degraded mode information (i.e., \(\bot \)) as output for both the types of suppression. However, we plan to provide separate mode information for these cases to users in the future.
 
6
The prefix-closed properties are commonly known as safety properties.
 
7
The automaton modelling the property of logging of steering commands can be designed using just three states, i.e., one accepting and two non-accepting states. From a non-accepting state (but not a dead state), upon {R,F,L}, it remains at the same non-accepting state, whereas upon S, it makes a transition to an accepting state. Similarly, from the accepting state, upon S, it remains at the same accepting state whereas upon {R,F,L}, it makes the transition to the non-accepting state (but not a dead state). For all other inputs (e.g., E) and from all states, the automaton goes to a dead state. However, we choose to keep the automaton in Fig. 7 as it is close to the automata which can be used for steering the AV.
 
8
Experiments were conducted on an Intel Core i7-9700K CPU at 3.60GHz \( \times \) 8, with 32 GB RAM, and running on Ubuntu 18.04.5 LTS.
 
9
The input trace can be obtained by driving some miles and recording the commands, or by randomly generating the commands.
 
10
aa: accepting state to accepting state, an: accepting state to non-accepting state, likewise.
 
11
For instance, when examining an input sequence of length 10, a suitable trace for property \(P_1\) can be aaaaaaaaa2, abcdabcd21, etc. Here, the significant observation is that the digits (which fulfill the property) are positioned at the end of the trace, allowing a higher buffer of events and consequently more frequent invocations of function \(\texttt {clean}\).
 
12
Despite enlarging the buffer size and subsequently decreasing the frequency of invoking function \( \texttt {clean} \), the average time taken by function \( \texttt {clean} \) still increases linearly. This outcome arises from the fact that although the function is called fewer times, each invocation involves a larger list of uncorrected events (events in \(\sigma _c\)). The substantial overhead required to manage this expanded list significantly contributes to the heightened average processing time.
 
Literatur
3.
Zurück zum Zitat Bloem R, Könighofer B, Könighofer R, et al (2015) Shield synthesis: runtime enforcement for reactive systems. In: Baier C, Tinelli C (eds.) Tools and algorithms for the construction and analysis of systems. Springer Berlin Heidelberg, Berlin, Heidelberg, pp 533–548, https://doi.org/10.1007/978-3-662-46681-0_51 Bloem R, Könighofer B, Könighofer R, et al (2015) Shield synthesis: runtime enforcement for reactive systems. In: Baier C, Tinelli C (eds.) Tools and algorithms for the construction and analysis of systems. Springer Berlin Heidelberg, Berlin, Heidelberg, pp 533–548, https://​doi.​org/​10.​1007/​978-3-662-46681-0_​51
5.
Zurück zum Zitat Clarke E, Grumberg O, Peled D (2001) Model checking Clarke E, Grumberg O, Peled D (2001) Model checking
13.
Zurück zum Zitat Grimmett G, Stirzaker D (2020) Probability and random processes (4th edition). Oxford University Press Grimmett G, Stirzaker D (2020) Probability and random processes (4th edition). Oxford University Press
15.
Zurück zum Zitat Ligatti J, Bauer L, Walker D (2009) Run-time enforcement of nonsafety policies. ACM Trans Inf Syst Secur 10(1145/1455526):1455532 Ligatti J, Bauer L, Walker D (2009) Run-time enforcement of nonsafety policies. ACM Trans Inf Syst Secur 10(1145/1455526):1455532
18.
Zurück zum Zitat Pinisetty S, Falcone Y, Jéron T, et al (2012) Runtime enforcement of timed properties. In: Qadeer S, Tasiran S (eds) Runtime verification, third international conference, RV 2012, Istanbul, Turkey, September 25-28, 2012, Revised Selected Papers, Lecture Notes in Computer Science, vol 7687. Springer, pp 229–244, https://doi.org/10.1007/978-3-642-35632-2_23 Pinisetty S, Falcone Y, Jéron T, et al (2012) Runtime enforcement of timed properties. In: Qadeer S, Tasiran S (eds) Runtime verification, third international conference, RV 2012, Istanbul, Turkey, September 25-28, 2012, Revised Selected Papers, Lecture Notes in Computer Science, vol 7687. Springer, pp 229–244, https://​doi.​org/​10.​1007/​978-3-642-35632-2_​23
22.
Zurück zum Zitat Pinisetty S, Roop PS, Smyth S, et al (2017c) Runtime enforcement of reactive systems using synchronous enforcers. In: Proceedings of the 24th ACM SIGSOFT international SPIN symposium on model checking of software, pp 80–89, https://doi.org/10.1145/3092282.3092291 Pinisetty S, Roop PS, Smyth S, et al (2017c) Runtime enforcement of reactive systems using synchronous enforcers. In: Proceedings of the 24th ACM SIGSOFT international SPIN symposium on model checking of software, pp 80–89, https://​doi.​org/​10.​1145/​3092282.​3092291
24.
30.
Zurück zum Zitat Shankar S, R UV, Pinisetty S, et al (2020) Formal runtime monitoring approaches for autonomous vehicles. In: Benedictis RD, Geretti L, Micheli A (eds.) Proceedings of the 2nd workshop on artificial intelligence and formal verification, Logic, Automata, and Synthesis hosted by the Bolzano Summer of Knowledge 2020 (BOSK 2020), September 25, 2020, CEUR Workshop Proceedings, vol 2785. CEUR-WS.org, pp 89–94, http://ceur-ws.org/Vol-2785/paper15.pdf Shankar S, R UV, Pinisetty S, et al (2020) Formal runtime monitoring approaches for autonomous vehicles. In: Benedictis RD, Geretti L, Micheli A (eds.) Proceedings of the 2nd workshop on artificial intelligence and formal verification, Logic, Automata, and Synthesis hosted by the Bolzano Summer of Knowledge 2020 (BOSK 2020), September 25, 2020, CEUR Workshop Proceedings, vol 2785. CEUR-WS.org, pp 89–94, http://​ceur-ws.​org/​Vol-2785/​paper15.​pdf
32.
Zurück zum Zitat Talhi C, Tawbi N, Debbabi M (2008) Execution monitoring enforcement under memory-limitation constraints. Inf Comput 206(2):158–184. https://doi.org/10.1016/j.ic.2007.07.009, joint Workshop on foundations of computer security and automated reasoning for security protocol analysis (FCS-ARSPA ’06) Talhi C, Tawbi N, Debbabi M (2008) Execution monitoring enforcement under memory-limitation constraints. Inf Comput 206(2):158–184. https://​doi.​org/​10.​1016/​j.​ic.​2007.​07.​009, joint Workshop on foundations of computer security and automated reasoning for security protocol analysis (FCS-ARSPA ’06)
33.
Zurück zum Zitat Woodcock J, Larsen PG, Bicarregui J et al (2009) Formal methods: practice and experience. ACM Comput Surv 10(1145/1592434):1592436 Woodcock J, Larsen PG, Bicarregui J et al (2009) Formal methods: practice and experience. ACM Comput Surv 10(1145/1592434):1592436
Metadaten
Titel
Bounded-memory runtime enforcement with probabilistic and performance analysis
verfasst von
Saumya Shankar
Ankit Pradhan
Srinivas Pinisetty
Antoine Rollet
Yliès Falcone
Publikationsdatum
14.02.2024
Verlag
Springer US
Erschienen in
Formal Methods in System Design
Print ISSN: 0925-9856
Elektronische ISSN: 1572-8102
DOI
https://doi.org/10.1007/s10703-024-00446-1

Premium Partner