|
所在平台: Coursera |
课程主页: https://www.coursera.org/learn/sdn
课程评论:没有评论
课程名称:软件定义网络 课程概述:本课程将介绍软件定义网络(SDN),以及它如何改变通信网络的管理、维护和安全方式。 课程大纲: 第一周:课程介绍及软件定义网络的历史与演变。 第二周:学习控制平面与数据平面分离的动机、历史,以及这一架构范式所面临的挑战与机遇。 第三周:获取OpenFlow/SDN控制的经验,接触不同的SDN控制器,了解使用不同SDN控制器的权衡,并体验如何使用SDN定制控制平面行为。 第四周:深入了解网络虚拟化的概念、用途及其与软件定义网络的关系。 第五周:探索可编程数据平面技术以及SDN控制和虚拟化的理解,了解OpenFlow设计的历史背景及可编程硬件的新应用。 第六周:学习使可编程性成为可能的编程语言和控制器,特别关注Pyretic语言及其北向API—Resonance,以便编写响应网络条件变化的策略。 第七周:应用SDN解决各种网络领域的问题,包括数据中心网络、域间路由和家庭网络的应用案例。 第八周:研究基于Pyretic构建的另一个控制框架“Kinetic”,它是一个领域特定语言,用于自动验证控制程序的正确性,并进行Kinetic与Pox或Pyretic的比较。 学习这个课程将使你对软件定义网络的核心概念及其应用有深入的理解。
Name:Week One
Description:This week, I'll introduce an overview of the course and then dive into the history and evolution of SDNs.
Name:Week Two
Description: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.
Name:Week Three
Description: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.
Name:Week Four
Description: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.
Name:Week Five
Description: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.
Name:Week Six
Description: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).
Name:Week Seven
Description: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.
Name:Week Eight
Description: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.
In this course, you will learn about software defined networking and how it is changing the way communications networks are managed, maintained, and secured.