arrow
Return

Constructive protocol specification using Cicero

delete1998-04-01
delete1
PRE
AI
Y
Yen-Min Huang
C
Chinya V. Ravishankar
DOI:10.1109/32.677183delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
New protocols are often useful, but are hard to implement well. Protocol synthesis is a solution, but synthesized protocols can be slow. Implementing protocols will be even more challenging in the future, since we expect that more advanced communication functionality will be moved from applications into protocol implementations to reduce application development effort. This trend can be seen from the recent enhancements of RPC to include semantics for supporting group communication, transactions, fault-tolerance, etc. [1], [2], [3], [4]. Protocol developers will also be challenged to provide correct and efficient protocol implementations that manage numerous concurrent I/O channels, and to increase protocol throughput to meet real-time requirements. These requirements demand better language support to facilitate precise control of multiple-thread interactions, and aggressive exploitation of parallelism in protocol execution. Protocol synthesis is also required for dynamic creation of protocol adapters in heterogeneous environments [5], [6]. This paper describes Cicero, a set of language constructs to allow constructive protocol specifications; Unlike other protocol specification languages, Cicero gives programmers explicit control over protocol execution, and facilitates both sequential and parallel implementations, especially for protocols above the transport-layer. It is intended to be used in conjunction with domain-specific libraries, and is quite different in philosophy and mode of use from existing protocol specification languages. A feature of Cicero is the use of event patterns [7] to control synchrony, asynchrony, and concurrency in protocol execution, which helps programmers build robust protocol implementations. Event-pattern driven execution also enables implementers to exploit parallelism of varying grains in protocol execution. Event patterns can also be translated into other formal models, so that existing verification techniques may be used.
Keywords:
protocol synthesis
protocol specification
protocol implementation
event-driven language
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

IEEE Transactions on Software Engineering cover
IEEE Transactions on Software Engineering
IF:
5.6
Papers:
2.9K
Citations:
1.1W

Organization

No organization information available
Cited Papers

Cited Papers

err
IF0
err
err0
PREAI
err
errShare
errSave
HO2 formation from the OH + benzene reaction in the presence of O2
err2011-01-01
err0
errOAAI
errSascha Nehr; Birger Bohn; Hendrik Fuchs; Andreas Hofzumahaus; Andreas Wahner
errShare
errSave
High-quality plant DNA extraction for PCR: an easy approach
err2009-06-01
err0
PREAI
errI. Ahmed; M. Islam; W. Arshad; A. Mannan; W. Ahmad; B. Mirza
errShare
errSave
Identification and quantification of modified nucleosides inSaccharomyces cerevisiaemRNAs
err
IF0
err2018-05-21
err0
errOAAI
errMehmet Tardu; Qishan Lin; Kristin S. Koutmou
errShare
errSave
errShare
errSave
researcher View more