Skip to main content

Computer Networks

Master’s level
7,5 credits (ECTS)
Study pace
Study form
Application open
Application code
Full education cost: 18 250 SEK
First payment: 18 250 SEK
Application closed, late application opens 16 July 2021.


This course focuses on the algorithmic design of network protocols and covers a range of sub-specialties including: computer communication network concepts, programming using BSD socket API, and distributed fault-tolerance algorithms with a very strong emphasis on self-stabilization.

The aim of this course is to learn to design and analyse algorithms for network protocols and to gain knowledge in existing communication networks, including supporting systems and protocols, fundamental tasks and methods in data communication networks. Mastery of computer networks involves both theory and practice in the design, implementation and use of network protocols and services. This course offers learning experiences that involve hands-on experimentation and analysis as they reinforce student understanding of concepts and their application to real-world problems. Several laboratory experiments are given and involve API programming for fault-tolerance network systems, and Internet interconnections and services from a practical perspective, and design and analysis of protocols with a strong emphasis on self-stabilizing algorithms.

This course provides the students with the analytical background needed for understanding fundamental issues in the design of distributed fault tolerance algorithms for computer network protocols. The course has a very strong emphasis on transient faults and how self-stabilizing algorithms can allow automatic recovery after their occurrence.

Prerequisites and selection


The requirement for the course is to have a Bachelor's degree within the subject Computer Science or equivalent. The student should also have successfully completed the courses listed below, either as part of the Bachelor's degree or as single subject courses. - 7.5 credits in discrete mathematics (DIT980 or equivalent) - 7.5 credits in finite automata theory and formal language (DIT322 or equivalent) - 7.5 credits in imperative or object oriented programming (DIT012, DIT952, or equivalent) - 7.5 credits in data structures (DIT961 or equivalent) - 7.5 credits in algorithms (DIT602 or equivalent) - 7.5 credits in computer communication (DIT423 or equivalent) or operating systems (DIT401 or equivalent). Applicants must prove knowledge of English: English 6/English B or the equivalent level of an internationally recognized test, for example TOEFL, IELTS.


Selection is based upon the number of credits from previous university studies, maximum 225 credits.

For admission to the summer 2021 and onward the following selection applies: selection is based upon the number of credits from previous university studies, maximum 165 credits.