EN.601.714: Advanced Computer Networks
Logistics
- Instructor: Xin Jin
- Teaching assistants: Hang Zhu
- Lecture time: Tuesday and Thursday, 1:30-2:45pm
- Location: Hodson 316
- Office hours: Tuesday 2:45-3:45pm, Malone 233
- Credits: 3 credits
- Area for MSE and PhD requirements: Systems
- Homework submission: Gradescope, join the course with entry code 9J4JNJ
Course Description
This is a graduate-level course on computer networks. It provides a comprehensive overview on advanced topics in network protocols and networked systems. The course will cover both classic papers on Internet protocols and recent research results. It will examine a wide range of topics, e.g., routing, congestion control, network architectures, datacenter networks, network virtualization, software-defined networking, and programmable networks, with an emphasis on core networking concepts and principles. The course will include lectures, paper discussions, programming assignments and a research project.
Prerequisites
One undergraduate course in computer networks (e.g., EN.601.414/614 Computer Networks or the equivalent), or permission of the instructor. The course assignments and projects assume students to be comfortable with programming.
Announcements
- Tuesday, September 3: First day of class.
Course Syllabus
Date | Topics | Readings | Notes |
---|---|---|---|
Classics | |||
Tue 09/03 | Course Overview | How to Read, You and Your Research | |
Thu 09/05 | End Host | Packet Switching, E2E Argument | |
Tue 09/10 | Control Plane | Design Philosophy, E2E Routing Behavior | |
Thu 09/12 | Data Plane | Click, P4 | 50Gbps Router, RMT |
Tue 09/17 | Overlay Networks | Chord, CAN | Pastry, Tapestry |
Thu 09/19 | Golden Age of Programmable Hardware | ||
Datacenter Networking | |||
Tue 09/24 | Datacenter Architectures | VL2, Jupiter Rising | PortLand |
Thu 09/26 | Optical Datacenters | Helios, ProjecToR | FireFly |
Tue 10/01 | Congestion Control 1 | DCTCP, pFabric | PDQ |
Thu 10/03 | No Class | ||
Tue 10/08 | Congestion Control 2 | NDP, HPCC | |
Thu 10/10 | Resource Disaggregation | InfiniSwap, LegoOS | |
Software-Defined Networking | |||
Tue 10/15 | Control Plane | Ethane, Onix | FlowVisor |
Thu 10/17 | No Class | ||
Tue 10/22 | Wide Area Networks | B4, Owan | SWAN |
Programmable Networks | |||
Thu 10/24 | Caching | SwitchKV, NetCache | |
Tue 10/29 | Consensus | NOPaxos, Eris | |
Thu 10/31 | Coordination and Measurement | NetChain, Sonata | |
Networking Meets AI | |||
Tue 11/05 | AI for networking 1 | NeuroCuts, Pensieve | |
Thu 11/07 | AI for networking 2 | Aurora, Decima | |
Tue 11/12 | Networking for AI 1 | TBD | |
Thu 11/14 | Networking for AI 2 | TBD | |
Middleboxes | |||
Tue 11/19 | Frameworks | E2, NetBricks | SIMPLE |
Thu 11/21 | Load Balancers | Ananta, SilkRoad | Duet |
Tue 11/26 | Thanksgiving Vacation | Gobble, gobble! | |
Thu 11/28 | Thanksgiving Vacation | Gobble, gobble! | |
Project Presentations | |||
Tue 12/03 | Project presentations 1 | ||
Thu 12/05 | Project presentations 2 | Project Report due Mon 12/11 |
Paper Reviews and Presentations
- Each student reviews 1 paper/class; submit reviews before the class
- Each student presents 2 papers
How to write reviews
- 4 sections in review
- Summary
- Paper strengths
- Paper weaknesses
- Detailed comments
- Summary (points in sentence or bullet form)
- 1-2 points: What problem?
- 1-2 points: Core novel ideas or technical contributions
- 3-5 points: Summarize approach, mechanisms, findings
- Strengths/Weaknesses: 2-4 points each
- Detailed comments
- Longer exposition. Be constructive. Imagine conversation w/ authors: What would you tell them?
- May include
- Problem: What is it? Is it new? Is it real? Is it important?
- Solution: What is the technique(s)? Is it novel? How is it compared to past solutions? What is the intuition(s)?
- Implementation/evaluation: Does it have a real system prototype? Is the evaluation dataset(s) representative? Does the evaluation cover all aspects?
- Looking forward: Can you come up with a new/different/better solution? Can you find a new/related problem to solve?
Programming Assignments
- Assignment 1: Use iperf3 and wireshark to explore TCP.
- Assignment 2: Use P4 and Mininet to design network features. (Tutorial 1, Turorial 2)
Course Project
- Final project
- Topic: reproduce a paper discussed in class, or novel research with a system-building component
- Can work alone, or in groups of two students
- Must involve writing some software
- Can overlap with other projects, with permission
- Undergraduate research projects
- PhD qualifying research projects
- Deliverables
- Two-page short proposal: Oct 20
- Project presentation: Dec 5 (last class)
- Six-page final report: Dec 9
Policies
Academic Integrity Policy
This course strictly enforces the university and department policies on academic integrity. The details can be found on the department website.
Late Policy
25% off for each 24 hours late, rounded up
Grading
- Class participation: 20%
- Paper reviews: 20%
- Programming assignments: 20%
- Project report and presentation: 40%