A Session Type System for Asynchronous Unreliable Broadcast Communication

02/04/2019
by   Dimitrios Kouzapas, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/08/2019

Intrinsically-Typed Mechanized Semantics for Session Types

Session types have emerged as a powerful paradigm for structuring commun...
research
10/15/2017

Timed Session Types

Timed session types formalise timed communication protocols between two ...
research
01/25/2023

MAGπ: Types for Failure-Prone Communication

Multiparty Session Types (MPST) are a typing discipline for communicatio...
research
01/24/2018

Depending on Session-Typed Processes

This work proposes a dependent type theory that combines functions and s...
research
11/02/2019

Label-Dependent Session Types

Session types have emerged as a typing discipline for communication prot...
research
04/26/2021

A Session Subtyping Tool (Extended Version)

Session types are becoming popular and have been integrated in several m...
research
07/24/2023

Safe asynchronous mixed-choice for timed interactions

Mixed-choice has long been barred from models of asynchronous communicat...

Please sign up or login with your details

Forgot password? Click here to reset