Dataplane Programming
4.5 ECTS creditsThe course comprises three modules:
Module 1 Introduction to Dataplane Programming, 1.5 ECTS cr
The module covers the definition and foundations of data plane programming, and the difference between Software Defined Networking and Dataplane programming. The primary focus of the course is on recent developments such as the programming language P4. Students are introduced to the P4 language and the workflow of implementing and testing simple P4 programs. The limitations of P4 are treated as well as the problems that need to be considered when implementing a use case for the P4 language.
Module 2 Load Balancing in Data Center Networks, 1.5 ECTS cr
The primary focus of the module is on recent developments that apply the concept of programmable data planes to the load-balancing problem. Data Center networks and their implications for the routing and load-balancing approaches are treated. Several load balancing strategies are studied in more detail such as Equal Cost Multipath Routing (ECMP), Conga and Hula. Finally, future usecases such as load balancing in data centre networks with cross-layer information are treated.
Module 3 Network Monitoring with Programmable Data Planes, 1.5 ECTS cr
The module treats the principles of software-based network monitoring techniques with INT and its use cases for monitoring network flows. In addition, network caching for programmable data planes and its use cases including caching for key-value tuple. Finally, future usecases such as network control for programmable sensor-actuator communication.
Module 1 Introduction to Dataplane Programming, 1.5 ECTS cr
The module covers the definition and foundations of data plane programming, and the difference between Software Defined Networking and Dataplane programming. The primary focus of the course is on recent developments such as the programming language P4. Students are introduced to the P4 language and the workflow of implementing and testing simple P4 programs. The limitations of P4 are treated as well as the problems that need to be considered when implementing a use case for the P4 language.
Module 2 Load Balancing in Data Center Networks, 1.5 ECTS cr
The primary focus of the module is on recent developments that apply the concept of programmable data planes to the load-balancing problem. Data Center networks and their implications for the routing and load-balancing approaches are treated. Several load balancing strategies are studied in more detail such as Equal Cost Multipath Routing (ECMP), Conga and Hula. Finally, future usecases such as load balancing in data centre networks with cross-layer information are treated.
Module 3 Network Monitoring with Programmable Data Planes, 1.5 ECTS cr
The module treats the principles of software-based network monitoring techniques with INT and its use cases for monitoring network flows. In addition, network caching for programmable data planes and its use cases including caching for key-value tuple. Finally, future usecases such as network control for programmable sensor-actuator communication.
Progressive specialisation:
A1N (has only first‐cycle course/s as entry requirements)
Education level:
Master's level
Admission requirements
Computer Science 30 ECTS credits or three years of work experience in the IT sector, or equivalent, plus upper secondary English 6 or B, or equivalent.
Selection:
Selection is usually based on your grade point average from upper secondary school or the number of credit points from previous university studies, or both.
Course code:
DVAD40
The course is not included in the course offerings for the next period.