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


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:

Tentative Schedule

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

Date Topics Readings Notes
Wed 08/24 Introduction and course overview
[lecture slides]
Fri 08/26 Reviewing relevant concepts
Part 1: Historical perspective
Wed 08/31 Refresher on classical principles
End to end principle, Design philosophy [lecture slides]
Fri 09/02 More perspective (instructor not available)
Internet Only Just Works (no write-up required, optional class -- instructor not available) Points for discussion
Wed 09/07 Active networking
Active networking (write-up required),
Active networking and E2E (no write-up required)
[lecture slides]
Instructions and ideas for course project
Part 2: Switching infrastructure
Fri 09/09 Software-defined networking (SDN) concepts
4D Optional -- Ethane
[lecture slides]
Wed 09/14 SDN technology
OpenFlow, NOX Optional -- Onix
Warm-up assignment 1 release
[lecture slides]
Fri 09/16 SDN in use
B4 Optional -- B4 and after, Espresso, SWAN, Jupiter
[lecture slides]
Wed 09/21 Software switches
Routebricks Optional -- Click
Warm-up assignment 1 due
[lecture slides]
Fri 09/23 Programmable dataplane hardware
RMT Optional -- NetFPGA
[lecture slides]
Wed 09/28 Dataplane programming language
P4 Optional -- Domino
Warm-up assignment 2 release
Last date to discuss project proposals

[lecture slides]
Fri 09/30 P4 applications I
BeauCoup OR Elmo Optional -- Marple, PINT, Hula
[lecture slides]
Wed 10/05 P4 applications II
NetCache OR Silkroad Optional -- NetChain, NetLock, NoPaxos
Warm-up assignment 2 due
Fri 10/07 P4 applications III
In-network computing?, Thoughts on programmable switches [lecture slides]
Wed 10/12 Flexible packet scheduling
PIFO, UPS Optional -- ApproxFQ, SP-PIFO
[lecture slides]
Part 3: Networking infrastructure at endhosts
Fri 10/14 High performance network stack I (kernel optimizations)
Megapipe Optional -- Host network stack overheads
[lecture slides]
Mon 10/17 N/A
First progress report on the project due.
Wed 10/19 High performance network stack II (software kernel bypass)
IX Optional -- mTCP
[lecture slides]
Fri 10/21 RDMA
FaRM OR IRN Optional -- eRPC, Microsoft RoCE experience
[lecture slides]
Wed 10/26 Software NIC
SoftNIC Optional -- Carousel
[lecture slides]
Fri 10/28 Network Virtualization and Host SDN
NV Optional -- OpenVSwitch, VFP, Andromeda
[lecture slides]
Wed 11/02 Unified Host Networking
SNAP [lecture slides]
Fri 11/04 Programmable NICs
AccelNet FlexNIC, Tonic
Warm-up assignment 3 release
[lecture slides]
Mon 11/07 N/A
Second progress report on the project due.
Wed 11/09 Programmable NICs (contd.)
FlexTOE Optional -- iPipe, FairNIC, AccelTCP
[lecture slides]
Part 4: Beyond Switches and Endhosts
Fri 11/11 Middleboxes and Network Functions
NetBricks Optional -- ClickNP, E2
[lecture slides]
Wed 11/16 No class
(Optional self-study on network edge) Warm-up assignment 3 due
NetworkEdge Optional -- 5G-microbook
Fri 11/18 Student presentations
~~Thanksgiving break~~
Wed 11/30 Student presentations
Fri 12/02 Wrapping up
No readings, only lecture
Mon 12/05 N/A

Final project report due.
Wed 12/07 Final project presentation

Created using coursegen designed by Dave Anderson and Nick Feamster.

Last updated: 2022-11-11 14:09:16 -0600 [validate xhtml]