Computer Communications - CSCI 551, Fall 2003, Noon Section

General Information
Time   :   TuTh 12:30pm - 1:50pm
Location : SOS B46
Instructor   :   Bill Cheng, Office Hours: TuTh 2:10pm - 3:10pm in SAL 342, E-mail: <> or <>   (Please do not send HTML e-mails. They will not be read.)
TA   :   SunHee Yoon, E-mail: <>, Office Hours: Fri 12pm - 2pm in SAL 211
Grader   :   Nadim Tawileh, E-mail: <>,    (The grader will hold office hours the week after the announcement of each project assignment's grades.)
Midterm Exam   :   in class, Thu, 10/30/2003 (firm).
Final Exam   :   11am-1pm, Tue, 12/16/2003 (firm)
Newsgroup   :   usc.class.csci551b
Msg Archives   :   messages from Bill, messages from SunHee, messages from Nadim
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.
Homeworks   :   (2-4 homeworks will be assigned.)
Projects   :   (please also see important information about the class projects below.)
(in reversed chronological order)
  • 12/1/2003: The final exam will be held in SOS B46 on Tuesday, 12/16/2003 between 11am and 1pm. The exam is closed book, closed notes, and closed everything (no "cheat sheet" either). Also, no calculators 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.
  • 12/1/2003: The final exam will cover the following topics:
    • Same coverage as the midterm exam for the following topics:
      • TCP
      • TCP congestion control [Jacobson88a]
      • TCP Tahoe, Reno, New Reno, TCP SACK [Fall96a]
      • DEC-bit [Ramakrishnan90a]
      • Fair queueing & weighted fair queueing [Demers89a]
      • RED [Floyd93a]
      • TCP throughput [Padhye98a]
      • TCP friendliness [Floyd99b]
    • integrated and differentiated services design issues [Shenker95a]
      • efficacy
    • integrated services [Clark92a]
      • guaranteed, predicted, and best effort services
      • token buckets
      • FIFO+
    • differentiated services [Clark98a]
      • RIO (Red with In or Out)
    • differentiated services [Nichols99a]
      • premium, assured, and best effort services
      • two-bit diff-serv
      • border router profile meters
    • network performance measurements [Paxson99b]
      • pathologies (reordering, duplication, corruption)
      • bandwidth (bottleneck BW vs. available BW)
      • loss (predictive?)
      • packet bunch (problems with packet pair)
    • wireless & mobile
    • mobile IP [Johnson96b]
    • media access for wireless LAN [Bharghavan94a]
      • hidden terminal
      • exposed terminal
      • back-off
    • dynamic source routing in ad hoc wireless networks [Johnson96c]
      • DSR route discovery and route maintenance
    • snoop [Balakrishnan95b]
      • operation of snoop
    • sensor network [Intanagonwiwat00a]
      • directed diffusion
    • IP multicast
      • composed of a service model, IGMP, and multicast routing protocols
      • MBone and tunnels
    • DVMRP, MOSPF [Deering88b]
      • flood and prune in DVMRP
      • receivers floods in MOSPF
    • PIM [Deering96a]
      • shared tree vs. source tree
      • sparse mode vs. dense mode
      • core/center/rendezvous point
    • Single-source Multicast [Holbrook99a]
    • SRM [Floyd97c]
      • NACK, implosion, ad exposure
      • receiver reliable
      • delay before sending NACKs
    • Freenet [Clarke02a]
      • unstructured DHT system
      • insertion
      • search
    • Chord [Stoica01a]
      • structured DHT system
      • finger table
      • insertion
      • search
    • Scalable upload [Bistro00, Cheng01a]
      • real-time timestamp
      • low-latency commit
      • timely data transfer
      • security protocol
      • coordinated data transfer
    • Class final project

  • 10/24/2003: The midterm exam will cover the following topics:
    • Networking basics
      • CIDR
      • NAT
    • Internet design issues [Clark88a]
    • IP (protocol hourglass) [Deering98a]
    • End-to-end argument [Saltzer81a]
    • Naming & binding [Saltzer82a]
    • Unicast routing
      • distance vector
      • link state
    • Interdomain routing (BGP)
      • BGP messages
      • BGP attributes and policy routing
      • EBGP vs IBGP
      • multihoming
    • Delayed convergence [Labovitz00a]
    • Landmark routing [Tsuchiya88a]
    • ISP peering [Norton01]
    • TCP
      • SYN & 3WH
      • FIN
      • RTT & RTO
    • TCP congestion control [Jacobson88a]
      • slow start
      • congestion avoidance
      • fast retransmit
    • TCP Tahoe, Reno, New Reno, TCP SACK [Fall96a]
      • fast recovery
    • DEC-bit [Ramakrishnan90a]
      • queue length
      • fairness
      • power
      • efficiency
    • Fair queueing & weighted fair queueing [Demers89a]
      • arrival time
      • start time
      • finish time
    • RED [Floyd93a]
      • random drop
      • threasholds
    • TCP throughput [Padhye98a]
      • bandwidth relationship with loss probabilities, segment size, and RTT
      • triple-dupack period
      • timeouts and limited advertised receiver window size
    • TCP friendliness [Floyd99b]
      • bandwidth equation
      • UDP
    • Network security
      • Intrusion detection [Yegneswaran03a]
      • IP traceback [Savage01a]
      • DDoS classification [Hussain03b]
    • Class project
      • final project part (1)

    The midterm exam is closed book, closed notes, and closed everything (and no "cheat sheet"). Also, no calculators 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.

  • 9/26/2003: The deadline for warmup project #2 has been extended to 11:45PM on Saturday, 9/27/2003.

  • 7/31/2003: Watch this area for important announcements.
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 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, 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 Dev 4 2003]    [Please see copyright regarding copying.]