skip to main content
10.1145/195473.195481acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
Article
Free Access

Separating data and control transfer in distributed operating systems

Authors Info & Claims
Published:01 November 1994Publication History

ABSTRACT

Advances in processor architecture and technology have resulted in workstations in the 100+ MIPS range. As well, newer local-area networks such as ATM promise a ten- to hundred-fold increase in throughput, much reduced latency, greater scalability, and greatly increased reliability, when compared to current LANs such as Ethernet.

We believe that these new network and processor technologies will permit tighter coupling of distributed systems at the hardware level, and that distributed systems software should be designed to benefit from that tighter coupling. In this paper, we propose an alternative way of structuring distributed systems that takes advantage of a communication model based on remote network access (reads and writes) to protected memory segments.

A key feature of the new structure, directly supported by the communication model, is the separation of data transfer and control transfer. This is in contrast to the structure of traditional distributed systems, which are typically organized using message passing or remote procedure call (RPC). In RPC-style systems, data and control are inextricably linked—all RPCs must transfer both data and control, even if the control transfer is unnecessary.

We have implemented our model on DECstation hardware connected by an ATM network. We demonstrate how separating data transfer and control transfer can eliminate unnecessary control transfers and facilitate tighter coupling of the client and server. This has the potential to increase performance and reduce server load, which supports scaling in the face of an increasing number of clients. For example, for a small set of file server operations, our analysis shows a 50% decrease in server load when we switched from a communications mechanism requiring both control transfer and data transfer, to an alternative structure based on pure data transfer.

References

  1. 1.T. E. Anderson et al. High-speed switch scheduling for localarea networks. ACM Trans. Comput. Syst., 11{4):319-352, Nov. 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.B.N. Bershadetal. Lightweight remote procedure call. ACM Trans. Comput. Syst., 8(1 ):37-55, Feb. 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3.A. Birrell et al. Network objects. In Proceedings of the 14th A CM Symposium on Operating Systems Principles, pages 217-230, Dec. 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.A.D. Bin'ell. Secure communication using remote procedure calls. ACM Trans. Comput. Syst., 3(1 ):1-14, Feb. 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.A.D. Bin'ell et al. Grapevine: An exercise in distributed computing. Commun. ACM, 25(4):260--274, April 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6.M.A. Blumrich et al. Virtual memory mapped network interface for the SHRIMP multicomputer. In Proceedings of the 21st International Symposium on Computer Architecture, pages 142-153, May 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.D.R. Cheriton. The V kernel: A software base for distributed systems. IEEE Software, 1 (2): 19-42, April 1984.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8.W.J. Dally et al. Architecture of a message-driven processor. In Proceedings of the 14th International Symposium on Computer Architecture, pages 189-196, June 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 9.G. Delp. The Architecture and Implementation of Memnet: A High-Speed Shared Memory Computer Communication Network. PhD thesis, University of Delaware, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10.D. K. Gifford and N. Glasser. Remote pipes and procedures for efficient distributed communication. ACM Trans. Comput. Syst., 6(3):258-283, Aug. 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11.J.H. Howard et al. Scale and performance in a distributed file system. ACM Trans. Comput. Syst., 6(1):51-81, Feb. 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12.K. Li and P. Hudak. Memory coherence in shared virtual memory systems. ACM Trans. Comput. Syst., 7(4):321-359, Nov. 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13.J. Liedtke. Improving IPC by kernel design. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 175-188, Dec. 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.A. Mohindra and M. Devarakonda. Distributed token management in a cluster file system. To appear in Proceedings of the Symposium on Parallel and Distributed Processing, Oct. 1994.Google ScholarGoogle Scholar
  15. 15.M. N. Nelson, B. B. Welch, and J. K. Ousterhout. Caching in the Sprite network file system. ACM Trans. Comput. Syst., 6(1 ): 134-154, Feb. 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 16.R. S. Nikhil, G. Papadopoulos, and Arvind. *T: A multithreaded massively parallel architecture. In Proceedings of the 19th International Symposium on ComputerArchitecture, pages 156-167, May 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17.M. D. Schroeder and M. Burrows. Performance of Firefly RPC. ACM Trans. Comput. Syst., 8(1 ):1-17, Feb. 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 18.M. D. Schroeder et al. Autonet: A high-speed, selfconfiguring local area network using point-to-point links. IEEE Journal on Selected Areas in Communications, 9(8):1318-1335, Oct. 1991.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19.A. Z. Spector. Performing remote operations efficiently on a local computer network. Commun. ACM, 25(4):246-260, April 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20.V. Srinivasan and J. C. Mogul. Spritely NFS: Experiments with cache-consistency protocols. In Proceedings of the 12th ACM Symposium on Operating Systems Principles, pages 45-57, Dec. 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 21.J. G. S teiner, C. Neuman, and J. I. Schiller. Kerberos: An authentication service for open network systems. In Proceedings of the Winter 1988 USENIX Conference, pages 191-202, Feb. 1988.Google ScholarGoogle Scholar
  22. 22.C. P. Thacker et al. Alto: A personal computer. In Daniel P Siewiorek, C. Gordon Bell, and Allen Newell, Computer Structures: Principles and Examples, chapter 33, pages 549- 572. McGraw-Hill Book Company, 1982.Google ScholarGoogle Scholar
  23. 23.C. A. Thekkath, H. M. Levy, and E. D. Lazowska. Efficient support for multicomputing on ATM networks. Technical Report 93-04-03, Department of Computer Science and Engineering, University of Washington, Apr. 1993.Google ScholarGoogle Scholar
  24. 24.T yon Eicken et al. Active Messages: A mechanism for integrated communication and computation, in Proceedings of the 19th International Symposium on ComputerA rchitecture, pages 256-266, May 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 25.J. Wilkes. Hamlyn--an interface for sender-based communications. Technical Report HPL-OSR-92-13, Hewlett Packard Laboratories, Nov. 1992.Google ScholarGoogle Scholar

Index Terms

  1. Separating data and control transfer in distributed operating systems

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              ASPLOS VI: Proceedings of the sixth international conference on Architectural support for programming languages and operating systems
              November 1994
              341 pages
              ISBN:0897916603
              DOI:10.1145/195473

              Copyright © 1994 ACM

              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]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 1 November 1994

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • Article

              Acceptance Rates

              Overall Acceptance Rate535of2,713submissions,20%

              Upcoming Conference

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader