ECE/CS598HPN, Fall 2019: High-speed and Programmable Networks

Textbooks

There are no official texts for the course. Students are expected to read research papers. The following books can be useful in providing relevant background:

Schedule

The schedule and specific readings are tentative and may change over the course of the semester.

Date Topics Readings Notes
Tue 08/27 Introduction and course overview
slides
Thu 08/29 Reviewing relevant concepts
Part 1: Historical perspective
Tue 09/03 Refresher on classical principles
End to end principle, Design philosophy
Thu 09/05 Active networking
Active networking (write-up required),
Active networking and E2E (no write-up required)
Instructions and ideas for course project
Part 2: Switching infrastructure
Tue 09/10 Software-defined networking (SDN) concepts
4D Optional -- Ethane
Thu 09/12 SDN technology
OpenFlow, NOX Optional -- Onix
Warm-up assignment 1 release
Tue 09/17 SDN in use
B4 Optional -- B4 and after, Espresso, SWAN, Jupiter
Thu 09/19 Software switches
Click OR Routebricks
Fri 09/20 N/A
N/A Warm-up assignment 1 due
Tue 09/24 Programmable dataplane hardware
RMT Optional -- NetFPGA
Thu 09/26 Dataplane programming language
P4 Optional -- Domino
Warm-up assignment 2 release
Last date to discuss project proposals
Tue 10/01 P4 applications I
Marple OR Elmo Optional -- Silkroad, Hula
Thu 10/03 P4 applications II
NetCache OR Eris Optional -- NetChain
Warm-up assignment 2 due
Tue 10/08 P4 applications III
In-network computing?, Thoughts on programmable switches
Thu 10/10 Flexible packet scheduling
PIFO, UPS
Tue 10/15 Extensible Internet architecture
Trotsky First progress report on the project due.
Part 3: Networking infrastructure at endhosts
Thu 10/17 High performance network stack I (kernel optimizations)
Megapipe
Tue 10/22 High performance network stack II (software kernel bypass)
IX Optional -- mTCP
Thu 10/24 Software NIC
SoftNIC Optional -- Carousel
Tue 10/29 RDMA I - usecases
FaRM Optional -- Pilaf, Herd
Thu 10/31 RDMA II - deployment hurdles
IRN Optional -- eRPC, Microsoft RoCE experience
Tue 11/05 Host SDN I
OpenVSwitch Second progress report on the project due.
Thu 11/07 Host SDN II / Programmable NICs I
VFP OR AccelNet Warm-up assignment 3 release
Tue 11/12 Programmable NICs II
FlexNIC Optional -- Tonic
Thu 11/14 No lecture!
Warm-up assignment 3 due
Part 4: Network functions
Tue 11/19 Network Function Virtualization
NetBricks
Thu 11/21 Accelerated NFs
ClickNP
~~Thanksgiving break~~
Tue 12/03 More smartNIC usecases (Part 3 cont'd)
iPipe
Thu 12/05 Wrapping up
No readings, only lecture
Fri 12/06 N/A
Final project report due
Mon 12/09 Final project presentation
Tue 12/10 Final project presentation

Created using coursegen designed by Dave Anderson and Nick Feamster.

Last updated: 2019-11-21 15:52:04 -0600 [validate xhtml]