Advanced Networking (ANET)
1 Overview
ECTS | 5 (140 hours) |
Code | 2019-201700077-1A |
Coordinator | dr. Cristian Hesselman (SIDN Labs and University of Twente) |
c.e.w.hesselman@utwente.nl | |
Lecturers | dr.ir. Pieter-Tjerk de Boer (University of Twente) prof.dr.ir. Geert Heijenk (University of Twente) Caspar Schutijser, M.Sc. (SIDN Labs) dr. Roland van Rijsijk-Deij (NLnet Labs and University of Twente) dr. Cristian Hesselman (SIDN Labs and University of Twente) |
Student assistant | Dennis Eijkel |
Academic year | 2019-2020 |
Quartile | 1st (Sep-Nov) |
Language | English |
2 Assessment
We asses to what extent you attained ANET’s learning outcomes (see Background) based on academic papers and RFCs you will need to study and a lab assignment you will need to carry out.
Your deliverables for ANET are:
- 8 multiple choice tests on papers/RFCs, one for each of the ANET lectures, to be completed both individually and in groups.
- A presentation of 30 minutes on one of the ANET papers, including 10 minutes of discussion.
- A P4 program that configures the packet handling functions of a P4-programmable network switch, to be carried out individually.
To pass ANET, your overall score will need to be 5.5 or higher, which we calculate as follows:
((average score of 8 individual test)*40% + (average score of 8 group tests)*20% + (score of presentation)*40%) *(score of lab assignment)
The scores of the tests and the presentation are between 1 (worst) and 10 (best) and the score of the lab assignment is either 1 (pass) or 0 (fail).
The scoring formula in Master Cyber Security format is here: https://drive.google.com/open?id=1P2JrF7P1M7XuUFHi2SsoiCKgRXJyxkoUv70tGBxnDSM
2.1 Multiple choice tests
Each ANET lecture starts with a multiple-choice test to assess your understanding of an introductory paper on the topic being discussed in the that lecture (see the ANET schedule in Section 7). You will first need to answer the questions individually (closed book) and then answer the same questions again together with one of your fellow students. The goal of the group-based test is to enable you to learn from your peers and further increase your understanding of the paper.
We’ll hand out a form for the individual test at the beginning of the lecture, which you will need to complete in 10 minutes. After you handed in the individual test, we’ll give a you a second form for the group-based test, which has the same questions and which you’ll have to complete in 15 minutes.
After the tests, we’ll take another 10 minutes to discuss the paper with the whole group to enable everyone to learn from each other.
2.2 Presentation
You’ll need to study one of the ANET papers in-depth and present it to your peers in at most 30 minutes, consisting of 20 minutes of speaking time and 10 minutes of questions and discussion.
Please use slides to explain what the paper is about and add your observations and critique on the quality of the paper/research and how you would improve it.
Your lecturers will score your presentation, for instance based on clarity and mastery of the paper’s technical content.
In addition, your fellow students will use a feedback form to evaluate to what degree they understood the paper based on your presentation. Your lecturers will use this feedback to cross-check their evaluation of a particular presentation, for instance to round off scores. We’ll hand out the feedback forms at the beginning of each lecture and you must return them before leaving the room.
If you want, you can send us an email indicating the 1st, 2nd, and 3rd choice of papers you’d like to present. The deadline is Wed Sep 4, 2019, 23:59.
A few How To’s for giving a talk are the following:
- Ian Parberry: How to Present a Paper in Theoretical Computer Science - A Speaker's Guide for Students.
- Simon L. Peyton Jones, John Hughes, John Launchbury: How to give a good research talk.
Below, you can find which paper you’ll be presenting. The numbers refer to the list of papers which can be found in the course schedule.
First name | Paper |
---|---|
Reinard | 15 |
Bas | 10 |
Virginia | 13 |
Xiaochen | 9 |
David | 28 |
Adhithya | 24 |
Danish | 19 |
Martijn | 7 |
Feifan | 22 |
2.3 P4 lab assignment
The lab assignment involves you programming the packet handling functions of a (simulated) router using the domain-specific language P4 [6].
We will discuss P4 in one of the first lectures and we’ll provide detailed information on the lab assignment at ANET’s introductory lecture (see Section 7).
You will need to carry out the P4 assignment individually during a lab session of one afternoon. The date will be near the end of the quartile and we’ll announce it in one of the first lectures.
A few P4 tutorials that you might find useful are:
3 Schedule
Table 1 shows ANET’s schedule, which consists of a total of 9 lectures: an introduction and 8 interactive technical lectures. The first 5 lectures focus on advanced IP-based networking concepts, whereas the remaining 3 concentrate on non-IP inter-domain networking.
Each lecture starts with a multiple-choice test (35 minutes in total, see Section 5.1), followed by presentations of two papers (30 minutes each, see Section 5.2). The coffee-break is 10 instead of 15 minutes and takes place after the tests.
You must attend all lectures because of ANET’s interactive nature and because you’ll need to provide feedback on the presentations of your fellow students. The maximum capacity of ANET is 16 students.
All lectures take place on Wednesdays from 10:45 until 12:30 (3rd and 4th hour). We’re in room CR3F for lectures 1-2-3-5-6-8-9 and in RA2504 for lectures 4 and 7.
Table 2. ANET schedule 2019/2020.
Lecture | Contents |
---|---|
#1 | Introduction |
04-sep-19 | Course overview:
Lecturer: Cristian Hesselman |
Guest lecture: “Reflections on the History and Future of the Internet” Lecturer: Kees Neggers. Kees is an inductee of the Internet Hall of Fame and a member of the supervisory board of SIDN, the operator of the .nl top-level domain. He was one of the co-founders of the Amsterdam Internet Exchange (AMS-IX) and was the CEO of SURFnet, the Dutch National Research and Education Network (NREN). Full bio at https://en.wikipedia.org/wiki/Kees_Neggers Optional reading (not part of the assessment):
Lecture slides: Course overview (PDF), Reflections on the History and Future of the Internet (PDF) |
|
#2 | Topic: Programmable networks |
11-sep-19 | Multiple-choice tests:
Presentations:
Lecturer: Cristian Hesselman |
#3 | Topic: BGP security |
30-sep-19 | NOTE: the date for this lecture has changed from Wed Sep 18 to Mon Sep 30, 8th and 9th hour (i.e., starting at 15:45) in RA3237. Multiple-choice tests:
Presentations:
Lecturer: Pieter-Tjerk de Boer |
#4 | Topic: data center networking |
25-sep-19 | Multiple-choice tests:
Presentations:
Lecturer: Geert Heijenk |
#5 | Topic: multi-path communication |
02-oct-19 | Multiple-choice tests:
Presentations:
Lecturer: Geert Heijenk |
#6 | Topic: QUIC |
09-oct-19 | Multiple-choice tests:
Presentations:
Lecturer: Pieter-Tjerk de Boer |
#7 | Topic: DNS security and privacy |
16-oct-19 | Multiple-choice tests:
Presentations:
Lecturer: Roland van Rijswijk-Deij |
#8 | Topic: Emerging inter-networks (part I) |
23-oct-19 | Multiple-choice tests:
Presentations:
Lecturer: Cristian Hesselman |
#9 | Topic: Emerging inter-networks (part II) |
30-oct-19 | Multiple-choice test:
Presentations:
Lecturer: Cristian Hesselman |
4 Staying up to date
Please check the ANET homepage at https://courses.sidnlabs.nl/anet for the latest schedule and other information.
The reason we use a separate public website for ANET instead of Canvas is that we’d like to share the course’s format with other academic institutions and students so they can potentially learn from your and our work. The second reason is that ANET is a collaboration between the UT and SIDN Labs and at SIDN Labs we would like to make our contribution to courses like ANET visible through our site because we’d like to underscore the importance of companies helping to educate the next generation of engineers and researchers.
5 Submission of deliverables
Please submit your paper presentations through the ANET site on Canvas at https://canvas.utwente.nl/courses/4465.
You do not need to submit the multiple-choice tests and the P4 lab assignment through Canvas because we’ll get them from you in class.
6 Background
6.1 Learning Outcomes
After successful completion of the course “Advanced Networking” (ANET) you will be able to:
- Analyze, compare, and discuss various advanced inter-networking concepts, such as secure inter-domain routing and multi-path data delivery.
- Understand and discuss important challenges and proposed experimental solutions, including non-IP-based internetworking systems.
- Apply a domain-specific language such as P4 to implement basic data plane functionality of an open programmable router.
ANET also enhances your research skills, because you will need to independently review, analyze, and present research papers.
6.2 Contents
- Advanced concepts of IP-based internetworking
- Emerging non-IP inter-networking systems such as SCION, NDN, and RINA
- How both handle functions such as security, mobility, multi-path delivery
- Programmable networks as an enabler to deploy these systems
- Research challenges and new communication paradigms
- Reflections on the history and future of the Internet (guest lecture)
6.3 Motivation
The problem that the Internet originally aimed to solve in the 1970s was how to enable university researchers to share expensive computer hardware via a network, which later evolved into how to make computer networking ubiquitously available for everyone [23]. The relatively simple design of the Internet’s core protocols (TCP/IP, BGP, and the DNS) solved both of these problems beyond imagination, with the Internet now being critical for almost every aspect of our everyday life and for our society.
However, the success of the Internet also introduced new problems, because its basic point-to-point unreliable packet delivery service doesn’t always meet the requirements of newer types of applications, such as content distribution [28], control over and verification of network paths [26], safety-critical systems such as intelligent transport systems, and low-latency data transfer [23] (e.g., real-time trading or controlling swarms of autonomous objects such as robots and cars). Researchers and engineers have therefore developed and deployed various extensions of the Internet’s core protocols, such as routing security [8], device mobility [25], and multi-path communications [15-17]. Others are proposing and experimenting with completely new types of internets, for instance to support programmable and reusable protocol functions [7] or different communications paradigms (e.g., content-centric instead of host-centric communications [28]).
We offer ANET because we expect that some of these Internet extensions and new types of internets will have an impact on deployed network infrastructure in the next few years. An example are the BGP security extensions [8], which network operators increasingly deploy ( cf. certification-stats.ripe.net) to protect the Internet against routing hijacks. Another example are open programmable switches (e.g., Barefoot switches), which are becoming commercially available and enable engineers to define their own packet processing functions (e.g., for SCION or NDN traffic) in addition to IP on the same hardware.
6.4 Objective
The objective of ANET is to enable you to understand and evaluate advanced internetworking concepts, such as secure inter-domain routing, multi-path communication, and path control, both in the existing Internet as well as in new experimental non-IP-based internets (e.g., NDN, RINA, and SCION). This will give you a deeper understanding of internetworking that goes beyond traditional IP-based communications. From the university’s perspective, ANET helps preparing the next generation of researchers and engineers for future Internet developments, which is important to enable the Netherlands and Europe to stay in control of their internet infrastructure.
6.5 Interaction
ANET is a highly interactive course in which you report on research papers on advanced networking concepts and engage in technical discussions with your peers during ANET lectures (“group-based learning”). The number of seats is therefore limited to 16 and you will need to attend all lectures in person at the University of Twente (remote participation will not be available).
You can only sign up for ANET through OSIRIS and we admit people on a first-come-first-served basis (OSIRIS timestamps your registration). We’ll put you on a waiting list if more than 16 students sign up and let you know if a seat becomes available. Send an email to c.e.w.hesselman@utwente.nl to get on the waiting list.
6.6 Organization
ANET is a collaboration between the University of Twente and SIDN Labs (www.sidnlabs.nl), the research team of the operator of the .nl top-level domain, SIDN. SIDN Labs’ goal is to increase the operational security and resilience of end-to-end Internet communications, for instance by experimenting with the functions of emerging inter-domain networking systems (e.g., SCION and NDN).
6.7 Prerequisites
You need to have passed an introductory course in computer networks, such as the bachelor module Network Systems at the University of Twente.
6.8 Privacy
We’ll put the paper presentation schedule on the ANET site, using only your first name and not your last name. Please contact us if you have any objections.
6.9 Related courses
- Internet Security, https://www.4tu.nl/cybsec/en/course-program/nes-twente/
- Mobile & Wireless Networking (192620010)