CSE 534: Fundamentals of Computer Networks

Semester

Fall 2022

Instructor

Aruna Balasubramanan

Course Time

TTh 11.30 - 12.50

Location

Engineering 145

Contact Info

Aruna Balasubramanian (arunab@cs.stonybrook.edu)

Office hours: In-person office hours: Tuesday 10.00am to 11.00am, Zoom office hours: Friday 10.00am to 11.00am (Zoom link on Piazza)

TA Office hours (on Zoom, Zoom link on Piazza)

Zhengyu Wu Monday 11.00am to noon

Zainab Aamir Wednesday 2.00pm to 3.00pm 

Announcement

Schedule and other information will be discussed on day of the first class. 

Description

The goal of this course is to cover the introductory topics in networking. We will go through the standard protocols in each layer of the OSI stack and discuss design patterns commonly used in networking protocols. While part of the discussions will be on traditional protocols, one part of the course will focus on newer developments in the networking world. Specifically, we will discuss HTTP/2, Quic, MPTCP, data centers, and SDNs all in the context of the OSI stack.

Textbooks

I will teach the course top-down. There is no required textbook, but the recommended book is Computer Networks, A Top Down Approach by Kurose and Ross [KR]

Prerequisites

An introductory networking course is recommended but is not a pre-requisite. However, if you do not have a computer science background or if you are accepted with academic proficiency requirement, talk to me before registering.

Grading

There are several components in this class: Assignments, Projects, Exams, and Summaries.  The grading criteria will be filled out on the day of the class. 

(Tentative) There are several components in this class: Assignments, Projects, Exams, and Summaries.  The grading criteria are as follows:

Midterm and Final exam: 40%
Paper summaries: 10%
Assignments: 30% (15% each)
Project (choose your own or get assigned a project): 20%

Midterm and final exam: Midterm and final exam carry 20% each of your final grade. The final exam is not comprehensive. Both midterm and final exams are in-person and closed book but you can bring a cheat sheet. More details about the cheat sheet will be discussed in class.

Assignments: There will be 2 assignments in all.  Assignments should be submitted before 9.00pm on the day they are due.The assignments will be programming heavy. You can program in C or Python. 

Paper summaries: There are 5 papers assigned for reading. For each paper, you are expected to provide a summary. More details on how to write a paper summary will be up on Piazza. Paper summaries should be submitted at 11.30AM  on the day they are due (that is, just before class starts).  No extensions are allowed. If you don't submit by the deadline, you forfeit the points.

Project (New): This year, I am doing something new. Instead of asking you all to do a project, I am giving a choice. You can do a research project either individually or in groups.  The project is meant to be open-ended. Around 3 weeks into the semester, we will discuss possible project ideas. You should choose a project and submit a project proposal. At the end, you will present your projects to the instructor and submit a project report. If you are a Ph.D. student, I highly encourage you to do a project. If you are registered for this course under CSE 522, you should choose this project option.

If you dont want to do a project, you can do an assignment (assignment #3). This will be individual not in group. 

Submissions instructions and total attempts: We will use Blackboard for submissions. If you want to resubmit after you already submitted one version of your assignment/project/summaries, you may do so. But you are allowed a maximum of 2 resubmissions (i.e., a maximum of 3 attempts).  Irrespective of anything else, your last attempt will be considered. This means, if you submit one version of your homework before the deadline and submit another version after the deadline, we will grade the later submission and grade you according to the late submission policy.

Grace period: You get a total 24 hours of grace period across your two assignments and project.  So if you submit your first assignment 24 hours late, then you no longer have any grace period, but will not be penalized. If you submit your first assignment 12 hours late, you still have 12 hours of grace period left. Once your grace period is over, each assignment you submit late will be subject to the late penalty below. There is no grace period for summaries and projects.

After the submission deadline: If you submit your homework at hour h after your deadline (after your grace period), here are the grade penalties

  • If 0 < h <= 5, 5% of your grade
  • If 5 < h <=15 hours, 8% of your grade,
  • If 15 < h <= 24, 15% of your grade
  • If 24 < h <= 48, 30% of your grade
  • If 48 < h <= 72, 40% of your grade
  • If 72 < h <= 96, 60% of your grade,
  • h > 96, you cannot submit the homework.

I should note here that I almost never give extensions on any submissions.

Tentative Schedule

DateTopicReadingsNotes
8/23/2022IntroductionNo reading.[introduction.pdf] Overview of the class structure and introduction to the syllabus
Application Layer
8/25/2022DNSKR 2.4 
8/30/2022DNS + WebKR 2.2Summary #1 paper is here, due 9/06 before class
9/01/2022HTTP  
9/06/2022HTTP2 Summary #1 due, Assignment #1 out, due 9/20
9/08/2022CDN  
Transport Layer
9/13/2022Transport layer introduction  
9/15/2022TCP flow control  
 
9/20/2022TCP congestion control +  Wireshark tutorial  Summary #2 out 9/20, due 9/27, Assignment #2 out,  due 10/04 at 9.00pm, 
9/22/2022TCP congestion control + Project discussion  
9/27/2022Other flavors of CC + HTTP 2 revisited  Summary #2 due
Network Layer
9/29/2022Introduction to networking layer  
10/04/2022AddressingKR 4.1.1, 4.3.3, 4.3.4 Assignment #2 due
Midterm
10/06/2022In-class midterm Midterm. 
Fall break
10/11/2022Fall break, no class  
Network layer continued: Routing
10/13/2022Addressing  
10/18/2022IP Zoom class 
10/20/2022Inter-domain routing Summary #3 out, due 10/20, due 11/01
10/25/2022Instructor traveling No class.
10/27/2022Intra-domain routingZoom class 
Special topics: Datacenters
11/01/2022SwitchingZoom classSummary #3 due, Project proposal due 11/01 (if you choose project), Assignment #3 assigned (if you are not doing a project), due in 3 weeks.
11/03/2022 Datacenters + DCTCP Summary #4 assigned, due 11/10
Special Topics: Transport layer and above
11/08/2022PortLand + SDN  
11/10/2022NFV and Middleboxes Summary #4 due
11/15/2022MPTCP and Quic  
Lower layers
11/17/2022Video applications and Link layer Summary #5 assigned 11/17, due 11/29
11/22/2022Link layer Assignment 3 due 11/22
Thanksgiving
11/24/2022Thanksgiving No Class. Turkey Day!!
Physical layer and Wrap up
11/29/2022Physical layer and Centralization Summary #5 due 
Project Presentation
12/01/2022TBD Project report due 12/01 at 9.00pm. Final exam on December 14th.

Others

CSE 522: If you are registered for this class as CSE 522 (basic project), you will do exactly the same as anyone registered for CSE 534. In addition, you will choose the project option and do the project individually.

Deadlines: All deadlines are tentative in the beginning. The firm deadlines will be announced in class and posted on Piazza.

Discussion policy: All discussions will take place on Piazza. Please be respectful of your fellow classmates and your instructor when posting questions. If you post questions or comments on Piazza that I deem derogatory or otherwise not constructive, I will remove them. 

You are expected to read your Piazza posts frequently. I will be posting important announcements on it. 

Questions posted on Piazza can take up to 24 hours for a response from the instructor or the TA. If you ask a question very close to an assignment deadline, they may go unanswered.

Grading policy: I will not be able to give any individual student extra credit for additional work or projects. However, if your research projects that are especially good, I may award additional points. This is at my discretion. 

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 Graduate Program Director and give you an F in the class.

Recordings: The class wil be recorded (but not live streamed). There is no gaurantee that the recording will be good, I will not re-record if the mic gets cut off or if there are other problems.  

Laptop and devices: I have a no-laptop and no-device policy in class. Please put away your laptop and devices. I will accomodate students who have accessibility requirements or other needs, if send me email or come talk to me.

Statement regarding dealing with attendance and class schedule: Students are expected to report for examinations and submit major graded coursework as scheduled. If a student is unable to report for any exams or complete major graded coursework as scheduled due to extenuating circumstances, the student must contact the instructor as soon as possible.  Students will be requested to provide documentation to support their absence and/or may be referred to the Student Support Team for assistance. Students will be provided reasonable accommodations for missed exams, assignments or projects due to significant illness, tragedy or other personal emergencies. In the instance of missed lectures the student is responsible to go over the slides from the previous lecture. The lecture will be recorded and posted but can be of varying quality.