一种虚拟机vm跨网迁移后的数据处理方法、装置及系统的制作方法

文档序号:7988607阅读:358来源:国知局
一种虚拟机vm跨网迁移后的数据处理方法、装置及系统的制作方法
【专利摘要】本发明公开了一种虚拟机VM跨网迁移后的数据处理方法、装置及系统,包括:转发设备识别接收到的需要进行转发的数据的源IP地址和/或目的IP地址;转发设备将源IP地址和/或目的IP地址与VM迁移表进行匹配;当目的IP地址与VM迁移表中的迁移前地址相匹配时,转发设备将需要进行转发的数据的目的IP地址修改为主IP地址,并转发需要进行转发的数据;当源IP地址与VM迁移表中的迁移后地址相匹配时,转发设备将需要进行转发的数据的源IP地址修改为主IP地址,并转发需要进行转发的数据,实现了虚拟机的跨子网迁移,使得迁移后的IP地址可以灵活配置。
【专利说明】一种虚拟机VM跨网迁移后的数据处理方法、装置及系统
【技术领域】
[0001]本发明涉及通信【技术领域】,尤其涉及一种虚拟机VM跨网迁移后的数据处理方法、装置及系统。
【背景技术】
[0002]数据中心是各种IT应用服务的提供中心,集成了数据计算、交换、存储网络。随着数据中心业务的扩张、CAPEX和OPEX的急剧增加,虚拟化技术的应运而生,需要通过将物理资源转变为逻辑上可以管理的资源,以打破物理结构之间的壁垒,从而使所有的资源都透明地运行在各种各样的物理平台上,且使资源管理也都将按逻辑方式来进行,进一步实现资源的全自动化分配。
[0003]应用服务器虚拟化技术,是指一个PS (Physics Servers,物理服务器)可以虚拟出多个虚拟机(Virtual Machine,VM),其中,一台PS上可以同时运行若干个VM。它的一个重要功能是满足VM迁移的需求,VM可以在不关闭的前提下从一台物理服务器在线迁移到另一台物理服务器,其内存和业务建立状态在迁移前后保持一致。为了保持既有数据连接,目前的虚拟机迁移技术要求VM迁移前后的IP地址保持一致。对于一个启用三层功能的数据中心,由于存在三层子网边界问题,VM将不可以进行跨子网的迁移。如果消除子网壁垒,则要求VM处在同一个二层域内,但这又会导致网络中出现大量的广播报文,使得二层网络不具备灵活扩展性。为了解决数据中心传统二层和三层组网的问题,又提出了一些虚拟大二层网络技术,大致分为两派:以NVGRE、VXLAN为代表的IT方案在三层网络内通过MAC inIP的隧道方式实现二层互通,而以TRILL为代表的CT方案则借鉴路由协议思想,通过动态协议扩展实现大二层网络。
[0004]SDN (Software Defined Network,软件定义网络)是一种新兴的可编程网络架构,目的是实现控制与转发分离。过去和网络设备间耦合的网络控制功能被转移到了集中化的服务器,使得对于上层应用,底层网络设施可以抽象成一个逻辑或虚拟实体。SDN架构从上到下可以分为应用层、控制层和基础设施层三层。中间的控制层物理服务器(群)和其上运行的SDN控制软件,完成网络控制功能。控制层下的基础设施层为网络设备,完成数据平面转发。控制层通过标准的协议接口(如OpenFlow)与基础设施层通信,采用OpenFlow时网络设备通常为支持OpenFlow的交换机。控制层向上通过开放API与应用层通信,这样不同的应用通过控制层开放的管理能力就可以控制设备的报文转发功能。
[0005]OpenFlow交换机通过使用流表来处理数据,流表中的每一条目都定义了一种数据流及其操作方式。流表条目包括三部分:匹配字段设定匹配条件以定义某一数据流,操作字段定义交换机应如何处理数据包,统计字段记录数据流的包数、字节数、时间等统计信息。典型的流表条目结构如图1所示。OpenFlow交换机还应具备安全的接口通过OpenFlow协议与控制层双向传递指令和数据包。
[0006]然而,随着数据中心业务扩张和租户的逐步引入,以及管理和维护的需要,租户极有可能拥有多个子网,那么就需要考虑VM跨越子网边界从一个子网内的一台物理服务器迁移到另一个子网内的一台物理服务器的问题。对于不改变IP地址的前提,为了实现VM迁移,网络需要具备大二层特性,而这将带来广播泛滥的扩展性问题。另外,对于应用NVGRE、VXLAN等技术,将会使得服务器需要参与转发过程,增加了其复杂性;对于应用TRILL等技术,则需要对二层转发方式进行整体的修改。

【发明内容】

[0007]本发明实施例的目的在于提供一种虚拟机VM跨网迁移后的数据处理方法、装置及系统,通过将VMM记录的不同映射关系发送到NCS,使得NCS下发了不同的数据转发策略,实现了 VM的跨子网迁移。
[0008]为了达到上述目的,本发明实施例提供了一种虚拟机VM跨网迁移后的数据处理方法,包括:
[0009]转发设备识别接收到的需要进行转发的数据包的源IP地址和/或目的IP地址;
[0010]所述转发设备将所述源IP地址和/或目的IP地址与VM迁移表进行匹配;
[0011 ] 当所述目的IP地址与所述VM迁移表中的迁移前地址相匹配时,所述转发设备将所述需要进行转发的数据的目的IP地址修改为主IP地址,并转发所述需要进行转发的数据;
[0012]当所述源IP地址与所述VM迁移表中的迁移后地址相匹配时,所述转发设备将所述需要进行转发的数据的源IP地址修改为主IP地址,并转发所述需要进行转发的数据。
[0013]本发明实施例提供了一种转发设备,该设备包括:
[0014]识别模块,用于识别接收到的需要进行转发的数据包的源IP地址和/或目的IP地址;
[0015]匹配模块,用于将所述源IP地址和/或目的IP地址与VM迁移表进行匹配;
[0016]转发模块,用于当所述目的IP地址与所述VM迁移表中的迁移前地址相匹配时,所述转发设备将所述需要进行转发的数据的目的IP地址修改为主IP地址,并转发所述需要进行转发的数据,或当所述源IP地址与所述VM迁移表中的迁移后地址相匹配时,所述转发设备将所述需要进行转发的数据的源IP地址修改为主IP地址,并转发所述需要进行转发的数据。
[0017]本发明实施例提供了一种虚拟机VM跨网迁移后的数据处理系统,包括:转发设备,以及NCS;
[0018]转发设备,用于识别接收到的需要进行转发的数据包的源IP地址和/或目的IP地址;将所述源IP地址和/或目的IP地址与VM迁移表进行匹配;当所述目的IP地址与所述VM迁移表中的迁移前地址相匹配时,所述转发设备将所述需要进行转发的数据的目的IP地址修改为主IP地址,并转发所述需要进行转发的数据;当所述源IP地址与所述VM迁移表中的迁移后地址相匹配时,所述转发设备将所述需要进行转发的数据的源IP地址修改为主IP地址,并转发所述需要进行转发的数据;判断接收到的需要进行转发的数据的转发方向;感知所述VM发生迁移;
[0019]NCS,用于接收VMM发送的通知消息;向所述转发设备发送所述VM发生迁移的通知消息。
[0020]与现有技术相比,本发明实施例所提出的技术方案具有以下优点:[0021]通过应用本发明的技术方案,转发设备识别接收到的需要进行转发的数据的源IP地址和/或目的IP地址,并将源IP地址和/或目的IP地址与VM迁移表进行匹配,当目的IP地址与VM迁移表中的迁移前地址相匹配时,将需要进行转发的数据的目的IP地址修改为主IP地址,并转发需要进行转发的数据,当源IP地址与VM迁移表中的迁移后地址相匹配时,将需要进行转发的数据的源IP地址修改为主IP地址,并转发需要进行转发的数据,实现了虚拟机VM的跨子网迁移,使得迁移后的IP地址可以灵活配置。
【专利附图】

【附图说明】
[0022]图1是现有技术中OpenFlow交换机下的典型流表条目结构图;
[0023]图2是本发明实施例提供的虚拟机迁移的流程示意图;
[0024]图3是本发明实施例一提供的虚拟机VM生成的流程示意图;
[0025]图4是本发明实施例二提供的虚拟机VM由子网A迁移到子网B的流程示意图;
[0026]图5是本发明实施例三提供的虚拟机VM由子网B迁移到子网C的流程示意图;
[0027]图6是本发明实施例四提供的虚拟机VM由子网C迁移到子网A的流程示意图;
[0028]图7是本发明实施例五提供的虚拟机VM删除的流程示意图;
[0029]图8是本发明实施例六提供的在传统网络架构下,虚拟机VM由子网A迁移到子网B的流程示意图;
[0030]图9是本发明实施例提供的一种转发设备的结构示意图。
【具体实施方式】
[0031]下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0032]由于每一个子网上都有一台PS,因此在本发明实施例中,不同的子网A、子网B、子网C上的PS分别为PS1、PS2、PS3,VM的主IP地址为VM建立时获取的初始IP地址。
[0033]如图2所示,为本发明实施例提供的虚拟机VM跨网迁移后的数据处理的方法流程图,该流程包括:
[0034]步骤201,转发设备识别接收到的需要进行转发的数据包的源IP地址和/或目的IP地址。
[0035]由于本发明实施例所提出的数据处理方法是应用在发生了 VM跨网迁移的场景中,因此,需要通过本步骤来识别哪些数据是涉及发生迁移的VM的,包括发送给该VM,以及该VM发送的数据。
[0036]由于网络侧并不知道VM因发生跨网迁移而导致了自身IP地址的变化,因此,发送给该VM的数据的目的IP地址仍旧会是发生迁移之前的IP地址,如果转发设备不作任何处理,由于该IP地址所对应的VM已经发生了迁移,则该数据将无法转发或转发失败;相反地,迁移后的VM所发送的数据的源IP地址变更为了迁移之后的IP地址,如果转发设备不作任何处理而直接转发,则接收到该数据的设备会无法确定数据的发送端为该VM,从而导致会话出错,因此,转发设备需要找到上述两种数据,并进行进一步处理。[0037]在具体的应用场景中,本步骤的处理包括两种处理方案:
[0038]方案一、识别所有数据的源IP地址和目的IP地址。
[0039]转发设备识别接收到的所有需要进行转发的数据的源IP地址和目的IP地址。
[0040]这样的处理方案,是对所有需要进行转发的数据的无差别识别,无需分辨数据发送方向。
[0041 ] 方案二、根据不同的数据转发方向,确定所识别的地址类型。
[0042]这样的处理方案,则是根据数据发送方向,有选择的进行相应的地址类型的识别,对于对所有需要进行转发的数据的无差别识别,无需分辨数据发送方向。
[0043]首先,转发设备判断接收到的需要进行转发的数据的转发方向。
[0044]如果判断需要进行转发的数据是由VM发送给网络侧的,转发设备识别需要进行转发的数据的源IP地址。
[0045]如果判断需要进行转发的数据是由网络侧发送给VM的,转发设备识别需要进行转发的数据的目的IP地址。
[0046]需要说明的是,在实际应用中,可以根据具体的场景需要选择应用上述的哪种方案,这样的变化并不会影响本发明的保护范围。
[0047]步骤202,建立VM迁移表,具体包括:
[0048]转发设备在感知到VM发生迁移后,获取VM的主IP地址和迁移后的IP地址,以主IP地址为迁移前地址,以VM迁移后的IP地址为迁移后地址,建立VM迁移表。
[0049]具体的,考虑到VM连续进行迁移的可能性,VM迁移表的建立方式中可以进一步引入覆盖更新机制,具体说明如下:
[0050]当转发设备确定需要进行VM迁移表的建立处理时,首先识别当前已经建立的各VM迁移表,判断是否存在迁移后地址与VM迁移前的IP地址相一致的VM迁移表,即判断该VM之前是否已经存在了迁移记录。
[0051]如果判断结果为是,即该VM在之前已经进行过迁移,而本方案为了保证会话的正常进行,只需要记录该VM迁移前的IP地址,以及最后一次迁移之后的IP地址,而对中间状态的IP地址则不需要进行记录,因此,转发设备以VM迁移后的IP地址替换识别到的VM迁移表的迁移后地址,更新VM迁移表。
[0052]如果判断结果为否,即该VM在之前没有进行过迁移,需要建立新的迁移记录,因此,转发设备以主IP地址作为迁移前地址,以VM迁移后的IP地址为迁移后地址,建立新的VM迁移表。
[0053]在具体应用场景中,转发设备感知VM发生迁移的方法,具体包括:
[0054]NCS (Network Control System,网络控制系统)发送VM发生迁移的通知消息到转发设备;
[0055]VM迁移后上报VMM,上报信息至少包含VM的主IP地址和VM迁移后的IP地址,VMM通过和NCS之间的接口通知NCS对转发设备发送VM发生迁移的通知消息;
[0056]VM发生迁移后直接上报迁移信息给转发设备,上报信息至少包含VM的主IP地址和VM迁移后的IP地址。
[0057]在实际的应用场景中,具体采用哪种或哪几种方式进行迁移感知可以根据实际需要进行选择和设定,这样的变化并不会影响本发明的保护范围。[0058]步骤203,转发设备将源IP地址和/或目的IP地址与VM迁移表进行匹配。
[0059]当目的IP地址与VM迁移表中的迁移前地址相匹配时,则表明该需要进行转发的数据是网络侧发送给迁移后的VM的,执行步骤204 ;
[0060]当源IP地址与VM迁移表中的迁移后地址相匹配时,则表明该需要进行转发的数据是迁移后的VM发送给网络侧的,执行步骤205 ;
[0061]当源IP地址和目的IP地址与VM迁移表中的地址信息均不相匹配时,则表明该需要进行转发的数据与迁移后的VM无关,可能是网络侧与未发生迁移的VM之间交互的数据等,执行步骤206。
[0062]步骤204,转发设备将需要进行转发的数据的目的IP地址修改为主IP地址,并转发需要进行转发的数据。
[0063]步骤205,转发设备将需要进行转发的数据的源IP地址修改为主IP地址,并转发需要进行转发的数据。
[0064]步骤206、转发设备直接转发需要进行转发的数据。
[0065]由于该需要进行转发的数据与迁移后的VM无关,即数据的发送端和接收端没有发生变化,只需要正常转发即可,无需进行地址修改。
[0066]在本实施例中,转发设备识别接收到的需要进行转发的数据的源IP地址和/或目的IP地址;转发设备将源IP地址和/或目的IP地址与VM迁移表进行匹配;当目的IP地址与VM迁移表中的迁移前地址相匹配时,转发设备将需要进行转发的数据的目的IP地址修改为主IP地址,并转发需要进行转发的数据;当源IP地址与VM迁移表中的迁移后地址相匹配时,转发设备将需要进行转发的数据的源IP地址修改为主IP地址,并转发需要进行转发的数据,实现了虚拟机VM的跨子网迁移,使得迁移后的IP地址可以灵活配置。
[0067]下面以几个具体的实施例分别对上述本发明中不同应用场景下的VM生成、迁移以及删除过程做详细的阐述,但并不局限于下述实施例。由于每一台PS上可以同时运行若干个VM,下述本发明实施例中以一台VM来做具体的阐述。
[0068]当本发明应用于SDN网络架构下,该转发设备可以是交换机,下述为本发明实施例中的VM生成、迁移以及删除的过程。
[0069]实施例一
[0070]参见图3,为本发明实施例提供的虚拟机VM生成的流程示意图,该流程可包括:
[0071]步骤301,PSl根据VMM的指令创建VM。
[0072]该步骤中,VMM向PSl发送一个VM的创建指令,PSl根据该指令创建VM。
[0073]其中,VMM是指由虚拟机管理员操作的集中化管理平台,与服务器交互来实现对虚拟机的管理,从而完成虚拟机的创建、删除和迁移等指令的下发,并通过接口与NCS进行信息交互;
[0074]NCS是指由网络管理员操作的集中化管理平台,与交换机交互来完成转发策略的下发,以及对交换机上报信息的处理,并通过接口与VMM进行信息交互。
[0075]步骤302,PSl在创建VM后,分配IP地址给该VM,该IP地址为VM的主IP地址。
[0076]其中,由于VM是新创建的,并没有做过任何的迁移,所以将此IP地址作为该VM的主IP地址,设此主IP地址为10.1.0.1。
[0077]步骤303,PSl根据该创建后的IP地址发送通告,以告知其主IP地址。[0078]步骤304,VMM在接收到该通告后,记录该VM及其IP地址,并发送通知消息到NCS,以使NCS得到该VM创建的消息。
[0079]该步骤中,NCS得到VM创建的消息,可以是VMM通过与NCS间的接口发送消息得到的,还可以由与NCS连接的具备虚拟感知功能的接入交换机进行上报得到的。
[0080]步骤305,NCS根据获取的该通知消息下发数据发送策略到交换机S0。
[0081]具体的,NCS在获取到该通知消息后,根据该通知消息下发流表条目。
[0082]其中,由于与VM、NCS连接的交换机有若干个,此处以其中的一个交换机SO做具体阐述,下表为交换机SO的流表条目。
[0083]表1交换机SO的流表条目
[0084]
【权利要求】
1.一种虚拟机VM跨网迁移后的数据处理方法,其特征在于,包括: 转发设备识别接收到的需要进行转发的数据的源IP地址和/或目的IP地址; 所述转发设备将所述源IP地址和/或目的IP地址与VM迁移表进行匹配; 当所述目的IP地址与所述VM迁移表中的迁移前地址相匹配时,所述转发设备将所述需要进行转发的数据的目的IP地址修改为主IP地址,并转发所述需要进行转发的数据;当所述源IP地址与所述VM迁移表中的迁移后地址相匹配时,所述转发设备将所述需要进行转发的数据的源IP地址修改为主IP地址,并转发所述需要进行转发的数据。
2.如权利要求1所述的方法,其特征在于,所述转发设备识别接收到的需要进行转发的数据包的源IP地址和/或目的IP地址,具体包括: 所述转发设备识别接收到的所有需要进行转发的数据的源IP地址和目的IP地址。
3.如权利要求1所述的方法,其特征在于,所述转发设备识别接收到的需要进行转发的数据包的源IP地址和/或目的IP地址,具体包括: 所述转发设备判断接收到的需要进行转发的数据的转发方向; 如果判断所述需要进行转发的数据是由所述VM发送给网络侧的,所述转发设备识别所述需要进行转发的数据的源IP地址; 如果判断所述需要进行转发的数据是由网络侧发送给VM的,所述转发设备识别所述需要进行转发的数据的目的IP地址。
4.如权利要求1所述的方法,其特征在于,所述转发设备将所述源IP地址和/或目的IP地址与VM迁移表进行匹配之前,还包括: 当所述转发设备感知到所述VM发生迁移后,所述转发设备获取所述VM的主IP地址和迁移后的IP地址; 所述转发设备以所述主IP地址作为迁移前地址,以所述VM迁移后的IP地址为迁移后地址,建立VM迁移表。
5.如权利要求4所述的方法,其特征在于,所述转发设备感知到所述VM发生迁移的方法,具体包括: 接收网络控制系统NCS发送的所述VM发生迁移的通知消息。
6.如权利要求4所述的方法,其特征在于,所述转发设备感知到所述VM发生迁移的方法,具体包括: 接收网络控制系统NCS发送的所述VM发生迁移的通知消息,所述通知消息中携带了当所述VM迁移后上报虚拟机管理系统VMM,上报信息至少包含所述VM的主IP地址和所述VM迁移后的IP地址,所述VMM通过和NCS之间的接口向所述NCS发送的通知消息。
7.如权利要求4所述的方法,其特征在于,所述转发设备感知到所述VM发生迁移的方法,具体包括: 接收所述VM发生迁移后直接上报的迁移信息,上报信息至少包含所述VM的主IP地址和所述VM迁移后的IP地址。
8.一种转发设备,其特征在于,包括: 识别模块,用于识别接收到的需要进行转发的数据的源IP地址和/或目的IP地址; 匹配模块,用于将所述源IP 地址和/或目的IP地址与VM迁移表进行匹配; 转发模块,用于当所述目的IP地址与所述VM迁移表中的迁移前地址相匹配时,所述转发设备将所述需要进行转发的数据的目的IP地址修改为主IP地址,并转发所述需要进行转发的数据,或当所述源IP地址与所述VM迁移表中的迁移后地址相匹配时,所述转发设备将所述需要进行转发的数据的源IP地址修改为主IP地址,并转发所述需要进行转发的数据。
9.如权利要求8所述的转发设备,其特征在于,所述识别模块,具体用于: 识别接收到的所有需要进行转发的数据的源IP地址和目的IP地址。
10.如权利要求8所述的转发设备,其特征在于,所述识别模块,具体用于: 判断接收到的需要进行转发的数据的转发方向; 如果判断所述需要进行转发的数据是由所述VM发送给网络侧的,识别所述需要进行转发的数据的源IP地址; 如果判断所述需要进行转发的数据是由网络侧发送给VM的,识别所述需要进行转发的数据的目的IP地址。
11.如权利要求8所述的转发设备,其特征在于,还包括: 感知模块,用于感知所述VM是否发生迁移; VM迁移表管理模块,用于当所述感知模块感知到所述VM发生迁移后,获取所述VM的主IP地址和迁移后的IP地址,并以所述主IP地址作为迁移前地址,以所述迁移后的IP地址为迁移后地址,建立VM迁移表。
12.如权利要求11所述的转发设备,其特征在于,所述感知模块具体用于: 接收网络控制系统NCS发送的所述VM发生迁移的通知消息。
13.如权利要求11所述的转发设备,其特征在于,所述感知模块具体用于: 接收网络控制系统NCS发送的所述VM发生迁移的通知消息,所述通知消息中携带了当所述VM迁移后上报虚拟机管理系统VMM,上报信息至少包含所述VM的主IP地址和所述VM迁移后的IP地址,所述VMM通过和NCS之间的接口向所述NCS发送的通知消息。
14.如权利要求11所述的转发设备,其特征在于,所述感知模块具体用于: 接收所述VM发生迁移后直接上报的迁移信息,上报信息至少包含所述VM的主IP地址和所述VM迁移后的IP地址。
15.一种虚拟机VM跨网迁移后的数据处理系统,其特征在于,包括:如权利要求8-14之一所述的转发设备,以及网络控制系统NCS ; 转发设备,用于识别接收到的需要进行转发的数据的源IP地址和/或目的IP地址;将所述源IP地址和/或目的IP地址与VM迁移表进行匹配;当所述目的IP地址与所述VM迁移表中的迁移前地址相匹配时,所述转发设备将所述需要进行转发的数据的目的IP地址修改为主IP地址,并转发所述需要进行转发的数据;当所述源IP地址与所述VM迁移表中的迁移后地址相匹配时,所述转发设备将所述需要进行转发的数据的源IP地址修改为主IP地址,并转发所述需要进行转发的数据;判断接收到的需要进行转发的数据的转发方向;感知所述VM发生迁移; NCS,用于接收虚拟机管理系统VMM发送的通知消息;向所述转发设备发送所述VM发生迁移的通知消息。
【文档编号】H04L12/70GK103905303SQ201210589710
【公开日】2014年7月2日 申请日期:2012年12月28日 优先权日:2012年12月28日
【发明者】樊鹏, 李振强 申请人:中国移动通信集团公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1