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.

Task 1 – Source Routing

Task 2 – Load Balancer

Task 3 – Counters & Registers

Final Work

Papers to read:

Enabling Edge-Cloud Video Analytics for Robotics Applicationshttps://www.cse.ust.hk/~ywanggf/public/files/runespoor-infocom21.pdf
HULA: Scalable Load Balancing Using Programmable Data Planeshttps://conferences.sigcomm.org/sosr/2016/papers/sosr_paper67.pdf
SQR: In-network Packet Loss Recovery from Link Failures for Highly Reliable Datacenter Networkshttps://www.comp.nus.edu.sg/~bleong/publications/icnp19-sqr.pdf
BurstRadar: Practical Real-time Microburst Monitoring for Datacenter Networkshttps://dl.acm.org/doi/10.1145/3265723.3265731
P4KP: QoS-Aware Top-K Best Path Using Programmable Switchhttps://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9502607
DeltaINT: Toward General In-band Network Telemetry with Extremely Low Bandwidth Overheadhttps://ieeexplore.ieee.org/document/9651963
Continuous In-Network Round-Trip Time Monitoringhttps://www.cs.princeton.edu/~jrex/papers/dart22.pdf
In-Network Velocity Control of Industrial Robot Armshttps://www.usenix.org/conference/nsdi22/presentation/laki
QoSTCP: Provide Consistent Rate Guarantees to TCP flows in Software Defined Networkshttps://ieeexplore.ieee.org/document/9148715
P4-Enabled Bandwidth Managementhttps://ieeexplore.ieee.org/document/8892909
An incrementally-deployable P4-enabled architecture for network-wide heavy-hitter detectionhttps://ieeexplore.ieee.org/document/8967165
Implementing AES Encryption on Programmable Switches via Scrambled Lookup Tableshttps://dl.acm.org/doi/abs/10.1145/3405669.3405819
BurstRadar: Practical Real-time Microburst Monitoring for Datacenter Networkshttps://dl.acm.org/doi/10.1145/3265723.3265731