CMPE 252 - Computer Networks

Professor: Katia Obraczka
Office:BE-363
Office Hours:Mon 2-3:30
TA: Ignacio Solis
Office:BE-399C
Office Hours:(Trailer 15 near BE) Mon 2-3pm, Tue 6-7pm
Location: Basking Engineering 156
Time: Tue,Thu 4:00pm - 5:45pm
[News] [Class Description] [Background] [Textbook] [Syllabus] [Reading List] [Projects] [Academic Integrity] [Grading] [Exams]
News

Solutions to the Final

The Final will be June 5 in the regular classroom BE156 from 9 to 11am.

Final News. As with the Midterm, you can bring a double sided "cheat sheet" (8.5x11). The exam is "open papers". Aside from the cheat sheet and the papers no notes and no books. Please bring blank sheets of paper for the answers, you can write your name, email and SSN in advance to save time.

You can now download the Midterm solutions

Midterm News. The exam covers everything up to e2e congestion control. You are allowed to bring all the papers (from this web page) to the test. You can also bring a "cheat sheet", that's a 8.5X11 double sided piece of paper (normal letter paper) with your notes on it. It can be hand written or printed.

Please mail the TA for a set of ports you can use for project 1.

The First Project is due on April 19th

From the class: Exams are primarily based on papers + lecture notes. They are also open-papers and lecture notes. You will not be allowed to share material in the exam.

Paper 9 is up. I didn't find in on pdf/ps so I scanned it. I don't have good pdf scanning software so it's page by page on a zip. If you can join it send me a copy so it's easier to download.

Since I (Nacho) won't be here next week, I'll be holding extra office hours Thursday after class, from 6 to about 8 or 9pm. We can meet at trailer 15, if we decide to move I'll leave a note

We are in the process of finishing the web page. Most of the information is up here already but might not be in order or might be unlinked. Everything is supposed to be ready in the next couple of days (Mar/20/2001)

If you have any questions ask the TA.


Class Description

This class focuses on Networks. It covers topics such as routing, multicast, congestion control and other advanced topics. The core of the course is based on research papers from the network community, there will be a good amount of reading as well as programming assignments.


Background

Students who wish to take the class should have basic network knowledge. This includes the ISO-OSI Protocol Stack, TCP/IP, etc. These topics are covered in CMPE-152.

A good programming background is also required. Programming will be done in C and NS-2 (C++, TCL). No other languages will be accepted, this includes (Visual Basic, Perl, Python, Java, etc).


Textbook

This class doesn't have a required text book. The main reading material is from research papers, please look at the reading list. Some useful references are:

Computer Networks, A Systems Approach, Peterson and Davie
Routing in the Internet, Huitema
Internetworking with TCP/IP Vol 1, Comer
Unix Network Programming Vol 1, Stevens
TCP/IP Illustrated Vol 1, Stevens

Syllabus Remember this is a tentative schedule and might change. Check this page once in a while.
Tue March 27 Introduction (Design principle papers)
First Project Assigned
Thu March 29 Unicast routing
Tue April 3 Unicast routing
Thu April 5 Multicast routing
Tue April 10 Multicast routing
Thu April 12 Network-layer congestion control
Tue April 17 E2E congestion control
Second Project Assigned
Thu April 19 Reliable Multicast
First Project Due!
Tue April 24 ns-2 tutorial (Nacho and Kumar) [ Slides (borrowed) ]
Thu April 26 Midterm
Tue May 1 Queue Management
Thu May 3 Queue Management + Integrated and Differentiated Services
Tue May 8 Integrated and Differentiated Services
Thu May 10 Integrated and Differentiated Services
Second Project Due!
Tue May 15 Characterizing the Internet
Thu May 17 Service Location/Placement
Tue May 22 Content Distribution and Network Proximity
Thu May 24 Network Security and DoS
Tue May 29 Other protocols: DNS, HTTP, FTP, telnet, rlogin, SNMP, SMTP, NTP, NSF, etc.
Thu May 31 Wireless and Mobile Networking / Review
Tue June 5 FINAL 9-11am

Reading List Design Philosophy:
  1. Clark D., "The Design Philosophy of the DARPA Internet Protocols", Proceedings of ACM Sigcomm 1988, pp. 106-114.
  2. Saltzer J., Reed D. and Clark D., "End-to-end Arguments in System Design.", ACM Transactions on Computer Systems (TOCS), Vol. 2, No. 4, pp. 195-206, 1984.
  3. Lampson B., "Hints for Computer Systems Design", ACM Operating Systems Rev. 15, 5 (Oct. 1983), pp 33-48
  4. Jamin S., "Paper Reading Checklist.
Supplementary readings:
  1. Floyd S. and Paxson V., "Difficulties in Simulating the Internet", IEEE Transactions on Networking, Feb 2001. old version
  2. Day R. A., "How to write a scientific paper", IEEE Transactions on Professional Communication, 20:32-37, June 1977.
  3. Levin R. and Redell D. D., "An evaluation of the ninth SOSP submissions", Operating Systems Review, 17(3):35-40, July 1983.

Unicast Routing:
  1. Tsuchiya P.F., "The Landmark Hierarchy: A New Hierarchy for Routing in Very Large Networks", Proceedings of ACM Sigcomm 1988, pp. 128-134. [ACM Page]
  2. McQuillan J. M., et. al., "The New Routing Algorithm for the ARPANET", IEEE Trans. on Communications, May 1980, pp. 711-719.
  3. Khanna A. and Zinky J.. "The Revised ARPANET Routing Metric". Proc. of ACM SIGCOMM '89, pages 45-56, Sep. 1989. [ACM Page]
  4. Floyd S. and Jacobson V., "The Synchronization of Periodic Routing Messages", IEEE/ACM Transactions on Networking, April 1994. [ACM Page]
  5. Huitema C., Routing in the Internet, (chapters 4 through 9).

Multicast Routing:
  1. Deering S. E. and Cheriton D. R., "Multicast Routing in Internetworks and Extended LANs", ACM , 1988, pp. 55-64. [ACM Page]
  2. Deering S. E., Estrin D., Farinacci D., Jacobson V., Liu C-G, Wei L., "The PIM Architecture for Wide-Area Multicast Routing", IEEE/ACM Transactions on Networking, Vol.4, No.2, April 1996. [ACM Page] [ps]
  3. Ballardie T., Francis P. and Crowcroft J., "Core-Based Tree (CBT) Architecture for Scalable Inter-Domain Routing", ACM SIGCOMM'93, September 1993. [ACM Page]
Supplementary readings:
  1. Wei L. and Estrin D., "The Trade-offs of Multicast Trees and Algorithms", In Proceedings of ICCCN '94, 1994.

Congestion Control:
Network layer congestion control
  1. Floyd, S., "TCP and Explicit Congestion Notification", ACM Computer Communication Review, V. 24 N. 5, October 1994, p. 10-23. [Floyd's ECN Page]
  2. Ramakrishnan K. K. and Jain R., "A Binary Feedback Scheme for Congestion Control in Computer Networks", ACM Transactions on Computer Systems, Feb 1990. [ACM Page]
E2E congestion control
  1. Jacobson V., "Congestion Avoidance and Control", Proceedings of ACM Sigcomm 1988, pp. 273-288. [ACM Page]
  2. Floyd S. and Fall K., "Promoting the use of End-to-End Congestion Control in the Internet", IEEE/ACM Transactions on Networking", August 1998. [ACM Page]
  3. Fall K. and Floyd S., "Simulation-based Comparisons of Tahoe, Reno, and SACK TCP", ACM Computer Communication Review, 26(3):5-21, Jul 96.
  4. Floyd S., Handley M., Padhye J. and Widmer J., "Equation-Based Congestion Control for Unicast Application", SIGCOMM 2000, August 2000.

Reliable Multicast
  1. McCanne S., Jacobson V. and Viterelli M., "Receiver Driven Layered Multicast", ACM Sigcomm, September 1996.
  2. Rizzo L., "pgmcc: A TCP-friendly Single-Rate Multicast Congestion Control Scheme", Proceedings of ACM SIGCOMM '00, Aug. 2000.
  3. Floyd S., Jacobson V., Liu C-G, McCanne S., Zhang L., "A Reliable Multicast Framework for Light-weight Sessions and Application Level Framing", IEEE/ACM Transactions on Networking, November 1997.
  4. Paul S., Sabnani K.K. , Lin J.C., Bhattacharyya S., "Reliable Multicast Transport Protocol (RMTP)", IEEE Journal on Selected Areas in Communications, Vol. 15 No 3, April 1997, Pages 407-421

Queue Management:
  1. Floyd S. and Jacobson V., "Random Early Detection Gateways for Congestion Avoidance", ACM/IEEE Transactions on Networking, 1(4):397-413, Aug. 1993.
  2. Bajaj S., Breslau L. and Shenker S.. "Uniform versus Priority Dropping for Layered Video", Proceedings of ACM SIGCOMM '98, pages 131-143, Sep. 1998.
  3. Demers A., Keshav S. and Shenker S., "Analysis and Simulation of a Fair Queueing Algorithm", Proceedings of ACM SIGCOMM '89, pages 1-12, Sep. 1989. [ACM Page]

Integrated and Differentiated Services:
  1. Shenker S.,"Fundamental Design Issues for the Future Internet", IEEE Journal on Selected Areas in Communications, Vol 13, No. 7, pp. 1176-1188, September 1995
  2. Clark D.D., Shenker S. and Zhang L.,"Supporting Real-Time Applications in an Integrated Services Packet Network: Architecture and Mechanism", ACM 1992, pp. 14-26.
  3. Clark D. and Feng W.,"Explicit Allocation of Best-Effort Packet Delivery Service", IEEE/ACM Trans. on Networking, 6 (4), pp. 362-373, August 1998.
Supplementary readings:
  1. Breslau L. et. al., "Endpoint Admission Control: Architectural Issues and Performance", Proc. ACM Sigcomm 2000.

Characterizing the Internet:
  1. Paxson V., "End-to-End Internet Packet Dynamics", Proceedings of ACM SIGCOMM '97, Sep. 1997
  2. Crovella M.E. and Bestravros A., "Self-Similarity in World Wide Web Traffic: Evidence and Possible Causes", IEEE/ACM Transactions on Networking, 5(6):835-846, Dec. 1997.
  3. Willinger W. and Paxson V., "Where Mathematics meets the Internet", Notices of the American Mathematical Society, 45(8), August 1998.
  4. KC Claffy, "Measuring the Internet, IEEE Internet Computing Online, January 2000.
  5. KC Claffy, CAIDA: Visualizing the Internet, Internet Computing Online, January 2001. [CAIDA]
Supplementary readings:
  1. Govindan R., Tangmunarunkit H., "Heuristics for Internet Map Discovery", in Proc. of IEEE Infocom 2000, Tel Aviv, Israel.

Service Location/Placement, Content Distribution, Network Proximity, Internet Caching.
  1. Myers A., Dinda P., Zhang H., "Performance Characteristics of Mirror Servers on the Internet", Proc. of IEEE Infocom '99, Mar. 1999.
  2. Chankhunthod A., Danzig P., Neerdaels C., Schwartz M. and Worrell K., "A Hierarchical Internet Object-Cache", In Proceedings of the USENIX 1996 Annual Technical Conference, January 1996.
  3. Fan L., Cao P., Almeida J. and Broder A., "Summary Cache: A Scalable Wide-Area Web cache Sharing Protocol", In Proceedings of the Sigcomm'98, September 1998.
  4. Wolman A., Voelker M., Sharma N., Cardwell N., Karlin A., Levy H.M., "On the Scale and Performance of Cooperative Web Proxy Caching", In Proceedings of ACM SOSP, 1999
Supplementary readings:
  1. Cardellini V., Colajanni M, Yu P.S., "Dynamic Load Balancing on Web Server Systems", IEEE Internet Computing, pp. 28-39, May-June 1999.
  2. Breslau L., Cao P., Fan L., Philips G. and Shenker S., "Web Caching and Zipf-Like Distributions: Evidence and Implications", In Proceedings of the IEEE Infocom'99, March 1999.

CDN's and Network Proximity
  1. Akamai Technologies, Inc. "Fast Internet Content Delivery with FreeFlow"
  2. Kirk L. Johnson, John F. Carr, Mark S. Day and M. Frans Kaashoek, "The Measured Performance of Content Distribution Networks", Proceedings of International Web Caching and Content Delivery Workshop, June 2000.
  3. Jamin S., Jin C., Jin Y., Raz D., Shavitt Y. and Zhang L., "On the Placement of Internet Instrumentation", Proceedings of IEEE INFOCOM, Tel-Aviv, Israel , March 2000.
  4. Krishnamurthy B. and Wang J. "On Network-Aware Clustering of Web Clients", Proceedings of ACM SIGCOMM, Stockholm, Sweden, August 2000.
Supplementary readings:
  1. Karger D., Lehman E., Leighton T., Levin M., Lewin D. and Panigrahy R., "Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web", Proceedings of ACM STOC, 1997.
  2. Francis P., Jamin S., Paxson V., Zhang L., Gryniewicz D. and Jim Y.,"An Architecture for a Global Internet Host Distance Estimation Service", Proceedings of IEEE INFOCOM, 1999.
  3. Obraczka K., Silva F., "Network Latency Metrics for Server Proximity", Proceedings of the IEEE Globecom 2000, December 2000.

Network Security and DoS:
  1. Cardwell N., Savage S., Wetherall D. and Anderson T., "TCP Congestion Control with a Misbehaving Receiver", Computer Communications Review, v29, n5, October 1999.
  2. Savage, S., Wetherall, D., Karlin, A., and Anderson, T., "Practical Network Support For IP Traceback", Proc. of ACM SIGCOMM00, Aug. 2000.
  3. Reed M.G., Syverson P.F. and Goldshlag D.M., "Anonymous Connections and Onion Routing", Journal on Selected Areas in Communication, vol 16, no 4, May 1998

Higher-Layer Protocols.
Not defined yet

Wireless and Mobile Networking.
  1. V. Bharghavan, A. Demers, S. Shenker, and L. Zhang. "MACAW: A Media Access Protocol for Wireless LANs" In Proc. SIGCOMM '94, pp. 212-225, London, U.K., September 1994.
  2. J. Broch, D. Maltz, D. Johnson, Y-C. Hu, J. Jetcheva,A Performance Comparison of Multi-Hop Wireless Ad Hoc Routing Protocols, Proc. ACM/IEEE MOBICOM, 1998.
  3. H. Balakrishnan, V.N. Padmanabhan, S. Seshan, and R.H. Katz. A Comparison of Mechanisms for Improving TCP Performance over Wireless Links. IEEE/ACM Transactions on Networking, 5(6):756-769, Dec. 1997.
Supplementary readings:
  1. Lee S.J., Su W., Hsu J. Gerla M. and Bagrodia R., "A Performance Comparison Study of Ad Hoc Wireless Multicast Protocols", Proceedings of the IEEE Infocom 2000, March 2000.
  2. Intanagonwiwat C., Govindan R. and Estrin, D., "Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks", Proc. of MobiCom '00, Oct. 2000.

Projects

The project dates will be enforced. Late projects will be accepted with a severe grading penalty. Students are not encouraged to rely on this. The deadlines will be at 12 midnight (Local Time) on the day the project is due.

Project 1 Socket Programming, Routing.
Project 2 Socket Programming, Multicast.
Project 3 NS simulation.

The projects will be posted when they are assigned

The first 2 projects will be in C. Students should submit all their source code and must include a Makefile to build the project. Project 2 will be based on the first one so a good design in the first one is encouraged.

The projects should compile with gcc on sundance. If you program in Linux/*BSD/other Unix please make sure your code compiles in a SUN environment. You can also talk to the TA for other arrangements. We don't have Windows (or Mac) machines so if you program in these environments make sure it also compiles in sundance. Points will be deducted if the software doesn't compile because of #includes or libraries.

The last project will be in the NS-2 simulator. A small tutorial will be given in class but students should seek to learn NS on their own. NS is written in C++ and Tcl. The NS manual is a very good source of information

General Project NotesProjects should include a README file. If the project requires aditional documentation the README file should say which other files a user must refer to. The code should be commented enough to give a broad understanding of whats going on. If your project is incomplete the documentation and comments will help evaluate your work.

Projects are individual. We do encourage students to comment on the problems to solve, but the programming and project itself is individual work. Sources will be checked with software and possibly by eye. If you include any code that is not your own make sure you have permission and mark the code clearly stating the source. Please take a look at the Academic Integrity information.


Academic Integrity

If you have questions or doubts about the UCSC Academic Integrity policies please read them. We won't tolerate any violation.


Grading 20% Midterm
20% Final
20% Project 1
20% Project 2
20% Project 3

Exams

There will be 2 exams, a midterm and a final. The midterm will include everything up to Multicast Congestion Control. The final will be all-inclusive.

There are no past exams available at this time.


This page was last updated March 11 2001
Please report any problems to the TA
This page was written in vim