Interconnecting computers: Architecture, technology, and economics

  • Butler W. Lampson
Invited Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 782)


Modern computer systems have a recursive structure of processing and storage elements that are interconnected to make larger elements:
  • Functional units connected to registers and on-chip cache.

  • Multiple processors and caches connected to main memories.

  • Computing nodes connected by a message-passing local area network.

  • Local area networks bridged to form an extended LAN.

  • Networks connected in a wide-area internet.

  • All the computers in the world exchanging electronic mail.

Above the lowest level of transistors and gates, the essential character of these connections changes surprisingly little over about nine orders of magnitude in time and space. Connections are made up of nodes and links; their important properties are band width, latency, connectivity, availability, and cost. Switching is the basic mechanism for connecting lots of things. There are many ways to implement it, all based on multiplexing and demultiplexing. This paper describes some of them and gives many examples. It also considers the interactions among the different levels of complex systems.


Input Channel Asynchronous Transfer Mode Output Link Page Fault Remote Procedure Call 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    R. Barton: A new approach to the functional design of a digital computer. Proc. Western Joint Computer Conference (1961)Google Scholar
  2. 2.
    A. Birrell and B. Nelson: Implementing remote procedure calls. ACM Transactions on Computer Systems 2, 39–59 (1984)Google Scholar
  3. 3.
    D. Culler et al.: Fine-grain parallelism with minimal hardware support: A compiler-controlled threaded abstract machine. 4th ACM Conference on Architectural Support for Programming Languages and Operating Systems, 164–175 (1991)Google Scholar
  4. 4.
    W. Dally: A universal parallel computer architecture. New Generation Computing 11, 227–249 (1993)Google Scholar
  5. 5.
    P. Green: The future of fiber-optic computer networks. IEEE Computer 24, 78–87 (1991)Google Scholar
  6. 6.
    J. Hennessy and N. Jouppi: Computer technology and architecture: An evolving interaction. IEEE Computer 24, 18–29 (1991)Google Scholar
  7. 7.
    C. Hoare: Communicating sequential processes. Communications of the ACM 21, 666–677 (1978)Google Scholar
  8. 8.
    V. Jacobsen: Congestion avoidance and control. ACM SigComm Conference, 1988, 314–329Google Scholar
  9. 9.
    L. Lamport: How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Computers C-28, 241–248 (1979)Google Scholar
  10. 10.
    B. Lampson: Reliable messages and connection establishment. In S. Mullender (ed.) Distributed Systems, Addison-Wesley, 1993, 251–282Google Scholar
  11. 11.
    D. Lenkosi et al.: The Stanford Dash multiprocessor. IEEE Computer 25, 63–79 (1992)Google Scholar
  12. 12.
    K. Li and P. Hudak: Memory coherence in shared virtual memory systems. ACM Transactions on Computer Systems 7, 321–359 (1989)Google Scholar
  13. 13.
    C. Mead and L. Conway: Introduction to VLSI Systems. Addison-Wesley, 1980Google Scholar
  14. 14.
    R. Metcalfe and D. Boggs: Ethernet: Distributed packet switching for local computer networks. Communications of the ACM 19, 395–404 (1976)Google Scholar
  15. 15.
    L. Ni and P. McKinley: A survey of wormhole routing techniques in direct networks. IEEE Computer 26, 62–76 (1993)Google Scholar
  16. 16.
    R. Pike et al.: The use of name spaces in Plan 9. ACM Operating Systems Review 27, 72–76 (1993)Google Scholar
  17. 17.
    R. Rettberg et al.: The Monarch parallel processor hardware design. IEEE Computer 23, 18–30 (1990)Google Scholar
  18. 18.
    F. Ross: An overview of FDDI: The fiber distributed data interface. IEEE Journal on Selected Areas in Communication 7 (1989)Google Scholar
  19. 19.
    J. Saltzer, D. Reed, and D. Clark: End-to-end arguments in system design. ACM Transactions on Computer Systems 2, 277–288 (1984)Google Scholar
  20. 20.
    M. Satyanarayanan: Distributed file systems. In S. Mullender (ed.) Distributed Systems, Addison-Wesley, 1993, 353–384Google Scholar
  21. 21.
    M. Schroeder and M. Burrows: Performance of Firefly RPC. ACM Transactions on Computer Systems 8, 1–17 (1990)Google Scholar
  22. 22.
    M. Schroeder et al.: Autonet: A high-speed, self-configuring local area network using point-to-point links. IEEE Journal on Selected Areas in Communication 9, 1318–1335 (1991)Google Scholar
  23. 23.
    C. Seitz: The cosmic cube. Communications of the ACM 28, 22–33 (1985)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Butler W. Lampson
    • 1
  1. 1.Systems Research CenterDigital Equipment CorporationCambridge

Personalised recommendations