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

skip to main content
article
Free access

Preserving and using context information in interprocess communication

Published: 01 August 1989 Publication History

Abstract

When processes in a network communicate, the messages they exchange define a partial ordering of externally visible events. While the significance of this partial order in distributed computing is well understood, it has not been made an explicit part of the communication substrate upon which distributed programs are implemented. This paper describes a new interprocess communication mechanism, called Psync, that explicitly encodes this partial ordering with each message. The paper shows how Psync can be efficiently implemented on an unreliable communications network, and it demonstrates how conversations serve as an elegant foundation for ordering messages exchanged in a distributed computation and for recovering from processor failures.

References

[1]
ABBOTT, M., HUTCHINSON, N., O'MALLEY, S., AND PETERSON, L. RPC in the x-kernel: Evaluating design alternatives. To appear in Proceedings of the 12th Symposium on Operating System Principles, Dec. 1989.]]
[2]
AHO, A., GARE~, M., AND ULLMAN, J. The transitive reduction of a directed graph. SIAM J. Comput. (1972), 131-137.]]
[3]
BIRMAN, K., AND JOSEPH, T. Reliable communication in the presence of failures. ACM Trans. Comput. Syst. 5, 1 (Feb. 1987), 47-76.]]
[4]
BIRMAN, K., AND JOSEPH, W. Exploiting virtual synchrony in distributed systems. In Proceedings of the 11th Symposium on Operating System Principles (Austin, Tex., Nov. 8-11, 1987). ACM, 1987, pp. 123-138.]]
[5]
B{RRELL, A., AND NELSON, B. Implementing remote procedure calls. ACM Trans. Compttt. Syst. 2, 1 (Feb. 1984), 39-59.]]
[6]
ChRRIERO, N., AND GELERNTER, D. The S/Net's Linda kernal. ACM Trans. Comput. Syst. 4, 2 (May 1986), 110-129.]]
[7]
CHANG, J., AND MAXEMCHUK, N. Reliable broadcast protocols. ACM Trans. Comput. Syst. 2, 3 (Aug. 1984), 251-273.]]
[8]
CHERITON, D., AND ZWAENEPOEL, W. Distributed process groups in the V kernel. ACM Trans. Comput. Syst. 3, 2 (May 1985), 77-107.]]
[9]
CHERITON, D. VMTP: A transport protocol for the next generation of communications systems. In Proceedings of SIGCOMM '86 Communications, Architectures and Protocols (Stowe, Vt., Aug. 5-7, 1986). ACM, New York, 1986, pp. 406-415.]]
[10]
CRISTIAN, F. Agreeing on who is present and who is absent in synchronous distributed systems. In Digest of Papers, Fault Tolerant Computing Systems 18. IEEE Computer Society Press, New York, June 1988, 206-211.]]
[11]
GIFFORD, D., AND GLASSER, N. Remote pipes and procedures for efficient distributed communication. ACM Trans. Comput. Syst. 6, 3 (Aug. 1988), 258-283.]]
[12]
GRAY, J. Notes on database operating systems. In Lecture Notes ia Computer Science 60, Springer-Verlag, Berlin, 1987, 393-481.]]
[13]
HERLIU~, M. Extending multiversion time-stamping protocols to exploit type information. IEEE Trans. Comput. C-36, 4 (Apr. 1987), 443-448.]]
[14]
HUTCHINSON, N., AND PETERSON, L. Design of the x-kernel. In Proceedings o/ SIG- COMM '88--Symposium on Communication Architectures and Protocols (Stanford, Calif., Aug. 16-18, 1988). ACM, New York, 1988, pp. 65-75.]]
[15]
JOHNSON, D., AND ZWAENEPOEL. Sender-based message logging. In Proceedings of the Seventeenth International Symposium on Fault-Tolerant Computing (June 1987), pp. 14-19.]]
[16]
JOHNSON, D., AND ZWA.ENEPOEL. Recovery in distributed systems using optimistic message logging and checkpointing. In Proceedings of the 7th PODC (Aug. 1988), to appear.]]
[17]
LAMPORT, L. Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21, 7 (July 1978) 558-565.]]
[18]
MISHRA, S., PETERSON, L., AND SCHLICHTING, R. implementing fault-tolerant replicated objects using Psync. To appear in the 8th Symposium on Reliable Distributed Systems, Oct. 1989.]]
[19]
POSTEL, J. User datagram protocol. In Request For Comments 768, USC Information Sciences Institute, Marina del Rey, Calif., Aug. 1980.]]
[20]
POSTEL, J. Internet protocol. In Request For Comments 791, USC Information Sciences Institute, Marina del Rey, Calif., Sept. 1981.]]
[21]
POSTEL, J. Simple mail transfer protocol. In Request/or Comments 821, USC Information Sciences Institute, Marina del Rey, Calif., Aug. 1982.]]
[22]
POWELL, M., AND PRESOTTO, D. Publishing: A reliable broadcast communication mechanism. In Proceedings of the 9th Symposium on Operating System Principles (Bretton Woods, N.H., Oct. 11-13, 1983). ACM, 1983, pp. 100-109.]]
[23]
SALTZER, J., REED, D., AND CLARK, D. End-to-end arguments in system design. ACM Trans. Comput. Syst. 2, 4 (Nov. 1984), 277-288.]]
[24]
STROM, R., AND YEMINI, S. Optimistic recovery in distributed systems. ACM Trans. Comput. Syst. 3, 3 (Aug. 1985), 204-226.]]
[25]
STROM, R., BACON, D., AND YEMINI, S. Volatile logging in n-fault-tolerant distributed systems. In Proceedings of the Eighteenth International Symposium on Fault-Tolerant Computing (June 1988), to appear.]]
[26]
SCHNEIDER, F. Synchronization in distributed programs. A CM Trans. Program. Lang. Syst. 4, 2 (Apr. 1982), 125-148.]]
[27]
TANENBAUM, A. Computer Networks. 2nd ed., Prentice-Hall, Englewood Cliffs, N.J., 1988.]]
[28]
USC INFORMATION SCIENCES INSTITUTE. Transmission control protocol. In Request For Comments 793, Marina del Rey, Calif., Sept. 1981.]]
[29]
ZWAENEPOEL, W. Protocols for large data transfers over local networks. In Proceedings o{ the Ninth Data Communications Symposium (Aug. 1985), pp. 22-32.]]

Cited By

View all
  • (2023)A Partial Order View of Message-Passing Communication ModelsProceedings of the ACM on Programming Languages10.1145/35712487:POPL(1601-1627)Online publication date: 11-Jan-2023
  • (2023)FnF-BFT: A BFT Protocol with Provable Performance Under AttackStructural Information and Communication Complexity10.1007/978-3-031-32733-9_9(165-198)Online publication date: 6-Jun-2023
  • (2022)Byzantine Fault-Tolerant Causal Broadcast on Incomplete Graphs2022 IEEE 21st International Symposium on Network Computing and Applications (NCA)10.1109/NCA57778.2022.10013642(63-71)Online publication date: 14-Dec-2022
  • Show More Cited By

Recommendations

Reviews

William W. Oblitey

This paper will be of interest to people concerned with protocol performance and analysis and to those looking for ways of enhancing distributed systems. The authors introduce a newly developed interprocess communication protocol called Psync (for pseudosynchronous). This low-level protocol supports the exchange of messages among a well-defined set of processes and, in the presence of processor or communication failure, it preserves the partial ordering of the messages that have been exchanged among the participants. The paper presents an algorithm for implementing this protocol in a distributed environment along with a discussion of its operational subtleties. These involve problems with host failures and memory management, including three flow-control limitations that inhibit the protocol. The authors also discuss how to accommodate processor failures during conversations and clearly explain the recovery schemes. The paper reports on two sets of experiments that compare Psync with other protocols. The experiments consist of a measure of the round trip delay for Psync and three other protocols (an unreliable datagram protocol, a remote procedure call protocol, and a virtual circuit protocol) and a measure of the performance of Psync with more than two participating hosts. The comparisons are presented in tabular form together with a discussion of the relative performance of Psync as revealed by the experimental results.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Computer Systems
ACM Transactions on Computer Systems  Volume 7, Issue 3
Aug. 1989
100 pages
ISSN:0734-2071
EISSN:1557-7333
DOI:10.1145/65000
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 August 1989
Published in TOCS Volume 7, Issue 3

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)130
  • Downloads (Last 6 weeks)15
Reflects downloads up to 20 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2023)A Partial Order View of Message-Passing Communication ModelsProceedings of the ACM on Programming Languages10.1145/35712487:POPL(1601-1627)Online publication date: 11-Jan-2023
  • (2023)FnF-BFT: A BFT Protocol with Provable Performance Under AttackStructural Information and Communication Complexity10.1007/978-3-031-32733-9_9(165-198)Online publication date: 6-Jun-2023
  • (2022)Byzantine Fault-Tolerant Causal Broadcast on Incomplete Graphs2022 IEEE 21st International Symposium on Network Computing and Applications (NCA)10.1109/NCA57778.2022.10013642(63-71)Online publication date: 14-Dec-2022
  • (2021)1PipeProceedings of the 2021 ACM SIGCOMM 2021 Conference10.1145/3452296.3472909(78-92)Online publication date: 9-Aug-2021
  • (2020)Practical client-side replicationProceedings of the VLDB Endowment10.14778/3407790.340784713:12(2590-2605)Online publication date: 1-Jul-2020
  • (2020)MakeSenseACM Transactions on Internet of Things10.1145/33819141:3(1-25)Online publication date: 1-Jun-2020
  • (2020)On combining fault tolerance and partial replication with causal consistencyProceedings of the 7th Workshop on Principles and Practice of Consistency for Distributed Data10.1145/3380787.3393684(1-5)Online publication date: 27-Apr-2020
  • (2020)The intrinsic cost of causal consistencyProceedings of the 7th Workshop on Principles and Practice of Consistency for Distributed Data10.1145/3380787.3393674(1-6)Online publication date: 27-Apr-2020
  • (2019)REALACM Transactions on Embedded Computing Systems10.1145/336210018:6(1-24)Online publication date: 15-Nov-2019
  • (2019)Robust Design and Validation of Cyber-physical SystemsACM Transactions on Embedded Computing Systems10.1145/336209818:6(1-21)Online publication date: 15-Nov-2019
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media