skip to main content
10.1145/41457.37515acmconferencesArticle/Chapter ViewAbstractPublication PagessospConference Proceedingsconference-collections
Article
Free access

Exploiting virtual synchrony in distributed systems

Published: 01 November 1987 Publication History
  • Get Citation Alerts
  • Abstract

    We describe applications of a virtually synchronous environment for distributed programming, which underlies a collection of distributed programming tools in the ISIS2 system. A virtually synchronous environment allows processes to be structured into process groups, and makes events like broadcasts to the group as an entity, group membership changes, and even migration of an activity from one place to another appear to occur instantaneously — in other words, synchronously. A major advantage to this approach is that many aspects of a distributed application can be treated independently without compromising correctness. Moreover, user code that is designed as if the system were synchronous can often be executed concurrently. We argue that this approach to building distributed and fault-tolerant software is more straightforward, more flexible, and more likely to yield correct solutions than alternative approaches.

    References

    [1]
    Babaoglu, O., and Drummond, R. Streets of Byzantium: Network architectures for fast reliable broadcasts. IEEE TSE SE-11, 6 (June 1985), 546-554.
    [2]
    Birrell, A., Nelson, B. Implementing remote procedure calls. A CM Transactions on Computer Systems 2, I (Feb. 1984), 39-59.
    [3]
    Birman, K. and Joseph, T. Reliable communication in the presence of failures. A CM Transactions on Compurer Systems 5, 1 (Feb. 1987).
    [4]
    Birman, K. Replication and fault-tolerance in the ISIS system. Proc. lOth ACM SiGOPS Symposium on Operating Systems Principles. Orcas Island, Washington, Dec. 1985, 79-86.
    [5]
    Birman, K., Joseph, T. and Schmuck, F. ISIS Systern Documentation, Release I. Available as TR-87-849, Department of Computer Science, Cornell University, July 1987.
    [6]
    Birman, K. and Joseph, T. Programming with shared bulletin boards in asynchronous distributed systerns. Dept. of Computer Science TR-86-772, Cornell University (August 1986; Revised December 1986).
    [7]
    Chang, J, Maxemchuk, N. Reliable broadcast protocols. ACM Transactions on Computing Systems 2, 3 (Aug. 1984), 251-273.
    [8]
    Cheriton, D. and Zwaenepoel, W. Distributed process groups in the V kernel. A CM Transactions on Compurer Systems 3, 2 (May. 1985), 77-107.
    [9]
    Cooper, E. Replicated distributed programs. Proc. lOth ACM SiGOPS Symposium on Operating Systems Principles. Orcas Island, Washington, Dec. 1985, 63-78.
    [10]
    Cristian, F., Aghili, H., Strong, R., Dolev, D. Atomic broadcast: From simple message diffusion to Byzantine agreement, iBM Technical Report RJ 4540 (48668) 12/10/84.
    [11]
    Gifford, D. Weighted voting for replicated data. Proc. 7th A CM SIGOPS Symposium on Operating Systems Principles. December 1979.
    [12]
    Herlihy, M. Replication methods for abstract data types. Ph.D. thesis, Dept. of Computer Science, MIT (LCS 84-319), May 1984.
    [13]
    Jefferson, D. Virtual time. USC Technical report TR-83-213, University of Southern California, Los Angeles, May 1983.
    [14]
    Joseph, T. and Birman, K. Low cost management of replicated data in fault-tolerant distributed systems. A CM Transactions on Computing Systems 4, I (Feb. 1986), 54- 70.
    [15]
    Lamport, L. Using time instead of timeout for fault-tolerance in distributed systems. ACM TOPLAS 6, 2 (April 1984), 254-280.
    [16]
    Lamport, L. Time, clocks, and the ordering of events in a distributed system. CACM 21, 7, July 1978, 558-565.
    [17]
    Liskov, B., Ladin, R. High Available Distributed Servers and Fault Tolerant Garbage Collection. Proc 5th ACM SIGACT/SIGOPS Symposium on Principles of Distributed Computing, Aug. 1986, 40-51.
    [18]
    Moss, E. Nested transactions: An approach to reliable, distributed computing. Ph.D. thesis, MIT Dept of EECS, TR 260, April 1981.
    [19]
    Peterson, L. Preserving context information in an IPC abstraction. Proc. 6th Symposium on Reliability in Distributed Software and Database Systems, March 1987, 22-31.
    [20]
    Schneider, F. Synchronization in distributed programs. ACM TOPLAS 4, 2 (April 1982), 179-195.
    [21]
    Schneider, F., Gries, D., Schlicting, R. Reliable broadcast protocols. Science of Computer Programming 3, 2 (March 1984).
    [22]
    Schmuck, F. Picking the cheapest broadcast protocols in a distributed program. Ph.D. thesis, Cornell Univ. Dept. of Computer Science, (expected) Dec. 1987.
    [23]
    Skeen, D. Determining the last process to fail. A CM Transactions on Computing Systems 3, 1, Feb. 1985.15-30.
    [24]
    strom, R. and Yemini, S. Optimistic recovery in distributed systems. ACM Transactions on Computing Systems 3, 3 (April 1985), 204-226.

    Cited By

    View all
    • (2023)Data Integration Framework to Collect Data from OT/IT SystemsActa Technica Jaurinensis10.14513/actatechjaur.0068916:2(34-41)Online publication date: 31-May-2023
    • (2023)NeoBFT: Accelerating Byzantine Fault Tolerance Using Authenticated In-Network OrderingProceedings of the ACM SIGCOMM 2023 Conference10.1145/3603269.3604874(239-254)Online publication date: 10-Sep-2023
    • (2023)Experimental Evaluation of Callback Behavior in ROS 2 Executors2023 IEEE 28th International Conference on Emerging Technologies and Factory Automation (ETFA)10.1109/ETFA54631.2023.10275668(1-8)Online publication date: 12-Sep-2023
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SOSP '87: Proceedings of the eleventh ACM Symposium on Operating systems principles
    November 1987
    162 pages
    ISBN:089791242X
    DOI:10.1145/41457
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 November 1987

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Article

    Acceptance Rates

    Overall Acceptance Rate 131 of 716 submissions, 18%

    Upcoming Conference

    SOSP '24

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)289
    • Downloads (Last 6 weeks)43

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Data Integration Framework to Collect Data from OT/IT SystemsActa Technica Jaurinensis10.14513/actatechjaur.0068916:2(34-41)Online publication date: 31-May-2023
    • (2023)NeoBFT: Accelerating Byzantine Fault Tolerance Using Authenticated In-Network OrderingProceedings of the ACM SIGCOMM 2023 Conference10.1145/3603269.3604874(239-254)Online publication date: 10-Sep-2023
    • (2023)Experimental Evaluation of Callback Behavior in ROS 2 Executors2023 IEEE 28th International Conference on Emerging Technologies and Factory Automation (ETFA)10.1109/ETFA54631.2023.10275668(1-8)Online publication date: 12-Sep-2023
    • (2023)Invited Paper: Monotonicity and Opportunistically-Batched Actions in DerechoStabilization, Safety, and Security of Distributed Systems10.1007/978-3-031-44274-2_14(172-190)Online publication date: 2-Oct-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: 25-May-2023
    • (2023)Software Design PatternsAn Introduction to Software Design10.1007/978-3-031-28311-6_8(231-275)Online publication date: 25-Jul-2023
    • (2022)Acuerdo: Fast Atomic Broadcast over RDMAProceedings of the 51st International Conference on Parallel Processing10.1145/3545008.3545041(1-11)Online publication date: 29-Aug-2022
    • (2022)Authentication of smart grid communications using quantum key distributionScientific Reports10.1038/s41598-022-16090-w12:1Online publication date: 26-Jul-2022
    • (2022)A Comprehensive Evaluation of Cryptographic Ciphers on Secure Publish/Subscribe Communications for IoT DevicesInnovations in Smart Cities Applications Volume 510.1007/978-3-030-94191-8_93(1141-1150)Online publication date: 3-Mar-2022
    • (2021)Digital unterstütztes Lernen in der PflegeausbildungDigitally supported learning in nursing trainingMedienPädagogik: Zeitschrift für Theorie und Praxis der Medienbildung10.21240/mpaed/jb16/2021.04.30.X(317-345)Online publication date: 30-Apr-2021
    • Show More Cited By

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media