Skip to content

EECS 589: Advanced Computer Networks @ University of Michigan Winter 2019 semester!

Notifications You must be signed in to change notification settings

forkjoseph/EECS589

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EECS 589: Advanced Computer Networks

Administrivia

  • Catalog Number: 33534
  • Lectures/Discussion: 1010 DOW, TuTh 4:00PM - 6:00PM

Team

Member (uniqname) Role Office Hours
Peter Honeyman (honey) Faculty 4777 BBB. By appointment or drop-in
HyunJong (Joseph) Lee (hyunjong) GSI BBB Learning Center. By appointment

Course Description

This is a graduate level course on computer networking focusing on advanced topics and is a must for anyone interested in doing research in computer networks. This class examines current and emerging research topics in computer networking. Topics covered include network protocols, network measurement, Internet routing, peer to peer networks, network security, wireless, and sensor networks.

The course consists of both a reading/lecture/discussion component and a project component. Emphasis of the course is on topics in wide-area networks, wireless networks, and measurement methodologies for Internet and wireless experiments. Significant emphasis will be put on security and network management issues related to computer networks, as these are becoming increasingly important given the growing number attacks and complexity of networks. We focus both on existing technologies and on why some of them are not sufficient because of technology trends or changes in fundamental assumptions. As an example, early designers of Internet assumed cooperative behavior of end nodes. The state of the art of millions of compromised hosts completely changes this assumption and today's landscape on the Internet. We will read about 50 research papers on the most recent topics of computer networking.

Students are expected to carry out a research project including analysis, design, and implementation components when appropriate on a novel subject. The class projects can be any of the following types: algorithm design applied to networked system, implementation of a novel networking system, measurement of existing network protocols, and simulation of a proposed network algorithm. We emphasize problems that are real and solutions that will make a difference, ideally can be deployed.

The lecture will be conducted in an interactive fashion. The instructors will lead the discussion for the first few meetings of the class, but everyone must participate. For the remainder of the class, each student (can be in groups) will present a paper. Students will read and review papers before class. You will be graded on reviews; class discussions; and project scope, effort, and results.

Prerequisites

Students are expected to have good programming skills and must have taken at least one undergraduate-level systems-related course (from operating systems, databases, distributed systems, and networking).

Textbook

This course has no textbook. The class will select and discuss recent papers from the networking literature in order to understand trends in networking research. Students will select papers, focusing primarily on SIGCOMM 2018 but also including Mobicom 2018, and NSDI 2019, and lead discussions. If you can't find any interesting papers there, try older (but still recent) SIGCOMM conferences, IMC, or SIGCOMM Test-of-Time papers.

Tentative Schedule and Reading List

Papers to be selected from but not limited to:

Date Readings Presenter
Jan 10 Introduction Prof. Honeyman
Background Prof. Honeyman
Jan 15 Internet Anycast: Performance, Problems and Potential Prof. Honeyman
Restructuring Endpoint Congestion Control Prof. Honeyman
Jan 17 Networking across Boundaries: Enabling Communication through the Water-Air Interface Prof. Honeyman
Polymorphic Radios: A New Design Paradigm for Ultra-Low Power Communication Prof. Honeyman
Networking for New Hardware
Jan 22 Understanding PCIe Performance for End Host Networking Prof. Honeyman
Revisiting Network Support for RDMA Prof. Honeyman
Measurement
Jan 24 How to Catch when Proxies Lie Verifying the Physical Locations of Network Proxies with Active Geolocation Reethika Ramesh
Incentivizing Censorship Measurements via Circumvention Ramakrishnan Sundara Raman
Jan 29 RF-Based 3D Skeletons Benjamin Cyr
NetChain: Scale-Free Sub-RTT Coordination Gefei Zuo
Jan 31 class is cancelled due to the severe weather
Make Problem Complicated Again!
Feb 05 Oboe: Auto-tuning Video ABR Algorithms to Network Conditions Jiachen Sun
Sincronia: near-optimal network design for coflows Gefei Zuo
Combining Two old ideas into one new idea
Feb 07 Salsify: Low-Latency Network Video through Tighter Integration between a Video Codec and a Transport Protocol Ben Reeves
PASTE: A Network Programming Interface for Non-Volatile Main Memory Thomas Oliver
Feb 12 AuTO: Scaling Deep Reinforcement Learning to Enable Datacenter-Scale Automatic Traffic Optimization Richard Higgins
How Tracking Companies Circumvented Ad Blockers Using WebSockets Eric Newberry
Cool and practical systems
Feb 14 Towards Battery-Free HD Video Streaming Hsun-Wei Cho
A Measurement Study on Multi-path TCP with Multiple Cellular Carriers on High-speed Rails Xumiao Zhang
Feb 19 FBOSS: Building Switch Software at Scale Kevin Matthews
Direct Universal Access: Making Data Center Resources Available to FPGA Jiacheng Ma
Feb 21 Improving TCP Congestion Control with Machine Intelligence Richard Higgins
Copa: Practical Delay-Based Congestion Control for the Internet Can Carlak
Feb 26 FreeFlow: Software-based Virtual RDMA Networking for Containerized Clouds Jiacheng Ma
403 Forbidden: A Global View of CDN Geoblocking Steven Sprecher
Feb 28 Trident: Toward a Unified SDN Programming Framework with Automatic Updates Junpeng Guo
Stateless Datacenter Load-balancing with Beamer Kai Fang
Mar 05 Spring break
Mar 07 Spring break
Mar 12 Inaudible Voice Commands: The Long-Range Attack and Defense Hsun-Wei Cho
ECHO: A reliable distributed cellular core network for hyper-scale public clouds Jiayi Liu
Mar 14 mid-semester project progress presentation 6 brilliant groups!
Augmenting Physical Safety by Modifying Vehicular Networking Communication Methods Eric Newberry, Hsun-Wei Cho, and Richard Higgins
CCI-Bench: Measuring Cache Coherent Interconnection Jiacheng Ma and Gefei Zuo
Live Container Migration without Dropping TCP Connections Thomas Oliver, Ben Reeves, and Jiayi Liu
Censored Planet Ramakrishnan Raman, Reethika Ramesh, and Steve Sprecher
Enabling Multi-device Collaboration Using Distributed Mobile Multipath Xumiao Zhang, Jiachen Sun, and Junpeng Guo
Cross Layer Congestion Control in Cellular Networks Can Carlak and Zhensheng Jing
Mar 19 Sonata: Query-Driven Streaming Network Telemetry Kai Fang
Semi-Oblivious Traffic Engineering: The Road Not Taken Junpeng Guo
low latency, low latency, low latency
Mar 21 RAVEN: Improving Interactive Latency for the Connected Car Eric Newberry
On low-latency-capable topologies, and their impact on the design of intra-domain routing Zhensheng Jiang
Mar 26 MUTE: Bringing IoT to Noise Cancellation Xumiao Zhang
Chameleon: Scalable Adaptation of Video Analytics Jiachen Sun
Mar 28 Slim: OS Kernel Support for a Low-Overhead Container Overlay Network Ben Reeves
Datacenter RPCs can be General and Fast Thomas Oliver
Apr 02 Resolving Policy Conflicts in Multi-Carrier Cellular Access Joseph Lee
Leveraging Interconnections for Performance: The Serving Infrastructure of a Large CDN Kevin Matthews
Apr 04 Advancing the Art of Internet Edge Outage Detection Reethika Ramesh
Inferring Persistent Interdomain Congestion Ramakrishnan Sundara Raman
Apr 09 Quack: Scalable Remote Measurement of Application-Layer Censorship Steven Sprecher
Homa: A Receiver-Driven Low-Latency Transport Protocol Using Network Priorities Can Carlark
Apr 11 CAUDIT: Continuous Auditing of SSH Servers To Mitigate Brute-Force Attacks Zhensheng Jiang
Correctness and Performance for Stateful Chained Network Functions Jiayi Liu
Apr 16 Final Poster presentation day @ Tishman Hall 3:30-5pm Everyone is invited! (pictures: 1, 2, 3)
Augmenting Physical Safety by Modifying Vehicular Networking Communication Methods Eric Newberry, Hsun-Wei Cho, and Richard Higgins
CCI-Bench: Measuring Cache-Coherent Interconnection (Part of Project Optimus for FPGA Virtualization) Jiacheng Ma and Gefei Zuo
Follow-me Connections: Seamless TCP Connection Migration Thomas Oliver, Ben Reeves, and Jiayi Liu
Censored Planet: A Global Censorship Observatory Ramakrishnan Raman, Reethika Ramesh, and Steve Sprecher
Enabling Multi-device Collaborations Using Distributed Mobile Multi-path Xumiao Zhang, Jiachen Sun, and Junpeng Guo
Congestion Control by Leveraging LTE PHY-Layer Information Can Carlak and Zhensheng Jing
Apr 18 IPv6 deep-dive study Kevin Matthews
MPTCP deep-dive study Kai Fang
Apr 23 BBR TCP Prof. Honeyman

Grading

Students who satisfactorily complete all assigned work will receive a B+ or better.

Policies

Honor Code

The Engineering Honor Code applies to all activities related to this course.

Groups

All activities of this course will be performed in groups of 3 students, two Master's students teamed up with one Doctoral student. Exceptions may be made for valid reasons (e.g., working on existing projects) once the instructor team approved.

Declare your group's membership and paper preferences by January 16, 2019. After this date, we will form groups from the remaining students.

Paper Presentation

The course will be conducted as a seminar. Two students will present in each class. Each student will be assigned to present a pair of papers at least twice throughout the semester. Presentations should last at most 45 minutes without interruption. However, presenters should expect questions and interruptions throughout. You should sign-up for the desired presentation date here.

In the presentation, you should:

  • Motivate the paper and provide background.
  • Present the high-level idea, approach, and/or insight (using examples, whenever appropriate).
  • Discuss technical details so that one can understand the key details without carefully reading it.
  • Explain the difference between this paper and related work.
  • Raise questions throughout the presentation to generate discussion.

Paper Summaries

Every student is required to review the two papers assigned for each class. One of these reviews can be brief, summarizing the main contributions of the paper and one critical assessment (e.g., how the paper could be improved, or compares to related work, or advances the state of the art). This brief review should be about a paragraph in length.

The second review should be up to one page long, explaining in detail the contributions and context of the paper. This review should address the following four questions in about a paragraph each.

  • What is the problem addressed by the paper, and why is this problem important?
  • What is the hypothesis of the work?
  • What is the proposed solution, and what key insight guides their solution?
  • What is one (or more) drawback or limitation of the proposal, and how will you improve it?

Reviews must be uploaded to https://hotcrp.eecs589.org. The list of papers can be found at here (note that you must sign up with umich.edu email).

Late reviews will not be counted. You should use this template for writing your summary. Allocate enough time for your reading, discuss as a group, write the summary carefully, and finally, include key observations from the class discussion.

You must read and review every assigned paper.

Participation

You are expected to attend all lectures (you may skip up to 2 lectures for legitimate reasons), and more importantly, participate in class discussions.

Project

You will complete substantive work an instructor-approved problem and have original contribution. Surveys are not permitted as projects; instead, each project must contain a survey of background and related work. You must meet the following milestones (unless otherwise specified in future announcements) to ensure a high-quality project at the end of the semester:

  • Turn in a 2-page draft proposal (including references) by January 30. Remember to include the names and Michigan email addresses of the group members.
  • Keep revising your initial idea and incorporate instructor feedback. However, your team and project proposal must be finalized and approved on or before February 11.
  • Each group must submit a 4-page mid-semester progress report and present mid-semester progress during class hours on the week of March 14.
  • Each group must prepare for 5 to 15 minutes presentation for mid-semester progress during class hours on March 14.
  • Each group must present their final results during a presentation or poster session on April 16.
  • Each group must turn in an 8-page final report and your code via email on or before 11:59PM EST on April 17. The report must be submitted as a PDF file, with formatting similar to that of the papers you've read in the class. The self-contained (i.e., include ALL dependencies) code must be submitted as a zip file. Each zip file containing the code must include a README file with a step-by-step guide on how to compile and run the provided code.
  • Format should be 3x4 feet (approximately 0.75x1.0 meters) poster and must be emailed to Joseph by 11:59pm EST April 15.

Acknowledgement

This course syllabus is heavily influenced by Mosharaf Chowdhury's EECS 598.

About

EECS 589: Advanced Computer Networks @ University of Michigan Winter 2019 semester!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published