Data Networks

Lecture – Summer Semester 2024

In this lecture, we will take a dive into how data networks work, and how they work together to create the network of networks we know as the Internet. After going on this journey from the history of networks and protocols to newest developments, going through every layer of the stack – from the physical wire to the applications – like the Web and Email – everyone knows and uses.

After successful completion of this course, you will be able to:

  • Describe the relevant layers of network communication (Physical, Data, Network, Transport, Application)
  • Analyze the description of a protocol to identify the layer it works on, as well as key-characteristics of the protocol (statefullnes, etc.)
  • Apply protocols of all layers (esp. Network, Transport, and Application) to a given case, e.g., use a routing protocol to determine how packets would traverse a given network.
  • Analyze multiple protocols for a given use-case and evaluate which one is more suited given features of the individual protocols.
  • Explain the structures of protocol development/standardization bodes and the Internet governance structure in place for the Internet as a whole.
  • Design simple network protocols for small example cases, e.g., a simple application layer text   chat protocol, weighting choices for, e.g., the best transport protocol to use with it.

In summary, the course enables you to navigate the protocol landscape of the modern Internet, familiarizing you with services like web (HTTP), mail (SMTP, POP, IMAP), the domain name systems (DNS), but also the lower layers, from IP through routing (BGP), to the transport layer (TCP, UDP). By taking a comprehensive look at the interactions between these protocols, you attain the ability to reason on the principles of computer networks, and apply the fundamentals of the area – including network protocol mechanisms, implementation considerations, network algorithms, advanced network architectures, network simulations, measurements, protocol specifications, and verification techniques – in the context of other specializations in computer science, from databases, to distributed systems, and computer security.


Lecturer Anja Feldmann, Tobias Fiebig
Type Core Lecture
Lectures 2 x per week
Course Credits 9 LP (ECTS)
Tutorials 3 x per week in person + 1 online
Lecture Number 10006
Language English
Duration April 16- July 26
Examination written exam (passing the Midterm exam is mandatory for admission to the final exam).
Registration Data Networks


The course and both exams will be offered in english only!

Details regarding the exam can be found on the lecture's website.
An official announcement will be given during the lecture and repeated in the tutorials.

Literature (non-compulsory)