CS 97: Reading List

(*) : focus on these papers in your discussion groups, the other papers you should skim through

Week 2:

Distributed Systems Overview

[1] (*) End-To-End Arguments in System Design J.H. Saltzer, D.P. Reed and D.D. Clark. ACM Transactions on Computer Systems, 4(4):277-288, November 1984

[2] (*) Distributed operating systems; Andrew S. Tanenbaum and Robbert Van Renesse; ACM Comput. Surv. 17, 4 (Dec. 1985), Pages 419 - 470. Just read sections 1 and 2 and focus on the big issues not the details.

Week 3:

Communication Protocols

[4] (*) The Design Philoshophy of the DARPA Internet Procotols David D. Clark, Proceedings of the 1988 SIGCOMM Symposium, pp 106-114, Stanford, CA, August 1988.

Message Passing Libraries

[5] (*) "The PVM Concurrent Computing System: Evolution, Experiences, and Trends"

[6] J. J. Dongarra, S. W. Otto, M. Snir, and D. Walker,
"A message passing standard for MPP and workstations," CACM, 39(7), 1996, pp. 84-90

Week 4:

Event Ordering

[7] Time, clocks, and the ordering of events in a distributed system Leslie Lamport, Communications of the ACM, 21(7):558-565, July 1978.

[8] (*) Distributed snapshots: determining global states of distributed systems; K. Mani Chandy and Leslie Lamport; ACM Trans. Comput. Syst. 3, 1 (Feb. 1985), Pages 63 - 75

Also, here are a few paragraphs on why distributed state is useful, taken from "The Role of Distributed State" by John K. Ousterhout.

Distributed Communication

[9] (*) Active Messages: A Mechanism for Integrated Communication and Computation T. von Eicken, D. E. Culler, S. C. Goldstein and K. E.Schauser (Berkeley). In Proceedings of the 19th Int'l Symp. on Computer Architecture. Gold Coast, Australia, May 1992.

Week 5:

Naming in Distributed Systems

[10] Mockapetris P. V. and Dunlap K. J.
"Developement of the Domain Name System", In Proceedings of the ACM SIGCOMM'88, Aug. 1988

[11] (*) Andrew D. Birrell, Roy Levin, Roger M. Needham, Michael D. Schroeder, "Grapevine: An Exercise in Distributed Computing", Communications of the ACM, 25 4, April 1982, pp. 260-274.

Fault Tolerance

[12] (*) Felix C. Gartner, "Fundamentatls of Fault-Tolerant Distributed Computing in Asynchronous Environments", ACM Computing Surveys, 31(1), March 1999

Week 6:

Clusters

[13] (*) A Case for NOW (Networks of Workstations) T. Anderson, D. E. Culler, D. A. Patterson, et. al..

[14] Donald J. Becker, Thomas Sterling, Daniel Savarese, John E. Dorband, Udaya A. Ranawak, Charles V. Packer, "BEOWULF: A PARALLEL WORKSTATION FOR SCIENTIFIC COMPUTATION" Proceedings, International Conference on Parallel Processing, 1995

RPC

[15] Lightweight Remote Procedure Call B. N. Bershad, T. E. Anderson, E. D. Lazowska and H. M. Levy, ACM Transactions on Computer Systems 8, 1 (February 1990), 37-55

[16] George K. Thiruvathukal, Lovely S. Thomas, and Andy T. Korczynski,
Reflective Remote Method Invocation ACM Java '98, Stanford University, Palo Alto, CA and Concurrency: Practice and Experience 1998.

Week 7:

Distributed File Systems

[17] V. Srinivasan and J. Mogul, "Spritely NFS: experiments with cache-consistency protocols", Proceedings of the Twelfth ACM symposium on Operating Systems Principles, December 3 - 6, 1989, Litchfield Pk., AZ USA

[18] (*) M. Satyanarayanan, "Scalable, Secure, and Highly Available Distributed File Access", IEEE Computer, May 1990, Vol. 23, No. 5

[19] David A. Patterson, Garth Gibson, Randy H. Katz, "A Case for Redundant Array of Inexpensive Disks (RAID)", ACM SIGMOD International Conference on Management of Data, 1988, pp. 109-116.

[20] (*) John Hartman and John Ousterhout, "Zebra: A Striped Network File System". In the Proceedings of the USENIX Workshop on File Systems.

Week 8:

Distributed Shared Memory

[21] K. Li and P. Hudak.
"Memory Coherence in Shared Virtual Memory Systems." ACM Trans. Computer Systems Vol. 7, No. 4. Nov. 1989. pp. 321-359.

[22] (*) A. Cox, S. Dwarkadas, P. Keleher, and W. Zwaenepoel.
"TreadMarks: Distributed shared memory on standard workstations and operating systems." Proceedings of the Winter 94 Usenix Conference. USENIX Assoc., Berkeley, Calif. pp. 115-131

Distributed Data Structures/Objects

[23] (*) N. Carriero and D. Gelernter, "The S/Net's Linda Kernel", ACM Trans. on Computer Systems, 4 2, May 1986, pp. 110-129.

Week 10:

Security

[24] Eugene H. Spafford
"The Internet Worm: Crisis and Aftermath", Communications of the ACM, 32 (6): 678-687, June 1989

[25] (*) Gerald J. Popek, Charles S. Kline, "Encryption and Secure Computer Networks", Computing Surveys, 11 4, December 1979, pp. 331-356.

[26] (*) B. Clifford Neuman and Theodore Ts'o, "Kerberos: an Authentication Service for Computer Networks", IEEE Communications, 32(9):33-39, September 1994.

Week 11:

Meta-computing

[27] (*) I. Foster and C. Kesselman, "Globus: A Metacomputing Infrastructure Toolkit", International Journal of Supercomputer Applications, 11(2):115-128, 1997.

[28] Andrew S. Grimsaw and William A. Wulf, "Legion--A View From 50,000 Feet", Proceedings of the Fifth IEEE International Symposium on High Performance Distributed Compuing, IEEE Computer Society Press, Los Alamitos, CA, August 1996

Meta-computing Security

[29] (*) I. Foster, C. Kesselman, G. Tsudik and S. Tuecke, "A Security Architecture for Computation Grids", Proc. 5th ACM Conference on Computer and Communications Security Conference, pg. 83-92, 1998.

[30] Adam Ferrari, Frederick Knabe, Marty Humphrey, Steve Chapin, and Andrew Grimshaw, A Flexible Security System for Metacomputing Environments", Proceedings of HPCN'99 (High-Performance Computing and Networking), April 1999, Amsterdam, The Netherlands.

Week 12:

Web Caching

[31] (*) C. Liu and P. Cao, "Maintaining Strong Cache Consistency in the World-Wide Web", 17th International Conf. on Distributed Computing Systems, 1997.

[32] Alec Wolman, Geoffrey M. Voelker, Nitin Sharma, Neal Cardwell, Anna Karlin, and Henry M. Levy, "On the scale and performance of cooperative Web proxy caching", Proc. of the 17th ACM Symposium on Operating Systems Principles (SOSP '99), December 1999.

Security and the Web

[32] (*) Rohit Khare and Adam Rifkin, "Weaving a Web of Trust" (working draft version of the version that appeared in of the World Wide Web Journal summer 1997(Volume 2, Number 3, Pages 77-112)).