一种跨主机租户的东西向网络流量镜像采集方法与流程

文档序号:11215662阅读:1415来源:国知局
一种跨主机租户的东西向网络流量镜像采集方法与流程
本发明涉及通信技术安全领域,尤其涉及一种跨主机租户的东西向网络流量镜像采集方法。
背景技术
:随着云计算业务的广泛发展,出于安全的需要,需要对云内的东西向网络流量进行监控,这就需要对云内租户的东西向网络流量进行镜像。而要完成东西向网络流量的镜像,就需要实现以下功能:1)对租户的网络流量进行区分;2)有效地将租户的网络流量进行镜像并传输到网络数据分析中心进行分析。目前对网络流量镜像一般采用分光或交换机镜像端口的方式来实现。所述分光是指通过分光器,将光纤中的光进行克隆,其实就是通过透镜,将光纤中的光复制出来;比如将入射光分成两束,一束的能量是70%,另一束的能量是30%,因为光是数据的载体,光被复制,也就意味着网络传输的数据被复制。但所述分光一般用在数据中心和外网的接口上,即用于南北向网络流量的采集。所述交换机镜像端口是指在交换机上进行配置,将一个接口上传输的数据,复制到镜像端口,这样在镜像端口就可以收到被复制的数据。因为一个租户的虚拟机可能分布在多个物理主机上,网络流量可能要涉及多个机架,因此不能确定租户的网络流量涉及哪些物理接口,而且也不可能对所有的交换机端口进行镜像。因此上述两种方式对于云内租户的东西向网络流量并不适用。技术实现要素:本发明的目的在于提供一种跨主机租户的东西向网络流量镜像采集方法,该方法基于租户各自的租户名,在配置界面上设置需要做流量镜像的租户名,以完成对该租户网络流量的采集和分析。为达上述目的,本发明所采用的技术方案为:一种跨主机租户的东西向网络流量镜像采集方法,其步骤包括:1)流量采集控制服务器根据待采集租户的租户名以及从云服务主控服务器获取的租户的网络配置信息和租户的虚拟机在物理主机上的分布信息生成与待采集租户对应的流量采集配置参数;2)流量采集控制服务器将上述流量采集配置参数通过云服务主机的流量采集agent下发到流量采集驱动程序;3)流量采集驱动程序对上述流量采集配置参数指定的采集流量进行镜像,并将镜像的采集流量发送给流量采集agent。进一步地,该方法步骤还包括:流量采集agent将上述镜像的采集流量发送到流量分析服务器,并由流量分析服务器对所述镜像的采集流量进行分析,以根据分析结果验证所述采集流量与待采集租户的对应情况。进一步地,步骤1)中所述流量采集配置参数是指租户的虚拟网络的类型和id。进一步地,步骤2)中所述流量采集agent部署在云服务主机上。进一步地,步骤2)和步骤3)具体包括以下步骤:a)流量采集agent接收流量采集控制服务器的命令,将上述流量采集配置参数中待采集租户的流量的标识设置到流量采集驱动程序中;b)流量采集驱动程序接收流量采集agent的命令,根据上述待采集租户的流量的标识对该租户的流量采集配置参数进行配置;c)流量采集驱动程序根据上述已配置的流量采集配置参数对物理主机的网络流量进行过滤,并对所述已配置的流量采集配置参数指定的采集流量进行镜像,将镜像的采集流量发送给流量采集agent。进一步地,步骤3)中所述流量采集驱动程序部署在云服务主机的linux内核中。进一步地,步骤3)中所述流量采集驱动程序通过模拟tcp的方式将镜像的采集流量发送给流量采集agent。本发明的有益效果在于:本发明提供一种跨主机租户的东西向网络流量镜像采集方法,该方法由一种支持动态配置、较灵活的跨主机租户的东西向流量镜像采集的软件实现方案来实现。因为租户的网络数据可能分布在数据中心的多个网络交换机,租户的虚拟机在物理主机上的分布也是动态的。又因为交换机的镜像端口是有限的,所以采用交换机镜像端口的方法对租户的网络流量进行采集,将为网络流量与具体租户进行对应时带来很多困难,不易于实现;而分光法一般用在数据中心和外网的接口上,即用于南北向网络流量的采集;由于数据中心内的交换机之间的东西向网络流量规模较大,因此采用分光法进行分析和处理的成本较高。而本发明方法则可以在linux内核驱动程序层,根据租户名和租户的网络配置信息以及租户的虚拟机在物理主机上的分布信息,动态采集租户的东西向网络流量。附图说明图1为本发明一种跨主机租户的东西向网络流量镜像采集方法示意图。图2为本发明实现网络流量镜像的示意图。图3为本发明流量采集驱动程序模拟tcp的示意图。具体实施方式为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。本发明提供一种跨主机租户的东西向网络流量镜像采集方法,适用于一采集系统,所述采集系统包括云服务主控服务器、流量采集控制服务器、流量采集agent、流量采集驱动程序和流量分析服务器。请参考图1,所述流量采集控制服务器用于完成以下功能:1)从云服务主控服务器获取租户的网络配置信息和租户的虚拟机在物理主机上的分布信息;2)从系统控制台接收待采集租户的租户名,根据所述租户名和该租户的网络配置信息以及该租户的虚拟机在物理主机上的分布信息,生成与该租户对应的流量采集配置参数;所述流量采集配置参数是指租户的虚拟网络的类型和id。如果租户的虚拟网络类型是vlan(虚拟局域网)网络,则所述租户对应的流量采集配置参数是指vlan网络和vlanid。如果租户的虚拟网络类型是vxlan(可扩展虚拟局域网)网络,则所述租户对应的流量采集配置参数是指vxlan网络和vxlanid。3)将上述流量采集配置参数发送给租户资源涉及的云服务主机的流量采集agent,完成对流量镜像参数的设置,流量采集agent将按照所述流量镜像参数调用流量采集驱动程序,进行流量镜像采集。所述流量采集agent部署在云服务主机上,主要完成以下功能:1)接收流量采集控制服务器的命令,将上述流量采集配置参数中待采集租户的流量的标识设置到流量采集驱动程序中;2)接收流量采集驱动程序镜像的采集流量,并将镜像的采集流量发送到流量分析服务器进行分析。所述流量采集驱动程序部署在云服务主机的linux内核中,主要完成以下功能:1)接收流量采集agent的命令,根据待采集租户的流量的标识对该租户的流量采集配置参数进行配置;2)根据上述已配置的流量采集配置参数对物理主机的网络流量进行过滤,并对所述已配置的流量采集配置参数指定的采集流量进行镜像;3)将镜像的采集流量从流量采集驱动程序内部发送给流量采集agent。所述流量分析服务器用于接收流量采集agent发送的流量采集驱动程序镜像的采集流量,并对其进行分析,以根据分析结果验证所述采集流量与待采集租户的对应情况,并为后续采集流量分析提供支撑。下面举一具体实施例,以更好的说明本发明方法,该方法的具体实现包括以下步骤:1)流量采集控制服务器根据待采集租户的租户名以及从云服务主控服务器获取的租户的网络配置信息和租户的虚拟机在物理主机上的分布信息,生成与该待采集租户所对应的流量采集配置参数。下面为租户的网络配置信息的具体形式。目前租户的虚拟网络一般采用vlan或vxlan的形式,所以只要对相应的vlan或vxlan的数据(流量)进行镜像,就可以完成对租户数据的镜像功能。在同一个云服务的范围内,其采用的虚拟网络形式是一致的,如果云服务采用vlan网络,那么所有的租户采用的虚拟网络都是vlan网络;如果采用vxlan网络,那么所有的租户采用的虚拟网络都是vxlan网络。表1:vlan网络下的租户的网络配置信息租户id网络vlanid租户1tenant1_network11010租户1tenant1_network21011租户2tenant2_network12020租户2tenant2_network22021租户3tenant3_network12301假设云服务部署采用vlan网络,如表1所示,流量采集控制服务可以得到如下租户的网络配置信息:租户1的网络流量对应的vlanid为1010和1011;租户2的网络流量对应的vlanid为2020和2021;租户3的网络流量对应的vlanid为2031;如果云服务的网络采用vxlan网络,那么对应的id就是vxlanid。2)流量采集控制服务器根据租户的虚拟机在物理主机上的分布信息,将上述流量采集配置参数只下发到与租户相关的云服务主机上的流量采集agent,完成流量镜像参数的设置。3)流量采集agent接收流量采集控制服务器的命令,将待采集租户的流量的标识设置到流量采集驱动程序中,并按照上述流量镜像参数调用流量采集驱动程序,进行流量镜像采集。4)流量采集驱动程序接收流量采集agent的命令,根据待采集租户的流量的标识对该租户的流量采集配置参数进行配置;并根据所述已配置的流量采集配置参数对物理主机的网络流量进行过滤,其关键实现是通过在netfilter中挂载流量采集驱动程序的过滤钩子,以实现对网络流量的镜像和采集。请参考图2,所述过滤钩子为该图中的流量采集hook。netfilter是linux内核的标准网络流量处理程序,且该图中其它的hook均为其自带的。本发明通过所述netfilter实现了网络流量的镜像和采集。所述镜像的具体实现过程为:通过skbuffer的特性实现零拷贝,流量采集驱动程序对租户发送和接收的网络流量,都进行镜像;5)镜像的采集流量从流量采集驱动程序发送到流量采集agent。其实现过程为:流量采集驱动程序镜像的采集流量通过模拟tcp的方式发送给流量采集agent,如图3所示,在流量采集驱动程序中,实现一个tcp协议栈,流量采集驱动程序通过tcp三次握手,与云服务主机操作系统中部署的流量采集agent建立tcp连接(对流量采集agent来说,这个tcp连接就是普通的tcp连接,在这个tcp连接上,可以进行正常的tcp数据收发),通过这个tcp连接,把采集到的数据发送给流量采集agent。采用tcp的优点在于,可以使用tcp连接标识租户信息,这样可以直接将租户的数据发送到tcp连接上,后续的租户数据,不用再带有租户的标识,有效节省了传输成本;而且tcp为有状态链接,接收效率比较高,可以实现比较高效可靠的数据传递。6)当租户的虚拟网络或者租户的虚拟机分布发生变化的时候,流量采集控制服务器会更新相关云服务主机上的流量采集agent的流量采集配置参数。以上实施仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1