CS594: Network Design Spring 2017

Syllabus

Basics

Instructor: Balajee Vamanan
Lecture hours: TR 12:30–1:45 PM at Taft Hall 207
Office hours: WF 2–3 PM at SEO 1310
Textbook: Lecture notes and papers

Course Content

Networks are critical for diverse computing environments, from power-constrained IoT devices to compute-intensive datacenters. Various aspects of networking (e.g., topology, routing, congestion control) are carefully designed to match computational needs of the underlying applications to the platforms’ constraints (e.g., energy, cost). While battery-operated bluetooth devices employ simpler protocols in ad-hoc mesh networks to enable monitoring and sensing, datacenters require sophisticated transport protocols in bandwidth-intensive clos networks that provide near-optimal bisection bandwidth to process vast amounts of data (e.g., Web Search). Therefore, it is fascinating to compare and contrast design choices across the spectrum from minimal ad-hoc networks and Internet to more powerful datacenters and Interconnection networks.

The course builds on top of our existing networking course, “CS450: Introduction to Networking“ and focuses on the finer aspects of network design. While CS450 introduces the design of Internet, this course would enable students to question Internet’s design by understanding the design choices of other networks’ (e.g., datacenters, Interconnection networks, IoT networks). It is intended for students who wish to pursue research in systems (networking, distributed systems, or architecture).

This is a tentative list of sub-topics that I plan to cover:

  • End-to-end design principle
  • Internet
  • Interconnection networks
  • Datacenter networks
  • Ad-hoc Mesh networks
  • Flow control
  • Congestion control
  • Router design
  • Software-defined Networking (SDN)
  • Network virtualization

Course Structure

The class would involve around three things:

  1. Lectures: Lectures will provide context for each topic and set the tone for paper discussions.

  2. Paper presentations: Paper discussions will follow lectures on every topic. We will discuss a handful of influential papers per topic. Every student will present one or more papers, depending on the class size. I will provide a list of papers and allow students to pick papers of their interest across topics on a first-come-first-serve basis.

  3. Project: Project would allow students to collaborate and explore a research problem. I will schedule meetings with each project group to help them choose a problem of appropriate scope. There will be a mid-term status review (for any necessary course correction), a final presentation, and a project report.

Prerequisites

CS450 or equivalent is required. If you have not done CS450 or equivalent, instructor consent is required.

Grading

  • Grading is relative.

These are the weights of the individual components.

Component Weightage
Class participation 5%
Paper Critiques 30%
Paper presentation 30%
Project 35%

Class Participation

Participation is incredibly important!

Expectional participation includes but not limited to

  • asking good questions and answering questions in class (during lecture and paper presentations)
  • asking good questions and answering questions in Piazza
  • suggesting interesting papers for paper discussion
  • suggesting improvements to peer students’ projects

Bonus 5% for exceptional participation at the dicretion of instructor. This extra credit will be highly selective (i.e., one or two exceptional students get it).

Paper Presentations

Each student is expected to present one or more papers in class. Here are the guidelines to be followed:

  1. Please contact me two days before your presentation date (check schedule) to fix a one-on-one meeting to go over the slides.
  2. Please spend at least eight rigorous hours to prepare for it before you meet me. If you are not a natural at presenting/speaking before the class, you might need more time.
  3. The goal of your presentation is to educate the class and stir interesting discussions around the paper. Therefore, your presentation should provide a good background so that the entire class can follow your talk.
  4. Each paper presentation lasts for about 45 mins. There will an additional 15 mins for Q & A. You can use slides from the Internet. However, conference presentations are only 20-25 mins. So, you are expected to add new slides.
  5. Your slides must address the what-why-how in order.
    • What is the problem?
    • Why is the problem important?
    • What has been proposed before and what is the shortcomings of previous work?
    • How does this paper solve the problem?
      • New definitions introduced by this paper, design details, etc.
    • Important results
      • do the results back paper’s claims from introduction?
      • Ideally, there must be a one-to-one match between claims and results i.e.,
      • the results must validate all claims and should not show anything that is not claimed.
    • Concluding remarks, scope for future work, and slides to help you with Q&A.

Paper Critiques

  • Write a one-page critique for all the papers that are discussed in class.
  • In the report, you should summarize the paper in your own words and write about its strenghts and weaknesses.
  • Paper critiques are due before the class. Please send them by a private messsage on Piazza.
  • You do NOT have to send critques for the papers that you are presenting.

Project

I will provide a tentative list and direction but you can pick your own problem as well. You will have to submit a one page proposal before starting the project. The project is expected to go for two months. In the end, you will present your findings as well as submit a six page report (two column – paper style).

Academic Integrity

Discussion with your peers is encouraged. However, copying their arguments, criticisms, and code is plagiarism. If you don’t understand the arguments or don’t know how the code that you implemented for an assignment works, then it’s a problem. To be safe, please cite your your sources in all your turn-ins. When in doubt, please ask the instructor.