Instructor: Keith Winstein
Class meetings: Monday and Wednesday, 1:30 p.m.–2:50 p.m. in 380-381U
Office hours: Wednesday, 3 p.m.–4 p.m. in Gates 282
Piazza: [CS 344G on Piazza]
Graduate project class on computer networking, emphasizing end-to-end applications and protocols. Students will propose and execute an original project in teams of 2–3, culminating in a final writeup and presentation/demonstration. Each week, students will read, present, and lead a discussion about a seminal paper or system. Prerequisites: programming experience; CS 244 recommended but not required. Terms: Win | Units: 3 | Grading: Letter or Credit/No Credit | Instructors: Winstein, K. (PI)
It’s hard to name an area of computer science that has produced more tangible changes—and arguably, more significant advances—for the average person over the last 25 years than networking. These changes were often sparked by very small groups of people. Thinking just about applications that run on a network, the last 25 years have seen a huge number of influential developments:
This project-based studio class is a good way to become comfortable with writing network applications—which can mean anything that opens a socket and sends something across the network. The focus will be on network applications that run at end hosts: not on routing, switching, the physical layer, or other network infrastructure. The intention of this class is that students with no networking background (but with programming experience) will be able to take it and will gain experience reading and presenting research papers and will produce a networked application they can be proud of.
The main activities of CS 344G will be:
The intention is for you to spend most of your effort on bringing your great ideas to fruition—that is, on the project. Office hours are available for coaching and help. Class meetings will be spent principally on student-led presentations and discussions of the research papers, and secondly on discussions of projects in progress and demos along the way.
The class will be graded 60% based on the project and its writeup, 25% based on in-class presentation of one of the research papers, and 15% based on participation in discussions of the research papers. The congestion-control contest (details to come) will bring prizes but will not affect grades.
Date | Contents |
---|---|
Monday, Jan. 4 | L1 Intro & talk with potential teammates. Warm-up 1 out |
Wednesday, Jan. 6 | L2 M. Handley, Why the Internet only just works, BT Technology Journal, 24(3), July 2006
|
Monday, Jan. 11 | L3 Warm-up 1 due J. H. Saltzer, D. P. Reed, and D. D. Clark. 1984. End-to-end arguments in system design. ACM Trans. Comput. Syst. 2, 4 (November 1984), 277–288 (Saurabh) |
Wednesday, Jan. 13 | L4 Project proposals due Congestion-control contest begins
Justine Sherry, Chang Lan, Raluca Ada Popa, and Sylvia Ratnasamy. 2015. BlindBox: Deep Packet Inspection over Encrypted Traffic. SIGCOMM 2015 (Luke) |
Monday, Jan. 18 | no class |
Wednesday, Jan. 20 | L5 V. Jacobson and M. Karels. 1988. Congestion Avoidance and Control (revised from Proc. SIGCOMM 1988) (Raejoon) |
Monday, Jan. 25 | L6 Presentation and feedback on project proposals. |
Wednesday, Jan. 27 | L7 Presentation and feedback on project proposals. |
Monday, Feb. 1 | L8 Congestion-control contest ends Keith Winstein, Anirudh Sivaraman, and Hari Balakrishnan. 2013. Stochastic Forecasts Achieve High Throughput and Low Delay over Cellular Networks. In Proceedings of the 10th USENIX conference on Networked Systems Design and Implementation (NSDI ’13) |
Wednesday, Feb. 3 | L9 Warm-up 2 out Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, and Hari Balakrishnan. 2001. Chord: A scalable peer-to-peer lookup service for internet applications. SIGCOMM Comput. Commun. Rev. 31, 4 (August 2001), 149–160 (Kevin) |
Monday, Feb. 8 | L10 Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, and Arun Venkataramani. 2007. Do incentives build robustness in BitTorrent? In Proceedings of the 4th USENIX conference on Networked systems design & implementation (NSDI ’07) (Francis) |
Wednesday, Feb. 10 | L11 Warm-up 2 due Keith Winstein and Hari Balakrishnan. 2012. Mosh: an interactive remote shell for mobile clients. In Proceedings of the 2012 USENIX conference on Annual Technical Conference (USENIX ATC ’12) and Mosh: A State-of-the-Art Good Old-Fashioned Mobile Shell, ;login: (August 2012) (Dan) |
Monday, Feb. 15 | no class |
Wednesday, Feb. 17 | L12 Project demo/kibitz day. |
Monday, Feb. 22 | L13 Xiaoqi Yin, Abhishek Jindal, Vyas Sekar, and Bruno Sinopoli. A Control-Theoretic Approach for Dynamic Adaptive Video Streaming over HTTP (SIGCOMM 2015) (Yilong) |
Wednesday, Feb. 24 | L14 Project demo/kibitz day. |
Monday, Feb. 29 | L15 T. J. Berners-Lee, R. Cailliau, and J.-F. Groff. 1992. The World-Wide Web. Comput. Netw. ISDN Syst. 25, 4–5 (November 1992), 454–459, and Tim Berners-Lee, The World Wide Web: Past, Present and Future (1996) (Tal) |
Wednesday, March 2 | L16 Final presentation of projects. |
Monday, March 7 | L17 Final presentation of projects. |
Wednesday, March 9 | L18 Final presentation of projects and wrap-up. |
Friday, March 11 | Project write-ups due |