前言

课程名称:软件定义网络

课程地址 Coursera上新的一期还没开课,所以是YouTube。

InstructorNick Feamster

Get Started

对于本次课程,主要的新内容有:

  • 可编程性
  • 控制平面和数据平面
  • 问题修复(Troubleshooting)
  • 用法举例
  • OpenCloud
  • 数据中心
  • NFV(and Future of SDN)

在过去的几年,人们对于 SDN(Software Defined Networking,软件定义网络)的兴趣增长了。SDN的一些思想早在20年前中就有所体现,有一些思想甚至能够追溯到电话网络的时代。SDN 在下面三个方面有所进步。

  • Active Networking:通过网络传送的数据包活跃网络计算。软件定义网络将交通系统决定在哪里发送(控制平面)从底层系统转发到选定的目的地(数据平面)。实现网络可编程性(programmable)。
  • 控制和数据平面分离。不是一个新鲜的话题。为数据平面和控制平面提供接口供它们交互。
  • OpenFlow API与其他网络操作系统。OpenFlow 是第一个被广泛接受的SDN开放接口实例,在控制平面和可编程网元设备中发挥作用。

Active Networking

随着互联网的发展,用户对于网络的需求越来越大,对于各种应用的需求也越来越大,网络的研究者们也想实施各种新的想法。Active Networking 是为了实现网络可编程性的新尝试。科技进步和发展、硬件设备价格的下降推动其发展。用户日益增长的需求量也使得布置网络技术更加困难,所以带来了许多挑战。

Active Networking 给我们带来的思路有:

  • 网络中的可编程接口
  • 网络可虚拟化(virtualization)
  • 多路分解(基于网络中的交换机、路由器)
  • 一种统一的网络结构—— middlebox orchestration

虽然有的思路并没有成为现实,但为我们带来了美好的愿景。

Control/Data Separation

科技界早已发现将数据平面和控制平面分离是有好处的,而且这种理念对于发展网络可编程性相当地实用。从一个比较狭窄的角度,解决一些问题,比方说网络交通情况。有许多公司、研究者在研究和开发控制平面和数据平面之间的接口,也有在研发(逻辑上的)控制中心技术的。

网络是在发展的,基于最初的网络架构,已经给现有网络管理带来一定的问题。研究数据平面和控制平面的分离,就是为了解决这部分问题。

Control/Data Separation的最重要的两个特点是

  1. 有一个逻辑上作为中心的控制器,为路由器和交换机提供接口
  2. 分布式状态管理。Distributed state management(of controllers)

OpenFlow

OpenFlow被许多人视为“推倒重来的全新设计”的理念先驱和SDN讨论的发起者。现实中OpenFlow最初是作为是斯坦福大学网络研究的一部分而设想和实现的,也有一部分是因为网络存在的问题而被推动的。许多供应商、芯片制造商、学术界也乐于看到网络思路的创新。

OpenFlow贡献了新的协议和API,而且为未来的网络操作系统提供了一种思路,已至少成为SDN常见的定义的一部分。

  • 带有开放性API的数据平面,与控制平面分离。
  • 新的一个Layer,用于状态(指转发状态)管理实例化。
  • 控制逻辑

学习SDN时,最重要的一点是平衡愿景和实用性。OpenFlow在提供具有可编程性的网络这个愿景上,基于现有硬件支持上,实现了比较好的实用性。

如果想把SDN的观点延伸到网络的其他角落中去,心中就更要记住平衡美好的理想和现实。

参考链接

Software Defined Networking(Week 1)的更多相关文章

  1. Software Defined Networking For Dummies, Cisco Special Edition

    从接触SDN开始,不论是硬件还是软件,一直都是从具体的点开始,慢慢的勾勒出自己认为的SDN的样子,相信读完这本思科出的关于SDN的书会对其有新的认识 这本书的名字就是Software Defined ...

  2. Improving Network Management with Software Defined Networking

    Name of article:Improving Network Management with  Software Defined Networking Origin of the article ...

  3. Method of Seamless Integration and Independent Evolution of Information-Centric Networking via Software Defined Networking

    A method of transferring data between a software defined network (SDN) and an information-centric ne ...

  4. Software Defined Networking(Week 2, part 2)

    History of SDN 1.3 - 1.4 课程地址 Network Virtualization 网络可虚拟化,可以说是SDN的一项核心内容,同样也源自很多先前的技术和思想.我们先讨论何为网络 ...

  5. Software Defined Networking(Week 2, part 1)

    History of SDN 1.1 - 1.2 本节讨论从上世纪八十年代时到现在为止出现的SDN的思想和发展历史.了解历史,可以明白技术后面的成因以及一些原则,并从架构上去大致掌握.了解一些主旨. ...

  6. A Survey of Machine Learning Techniques Applied to Software Defined Networking (SDN): Research Issues and Challenges

    将机器学习用到SDN中的综述:研究的问题和挑战 从流量分类.路由优化.服务质量(Qos)/体验质量(QoE)预测.资源管理和安全性的角度,回顾了机器学习算法如何应用于SDN领域. 相关知识 在SDN中 ...

  7. Software Defined Networking(Week 3, part 1)

    Control and Data Plane Seperation 课程地址 Overview 今天正式地学习一个控制与数据平面分离.学习完本节,应该要掌握何为控制和数据平面,了解它们的功能以及好处, ...

  8. Software Defined Networking(Week 2, part 3)

    Control of Packet-switch Network 我们已经讨论过中心控制网络的原理,但主要是以电话网络做模型的.现在我们来看看对于分组交换网络的控制是如何改进的. Why Separa ...

  9. RFIDler - An open source Software Defined RFID Reader/Writer/Emulator

    https://www.kickstarter.com/projects/1708444109/rfidler-a-software-defined-rfid-reader-writer-emul h ...

随机推荐

  1. dataTable配置项说明

    Datatables是一款jquery表格插件.它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能. 官网地址:https://datatables.net/ 中文说明地址:http:/ ...

  2. Angular4 自制打地鼠游戏

    前端工程师新手一枚,之前一直做些小设计,以及静态页面的编写工作.刚刚接触 Angular 没有多久,四个月前对于 Javascript也只是会写 alert 之流,现在进步算是很大,下面是自制的打地鼠 ...

  3. linux-2.6内核驱动学习——jz2440之按键

      //以下是学习完韦东山老师视屏教程后所做学习记录中断方式取得按键值: #include <linux/module.h> #include <linux/kernel.h> ...

  4. Java线程和多线程(十四)——Synchronized关键字解析

    曾经有一个比较有趣的面试问题,那就是,关于使用synchronized关键字,是用在方法上面尾号,还是用在一个代码块上面为好? 答案就是使用锁定代码块为更好.因为这样不会锁定对象.当synchroni ...

  5. Ubuntu14.04 64位机上安装OpenCV2.4.13(CUDA8.0)版操作步骤

    Ubuntu14.04 64位机上安装CUDA8.0的操作步骤可以参考http://blog.csdn.net/fengbingchun/article/details/53840684,这里是在已经 ...

  6. 4008: [HNOI2015]亚瑟王

    4008: [HNOI2015]亚瑟王 链接 分析: 根据期望的线性性,直接求出每张牌出现的概率,最后乘以攻击力就是答案. 每张牌出现的概率只与它前面的牌有关,与后面的没有关系,于是按顺序考虑每张牌. ...

  7. 牛客OI周赛3-提高组-B-1408[dp]

    题意 给你长度为 \(n\) 的两个排列 \(A,B\) 组成的序列,求最少的交换相邻数字的次数使得 \(A,B\) 分别有序. \(n\leq 2000\) . 分析 如果只有一个排列时最少交换次数 ...

  8. Cocos2DX开发:记录遇到的一些问题和解决方法

    今天看了一下以前学习cocos2dx时记录的一些笔记,主要是在实际中遇到的一些问题,整理了一下,就成为了这篇文章,便于自己以后查找,也为一些新手提供点经验. 这篇文章会一直更新,将自己之后开发中遇到的 ...

  9. java高并发之锁的使用以及原理浅析

    锁像synchronized同步块一样,是一种线程同步机制.让自Java 5开始,java.util.concurrent.locks包提供了另一种方式实现线程同步机制——Lock.那么问题来了既然都 ...

  10. TPO-22 C2 Revise a music history paper

    第 1 段 1.Listen to part of a conversation between a student and his music history professor. :听一段学生和音 ...