前言

课程名称:软件定义网络

课程地址 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. C++快速开发样本工程的建立--简介

    背景 在开发项目过程中,一些功能库能反复被写被用,可以写成库被重用: 但是行业业务也随着换项目,每次重新写一次,如果把一些功能业务和框架绑定,配置绑定,只需要添加,修改,增加业务功能,就可以搭建C++ ...

  2. 20155226 2016-2017-2 《Java程序设计》第9周学习总结

    20155226 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商 ...

  3. 16-[JavaScript]-ECMAScript 2

    1.流程控制:if switch <!DOCTYPE html> <html> <head> <meta charset="UTF-8"& ...

  4. 实现对象属性的lazy-loading(延迟加载)

    一.延迟加载器LazyLoader作用:       说到延迟加载,应该经常接触到,尤其是使用Hibernate的时候,本篇将通过一个实例分析延迟加载的实现方式.LazyLoader接口继承了Call ...

  5. Java的自动拆/装箱

    作者:Alvin 关键字:语法糖 类 对象 参考 Java 中的语法糖 语法糖--这一篇全了解 浅谈 Integer 类 什么是Java中的自动拆装箱 深入剖析Java中的装箱和拆箱 前言 我们知道, ...

  6. Cloud Native Weekly | 华为云抢先发布Redis5.0,红帽宣布收购混合云提供商 NooBaa

    1——华为云抢先发布Redis5.0 2——DigitalOcean K8s服务正式上线 3——红帽宣布收购混合云提供商 NooBaa 4——微软发布多项 Azure Kubernetes 服务更新 ...

  7. javaweb学习6——自定义标签

    声明:本文只是自学过程中,记录自己不会的知识点的摘要,如果想详细学习JavaWeb,请到孤傲苍狼博客学习,JavaWeb学习点此跳转 本文链接:https://www.cnblogs.com/xdp- ...

  8. Qt-网易云音乐界面实现-9 照片墙功能

    最近车也买了,不过倒是没有想象的那么开心,车真的是想消耗品啊. 写这个专题了,本来是想好好的磨练一下自己,不过可能要在在理就GG了.腻味了. 还是先看下效果图吧 这个照片墙还差点东西,不过我个人认为需 ...

  9. k8s踩坑记第2篇--3个IP折磨人的故事

    例子来源于<Kubernetes实践指南>一书.问题依然没有解决,求助大神. 测试环境 Centos 7.0 docker 1.13.1 kubectl v1.5.2 etcd 3.2.1 ...

  10. dstat 性能测试工具常用选项

    dstat常用的选项有: -c     显示cpu使用情况 -d     显示磁盘使用情况 -g,     显示页面数据 -i      启用中断数据 -l      平均负载统计(1分钟,5分钟,1 ...