Data Networks Lecture Summer Semester 2023
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, Oliver Gasser, Jialong Li|
|Lectures:||2 x per week (hybrid)|
|Course Credits:||9 LP (ECTS)|
|Tutorials:||3 x per week in person + 1 online|
|Duration:||April 14 - July 21|
|Examination:||written exam (Midterm exam mandatory for exam registration (around mid-June) and final exam (end of July).|
The course 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.
- James F. Kurose and Keith W. Ross. Computer Networking: A Top-Down Approach. Addison-Wesley, fourth edition, 2007. (englisch), online version
- James F. Kurose und Keith W. Ross. Computernetze: Ein Top-Down-Ansatz mit Schwerpunkt Internet. Pearson Studium (Prentice Hall), München, Deutschland, 2002. (deutsch)
- Larry L. Peterson and Bruce S. Davie. Computer Networks: A Systems Approach. Morgan Kaufmann, fourth edition, 2007. (english)
- Andrew S. Tanenbaum. Computer Networks. Prentice Hall Professional Technical Reference, Upper Saddle River, NJ, USA, fourth edition, 2003. (english)
- Andrew S. Tanenbaum. Computernetzwerke. Pearson Studium (Prentice Hall), München, Deutschland, dritte revidierte Auflage, 2000. (deutsch)
- W. Richard Stevens. TCP/IP Illustrated, Volume 1: The Protocols, Addison-Wesley, 1994. (english)
- W. Richard Stevens. TCP/IP Illustrated, Volume 2: The Implementation, Addison-Wesley, 1995. (english)
- W. Richard Stevens. TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and the UNIX Domain Protocols, Addison-Wesley, 1996. (english)