Skip to main content
  1. Education/


Large-scale networks as the Internet are crucial for day-to-day communication and nowadays affect all areas of life. In parallel, near-field communication and personal area networks are becoming increasingly important for connecting the digital with the physical world and in particular an individual’s health. Building and harnessing these communication systems requires in-depth understanding and practical experience on the concepts of networking as well as network programming and troubleshooting methods. Starting from the application layer, all important parts and components of networks are explained, down to some of the physical aspects of wired and wireless technology. Most importantly, these considerations are not only done in theory but are accompanied with hands-on labs, to apply the learned concepts in practical scenarios.

The Telecommunications Lab at Saarland University is offering this course to teach networking fundamentals to undergraduates, as these topics are not part of the mandatory curriculum in Computer Science Bachelor program.

Slides to last year’s course

The course covers four major areas, giving you practical and theoretical knowledge to create, maintain and advance network environments, which are essential for today’s fully-connected world. The following questions (among others) will be answered in this course:

  • Foundations of Communication and Networking.
    • What are buffers and queues for, why do you need sequence numbers and what is the advantage of push over pull?
    • Why are forwarding and routing not the same and what makes a hub different from a switch?
  • Top-down Tour through the ISO/OSI Model.
    • How do applications, such as HTTP and Email, use the Internet as a communication infrastructure, e.g. using TCP or UDP connections?
    • How are packets forwarded across a cable, a sub-network and even across the Internet itself?
  • Designing and Troubleshooting Small Networks.
    • How to use WireShark for network analysis and GNS3 for network simulation?
    • How can I write my own firewall rules and fix misconfigurations in a network?
  • Development of Network Applications.
    • How to write server and client applications for the next exciting Internet application?
    • How to modify data streams to ensure reliable transmission over unreliable networks?