一种自适应虚拟机间的通信方法

文档序号:9828259阅读:461来源:国知局
一种自适应虚拟机间的通信方法
【技术领域】
[0001]本发明涉及云计算网络通信领域,特别是一种自适应虚拟机间的通信方法。
【背景技术】
[0002]云计算利用虚拟化技术与服务整合提高了服务器的资源利用率,降低了服务的能耗,同时通过动态扩展或收缩服务能力来满足用户对于资源需求的快速变化。在这种场景下,需要把运行相同应用或协作完成相同任务的虚拟机划分到同一个子网里面,同时确保不同子网之间的虚拟机之间不能相互通信。另外,虚拟化使得相互通信的主机数量变多,月艮务器上虚拟机之间的通信非常频繁。
[0003]虚拟机之间的通信机制是通过传统的虚拟网络实现的,相对于传统物理网络来说,还需要承载物理机管理的网络压力,因此这种通信方式难以满足虚拟机之间高性能通信的要求。

【发明内容】

[0004]本发明解决的技术问题在于提供一种自适应的高效的虚拟机间的通信方法,解决了传统网络通信方法的低效率问题。
[0005]本发明解决上述技术问题的技术方案是:
[0006]所述的方法包括以下步骤:
[0007]步骤1:对于每一应用分配一个安全标记;
[0008]步骤2:把运行相同应用的虚拟机划分到一个应用组,应用组使用应用分配的安全标记;
[0009]步骤3:当属于同一个应用组的虚拟机位于同一台物理机上时,通过共享内存交换信息;
[0010]步骤4:当属于同一个应用组的虚拟机位于不同物理机上时,根据应用分配的安全标记,对应用中虚拟机向外发送的数据帧设置该安全标记;
[0011 ]步骤5:对进入虚拟机的数据帧删除该安全标记。
[0012]所述安全标记指的是数据帧中的一个ID,用于区别不同应用组。
[0013]所述通过共享内存交换信息指的是虚拟机管理器中的虚拟机中介通过超级调用在物理机上建立起共享内存,通过共享内存实现数据的传递;连接建立则不需要按照SockeM^流程进行封装、传输与解包,能提高通信的性能。
[0014]所述数据帧设置安全标记指的是当应用组内的虚拟机通过物理网卡发出数据帧之前会被加上标识该应用组的安全标记,因此物理网卡能区别属于不同应用组的数据帧。
[0015]所述数据帧删除安全标记指的是当物理网卡转发数据帧到逻辑子网口的时候,如果该数据帧所携带的安全标记和该应用组的安全标记相同,则物理网卡去掉该数据帧的安全标记以便逻辑子网口能够识别;如果该数据帧的安全标记同应用组的安全标记不同,则物理网卡不会去掉该数据帧的安全标记,逻辑子网口无法识别带有安全标记的数据帧,将直接丢弃这些数据帧。
[0016]本发明的方法能产生如下的有益效果:
[0017]1、本发明方法的虚拟网络是跨物理机的,不仅同一台物理机上的虚拟机可以分配到同一个应用组内,位于不同物理机上的虚拟机也可以分配到同一个应用组内,因此对于虚拟机所处的物理位置没有要求,便于对虚拟机的规划和管理。
[0018]2、本发明的方法能提高虚拟资源的利用率,应用组内的虚拟机能够动态的创建和删除,在服务高峰期能够创建更多的虚拟机以满足服务要求,而在服务低谷期能把空闲的虚拟机资源释放给其它应用组,合理的调度有限的资源,提高资源的利用率。
[0019]3、本发明的方法是一种高效的通信方法,由于同一个应用组里的虚拟机可能位于不同的物理服务器上,虚拟机需要根据其实际物理位置选择不同的通信机制。当虚拟机位于同一台物理机时,采用共享内存机制进行通信,不需要进行Socket连接,提高了通信的性會K。
【附图说明】
[0020]下面结合附图对本发明进一步说明:
[0021]图1为本发明的网络部署结构图;
[0022]图2为本发明的一个应用组的划分示意图;
[0023]图3为本发明的虚拟机之间的通信模型。
【具体实施方式】
[0024]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0025]下面以Xen虚拟化为例说明具体的实现方法。如图1、2、3所示,首先要对虚拟网络进行配置,如图2所示划分3个应用组,应用组之间的通信隔离和应用组的跨物理机实现。其中,划分应用组是通过Xen上的网桥(Bridge)来实现的,Xen上的Bridge是被创建出来的逻辑设备,在Xen上通过多个Bridge把不同的虚拟机关联起来构成一个个逻辑的VLAN,以此实现不同应用组的划分。
[0026]如图2所示,通过对进出虚拟机的网络帧进行安全标记管理来实现的隔离不同应用组之的通信物理机的网口ethO上创建了多个逻辑子网口,这些逻辑子网口关联到不同应用组的Bridge设备,同虚拟机在虚拟机管理(Hypervisor)中的虚拟网络(vif设备)桥接起来。当应用组内的虚拟机通过ethO发出数据帧之前会被加上标识该应用组ID的安全标记(以下简称Tag),因此ethO能区别属于不同应组的数据帧。而当ethO转发数据帧到逻辑子网口的时候,如果该数据帧所携带的Tag和该应用组的ID相同,则ethO去掉该数据帧的Tag以便逻辑子网口能够识别;如果该数据帧的Tag同应用组的ID不同,则ethO不会去掉该数据帧的Tag,逻辑子网口无法识别带有Tag的数据帧,将直接丢弃这些数据帧。这样就保证了应用组内的消息只能被应用组内的虚拟机所接收,实现了隔离不同应用组的目的。
[0027]至于跨物理机之间的通信,需要在ethO上使用相同的安全标记实现,不同物理机上的应用组通过Bridge关联到ethO上ID相同的逻辑子网口上,这些不同的物理机上的应用组就属于同一个应用组,会使用相同的安全标记。如图2所示,虚拟机3和虚拟机4还有虚拟机5都通过Bridge桥接到各自物理主机上的逻辑子网口 eth0.10,它们都属于同一个应用组10,相互之间能够通信,同时无法同其它应用组内的虚拟机通信,如属于组30的虚拟机I无法与属于组1的虚拟机3通信。
[0028]自适应的通信通过使用共享内存的机制来实现同一台物理服务器上虚拟资源之间的通信,提高系统通信性能。
[0029]如图3所示,当虚拟机I和虚拟机2通信时,虚拟机I的通信代理向通信中介发起查询请求,通信中介查询自己维护的表格,如果虚拟机I和虚拟机2位于同一台物理机上,且应用组ID相同,则通信中介会告知虚拟机I其通信的目标虚拟机(虚拟机2)的Domain id,接着虚拟机I将自己内存页的访问权限授予虚拟机2,虚拟机2借助HypercalI将这些内存页映射到自己的地址空间中。这样,共享内存就建立起来了。
【主权项】
1.一种自适应虚拟机间的通信方法,其特征在于:所述的方法包括以下步骤: 步骤1:对于每一应用分配一个安全标记; 步骤2:把运行相同应用的虚拟机划分到一个应用组,应用组使用应用分配的安全标记; 步骤3:当属于同一个应用组的虚拟机位于同一台物理机上时,通过共享内存交换信息; 步骤4:当属于同一个应用组的虚拟机位于不同物理机上时,根据应用分配的安全标记,对应用中虚拟机向外发送的数据帧设置该安全标记; 步骤5:对进入虚拟机的数据帧删除该安全标记。2.根据权利要求1所述的方法,其特征在于:所述安全标记指的是数据帧中的一个ID,用于区别不同应用组。3.根据权利要求1所述的方法,其特征在于,所述通过共享内存交换信息指的是虚拟机管理器中的虚拟机中介通过超级调用在物理机上建立起共享内存,通过共享内存实现数据的传递;连接建立则不需要按照Socket的流程进行封装、传输与解包,能提高通信的性能。4.根据权利要求2所述的方法,其特征在于,所述通过共享内存交换信息指的是虚拟机管理器中的虚拟机中介通过超级调用在物理机上建立起共享内存,通过共享内存实现数据的传递;连接建立则不需要按照Socket的流程进行封装、传输与解包,能提高通信的性能。5.根据权利要求1至4任一项所述的方法,其特征在于,所述数据帧设置安全标记指的是当应用组内的虚拟机通过物理网卡发出数据帧之前会被加上标识该应用组的安全标记,因此物理网卡能区别属于不同应用组的数据帧。6.根据权利要求1至4任一项所述的方法,其特征在于,所述数据帧删除安全标记指的是当物理网卡转发数据帧到逻辑子网口的时候,如果该数据帧所携带的安全标记和该应用组的安全标记相同,则物理网卡去掉该数据帧的安全标记以便逻辑子网口能够识别;如果该数据帧的安全标记同应用组的安全标记不同,则物理网卡不会去掉该数据帧的安全标记,逻辑子网口无法识别带有安全标记的数据帧,将直接丢弃这些数据帧。7.根据权利要求5所述的方法,其特征在于,所述数据帧删除安全标记指的是当物理网卡转发数据帧到逻辑子网口的时候,如果该数据帧所携带的安全标记和该应用组的安全标记相同,则物理网卡去掉该数据帧的安全标记以便逻辑子网口能够识别;如果该数据帧的安全标记同应用组的安全标记不同,则物理网卡不会去掉该数据帧的安全标记,逻辑子网口无法识别带有安全标记的数据帧,将直接丢弃这些数据帧。
【专利摘要】本发明涉及云计算网络通信领域,特别是一种自适应虚拟机间的通信方法。本发明首先对于每一应用分配一个安全标记;然后把运行相同应用的虚拟机划分到一个应用组,应用组使用应用分配的安全标记;当属于同一个应用组的虚拟机位于同一台物理机上时,通过共享内存交换信息;当属于同一个应用组的虚拟机位于不同物理机上时,根据应用分配的安全标记,对应用中虚拟机向外发送的数据帧设置该安全标记并对进入虚拟机的数据帧删除该安全标记。本发明解决了传统网络虚拟机之间通信低效率问题;可以用于虚拟机间的通信。
【IPC分类】H04L12/46, H04L29/06
【公开号】CN105592079
【申请号】CN201510940140
【发明人】莫展鹏, 杨松, 季统凯
【申请人】国云科技股份有限公司
【公开日】2016年5月18日
【申请日】2015年12月15日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1