Developing topology discovery in Event-B

We present a formal development in Event-B of a distributed topology discovery algorithm. Distributed topology discovery is at the core of several routing algorithms and is the problem of each node in a network discovering and maintaining information on the network topology. One of the key challenges is specifying the problem itself. Our specification includes both safety properties, formalizing invariants that should hold in all system states, and liveness properties that characterize when the system reaches stable states. We establish these by appropriately combining proofs of invariant preservation, event refinement, event convergence, and deadlock freedom. The combination of these features is novel and should be useful for formalizing and developing other kinds of semi-reactive systems, which are systems that react to, but do not modify, their environment.

[1]  Dawson R. Engler,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation Cmc: a Pragmatic Approach to Model Checking Real Code , 2022 .

[2]  Philippe Jacquet,et al.  Optimized Link State Routing Protocol (OLSR) , 2003, RFC.

[3]  Leslie Lamport,et al.  The temporal logic of actions , 1994, TOPL.

[4]  A. Udaya Shankar,et al.  A stepwise refinement heuristic for protocol construction , 1987, TOPL.

[5]  Carl A. Gunter,et al.  Formal verification of standards for distance vector routing protocols , 2002, JACM.

[6]  J. J. Garcia-Luna-Aceves,et al.  Link-state routing in networks with unidirectional links , 1999, Proceedings Eight International Conference on Computer Communications and Networks (Cat. No.99EX370).

[7]  Jean-Raymond Abrial,et al.  Refinement, Decomposition, and Instantiation of Discrete Models: Application to Event-B , 2007, Fundam. Informaticae.

[8]  Shin Nakajima,et al.  The SPIN Model Checker : Primer and Reference Manual , 2004 .

[9]  Frits W. Vaandrager,et al.  Verification of a Leader Election Protocol: Formal Methods Applied to IEEE 1394 , 2000, Formal Methods Syst. Des..

[10]  Thai Son Hoang,et al.  Developing topology discovery in Event-B , 2009, Sci. Comput. Program..

[11]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

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

[13]  Mohamed G. Gouda,et al.  Stabilizing Communication Protocols , 1991, IEEE Trans. Computers.

[14]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[15]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[16]  Thomas Clausen,et al.  The Optimized Link State Routing Protocol: Evaluation through Experiments and Simulation , 2001 .

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

[18]  Zohar Manna,et al.  Completing the Temporal Picture , 1991, Theor. Comput. Sci..

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

[20]  Luc Moreau,et al.  Distributed directory service and message routing for mobile agents , 2001, Sci. Comput. Program..

[21]  Gerard Tel,et al.  Introduction to Distributed Algorithms: Contents , 2000 .

[22]  J. Moy,et al.  OSPF: Anatomy of an Internet Routing Protocol , 1998 .

[23]  Gregory A. Hansen,et al.  The Optimized Link State Routing Protocol , 2003 .

[24]  Ralph-Johan Back,et al.  Decentralization of process nets with centralized control , 1983, PODC '83.

[25]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[26]  Christel Baier,et al.  Principles of model checking , 2008 .