CS 436: Distributed Computer Systems (Winter 2012, University of Waterloo). Instructors: Professor Srinivasan Keshav and Andy Curtis. This curse provides an introduction to computer networks, protocols, and distributed system architecture. It provides an introduction to principles, algorithms, protocols, and technology standards used in computer networks and distributed systems. Topics covered include: layered models, resource management, naming, addressing and routing, reliable communication, security, and higher-level services.