Class web page: http://www.cs.toronto.edu/~yganjali/teaching/csc458-winter-2025/
This is a tentative schedule of course lectures and might be updated. Please check regularly.
# | Week | Lecture Topic | Reading | Handouts | Assignments |
---|---|---|---|---|---|
1 | Jan 6 | Course logistics and introduction | Chapter 1 | H01 - Info sheet [pdf] H02 - Lecture 1 [pdf][pptx] |
- |
No tutorial | - | - | - | ||
2 | Jan 13 | Link layer, error detection/correction | Chapter 2 | H03 - Lecture 2 [pdf][pptx] | - |
Tutorial: socket programming | - | H04 - Tutorial 1 [pdf][pptx] | - | ||
3 | Jan 20 | Interconnecting LANs; Internet Protocol (IP) | Chapter 3 | H05 - Lecture 3 [pdf][pptx] H06 - PA1 [pdf] |
Prog Assignment 1 out |
Tutorial: Prog Assignment 1 Overview | - | H07 - Tutorial 2 [pdf][pptx] | - | ||
4 | Jan 27 | Routing and Forwarding | Chapter 3 | H09 - Lecture 4 [pdf][pptx] | Problem Set 1 out |
Tutorial: Sample Problems | - | H10 - Tutorial [pdf][pptx] | - | ||
5 | Feb 3 | Internet Topology | Chapter 4 | H11 - Lecture 5 [pdf][pptx] | Problem Set 1 due (Feb. 7) |
Tutorial: Problem Set 1 Q&A | - | - | - | ||
6 | Feb 10 | Transport Protocol | Chapter 5 | H12 - Lecture 6 [pdf][pptx] | Prog assignment 1 due (Feb. 14) |
Tutorial: Programming Assignment 1 Q&A | - | H13 - Sample Midterm [pdf] H14 - Sample Midterm Solutions [pdf] H15 - PS1 Solutions [pdf] |
- | ||
7 | Feb 17 | No classes - Reading Week | - | - | - |
No tutorial | - | - | - | ||
8 | Feb 24 | Midterm exam | - | In class midterm (L0101: Monday; L0201: Tuesday) | - |
No tutorial | - | - | - | ||
9 | Mar 3 | Congestion Control | Chapter 6 | H16 - Lecture 7 [pdf][pptx] H17 - PA2 [pdf] |
Prog Assignment 2 out |
Tutorial: Programming Assignment 2 Overview | - | H18 - Tutorial 4 [pdf] H19 - Midterm Solutions Section 0101 [pdf] Section 0201 [pdf] |
- | ||
10 | Mar 10 | Queueing Mechanisms; Middleboxes | Section 6.4.1 | H20 - Lecture 8 [pdf][pptx] | Problem Set 2 out |
Tutorial: Problem Set 2 Review | - | H22 - Tutorial 5 [pdf] | - | ||
11 | Mar 17 | Software-Defined Networking | Chapter 8 | H23 - Lecture 9 [pdf][pptx] | Problem Set 2 due (Mar. 21) |
Tutorial: Problem Set 2 Q&A | - | - | - | ||
12 | Mar 24 | Data Center Networking & Networks for ML | - | H24 - Lecture 10 [pdf][pptx] H25 - Sample Final [pdf] H26 - Sample Final Solutions [pdf] |
Prog assignment 2 due (Mar. 28) |
Tutiorial: Prog Assignment 2 Q&A | - | - | - | ||
13 | Mar 31 | Overlay networks and final review | - | H27 - PS2 Solutions [pdf] H28 - Lecture 11 [pdf][pptx] H29 - Final Review [pdf][pptx] |
- |
Tutorial: Sample Final Review | - | H30 - Midterm Section 101 [pdf] | - | ||
Final Exam | - | Please check A&S final exam schedule for time/location. | - |
You need to have a basic understanding of probability theory, a strong background in C programming, and be familiar with the Unix operating system. If you are not sure whether you have the background to take this course, please take a look at the first programming assignment (link available at class web page) to get an idea of the type of work, and time you will need to spend on it. If you still are not sure, send me an email.
You can get a print copy of this book on Amazon. Alternatively, you can find an online version here: https://book.systemsapproach.org/
Please note that we have the same grading for all students (graduate and undergraduate).
You have one free late submission of 24 hours for one of the assignments (problem set, or programming, but not both). You should e-mail the TAs before the deadline to get the free late submission. This 24 hour limit is hard, and cannot be extended. For any late submission other than the free one, 10% of the mark will be deducted for each day late, up to 20%. Assignments will not be accepted after two days.
There will be an in class midterm exam, as well as a final exam. For date, and location of the final exam, please check back the class web page.
Here is the list of course teaching assistants (the list will be updated with information about assignments each TA is responsible for). Please use Piazza for questions regarding each assignment. If there is a specific inquiry that needs to be sent to the TAs directly, please make sure you contact the appropriate TA.
Please use our class bulletin board (on Piazza) to ask questions from TAs. You can sign up to the bulletin board here:
https://piazza.com/utoronto.ca/winter2025/csc458csc2209
By using the bulletin board, everyone in class can read the replies, and the overall number of repeat questions is reduced. Please check the bulletin board before posting any new questions. We guarantee any question posted to the bulletin board will be responded within 48 hours.
If you have any questions that cannot be posted on the bulletin board (e.g. questions about your grades), you can e-mail TAs directly. There is no guarantee on when you will get a reply. We really want you to use the bulletin board. :-)
Please make sure to check the announcements folder regularly for updates regarding lectures, assignments, etc.
In addition to our bulletin board, we have a mailing list that will be used exclusively for sharing important information. We will use the email address you have used on ACORN to create this list (please make sure that is a valid email address). Please do not use this email to ask questions.
There will be two problem sets, and two programming assignments. Assignments will be posted here.
For this assignment, we will implement a simplified portion of network stack: creating Ethernet packets from IP packets and sending them out.
For this assignment, we will implement a router.