ECE/CS598HPN, Fall 2020: 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
Tue 08/25 Introduction and course overview
[lecture slides]
Thu 08/27 Reviewing relevant concepts
Part 1: Historical perspective
Tue 09/01 Refresher on classical principles
End to end principle, Design philosophy [lecture slides]
Thu 09/03 Active networking
Active networking (write-up required),
Active networking and E2E (no write-up required)
Instructions and ideas for course project
[lecture slides], [project guidelines]
Part 2: Switching infrastructure
Tue 09/08 Software-defined networking (SDN) concepts
4D Optional -- Ethane
[lecture slides]
Thu 09/10 SDN technology
OpenFlow, NOX Optional -- Onix
Warm-up assignment 1 release
[lecture slides]
Tue 09/15 SDN in use
B4 Optional -- B4 and after, Espresso, SWAN, Jupiter
[lecture slides]
Thu 09/17 Software switches
Routebricks Optional -- Click
Warm-up assignment 1 due
[lecture slides]
Tue 09/22 Programmable dataplane hardware
RMT Optional -- NetFPGA
[lecture slides]
Thu 09/24 Dataplane programming language
P4 Optional -- Domino
[lecture slides] Warm-up assignment 2 release
Last date to discuss project proposals
Tue 09/29 P4 applications I
BeauCoup OR Elmo Optional -- Marple, PINT, Hula
[lecture slides]
Thu 10/01 P4 applications II
NetCache OR Silkroad Optional -- NetChain, NetLock, NoPaxos
Warm-up assignment 2 due
Tue 10/06 P4 applications III
In-network computing?, Thoughts on programmable switches [lecture slides]
Thu 10/08 Flexible packet scheduling
PIFO, UPS Optional -- ApproxFQ, SP-PIFO
[lecture slides]
Tue 10/13 Extensible Internet architecture
Trotsky [lecture slides]
Part 3: Networking infrastructure at endhosts
Thu 10/15 High performance network stack I (kernel optimizations)
Megapipe First progress report on the project due.
[lecture slides]
Tue 10/20 High performance network stack II (software kernel bypass)
IX Optional -- mTCP
[lecture slides]
Thu 10/22 RDMA
FaRM OR IRN Optional -- eRPC, Microsoft RoCE experience
[lecture slides]
Tue 10/27 Software NIC
SoftNIC Optional -- Carousel
[lecture slides]
Thu 10/29 Network Virtualization and Host SDN
NV Optional -- OpenVSwitch, VFP, Andromeda
[lecture slides]
Tue 11/03 Election Day (no class).
Thu 11/05 Unified Host Networking
Second progress report on the project due.
[lecture slides]
Tue 11/10 Programmable NICs
AccelNet FlexNIC, Tonic
Warm-up assignment 3 release
[lecture slides]
Thu 11/12 Programmable NICs (contd.)
iPipe Optional -- FairNIC, AccelTCP
[lecture slides]
Part 4: Beyond Switches and Endhosts
Tue 11/17 Middleboxes and Network Functions
NetBricks Optional -- ClickNP, E2
[lecture slides]
Thu 11/19 5G Mobile Networks and Edge Computing
NetworkEdge Optional -- 5G-microbook
Warm-up assignment 3 due
~~Thanksgiving break~~
Tue 12/01 Wildcard (student's choice)
Thu 12/03 Wrapping up
No readings, only lecture
Fri 12/04 N/A
Final project report due
Tue 12/08 Final project presentation

Created using coursegen designed by Dave Anderson and Nick Feamster.

Last updated: 2020-11-29 18:27:54 -0600 [validate xhtml]