Fork me on GitHub

图解网络虚拟化之概念篇

简单说就是把网络层的一些功能从硬件中剥离出来,新建立所谓的网络虚拟层。如果和服务器虚拟化对比来看,会帮助我们理解这个概念。

 

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://frankfan.blog.51cto.com/6402282/1170930

作者:范军 (Frank Fan)

新浪微博:@frankfan7 

如果要实现软件定义数据中心的愿景,网络虚拟化将会是旅程中的最后一公里。IDC估计网络虚拟化市场会从2013年 360 million美金增长到2016年的 3.7 billion。众多巨头接连大手笔,而很多新创公司也纷纷瞄准了这个方向。我们从下面几个方面来谈谈这意味着什么。

   巨头间的博弈

 由于云计算逐渐进入成熟阶段,解决传统网络架构面临的挑战显得越来越迫切。中小企业可能还好,最着急的是谁啊?这些互联网和IaaS巨头们。适逢斯坦福大学开发了OpenFlow,是一种网络虚拟化的概念的具体实现。 Google和Facebook于是作为支持OpenFlow的领头羊,积极参与Open Networking Foundation(ONF)的标准化制定和推广活动。

传统网络提供商也不得不与时俱进,否则很可能被大客户们绕开自行开发。网络虚拟化新兴公司Nicira把握住了时代机遇,与Openstack深度整合,为包括eBay在内的很多巨头提供解决方案。

已经在服务器虚拟化市场处于领先地位的VMware, 也频频重拳出击。在2012年6月以VMware12.6亿美金并购当时营业额仅1千万美金的Nicira,  惹得一番热议。网络虚拟化的重要性可见一斑。

网络虚拟化是一场微妙的巨头间的博弈,最后的局面如何,我们拭目以待。中小企业和IT从业者,虽然这是大户间的游戏,可无论谁胜谁负,最终会波及我们散户不是?还是未雨绸缪,了解一下先为好。

 二 传统网络架构的挑战

近年来服务器和存储虚拟化技术的迅猛发展, 使得动态快速分配计算资源和存储资源成为很平常的事。从而大大缩短了创建服务器的时间。相比之下,目前的传统网路架构显得不太给力,成为整个资源分配流程中的短板。

 

 

 

比如说, 很多情况下提供网路资源需要人工干预。网络交换机端口配置、ACL、路由等等。 在广域网数据中心的情况下,因为数据中心间的互联大多通过三层网路协议。如果在数据中心之间移植应用程序,需要特别注意应用程序中对网路环境的配置。如果服务器的数量较大,这绝对是件费时费力的事情。 企业级的兼并要求网络系统的快速整合,实施过整合项目的朋友应该知道这其中的水有多深。项目复杂性和实施周期都很有挑战。 企业现有系统和云平台的整合。上一个SaaS系统可能很快,可你不希望一个个SaaS成为信息孤岛。你可能需要SaaS和你已有系统的数据交互,比如和SAP. 如果你使用IaaS公有云的话,也许希望和已有的系统整合,这就是混合云的概念。这也需要充分考虑到你的网络能否满足应用从本地到公有云的无缝移植。 不能充分利用网络资源。大多数公司能利用到网络资源的30%-40%就不错了。很多情况下大量资源闲置,而某些时候由于数据量周期性的猛增,却发现网络资源不够。很多ISP或者通讯网络提供商们很挠头,在用户基本收费增长不大的情况下,用户期望的数据流量却比以往增大很多。除了网络扩容之外,更重要的提高目前已有网络的利用率。Google宣称由于使用Openflow(网络虚拟化技术中的一种实现),他们内部网络使用率将接近100%

什么是网络虚拟化

其实这个概念本不陌生,Overlays, MPLS, VPNs, VLANs, LISP, Virtual routers, VRFs等都可以认为是网络虚拟化的某种表现形式。可当前新兴的网络虚拟化概念从深度、广度和影响都远远超过了以上的技术。 

简单说就是把网络层的一些功能从硬件中剥离出来,新建立所谓的网络虚拟层。如果和服务器虚拟化对比来看,会帮助我们理解这个概念。

 

 

如今跑在虚拟机上的应用,只需要使用Hypervisor所支持的虚拟CPU和虚拟内存就够了,就应用本身无需关心跑在什么底层的硬件设备上。同时操作系统和应用基本无需更改什么,有时候或许简单针对虚拟化优化一下。

网络虚拟化同理,应用本身无需关心很多传统意义上的网络信息,比如路由,IP等等,这些有网络虚拟层来管。而底层的硬件呢,纯粹提供最基本的功能,很多复杂的信息及其配置也由网络虚拟层来托管。比如(L2,L3,tagging,couters,ACLs,etc)而很多2层以上的网络服务,只需要和网络虚拟层打交道,没必要知道底层跑什么硬件。

另外更深次的影响是运维方面。由于很多信息被抽取到网络虚拟层,我们可以更高效的来管理和配置它,并容易实现配置的可编程化和一致性。无需纠结于每个硬件设备复杂的iOS 配置了。

下图解释了网络虚拟化的好处。

 

 

 

网络虚拟化并不等同于软件定义的网路。这两个概念常常被混淆。网络虚拟化是一个解决方案,而软件定义的网路只是这个解决方案的众多实施方法中的一种。 我们把部分网络信息和功能提取出来以后,总要有办法去存储这些信息,并随时了解他们的状态吧。 这时候软件定义的网络就有用武之地了。通常有一个可以集中控制的模块来实现这些功能。

请关注即将推出的下文 - 图解网络虚拟化之实现篇

 参考文章:

VMware NSX Network Virtualization

 

Network Heresy

 

 

Open Source, Open Interfaces, and Open Networking

 

VXLAN, STT, and looking beyond the wire format

BRAD HEDLUND’s blog 

本文出自 “范军的博客” 博客,请务必保留此出处http://frankfan.blog.51cto.com/6402282/1170930

posted @ 2016-09-10 18:41  stardsd  阅读(4720)  评论(0编辑  收藏  举报