CS 791

Computer Science Department
College of Arts and Sciences

A Critical Look at Network Protocols 
or 
What the Internet Can and Cannot Do (Yet)


     Instructor:  Prof. John Byers
       Meetings:  TR 12:30 - 2:00 PM
 Class Location:  MCS 135
Office Location:  MCS 280
   Office Hours:  Tues. 2:00-4:00 and Thu. 2:00-3:00 PM, or by appointment.
          Phone:  353-8925
            FAX:  353-6457 
          Email:  byers@cs.bu.edu
            Web:  http://www.cs.bu.edu/fac/byers

Reading List and Schedule

Course Presentations


Course Overview

Today's ubiquitous, global networking infrastructure bears little external resemblance to the Arpanet research prototype from which it evolved. Yet surprisingly, the original design of the Internet has proven remarkably resilient to very rapid growth, its protocols have been able to accomodate a wide variety of applications unforeseen by its original designers, and it has been able to incorporate new and diverse technologies such as satellite and wireless links relatively easily. In this research-oriented seminar we will track the evolution of the design and of the network protocols which has facilitated the remarkable development of the Internet from a research perspective. We will begin by quickly reviewing the basic design principles and protocols on which the Internet is based (prerequisite material). Then, we will consider case studies where we focus on challenges raised by a particular application or new technology, and study and evaluate the proposed solutions. Case studies will frequently delve deeply into statistical and theoretical techniques. The case studies we will consider include: transport over wireless networks, video streaming over best-effort networks, scalable reliable multicast to a collection of heterogeneous receivers, endhost architectures to support multimedia flows, and computation in sensor networks.

Recommended Supplementary Texts

The text for this course will primarily draw from recent research papers in the field, so there is no required text. However, there are highly recommended texts which cover networking fundamentals and which cover the technical ins and outs of essential networking protocols at a level of detail far beyond the conceptual level of the course lectures. Those students whose background in networking is incomplete or dated should consider purchasing Larry Peterson and Bruce Davie, Computer Networks: A Systems Approach , Morgan Kaufmann, 1996. This text is excellent, and I use it in CS 555. Other solid texts which are used in courses similar to our 555 include: Those of you who will be working on projects which involve or augment TCP/IP are advised to refer to Stevens' excellent TCP/IP Illustrated series , Addison Wesley, 1994-1997. (Volumes 1 and 2 will probably prove the most relevant). We will expand on this list with other relevant supplemental texts as we proceed in the course. I expect that many students will want to run simulations as part of their semester project. I encourage students to use the VINT ns simulator (version 2), developed at UCB/LBNL/ISI, as it is becoming a de facto standard, and we have substantial experience with it in the department. The ns homepage resides at http://www-mash.cs.berkeley.edu/ns.

Prerequisites

The course is geared primarily toward PhD students who are interested in pursuing a career in networking research. Masters students who have not yet taken CS 555 are strongly recommended to do so before taking this course. In fact, without a basic course in networking like 555 or a very strong systems background, it will be difficult to get much out of the papers we will be reading in this course. Also, several of the case studies will delve deeply into algorithmic and statistical techniques, so a graduate level of mathematical sophistication is expected. Please see the instructor if you are at all uncertain about your level of preparation.

Course Requirements

For class, students will be expected to read and digest approximately two to three research papers per week (prior to lecture). For the majority of the course, the instructor, along with specialists (see below) will lead discussions on the current set of papers and will lecture on background material needed to understand the next set of papers. As hinted at above, a group of students chosen in advance will serve as specialists on each case study. During each case study, this group will be expected to read a few extra papers assigned by the instructor, prepare short presentations on this supplemental material, scribe the notes during case study classes and should be prepared to be called on to answer questions posed by the class or by the instructor during discussion. There will be three components to a student's grade: