The Development of a TLA $$^{+}$$ Verified Correctness Raft Consensus Protocol


연구 분야: Software Development



학회: Asia-Pacific Web (APWeb) and Web-Age Information Management (WAIM) Joint International Conference on Web and Big Data


초록

Distributed consensus protocols require significant effort to design, develop, and verify correctly. Traditional software quality assurance methods rely on developers creating extensive test cases to cover all code branches, which depend heavily on human experience and prolonged testing. While formal methods offer a reliable means of designing correct protocols, they ensure correctness only at the design level. Ensuring implementation correctness remains challenging once it deviates from its original design. This paper introduces our development of a verified correctness Raft protocol using an innovative specification-driven approach. We first specified Raft using TLA and verified its correctness with a model checker. Subsequently, we implemented the protocol based on this verified specification. Finally, we employed model checker tools to automatically generate test cases covering the entire design space for implementation verification, ensuring the implementation is an exact specification refinement. This approach ensures the correctness of both the implementation and the design.


Author Profile
Hua Guo

Scuptio No. 988 Zhongcun Road Shanghai 201109 China

China
Author Profile
Yunhong Ji

Renmin University of China No. 59 Zhongguancun Street Beijing 100872 China

China
Author Profile
Xuan Zhou

Renmin University of China No. 59 Zhongguancun Street Beijing 100872 China

China

📄 논문 정보

발행 연도 2024년
인용수 0
출판 국가 China
사이트 Springer
좋아요 수 0

연관 논문 목록 (176건)