Advanced Topics in Computer Networks (2022/1)
Goals
In this course we will address the programmability of the data plane in computer networks. We will use the P4 language for implementation of small solutions including Basic Forwarding, Monitoring, Load Balancing and Stateful Packet Processing. We will use a virtual machine (VM) available previously and widely used in tutorials (eg. Sigcomm 2018) to carry out our learning and experiments. The course will initially consist of reading articles and presentations. After that, we’ll do small activities using the P4 language and we will test in the VM-emulated environment. A final work should be implemented and presented by the students.
Content
Introduction, concepts and history.
Introduction to P4. Here you will find the link to download the VM.
Introduction to counters and registers.
Papers to read:
Enabling Edge-Cloud Video Analytics for Robotics Applications | https://www.cse.ust.hk/~ywanggf/public/files/runespoor-infocom21.pdf |
HULA: Scalable Load Balancing Using Programmable Data Planes | https://conferences.sigcomm.org/sosr/2016/papers/sosr_paper67.pdf |
SQR: In-network Packet Loss Recovery from Link Failures for Highly Reliable Datacenter Networks | https://www.comp.nus.edu.sg/~bleong/publications/icnp19-sqr.pdf |
BurstRadar: Practical Real-time Microburst Monitoring for Datacenter Networks | https://dl.acm.org/doi/10.1145/3265723.3265731 |
P4KP: QoS-Aware Top-K Best Path Using Programmable Switch | https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9502607 |
DeltaINT: Toward General In-band Network Telemetry with Extremely Low Bandwidth Overhead | https://ieeexplore.ieee.org/document/9651963 |
Continuous In-Network Round-Trip Time Monitoring | https://www.cs.princeton.edu/~jrex/papers/dart22.pdf |
In-Network Velocity Control of Industrial Robot Arms | https://www.usenix.org/conference/nsdi22/presentation/laki |
QoSTCP: Provide Consistent Rate Guarantees to TCP flows in Software Defined Networks | https://ieeexplore.ieee.org/document/9148715 |
P4-Enabled Bandwidth Management | https://ieeexplore.ieee.org/document/8892909 |
An incrementally-deployable P4-enabled architecture for network-wide heavy-hitter detection | https://ieeexplore.ieee.org/document/8967165 |
Implementing AES Encryption on Programmable Switches via Scrambled Lookup Tables | https://dl.acm.org/doi/abs/10.1145/3405669.3405819 |
BurstRadar: Practical Real-time Microburst Monitoring for Datacenter Networks | https://dl.acm.org/doi/10.1145/3265723.3265731 |