USC CSD Home
 

Computer Communications - CSCI 551, Fall 2009, MW Section

 
General Information
Time   :   MW 12:30pm - 1:50pm
Location : OHE 136
Instructor   :   Bill Cheng (for office hours, please see instructor's web page), E-mail: <bill.cheng@usc.edu>.   (Please do not send HTML-only e-mails. They will not be read.)
TA   :   Alix L.H. Chow, E-mail: <lhchow@cs.usc.edu>, Office Hours: TuTh 10am - 11am in SAL 209
Grader   :   Akshat Gupta, E-mail: <akshatgu@usc.edu>. (The grader will hold office hours the week after the announcement of each project assignment's grades.)
Midterm Exam   :   during class time in THH 212, Wed, 10/21/2009 (firm),  THH is located in section 4E of the campus map.
Final Exam   :   in WPH B27, 11am-1pm, Fri, 12/11/2009 (firm),  WPH is located in section F4 of the campus map.
 
Class Resources
Description   :   textbooks, topics covered, grading policies, additional resources, etc.
Papers   :   required and recommanded technical papers.
Lectures   :   slides from lectures in HTML, PostScript, and PDF formats.
Projects   :   (please also see important information about the class projects below.)
Participation   :   rules about rowcalls.
Homeworks   :   (2-4 homeworks will be assigned.)
Newsgroup   :   Google Group for discussing course materials and programming assignments. (This group is by invitation only.)
 
News
(in reversed chronological order)
  • 11/11/2009: Office hour today has been canceled. Sorry abou the inconvenience and the short notice.

  • 10/14/2009: The midterm exam will be closed book, closed notes, and closed everything (and no "cheat sheet"). Also, no calculators, cell phones, or any electronic gadgets are allowed. Please bring a photo ID. Your ID will be collected at the beginning of the exam and will be returned to you when you turn in your exam. There will be assigned seating.

    The midterm exam will cover everything from the beginning of the semester till the end of Lecture 15 on 10/14/2009 (includes materials from part of [Ramakrishnan90a]). For [Ramakrishnan90a], you will only be responsible for part of it covered under TCP congestion control (fairness and efficiency) and not under queue management (DEC-bit).

    Here is a quick summary of the topics (not all topics covered are listed):

    • Networking basics
      • CIDR
      • NAT
    • Architecture
      • Internet design issues [Clark88a]
      • End-to-end argument [Saltzer81a]
      • IP (protocol hourglass) [Deering98a]
    • Routing
      • Landmark routing [Tsuchiya88a]
      • Unicast routing
        • static routing
        • distance vector
        • link state
      • Interdomain routing (BGP)
        • BGP messages
        • BGP attributes and policy routing
        • EBGP vs IBGP
        • multihoming
      • Delayed convergence [Labovitz00a]
    • TCP
      • basic TCP mechanisms
        • window-based flow control
        • SYN & 3WH
        • FIN
        • client state sequence
        • server state sequence
        • window flow control
        • TCP extensions
          • timestamp
          • large windows
      • congestion control (includes part of [Ramakrishnan90a])
        • congestion collapse
        • congestion control vs. congestion avoidance
        • fairness
        • efficiency
        • stability

  • 9/30/2009: Office hour for Thursday 10/1/2009 has been moved to Friday 10/2/2009 from 1:30pm to 2:30pm. Sorry abou the inconvenience.

  • 9/1/2009: Office hour for Thursday 9/3/2009 has been canceled. Sorry abou the inconvenience.

  • 8/25/2009: Office hour for Wednesday 8/26/2009 has been canceled. Sorry abou the inconvenience.

  • 8/18/2009: Registering with the class mailinglist is required for this class because you must get your port assignments. If you have not done so, please visit the mailinglist page after the semester starts. (You do not have to be registered for the course to register with the class mailinglist.) In the registration confirmation e-mail, you will also get your user ID and password for accessing protected area of this web site.


  • 8/18/2009: Watch this area for important announcements.
 
Prerequisites
Please note that the instructor has never and will never sign anything that says that you can waive any of the prerequisites below for a Master's student:
 
Important Information about the Class Projects
The class projects will take more than 5,000 lines of C/C++ code to be developed on a UNIX environment. No other programming language will be accepted and your program must compile and run with a Makefile on nunki.usc.edu. (Sorry, no Java.) You must be familiar with the UNIX development environment (vi/pico/emacs, cc/gcc or g++/CC, make, etc.)

If a student signs up late for this class or could not be present at the beginning of the semester, he/she is still required to turn all projects and homeworks on time or he/she will receive a score of 0 for these assignments. No exceptions!

 

[Last updated Thu Nov 19 2009]    [Please see copyright regarding copying.]