Computer Networks (ELEC 3120) / Fall 2026


Course Description

Foggy University is the pronunciation of HKUST in Cantonese. Walking in the fog was also my feeling when I was learning computer networks.

ELEC 3120 is an introductory course in computer networks. The emphasis will be on the basic performance and engineering tradeoffs in the design and implementation of computer networks. To make the issues more concrete, the class includes one project requiring significant design and implementation and spanning the whole semester.

The goal is for students to learn not only what computer networks are and how they work today, but also why they are designed the way they are and how they are likely to evolve in the future. We will draw examples primarily from the Internet. Topics to be covered include: congestion/flow/error control, routing, addressing, naming, multi-casting, switching, internetworking, and network security. Evaluation is based on homework assignments, the project, one midterm exam, and one final exam.

For potential students, please read the announcement below before you decide to add this course.

Am I suitable for this course?

We welcome all ELEC, CPEG, and COMP students, as well as students from other places!

ELEC 3120 is full of fun – you will learn how the Internet works, how to build a network, and how to secure it. Now when I look back, I can see that the computer network is full of clever yet simple ideas, and I want to convey these ideas to you. We also have a series of project checkpoints to help you to get your hands dirty by building a simple file transfer application. This is also one of the few courses offered by ELEC that helps you to improve your coding skills – you will learn to use Git, Copilot, and other tools that are widely used when you’re going to find a job in software-related fields.

Here is a way to see if you are suitable for the coding skills in ELEC 3120. Forget about the exams in COMP 2011 – ELEC 3120 is not going to test your coding skills on papers. Just think about the programming assignments: do you like it? do you enjoy writing code? If you quite enjoy it (and probably are even taking COMP 2012), then ELEC 3120 will be easy for you. If you (at least) do not suffer from it, ELEC 3120 is still a good choice. However, if you feel that writing and debugging code is a nightmare, then you may want to reconsider your choice.

What project am I going to do?

You will implement a TCP socket yourself in C++. Don’t be scared. You will only required to implement the core part of TCP with the minimum engineering efforts. This is a semester-long project with four checkpoints, and we will guide you through the whole process.

Why so? Because we want you to understand how the most important protocol on the Internet, TCP, works, and the best way to understand it is to implement it yourself. And also, for many ELEC students, this will be the only programming project in your undergraduate study. For future engineers, it is important to know how to make plans for a project.

What’s the policy of using AI tools?

This course strongly encourages the use of generative artificial intelligence tools to complete assessment tasks. You will have the opportunity to learn to use a series of tools, such as GitHub Copilot and Cursor, in your project. We also encourage you to use GPT to better understand how network works. But be careful! We have a strict policy on plagiarism. If your assignments are detected to be copied or AI-generated, this will be a serious issue.

Schedule

Class Time Location
Lecture L1 Mo 1:30PM - 2:50PM LTL, CYT Bldg
Lecture L1 Fr 9:00AM - 10:20AM LTL, CYT Bldg
Tutorial T1 Mo 3:00PM - 3:50PM Rm 5583, Lift 29-30
Tutorial T2 Fr 3:00PM - 3:50PM Rm 2504, Lift 25-26

All times are Hong Kong time. Classes run from September 1 to November 30, 2026. The first lecture is Friday, September 4. There is no tutorial on September 4; tutorials start with T1 on Monday, September 7, and T2 on Friday, September 11, and are grouped by teaching week.

There are no classes on Monday, October 19 (the day following Chung Yeung Festival). Study break is December 1-5, and the Fall examination period is December 7-19. The final exam date, time, and venue will be announced when available.

See the course schedule for the tentative syllabus. Lecture topics, tutorials, the midterm, and assessment dates are tentative and will be updated during the semester.

Calendar reference: HKUST Academic Calendar 2026-27, confirmed July 2026.

Prerequisites

If you believe you are capable of the knowledge of C++ programming but do not satisfy the prerequisites, send me an email and I will waive your prerequisites.

Resources

Course service links and teaching materials will be added gradually throughout the semester.

Previous Offerings


Instructors

Zili Meng

zilim@ust.hk

Teaching Assistants

Wei Li (Lead TA)

wlidq@connect.ust.hk