概念解释:切片:虚拟网络的一个实例

一. 网络虚拟化(虚拟网络)

人类社会的发展在很大方面得益于自然界,飞机受益于鸟,雷达受益于蝙蝠等等,所以专门有个学科为仿生学就是研究和模仿生物的特殊本质,利用生物的结构和功能原理来研制机械或各种新技术的科学技术。而人类社会已经发展了这么多年,沉淀了很多可以和自然界相媲美的创造和思想,计算机就是其中之一。所以,总结人类历史上成功的思想,伟大的创新,举一反三,也是科技进步的重要力量,这篇文章所提到的SDN和网络虚拟化等这些思想在计算机技术中早有应用。

与其说SDN是一种新的技术,不如称他为一种思想。首先对比下面两幅图片,左图为现在的计算机系统构架,右图的(b)图为SDN的系统构架,稍作对比可以发现两者有很大的相似性,也有些不同,比如网络是分布式系统,但是核心思想还是相同的,所以,计算机系统的优点,比如硬件管理简单,应用开发方便等等都可以在SDN中发现,这篇文章侧重于虚拟网络

计算机虚拟化的成功归结于底层硬件的抽象。更详细点说,计算机虚拟层通过硬件抽象允许资源被操作系统切片和共享,所以在用户看来,这些硬件都是归操作系统私有,一个定义好的硬件抽象会促进他的上层和下层快速的发展和革新,在更上层,操作系统百花齐放,常用的如UNIX,MacOD,Linux以及Windows,在这些操作系统上面可以跑各种各样的应用;在更下层,可以按需采购不同的硬件,如Intel,AMD,PPC,ARM等等,只要他可以映射到硬件抽象层,因此不同的硬件可以拥有不同的指令集,他们只需要注重性能优化等等,虚拟层的上下层会将这种灵活性进一步扩散,不同的人群可以DIY自己舒适的工作,学习,生活方式。

网络虚拟化一直是网络研究者追求的一个目标,有了它,多个拥有不同寻址和转发机制的逻辑独立的网络可以共享底层的物理设施(交换机,路由器,无线集线器等等),现在网络虚拟化的实现方式主要有两种:利用软件的灵活性和复制硬件组件。更通俗的来说,我觉得网络虚拟化至少有如下两个让程序员非常向往的好处:解放劳动力同时可以更好更充分的利用物理资源。

二. 现在和虚拟网络相关的技术

如今部署在网络中的相关策略并不是为了虚拟化而设计的,他们和计算机硬件抽象层也没有什么共同之处,虽然存在这一些技术可以划分特定的硬件资源(MPLS可以虚拟化转发表)和网络层(WDM划分物理层,VLANs划分链路层),但是没有一种技术可以网络虚拟化为一个整体,虚拟网络之间互相独立。可以预见性的说,在现在的网络里面实现虚拟化是不大可能的,因为商用交换机的设计都保留在设备厂商手里,他们只公布了一定的接口给网管去改变配置参数,我们能做的只是敲一些命令行。所以FlowVisor是基于OpenFlow交换机的。

三. 网络虚拟化所关注的主要资源

  1. 带宽:划分链路带宽给每个网络切片
  2. 拓扑:每个网络切片应该拥有自己的网络拓扑
  3. 流量:流量和虚拟网络关联
  4. 计算资源:划分交换机和路由的计算资源
  5. 转发表:网络设备支持一定数量的转发表

四. FlowVisor

FLowVisor为一个网络抽象层,包含了一种新的交换机层网络虚拟化技术,同一个硬件转发平面可以被多个逻辑网络共享。类似于计算机的虚拟层,FLowVisor位于底层硬件和上层软件之间,他的结构如下图所示。操作系统利用指令集控制底层硬件,FLowVisor利用的是前文提到的OpenFlow协议,有如下如特性:

  • FLowVisor定义切片为由OpenFlow交换机组成的拓扑上的一组流
  • FLowVisor位于每个OpenFlow控制器和OpenFlow交换机之间,确保每个控制器只能看到和控制他应该管理的OpenFlow交换机
  • FLowVisor通过给组成切片的流一个最小的数据速率来划分带宽
  • FLowVisor通过追踪流表项属于哪个控制器来划分交换机的流表

本文围绕着计算机系统的虚拟层和网络虚拟层的比较,做了大量的铺垫,引出了位于OpenFlow控制器和OpenFlow交换机之间的虚拟层FLowVisor,接下来的文章会详细介绍FLowVisor的技术。

网络虚拟化之FlowVisor:网络虚拟层(上)的更多相关文章

  1. 网络虚拟化之FlowVisor:网络虚拟层(下)

    在前面两篇文章:网络虚拟化之FlowVisor:网络虚拟层(上)和网络虚拟化之FlowVisor:网络虚拟层(中)中分别介绍了FLowVisor的特性和实现,三连载的最后一篇介绍虚拟网络的隔离机制. ...

  2. 网络虚拟化之FlowVisor:网络虚拟层(中)

    上一篇博客网络虚拟化之FlowVisor:网络虚拟层(上)主要对比了计算机虚拟化和网络虚拟化,引出了FLowVisor网络虚拟层,介绍了其一些特性,这篇博文深入讲解FLowVisor的技术. 一. 概 ...

  3. 删除Windows中隐藏的物理网卡和网络虚拟化失败后的虚拟网卡

    Windows环境下,在更换硬件服务器主板和网卡等硬件.恢复操作系统或者网络虚拟化失败后,可能会出现网卡方面的问题.例如,设备管理器中多了不应该存在的网卡:因命名冲突无法重命名当前网络连接:IP地址冲 ...

  4. Windows Server 2016-Hyper-V网络虚拟化概述

    在 Windows Server 2016 和虚拟机管理器中,Microsoft 提供的端到端网络虚拟化解决方案. 有构成了 Microsoft 的网络虚拟化解决方案的五个主要组件: Windows ...

  5. 《重构网络:SDN架构与实现》Chapter7 SDN与网络虚拟化 随笔

    参考: <重构网络:SDN架构与实现>,作者:杨泽卫.李呈. Chapter7 SDN与网络虚拟化 结构 7.1 网络虚拟化 7.1.1 为什么需要网络虚拟化技术 7.1.2 网络虚拟化 ...

  6. 从SDN鼻祖Nicira到VMware NSX 网络虚拟化平台的简单探讨

    以前的大二层技术,一般是在物理网络底层使用IS-IS路由技术,再在此基础之上,实现数据中心网络的二层扩展,如公有的Trill.SPB技术和Cisco私有的OTV.Fabricpath技术:前沿一些的网 ...

  7. Hyper-V 网络虚拟化技术细节

    Hyper-V 网络虚拟化技术细节 适用对象:Windows Server 2012 R2 服务器虚拟化能让多个服务器实例在同一台物理主机上同步运行,但各个服务器实例都是相互独立的. 每台虚拟机的运作 ...

  8. 数据中心网络技术新贵:VXLAN与园区网络虚拟化

    摘要:为了应对传统数据中心网络对服务器虚拟化技术的限制,VXLAN技术应运而生. 1 概述 传统数据中心网络面临的问题 虚拟机规模受设备表项规格限制 在传统二层网络中,交换机通过查询MAC地址表来转发 ...

  9. 网络虚拟化之linux虚拟网络基础

    1 linux虚拟网络基础 1.1 Device 在linux里面devic(设备)与传统网络概念里的物理设备(如交换机.路由器)不同,Linux所说的设备,其背后指的是一个类似于数据结构.内核模块或 ...

随机推荐

  1. PHP-XML基于流的解析器及其他常用解析器

    PHP中有两种主要的XML解析器 1)基于树的解析器.它是把整个文档存储为树的数据结构中,即需要把整个文档都加载到内存中才能工作.所以,当处理大型XML文档时候,性能剧减.SimpleXML和DOM扩 ...

  2. LaTeX 中插入图片使其紧跟插入的文字之后

    LaTeX 中插入图片使其不跑到每页的开头而紧跟插入的文字之后. 此次建模过程中,遇到的一个比较棘手的问题是: 当插入图片时,图片的位置总是会自动跑到当页(或下一页)的最上方,而不是紧跟在其对应的说明 ...

  3. mysql-group-replication 测试环境的搭建与排错

    mysql-group-replication 是由mysql-5.7.17这个版本提供的强一致的高可用集群解决方案 1.环境规划 主机ip 主机名 172.16.192.201 balm001 17 ...

  4. 2.请求库之requests

    requests模块阅读目录: 介绍 基于GET请求 基于POST请求 响应Response 高级用法 一.介绍 #介绍:使用requests可以模拟浏览器的请求,比起之前用到的urllib,requ ...

  5. android studio - 提取局部变量,全局变量,方法快捷键

    提取局部变量:Ctrl+Alt+V 提取全局变量:Ctrl+Alt+F 提取方法:Shit+Alt+M

  6. error while loading shared libraries错误解决

    在编译引用了第三方库的代码后,执行出现了以下错误 [work@xxx zktest]$ ./a.out ./a.out: error while loading shared libraries: l ...

  7. [转]解决Access restriction: The type * is not accessible due to restrict

    我在eclipse使用org.omg下的东西的时候报此错误 我用的第一种方法解决了问题 转自:http://blog.sina.com.cn/s/blog_6714fba70100x6mz.html ...

  8. PHP学习笔记(6)js点击刷新验证码

    用“换一张”来控制验证码刷新,js脚本怎么写 宏朋雄 | 浏览 3663 次  2012-06-11 22:41 2012-06-12 01:49   最佳答案   <img src=“验证码文 ...

  9. extjs经典form的submit()和ajax()

    extjs 的submit: // 发送请求                this.formPanel.getForm().submit({                            u ...

  10. SOCK_RAW编程

    TCP(SOCK_STREAM)和UDP套接口(SOCK_DGRAM)可以满足大部分需求,但要获取底层协议内容就需要原始套接字.相比前两者,SOCK_RAW具有如下优点: 1)使用原始套接字可以读写I ...