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:
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 |
SNAP | 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]