Networking functions are moving to software or programmable hardware, and an increasing number of networking vendors are "opening up the box", considerably lowering the barrier to the development and deployment of new networking technologies. These recent developments present imminent opportunities for breakthroughs in networking technology.
In this course, we will examine how requirements for communications networks have evolved, how current protocols fail to meet some of these new requirements, and how new protocols and architectures might meet these new requirements. We will study security, mobility, economics and markets, and cloud and data-intensive applications present opportunities for developing new network protocols and architectures. The course will also provide exposure to an array of tools for developing and evaluating new network protocols and architectures, including Click, OpenFlow, NetFPGA, network processors, and software routers (e.g., Quagga, XORP).
You will be expected to read 2-3 papers a week. (Reading List).
There are no required textbooks for the course.
Students are expected to abide by the Georgia Tech Honor Code. Honest and ethical behavior is expected at all times. All incidents of suspected dishonesty will be reported to and handled by the office of student affairs. You are to do all assignments yourself, unless explicitly told otherwise. You may discuss the assignments with your classmates, but you may not copy any solution (or part of a solution) from a classmate.
This class is appropriate for graduate students with previous background in networking. Although it is listed as an official prerequisite, CS 6250 will be helpful, but is not required. Some familiarity with both network programming and scripting languages (e.g., Perl, Ruby) will be helpful.
Grading will be based on three problem sets, two quizzes, and a semester-long project with a presentation and writeup. Participation will count for "fudge factors".
Papers will not be handed out in class. Please read them before class.
For your convenience, here is a complete reading list.
Please note that this schedule is tentative and subject to change throughout the course of the term.
Lecture | Date | Topics | Notes/Resources | Preparation |
---|---|---|---|---|
Tools and Testbeds | ||||
1 | Tue 01/12 | Testbeds: Planetlab, Emulab, GENI |
Problem Set 1: Software-Defined Networking |
White2002 |
2 | Tue 01/19 | Software-Defined Networking: Click, OpenFlow |
Kohler2000 McKeown2008 |
|
Tue 01/26 | No Class |
|||
3 | Tue 02/02 | Programmable Hardware and Fast Routers |
Gibb2008 Dobrescu2009 |
|
The Cloud | ||||
4 | Tue 02/09 | Data Center Topologies, Traffic, and Routing |
Mysore2009 Greenberg2009 |
|
5 | Tue 02/16 | Virtual Hosts and Networks |
Bhatia2008a Tennenhouse1997 Feamster2007 |
|
6 | Tue 02/23 | Securing the Cloud |
Ristenpart2009 Oberheide2008 |
|
7 | Tue 03/02 | Green IT: Reducing Power Costs |
||
Next-Generation Network Operations | ||||
8 | Tue 03/09 | Routing and Economics: Peering, Bandwidth Exchanges, and Beyond |
Problem Set 2: Building Virtual Networks |
Norton2004 |
9 | Tue 03/16 | Network Configuration: Complexity and Management |
Nayak2009 Casado2007 Greenberg2005 |
|
Tue 03/23 | Spring Break |
|||
10 | Tue 03/30 | Home Networking |
Calvert2007 | |
Next-Generation Security | ||||
11 | Tue 04/06 | Accountability and Information-Flow Control |
Andersen2008 Zeldovich2008 |
|
12 | Tue 04/13 | Botnets |
Cooke2005 Gummadi2009 |
|
Wireless | ||||
13 | Tue 04/20 | Software-Defined Radios and Low-Cost Connectivity |
||
Presentations | ||||
14 | Tue 04/27 | Project Presentations |