A Session Type System for Asynchronous Unreliable Broadcast Communication

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Kouzapas, Dimitrios, Gutkovas, Ramunas Forsberg, Voinea, A. Laura, Gay, Simon J.
Formato: Preprint
Publicado: 2019
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866911977725493248
author Kouzapas, Dimitrios
Gutkovas, Ramunas Forsberg
Voinea, A. Laura
Gay, Simon J.
author_facet Kouzapas, Dimitrios
Gutkovas, Ramunas Forsberg
Voinea, A. Laura
Gay, Simon J.
contents Session types are formal specifications of communication protocols, allowing protocol implementations to be verified by typechecking. Up to now, session type disciplines have assumed that the communication medium is reliable, with no loss of messages. However, unreliable broadcast communication is common in a wide class of distributed systems such as ad-hoc and wireless sensor networks. Often such systems have structured communication patterns that should be amenable to analysis by means of session types, but the necessary theory has not previously been developed. We introduce the Unreliable Broadcast Session Calculus, a process calculus with unreliable broadcast communication, and equip it with a session type system that we show is sound. We capture two common operations, broadcast and gather, inhabiting dual session types. Message loss may lead to non-synchronised session endpoints. To further account for unreliability we provide with an autonomous recovery mechanism that does not require acknowledgements from session participants. Our type system ensures soundness, safety, and progress between the synchronised endpoints within a session. We demonstrate the expressiveness of our framework by implementing Paxos, the textbook protocol for reaching consensus in an unreliable, asynchronous network.
format Preprint
id arxiv_https___arxiv_org_abs_1902_01353
institution arXiv
publishDate 2019
record_format arxiv
spellingShingle A Session Type System for Asynchronous Unreliable Broadcast Communication
Kouzapas, Dimitrios
Gutkovas, Ramunas Forsberg
Voinea, A. Laura
Gay, Simon J.
Logic in Computer Science
Formal Languages and Automata Theory
Session types are formal specifications of communication protocols, allowing protocol implementations to be verified by typechecking. Up to now, session type disciplines have assumed that the communication medium is reliable, with no loss of messages. However, unreliable broadcast communication is common in a wide class of distributed systems such as ad-hoc and wireless sensor networks. Often such systems have structured communication patterns that should be amenable to analysis by means of session types, but the necessary theory has not previously been developed. We introduce the Unreliable Broadcast Session Calculus, a process calculus with unreliable broadcast communication, and equip it with a session type system that we show is sound. We capture two common operations, broadcast and gather, inhabiting dual session types. Message loss may lead to non-synchronised session endpoints. To further account for unreliability we provide with an autonomous recovery mechanism that does not require acknowledgements from session participants. Our type system ensures soundness, safety, and progress between the synchronised endpoints within a session. We demonstrate the expressiveness of our framework by implementing Paxos, the textbook protocol for reaching consensus in an unreliable, asynchronous network.
title A Session Type System for Asynchronous Unreliable Broadcast Communication
topic Logic in Computer Science
Formal Languages and Automata Theory
url https://arxiv.org/abs/1902.01353