History of SDN 1.3 - 1.4

课程地址

Network Virtualization

网络可虚拟化,可以说是SDN的一项核心内容,同样也源自很多先前的技术和思想。我们先讨论何为网络虚拟化,然后我们会追溯其历史,探索其在近十年来为网络实验提供的支持、以及带来的一些新概念。最后,讲一下网络虚拟化与SDN的联系。

What is Network Virtualization?

wiki - In computing, network virtualization or network virtualisation (see spelling differences) is the process of combining hardware and software network resources and network functionality into a single, software-based administrative entity, a virtual network. Network virtualization involves platform virtualization, often combined with resource virtualization.

老师下的定义:

Representation of one or more logical network topologies on the same underlying infrastructure.

网络虚拟化就是表示在相同的基础设施上集合了一个或多个逻辑网络拓扑结构。

Benefits of Network Virtualization

  • Sharing

    • Multiple logical routers on single platform.
    • Resource isolation in CPU, memory, bandwith, forwarding tables...

运用网络虚拟化的思想,可以在单一的平台,或者物理结点上搭建多个逻辑路由器的实例。也可以以某一个网络为基础设施,在其之上建立多个虚拟网络。可以方便信息的分享,同时带来了对资源的独立性的要求,例如CPU、内存、带宽等等。

  • Customizability

    • Customizable routing and forwarding softwares.
    • General-purpose CPUs for the control node.
    • Network processors and FGPAs for data plane.

除了方便信息分享,网络虚拟化为用户带来了自定义功能的前景。从本质上讲,虚拟化网络的用户可以对他们自己的逻辑网络、网络拓扑可以有很清晰的观察(view),而且是不受其他用户的逻辑网络干扰的,即使它们运行在同一个物理基础设施上面。能够很清楚地了解自己的独立的逻辑网络,允许用户运行自定义的路由、传输数据的业务,并且是在自己的那一部分网络上,并不影响虚拟网络中的其他用户。

下面是一个固定的网络基础设施。有许多的使用者想使用这些基础设施来搭建网络,他们中的每一方有可能想去访问不同的网络资源,也有可能想建立任意数量的网络拓扑结构,而这一切都是在共享共同的基础设施之上的。这里可以运用网络虚拟化的思想,让想使用这些基础设施的一方拥有一种能力:拥有自己一方的网络拓扑结构的清晰视野,而每一方的服务都能独立运行,不会受对方干扰,也不会打扰对方。

Three Examples of Network Virtualization

  • Tempest:Switchlets(1998)

    • Seperation of control framework from switches.
    • Virtualization of the switch.

上世纪九十年代末有一个框架叫做 Tempest ,它也有提出从底层交换机中将控制模块分离出来的思想,同时又有虚拟化交换机硬件的能力。

在这个架构的底部配置了一台交换机,管控资源。在它的上面有一个开放的控制接口,可以为其上方的软件提供资源。这种控制接口的思想有点儿像 OpenFlow。这种思想的动机是为了让多个控制架构在一个网络结构上运行。Divider 将多个 Switchlets controllers 和底部设施分离,允许每个 controller 都拥有各自的视野。

  • VINI:A Virtual Network Infrastructure(2006)

VINI,是一种网络基础设施的虚拟化版本。它的动机是想让研究人员在其各自的网络上做实验,这些网络分享同一个基础设施。

网络虚拟化是一座桥梁,它将研究人员做的小范围研究和模拟,与实际的运用与配置联系起来。一般来说,小范围的研究成果是可以重复实现的,但与实际运用有差别。如果实际运用跑起来了,那不一定要求可重复实现,但会遇到一些很实际的问题。我们可以运用网络虚拟化的思想来弥补这其中的空缺。

  • Cabo:Separate infrastructure, services(2007)

Cabo(Concurrent Architectures are Better than One) 提供了一种思路:允许服务提供商和基础设施提供商互相独立地工作,这样方便引入新的服务,为创新加速。基础设施提供商,负责提供硬件并维护;服务提供商,为用户提供各种点对点服务。他们可以互相独立地工作。

Summary

网络虚拟化将原本绑定在一起的逻辑网络和基础设施分离开来,允许提供商和用户对自己的网络有很清晰的视野,允许多个参与方共享同一网络基础设施。网络虚拟化有着丰富的历史,为SDN提供了很丰富的思想。例如分离服务和基础设施、单个交换机和多个控制器的组合,等等。

Software Defined Networking(Week 2, part 2)的更多相关文章

  1. Software Defined Networking(Week 1)

    前言 课程名称:软件定义网络 课程地址 Coursera上新的一期还没开课,所以是YouTube. Instructor:Nick Feamster Get Started 对于本次课程,主要的新内容 ...

  2. Software Defined Networking For Dummies, Cisco Special Edition

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

  3. Improving Network Management with Software Defined Networking

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

  4. 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 ...

  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. git merge的使用

    在实际开发中经常会用到git merge操作.但很多情况下我们并不想合并后直接提交,这里介绍git merge的两个常用参数: --no-commit --no-commit 参数使得合并后,为了防止 ...

  2. QuestaSim 中文注释乱码

    在QuestaSim按如下顺序打开对应窗口, Tools -> Edit Preferences -> By Name -> Find 输入 encoding搜索对应项,将其valu ...

  3. 20155231 邵煜楠《网络对抗技术》实验一 PC平台逆向破解

    20155231 邵煜楠<网络对抗技术>实验一 PC平台逆向破解 实验内容 直接修改程序机器指令,改变程序执行流程: 通过构造输入参数,造成BOF攻击,改变程序执行流: 注入Shellco ...

  4. c++ 动态数组,指针与动态内存分配

    教学内容: 内存的使用 动态内存分配malloc函数 分配内存时使用sizeof运算符 用指针访问内存 以数组的形式访问内存 一.内存的使用 堆(heap) 在程序执行期间分配内存时,内存区域中的这个 ...

  5. 【LNOI2014】LCA

    题面 题解 考察\(dep[\mathrm{LCA}(i, x)]\)的性质,发现它是\(i\)和\(x\)的链交的长度. 那么对每个\(i\)所在的链打一个区间加标记,询问时算一下\(x\)所在的链 ...

  6. P4047 [JSOI2010]部落划分

    显然二分答案\(mid\),然后距离\(\leq mid\)的点对只能放在一个部落里.然后可以并查集\(O(n^2)\)算出有多少个部落. // luogu-judger-enable-o2 #inc ...

  7. Java JDK下载安装及配置

    下载JDK(Java Development Kit),所有的Java程序都依赖他. 下载地址 www.oracle.com  直接下载 安装JDK如图(傻瓜式安装,下一步下一步):   安装完成后 ...

  8. 【SoDiaoEditor电子病历编辑器更新啦】--谨以献给那些还在医疗行业奋斗的小伙伴们

    为什么推荐的人这么少~~~~   更新(2017-4-18): 截止目前已知的已有2个三甲医院在使用该编辑器,容我内心澎湃以下,O(∩_∩)O哈哈~   先放github地址:https://gith ...

  9. 最具有性价比的语言javascript之二,学习篇

    先祝福各位,国庆假期愉快!前面写了一篇 最具有性价比的语言javascript之介绍篇,引起了不少的争议. 有些人javascript吐槽,埋怨.我目前做的都是后台系统.每个人的工作经历和兴趣爱好不一 ...

  10. Unity在OpenGL模式下Shader编译报错

    报错信息 GLSL compilation failed: 0(21) : error C7528: OpenGL reserves names containing '__' 双击报错VS自动打开V ...