600.348/448: Theory of Network Communication

Fall Term 2004

Christian Scheideler



Course Structure

Lectures: MTW 1, Shaffer 101

Office Hours


Topics

The course covers current state-of-the-art topics in the area of theory of communication in distributed systems. This includes an introduction to various communication models and important routing parameters and networks. Also, strategies for topology control and routing in overlay networks, load balancing strategies, and distributed data management strategies will be presented. Particular emphasis will be on those strategies that support robust and efficient distributed computing over the Internet, and communication and data management in mobile ad hoc networks and peer-to-peer networks. Weekly assignments. Some knowledge of probability theory is helpful. Prerequisite: 600.344/444 or permission. [Analysis] Students receive credit for 600.348 or 600.448, but not both.


Grading


Syllabus

The lecture is based on recent research papers. Lecture notes will be posted below.

Assignments

Assignments will be posted here every Wednesday, and their solutions have to be submitted till the following Wednesday at 1 pm. At most two people are allowed to work together on an assignment, but there has to be a separate submission for each person. Please indicate on your submission with whom you collaborated to solve the assignment (if any). Also, please write your name and the course (348 or 448) for which you registered clearly on your submission. If you have questions about what is allowed and what is not, please read the ethics code of the department or the guide to Academic Ethics for Undergraduates.


Software

We will use the E language. If you are using a Windows operating system, it is recommended to install the Cygwin shell after installing E. When executing "rune" in this shell, the command line interpreter for E is initiated, and when executing "rune name.e", the program name.e is executed. E is also available on the computers in the undergrad and the graduate labs. Here are some examples in E:
Writing and compiling E programs

Christian Scheideler
Last modified: Wed Sep 1, 2004