前言

课程名称:软件定义网络

课程地址 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. Redis高级特性---------事务与持久化与发布订阅

    一.redis事务的用法 1.开启事务:multi 2.提交事务:exec   ( queued只是把指令放入队列中,没有执行) 3.取消事务:discard 4.redis事务不能保证同时成功或者失 ...

  2. PHP/Laravel轻松上传超大文件

    我们知道,在以前,文件上传采用的是直接传整个文件的方式,这种方式对付一些小文件是没有问题的.而当需要上传大文件时,此种方式不仅操作繁琐,需要修改web服务器和后端语言的配置,而且会大量占用服务器的内存 ...

  3. python 中的字符串格式化

    python 中的字符串格式化 %方式的调用 1.格式化代码 代码 意义 s 字符串,使用str r 字符串,使用repr不使用str c 字符 d 十进制的数字 i 整数 u 无符号整数 o 八进制 ...

  4. 2017-2018-1 20155214 《信息安全系统设计基础》 第9周课下测试-mypwd

    2017-2018-1 20155214 <信息安全系统设计基础> 第9周课下测试-mypwd(深入版) 题目要求: 1 学习pwd命令 2 研究pwd实现需要的系统调用(man -k; ...

  5. 15-[mysql内置功能]--函数,流程控制 (未完成)

    1.MySQL中提供了许多内置函数 一.数学函数 ROUND(x,y) 返回参数x的四舍五入的有y位小数的值 RAND() 返回0到1内的随机值,可以通过提供一个参数(种子)使RAND()随机数生成器 ...

  6. 3495: PA2010 Riddle

    3495: PA2010 Riddle 链接 分析: 每个点要么建首都,要么不建,并且一个点建了,会导致一些点不能建.所以可以考虑2-sat. 但是如果在每个郡里两两连边,边数是n^2的. 考虑用前缀 ...

  7. Gitlab+Jenkins学习之路(十三)之发布Java项目到tomcat

    一.新建一台虚拟机安装tomcat ()安装JDK 官网下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...

  8. 在Javascript中 声明时用"var"与不用"var"的区别,== 和 ===的区别

    今天,被问到两个JS问题,当时没回答到重点,问题虽然看起来简单,但是细节却马虎不得,在此做下记录: 1. 在Javascript中 声明时用"var"与不用"var&qu ...

  9. 约束4:唯一约束,Check约束和null

    大家知道,关系型数据库的逻辑运算的结果是三值型的,TRUE,FALSE和UNKNOWN,特别是,NULL值和任何值都不相等,任何值和NULL的比较,返回的逻辑结果都是unknown.而NULL值在唯一 ...

  10. Object C学习笔记5-ARC forbids explicit message* 编译错误

    在学习Object C的过程中XCode 编译器经常出现 "ARC forbids explicit message send of release" 的错误提示. 以上问题主要出 ...