Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults

Omar Al-Bataineh, Mark Reynolds

Research output: Chapter in Book/Conference paperConference paper

Abstract

The notion of knowledge-based program introduced by Halpern and Fagin provides a useful formalism for designing, analyzing, and optimizing distributed systems. This paper formulates the two phase commit protocol as a knowledge-based program and then an iterative process of model checking and counter-example guided refinement is followed to find concrete implementations of the program for the case of perfect recall semantic in the Byzantine failures context with synchronous reliable communication. We model several different kinds of Byzantine failures and verify different strategies to fight and mitigate them. We address a number of questions that have not been considered in the prior literature, viz., under what circumstances a sender can know that its transmission has been successful, and under what circumstances an agent can know that the coordinator is cheating, and find concrete answers to these questions. The paper describes also a methodology based on temporal-epistemic model checking technology that can be followed to verify the shortest and longest execution time of a distributed protocol and the scenarios that lead to them.

Original languageEnglish
Title of host publicationProceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019
PublisherIEEE, Institute of Electrical and Electronics Engineers
Pages1-10
Number of pages10
ISBN (Electronic)9781728133737
DOIs
Publication statusPublished - 1 May 2019
Event7th IEEE/ACM International Workshop on Formal Methods in Software Engineering, FormaliSE 2019 - Montreal, Canada
Duration: 27 May 2019 → …

Publication series

NameProceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019

Conference

Conference7th IEEE/ACM International Workshop on Formal Methods in Software Engineering, FormaliSE 2019
CountryCanada
CityMontreal
Period27/05/19 → …

Fingerprint

Model checking
Concretes
Network protocols
Semantics
Communication

Cite this

Al-Bataineh, O., & Reynolds, M. (2019). Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults. In Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019 (pp. 1-10). [8807721] (Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019). IEEE, Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/FormaliSE.2019.00014
Al-Bataineh, Omar ; Reynolds, Mark. / Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults. Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019. IEEE, Institute of Electrical and Electronics Engineers, 2019. pp. 1-10 (Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019).
@inproceedings{87352e7c67fe44e9b73063341c91087e,
title = "Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults",
abstract = "The notion of knowledge-based program introduced by Halpern and Fagin provides a useful formalism for designing, analyzing, and optimizing distributed systems. This paper formulates the two phase commit protocol as a knowledge-based program and then an iterative process of model checking and counter-example guided refinement is followed to find concrete implementations of the program for the case of perfect recall semantic in the Byzantine failures context with synchronous reliable communication. We model several different kinds of Byzantine failures and verify different strategies to fight and mitigate them. We address a number of questions that have not been considered in the prior literature, viz., under what circumstances a sender can know that its transmission has been successful, and under what circumstances an agent can know that the coordinator is cheating, and find concrete answers to these questions. The paper describes also a methodology based on temporal-epistemic model checking technology that can be followed to verify the shortest and longest execution time of a distributed protocol and the scenarios that lead to them.",
keywords = "Epistemic logic, knowledge based programs, Model Checking",
author = "Omar Al-Bataineh and Mark Reynolds",
year = "2019",
month = "5",
day = "1",
doi = "10.1109/FormaliSE.2019.00014",
language = "English",
series = "Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019",
publisher = "IEEE, Institute of Electrical and Electronics Engineers",
pages = "1--10",
booktitle = "Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019",
address = "United States",

}

Al-Bataineh, O & Reynolds, M 2019, Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults. in Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019., 8807721, Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019, IEEE, Institute of Electrical and Electronics Engineers, pp. 1-10, 7th IEEE/ACM International Workshop on Formal Methods in Software Engineering, FormaliSE 2019, Montreal, Canada, 27/05/19. https://doi.org/10.1109/FormaliSE.2019.00014

Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults. / Al-Bataineh, Omar; Reynolds, Mark.

Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019. IEEE, Institute of Electrical and Electronics Engineers, 2019. p. 1-10 8807721 (Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019).

Research output: Chapter in Book/Conference paperConference paper

TY - GEN

T1 - Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults

AU - Al-Bataineh, Omar

AU - Reynolds, Mark

PY - 2019/5/1

Y1 - 2019/5/1

N2 - The notion of knowledge-based program introduced by Halpern and Fagin provides a useful formalism for designing, analyzing, and optimizing distributed systems. This paper formulates the two phase commit protocol as a knowledge-based program and then an iterative process of model checking and counter-example guided refinement is followed to find concrete implementations of the program for the case of perfect recall semantic in the Byzantine failures context with synchronous reliable communication. We model several different kinds of Byzantine failures and verify different strategies to fight and mitigate them. We address a number of questions that have not been considered in the prior literature, viz., under what circumstances a sender can know that its transmission has been successful, and under what circumstances an agent can know that the coordinator is cheating, and find concrete answers to these questions. The paper describes also a methodology based on temporal-epistemic model checking technology that can be followed to verify the shortest and longest execution time of a distributed protocol and the scenarios that lead to them.

AB - The notion of knowledge-based program introduced by Halpern and Fagin provides a useful formalism for designing, analyzing, and optimizing distributed systems. This paper formulates the two phase commit protocol as a knowledge-based program and then an iterative process of model checking and counter-example guided refinement is followed to find concrete implementations of the program for the case of perfect recall semantic in the Byzantine failures context with synchronous reliable communication. We model several different kinds of Byzantine failures and verify different strategies to fight and mitigate them. We address a number of questions that have not been considered in the prior literature, viz., under what circumstances a sender can know that its transmission has been successful, and under what circumstances an agent can know that the coordinator is cheating, and find concrete answers to these questions. The paper describes also a methodology based on temporal-epistemic model checking technology that can be followed to verify the shortest and longest execution time of a distributed protocol and the scenarios that lead to them.

KW - Epistemic logic

KW - knowledge based programs

KW - Model Checking

UR - http://www.scopus.com/inward/record.url?scp=85072015234&partnerID=8YFLogxK

U2 - 10.1109/FormaliSE.2019.00014

DO - 10.1109/FormaliSE.2019.00014

M3 - Conference paper

T3 - Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019

SP - 1

EP - 10

BT - Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019

PB - IEEE, Institute of Electrical and Electronics Engineers

ER -

Al-Bataineh O, Reynolds M. Epistemic Model Checking of Distributed Commit Protocols with Byzantine Faults. In Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019. IEEE, Institute of Electrical and Electronics Engineers. 2019. p. 1-10. 8807721. (Proceedings - 2019 IEEE/ACM 7th International Workshop on Formal Methods in Software Engineering, FormaliSE 2019). https://doi.org/10.1109/FormaliSE.2019.00014