Computer Networks

2026-2027

General Information

Course Code X_400487
Credits 6 EC
Period P5
Course Level 100
Language of Tuition English
Faculty Faculty of Science
Course Coordinator B. Chandrasekaran
Examiner B. Chandrasekaran
Teaching Staff B. Chandrasekaran
Part of programme(s)

Practical Information

You need to register for this course yourself. The (de)registration deadlines can be found on VU.nl

Teaching Methods Seminar, Study Group, Written partial exam, Lecture

Target audiences

This course is also available as:

Course Objective

After successfully completing the Computer Networks course, you are able to:

  1. Explain the basic principles and modern functions of computer networks and data communication. (Knowledge and understanding)
  2. Describe the layered network architecture and explain the essential function(s) in these layers. (Knowledge and understanding)
  3. Apply basic physics, theorems from information theory, and network protocol properties to calculate network properties such as maximum bit rate, minimum round-trip latency, window size, etc. (Applying knowledge and understanding)
  4. Apply networking mechanisms and algorithms to detect and correct transmission errors, compute routing tables, set window sizes, etc. (Applying knowledge and understanding)
  5. Explain the concept of Quality of Service, why different applications have different networking requirements, and how these requirements translate to network and protocol properties. (Knowledge and understanding) (Making Judgements)
  6. Explain issues related to performance and scalability in today's popular networking protocols. (Knowledge and understanding) (Making Judgements)
  7. Demonstrate proficiency in socket programming by implementing basic networked applications. (Knowledge and understanding) (Applying knowledge and understanding)

Course Content

The emphasis in this course is on fundamental concepts in digital communication. In modern computer networks, data communication takes place by sending data from A to B via a layered architecture where each layer implements a different abstraction. The higher layers are responsible for handling web pages, emails, and similar things, that are translated into packets, bits, and eventually digital signals on physical links (e.g., light pulses, electrical signals in copper wires, radio waves).

This layered architecture with increasing levels of abstraction and separation of concerns, is a fundamental approach that you will encounter in all aspects of computer science (and beyond). Within this architecture, we will concern ourselves with questions like: what route should the data follow through the network, what do we do when errors occur, how do we interconnect two networks that have completely different properties, etc.

Following the IEEE/ACM Computer Science curriculum, topics to be discussed include the layered network architecture, different types of networks (e.g., wired and wireless, LAN and WAN), multiplexing, error control, flow control, routing and forwarding, names and addresses, high-level architectures of networked applications (peer-to-peer, client/server, etc), performance issues, and scalability issues. These issues are discussed while exploring the technology behind the Internet and its popular protocols (e.g., TCP, UDP, Ethernet, Wifi, etc.).

Additional Information Teaching Methods

Lectures, labs, and tutorials.
This course is gamified.

Method of Assessment

(Mandatory) Basic lab assignments.
(Mandatory) Final exam
(Optional) Mid-term, multiple choice. The results of the mid-term exam count only if the final exam is also taken by the student, and only if it increases the final grade of the student.
(Optional) Optional lab assignments.
(Optional) Self-study assignment.
(Optional) In-class exercises, oral and written.

All partial results (including the lab, and the mid-term and final exams) are only valid during one academic year.
The end grade is the total number of points accumulated across all assessment possibilities scored divided by 1000.
It is possible to score a perfect 10 as the final grade.

There is only a resit opportunity for the exam.

Literature

Andrew S. Tanenbaum, Nick Feamster, and David Wetherall, Computer Networks, 6th Edition, Global Edition

Additional Information Target Audience

Bachelor Computer Science (year 1)

Additional Information

In this course, the use of generative AI (GenAI), such as ChatGPT or similar tools, is not permitted in assignments or assessments. Any use of GenAI in this course is considered fraud. If established, the submitted work or assessment result will be declared invalid, and the Examination Board may impose further measures.

Recommended background knowledge

  • University-level programming course.