Formal Verification of Causal Order-Based Load Distribution Mechanism Using Event-B

Formal methods are mathematical techniques that use the concepts and ideas from mathematics and formal logic to specify and reason about system properties. It provides a framework which makes it possible to write specification, analyse and verify the model in a systematic way. Event-B is a formal method which is used to develop and verify the model of distributed systems. Event-B follows refinement-based approach to develop a complex model. In this paper, we have formally verified distributed load migration from heavily loaded site to low load site using Event-B. In order to provide fairness to load transfer mechanism, we have introduced a notion of causal order. The request for load transfer of that site will be completed first whose load request message causally precedes load request messages of other sites.

[1]  Richard Banach Retrenchment for Event-B: UseCase-wise development and Rodin integration , 2009, Formal Aspects of Computing.

[2]  Mukesh Singhal,et al.  Advanced Concepts In Operating Systems , 1994 .

[3]  Michael J. Butler,et al.  Evaluation of a Guideline by Formal Modelling of Cruise Control System in Event-B , 2010, NASA Formal Methods.

[4]  Jean-Raymond Abrial Refinement, Decomposition and Instantiation of Discrete Models , 2005, Abstract State Machines.

[5]  Edward D. Lazowska,et al.  A Comparison of Receiver-Initiated and Sender-Initiated Adaptive Load Sharing , 1986, Perform. Evaluation.

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

[7]  Divakar Yadav,et al.  Formal Development of Byzantine Immune Total Order Broadcast System Using Event-B , 2010, ICDEM.

[8]  Jean-Raymond Abrial,et al.  Modeling in event-b - system and software engineering by Jean-Raymond Abrial , 2010, SOEN.

[9]  Dominique Cansell,et al.  A Mechanically Proved and Incremental Development of IEEE 1394 Tree Identify Protocol , 2003, Formal Aspects of Computing.

[10]  Divakar Yadav,et al.  Application of Event B to Global Causal Ordering for Fault Tolerant Transactions , 2005 .

[11]  Michael J. Butler,et al.  An Open Extensible Tool Environment for Event-B , 2006, ICFEM.

[12]  André Schiper,et al.  Lightweight causal and atomic group multicast , 1991, TOCS.

[13]  Natarajan Shankar,et al.  Combining Theorem Proving and Model Checking through Symbolic Analysis , 2000, CONCUR.

[14]  Jing Liu,et al.  A Formal Framework for Hybrid Event B , 2014, TTSS.

[15]  Michael Leuschel,et al.  Experiments in program verification using Event-B , 2011, Formal Aspects of Computing.

[16]  Michael J. Butler,et al.  An Approach to the Design of Distributed Systems with B AMN , 1997, ZUM.

[17]  Edward D. Lazowska,et al.  Adaptive load sharing in homogeneous distributed systems , 1986, IEEE Transactions on Software Engineering.

[18]  Edmund M. Clarke,et al.  Analytica - A Theorem Prover in Mathematica , 1992, CADE.

[19]  Divakar Yadav,et al.  Rigorous Design of Lazy Replication System Using Event-B , 2012, IC3.

[20]  Michael J. Butler,et al.  Rigorous Design of Fault-Tolerant Transactions for Replicated Database Systems Using Event B , 2006, RODIN Book.

[21]  Divakar Yadav,et al.  Modeling of multiversion concurrency control system using Event-B , 2012, 2012 Federated Conference on Computer Science and Information Systems (FedCSIS).

[22]  Peter Gorm Larsen,et al.  Modelling Systems: Practical Tools and Techniques in Software Development , 1998 .