会话的处理方法及装置、存储介质和电子装置与流程

文档序号:17924991发布日期:2019-06-15 00:21阅读:140来源:国知局
会话的处理方法及装置、存储介质和电子装置与流程

本发明涉及计算机领域,具体而言,涉及一种会话的处理方法及装置、存储介质和电子装置。



背景技术:

云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。

建立共享资源池的主要技术手段就是虚拟化技术,虚拟化(irtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。虚拟化技术通过在物理主机上加入一层虚拟化软件hypervisor,hypervisor通过虚拟化技术,把中央处理机(centralprocessingunit,简称为cpu)/内存等资源进行逻辑划分,给每个虚拟机(virtualmachine,简称为vm)呈现出一套独立的资源,彼此隔离,传统操作系统如linux/windows可以运行在这些虚拟的硬件之上,这样一个物理主机上就可以运行多个vm。同样,通过在vm内部架设虚拟交换机,vm之间也可以共享同一条物理链路通信。图1是相关技术中vm与主机之间的关系示意图,如图1所示,因为资源池中的vm属于不同用户或者目的,需要对不同用户的网络访问进行隔离,就近部署安全即虚拟网络功能(virtualnetworkfunction,简称为vnf)是一个有效的手段,图2是相关技术中安全vnf系统结构示意图。此外,vm作为资源,可以在池中的host让被调度和迁移,这种技术称为vmotion,图3是相关技术中基于安全vnf的vm迁移示意图,如3图所示,vm3从主机1迁移到主机2。vm1与vm3通讯的话,所有报文经多安全vnf。当某个连接的首个报文到达安全vnf,安全vnf根据安全策略,决定放行或者阻断。安全策略某些场合称为acl,基本元素包括:

src-ip/dst-ip/app/action

其中,src-ip代表源ip,dst-ip代表目的ip,app代表应用,action代表策略动作;

如果安全策略允许,安全vnf会建立一个会话,用于记录当前此连接的状态信息,会话的基本元素包括:

srcip/srcport/app/dstip/dstport/state/in-if/out-if

其中,srcip代表源ip,srcport代表源端口,dstip代表目的ip,dstport代表目的端口,app代表应用,state代表会话状态,in-if代表入接口,out-if代表出接口。

后续报文匹配会话。连接中止,则会话删除。

通常情况下,vm3从host1迁移到host2,原有连接无法保持,因为:in-if/out-if变化,原有会话失效;新的安全vnf没有相应的会话信息,而非首包不能创建会话,从而导致会话业务中断。

针对相关技术中的上述技术问题,目前尚未存在有效的解决方案。



技术实现要素:

本发明实施例提供了一种会话的处理方法及装置、存储介质和电子装置,以至少解决相关技术中vm在迁移过程中会话会中断的问题。

根据本发明的一个实施例,提供了一种会话的处理方法,包括:获取与运行在第一主机上且待迁移的第一虚拟机vm相关的会话;在所述第一vm迁移到第二主机过程中,在所述第二主机上和其他主机上调整与所述第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,其中,所述其他主机包括所述第一主机和/或第三主机;所述第三主机不同于所述第一主机和所述第二主机。

根据本发明的另一个实施例,提供了一种会话的处理装置,包括:获取模块,用于获取与运行在第一主机上且待迁移的第一虚拟机vm相关的会话;处理模块,用于在所述第一vm迁移到第二主机过程中,在所述第二主机上和其他主机上调整与所述第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,其中,所述其他主机包括所述第一主机和/或第三主机;所述第三主机不同于所述第一主机和所述第二主机。

根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。

通过本发明,在第一vm迁移到第二主机过程中,会对在第二主机上和其他主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,也就是说,vm迁移了其相关会话会对应的进行调整以保证会话的持续,从而解决了相关技术中vm在迁移过程中会话会中断的问题,确保了在vm迁移过程中已有会话的不中断。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是相关技术中vm与主机之间的关系示意图;

图2是相关技术中虚拟安全网络功能系统结构示意图;

图3是相关技术中基于安全vnf的vm迁移示意;

图4是根据本发明实施例的会话的处理方法的流程图;

图5是根据本发明实施例的vm迁移前的会话示意图;

图6是根据本发明实施例的vm迁移后的会话示意图;

图7是根据本发明实施例的会话的处理装置的结构示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

实施例1

在本实施例中提供了一种会话的处理方法,图4是根据本发明实施例的会话的处理方法的流程图,如图4所示,该流程包括如下步骤:

步骤s402,获取与运行在第一主机上且待迁移的第一虚拟机vm相关的会话;

步骤s404,在第一vm迁移到第二主机过程中,在第二主机上和其他主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,其中,其他主机包括第一主机和/或第三主机;第三主机不同于第一主机和第二主机。

通过上述步骤s402和步骤s404,在第一vm迁移到第二主机过程中,会对在第二主机上和其他主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,也就是说,vm迁移了其相关会话会对应的进行调整以保证会话的持续,从而解决了相关技术中vm在迁移过程中会话会中断的问题,确保了在vm迁移过程中已有会话的不中断。

在本实施例的可选实施方式中,在与第一vm相关的会话包括第一vm与迁移前所在的第一主机中与第二vm之间的第一会话的情况下,本实施例步骤s404中涉及到的在第二主机和第一主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话的方式,可以通过如下方式来实现:

步骤s404-11,将第一会话拆分为第二会话和第三会话,并删除第一会话;

步骤s404-12,在第一vm迁移到第二主机之后,保留第二会话在第一主机的安全vnf中,以及添加第三会话到第二主机的安全vnf中。

对于上述步骤s404-11和步骤s404-12,在具体应用场景中,图5是根据本发明实施例的vm迁移前的会话示意图,如图5所示,vm1和vm3通讯,在vm3(对应于上述的第一vm)迁移到其他主机(vm4所在主机)前,源安全vnf模块(vm1所在主机中的安全vnf)中有一条会话1(对应于上述第一会话)。图6是根据本发明实施例的vm迁移后的会话示意图,如图6所示在vm3被迁移后,该会话被拆分为1’(对应于上述第二会话)和3’(对应于上述第三会话)。也就是说,本地变远程,会话拆分。

在本实施例的另一个可选实施方式中,在与第一vm相关的会话包括第一主机中第一vm与第二主机中的第三vm之间的第四会话,以及第二主机中第一vm与第三vm之间的第五会话的情况下,本实施例步骤s404中在第二主机和第一主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话的方式,可以通过如下方式来实现:

步骤s404-21,将第四会话与第五会话合并为第六会话,并删除第四会话和第五会话;

步骤s404-22,在第一vm迁移到第二主机之后,保留第六会话在第二主机的安全vnf中。

可见,对于上述步骤s404-21和步骤s404-22,在具体应用场景中,如图5所示,vm3和vm4通讯,而这两个vm不在同一个主机中,因此,在将vm3迁移到vm4所在主机(对应于第二主机)前,源安全vnf模块(vm3迁移前所在主机)有一条会话2(对应于上述第四会话),目的安全vnf有一条会话4(对应于上述第五会话)(vm3迁移前vm4所在主机),在vm3迁移到vm4所在主机的情况下,需要将上述两条会话合并,如图6所示,合并为2’(对应于上述第六会话)。也就是说,远程变本地,会话合并。

在本实施例的另一个可选实施方式中,在与第一vm相关的会话包括:第一主机中第一vm与第三主机中的第四vm之间的第七会话,以及第三主机中第一vm与第四vm之间的第八会话的情况下,本实施例步骤s404中涉及到的在第二主机和第三主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话的方式,可以包括:

步骤s404-31,在第一vm迁移到第二主机之后,将第七会话迁移到第二主机的安全vnf中,并保持第八会话不变。

对于该步骤s404-31,在具体应用场景中,如图5所示,vm3和vm6通讯,在vm3迁移到vm4所在主机前,源安全vnf模块有一条会话3,目的有一条会话5(对应于第八会话)。如图6所示,在迁移后,源安全vnf模块有一条会话4’(对应于第七会话),目的有一条会话5’(对应于第八会话)。也就是说,远程不变,会话迁移。

在本实施例的实施方式,本实施例的方法还可以包括:

步骤s406,获取与运行在第一主机上且待迁移的第一虚拟机vm相关的会话绑定的动态端口的接口信息;

步骤s408,在第二主机上和其他主机上将动态端口的接口信息与第一vm相关的会话一并进行调整。

通过上述步骤s406和步骤s408可知,由于某些应用会建立动态端口,比如ftp的datachannel,vm后续会使用这些动态端口通讯,这些信息以动态acl的形式存在,其中,动态acl如果包含接口信息,因此,对于该动态端口的接口信息也要按照上述会话迁移的原则进行处理。

在本实施例的再一个实施方式中,本实施例的方法还包括:

步骤s410,在第一主机所处的局域网内广播地址解析协议arp报文。

也就是说,二层网络环境下,安全vnf会代替vm,发送一个免费arp报文,此报文会在vlan内被广播,从而,vlan内所有vm和switch,都会把新的报文按照新的位置发送。

可见,通过本实施例,可以确保在vm迁移中,已有的网络连接状态和安全状态(比如恶意攻击的签名匹配)的持续性,确保安全型的同时,业务不中断。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

在本实施例中还提供了一种会话的处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图7是根据本发明实施例的会话的处理装置的结构示意图,如图7所示,该装置包括:获取模块72,用于获取与运行在第一主机上且待迁移的第一虚拟机vm相关的会话;处理模块74,与获取模块72耦合连接,用于在第一vm迁移到第二主机过程中,在第二主机上和其他主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,其中,其他主机包括第一主机和/或第三主机;第三主机不同于第一主机和第二主机。

可选地,在与第一vm相关的会话包括第一vm与迁移前所在的第一主机中与第二vm之间的第一会话的情况下,该处理模块74包括:第一处理单元,用于将第一会话拆分为第二会话和第三会话,并删除第一会话;第二处理单元,用于在第一vm迁移到第二主机之后,保留第二会话在第一主机的安全vnf中,以及添加第三会话到第二主机的安全vnf中。

可选地,在与第一vm相关的会话包括第一主机中第一vm与第二主机中的第三vm之间的第四会话,以及第二主机中第一vm与第三vm之间的第五会话的情况下,该处理模块74包括:第三处理单元,用于将第四会话与第五会话合并为第六会话,并删除第四会话和第五会话;第四处理单元,用于在第一vm迁移到第二主机的安全vnf之后,保留第六会话在第二主机的安全vnf中。

可选地,在与第一vm相关的会话包括:第一主机中第一vm与第三主机中的第四vm之间的第七会话,以及第三主机中第一vm与第四vm之间的第八会话的情况下,该处理模块74包括:第五处理单元,用于在第一vm迁移到第二主机之后,将第七会话迁移到第二主机的安全vnf中,并保持第八会话不变。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

实施例3

本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,获取与运行在第一主机上且待迁移的第一虚拟机vm相关的会话;

s2,在第一vm迁移到第二主机过程中,在第二主机上和其他主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,其中,其他主机包括第一主机和/或第三主机;第三主机不同于第一主机和第二主机。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read-onlymemory,简称为rom)、随机存取存储器(randomaccessmemory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。

本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

s1,获取与运行在第一主机上且待迁移的第一虚拟机vm相关的会话;

s2,在第一vm迁移到第二主机过程中,在第二主机上和其他主机上调整与第一vm相关的会话,并继续保持调整后的与第一vm相关的会话,其中,其他主机包括第一主机和/或第三主机;第三主机不同于第一主机和第二主机。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1