Algebraic Formal Specification and Formal Validation of the Standard and an Implementation of the OSPF Protocol

OSPF Protocol 표준 및 구현의 대수 정형적 명세 및 정형적 검증

  • 박재현 (중앙대학교 컴퓨터공학부 초고속통신 연구실)
  • Published : 2004.03.01

Abstract

The OSPF protocol is the most widely used Interior Gateway Routing Protocol. Therefore, for the reliability of behavior of gigabit swiching routers, it is essential to guarantee the interoperability and the safety of the OSPF protocol. In this paper, we analyze the standard document of the OSPF protocol, so that we provide a formal specification that specifies the protocol behaviors by detailed design level using the algebraic formal method. By referring available source codes of the OSPF protocol, we supplement the formal specification to express more detailed behaviors that is not specified definitely in the standard. We also formally verify the interoperability and the safety of the protocol state machine of the specification. By showing that the formal specification specify all of the states and the transition events that appear in the standard document of the OSPF protocol, we prove that the state machine has the completeness, and prove it has the interoperability. To prove that the specification of the protocol has the safety, we formally verify the reachability, the liveness, the livelock-free property, and the deadlock-free property. As a result, we prove the protocol has the consistency. The specification and the validation are also effective to the OSPF Version 3 that inherit the protocol mechanism of the OSPF Version 2.

OSPF 프로토콜은 가장 보편적으로 사용되고 있는 Interior Gateway Routing Protocol 이다. 그러므로, 초고속 라우터의 동작의 신뢰성 확보를 위해, OSPF 프로토콜의 상호운용성과 안전성의 보장은 중요하다. 본 논문에서는 OSPF 라우팅 프로토콜의 표준 문서를 분석하여, 프로토콜 동작들을 대수 정형 방법을 사용하여 상세 설계 수준으로 명세하고, OSPF 프로토콜의 가용한 원천코드를 참조하여, 표준에 명확하게 명세되지 않은 좀더 상세한 동작까지 표현하도록 이 명세를 보완하였다. 그리고 명세된 프로토콜 상태 기계의 상호운용성과 안전성을 정형적으로 증명하였다. 우리는 먼저 제시한 정형적 명세가 OSPF 프로토콜의 표준 문서에 나타난 모든 상태들과 모든 천이 이벤트들을 표현하고 있어, 명세된 프로토콜 상태기계가 완전성을 가지고 있다는 사실을 보이고, 또한 상호운용성을 가짐을 증명하였다. 그리고 프로토콜의 동작의 안전성을 증명하기 위해, 생존성, 그리고 라이브락 부재를 정형적으로 증명하고, 교착상태 부재 역시 정형적으로 증명하였다. 결과적으로 OSPF 프로토콜이 일관성을 가진다는 사실을 보인다. 본 명세와 검증은 기존외 OSPF Version 2의 프로토콜 메커니즘을 그대로 계승한 OSPF Version 3에서도 유효하다.

Keywords

References

  1. Internet RFC 2328 OSPF Version 2 J.Moy
  2. Distributed Algorithms (2nd International Workshop, Amsterdam, The Netherlands, July 1987) of the Lecture Notes in Computer Science v.312 A Modular Proof of Correctness for a Network Synchronizer A.Fekete;N.Lynch;L.Shrira https://doi.org/10.1007/BFb0019807
  3. IEEE Transactions on Software Engineering v.25 no.5 A Highly Available Local Leader Election Service C.Fetzer;F.Cristian https://doi.org/10.1109/32.815321
  4. Design and Validation of Computer Protocols, Reading Mass Gerard J. Holzmann
  5. Formal Description Techniques and Protocol Specification, Testing, and Verification (FORTE/PSTV 1998) IFIP Formal Specification, Verification, and Automatic Test Generation of ATM Routing Protocol: PNNI D.Cypher;D.Lee;M.Martin Villalba;C.Prins;D.Su
  6. Journal of the ACM (JACM) v.49 no.4 Formal Verification of Standards for Distance Vector Routing Protocols K.Bhargavan;D.Obradovic;C.A.Gunter https://doi.org/10.1145/581771.581775
  7. Reading Mass Communicating Sequential Processes C.A.R.Hoare
  8. Reading Mass Communication and Concurrency R.Milner
  9. Proc. of Globecom 2001 Validation of the Detailed Design of the Label Distribution Protocol for the Multiprotocol Label Switching System Jae Hyum Park
  10. IEICE Tr. on Communications v.E86-B no.2 Validation of the Detailed Design of the Label Distribution Protocol for the MultiprotocolLabel Switching System Jae Hyun Park
  11. Reading Mass OSPF Complete Implementation J.Moy