Alan Kaminsky Department of Computer Science Rochester Institute of Technology 4486 + 2220 = 6706
Home Page
Distributed Systems 4005-730-01 Spring Quarter 2013
Course Page

4005-730-01 Distributed Systems
Bibliography and Links

Prof. Alan Kaminsky -- Spring Quarter 2013
Rochester Institute of Technology -- Department of Computer Science

Java Tutorials
Java Documentation
Distributed Systems Books and Papers
Distributed Object Systems Books
Data Communications and Networks Books
Network Security Books
Cryptography Books
Books on the Above in Java
Jini Network Technology
Tuple Spaces
Journals
Conferences
Internet Standards


Java Tutorials

The Java Tutorial. http://download.oracle.com/javase/tutorial

Java I/O Tutorial (including object serialization). http://download.oracle.com/javase/tutorial/essential/io/index.html

Java Concurrency Tutorial. http://download.oracle.com/javase/tutorial/essential/concurrency/index.html

Java Exceptions Tutorial. http://download.oracle.com/javase/tutorial/essential/exceptions/index.html

Java Networking Tutorial. http://download.oracle.com/javase/tutorial/networking/index.html

Java RMI Tutorial. http://download.oracle.com/javase/tutorial/rmi/index.html


Java Documentation

Java 2 Standard Edition Software Development Kit Version 1.6.0 Documentation. http://download.oracle.com/javase/6/docs/

Java 2 Standard Edition Software Development Kit Version 1.6.0 API Specification. http://download.oracle.com/javase/6/docs/api/


Distributed Systems Books and Papers

Kai Hwang, Geoffrey C. Fox, and Jack J. Dongarra. Distributed and Cloud Computing: From Parallel Processing to the Internet of Things. Morgan Kaufmann, 2012.

Barry Wilkinson. Grid Computing: Techniques and Applications. CRC Press, 2010.

Tom White. Hadoop: The Definitive Guide. O'Reilly Media, 2010.

Frédéric Magoulès, Jie Pan, Kiat-An Tan, and Abhinit Kumar. Introduction to Grid Computing. CRC Press, 2009.

Ajay D. Kshemkalyani and Mukesh Singhal. Distributed Computing: Principles, Algorithms, and Systems. Cambridge University Press, 2008.

Dominic Greenwood, Fabio Luigi Bellifemine, and Giovanni Caire. Developing Multi-Agent Systems with JADE. John Wiley and Sons, 2007.

Arno Puder, Kay Römer, and Frank Pilhofer. Distributed Systems Architecture: A Middleware Approach. Elsevier, 2006.

Andrew S. Tanenbaum and Maarten van Steen. Distributed Systems: Principles and Paradigms, Second Edition. Prentice Hall, 2006.

M. L. Liu. Distributed Computing: Principles and Applications. Addison-Wesley, 2004.

George Coulouris, Jean Dollimore, and Tim Kindberg. Distributed Systems: Concepts and Design, Third Edition. Addison-Wesley, 2001.

Joel M. Crichlow. The Essence of Distributed Systems. Pearson Education Limited, 2000.

Doreen L. Galli. Distributed Operating Systems: Concepts and Practice. Prentice Hall, 2000.

Gerard Tel. Introduction to Distributed Algorithms, Second Edition. Cambridge University Press, 2000.

Samuel C. Kendall, Jim Waldo, Ann Wollrath, and Geoff Wyant. A note on distributed computing. Sun Microsystems Laboratories Technical Report TR-94-29, November 1994. http://research.sun.com/techrep/1994/abstract-29.html

Sape Mullender, editor. Distributed Systems, Second Edition. ACM Press/Addison-Wesley, 1993.

Peter Deutsch. The eight fallacies of distributed computing. http://blogs.oracle.com/jag/resource/Fallacies.html

Bill Venners. Conversations: Discussions About Software. http://www.artima.com/intv/index.html
Particularly interesting are conversations with Ken Arnold, the lead architect of JavaSpaces, and Jim Waldo, the chief architect of Jini Network Technology.


Distributed Object Systems Books

Esmond Pitt and Kathleen McNiff. java.rmi: The Remote Method Invocation Guide. Addison-Wesley, 2001.

Wolfgang Emmerich. Engineering Distributed Objects. John Wiley & Sons, 2000.

Troy Bryan Downing. Java RMI: Remote Method Invocation. IDG Books Worldwide, 1998.

Robert Orfali, Dan Harkey, and Jeri Edwards. The Essential Distributed Objects Survival Guide. John Wiley & Sons, 1996.


Data Communications and Networks Books

Douglas E. Comer. Computer Networks and Internets, Fifth Edition. Prentice-Hall, 2009.

James F. Kurose and Keith W. Ross. Computer Networking: A Top-Down Approach Featuring the Internet, Fifth Edition. Addison-Wesley, 2009.

Behrouz A. Forouzan. Data Communications and Networking, Fourth Edition. McGraw-Hill, 2007.

Nader F. Mir. Computer and Communication Networks. Prentice Hall, 2007.

Larry L. Peterson and Bruce S. Davie. Computer Networks: A Systems Approach, 4th Edition. Morgan Kaufmann, 2007.

William Stallings. Data and Computer Communications, Eighth Edition. Prentice Hall, 2006.

Andrew S. Tanenbaum. Computer Networks, Fourth Edition. Prentice Hall PTR, 2003.

Alan Dennis. Networking in the Internet Age. John Wiley & Sons, 2002.

Charles E. Perkins, editor. Ad Hoc Networking. Addison-Wesley, 2001.

Radia Perlman. Interconnections: Bridges, Routers, Switches, and Internetworking Protocols, Second Edition. Addison-Wesley, 2000.

Dimitri Bertsekas and Robert Gallager. Data Networks, Second Edition. Prentice Hall, 1992.


Network Security Books

Charles P. Pfleeger and Shari Lawrence Pfleeger. Security in Computing, 4th Edition. Prentice Hall, 2007.

Ryan Russell, Tim Mullen (Thor), FX, Dan "Effugas" Kaminsky, Joe Grand, Ken Pfeil, Ido Dubrawsky, Mark Burnett, and Paul Craig. Stealing the Network: How to Own the Box. Syngress Publishing, 2003.

Charlie Kaufman, Radia Perlman, and Mike Speciner. Network Security: Private Communication in a Public World, Second Edition. Prentice Hall PTR, 2002.

Kevin D. Mitnick and William L. Simon. The Art of Deception. Wiley Publishing, Inc., 2002.

Anonymous. Maximum Linux Security: A Hacker's Guide to Protecting Your Linux Server and Workstation, Second Edition. Sams Publishing, 2001.

Anonymous. Maximum Security: A Hacker's Guide to Protecting Your Internet Site and Network, Third Edition. Sams Publishing, 2001.

Jeff Crume. Inside Internet Security: What Hackers Don't Want You to Know. Addison-Wesley, 2000.

Bruce Schneier. Secrets and Lies: Digital Security in a Networked World. John Wiley & Sons, 2000.


Cryptography Books

Lars Knudsen and Matthew Robshaw. The Block Cipher Companion. Springer-Verlag, 2011.

William Stallings. Cryptography and Network Security: Principles and Practice. Prentice Hall, 2011.

Niels Ferguson, Bruce Schneier, and Tadayoshi Kohno. Cryptography Engineering: Design Principles and Practical Applications. Wiley Publishing, 2010.

Christof Paar and Jan Pelzl. Understanding Cryptography: A Textbook for Students and Practitioners. Springer-Verlag, 2010.

Antoine Joux. Algorithmic Cryptanalysis. Chapman & Hall/CRC, 2009.

Jonathan Katz and Yehuda Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008.

Christopher Swenson. Modern Cryptanalysis: Techniques for Advanced Code Breaking. John Wiley & Sons, 2008.

Susan Loepp and William K. Wootters. Protecting Information: From Classical Error Correction to Quantum Cryptography. Cambridge University Press, 2006.

Douglas R. Stinson. Cryptography: Theory and Practice, 3rd Edition. Chapman & Hall/CRC, 2006.

Wade Trappe and Lawrence C. Washington. Introduction to Cryptography with Coding Theory, 2nd Edition. Prentice Hall, 2006.

Oded Goldreich. Foundations of Cryptography: Volume II Basic Applications. Cambridge University Press, 2004.

Wenbo Mao. Modern Cryptography: Theory and Practice. Hewlett-Packard Company/Prentice Hall PTR, 2004.

Niels Ferguson and Bruce Schneier. Practical Cryptography. Wiley Publishing, 2003.
Errata: http://www.schneier.com/book-practical.html

Charlie Kaufman, Radia Perlman, and Mike Speciner. Network Security: Private Communication in a Public World, Second Edition. Prentice Hall PTR, 2002.

Oded Goldreich. Foundations of Cryptography: Volume I Basic Tools. Cambridge University Press, 2001.

Alfred J. Menezes, Paul C. van Oorschot, and Scott A. Vanstone. Handbook of Applied Cryptography. CRC Press, 1997.
Free online version: http://www.cacr.math.uwaterloo.ca/hac/

Bruce Schneier. Applied Cryptography, 2nd Edition. John Wiley & Sons, 1996.


Books on the Above in Java

Rich Helton and Johennie Helton. Java Security Solutions. Wiley Publishing, Inc., 2002.

David Reilly and Michael Reilly. Java Network Programming and Distributed Computing. Addison-Wesley, 2002.


Tuple Spaces

IBM's TSpaces, a tuple space implementation in Java. http://www.alphaworks.ibm.com/tech/tspaces

David Gerlernter. Mirror Worlds. Oxford University Press, 1991.

Nicholas Carriero and David Gelernter. How to Write Parallel Programs: A First Course. MIT Press, 1990.

Nicholas Carriero and David Gelernter. How to write parallel programs: A guide to the perplexed. ACM Computing Surveys, Volume 21, Number 3, September 1989, pages 323–357.
(Available online from the Wallace Library, Research Databases, ACM Digital Library)

David Gelernter. Generative communication in Linda. ACM Transactions on Programming Languages and Systems, Volume 7, Number 1, January 1985, pages 80–112.
(Available online from the Wallace Library, Research Databases, ACM Digital Library)


Journals

ACM SIGMOBILE Mobile Computing and Communications Review

ACM Transactions on Information and System Security

ACM Transactions on Internet Technology

IEEE Communications

IEEE Network

IEEE Parallel and Distributed Technology (formerly IEEE Concurrency)

IEEE Transactions on Parallel and Distributed Systems

IEEE/ACM Transactions on Networking

Mobile Networks and Applications


Conferences

ACM Conference on Computer and Communications Security

ACM Conference on Object Oriented Programming Systems, Languages, and Applications (OOPSLA)

ACM MobiCom International Conference on Mobile Computing and Networking

ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication

Euromicro Workshop on Parallel and Distributed Processing

European Conference on Object Oriented Programming (ECOOP)

IEEE International Conference on Computer Communications and Networks

IEEE International Conference on Networks

IEEE International Symposium on High Performance Distributed Computing

IEEE International Symposium on Object-Oriented Real-Time Distributed Computing

IEEE Symposium on Reliable Distributed Systems

International Conference on Distributed Computing Systems (ICDCS)

International Conference on Parallel and Distributed Systems (ICPADS)

International Conference on Peer-to-Peer Computing

International Symposium on Software Engineering for Parallel and Distributed Systems

Workshop on Parallel and Distributed Simulation


Internet Standards

Internet Engineering Task Force (IETF). http://www.ietf.org

IETF Requests for Comments (RFCs) -- Internet standards. http://www.ietf.org/rfc.html

Internet Assigned Numbers Authority (IANA). http://www.iana.org

Distributed Systems 4005-730-01 Spring Quarter 2013
Course Page
Alan Kaminsky Department of Computer Science Rochester Institute of Technology 4486 + 2220 = 6706
Home Page
Copyright © 2013 Alan Kaminsky. All rights reserved. Last updated 01-Mar-2013. Please send comments to ark­@­cs.rit.edu.