Formalization and Verification of Kafka Messaging Mechanism Using CSP

Junya Xu1, Jiaqi Yin2, Huibiao Zhu1 and Lili Xiao1

  1. Shanghai Key Laboratory of Trustworthy Computing, East China Normal University
    Shanghai, China
    hbzhu@sei.ecnu.edu.cn
  2. Northwestern Polytechnical University
    Xi’an, China
    jqyin@nwpu.edu.cn

Abstract

Apache Kafka is an open source distributed messaging system based on the publish-subscribe model, which achieves low latency, high throughput and good load balancing. As a popular messaging system, the transmission of messages between applications is one of the core functions of Kafka. Therefore, the reliability and security of data in the process of message transmission in Kafka have become the focus of attention. The formal methods can analyze whether a model is highly credible. Therefore, it is significant to analyze Kafka messaging mechanism which describes the communication process and rules between each module entity in Kafka from the perspective of formal methods. In this paper, we apply the process algebra CSP (Communicating Sequential Processes) and the model checking tool PAT (Process Analysis Toolkit) to analyze Kafka messaging mechanism. The results of verification show that the model caters for its specification and guarantees the reliability of messages in the normal communication process. Moreover, in order to further analyze the security of Kafka messaging mechanism, we add the intruder model and the authentication protocol Kerberos model and compare the verification results of Kafka messaging mechanism with or without the secure protocol Kerberos. The results show that the Kerberos protocol has improved the security of Kafka messaging mechanism in some aspects, but there are still some security loopholes.

Key words

Distributed Messaging System, Kafka Messaging Mechanism, CSP, Formalization, Verification

Digital Object Identifier (DOI)

https://doi.org/10.2298/CSIS210707057X

Publication information

Volume 20, Issue 1 (January 2023)
Year of Publication: 2023
ISSN: 2406-1018 (Online)
Publisher: ComSIS Consortium

Full text

DownloadAvailable in PDF
Portable Document Format

How to cite

Xu, J., Yin, J., Zhu, H., Xiao, L.: Formalization and Verification of Kafka Messaging Mechanism Using CSP. Computer Science and Information Systems, Vol. 20, No. 1, 277–306. (2023), https://doi.org/10.2298/CSIS210707057X