一种云计算系统的虚拟交换系统及其虚拟交换方法技术方案

技术编号:7340464 阅读:164 留言:0更新日期:2012-05-16 20:27
本发明专利技术公开了一种云计算系统的虚拟交换方法,本发明专利技术还涉及一种实现该方法的系统。本发明专利技术的系统由虚拟交换组件、虚拟接口、地址转换组件、网桥兼容组件和监控管理组件五部分组成,通过对数据报文的虚拟二层转发和地址转换实现虚拟机与外部网络的通信,虚拟机发生迁移时能够同步迁移虚拟机网络接口的状态和规则。本发明专利技术实现的虚拟交换系统,提供了高效的二层转发能力和地址转换能力,解决了云计算系统私有局域网中的虚拟机与外部网络通信、虚拟机网络接口状态和规则同步迁移的问题,无需额外的硬件设备,具有易用性高和成本低廉的优点。

【技术实现步骤摘要】

本专利技术涉及一种虚拟化技术,特别涉及一种云计算系统中的虚拟交换方法及其系统。
技术介绍
云计算(Cloud Computing)是由分布式处理、并行处理和网格计算演化发展出的一种商业计算模型。云计算的基本原理是构建大规模的分布式计算系统资源库,将系统的计算分布在系统资源池,统筹考虑整体系统的资源利用情况。云计算系统能够将资源切换到需要的应用上,根据需求获取计算能力、存储空间和各种软件服务,提高整个系统的设备利用率。云计算系统均采用虚拟化技术,在一台物理服务器上虚拟出多个虚拟计算机(虚拟机,Virtual Machine, VM),其上能同时运行多个独立的操作系统,这些客户操作系统 (Guest OS)通过虚拟机管理器(Virtual Machine Monitor,VMM,也称为 Hypervisor)来访问物理服务器的资源。云计算系统的用户通过网络来远程访问运行在物理服务器上的虚拟机。现有的云计算系统,一般使用Iinux操作系统的网桥模块,建立虚拟网桥,虚拟机用桥接的方式与外部网络进行通信。目前云计算系统的虚拟机与外部网络通信的方式见图Io在图1所示的虚拟机通信技术中,要在物理服务器上创建虚拟网桥,虚拟机部署到物理服务器上时,操作系统会为虚拟机创建虚拟网络接口,将虚拟机网络接口绑定到虚拟网桥上,组成一个虚拟交换系统,虚拟机以桥接的方式与外部网络进行通信。如图1所示的虚拟机通信技术中,虚拟机发生迁移时,要从源物理服务器的虚拟网桥上注销虚拟机网络接口,在目的物理服务器上部署虚拟机完成后,将虚拟机网络接口注册到目的物理服务器的虚拟网桥上。现有技术只能实现虚拟机网络接口在目的物理服务器上的重新注册,无法同时迁移虚拟机网络接口的状态和规则。现有的虚拟机通信技术可以对虚拟机建立私有局域网,但不具备对数据报文进行路由转发的能力,因此被划入私有局域网的虚拟机要访问外部网络必须添加显式的外部连接通道,如路由器。如图1所示,现有技术需要配置一台路由器与外部网络相连。部署在物理服务器上的虚拟机通过这一路由器访问外部网络。在该路由器上需要配置网络地址转换(NAT)规则。在现有技术中,虚拟机把路由器与物理服务器相连的接口设置为网关。虚拟机到外部网络的数据报文都被转发到路由器。路由器进行地址转换,查找路由后把数据报文发送到外部网络。从外部网络发来的数据报文,路由器进行地址转换,然后转发给物理服务器,由物理服务器上的虚拟网桥进行二层虚拟交换。该方案的缺点是需要添加路由设备,从而增加了用户开销。访问外部网络时使用的网络地址转换(NAT)需要额外的用户配置。虚拟机发生迁移时,不能同步迁移虚拟机网络接口的状态和规则,需要用户重新配置,增加了用户的维护难度。
技术实现思路
鉴于现有技术的缺陷,本专利技术的目的是提出一种云计算系统的虚拟交换方法以及实现该方法的系统,其一个目的是提供了一种虚拟机接入外部网络的方法,使用户不必添加额外的路由设备。本专利技术的另一个目的是提供一种同步迁移虚拟机网络接口的状态和规则的方法, 当虚拟机发生迁移时,虚拟机网络接口的状态和规则也能被同步迁移。为了实现上述目的,本专利技术提供了一种虚拟机通过虚拟交换系统接入外部网络的方法,包括以下步骤(1)虚拟机启动后,将虚拟机网络接口注册到节点服务器上的虚拟交换组件,建立虚拟机私有局域网;(2)所述虚拟交换组件和节点服务器上的地址转换组件之间建立虚拟接口;(3)所述虚拟交换组件对来自虚拟机的数据报文进行二层交换转发,发送给所述虚拟接口,所述虚拟接口解除数据报文的链路层封装后发送给所述地址转换组件,所述地址转换组件对数据报文进行地址转换后发送到外部网络;(4)所述地址转换组件对来自外部网络的数据报文进行地址转换后发送给所述虚拟接口,所述虚拟接口对数据报文进行链路层封装后发送给所述虚拟交换组件,所述虚拟交换组件进行二层交换转发,将数据报文发送给虚拟机;(5)完成虚拟机与外部网络之间的数据报文交互转发。其中,所述步骤C3)包含如下具体步骤(31)所述虚拟交换组件根据数据报文的目的MAC地址查找对应的虚拟机网络接口, 进行二层交换转发,将数据报文发送给所述虚拟接口 ;(32)所述虚拟接口解除数据报文的链路层封装,将数据报文发送给所述地址转换组件;(33)所述地址转换组件将数据报文的源地址/端口由虚拟机的地址/端口转换为节点服务器的地址/端口,然后根据数据报文的目的地址查找路由表,获取下一跳的出口 ;(34)调用物理网络接口驱动,将数据报文发送到外部网络。其中,所述步骤(4)包含如下具体步骤(41)物理网络接口收到外部网络发来的数据报文,发送给所述地址转换组件;(42)所述地址转换组件将数据报文的目的地址/端口由节点服务器的地址/端口转换为虚拟机的地址/端口,发送给所述虚拟接口 ;(43)所述虚拟接口查找ARP获取链路层封装信息,对数据报文进行链路层封装,将数据报文发送给所述虚拟交换组件;(44)所述虚拟交换组件根据数据报文的目的MAC地址查找对应的虚拟机网络接口, 进行二层交换转发,数据报文发送给虚拟机。本专利技术还提供了一种同步迁移虚拟机网络接口的状态和规则的方法,包括以下步骤(1)在物理服务器上部署虚拟交换系统,部署过程中指定管理服务器及其IP地址;在管理服务器上安装监控管理组件,所述监控管理组件启动后创建一个线程监听端口 ;(2)将虚拟机的网络接口注册到节点服务器上的虚拟交换组件后,节点服务器上的虚拟交换组件能通过上述虚拟交换方法与外部网络连接,并由外部网络通过该线程监听端口与所述监控管理组件建立连接,以将虚拟机ID发送给所述监控管理组件,所述监控管理组件为虚拟机建立一个缓存块;(3)虚拟机发生迁移时,源节点服务器上的虚拟交换组件与云计算管理服务器上的监控管理组件建立连接,所述虚拟交换组件将虚拟机网络接口的状态和规则发给所述监控管理组件的缓存块进行缓存;(4)源节点服务器上的所述虚拟交换组件注销虚拟机网络接口;(5)虚拟机迁移完成后,目的节点服务器上的所述虚拟交换组件对迁移后的虚拟机网络接口进行注册;(6)目的节点服务器上的所述虚拟交换组件与所述监控管理组件再次建立连接,获取监控管理组件所保存的虚拟机网络接口的状态和规则,进行设定。本专利技术还提供一种云计算系统的虚拟交换系统,所述的应用系统包括以下部分 虚拟交换组件用于注册虚拟机网络接口,对数据报文进行二层交换转发;地址转换组件对来自虚拟接口的数据报文,将数据报文的源地址/端口由虚拟机的网络地址/端口转换为物理服务器的地址/端口,发送到外部网络;对来自外部网络的数据报文,将数据报文的目的地址/端口由物理服务器的网络地址/端口转换为虚拟机的地址 /端口,发送到虚拟接口 ;虚拟接口 建立于所述虚拟交换组件与所述地址转换组件之间,对来自虚拟机的数据报文,解除链路层封装;对来自外部网络的数据报文,进行链路层封装。此外,所述监控管理组件能提供图形化界面,供用户查看所述虚拟交换组件的运行状态、配置规则、数据流量等信息。该虚拟交换组件能与该监控管理组件连接以同步虚拟机网络接口的状态和规则,当虚拟机发生迁移时,源节点服务器上的虚拟交换组件通过外部网络与所述监控管理组件连接,并将虚拟机网络接口的状态和规则发送到监控管组组件进行缓存,而当虚拟机迁移完本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:兰雨晴杨文宋潇豫张永军夏颖
申请(专利权)人:中标软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术