Lecture (Section 004): Tue, Thu, 1:30–2:45pm in BHEE 224
Lecture (Section EPE): Asynchronous Online

Instructor

Vishal Shrivastav
Assistant Professor

Office: BHEE 334B
vshriva@purdue.edu

Office Hours
By Appointment

The modern datacenter and the cloud has emerged as the dominant computing platform that powers most of world's consumer online services, financial, military, and scientific application domains. The goal of this course is to introduce students to the design, implementation, and management of modern datacenter and cloud networks. Lectures will cover a wide-range of topics, including datacenter architecture and topology, datacenter routing and load balancing, datacenter transport, software-defined networking, programmable data plane, in-network computing, multi-tenancy in the cloud, datacenter network for ML training and RDMA, resource disaggregation, and optical switching inside datacenters.

All course materials and grades will be posted on Brightspace. We will use Piazza as the discussion forum to post and discuss questions regarding the course.

This course has two sections — 004 (in-person lecture) and EPE (asynchronous online). All in-person lectures will be live-recorded in class and the videos will be made available on Brightspace to the online sections. All sections will be managed similarly in terms of assessments and grading.

1. Datacenter Architecture and Topology
2. Datacenter Routing and Load Balancing
3. Datacenter Transport
4. Software-defined Networking
5. Programmable Data Plane
6. In-Network Computing
7. Multi-tenancy in the Cloud
8. Datacenter Network for RDMA
9. Resource Disaggregation inside Datacenter
10. Optics inside Datacenter
11. Datacenter Network for ML Training

Proficiency in Python programming language. A prior undergraduate course in computer networking will be useful but not essential. The first few weeks of the course will cover all the necessary background needed for this class.

50% grade — Project
For the project, students will implement a full datacenter network stack on top of a bare-bones network simulator (in Python) provided to them. The project must be completed individually with no collaboration and no use of AI tools allowed. The overall grading will be broken into four milestones:

  • 15% – Milestone 1: Datacenter Topology and Routing
  • 15% – Milestone 2: Datacenter Transport
  • 10% – Milestone 3: Load Balancing in Datacenters
  • 10% – Milestone 4: Priority Scheduling in Datacenters

10% grade — Preliminary Exam
Preliminary exam will be closed-book with no collaboration and no use of AI tools allowed. The syllabus will only include topics from the course background.

20% grade — Midterm Exam
Midterm exam will be closed-book with no collaboration and no use of AI tools allowed. The syllabus will include the first five course topics.

20% grade — Final Exam
Final exam will be closed-book with no collaboration and no use of AI tools allowed. The syllabus will include the last six course topics.

Policy for Late Submissions

Each student will get a total of 5 slip days for the entire semester to use towards no-penalty late submissions for project milestones. Students may divide the 5 slip days across the four project milestones whichever way they want, subject to following three constraints:

Each 24-hour window (12am–11:59pm) following a project milestone deadline counts as a separate slip day. A submission made anytime during a 24-hour slip day window will increment the used slip day count by 1.
A student may use at most 2 slip days towards a single project milestone.
A student who has used all the five slip days (or has hit the slip day limit for a single project milestone) and fails to make the submission on time will receive 0 credit for that milestone.

Unless expressly allowed, students are expected to complete the project and exams by themselves, without use of any AI tools. A student is considered in violation of the academic honesty policy regardless of whether they are the one "copying" or the one "being copied from".

Academic integrity is one of the highest values that Purdue University holds. Individuals are encouraged to alert university officials to potential breaches of this value by either emailing integrity@purdue.edu or by calling 765-494-8778. While information may be submitted anonymously, the more information is submitted the greater the opportunity for the university to investigate the concern.

Punishments for academic dishonesty are severe, including receiving a failing grade in the course or being expelled from the university. By departmental rules, all instances of cheating will be reported to the Dean of Students. On the first instance of cheating, students involved will receive a 0 on the assignment; the second instance of cheating will result in a failing grade in the course.

Use of Copyrighted Materials. All course materials, including lecture slides, project, exams, and solutions are subject to Purdue's copyright policies. Students must not share, distribute, or post any material on an online web site without checking with the instructor.