Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1007/11561927_18guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Causing communication closure: safe program composition with Non-FIFO channels

Published: 26 September 2005 Publication History

Abstract

A semantic framework for analyzing safe composition of distributed programs is presented. Its applicability is illustrated by a study of program composition when communication is reliable but not necessarily FIFO . In this model, special care must be taken to ensure that messages do not accidentally overtake one another in the composed program. We show that barriers do not exist in this model. Indeed, no program that sends or receives messages can automatically be composed with arbitrary programs without jeopardizing their intended behavior. Safety of composition becomes context-sensitive and new tools are needed for ensuring it. A notion of sealing is defined, where if a program P is immediately followed by a program Q that seals P then P will be communication-closed—it will execute as if it runs in isolation. The investigation of sealing in this model reveals a novel connection between Lamport causality and safe composition. A characterization of sealable programs is given, as well as efficient algorithms for testing if Q seals P and for constructing a seal for a significant class of programs. It is shown that every sealable program that is open to interference on O(n2) channels can be sealed using O(n) messages.

References

[1]
Y. Afek, H. Attiya, A. Fekete, M. Fischer, N. Lynch, Y. Mansour, D.-W. Wang, and L. Zuck. Reliable communication over unreliable channels. Journal of the ACM, 41(6):1267-1297, 1994.
[2]
T. Elrad and N. Francez. Decomposition of distributed programs into communication-closed layers. Science of Computer Programming, 2(3):155-173, Dec. 1982.
[3]
K. Engelhardt and Y. Moses. Safe composition of distributed programs communicating over order-preserving imperfect channels. Submitted; see ftp://ftp.cse.unsw.edu.au/pub/users/kaie/EM2005b.pdf, June 2005.
[4]
K. Engelhardt and Y. Moses. Single-bit messages are insufficient in the presence of duplication. In preparation; see ftp://ftp.cse.unsw.edu.au/pub/users/kaie/EM2005c.pdf, June 2005.
[5]
A. Fekete and N. Lynch. The need for headers: An impossibility result for communication over unreliable channels. In CONCUR '90: Proceedings on Theories of Concurrency: Unification and Extension, pages 199-215. Springer-Verlag, 1990.
[6]
R. Gerth and L. Shrira. On proving communication closedness of distributed layers. In K. V. Nori, editor, Foundations of Software Technology and Theoretical Computer Science, Sixth Conference, volume 241 of LNCS, pages 330-343, New Delhi, India, 18-20 Dec. 1986. Springer-Verlag.
[7]
W. Janssen. Layered Design of Parallel Systems. PhD thesis, University of Twente, 1994.
[8]
W. Janssen. Layers as knowledge transitions in the design of distributed systems. In U. H. Engberg, K. G. Larsen, and A. Skou, editors, Proceedings of the Workshop on Tools and Algorithms for the Construction and Analysis of Systems, TACAS (Aarhus, Denmark, 19- 20 May, 1995), number NS-95-2 in Notes Series, pages 304-318, Department of Computer Science, University of Aarhus, May 1995. BRICS.
[9]
W. Janssen, M. Poel, and J. Zwiers. Action systems and action refinement in the development of parallel systems. In J. C. M. Baeten and J. F. Groote, editors, Proceedings of CONCUR '91, 2nd International Conference on Concurrency Theory, Amsterdam, The Netherlands, volume 527 of LNCS, pages 298-316, 1991.
[10]
W. Janssen and J. Zwiers. From sequential layers to distributed processes, deriving a minimum weight spanning tree algorithm, (extended abstract). In Proceedings 11th ACM Symposium on Principles of Distributed Computing, pages 215-227. ACM, 1992.
[11]
L. Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 7:558-565, 1978.
[12]
N. A. Lynch. Distributed Algorithms. Morgan Kaufmann, 1996.
[13]
M. Poel and J. Zwiers. Layering techniques for development of parallel systems. In G. von Bochmann and D. K. Probst, editors, Computer Aided Verification, Fourth International Workshop, CAV '92, volume 663 of LNCS, pages 16-29, Montreal, Canada, June 29 - July 1 1992. Springer-Verlag.
[14]
F. A. Stomp and W.-P. de Roever. A principle for sequential reasoning about distributed algorithms. Formal Aspects of Computing, 6(6):716-737, 1994.
[15]
D.-W. Wang and L. D. Zuck. Tight bounds for the sequence transmission problem. In PODC '89: Proceedings of the eighth annual ACM Symposium on Principles of Distributed Computing, pages 73-83. ACM Press, 1989.

Cited By

View all
  • (2009)Causing communication closureDistributed Computing10.1007/s00446-009-0081-922:2(73-91)Online publication date: 1-Oct-2009
  • (2005)Safe composition of distributed programs communicating over order-preserving imperfect channelsProceedings of the 7th international conference on Distributed Computing10.1007/11603771_4(32-44)Online publication date: 27-Dec-2005

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
DISC'05: Proceedings of the 19th international conference on Distributed Computing
September 2005
518 pages
ISBN:3540291636

Sponsors

  • Université Paris-Sud 11: Université Paris-Sud 11
  • Universitas Varsoviensis: Universitas Varsoviensis
  • CNRS: Centre National De La Rechercue Scientifique
  • University of Liverpool
  • INRIA: Institut Natl de Recherche en Info et en Automatique

In-Cooperation

  • Warsaw Univ.: Warsaw University
  • Jagiellonian Univ.: Jagiellonian University

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 26 September 2005

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 12 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2009)Causing communication closureDistributed Computing10.1007/s00446-009-0081-922:2(73-91)Online publication date: 1-Oct-2009
  • (2005)Safe composition of distributed programs communicating over order-preserving imperfect channelsProceedings of the 7th international conference on Distributed Computing10.1007/11603771_4(32-44)Online publication date: 27-Dec-2005

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media