Lin Wang

Advanced Computer Networks (X_405082) 2022

In this course we will discuss advanced topics in computer networking. We will cover concepts and designs for modern network systems such as data center networking, software-defined networking, programmable networks, and cutting-edge networking research topics (such as programmable switch architectures and in-network computing).

The objectives of this course are:

More can be found on the study guide webpage. The course involves heavy reading of research papers. If you need some guidance on how to read a research paper, please check this article.

For the lab assignments, please get start by reading the Lab0 manual. The code templates for the lab assignments are publicly released here.

Course Information

Lecturer: Lin Wang
Teaching Assistants: George Karlos, Florian Gerlinghoff

Lectures: Tue, Wed 11:00 - 12:45 hybrid (on-campus and streamed on Zoom)

Office Hours: Every Wednesday before the lecture (09:30 - 10:30), NU-11A33.

Literature: No set textbook. All material will be made available during the course. Please check the Modules section on Canvas for weekly reading lists.


PASS: iff you obtain no less than 25/50 in both components. Details for grading can be found in the first lecture slides.


Date Topic Material
Nov 1, 2022, 11:00 L: Introduction [Slides]
Internet History
Lecture by David Clark
TCP/IP design philosophy
End-to-end argument
Nov 2, 2022, 11:00 L: Networking Basics [Slides]
Systems Approach: Chapter 3
Computer Networks: Chapter 3-5
Nov 8, 2022, 11:00 L: Network Transport [Slides]
Congestion Avoidance and Control
BBR: Congestion-based CC
Multipath TCP
Nov 9, 2022, 11:00 L: Data Center Networking [slides]
Fattree, PortLand
Jupiter Rising, Jupiter Evolving
Optional: Jellyfish, BCube, DCell
Nov 9, 2022, 23:59 P: Lab1 Due [Lab1 Manual]
Nov 15, 2022, 11:00 L: Data Center Network Transport [slides]
Optional: pFabric, Homa
Nov 16, 2022, 11:00 L: Software Defined Networking [slides]
The Road Towards SDN
FlowVisor, CoVisor
Nov 16, 2022, 23:59 P: Lab2 Due [Lab2 Manual]
Nov 22, 2022, 11:00 L: Network Function Virtualization [slides]
Click, RouteBricks
Optional: FastClick, OpenNF, StatelessNF, S6
Nov 23, 2022, 11:00 L: Programmable Data Plane [slides]
Intro. to P4
P4 Language Specs
Nov 25, 2022, 23:59 P: Lab3 Due [Lab3 Manual]
Nov 29, 2022, 11:00 L: Programmable Switch Architecture [Slides]
Optional: Menshen, FlexCore
Nov 30, 2022, 11:00 L: In-Network Computing - Applications [Slides]
NetCache, NetChain, SwitchML
Optional: HIRE, NCL, P4DNN
Dec 2, 2022, 23:59 P: Lab4 Due [Lab4 Manual]
Dec 6, 2022, 11:00 L: In-Network Computing - Hardware [Slides]
Thanos, Taurus
Optional: FPISA
Dec 7, 2022, 11:00 L: Network Monitoring [Slides]
Cuckoo Hashing, Bloom Filter, Count-Min Sketch
Optional: UnivMon, SketchLib
Dec 14, 2022, 23:59 L: Guest Lecture The next 700 network switches
Fernando Ramos (IST, Universyt of Lisbon)
Dec 16, 2022, 23:59 P: Lab5 Due [Lab5 Manual]