|
|
Computer Communications -
CSCI 551, Fall 2012, MW Section
|
|
General Information
|
-
Time |
: |
MW 10:00am - 11:20am (although the schedule of classes say 10:00am-11:50am)
|
Location |
: |
KAP 140 (new location) |
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 |
: |
Bo-Chun Wang,
E-mail:
<bochunwa@usc.edu>,
Office Hours: Tue 2:00pm - 4:00pm in SAL 211
|
Grader |
: |
Abhiram Kalluru,
E-mail:
<kalluru@usc.edu>.
(The grader will hold office hours the week after the announcement of each assignment's grades.)
|
Midterm Exam |
: |
during class time, Wed, 10/24/2012 (corrected) (firm)
|
Final Exam |
: |
8am - 10am, Mon, 12/17/2012 (firm).
|
|
|
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)
- 12/5/2012:
The final 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 final exam will cover everything after the midterm exam
(starting at
slide 1 of lecture 16 on 10/29/2012)
to the last slide of the lecture on 12/5/2012.
Here is a quick summary of the topics covered
(not all topics covered are listed):
- TCP
- TCP Security and performance issues
- SYN floods
- SMURF attacks
- high bandwidth-delay networks
- Queue management
- Fair queueing & weighted fair queueing [Demers89a]
- max-min fairness
- arrival time
- start time
- finish time
- DEC-bit [Ramakrishnan90a]
- congestion notification
- queue length
- decision frequency
- filtering
- AIMD response
- RED [Floyd93a]
- TCP friendliness [Floyd99b]
- TCP throughput [Padhye98a]
- bandwidth relationship with loss probabilities, segment size,
and RTT
- triple-dupack period
- timeouts and limited advertised receiver window size
- Peer-to-peer/Distributed Hash Table
- Freenet [Clarke02a]
- unstructured DHT system
- insertion
- search
- Chord [Stoica01a]
- structured DHT system
- finger table
- insertion
- search
- BitTorent [Yang04a]
- Integrated & Differentiated Services
- Integrated and differentiated services design issues [Shenker95a]
- Integrated services [Clark92a]
- guaranteed, predicted, and best effort services
- token buckets
- FIFO+
- Differentiated services [Clark98a]
- Differentiated services [Nichols99a]
- premium, assured, and best effort services
- two-bit diff-serv
- border router profile meters
- Wireless & Mobile
- Mobile IP [Johnson96b]
- Media access for wireless LAN [Bharghavan94a]
- hidden terminal
- exposed terminal
- back-off
- SNOOP [Balakrishnan95b]
- Ad hoc routing
- Sensor network [Intanagonwiwat00a]
- directed diffusion
- data-centric communication
- Multicast
- IP multicast [Deering88b]
- composed of a service model, IGMP, and
multicast routing protocols
- MBone and tunnels
- DVMRP, MOSPF
- 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]
- Scalable Reliable Multicast [Floyd97c]
- sender reliable vs. receiver reliable error detection
- NACK implosion
- retransmission
- Class project
- 11/28/2012: Next Monday (12/3/2012), our class will go from 10am
to 11:50am (to make up for the lost half an hour today).
Sorry about the inconvenience.
- 11/18/2012: I have an appointment with my physical therapist
this coming Tuesday afternoon (11/20/2012). I'm sorry that I have to cancel
office hour this Tuesday on 11/20/2012. Sorry about the inconvenience.
- 11/1/2012: Instructor is ill. Office hour today (Thu, 11/1) is canceled.
Sorry about the inconvenience.
- 10/29/2012: I have to cancel office hours
today (Mon, 10/29) and this Wednesday (10/31) due to physical therapy
appointments. Sorry about the inconvenience.
- 10/25/2012: I'm still ill. I have to cancel office hour
today (Thu, 10/25). Sorry about the inconvenience.
- 10/23/2012: Instructor is ill. Office hour today (Tuesday, 10/23)
and tomorrow (Wednesday, 10/24) are canceled.
Sorry about the inconvenience.
- 10/22/2012: Instructor is ill. Class canceled.
Sorry about the inconvenience.
- 10/17/2012:
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/17/2012.
Regarding what types of questions will be on the midterm, please see
the Exams section of the course description.
Here is a quick summary of the topics (not all topics covered are listed):
- Networking basics
- 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
- congestion control (includes part of [Ramakrishnan90a])
- congestion collapse
- congestion control vs. congestion avoidance
- fairness
- efficiency
- stability
- Congestion control mechanisms [Jacobson88a]
- slow start
- congestion avoidance
- fast retransmit
- TCP Tahoe, Reno, New Reno, TCP SACK [Fall96a]
- fast recovery
- New Reno partial ACK
- TCP SACK
- 9/24/2012: Office hour this Wednesday (9/26) is canceled.
Sorry about the inconvenience.
- 9/6/2012: Starting with next Monday, 9/10/2012, our class will
meet in KAP 140.
KAP is located in section 4A of the
campus map.
- 8/30/2012: Tu/Th office hours moved to 2:10pm - 3:00pm for the
rest of the semester. Sorry about the inconvenience.
- 8/26/2012: I'm sorry that I have to cancel the first office hour
of the semester (on Monday, 8/27). Sorry about the inconvenience.
- 8/23/2012:
- To get your user ID and password for accessing
protected area of this web site and get your port number assignment
for the class projects, please visit the
request access page after the semester
starts and submit the requested information.
You do not have to be registered for the course to get the password.
As long as you are planning on enrolling into this course, it would
be fine to get the password now.)
You must only use the port numbers assigned to you to do your class projects.
- There is another
section of CSCI 551 (on Fri 9:00am-11:50am). It is offered by
Prof. John Heidemann.
There are substantial differences between the two sections.
Please make sure you attend the section for which you are registered.
If you are a PhD student, you are strongly encouraged to enroll in
Prof. Heidemann's
section
of CSCI 551 (on Fri 9:00am-11:50am).
- 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!
|
|
|