Abstract
The IEEE 1394 architecture standard defines a high performance serial multimedia bus that allows several components in a network to communicate with each other at high speed. In the physical layer of the architecture, a leader election protocol is used to find a spanning tree with a unique root in the network topology. If there is a cycle in the network, the protocol treats this as an error situation. This paper presents a formal model of the leader election protocol in the language IOA and a correctness proof. Hereby, it is shown that under certain timing restrictions the protocol behaves correctly. The timing parameters in the IEEE 1394 standard documentation obey the restrictions found in this proof.
Similar content being viewed by others
References
M. Archer, Personal communication, 1999.
M. Archer and C. Heitmeyer, “Mechanical verification of timed automata: A case study,” in Proceedings 1996 IEEE Real-Time Technology and Applications Symposium (RTAS'96), 1996. A full version is available as Report NRL/MR/5540–98-8180, IEEE Computer Society Press from URL http://www.itd.nrl.navy. mil/ITD/5540/publications/CHACS/1998/.
J. Davies and S. Schneider, “A brief history of timed CSP,” Theoretical Computer Science, Vol. 138, No. 10, pp. 243–271, 1995.
M. Devillers, W. Griffioen, J. Romijn, and F. Vaandrager, “Verification of a leader election protocol—Formal methods applied to IEEE 1394,” Formal Methods in System Design, Vol. 16, No. 3, pp. 307–320, 2000.
S. Garland, N. Lynch, and M. Vaziri, “IOA: A language for specifying, programming, and validating distributed systems,” 1997. Available through URL http://larch.lcs.mit.edu:8001/~garland/ ioaLanguage.html.
R. Gawlick, R. Segala, J. Søgaard-Andersen, and N. Lynch, “Liveness in timed and untimed systems,” in S. Abiteboul and E. Shamir (Eds.), Proceedings 21th ICALP, Jerusalem, Vol. 820 of Lecture Notes in Computer Science. A full version appears as MIT Technical Report number MIT/LCS/TR-587, 1994.
W. Griffioen and F. Vaandrager, “Normed simulations,” in Proceedings CAV'98, Vol. 1427 of Lecture Note in Computer Science, Springer-Verlag, pp. 332–344, 1998.
J. Groote and A. Ponse, “The syntax and semantics of µCRL,” in A. Ponse, C. Verhoef, and S. van Vlijmen (Eds.), Algebra of Communicating Processes '94, Springer-Verlag, 1995.
J. Groote and J. Springintveld, “Focus points and convergent pocess operators—A proof strategy for protocol verification,” in Journal of Logic and Algebraic Programming. To appear. Report versions; Logic Group Preprint Series 142, Utrecht University, 1995, and Technical Report CS-R9566, CWI, 1995.
IEEE Computer Society, “IEEE Standard for a High Performance Serial Bus,” Std 1394-1995, 1996.
IEEE Computer Society, “Draft Standard for a High Performance Serial Bus (Supplement),” P1394a Draft 5.0, 2000.
L. Kühne, J. Hooman, and W.d. Roever, “Towards mechanical verification of parts of the IEEE P1394 serial bus,” in I. Lovrek (Ed.), Proceedings 2nd International Workshop on Applied Formal Methods in System Design, Zagreb, 1997, pp. 73–85.
L. Lamport, “How to write a long formula,” Formal Aspects of Computing, Vol. 6, pp. 580–584, 1994. Also appeared as SRC Research Report 119.
K.G. Larsen, P. Petterson, and W. Yi, “UPPAAL in a nutshell,” Int. Journal on Software Tools for Technology Transfer, Vol. 1, Nos. 1–2, pp. 134–152, 1997.
S. Luttik, “Description and formal specification of the link layer of P1394,” in I. Lovrek (Ed.), Proceedings of the 2nd International Workshop on Applied Formal Methods in System Design, Zagreb; 1997, pp. 43–56, Also available as Report SEN-R9706, CWI, Amsterdam. See URL http://www.cwi.nl/~luttik/.
N. Lynch, Distributed Algorithms, Morgan Kaufmann, Publishers, Inc., San Francisco, California, 1996.
N. Lynch and M. Tuttle, “Hierarchical correctness proofs for distributed algorithms,” in Proceedings of the 6th Annual ACM Symposium on Principles of Distributed Computing, 1987, pp. 137–151. A full version is available as MIT Technical Report MIT/LCS/TR-387.
N. Lynch and M. Tuttle, “An introduction to input/output automata,” CWI Quarterly, Vol. 2, No. 3, pp. 219–246, 1989.
N. Lynch and F. Vaandrager, “Forward and backward simulations, I: Untimed systems,” Information and Computation, Vol. 121, No. 2, pp. 214–233, 1995.
N. Lynch and F. Vaandrager, “Forward and backward simulations, II: Timing-based systems,” Information and Computation, Vol. 128, No. 1, pp. 1–25, 1996.
Z. Manna and A. Pnueli, “Verifying Hybrid Systems” in R. Grossman, A. Nerode, A. Ravn, and H. Rischel (Eds.), Hybrid Systems, Vol. 736 of Lecture Notes in Computer Science, Springer-Verlag, pp. 4–35, 1993.
Z. Manna and A. Pnueli, Temporal Verification of Reactive Systems: Safety, Springer-Verlag, 1995.
S. Owre, J. Rushby, N. Shankar, and F.V. Henke, “Formal verification for fault-tolerant architectures: Prolegomena to the design of PVS,” IEEE Transactions on Software Engineering, Vol. 21, No. 2, pp. 107–125, 1995.
S. Schneider, “Timewise refinement for communicating processes,” Science of Computer Programming, Vol. 28, No.1, pp. 43–90, 1997.
R. Segala, “Modeling and verification of randomized distributed real-time systems,” Ph.D. Thesis, Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology, 1995. Available as Technical Report MIT/LCS/TR-676.
R. Segala and N. Lynch, “Probabilistic simulations for probabilistic processes,” Nordic Journal of Computing Vol. 2, No. 2, pp. 250–273, 1995.
C. Shankland and M.V.D. Zwaag, “The tree identify protocol of IEEE 1394 in µCRL,” Formal Aspects of Computing, Vol. 10, pp. 509–531, 1998.
M. Sighireanu and R. Mateescu, “Verification of the link layer protocol of the IEEE-1394 serial bus (Firewire): An experiment with E-LOTOS,” Springer International Journal on Software Tools for Technology Transfer (STTT), Vol. 2, No. 1, pp. 68–88, 1998.
D. Simons and M. Stoelinga, “Mechanical Verification of the IEEE 1394a Root Contention Protocol using Uppaal2k,” Technical report, University of Nijmegen, 2000. See URL http://www.cs.kun.nl/marielle.
M. Stoelinga and F. Vaandrager, “Root Contention in IEEE 1394,” in J.-P. Katoen (Ed.), Proceedings 5th International AMAST Workshop on Formal Methods for Real-Time and Probabilistic Systems (ARTS'99), Bamberg, Germany, Vol. 1601 of Lecture Notes in Computer Science, 1999, pp. 53–74.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Romijn, J. A Timed Verification of the IEEE 1394 Leader Election Protocol. Formal Methods in System Design 19, 165–194 (2001). https://doi.org/10.1023/A:1011284000753
Issue Date:
DOI: https://doi.org/10.1023/A:1011284000753