近年来,云计算随着无所不在的宽带互联技术以及服务器虚拟化技术在商业模式上的创新性运用而兴起,IT的使用方式正在发生一个革命性的变更:以按需租用服务为主的IT使用新方式正在逐步,也必将会,取代作为财产拥有的传统IT使用方式。在这个宏观背景下,业界已经出现了若干知名的,用开放源代码实现的云计算系统及解决方案,如 Openstack, Cloudstack, Eucalyptus, OpenNebula, 等。这些开源云计算系统采用在大宗通用服务器上分布式部署开放源代码软件这样的“草根”手段,对以前仅由少数知名IT技术与设备厂商利用高端硬件或其它高壁垒手段封闭技术秘密而形成的专属涉足技术领域实现了完全彻底的技术开放。众所周知的BT(Bit Torrent)分布式文档下载技术就是一个典型的分布式部署软件的“草根游击队”技术能够打败高端集中硬件“正规军”技术的具体鲜活案例,其它如HDFS等,皆是。所谓“草根”有双重含义:一是在大宗普通硬件上部署分布式软件技术手段打败专用硬件的集中式“高端”技术;二是开源软件技术的低准入门槛可以聚集大规模、社区自发性、低成本的软件力量,完全可以对阵由少数知名IT技术与设备厂商组成的相对小规模、专业、高成本的“正规军”,从而加速IT技术的发展。
       
        与作为财产拥有的传统IT使用方式不同,云计算IT资源的使用具有“召之即来,挥之即去”的性质,云计算租户也无须对IT资源按“从一而终”方式使用,完全可以从多个数据中心分布式租用资源(如混合云)。如此不仅可以有效降低Vendor-lock-in风险,而且还可以增加服务的可靠性与安全性。云计算的这些新特点要求作为服务使用的IT资源具有跨数据中心分布式动态快速可扩展与缩减的属性。只有对IT资源采用软件编程方法才有可能使IT资源具备这种动态属性。我们显然不可用程序编程技术直接让物理硬件“动”起来,只有当物理硬件被虚拟化为相应的逻辑部件后,我们才可以用软件技术对逻辑部件进行编程,让后者“动”起来。
       
        云计算所需的服务器虚拟化技术包含计算、存储、网络资源的虚拟化。这些IT资源的虚拟化就是要把处理计算、存储、通信的物理硬件设备如 CPU、磁盘、网络控制设备等物理器件通过软件“间接化”技术得到相应的逻辑部件。当前业界,无论草根游击队还是正规军,都已经在计算虚拟化 方面取得了不俗的成就,在草根方面,前面提到的开源云计算技术 Openstack, Cloudstack, Eucalyptus, OpenNebula, 等都是CPU虚拟化技术十分成功的应用。然而在网络虚拟化技术领域,至少在草根力量方面“同志们仍需努力”!网络虚拟化技术是实现跨数据中心分布式、混合云的关键技术。所谓软件定义的网络SDN技术完全依赖于网络虚拟化,只有当一个被虚拟化的逻辑网络完全不含有底层支撑物理网络由于置身于某个地点位置所带有的地址属性时(即,逻辑网络完全与底层支撑物理网络去除耦合),SDN才能真正有效实现,分布式部署软件的“草根”力量才能在云计算领域发挥巨大作用。
       
        道里云公司(www.daolicloud)全球首创研发出了具有自主知识产权的网络虚拟化架构(Network Virtualization Infrastructure,NVI)技术。NVI技术的工作原理基于如下重要观察:在虚拟化架构上,Hypervisor软件无需委托网桥(Hypervisor Bridge)或“虚拟”交换机(vSwitch)用以前地上IT集中式处理网络包元数据方法控制通信。所谓vSwitch,其实是在Hypervisor中用软件实现的物理交换机,与虚拟化技术中的“虚”毫无关系,请别搞错了,Hypervisor,但凡是直接跑在硬件上的,就仍然是一个纯物理部件。请注意:Hypervisor可以在虚拟机的虚拟网卡(vNIC)处,用分布式软件方法对该虚拟机实施网络控制。与网桥或vSwitch看到每一个虚拟机只有一个vNIC的惯性眼光不同, Hypervisor一定要认为每个虚拟机都有无限多个vNICs(就像它通常看到多个虚拟机的情况完全一样),不仅如此,Hypervisor还一定要认为每个vNIC上都只仅可插有一根单播(Unicast)网线,此处我必须着重强调,单播!与惯性眼光看到的那些连接虚拟机vNIC和服务器物理NIC的多播(Multicast)网线不同,利用单播网线控制通信完全不必再玩交换机集中式处理网络包地址元数据的过滤,标记,隧道,封包,等传统网络包游戏。避免了传统网络包游戏后,NVI技术可以用单播网线“编织”出一个逻辑网,干净彻底地去除了底层物理网络从网络包游戏带来的地址位置属性(是从交换机所在位置不可避免地带来的),于是,分布至vNIC处编程的SDN网络控制问题就简化为纯粹的高级语言if-then-else任务!值得注意的是:与vSwitch技术将网络包头部元数据(在控制平面内)和应用层数据(在数据平面内)集中到一起处理的“集中式正规军”网络包游戏技术不同,NVI技术的控制平面完全被“草根”分布到每一个vNIC处,可以简单用高级语言if-then-else编程处理,而数据平面的处理则仍然让(软的或硬的)交换机完成。由于NVI技术对网络控制平面与数据平面形成的干净彻底分离,处理数据流的交换机可以使用最低端的大路货产品,只要通就行!于是传统高端集中专业的物理网络设备完全被池化(pooling)为低附加值的大宗产品,这又是一个经典的“分布式草根游击队”战胜“集中式专业正规军”的玩法!
       
        得益于NVI技术网络虚拟化在逻辑网络与物理网络之间去除耦合问题的彻底解决,道里云公司仅用高级语言软件编程SDN方法,仅用大路货交换机“通”这一最低属性,实现了一个租户跨数据中心分布的,租户自助服务方式自定义的,具有任意拓普构造的,租户虚拟化网络与防火墙。如果租户防火墙策略规定某个虚拟机不得与其它盒子通信,分布在该虚拟机vNIC处的SDN防火墙软件就简单把相应的那个vNIC上的单播网线“拔掉”,根本就不必远道劳驾交换机去过滤丢弃网络包,集中到交换机处丢包多浪费宝贵的网络资源呀!道里云公司网页上有一个该防火墙产品的视频演示,欢迎有兴趣的同仁们点击观看: www.daolicloud

       
        我们坚信在云计算大背景下,本文解读的“草根游击队”技术(分布式,大宗硬件,开源软件,开放式社区创新技术交流)完全可以比“专业正规军” (少数品牌IT厂商出品集中式专用高规格硬件,封闭软件,失察生活方式改变而仍然将地上传统技术生搬硬套入云计算虚拟化架构中)做的更好、更多、更快、更省!具体在网络虚拟化及SDN技术方面,基于分布式单播网线软件实现的控制与数据分离处理的网络控制技术一定会在不久的将来击败基于集中式多播网线交换机实现的控制与数据不分离处理的网络控制技术!为了让这一天早日到来,道里云公司已经于2013年6月5日开放了NVI技术的全部源代码。道里云公司希望以自己的创新努力向业界做出贡献,并希望与开源社区、业界同仁们一起努力,将云计算做的更好!
        
        www.daolicloud
         

更多推荐

道里云公司网络虚拟化架构NVI技术开放源代码--序言