Advanced Networking (ANET)

This website lists information for the 2020/2021 course Advanced Networking (ANET) at the University of Twente.

Last updated at 5 Oct 2020.

Overview

   
ECTS 5 (140 hours)
Code 2020-201700077-1A
Prerequisites Introductory course in computer networks, such as the bachelor module Network Systems at the UT
Teachers dr.ir. Pieter-Tjerk de Boer (University of Twente)
prof.dr.ir. Geert Heijenk (University of Twente)
dr. Roland van Rijsijk-Deij (NLnet Labs and University of Twente)
dr. Cristian Hesselman (SIDN Labs and University of Twente)
Teaching assistant Bas Bleijerveld
Coordinator dr. Cristian Hesselman (SIDN Labs and University of Twente)
E-mail c.e.w.hesselman@utwente.nl
Academic year 2020-2021
Quartile 1st (Sep-Nov)
Language English

Your Covid responsibilities on campus (and elsewhere)

The ANET tests (see below) will take place in room OH113 (Oost Horst). While it’s great that we can have lectures on campus again, it does mean you’ll need to act in accordance with the University’s Corona regulations.

In particular, your Covid responsibilities on campus (and elsewhere) are:

This is a shared responsibility for all of us, not just to protect yourself but your fellow students, friends, family, and teaching staff as well

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:

We expect you to both actively participate in the discussions for the group tests as well as in the plenary discussion at the end of each lecture (see Detailed timetable for on-campus lectures).

To pass ANET, your overall score will need to be 5.5 or higher, which we calculate as follows:

((average score of 8 individual tests)*70% + (average score of 8 group tests)*30) *(score of lab assignment)

Where the average score of your individual tests must be 5.5 or higher.

The scores of the tests are between 1 (worst) and 10 (best) and the score of the lab assignment is either 1 (pass) or 0 (fail).

Multiple choice tests

Each ANET lecture consists of two multiple-choice tests to assess your understanding of two papers discussed in the that lecture (see the ANET Schedule).

You will first need to answer the questions for both papers individually (closed book) and then answer the same questions again in groups together with one or more 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.

After the tests, we’ll take 15 minutes to discuss the answers of the tests and another 15 minutes for an open discussion on one or both papers with the whole group to enable everyone to learn from each other.

P4 lab assignment

The lab assignment involves you programming the packet handling functions of a (simulated) router using the domain-specific language P4 [6]. P4 and open programmable networks, which we believe are important enablers for a the Internet of the future [RESINT].

We will discuss P4 in one of the first lectures and we’ll provide detailed information on the lab assignment through an online introductory lecture (see Schedule).

You will need to carry out the P4 assignment individually at home. When you’re done, you need to show your results to the Teaching Assistant, who will organize regular Canvas “sign-off sessions” for that purpose (see Schedule).

Key requirements you’ll need to fulfill to get your P4 assignments signed off are:

A few P4 tutorials that you might find useful are:

Schedule

Note: We’ll closely monitor the guidance that the University provides and just before each lecture we’ll decide if next week’s test can take place on-campus. If it seems that such activities might be cancelled, we’ll switch to a format based on remote oral exams for the remaining papers that you’ll need to study. If this happens, we’ll reuse the format that we used for Security Services for the IoT in Q4-2020 (short weekly teacher presentations through Canvas, oral exams in the exam weeks).

Table 2 shows the schedule of ANET, which we split into two tracks. An online track (track O) with sessions on Mondays 15:45-17:30, and an on-campus track (track C) with sessions on Wednesdays 17:45-19:30.

The lecture room on Wednesdays will be OH113 in building “Oost Horst”, which has been Corona proofed. More details on OH113 are here: https://www.utwente.nl/en/cfm/study/lectures/overview/#horst

Please also check the detailed timetable for the on-campus lectures below.

You must attend all lectures that are on campus because that’s when the tests will take place and because of ANET’s interactive nature. Because of the Corona situation, the maximum capacity of ANET is 16 students.

The references point to the papers at the bottom of this page.

Table 1. ANET schedule 2020/2021.

Lect. Date Loc. Topic
O1 Mon Aug 31 - NO LECTURE
C1 Wed Sep 2 OH113 ANET introduction
Teacher: Cristian Hesselman
Intro P4 lab assignment (short)
Teacher: Bas Bleijerveld
Lecture slides: Course Overview (PDF), P4 Lab (PDF)
O2 Mon Sep 7 Canvas Interactive guest Lecture #1 (see Guest Lectures)
Design and evolution of the Internet
Speaker: Kees Neggers
Please submit question about [RINA2] beforehand
Teacher: Cristian Hesselman
Lecture slides: Reflections on the Evolution of the Internet (PDF)
C2 Wed Sep 9 OH113 Programmable Networks [SDN] [P4]
Teacher: Cristian Hesselman
Lecture slides: Programmable Networks (PDF)
O3 Mon Sep 14 Canvas Guest lecture #2 (see Guest Lectures)
The Internet’s interconnection landscape
Speaker: Henk Steenman (AMS-IX)
Teacher: Cristian Hesselman
Lecture slides: Interconnection, Peering, and IXPs (PDF)
C3 Wed Sep 16 OH113 BGP Security [BGP]
Teacher: Pieter-Tjerk de Boer
O4 Mon Sep 21 Canvas Intro P4 lab assignment (extended)
Teacher: Bas Bleijerveld
Lecture slides: P4 Lab (PDF)
C4 Wed Sep 23 OH113 Data Center Networking [DCN] [JUPITER]
Teacher: Geert Heijenk
O5 Mon Sep 28 Canvas P4 sign-off session #1
Exercises to be assessed: Basic Forwarding and Basic Tunneling
Deadline: Thu Sep 24 (upload to Canvas)
Teacher: Bas Bleijerveld
C5 Wed Sep 30 OH113 Multi-path communication [MTCP1] [MTCP2]
Teacher: Geert Heijenk
O6 Mon Oct 5 Canvas P4 sign-off session #2
Exercises to be assessed: P4Runtime
Deadline: Thu Oct 1 (upload to Canvas)
Teacher: Bas Bleijerveld
C6 Wed Oct 7 OH113 Emerging inter-networks part I [CYCLE] [TROTS]
Teacher: Cristian Hesselman
O7 Mon Oct 12 Canvas P4 sign-off session #3
Exercises to be assessed: Explicit Congestion Notification and Multi-Hop Route Inspection
Deadline: Thu Oct 8 (upload to Canvas)
Teacher: Bas Bleijerveld
C7 Wed Oct 14 OH113 QUIC [QUIC1] [QUIC2]
Teacher: Pieter-Tjerk de Boer
O8 Mon Oct 19 Canvas P4 sign-off session #4
Exercises to be assessed: Source Routing and Firewall
Deadline: Thu Oct 15 (upload to Canvas)
Teacher: Bas Bleijerveld
C8 Wed Oct 21 OH113 DNS security and privacy [P-DNS] [DoH]
Teacher: Roland van Rijswijk-Deij
O9* Mon Oct 26 - NO LECTURE
C9* Wed Oct 28 OH113 Emerging inter-networks part II [SCION] [NDN]
Teacher: Cristian Hesselman
O10* Mon Nov 2 - NO LECTURE
C10* Wed Nov 4 - NO LECTURE

 

ANET consists of a total of 9 lectures on campus: an introduction and 8 interactive technical lectures. The first 5 lectures focus on advanced IP-based networking concepts, whereas the remaining 3 concentrate on future non-IP networks.

In addition to the on-campus lectures, we provide 7 online sessions: 2 guest lectures, an introduction of the P4 lab assignment, and four P4 sign-off sessions. Online lectures will take place through Canvas conferences. See Online Tools below for more details.

We’ll start with an introductory lecture on Wed Sep 2 (in OH113) to inform you of what will be expected from you and to answer any questions you may have.

Detailed timetable for on-campus lectures

Table 2 provides a detailed schedule for each of the lectures that take place in OH113. We apologize for the micromanagement, but we believe this is important in times of Corona. Thank you for your understanding.

Table 2. Timetable per on-campus lecture and expected behavior.

Time What
17:45-17:50 Arrival at OH113 [Mind the 1.5m distance]
Put your cell phone and other carry-on devices in your bag
Sit where there is a test form on the table
Both individual and groups tests are on all tables
17:50-18:10 Individual test papers 1 and 2 (closed book)
When done, put form on the table next to you, teacher will get it in the break
18:10-18:15 Teacher organizes everyone into two groups of three [Mind the 1.5m distance]
18:15-18:45 Group test papers 1 and 2, use 1 form per group (closed book)
When done, leave test on the table, teacher will get it in the break
18:45-19:00 Break, leave the room [Mind the 1.5m distance]
Teacher picks up tests when everyone has left the room
19:00-19:15 Sit where you were for the individual tests [Mind the 1.5m distance]
Plenary discussion on answers of both tests
19:15-19:30 Detailed discussion on details of the papers (open book)
19:30 Adjourn [Mind the 1.5m distance]

 

Guest lectures

We provide two guest lectures by industry experts to further broaden your horizon on inter-domain networking, in particular to give you a flavor of the history and operational side of the Internet.

Lecture #1: design and evolution of the Internet

The first guest lecture is an interactive lecture on the design of the Internet, it limitations, and evolution [RINA1] [RINA2].

Our guest is Kees Neggers, inductee of the Internet Hall of Fame and a member of the supervisory board of SIDN, the operator of the .nl top-level domain. Kees 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).

We kindly ask you to read chapter 4 of [RINA2] (around 5 pages) and submit at least one question about the paper beforehand. Kees will use your questions as the basis for a plenary discussion in which he will provide you with more insight into the design and evolution of the Internet. Please also include a motivation as to why you’re asking the question.

We do not test the paper of the guest lecture, but the discussion will help you better understand the papers that we do test later, for instance those on future internet architectures (lectures 7 and 9).

Your teacher will open a message thread on Canvas where you can post your questions and their motivation.

More background on the history of the Internet is available in [HIST1], [HIST2], and [REFL] (not tested).

Lecture #2: the Internet’s interconnection landscape

The second lecture is a presentation on the internals of the Internet in terms of its different networks, technologies, and interconnection models as well as some specifics on the role of Internet Exchanges (IXs), specifically the Amsterdam Internet Exchange (AMS-IX).

Our speaker will be Henk Steenman, CTO of the Amsterdam Internet Exchange. Draft title: “Peering and the role of IXs in the interconnection landscape”.

The lecture will be open for everyone (ANET students, other students, and university staff).

Enrollment

You can only sign up for ANET through OSIRIS, we do not accept registrations via email or other channels.

We urge you to scan ANET’s list of papers before you sign up, so you know what to expect!

If you decide not to follow ANET after all, then please unregister through OSIRIS. In this case, we appreciate it if you share your feedback as to why you unregistered with the ANET coordinator so we can use it to further improve ANET.

Online tools

We’ll use Canvas conferences for ANET’s general introduction, the guest lectures, the introduction of the lab assignment, and for the “P4 sign-off sessions”.

You can join the online ANET sessions by going to the ANET course page on Canvas, browse to Conferences, and join the session. We aim to open sessions at least 10 minutes prior to its start. Please join with your microphone muted. Do not join in listen-only mode.

Course updates

Please check the ANET homepage at https://courses.sidnlabs.nl/anet for the latest schedule and other information, which is particularly important in times of (local) Corona outbreaks.

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 universities and students so they can potentially learn from our work. The second reason is that at SIDN Labs we’re proud of our contribution to courses like ANET, plus we’d like to underscore the importance of companies helping to educate the next generation of engineers and researchers, for instance in the area of IoT security. Finally, the UT is a public institution, which we believe means it should share its output with the Dutch society and beyond as much as possible.

Submission of deliverables

Please submit your P4 code through Canvas (unzipped) so we can confirm that you yourself carried out the work (SimCheck).

You do not need to submit the multiple-choice tests through Canvas because we’ll get them from you in class.

ANET papers and RFCs

C2: Programmable Networks

[SDN] B. Nunes Astuto, M. Mendonca, X. Nam Nguyen, K. Obraczka, T. Turletti, “A Survey of Software-Defined Networking: Past, Present, and Future of Programmable Networks”, IEEE Communications Surveys & Tutorials, Vol. 16, Issue 3, Third Quarter 2014, https://www.comp.nus.edu.sg/~chanmc/cs6204/week1-survey.pdf

[P4] P. Bossharty, D. Daly, G. Gibby, M. Izzardy, N. McKeownz, J. Rexford, C. Schlesinger, D. Talaycoy, A. Vahdat, G. Varghesex, and D. Walker, “P4: Programming Protocol-Independent Packet Processors”, ACM SIGCOMM Computer Communication Review, Volume 44, Issue 3, July 2014, pp. 87-95, https://www.sigcomm.org/sites/default/files/ccr/papers/2014/July/0000000-0000004.pdf

O3: Interactive guest Lecture #1

[RINA1] J. Day, F. Goldstein, and J. Nolan, “The Last Walz and Moving Beyond TCP/IP”, the Journal of the Institute of Telecommunications Professionals, Volume 5, Part 3, 2011, http://rina.tssg.org/docs/ITP_vol5_p3_42-50.pdf

[RINA2] E. Grasa, “Next Generation Protocols (NGP); An example of a non-IP network protocol architecture based on RINA design principles”, ETSI GR NGP 009 V1.1.1, Feb 2019, https://www.etsi.org/deliver/etsi_gr/NGP/001_099/009/01.01.01_60/gr_NGP009v010101p.pdf

C3: BGP Security

[BGP] K. Butler, T. R. Farley, P. McDaniel, J. Rexford, “A Survey of BGP Security Issues and Solutions”, Proceedings of the IEEE, Vol. 98, No. 1, Jan. 2010, https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.157.7974&rep=rep1&type=pdf

C4: Data Center Networking

[DCN] T. Wang, Z. Su, Y. Xia and M. Hamdi, “Rethinking the Data Center Networking: Architecture, Network Protocols, and Resource Sharing”, IEEE Access, vol. 2, pp. 1481-1496, 2014, https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6990724

[JUPITER] A. Singh, J. Ong, A. Agarwal, G. Anderson, A. Armistead, R. Bannon, S. Boving, G. Desai, B. Felderman, P. Germano, A. Kanagala, J. Provost, J. Simmons, E. Tanda, J. Wanderer, U. Hölzle, S. Stuart, A. Vahdat, “Jupiter Rising: A Decade of Clos Topologies and Centralized Control in Google’s Datacenter Network”, SIGCOMM ’15 Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication, London, United Kingdom, August, 2015, https://dlnext.acm.org/doi/10.1145/2785956.2787508

C5: Multi-path communication

[MTCP1] C. Paasch, O. Bonaventure, “Multipath TCP”, Communications of the ACM, Vol. 57, No. 4, April 2014, https://cacm.acm.org/magazines/2014/4/173230-multipath-tcp/fulltext

[MTCP2] D. Wischik, C. Raiciu, A. Greenhalgh, M. Handley, “Design, implementation and evaluation of congestion control for multipath TCP”, Proceedings of the 8th USENIX conference on Networked systems design and implementation, 2011, https://www.usenix.org/legacy/event/nsdi11/tech/full_papers/Wischik.pdf

C6: Emerging inter-networks part I

[CYCLE] M. Ammar, “Ex uno pluria: The Service-Infrastructure Cycle, Ossification, and the Fragmentation of the Internet”, ACM SIGCOMM Computer Communication Review, Vol. 48, Issue 1, January 2018, https://ccronline.sigcomm.org/wp-content/uploads/2018/05/sigcomm-ccr-final155.pdf

[TROTS] McCauley, J., Harchol, Y., Panda, A., Raghavan, B., & Shenker, S. (2019). Enabling a permanent revolution in internet architecture. In Proceedings of the ACM Special Interest Group on Data Communication ( pp. 1-14), https://dl.acm.org/doi/pdf/10.1145/3341302.3342075

C7: QUIC

[QUIC1] A. Langley, A. Riddoch, A. Wilk, A. Vicente, C. Krasic, D. Zhang, F. Yang, F. Kouranov, I. Swett, J. Iyengar, J. Bailey, J. Dorfman, J. Roskind, J. Kulik, P. Westin, R. Tenneti, R. Shade, R. Hamilton, V. Vasiliev, W.-T. Chang, Z. Shi, “The QUIC Transport Protocol: Design and Internet-Scale Deployment”, SIGCOMM 2017, https://dl.acm.org/doi/pdf/10.1145/3098822.3098842

[QUIC2] Arash Molavi Kakhki, Samuel Jero, David Choffnes, Cristina Nita-Rotaru, Alan Mislove, “Taking a Long Look at QUIC - An Approach for Rigorous Evaluation of Rapidly Evolving Transport Protocols”, IMC 2017, https://dl.acm.org/doi/pdf/10.1145/3131365.3131368

C8: DNS security and privacy

[P-DNS] J.M. Spring, C.L. Huth, “The Impact of Passive DNS Collection on End-user Privacy”, Proceedings of the SATIN 2012 Workshop, 2012, https://resources.sei.cmu.edu/asset_files/WhitePaper/2012_019_001_57023.pdf

[DoH] P. Hoffman and P. McManus, “DNS Queries over HTTPS (DoH)”, RFC 8484, October 2018, https://tools.ietf.org/html/rfc8484

C9: Emerging inter-networks part II

[SCION] D. Barrera, L. Chuat, A. Perrig, R. M. Reischuk, and P. Szalachowski, “The SCION Internet Architecture”, Communications of the ACM, Vol. 60, No. 6, June 2017, https://dl.acm.org/doi/pdf/10.1145/3085591

[NDN] Lixia Zhang, Alexander Afanasyev, Jeffrey Burke, Van Jacobson, kc claffy, Patrick Crowley, Christos Papadopoulos, Lan Wang, and Beichuan Zhang, “Named Data Networking”, ACM SIGCOMM Computer Communication Review (CCR), July 2014, https://www.caida.org/publications/papers/2014/named_data_networking/named_data_networking.pdf

Further reading

[HIST1] B.M. Leiner, V.G. Cerf, D.D. Clark, R.E. Kahn, L. Kleinrock, D.C. Lynch, J. Postel, L.G. Roberts, S. Wolff, “A brief history of the Internet”, ACM SIGCOMM Computer Communication Review, vol. 39, no. 5, October 2009, pp. 22-31, https://sites.cs.ucsb.edu/~almeroth/classes/F10.176A/papers/internet-history-09.pdf

[HIST2] A. McKenzie, “INWG and the conception of the Internet: An eyewitness account,” Annals of the History of Computing, IEEE, vol. 33, no. 1, pp. 66–71, 2011, https://ieeexplore.ieee.org/document/5723076

[REFL] K. Neggers, “Reflections on the History and Future of the Internet (from a technical perspective)”, Advanced Networking Guest Lecture, University of Twente, Sep 2019, https://courses.sidnlabs.nl/anet-2019/slides/lecture1b.pdf

[RESINT] C. Hesselman, P. Grosso, R. Holz, F. Kuipers, J. H. Xue, M. Jonker, J. de Ruiter, A. Sperotto, R. van Rijswijk-Deij, G. C. M. Moura, A. Pras, and C. de Laat, “A Responsible Internet to Increase Trust in the Digital World”, invited paper, Journal of Network and Systems Management (JNSM), special issue on “Future of Network and Service Operations and Management: Trends, Developments, and Directions”, October 2020, https://www.sidnlabs.nl/downloads/26iGTYDA3na391nHt5S0Xt/02bb4802fc837856f237ac8abf5f4902/Hesselman_et_al-2020-Journal_of_Network_and_Systems_Management.pdf

Background

Learning Outcomes

After successful completion of the course Advanced Networking (ANET) you will be able to:

ANET also enhances your research skills, because you will need to independently review and analyze research papers.

Contents

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 [CYCLE]. 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 introduces new problems, because it doesn’t always meet modern requirements such as society’s need for increased trustworthiness and sovereignty [RESINT] and applications needing new network functions, such as control over and verification of network paths [SCION] and low-latency data transfer [CYCLE] (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 architecture, such as a network inspection plane [RESINT], routing security [BGP] and multi-path communications [MTCP1] [MTCP2]. Others are proposing and experimenting with completely new types of internets, for instance to support programmable and reusable protocol functions [TROTS] [RINA1] [RINA2] or different communications paradigms (e.g., content-centric instead of host-centric communications [NDN]).

We offer ANET because we expect that some of these Internet extensions and new types of internet infrastructures will have an impact on deployed network infrastructure in the next few years. An example is the BGP security extensions [BGP], 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.

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 wider understanding of internetworking 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.

Interaction

ANET is a highly interactive course in which you study 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.

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.

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).

Prerequisites

You need to have passed an introductory course in computer networks, such as the bachelor module Network Systems at the University of Twente.

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.