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 |
|
| 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 |
|
| 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 |
|
| Oct 30 | Mid-way Project Presentation | ||
| 11 | Nov 4 | Live Migration of VMs I | |
| Nov 6 | Live Migration of VMs II |
|
|
| 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 |
|
|
| 15 | Dec 2 | Failure Resiliency | |
| Dec 4 | Final Presentations I | ||
| 16 | Dec 9 | Final Presentations II |
|