6.896: Topics in Computer Networks

Professor Hari Balakrishnan
MW 11:00-12:30 in Room 66-168
H 3-0-9
Office hours: MW 2-3pm in NE43-510
Email: hari@lcs.mit.edu
URL: http://www.sds.lcs.mit.edu/~hari/6.896

Project presentations in NE43-516 on 12/9/98 and 12/10/98. Find out more here!



This is a new graduate-level class whose goals are:
  1. To understand the state-of-the-art in network protocols, architectures and applications.
  2. To understand how networking research is done.
  3. To investigate novel ideas in the area via semester-long research projects.
The past few years have seen a remarkable growth in the global networking infrastructure. The Internet has grown from a research curiosity to something we all take for granted, beginning to become as essential as the ubiquitous telephone and utility networks. It has been able to withstand rapid growth fairly well and its core protocols have been robust enough to accomodate applications that were unforeseen by the original Internet designers, such as the amazing success story that is the World Wide Web.

This is only the start of the Information Technology revolution, which, if successful, promises to change the way we communicate with each other and conduct our daily activities and business. Massive efforts are underway to develop new uses for the global network infrastructure, which are sure the stress the system. It is critical that designers of these applications (and this is fast becoming the set of most software engineers!) understand how networks work and what they can and cannot do. It is equally important for network researchers and practitioners to constantly evolve the infrastructure to accomodate new applications quickly, and ensure that what they design withstands the stress that new applications can impose on the system. Examples of these applications include streaming audio and video, network games, news updates, online auctions, remote sensing, home network applications, and so on.

In addition, the hardware technologies that are used to put the Internet together are undergoing radical change. Gone are the days when the Internet was the domain of Ethernets and T1 lines. Tomorrow's Internet is sure to be a pot-pourri of high-bandwidth wired links, switched Ethernets, cable networks, ADSL, packet radio links, wireless LANs, satellites, power lines,...

How does this global network infrastructure work and what are the design principles on which it is based? How do we make it work better in today's world? How do we ensure that it will work well in the future in the face of rapidly growing scale, heterogeneous network and device technologies, and diverse applications? And how should applications be written for the Internet of today and tomorrow to obtain the best possible performance both for themselves and for others using the infrastructure? These are some issues that we will grapple with in this course. The emphasis will be on how we can change the way network systems and applications are designed, implemented, analyzed and evaluated, in the face of the above challenges.

Topics we will study include the Internet design philosophy and methodology; unicast and multicast routing; router support for fairness and QoS; differentiated and integrated service architectures; unicast and multicast congestion control; protocols for wireless and mobile systems; Web protocols and caching schemes; adaptive applications; reliable multicast; active networks; Internet measurement infrastructures; network security; location-dependent services; and sensor networks. We will also look at industry trends and discuss some innovative products and ideas that have recently been developed by some networking companies. Material for the course will be drawn from research papers, industry white papers and Internet RFCs.


Undergraduate systems course covering basic networking concepts (e.g., 6.033 or equivalent) and/or consent of instructor. Enrollment may be limited.

If your networking background is rusty and you may want to page material in from one of these excellent books. In particular, I highly recommend the book by Peterson and Davie.

Course Structure
Class meetings will discuss assigned readings from the literature. This class will emphasize the practical aspects of computer networks and the Internet, and will be centered around discussions and arguments! Class participation is therefore very important.

Grades will be based primarily on a significant course project. Participants will also write a conference-style paper describing the project and make a 20-minute presentation of their work at the end of the term.

In addition, there will be two homeworks assigned during the term, one in late-September and one in late-October. We expect to use the network simulator, ns for these homeworks. In many cases, we expect ns to be useful for your project too. We strongly encourage you to get familiar with ns (version 2) as soon as you can, by installing it on your machine and playing with it. While not comprehensive, the available documentation is quite good and adequate to start using it. Any questions about usage are best directed to ns-users@mash.cs.berkeley.edu (there are instructions on the ns Web page on how you can subscribe to this list.

We will have a mid-term quiz, date TBD. This, together with class participation, counts for 20% of your grade.

To summarize:

Course Project (Paper + Presentation) 60%
Homeworks 20%
Mid-term quiz 15%
Class participation 5%

But remember, this is a graduate class and grades don't (shouldn't) really matter (i.e., grades shouldn't be your primary or only motivator!). What matters is how much you learn about research in networking and how much it excites you! We hope this class and the project you do meets that goal.

Last modified Mon Sep 14 18:15:53 EDT 1998