CSE 310 (SUNY Korea)
Semester
Instructor
Course Time
Location
Class Discussion Forum
Contact Info
Email: arunab@cs.stonybrook.edu
Office hours: Wednesday 2.15pm to 3.15pm and Thursday 3.00pm to 4.00pm (C 418)
Announcement
Course Web Page is up
All discussions will start on Brightspace
Description
The goal of this course is to cover the introductory topics in networking. We will learn how network applications such as the Internet and Web works. We will learn how to build an "Internet" and how information is transmitted from one part of the world to another. More importantly we will learn the design patterns and general principles in designing Computer Networks. We will learn networking concepts using the OSI layer abstraction going from the application layer all the way down to the physical layer. The class will have a mix of programming assignments, homeworks, exams, and a project.
The learning objectives are (i) understanding the networking principles behind the Internet, (ii) learning foundational principles used to make design decisions in systems, and (iii) building the ability to analyze trade-offs in system design
Textbooks
I will teach the course top-down from the application layer down to the physical layer. I will use the following textbook
Computer Networks, A Top Down Approach by Kurose and Ross 7th edition.
Grading
There are several components in this class: Assignments, Homeworks, and Exams. The grading criteria are as follows:
Final Exam: 20%
Midterm exam: 20%
Programming Assignments (2, 10 points each): 20%
Homeworks (3, 6 points each): 18%
Pop quiz: 5%
Final Project: 17%
Programming Assignments: There will be 2 programming assignments. Assignments should be submitted before 9.00pm on the day they are due. You will get 2 weeks for each assignment. The assignments are programming heavy. You can program in Python or C. Python is by far the easiest for the assignments and I will strongly advice you to use Python.
Homeworks: There will be 3 homeworks. These do not require programming and are written assignment. They are due before 9.00pm on the day they are due. You will typically get 1 week to finish your homework.
Midterm and final exam: The exams are in-person and timed. The exam is closed book but I allow a 1- page cheat sheet.
Project: You will do an open-ended research-based project as part of the class. The project can be individual or group project. The project will consist of a project presentation (mostly like a poster presentation) and a final report. You will also submit a project proposal and a project progress report which will be graded.
Grace period: The students get a 48 hours grace period spanning assignments and a 48 hour grace period spanning all homeworks. Students will not be penalized as long as the total late hours does not exceed 48 hours across assignments and 48 hours across homeworks.
Late submission policy: If a programming assignment/homework is submitted at hour h after the deadline (after the grace period), the penalty is as follows
- If 0 < h <= 5, penalized 5% of your grade
- If 5 < h <=15 hours, penalized 8% of your grade,
- If 15 < h <= 24, penalized 15% of your grade
- If 24 < h <= 48, penalized 30% of your grade
- If 48 < h <= 72, penalized 40% of your grade
- If 72 < h <= 96, penalized 60% of your grade,
- h > 96, you cannot submit the homework.
Tentative Schedule
Date | Topic | Readings | Notes |
02/26/2024 | Introduction | No reading | [introduction.pdf] |
Application Layer |
|||
02/28/2024 | Introduction continued |
1.5, 2.1.1, (2.1.2 covered in Transport), |
|
03/04/2024 | Application and Web | ||
03/06/2024 | HTTP | 2.2 (except cookies) | Homework 1 is out 03/07, due 03/19 |
03/11/2024 | DNS | 2.4 | |
03/13/2024 | DNS | Programming assignment 1 out 03/19, due 04/05 | |
03/18/2024 | CDN | 2.6.3 | |
Transport Layer |
|||
03/20/2024 | Introduction to Transport | 3.1, 3.2, 2.7 | |
03/25/2024 | TCP and Flow control | 3.3.1, 3.5.1, 3.5.2 | |
03/27/2024 | Flow control | 3.5.3, 3.5.4, 3.5.5 | |
04/01/2024 | Congestion control | 3.6.1, 3.7 (excluding 3.7.1 and 3.7.2) | |
Midterm exam |
|||
04/03/2024 | In class exam | Programming assignment 2 out 04/08, due 04/22 | |
Wrapping up Transport layer |
|||
04/08/2024 | UDP + Wireshark. | 3.3 (no checksums) | Project discussions. |
04/10/2024 | No class election | ||
Special topics |
|||
04/15/2024 | BBR, HTTP/2 | ||
Network layer |
|||
04/17/2024 | Introduction to network layer + IP addressing (recorded class, instructor traveling) | 4.3.3 (details of DHCP excluded) | No class, instructor traveling, but class recorded |
04/22/2024 | HTTP 3, IP forwarding | 4.2 | |
04/24/2024 | IP layer | 4.3.1, 4.3.4, 4.3.5 | |
04/29/2024 | No class, instructor traveling | Project proposal due 04/29, Homework 2 is out 04/29, due 05/06 | |
Routing |
|||
05/01/2024 | VAN and NATs | ||
05/06/2024 | Intra domain routing | 5.2 (5.2.1, 5.2.2) No poisoned reverse | |
05/08/2024 | Intra domain routing continued | ||
05/13/2024 | Inter-domain routing | 5.4 | Homework 3 is out 05/13, due 05/20. |
Switching Layer |
|||
05/14/2024 | Switching and ARP | 6.4 and 6.4.1 | Replacement class, Tuesday with Wednesday schedule |
05/20/2024 | Extending the LAN + Link layer | ||
Link layer and Physical layer |
|||
05/22/2024 | Link layer | 6.1, 6.1.1, 6.3, 6.3.1, 6.3.2, 7.3 (Focus only on RTS/CTS) | |
05/27/2024 | Centralization and special topics | Project progress report due 05/29 | |
Wrapping up |
|||
05/29/2024 | Physical layer and wrap up | ||
06/03/2024 | No class instructor traveling | ||
06/05/2024 | Poster presentation | Poster presentation | Final Project Report due 06/07 |
Others
Discussion policy: All discussions will take place on Bright Space. Please be respectful of your fellow classmates and your instructor when posting questions. Please follow the discussions and announcements on Bright Space closely. I will be posting important announcements on it.
Academic Dishonesty: I take academic dishonesty extremely seriously. Your assignments will be tested for plagiarism not only against your classmates but also with all past assignments. If I find evidence of dishonesty, I will immediately notify the Program Director and give you an F in the class.
Deadlines: All deadlines are tentative in the beginning. The firm deadlines will be announced in class and posted on Bright Space.
Laptop and devices: I have a no-laptop and no-device policy in class. I will accommodate students who have accessibility requirements or other needs. In that case, send me email or come talk to me.