This web site is dedicated to my textbook: Reliable Distributed Systems: Technologies, Web Services and Applications.  The book is published by Springer Verlag and is targeted towards graduate students, advanced undergraduates and professionals.

Available resources include:

  • Two slide sets:
    1.   One that tracks the book rather closely, pretty much chapter by chapter with some minor exceptions (primarily, the slide set includes two lectures on networks that don't have corresponding chapters in the textbook)
    2.  A second that pulls in a range of additional material (since some topics don't appear in the book, this demands more both from the lecturer, who needs to know that material, and from students, who will sometimes need to read papers in journals or conferences to find details on the additional topics included).  I like teaching from this version, and it works well with the course project from the Cornell University CS5410 course.  Treatment of group communication is also a bit different in this second slide set; I've taught from both and don't personally prefer one over the other, but you'll find a bit more detail in this second set, and it may expect slightly more from the student.
  • A complete collection of figures from the book, for inclusion onto your own slides.
  • Feel free to send me email with suggestions, questions, or errata
  • The book is being revised, and a new edition will be available late in 2009.  The content will be similar, but revised to reflect cloud computing and edge computing technologies.  Cornell's cs5410 class in fall 2008 offers a preliminary sense of the new organization and content.

(From the back cover):

An understanding of the techniques used to make distributed computing systems and networks reliable, fault-tolerant and secure will be crucial to those who design and deploy the next generation of mission-critical applications and Web Services.

Reliable Distributed Systems reviews and describes the key concepts, principles and applications of modern distributed computing systems and architectures. This self-contained book consists of five parts. The first covers introductory material, including the basic architecture of the Internet,  simple protocols such as RPC and TCP, object oriented architectures, operating systems enhancements for high performance, and reliability issues. The second covers the Web, with a focus on Web Services technologies, Microsoft’s .NET and the Java Enterprise Edition. The last three parts look at a number of reliability and fault-tolerance issues and techniques, with an emphasis on replication applied in Web Services settings.

Topics and features:

With its well-focused approach and clarity of presentation, this new text is an excellent resource for both advanced students and practitioners in computer science, computer networks and distributed systems.Anyone seeking a solid background in distributed computing and Web Services architectures will find the book an essential and practical learning tool.

KENNETH P. BIRMAN is an ACM Fellow and Professor of computer science at Cornell University, where his research focuses on reliable, secure, and scalable distributed computing systems. His work has been applied on the NYSE, the Swiss Stock Exchange, the U.S. Navy’s AEGIS warship, and the French air-traffic control system.