Computing and Information Technology Interactive Digital Educational Library


Syllabus Collection >
Syllabus >

Please use this identifier to cite or link to this item:

Title: CSE 588
Authors: University of Washington Computer Science and Engineering
Issue Date: 
Publisher: University of Washington Computer Science and Engineering
Abstract: CSE logo University of Washington Department of Computer Science & Engineering CSE 588 - Spring 2002 - Syllabus CSE Home CSE 588 Home About Us Search Contact Info Overview: The Internet is a remarkable engineering triumph. It is one of the few systems of any kind to have successfully scaled in numbers of users by six orders of magnitude while providing (nearly) continuous service over the past three decades. The challenge of building a system that works for hundreds of millions has led the Internet's designers to an overriding focus on robustness and scalability; numerous features have been added since the initial design to cope with increased numbers of users and increased numbers of providers. Even so, future challenges such as Internet telephony, multimedia, and ubiquitous wireless promise even more rapid change in the Internet. In order to better understand the Internet, we will run the course as a large participatory design session: how would you (re-) design the Internet today, given what we know now about its scale and application requirements? Readings will provide background on how the Internet works, but we will take that only as a starting point. Following Internet design practice, student groups will make specific proposals for new protocols by specifications and working code, using a common base platform called Fishnet for simulating protocol behavior across a number of nodes. The course will assume no pre-existing knowledge of the Internet protocols. Projects Specific project ideas are sketched below, but students are also encouraged to define their own projects - in general, anything that substantively addresses the issues discussed in class is acceptable. A completed project must include both a protocol specification and a working implementation. Example protocol specifications can be found at, although you need not follow the IETF RFC format. Projects can be implemented in fishnet or separately; fishnet is provided for convenience and interoperability, but projects can be done separately if that is more appropriate/more convenient. Projects can be done in any size teams, but to keep things fair, some additional sophistication will be expected for larger teams. Similarly, we expect each team to complete three projects over the course of the term, but if some teams wish to do two of the projects in more depth, that can be negotiated - see the instructors in advance however. Projects are generally due on Monday at 9am, three weeks after the relevant class discussion (e.g., week 2 projects will be due the Monday before the week 5 class discussion); as a special case, for Memorial Day weekend, projects will be due on Tuesday at 9am. Some flexibility in due dates are possible for special circumstances. However, all projects must be completed by the date the final would have been held, Thursday, June 13, 2002, at 8:30pm. Grading: Protocol proposals: 75% Class participation: 25% Text: Larry L, Peterson and Bruce S. Davie Computer Networks: A Systems Perspective, Second Edition, Morgan Kaufmann Publishers (1999) Additional readings from the collection of papers Office hours: Tom Anderson by request Bart Niswonger by request Lecture: Tuesday 6:30-9:30, location TBD Syllabus: Week 1: Internet design principles Readings: * David Clark. The Design Philosophy of the Internet Protocols. Proceedings of 1988 SIGCOMM Symposium on Communications Architectures and Protocols, September 1988. * J.H. Saltzer, D.P. Reed, D.D. Clark. End-to-End Arguments in System Design. ACM Transactions on Computer Systems, Vol 2, N. 4, p 277-288, Nov 1984 * Tom Anderson, Scott Shenker, Ion Stoica, and David Wetherall. Towards More Robust Internet Protocols, March 2002. Discussion notes Week 2: Internetworking and Transport (aka TCP/IP) Readings: * Peterson, Chapter 4.1, 5.2 * V.G. Cerf and R.E. Kahn, A Protocol for Packet Network Interconnection, IEEE Transaction on Communications, 22(5), May 1974, pp. 637-648. A cleaner, but reprinted, copy is here * C.A. Kent and J.C. Mogul. Fragmentation Considered Harmful. Proc. of ACM SIGCOMM '86, 1986. Project ideas: * Design and implement a scalable Internet router, reliable circuit establishment for circuit switching, a sliding window transport protocol including connection establishment, or a "layer 4" switch (NAT, load balancer and firewall). Discussion notes Week 3: Routing: Intradomain routing and BGP Readings: * Peterson, Chapter 4.2, 4.3 * C. Labovitz, G. R. Malan, and F. Jahanian, Internet Routing Instability, Proceedings of SIGCOMM'97, September 1997. * S. Floyd and V. Jacobson. The Synchronization of Periodic Routing Messages. IEEE/ACM Transactions on Networking, Vol. 2, No. 2, pp. 122-136, April 1994. Project ideas: * Design and implement a robust hierarchical routing protocol. Week 4: Mobile and Name Routing (April 23) Readings: * 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, Dallas, TX, August 1998. * Ion Stoica et al., "Internet Indirection Infrastructure", UC Berkeley Technical Report, 2002. Project ideas: * Design and implement a wireless routing protocol or a scalable publish/subscribe infrastructure. Week 5: Congestion Control: what should hosts do? Readings: * Peterson, Chapter 6.3 * V. Jacobson, Congestion Avoidance and Control, SIGCOMM '88, Sept. 1988, pp. 314-329. * H. T. Kung and Robert Morris. "Credit-Based Flow Control for ATM Networks", IEEE Network, 1995. Project ideas: * Design and implement a congestion control scheme (end to end or hop by hop). Week 6: Congestion Control: what should routers do? Readings: * Peterson, Chapter 6.2, 6.4 * A. Demers, S. Keshav, and S. Shenker, Analysis and Simulation of a Fair Queueing Algorithm, Proceedings of ACM SIGCOMM'89, pp 3-12. * S. Floyd and V. Jacobson, Random Early Detection gateways for Congestion Avoidance IEEE/ACM Transactions on Networking, 1(4):397-413 August 1993. Project ideas: * Design and implement self-tuning active queue management. Week 7: Mobile Networking Readings: * H. Balakrishnan, S. Seshan, and R.H. Katz., Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks, ACM Wireless Networks, 1(4), December 1995. * A. Snoeren and H. Balakrishnan, An End-to-End Approach to Host Mobility, Proc. ACM MOBICOM, Boston, MA, August 2000. Project ideas: * Design and implement a TCP-aware wireless router, or a system for maintaining connection state for mobile hosts. Week 8: Multicast Readings: * Peterson, Chapter 4.4 * S. Floyd, V. Jacobson, S. McCanne, C. G. Liu, and L. Zhang, A Reliable Multicast Framework for Light-weight Sessions and Application Level Framing, ACM SIGCOMM 95. There is a later version of this paper available from the authors or citeseer * Steven McCanne, Van Jacobson and Martin Vetterli. Receiver-driven Layered Multicast, SIGCOMM '96. Project ideas: * Design and implement a scalable, hierarchical multicast routing protocol, a multicast reliability protocol, a multicast congestion control protocol, or a self-configuring multicast overlay network. Week 9: Quality of Service Readings: * Peterson, Chapter 6.5 * L. Zhang, S. Deering, D. Estrin, S. Shenker, and D. Zappala. RSVP: A New Resource Reservation Protocol. IEEE Network, Vol. 7, pp. 8-18, September, 1993. * I. Stoica and H. Zhang, Providing Guaranteed Services Without Per Flow Management. ACM SIGCOMM'99 , Boston, MA, Sept 1999. Project ideas: * Design and implement Internet support for real-time applications. Week 10: Naming and Discovery Readings: * Peterson, Chapter 9.1 * P. V. Mockapetris and K. Dunlap, Development of the Domain Name System. In Proceedings of SIGCOMM '88 (Stanford, CA, August, 1988). * I. Clarke, O. Sandberg, B. Wiley, and T. W. Hong, Freenet: A Distributed Anonymous Information Storage and Retrieval System ICSI Workshop on Design Issues in Anonymity and Unobservability, July 2000. * Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, and Hari Balakrishnan, Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications, ACM SIGCOMM 2001, San Deigo, CA, August 2001, pp. 149-160. Project ideas: * Design and implement a scalable naming infrastructure or a scalable file sharing utility. CSE logo Department of Computer Science & Engineering University of Washington Box 352350 Seattle, WA 98195-2350 (206) 543-1695 voice, (206) 543-2969 FAX [comments to owner-cse588]
Appears in Collections:Syllabus

Files in This Item:

File SizeFormat

All items in DSpace are protected by copyright, with all rights reserved.


Valid XHTML 1.0! DSpace Software Copyright © 2002-2006 MIT and Hewlett-Packard - Feedback