Advanced Topics in Communication Networks

Lecture Transcript

Prof. Laurent Vanbever

The picture depicts 1 year of BGP announcements observed by 256 BGP routers. (>97 billion of them.) Each line tracks the number of hourly BGP advertisements observed by a router.

The picture was drawn using an AxiDraw V3/A3 plotter. It takes about 40 minutes to draw using a Staedler 0.5 pen on Bristol paper.

Watch the pen plotter in action

CONTENTS
1 Introduction
2 Building Scalable Networks
We explore how we can build networks that can handle a large (and growing) numbers of routers, routes, and destinations. We do that considering both the control plane (routing) and the data plane (forwarding) viewpoints.
3 Fast Convergence
We explore how we can make large-scale networks converge quickly (within 1 second) upon sudden, unplanned failures.
4 Multiprotocol Label Switching
We explore how label switching (virtual circuits) enables networks to combine the advantages of circuit switching and packet switching.
5 Data-plane Programmability
We explore how to programmatically define the forwarding behavior of network devices by deep-diving into the P4 programming language.
6 Network Tomography
We explore how to infer link-based performance from end-to-end measurements by capturing network-wide behavior through a system of equations.
7 AS-level Topology Inference
We explore how to infer AS-level Internet topologies from a small subset of BGP routes observed at various vantages points.
8 Network Verification
We explore how we can formally prove the correctness of a network-wide configuration alongside with how to generate provably-correct configurations.
9 Routing Algebras
We explore an abstract formalism which captures the policy component of routing protocols and allow to reason about their fundamental properties.
Exercises and Further Readings
We provide sets of exercises (and their solutions) alongside extra readings for all the topics covered in the lecture.

Contact

I welcome your feedback, questions, and suggestions. You can reach me at lvanbever@ethz.ch. If you use our resources, I’d love to hear about it!

Acknowledgments

These transcripts were put together with the help of several students who followed the lecture during Spring 2024 alongside with PhDs students and post-docs from the Networked Systems Group at ETH Zürich.

Thanks in particular to:

Last updated: Wed Nov 20 2024