CS687 Special Topics in Systems: Fundamentals and Trends

This course will cover foundational Cloud Computing concepts such as the basics of Cloud Computing, service provisioning and deployment models, networking, and security in the cloud as well as virtualization and containerization technologies used in Cloud Computing. Serverless computing, big data analytics, and machine learning on the cloud will also be discussed. We will further survey the advanced aspects of Cloud Computing by examining recent research published at top conferences, executing Cloud Computing tasks on a state of the art cloud computing service (such as Google’s Google Cloud Platform (GCP) and Amazon’s Amazon Web Services (AWS)), and implementing a change or feature in a state of the art Cloud Computing framework.

Instructor: Prof. Shixiong Qi

Term: Fall 2025

Location: W T Young Library Rm.B-35 LEC

Time: T/R, 11:00 AM-12:15 PM U.S. Eastern Time

Course Overview

After completing this course, the student will be able to:

  • Gain a deep understanding of cloud computing, including the history of evolution, deployment models, and popular use cases such as web services and machine learning.
  • Understand the strengths and weaknesses of different virtualization techniques for deploying cloud applications.
  • Understand various design aspects of advanced cloud frameworks, including networking, security, and resource provisioning.
  • Read original scientific publications to understand how they build on previous research in cloud computing.
  • Define and implement their own project that explores a topic in cloud computing.

Prerequisites

This class is appropriate for graduate students with previous background in operating system and networking.

  • Basic programming knowledge (preferably in C, C++, Golang)
  • CS 470G
  • CS 471G
  • Consent of instructor

Textbooks

None

Grading

  • Paper presentations: 20%
  • Programming projects: 30%
  • Final project: 50%

Schedule

Week Date Topic Materials
1 Aug 26 Introduction and Logistics
Aug 28 Introduction to Cloud Computing
2 Sep 2 Virtualization I
Sep 4 Virtualization II
3 Sep 9 Project Ideas Discussion
  • Programming Assignment 1 due Sep 26
Sep 11 Docker
4 Sep 16 Kubernetes I
Sep 18 Kubernetes II
5 Sep 23 Data Center Networking I
Sep 25 Data Center Networking II
6 Sep 30 Project proposal
Oct 2 Data Center Networking III
7 Oct 7 Data Center Networking IIII
  • Programming Assignment 2 due Oct 24
Oct 9 Middleboxes and Network Functions
8 Oct 14 Serverless Computing I
Oct 16 Serverless Computing II
9 Oct 21 Serverless Computing III
Oct 23 Serverless Computing IIII
10 Oct 28 Fall break
  • No class
Oct 30 Mid-way Project Presentation
11 Nov 4 Live Migration of VMs I
Nov 6 Live Migration of VMs II
  • Programming Assignment 3 due Nov 21
12 Nov 11 5G systems in the cloud I
Nov 13 5G systems in the cloud II
13 Nov 18 Federated Learning Systems
Nov 20 Deep Learning in Cloud I
14 Nov 25 Deep Learning in Cloud II
Nov 27 Thanksgiving Break
  • No class
15 Dec 2 Failure Resiliency
Dec 4 Final Presentations I
16 Dec 9 Final Presentations II
  • Final project deliverable due on Canvas at midnight