Course syllabus
Course-PM
EDA343 / DIT423 Computer communication lp4 VT25 (7.5 hp)
Course is offered by the department of Computer Science and Engineering.
Contact details
Examiner: Rhouma Rhouma
Lecturer: garby@chalmers.se
Contact the examiner for queries related to the lectures.
Tutors: Contact these people for queries related to the exercises and the labs. To save time, please make sure that you have read carefully the instructions for the assignments, both the technical and the administration part. During the course there will also be undergraduate students supporting the lab work. Use the lab-hours to make your questions and get instant support. Check the Lab-module for more info.
Roman Melnik melnik@chalmers.se (Lab responsible)
Martin Hilgendorf martin.hilgendorf@chalmers.se (Exercise responsible)
Vinh Quang Ngo vinhq@chalmers.se (Lab responsible)
Course purpose
Computer networks are becoming an inherent and increasingly important part of many technical areas today. This course focuses on the parts of data communication that practicing engineers normally will encounter in their daily work. It is a basic course which offers an introductory presentation of data communication and computer networks.
Schedule
Course literature
Text book: Computer Networking: A Top-Down Approach, 8 ed., James F. Kurose and Keith W. Ross
Available through:
- STORE Chalmers' library, also as e-book).
- Pearson: https://eu.pearson.com/computer-networking-a-top-down-approach-global-edition/9781292419978 Links to an external site.
Discount code: CHALMERSDISCOUNT2025
Other resources (Online lectures videos, interactive animations, Interactive exercises, pptx, labs) that the students may find useful can be found in the compagnion website of the textbook made by Pearson: Student Resources | Kurose/Ross, Computer Networking: a Top-Down Approach, 8/e
Course design
Lectures (with elements of interaction) are given, where basic theory and important concepts are presented in order to complement and support the course textbook. As a complement to the lectures, regular exercise sessions are offered, where support in smaller groups is possible. A selection of optional homework problems (several web-supported options, for self-assessment) are given in order to provide additional insight into the course material as well as to exercise the level of understanding required for solving problems. Practical laborations are included to help students understand and show practical skills on protocols, as well as on monitoring of network traffic and configuration of classic and modern networks. The course includes:
- 15 lectures + 01 extra slot reserved for further review for the course if needed.
- 7 exercise sessions using quizzes in Canvas
- 5 labs with hands-on work : 04 compulsory and 01 Optional (Lab5)
The lab module is composed of 4+1 labs and you need to pass (Lab1, Lab2, Lab3, Lab4) to complete the module:
| Lab # | Notes |
|
Can be done from home using your laptop. You can come to your lab session for questions and ask for help. |
|
Can be done from home using your laptop. You can come to your lab session for questions and ask for help. |
|
Your presence is COMPULSORY in the appropriate lab session |
|
Your presence is COMPULSORY in the appropriate lab session |
|
Can be done from home using your laptop. You need to install virtualboxLinks to an external site. and ubuntu virtual machine (do the preparation for lab5 to download the right virtual machine for your computer) You can come to your lab session for questions and ask for help. |
Learning Outcomes
- Describe fundamental concepts and analyse essential performance metrics in computer networks, including bandwidth, capacity, throughput, and processing, queuing, transmission, and propagation delays.
- Explain the structure and role of layered data communication and networks, as well the distribution of functionality across their layers in general and in the TCP/IP model in particular.
- Identify and explain the role of key network devices and components, including hosts, routers, switches, proxies, caches, and firewalls, and their function in packet-switched networks.
- Explain the structure and functionality of the Internet, including core and edge parts, and analyze how data is delivered end-to-end and how congestion can be controlled.
- Explain application-layer communication models (client-server and peer-to-peer) and describe the operation of core Internet protocols such as HTTP, SMTP, and DNS, including the role of caching.
- Explain and analyze the transport-layer services provided by TCP and UDP, including reliable data transfer, flow control, and congestion control.
- Explain the foundational elements, as well as apply and analyse key methods in Internet network layer, including IP addressing, subnetting, packet forwarding in packet-switched networks, routing algorithms (such as Dijkstra and Bellman-Ford) and the operation of routing protocols (such as OSPF and BGP).
- Explain and apply link-layer and wireless networking principles, including framing, error detection, and multiple-access techniques (CSMA/CA, CDMA), as well as Wi-Fi, 4G, and 5G networks.
- Explain the role of Internet standardization, including the IETF and RFCs, and describe modern networking paradigms such as Software-Defined Networking (SDN).
- Apply the acquired skills in the monitoring of network traffic and in the configuration of networks.
- Seek and evaluate deeper knowledge of the individual standards and protocols in the data communication field.
Content
The course studies communication protocols and mechanisms used in the Internet and modern computer networks using a top-down approach. It begins with application-layer protocols and networked applications to introduce familiar communication paradigms, and then progressively moves toward lower layers to uncover the services, algorithms, and mechanisms that enable reliable and efficient data transfer. Topics include Internet applications and content distribution, HTTP, SMTP, and DNS, transport protocols TCP and UDP with performance, reliability, flow control, and congestion control aspects, network-layer addressing, packet forwarding, routing algorithms and protocols, and the structure of the Internet. The course also covers link-layer technologies, error detection and correction multiple access protocols, wireless and mobile networks including Wi-Fi and cellular systems, key network devices, Internet standardization, and selected modern networking concepts. We also discuss and analyze evolving aspects of networking, with new functionality, meeting the evolving needs of applications and uses.
Examination including compulsory elements
The course is examined by an individual written exam for 5,5 ECTS points and laboratory project assignments 2 ECTS points .
The Laboratory work is carried out in groups and graded with pass (P) or fail (F). This concern Lab1, Lab2, Lab3, Lab4.
Lab5 is optional. The students may choose to submit lab5 report and get 01 bonus point if they pass it.
The grading scale (for Chalmers students) of the written exam comprises fail (F), 3, 4, 5.
For Gothenburg University Students (DIT423) the grading scheme is : F, G, VG
A set of bonus points can be earned through small assignments or in-class quizzes conducted during lectures and exercise sessions. These bonus points are added to the exam score and may be used both to pass the exam and to achieve a higher grade.
The grade of the entire course is the same as the grade obtained on the written examination.
The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers about disability study support.
Link to the syllabus on Studieportalen Study plan
Link to the syllabus GU https://www.gu.se/en/study-gothenburg/computer-communication-dit423