在云网络环境下实现动态流量的报文镜像的方法和装置与流程

文档序号:11681353阅读:404来源:国知局
在云网络环境下实现动态流量的报文镜像的方法和装置与流程

本发明涉及网络技术,特别涉及用于在云网络环境下实现动态流量的报文镜像的方法和装置。



背景技术:

云计算是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。在云网络环境下,计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。

虚拟机技术被广泛应用于云网络环境。所谓虚拟机是指通过虚拟化软件(hypervisor)在物理机上虚拟出来的服务器,它可以有自己独立的cpu、内存和磁盘。通过该技术可以把一个物理服务器分成几个相互隔离的虚拟服务器,从而更充分地利用物理机资源。虚拟机迁移指的是这样一种操作,借助该操作,一台运行在物理宿主机a上的虚拟机,通过通过网络将相关信息(如内存、磁盘等信息)传输到另一台物理宿主机b上。上述迁移过程对用户而言是透明的,虚拟机中运行的业务也不会受到影响。

端口镜像技术是通过配置交换机或路由器,将一个或多个源端口的数据流量转发到某一个指定端口来实现对网络的监听,其中指定端口常称为“镜像端口”或“目的端口”。端口镜像并不影响源端口和目的端口的报文交换,只是将所有进入源端口和从源端口输出的报文原样复制到目的端口,从而可以经镜像端口对网络流量进行监控分析。借助于镜像功能,可以对网络数据进行有效的监控管理,特别是在网络发生故障时能够快速地对故障定位。

如上所述,在云环境下,资源是通过虚拟机向用户提供的。物理机宿主机的故障、资源优化调度和重建等会导致虚拟机发生迁移。随着网络规模的扩大和用户数量的增长,虚拟资源的动态调整更为频繁,因此如何在云网络环境下实现动态流量的报文镜像对于业界来说是一个挑战。



技术实现要素:

本发明的一个目的是提供一种用于在云网络环境下实现动态流量的报文镜像的方法,其具有高效率和高可靠性等优点。

按照本发明一个方面的用于在云网络环境下实现动态流量的报文镜像的方法,其特征在于,包含下列步骤:

响应于虚拟机从第一物理宿主机迁移到第二物理宿主机的事件,确定与所述第二物理宿主机相关联的标识信息;

根据所述标识信息确定所述第二物理宿主机所连接的交换机和该交换机上用来收发与所述虚拟机相关联的报文的端口;以及

将所述端口与镜像端口相连以实现所述虚拟机的流量镜像,其中,所述镜像端口还被用于云网络环境下其它虚拟机的流量镜像。

优选地,在上述方法中,在将所述端口与镜像端口相连的同时,还断开所述镜像端口与所述虚拟机之前用来收发报文的端口之间的连接。

优选地,在上述方法中,通过查询云管理平台数据库确定与所述第二物理宿主机相关联的标识信息。

优选地,在上述方法中,通过查询存储全网拓扑信息的网络模块确定所述第二物理宿主机所连接的交换机和该交换机上用来收发与所述虚拟机相关联的报文的端口。

优选地,在上述方法中,所述网络模块为sdn控制器。

优选地,在上述方法中,通过将被镜像的报文以gre协议封装并且将封装后的报文路由到所述镜像端口来实现流量镜像。

本发明的一个目的是提供一种用于在云网络环境下实现动态流量的报文镜像的装置,其具有高效率和高可靠性等优点。

按照本发明另一个方面的用于在云网络环境下实现动态流量的报文镜像的装置包含:

探测模块,其配置为探测虚拟机迁移的发生;

与所述探测模块耦合的定位模块,其配置为响应于虚拟机从第一物理宿主机迁移到第二物理宿主机的事件,确定与所述第二物理宿主机相关联的标识信息,并且根据所述标识信息确定所述第二物理宿主机所连接的交换机和该交换机上用来收发与所述虚拟机相关联的报文的端口;以及

与所述定位模块耦合的端口镜像配置模块,其配置为将所述端口与镜像端口相连以实现所述虚拟机的流量镜像,其中,所述镜像端口还被用于云网络环境下其它虚拟机的流量镜像。

与现有技术相比,本发明有以下优点。首先,流量镜像的粒度从交换机端口变成虚拟机,即使虚拟机的位置发生变化,仍不影响对其流量的监控,这提高了平台及业务的可靠性;其次,通过自动跟踪定位端口镜像的源端口,可以提高自动化运维水平;在这,通过在端口镜像的时候利用gre协议封装被镜像的报文,使得即使当源端口和目的端口不在同一台交换机时,仍然可以将源端口的流量镜像到目的端口上。

附图说明

本发明的上述和/或其它方面和优点将通过以下结合附图的各个方面的描述变得更加清晰和更容易理解,附图中相同或相似的单元采用相同的标号表示。附图包括:

图1为按照本发明一个实施例的用于在云网络环境下实现动态流量的报文镜像的装置的示意框图。

图2为图1所示用于在云网络环境下实现动态流量的报文镜像的装置的工作原理图。

图3为按照本发明另一个实施例的用于在云网络环境下实现动态流量的报文镜像的方法的流程图。

具体实施方式

下面参照其中图示了本发明示意性实施例的附图更为全面地说明本发明。但本发明可以按不同形式来实现,而不应解读为仅限于本文给出的各实施例。给出的上述各实施例旨在使本文的披露全面完整,以将本发明的保护范围更为全面地传达给本领域技术人员。

在本说明书中,诸如“包含”和“包括”之类的用语表示除了具有在说明书和权利要求书中有直接和明确表述的单元和步骤以外,本发明的技术方案也不排除具有未被直接或明确表述的其它单元和步骤的情形。

图1为按照本发明一个实施例的用于在云网络环境下实现动态流量的报文镜像的装置的示意框图。图1所示的装置10包括探测模块110、与探测模块110耦合的定位模块120和与定位模块120耦合的镜像配置模块130。

探测模块110被配置为探测云网络内是否发生虚拟机迁移并且在发生迁移时将虚拟机的相关信息发送至定位模块120。当虚拟机发生迁移之后,虚拟机流量所经过的交换机端口将发生改变。定位模块120配置为响应于虚拟机迁移的探测,定位该虚拟机当前使用的交换机端口。在本实施例中定位模块120可按照下列方式进行定位:确定虚拟机所迁移到的物理宿主机的标识信息,并且根据查询到的标识信息确定该物理宿主机所连接的交换机和该交换机上用来收发与虚拟机相关联的报文的端口(即前述当前使用的交换机端口)。端口镜像配置模块130配置为在当前使用的端口与镜像端口之间建立连接并且将虚拟机经当前使用端口收发的报文镜像备份到镜像端口。在本实施例中,镜像端口还被其它虚拟机共享,即,其还被用于云网络环境下其它虚拟机的流量镜像。

优选地,端口镜像配置模块130还被配置为在将当前使用的端口与镜像端口相连的同时,还断开镜像端口与虚拟机之前用来收发报文的端口之间的连接。

图2为图1所示用于在云网络环境下实现动态流量的报文镜像的装置的工作原理图。

如图2所示,当虚拟机vm从物理宿主机a迁移至物理宿主机b时,被探测模块110检测到。响应于该检测,探测模块110将虚拟机vm的相关信息(例如虚拟机vm的标识符)发送至定位模块120。

随后,定位模块120例如通过查询云管理平台(例如基于openstack架构)的数据库20,搜索到与虚拟机vm的信息相对应的物理宿主机(在本示例中,即物理宿主机b)的标识信息,标识信息例如包括但不限于服务器地址和/或标识符等。接着,定位模块120访问存储全网拓扑信息的网络模块30(例如sdn控制器),根据物理宿主机b的标识信息确定物理宿主机b所连接的交换机和该交换机上用来收发与虚拟机vm相关联的报文的端口。在图2所示的实例中,示例性地,物理宿主机a与交换机j1的端口p1相连,物理宿主机b与交换机j2的端口p2相连,并且交换机j3的端口p3被用作镜像端口。

定位模块120将其确定的交换机及其端口信息发送至端口镜像配置模块130。随后,端口镜像配置模块130根据接收的交换机及其端口信息,在交换机j2的端口p2与交换机j3的端口p3之间建立连接,从而为虚拟机vm提供动态的流量镜像备份功能。优选地,端口镜像配置模块130例如通过调用交换机的api接口,将交换机j2的端口p2处被镜像的报文以gre协议封装并且将封装后的报文路由到交换机j3的端口p3。特别是,可以将被镜像的报文通过gre隧道封装成ip报文,然后路由到远端镜像设备(例如图2中的监测系统40)的目的端口(例如图2中的交换机j3的端口p3)。在一般的远程端口镜像中,镜像的报文无法经过路由的网络,而采用本实施例的封装远程端口镜像方式可以突破这样的桎梏,在路由的网络间传输镜像的报文。

在建立新连接的同时,端口镜像配置模块130还断开交换机j1的端口p1与交换机j3的端口p3之间的连接。需要指出的是,断开操作可以与建立新连接的操作同步进行,也可以在建立新连接的操作之前或之后进行。

如图2所示,监控系统40与交换机j3的端口p3相连,其可对所有被镜像到端口p3的报文进行监测分析,例如包括网络流量分析、业务质量分析和报文安全分析等。

图3为按照本发明另一个实施例的用于在云网络环境下实现动态流量的报文镜像的方法的流程图。为阐述方便起见,采用上面借助图1所示的用于在云网络环境下实现动态流量的报文镜像的装置来实现本实施例的方法,但是需要指出的是,本实施例的方法并不依赖于特定结构的装置。

如图3所示,在步骤310,探测模块110定期或不定期地对云网络环境下的一个或多个虚拟机进行探测。随后进入步骤320,探测模块110判断是否有虚拟机迁移的事件发生,如果发生,则进入步骤330,否则返回步骤310,继续进行探测。

在步骤330,探测模块110将采集发生迁移的虚拟机的相关信息(例如该虚拟机的标识符)并且将其传送给定位模块120。随后进入步骤340,定位模块120访问云管理平台的数据库,查找与虚拟机信息对应的物理宿主机(虚拟机迁移后所属的物理宿主机)的信息,例如服务器地址和/或标识符。接着进入步骤350,定位模块120访问存储全网拓扑信息的网络模块,根据步骤340所确定的物理宿主机的信息获得该物理宿主机所连接的交换机和该交换机上用来收发与该虚拟机相关联的报文的端口。

在步骤360,定位模块120将所确定的交换机及其端口的信息发送给端口镜像配置模块130。

随后并行地执行步骤370和380,其中,在步骤370中,端口镜像配置模块130将定位模块120在步骤350确定的交换机的端口与镜像端口连接,从而为虚拟机提供动态的流量镜像备份功能;在步骤380中,端口镜像配置模块130断开虚拟机原先使用的交换机端口与镜像端口之间的连接。需要指出的是,虽然本实施例中所示的建立新连接操作和断开旧连接操作是并行地完成的,但是这两种操作也可以顺序执行。

提供本文中提出的实施例和示例,以便最好地说明按照本技术及其特定应用的实施例,并且由此使本领域的技术人员能够实施和使用本发明。但是,本领域的技术人员将会知道,仅为了便于说明和举例而提供以上描述和示例。所提出的描述不是意在涵盖本发明的各个方面或者将本发明局限于所公开的精确形式。

鉴于以上所述,本公开的范围通过以下权利要求书来确定。

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