Software Defined Networking (Coursera)

Offered by University of Chicago,
Software Defined Networking (Coursera)

In this course, you will learn about software defined networking and how it is changing the way communications networks are managed, maintained, and secured.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Syllabus

WEEK 1
This week, I'll introduce an overview of the course and then dive into the history and evolution of SDNs.

WEEK 2
In this module, you will learn about the motivation and history behind the separation of the control and data plane, as well as the challenges and opportunities that this architectural paradigm offers.

WEEK 3
In this lesson, you will gain experience with OpenFlow/SDN control, gain some exposure to different SDN controllers, learn about the tradeoffs of using different SDN controllers, and gain some experience of using SDN to customize control-plane behavior.

WEEK 4
By the end of this module, you should have a good understanding of what network virtualization is, what it is used for, and how it relates to software defined networking.

WEEK 5
This module is relatively independent from some of the other modules, as programmable data planes involve new types of technology. Still, you should by now have a very good understanding of SDN-based control and virtualization. OpenFlow's design was somewhat of an accident of the hardware support that was available at the time. More recently, people are exploring how programmable hardware can help us design a control protocol with the benefit of being able to change the data plane.

WEEK 6
In this part of the course, you'll learn about programming languages and controllers that make this programmability possible. We will focus on one language in particular, Pyretic, which is from the Frenetic family of languages. We will also look at a runtime and northbound API called Resonance, which allows network programmers to write policies that respond to changing network conditions (e.g., security events, shifts in peak vs. off-peak time, traffic fluctuations or link failures).

WEEK 7
In this module, we will apply that knowledge to explore how SDN can be used to solve problems in various networking domains. We'll start by looking at data-center networking, where SDN has arguably gained the strongest foothold (to date). We'll then explore applications of SDN to interdomain routing, where new applications and deployments are emerging. Finally, we'll explore the application of SDN in home networks, which has seen some preliminary work, deployments, and ideas.

WEEK 8
Week Eight
In this module, we'll be looking at another control framework built using Pyretic called "Kinetic". Kinetic is a domain-specific language embedded in Pyretic that allows programmers and network operators to automatically verify the correctness properties of the control program. Your previous experience with Pox and Pyretic should provide you with very useful experience and perspective for comparing the three ways of programming a controller. In the assignment, we ask you to compare Kinetic to either Pox or Pyretic, so the experience you gained from those assignments should prove very useful.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Introduction to Git and GitHub (Coursera) Coursera
Google

Introduction to Git and GitHub (Coursera)

In this course, you’ll learn how to keep track of the different versions of your code and configuration files using a popular version control system (VCS) called Git. We'll also go through how to setup an account with a service called GitHub so that you can create your very own remote repositories to store your code and configuration.

Jun 23rd 2026
4 Weeks
The Raspberry Pi Platform and Python Programming for the Raspberry Pi (Coursera) Coursera
University of California, Irvine

The Raspberry Pi Platform and Python Programming for the Raspberry Pi (Coursera)

The Raspberry Pi is a small, affordable single-board computer that you will use to design and develop fun and practical IoT devices while learning programming and computer hardware. In addition, you will learn how to set up up the Raspberry Pi environment, get a Linux operating system running, and write and execute some basic Python code on the Raspberry Pi. You will also learn how to use Python-based IDE (integrated development environments) for the Raspberry Pi and how to trace and debug Python code on the device.

Jun 22nd 2026
4 Weeks
Software Defined Networking (SDN) Access Security (edX) EdX
Curtin University,CurtinX

Software Defined Networking (SDN) Access Security (edX)

Discover how Software Defined Networking (SDN) can handle security and privacy issues for modern enterprise and data centre networks. The aim of this course is to equip learners with advanced skills in the fields of security and cybersecurity and make you industry ready. You will learn about SDN Access Security. We will begin with the core security and privacy issues relevant to conventional IP networking, and explain how SDN can handle security and privacy issues for modern enterprise and data centre networks.

Self Paced
Self-Paced
Leadership in a Virtual World (edX) EdX
DoaneX,Doane University

Leadership in a Virtual World (edX)

Learn project management and team communication in a virtual world. This course introduces the use of project management tools available in a virtual space to manage team communication within a virtual network. This course also introduces learners to the virtual world of community organizations available to support community based projects with grants and tools.

Self Paced
Self-Paced
Netzwerkvirtualisierung - Von einfach bis zur Cloud (openHPI) OpenHPI
Hasso-Plattner-Institut

Netzwerkvirtualisierung - Von einfach bis zur Cloud (openHPI)

Nach der Virtualisierung der Server wird nun das Netzwerk virtualisiert. Physikalische und virtuelle Netzwerke werden entkoppelt und somit entstehen Netze mit neuen Möglichkeiten. Der Kurs zeigt die Netzwerkvirtualisierung, die schon lange im Netzwerk Verwendung findet, bis hin zu Cloud Netzwerken und Unternehmensvernetzung mit Hilfe von SD-WAN.

Self Paced
Self-Paced
Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera) Coursera
University of California, San Diego

Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera)

Once we have sequenced genomes in the previous course, we would like to compare them to determine how species have evolved and what makes them different. In the first half of the course, we will compare two short biological sequences, such as genes (i.e., short sequences of DNA) or proteins. We will encounter a powerful algorithmic tool called dynamic programming that will help us determine the number of mutations that have separated the two genes/proteins.

Jun 22nd 2026
5-12 Weeks
Intel® Network Academy - Network Transformation 102 (Coursera) Coursera
Intel Corporation

Intel® Network Academy - Network Transformation 102 (Coursera)

Welcome to the Intel® Network Academy – a comprehensive training program on network transformation. In this program, we will be covering the topic areas of software defined infrastructure (SDI) network functions virtualization (NFV), software-defined networking (SDN) and beyond. Network Transformation 102 covers topics such as VNF Operations & Development, Cryptography, and Hyperscan technology, students will dive into the benefits of Intel hardware and software and explore how to accelerate compute-intensive operations with Intel® QuickAssist Technology (Intel® QAT).

Jun 8th 2026
4 Weeks
操作系统原理 (Operating Systems) (Coursera) Coursera
Peking University

操作系统原理 (Operating Systems) (Coursera)

操作系统原理》是针对计算机科学技术专业三年级本科生开设的一门专业基础课程。本课程着重学生系统观的培养,通过重点讲述操作系统的内部结构、工作原理及典型技术的实现,使学生建立起对操作系统的整体及各个功能模块的认识,从而系统掌握计算机的专业知识,进一步提升学生的软件开发能力乃至系统软件开发能力。

Jun 22nd 2026
13-24 Weeks
Hardware Security (Coursera) Coursera
University of Maryland, College Park

Hardware Security (Coursera)

In this course, we will study security and trust from the hardware perspective. Upon completing the course, students will understand the vulnerabilities in current digital system design flow and the physical attacks to these systems. They will learn that security starts from hardware design and be familiar with the tools and skills to build secure and trusted hardware.

Jun 22nd 2026
5-12 Weeks
Cloud Networking (Coursera) Coursera
University of Illinois at Urbana-Champaign

Cloud Networking (Coursera)

In the cloud networking course, we will see what the network needs to do to enable cloud computing. We will explore current practice by talking to leading industry experts, as well as looking into interesting new research that might shape the cloud network’s future. This course will allow us to explore in-depth the challenges for cloud networking—how do we build a network infrastructure that provides the agility to deploy virtual networks on a shared infrastructure, that enables both efficient transfer of big data and low latency communication, and that enables applications to be federated across countries and continents? Examining how these objectives are met will set the stage for the rest of the course.

Jun 22nd 2026
5-12 Weeks