verifying distributed systems with unbounded channels
play

Verifying distributed systems with unbounded channels egis Gascon - PowerPoint PPT Presentation

Verifying distributed systems with unbounded channels egis Gascon & R Eric Madelaine INRIA Sophia Antipolis SAFA Workshop - September 23rd, 2009 egis Gascon & Verifying distributed systems with unbounded channels R Eric


  1. Verifying distributed systems with unbounded channels egis Gascon & ´ R´ Eric Madelaine INRIA Sophia Antipolis SAFA Workshop - September 23rd, 2009 egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  2. Introduction VERCORS in a nutshell Platform for specification of distributed applications. Based on the semantics features of the ProActive library. http://www-sop.inria.fr/oasis/ProActive/ Generation of intermediate finite model. Various tools can then operate on these models: static analysis, model checking, code generation. . . The aim is to integrate the platform in a development environment, used by non-specialists. egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  3. Introduction Formal verification of pNets Basically, pNets are made of LTSs synchronized by mean of transducer (synchronization vector). Verifying pNets remains to verify systems: manipulating unbounded data, having a parameterized topology, using unbounded communication queues. Numerous sources of infinity ⇔ numerous complications for formal verification. Current platform uses only finite-sate based model-checkers (through finite abstraction). We want to apply infinite state model-checking techniques. egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  4. Introduction Infinite-state system verification Well studied theory: counter systems, pushdown systems, parameterized systems, . . . Few implementations for unbounded queue systems: LASH (Boigelot et al.), TReX (Bouajjani et al.). Difficult to find a tool that fits our goals integration to VERCORS possibility of extensions egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  5. Introduction Outline Introduction 1 Systems with unbounded FIFO queues 2 Reachability and Acceleration 3 Presentation of our prototype 4 Perspectives 5 egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  6. Systems with unbounded FIFO queues Communicating finite state machines Basically a finite state machine augmented with a set of queues. · · · · · · 0 0 0 0 0 read c ?0 τ write c !0 egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  7. Systems with unbounded FIFO queues Communicating finite state machines Formally, a communicating finite state machines (CFSM) is a tuple M = ( Q , q 0 , C , Σ , A , δ ) such that Q = is a finite set of states, q 0 ∈ Q is the initial state, C is a set of communicating channels/queues, Σ is the alphabet of messages, A is a finite set of internal actions, δ ⊂ Q × (( C × { ? , ! } × Σ) ∪ A ) × Q is the transition relation. egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  8. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  9. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 − → � q 0 , q 0 , 0 , ε � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  10. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 − − − → egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  11. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 − − − → egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  12. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 − − − → � q 0 , q 0 , 0000 , ε � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  13. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 → � q 0 , q 0 , 0000 , ε � K ?0 − − − − → � q 1 , q 0 , 000 , ε � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  14. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 → � q 0 , q 0 , 0000 , ε � K ?0 − − − − → � q 1 , q 0 , 000 , ε � K ?0 − → � q 1 , q 0 , 00 , ε � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  15. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → 0 � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 → � q 0 , q 0 , 0000 , ε � K ?0 − − − − → � q 1 , q 0 , 000 , ε � K ?0 → � q 1 , q 0 , 00 , ε � L !0 − − → � q 1 , q 0 , 00 , 0 � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  16. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 → � q 0 , q 0 , 0000 , ε � K ?0 − − − − → � q 1 , q 0 , 000 , ε � K ?0 → � q 1 , q 0 , 00 , ε � L !0 → � q 1 , q 0 , 00 , 0 � L !0 − − − → � q 1 , q 1 , 00 , ε � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  17. Systems with unbounded FIFO queues Short Example Execution: Sequence respecting the transition relation. Channel K → 0 0 K ?1 K ?0 K !0 K !1 K ?0 L ?0 q 0 q 1 q 0 q 1 K ?1 L ?1 L !1 L !0 L ?1 L ?0 Channel L → � q 0 , q 0 , ε, ε � K !0 → � q 0 , q 0 , 0 , ε � K !0 → · · · K !0 → � q 0 , q 0 , 0000 , ε � K ?0 − − − − → � q 1 , q 0 , 000 , ε � K ?0 → � q 1 , q 0 , 00 , ε � L !0 → � q 1 , q 0 , 00 , 0 � L !0 − − − → � q 1 , q 1 , 00 , ε � − → · · · egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  18. Systems with unbounded FIFO queues Operational Semantics We consider unbounded FIFO queues. Consider a set of CFSM sharing a set of queues { K , L } . Configuration: � q 1 , q 2 , w K , w L � (for a pair of CFSM) Global state + Queue contents Operations: Send (non-blocking). if � q 1 , K ! a , q ′ 1 � ∈ δ 1 then K ! a → � q ′ � q 1 , q 2 , w K , w L � − 1 , q 2 , w K · a , w L � Receive (blocking). Internal Action. egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  19. Systems with unbounded FIFO queues Operational Semantics We consider unbounded FIFO queues. Consider a set of CFSM sharing a set of queues { K , L } . Configuration: � q 1 , q 2 , w K , w L � (for a pair of CFSM) Global state + Queue contents Operations: Send (non-blocking). Receive (blocking). if � q 1 , K ? a , q ′ 1 � ∈ δ 1 then K ! a → � q ′ � q 1 , q 2 , a · w K , w L � − 1 , q 2 , w K , w L � Internal Action. egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

  20. Systems with unbounded FIFO queues Operational Semantics We consider unbounded FIFO queues. Consider a set of CFSM sharing a set of queues { K , L } . Configuration: � q 1 , q 2 , w K , w L � (for a pair of CFSM) Global state + Queue contents Operations: Send (non-blocking). Receive (blocking). Internal Action. if � q 1 , τ, q ′ 1 � ∈ δ 1 with τ ∈ A then → � q ′ τ � q 1 , q 2 , w K , w L � − 1 , q 2 , w K , w L � egis Gascon & ´ Verifying distributed systems with unbounded channels R´ Eric Madelaine

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend