14-821 Special Topics
6 units, Carnegie Mellon University
Software Defined Networking (SDN) is an emerging networking technology that has been rapidly changing the networking industry and telecommunications research. Small to big companies such as Nicira, Contrail, Cisco, IBM, Broadcom, Intel, among others have been continuously developing new SDN products. For many scholars in the area, this paradigm shift is changing how traditional networks are envisioned and constructed towards efficient solutions that separate data and control planes. Among the benefits of SDN, we find greater reliability via automation, more efficient network management, cost savings, and faster network scalability. It is true that SDN brings all sorts of benefits. In this light, understanding its foundations and what SDN cannot do is critical. In this course, you will learn the fundamentals of SDN technology and the perspective of different players. This course aims to cover topics such as the history and evolution of SDNs, the motivation for the separation of the control and data plane (including challenges and opportunities of this new paradigm), getting to know SDN controllers (including their tradeoffs and how to customize control-plane behavior), gaining experience with OpenFlow/SDN control, learn about network virtualization (including how it relates to SDN), learn the foundations of programming languages, frameworks, and controllers for SDN (e.g., Pyretic, Kinetic, and Resonance), and study the applications of SDN in multiple areas at different scales.
Prerequisites: none listed
Offered: Fall 2025
Courseweave needs JavaScript to show sections, workloads and planning tools.