Handshaking Protocol for Distributed Implementation of Reo
This work addresses formal verification for distributed service coordination, but it appears incremental as it builds on existing automata-based semantics.
The paper tackles the problem of formally implementing distributed Reo, a coordination language for service communication, by introducing Timed Action Constraint Automata (TACA) to model handshaking protocols with delays and outline correctness proofs.
Reo, an exogenous channel-based coordination language, is a model for service coordination wherein services communicate through connectors formed by joining binary communication channels. In order to establish transactional communication among services as prescribed by connector semantics, distributed ports exchange handshaking messages signalling which parties are ready to provide or consume data. In this paper, we present a formal implementation model for distributed Reo with communication delays and outline ideas for its proof of correctness. To reason about Reo implementation formally, we introduce Timed Action Constraint Automata (TACA) and explain how to compare TACA with existing automata-based semantics for Reo. We use TACA to describe handshaking behavior of Reo modeling primitives and argue that in any distributed circuit remote Reo nodes and channels exposing such behavior commit to perform transitions envisaged by the network semantics.