掌桥专利:专业的专利平台
掌桥专利
首页

云流量数据处理方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 19:30:30


云流量数据处理方法、装置、电子设备及存储介质

技术领域

本申请涉及数据处理技术领域,具体而言,涉及一种云流量数据处理方法、装置、电子设备及存储介质。

背景技术

随着大数据时代的到来,人们对信息安全的要求越来越高,流量数据处理技术随着数据量级的增大而飞速膨胀。云流量能够进行数据集成、数据分析、数据整合、数据分配、数据预警等。通过云流量可以向大量的租户提供可使用的流量以及针对各租户进行流量分析。由于云流量场景中存在边界模糊、多租户间可能存在IP冲突、租户数量多、通讯或网络相关业务变化频繁以及流量变化较大等特点。因此,如何对各租户进行流量分析的分流以避免出现分流不均是需要解决的问题。

现有技术中,可以针对单租户部署专门的安全分析设备进行流量分析的分流,或者为多租户分配对应的流量分析设备进行数据分析。

但是,在现有技术的方法中,针对单租户部署专门的安全分析设备进行流量分析的分流会导致流量分析的硬件成本过高,而为多租户分配对应的流量分析设备进行数据分析则会出现流量分析设备处理的数据大小与其处理性能不匹配的情况。

发明内容

本申请的目的在于,提供一种云流量数据处理方法、装置、电子设备及存储介质,以解决现有技术中单租户或节点部署安全分析设备解决但代价是服务器成本较高的问题。

为实现上述目的,本申请实施例采用的技术方案如下:

第一方面,本申请提供了一种云流量数据处理方法,应用于云流量系统中的分流设备,所述云流量系统中包括:各租户的虚拟服务器、所述分流设备、多个流量分析设备以及流量聚合分析设备,所述分流设备分别与各租户的虚拟服务器以及各流量分析设备通信连接,各流量分析设备与所述流量聚合分析设备通信连接;所述方法包括:

接收第一租户的虚拟服务器上的代理服务发送的第一流量数据包,其中,所述代理服务用于对所述第一租户的虚拟服务器进行流量数据抓取,并对抓取的流量数据进行加密和封装以形成所述第一流量数据包,所述第一流量数据包中至少包括:第一租户的标识、数据包哈希值以及原始加密数据包;

根据所述第一租户的标识以及所述数据包哈希值中的至少一种,确定所述第一流量数据包待分流到的第一流量分析设备;

将所述第一流量数据包发送至所述第一流量分析设备,以使得所述第一流量分析设备基于所述第一流量数据包中的原始加密数据包进行分析并相应将分析结果发送给所述流量聚合分析设备进行聚合分析。

可选的,所述第一流量数据包中还包括:版本标识、首部校验和、加密标识以及数据长度;

所述根据所述第一租户的标识以及所述数据包哈希值中的至少一种,确定所述第一流量数据包待分流到的第一流量分析设备,包括:

根据所述版本标识以及所述首部校验和对所述第一流量数据包进行数据格式校验,并根据所述数据长度对所述第一流量数据包进行数据数据完整性校验;

若数据格式校验和数据完整性校验均校验通过,则根据所述第一租户的标识以及所述数据包哈希值,确定所述第一流量数据包待分流到的第一流量分析设备。

可选的,所述根据所述第一租户的标识以及所述数据包哈希值中的至少一种,确定所述第一流量数据包待分流到的第一流量分析设备,包括:

获取所述云流量系统中流量分析设备的数量;

将所述第一租户的标识与所述云流量系统中流量分析设备的数量进行取模计算,得到第一取模结果;

将标识为第一取模结果的流量分析设备作为所述第一流量分析设备。

可选的,所述根据所述第一租户的标识以及所述数据包哈希值中的至少一种,确定所述第一流量数据包待分流到的第一流量分析设备,包括:

获取所述云流量系统中流量分析设备的数量;

确定所述第一租户的标识与所述数据包哈希值的加和;

将所述加和与所述云流量系统中流量分析设备的数量进行取模计算,得到第二取模结果;

将标识为第二取模结果的流量分析设备作为所述第一流量分析设备。

可选的,所述还包括:

接收第二租户的虚拟服务器上的代理服务发送的第二流量数据包;

确定所述云流量系统是否存在分流不均;

若是,则对所述第二流量数据包的流量进行哈希计算,得到哈希值;

确定所述哈希值与所述多个流量分析设备对应的总权重的第三取模结果;

将标识为第三取模结果的流量分析设备作为待分流的流量分析设备,并将所述第二流量数据包发送至所述待分流的流量分析设备。

可选的,所述总权重通过如下任意一种方式计算得到:

将各流量分析设备对应的预设权重相加,得到所述总权重;

或者,根据各流量分析设备在历史单位时段内接收到的流量数据的数量,确定各流量分析设备的性能权重,根据各流量分析设备的性能权重与各流量分析设备对应的预设权重,确定各流量分析设备的实际权重,将各流量分析设备对应的实际权重相加,得到所述总权重。

可选的,所述方法还包括:

在所述云流量系统存在分流不均时,获取当前时间之前的预设时段内所接收到的所有流量数据包的流量;

根据各流量数据包的流量大小,对各流量数据包进行排序,并根据排序结果确定至少一个目标流量数据包;

将所述至少一个目标流量数据包发送至当前流量最低的流量分析设备。

第二方面,本申请提供了一种云流量数据处理装置,应用于云流量系统中的分流设备,所述云流量系统中包括:各租户的虚拟服务器、所述分流设备、多个流量分析设备以及流量聚合分析设备,所述分流设备分别与各租户的虚拟服务器以及各流量分析设备通信连接,各流量分析设备与所述流量聚合分析设备通信连接;所述装置包括:

接收模块,用于接收第一租户的虚拟服务器上的代理服务发送的第一流量数据包,其中,所述代理服务用于对所述第一租户的虚拟服务器进行流量数据抓取,并对抓取的流量数据进行加密和封装以形成所述第一流量数据包,所述第一流量数据包中至少包括:第一租户的标识、数据包哈希值以及原始加密数据包;

确定模块,用于根据所述第一租户的标识以及所述数据包哈希值中的至少一种,确定所述第一流量数据包待分流到的第一流量分析设备;

发送模块,用于将所述第一流量数据包发送至所述第一流量分析设备,以使得所述第一流量分析设备基于所述第一流量数据包中的原始加密数据包进行分析并相应将分析结果发送给所述流量聚合分析设备进行聚合分析。

可选的,所述确定模块具体用于:

根据所述版本标识以及所述首部校验和对所述第一流量数据包进行数据格式校验,并根据所述数据长度对所述第一流量数据包进行数据数据完整性校验;

若数据格式校验和数据完整性校验均校验通过,则根据所述第一租户的标识以及所述数据包哈希值中的至少一种,确定所述流量数据包待分流到的第一流量分析设备。

可选的,所述确定模块具体用于:

获取所述云流量系统中流量分析设备的数量;

将所述第一租户的标识与所述云流量系统中流量分析设备的数量进行取模计算,得到第一取模结果;

将标识为第一取模结果的流量分析设备作为所述第一流量分析设备。

可选的,所述确定模块具体用于:

获取所述云流量系统中流量分析设备的数量;

确定所述第一租户的标识与所述数据包哈希值的加和;

将所述加和与所述云流量系统中流量分析设备的数量进行取模计算,得到第二取模结果;

将标识为第二取模结果的流量分析设备作为所述第一流量分析设备。

可选的,所述接收模块,还用于接收第二租户的虚拟服务器上的代理服务发送的第二流量数据包;

所述确定模块,还用于确定所述云流量系统是否存在分流不均,若是,则对所述第二流量数据包的流量进行哈希计算,得到哈希值;确定所述哈希值与所述多个流量分析设备对应的总权重值的第三取模结果;

所述发送模块,还用于将标识为第三取模结果的流量分析设备作为待分流的流量分析设备,并将所述第二流量数据包发送至所述待分流的流量分析设备。

可选的,所述总权重值通过如下任意一种方式计算得到:

将各流量分析设备对应的预设权重相加,得到所述总权重;

或者,根据各流量分析设备在历史单位时段内接收到的流量数据的数量,确定各流量分析设备的性能权重,根据各流量分析设备的性能权重与各流量分析设备对应的预设权重,确定各流量分析设备的实际权重,将各流量分析设备对应的实际权重相加,得到所述总权重。

可选的,所述确定模块,还用于在所述云流量系统存在分流不均时,获取当前时间之前的预设时段内所接收到的所有流量数据包的流量;根据各流量数据包的流量大小,对各流量数据包进行排序,并根据排序结果确定至少一个目标流量数据包;

所述发送模块,还用于将所述至少一个目标流量数据发送至当前流量最低的流量分析设备。

第三方面,本申请提供了一种电子设备,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器执行所述机器可读指令,以执行时执行如第一方面所述的云流量数据处理方法的步骤。

第四方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行第一方面所述的云流量数据处理方法的步骤。

本申请的有益效果是:虚拟服务器上的代理服务对租户的原始数据包抓取后进行加密封装形成流量数据包并发送至分流设备,分流设备根据第一租户的标识以及数据包哈希值将流量数据包分流至对应的流量分析设备。其中,对数据包进行加密封装,可以避免数据包标识边界模糊,以及避免多个租户拥有相同标识。同时,根据第一租户的标识和数据包哈希值确定流量数据包待分流到的流量分析设备,能够保证分流的均匀性,从而在保证分流均匀性的前提下避免流量分析的硬件成本过高。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例提供的一种云流量系统的系统架构图;

图2示出了本申请实施例提供的一种云流量数据处理方法的流程示意图;

图3示出了本申请实施例提供的一种数据包分流到流量分析设备的流程图;

图4示出了本申请实施例提供的一种云流量分流方法的流程图;

图5示出了本申请实施例提供的另一种云流量分流方法的流程图;

图6示出了本申请实施例提供的一种修正云流量分流不均的流程图;

图7示出了本申请实施例提供的又一种云流量分流方法的流程图;

图8示出了本申请实施例提供的一种云流量分流的结构示意图;

图9示出了本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。

另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。

现有技术主要通过专门的安全分析设备进行流量分析的分流,但是,这种方式会导致流量分析的硬件成本过高。

本申请实施例基于上述问题,提出一种云流量数据处理方法,通过分流设备基于租户的虚拟服务器发送的流量数据包中的租户信息以及数据包信息将流量数据包合理地分流至相应的流量分析设备,从而在保证分流均匀的前提下不增加任何的硬件成本。

图1为本申请实施例所应用的云流量系统的系统架构图,如图1所示,该云流量系统包括:各租户的虚拟服务器、分流设备、多个流量分析设备以及流量聚合分析设备。其中分流设备分别与各租户的虚拟服务器以及各流量分析设备通信连接,各流量分析设备与流量聚合分析设备通信连接。示例性的,当租户在云流量注册之后,可以为该租户分配对应的虚拟服务器,该虚拟服务器可以用于对该租户的业务请求进行处理。租户发起业务请求之后,由租户的虚拟服务器将该业务请求所产生的流量数据包发送给分流设备,再由分流设备基于本申请实施例的方法将该流量数据包发送至对应的流量分析设备,再由流量分析设备进行流量分析后发送给流量聚合分析设备。流量聚合分析设备再基于各流量分析设备所发送的流量数据包进行聚合分析。可选的,流量分析设备可以是物理机,也可以是云服务器。值得说明的是,云流量系统中虚拟服务器的数量和流量分析设备的数量可能相同,也可能不相同。

图2为本申请实施例提供的云流量数据处理方法的流程示意图,该方法的执行主体为前述的分流设备。现在结合图2对云流量数据处理方法进行说明:

S201、接收第一租户的虚拟服务器上的代理服务发送的第一流量数据包,其中,代理服务用于对第一租户的虚拟服务器进行流量数据抓取,并对抓取的流量数据进行加密和封装以形成第一流量数据包,第一流量数据包中至少包括:第一租户的标识、数据包哈希值以及原始加密数据包。

可选的,上述第一租户为在云流量系统中注册的租户,该第一租户具有对应的虚拟服务器,即上述的第一租户的虚拟服务器。

可选的,针对每个虚拟服务器,可以预先在该虚拟服务器上部署上述的代理服务。代理服务可以是一种装有应用程序的服务器上部署的相应插件,或者,代理服务也可以通过程序中植入相应代码的方式实现。代理服务器的作用在于抓取租户产生的流量数据,并对流量数据进行加密封装后发送给分流设备。示例性的,代理服务可以主动抓取租户产生的流量数据。

可选的,代理服务在抓取到第一租户产生的流量数据后,可以对流量数据进行加密和封装。其中,在封装时,代理服务可以首先确定第一租户的标识并生成数据包哈希值。其中,通过租户的标识,可以防止多租户标签模糊,避免不同数据以同一标签进行被分析。可选的,第一租户的标识可以是租户ID或名称等。另外,代理服务可以将流量数据压缩成摘要,使得数据量变小,将数据的格式固定下来,重新创建一个散列值的标签,将该散列值的标签作为上述数据包哈希值。可选的,原始加密数据包是通过代理服务抓取的流量数据包。

代理服务在完成第一租户的流量数据的抓取、加密和封装之后,可以得到上述第一流量数据包,进而可以将该第一流量数据包发送给分流设备。相应的,分流设备接收到该第一流量数据包。

S202、根据第一租户的标识以及数据包哈希值中的至少一种,确定第一流量数据包待分流到的第一流量分析设备。

可选的,第一租户的标识可以用来标识第一租户,另外,数据包哈希值可以用来标识第一租户所产生的流量数据,因此,基于该第一租户的标识和该数据包哈希值中的至少一种,可以将第一租户所产生的流量数据与其他租户所产生的流量数据加以区分。在此基础上,分流设备可以利用第一租户的标识和数据数据包哈希值中的至少一种确定与第一租户所产生的流量数据包最为匹配的流量分析设备,即上述的第一流量分析设备,从而保证分流的均匀性。

针对分流设备,对发送至该分流设备的所有租户的流量数据包进行上述处理后,可以及时解决分流不均的问题。

S203、将第一流量数据包发送至第一流量分析设备,以使得第一流量分析设备基于第一流量数据包中的原始加密数据包进行分析并相应将分析结果发送给流量聚合分析设备进行聚合分析。

可选的,分流设备将第一流量数据包发送至第一流量分析设备后,第一流量分析设备可以对第一流量数据包进行解析,从中获取到上述原始加密数据包,并对该原始加密数据包进行解密以及分析等处理,从而得到分析结果。并将该分析结果发送给流量聚合分析设备进行聚合分析。作为一种可选的方式,第一流量分析设备还可以将该原始加密数据包发送给流量聚合分析设备,以供流量聚合分析设备分析时使用。

可选的,流量聚合设备可以是物理机,可以是云服务器。其作用是将租户可能会分散在不同流量分析设备中的流量进行聚合,示例性的,租户1产生数据包a,数据包b,数据包c,由于数据包a,数据包b,数据包c大小的不同可能会分配在不同的流量分析设备中进行分析,此时需要流量分析设备对数据包a,数据包b,数据包c与租户1做关联,保证发送到下一步骤的数据的是正确的。

本实施例中,虚拟服务器上的代理服务对租户的原始数据包抓取后进行加密封装形成流量数据包并发送至分流设备,分流设备根据第一租户的标识以及数据包哈希值将流量数据包分流至对应的流量分析设备。其中,对数据包进行加密封装,可以避免数据包标识边界模糊,以及避免多个租户拥有相同标识。同时,根据第一租户的标识和数据包哈希值确定流量数据包待分流到的流量分析设备,能够保证分流的均匀性,从而在保证分流均匀性的前提下避免流量分析的硬件成本过高。

作为一种可选的实施方式,上述第一流量数据包中还包括:版本标识、首部校验和、加密标识以及数据长度。

表1是上述第一流量数据包的结构示例图。根据表1可知,第一流量数据包中包括:第一租户的标识、数据包哈希值、原始加密数据包、版本标识、首部校验和、加密标识以及数据长度。其中,加密标识用于指示第一流量数据包中的原始数据包是否为加密数据包。数据长度用于指示原始加密数据包的长度。示例性的,第一租户的标识用于标识第一租户,所占位数为32位。示例性的,数据包哈希值为可配置标识,所占位数为32位。

表1

接下来结合表1及图3,对上述步骤S202中根据第一租户的标识以及数据包哈希值中的至少一种确定流量数据包待分流到的第一流量分析设备的步骤进行说明。如图3所示,上述步骤S202可以包括:

S301、根据版本标识以及首部校验和对第一流量数据包进行数据格式校验,并根据数据长度对第一流量数据包进行数据数据完整性校验。

示例性的,版本标识是用于数据格式标识,所占位数为4位。版本标识例如可以是版本号。

示例性的,首部校验和用于数据格式校验,所占位数为24位。首部校验和的作用是校验数据报头部在传输中是否出错,其方法是,首先在发送端,将检验和字段的16位全置0,然后将头部的数据按16位依次取出后进行反码算术运算求和,接下来在接收端,按照发送端相同的算法,将接收到的头部的数据按16位依次取出进行反码算术运算求和,得到的结果进行取反,如果最后的结果为0,则说明头部传输未出错。

示例性的,数据长度是对原始数据包进行数据完整性校验,所占位数为16位。

S302、若数据格式校验和数据完整性校验均校验通过,则根据第一租户的标识以及数据包哈希值中的至少一种,确定第一流量数据包待分流到的第一流量分析设备。

可选的,若数据格式校验和数据完整性校验均校验通过,则表明第一流量数据包属于可用的数据包,则分流设备可以将该第一流量数据包分流至上述第一流量分析设备。若数据格式校验或数据完整性校验未通过,则分流设备可以将第一流量数据包丢弃,或者,分流设备也可以向第一租户的虚拟服务器的代理服务发送重发指示,以指示代理服务重新发送上述第一流量数据包。

本实施例中,通过对第一流量数据包进行数据格式校验和数据完整性校验,并在校验通过后将第一流量数据包分流至第一流量分析设备,可以保证第一流量数据包的正确性,进而保证第一流量分析设备对第一流量数据包的分析结果的正确性。

在上述步骤S302中根据第一租户的标识以及数据包哈希值中的至少一种确定流量数据包待分流到的第一流量分析设备时,可以通过如下任意一种方式来确定。

第一种方式中,可以利用第一租户的标识确定第一流量分析设备。

接下来结合图4对其步骤进行说明。如图4所示,上述步骤S302中根据第一租户的标识以及数据包哈希值中的至少一种确定流量数据包待分流到的第一流量分析设备的过程可以包括:

S401、获取云流量系统中流量分析设备的数量。

可选的,流量分析设备的数量和节点处理能力决定了流量处理效率。示例性的,分流设备可以读取云流量系统的设备配置信息,从该设备配置信息中获取到当前可使用的流量分析设备的数量。

S402、将第一租户的标识与云流量系统中流量分析设备的数量进行取模计算,得到第一取模结果。

可选的,若第一租户的标识为租户ID,则可以直接将第一租户的标识与云流量系统中流量分析设备的数量进行取模计算。若第一租户的标识为租户名称,则可以首先将租户名称转换为租户ID或者其他编号,再利用该租户ID或其他编号与云流量系统中流量分析设备的数量进行取模计算。以下以第一租户的标识为租户ID为例进行举例说明。

示例性的,假设流量分析设备有N台,租户有M个,其中,M和N分别为大于0的整数,M和N可能相同,也可能不同。作为一种示例,M大于N。假设第I个租户的标识为M[I],则对租户的标识和流量分析设备的数量进行取模得到一个取模结果,即M[I]modN值为K,此时K即为第一取模结果。

S403、将标识为第一取模结果的流量分析设备作为第一流量分析设备。

示例性的,可对流量分析设备进行编号,M[I]modN值为K,K即为上述第I个租户对应的流量分析设备的编号,通过该编号,可以确定该流量分析设备。

第二种方式中,可以同时利用第一租户的标识以及数据包哈希值确定第一流量分析设备。

接下来结合图5对其步骤进行说明。如图5所示,上述步骤S302中根据第一租户的标识以及数据包哈希值中的至少一种,确定流量数据包待分流到的第一流量分析设备的过程可以包括:

S501、获取云流量系统中流量分析设备的数量。

该步骤的执行过程与上述步骤S401的执行过程相同,可以参照步骤S401,此处不再赘述。

S502、确定第一租户的标识与数据包哈希值的加和。

示例性的,假设流量分析设备有N台,租户有M个,将第一租户的标识和加密封装得到的数据包哈希值进行加和,计算值设为P。

S503、将加和与云流量系统中流量分析设备的数量进行取模计算,得到第二取模结果;

示例性的,对第一租户的标识和加密封装得到的数据包哈希值的加和P和云流量系统中流量分析设备的数量N进行取模计算,即PmodN值为K,此时K即为第二取模结果。

S504、将标识为第二取模结果的流量分析设备作为第一流量分析设备。

示例性的,上述K即为上述第I个租户对应的流量分析设备的编号,通过该编号,可以确定该流量分析设备。

上述两种实施例通过将云流量根据租户标识和根据租户标识及数据包哈希值两种情况进行分流时,通过与流量分析设备的数量进行取模的方式确定应发送的流量分析设备,保证了分流的均匀性。

在上述实施例的基础上,若检测到租户流量数据包不能平均分配到流量分析设备,则需要对流量数据包进行修正,值得注意的是,流量分流不均修正与流量分流可以均在分流设备上进行。接下来结合图6对分流修正的一种方式进行说明。如图6所示,本申请的方法还包括:

S601、接收第二租户的虚拟服务器上的代理服务发送的第二流量数据包。

值得注意的是,第二租户可以与第一租户是同一个主体,也可以是不同主体。第二租户为在云流量系统中注册的任一租户。

S602、确定云流量系统是否存在分流不均。

可选的,分流不均是指租户数据包经加密封装后进行分流发送到流量分析设备的过程中,流量分析设备所接收到的流量不均衡。示例性的,某个流量分析设备所接收到的流量数据包远大于其他流量分析设备所接收到的流量数据包。分流不均可能会导致流量分析设备负载过高,分析设备数量多于流量分析实际需求,造成成本增加。如果确定存在匀分流不均,则执行下述步骤S603。若不存在分流均衡,则不需要进行分流修正。

S603、若是,则对第二流量数据包的流量进行哈希计算,得到哈希值。

S604、确定哈希值与多个流量分析设备对应的总权重的第三取模结果。

可选的,多个流量分析设备可以分别具有对应的权重,将各流量分析设备的权重相加,得到上述总权重。多个流量分析设备对应的总权重值需要对分析设备的服务器处理性能进行分析。

S605、将标识为第三取模结果的流量分析设备作为待分流的流量分析设备,并将第二流量数据包发送至待分流的流量分析设备。

可选的,第二流量数据包中租户标识所对应的流量分析设备被分配到的数据是不均衡的,第三取模结果是将租户标识重新分配得到的,使得数据包中租户标识所对应的流量分析设备被分配到的数据是均衡的。

本实施例中,上述云流量分流不均修正的实施例中,通过流量的取模结果,确定对应流量分析设备,通过根据流量分析设备的数据处理性能,确定数据接收量,或者通过单位时段内流量分析设备的实际数据处理性能,确定数据接收量,满足不同状况下云流量分流不均的修正需求,避免流量分析设备闲置或出现过负载情况,使流量分析设备使用效率到达较高状态。

接下来对上述S604中总权重的获取方法进行说明。

一种可选方式中,可以将各流量分析设备对应的预设权重相加,得到总权重。

可选的,预设权重可以是根据流量分析设备的服务器处理性能来配置的,也可以是人为设置的,其中流量分析设备可以是一台或多台。示例性的,设3台流量分析设备服务器权重分别为A、B、C。那么A+B+C即为总权重值。

另一种可选方式中,可以根据各流量分析设备在历史单位时段内接收到的流量数据的数量,确定各流量分析设备的性能权重,根据各流量分析设备的性能权重与各流量分析设备对应的预设权重,确定各流量分析设备的实际权重,将各流量分析设备对应的实际权重相加,得到总权重。

可选的,历史单位时段是数据在进行分流过程中经过的时间段,示例性的,历史单位时段可以是当前时刻之前的1小时。

可选的,各流量分析设备的性能权重是指根据流量分析设备的服务器因为节点不同所导致的不同的处理性能来配置的。实际权重是指各流量分析设备根据实际处理数据的能力所配置的。实际权重是性能权重通过使用分析各流量分析设备所接收到的真实数据包量占总数据包量得到的权重进行调整得到的。示例性的,3台流量分析设备在历史单位时段接收到真实数据包数为P(A)、P(B)、P(C),然后计算各流量分析设备所接受到的真实流量包占总流量包数的百分比,即分别为R(A)、R(B)、R(C),接下来根据分析服务器处理性能权重百分比K(A)、K(B)、K(C),通过公式x=K/R分别计算出各个流量分析设备的权重系数,其中x对应3台分析设备可以表示为K、M、N。则实际权重分别为A*K、B*M、C*N。

接下来结合图7对分流修正的另一种方式进行说明。值得说明的是,下述图7对应的实施例可以与上述图6对应的实施例择一使用,或者,也可以结合使用。在结合执行时,作为一种示例,当分流不均的程度较低时,可以使用上述图6对应的实施例。当分流不均的程度较高时,可以使用下述图7对应的实施例。

如图7所示,本申请的方法还包括:

S701、在云流量系统存在分流不均时,获取当前时间之前的预设时段内所接收到的所有流量数据包的流量。

示例性的,当前时间之前的预设时段内可以是当前时间之前的1小时。

分流设备可以实时对接收到的流量数据包进行统计,每接收到一个流量数据包,则可以将统计值相应增加。分流设备通过获取当前时间之前的预设时段内的统计值,可以获知该预设时段内所接收到的所有流量数据包的流量。

S702、根据各流量数据包的流量大小,对各流量数据包进行排序,并根据排序结果确定至少一个目标流量数据包。

其中,上述至少一个目标流量数据包是各流量数据包中流量最大的数据包。

可选的,对各流量数据包进行排序可以是由大到小,也可以是由小到大。

可选的,目标流量数据包可以是所排序中从最大的起开始选择,也可以是从所排序中的从最小的起开始选择。示例性的,假设数据包为1、2、3、4、5,则目标数据包可以是1、2,也可以是5、4。

S703、将至少一个目标流量数据发送至当前流量最低的流量分析设备。

示例性的,可以通过分流设备实时监控分配到流量分析设备的流量,或通过外部监控组件监控上述流量。

本实施例中,上述实施例对分流不均的程度较高状态下的流量数据包进行排序,通过将获取到的流量最大的数据包发送到当前流量最低的流量分析设备,这一全局计算过程满足了对流量分流不均程度较高所带来的资源浪费,使数据包能够高效的平均分流到流量分析设备。

通过对租户数据包的分流实现了流量分析设备的高效利用,避免分析设备节点负载过高,流量分析缓慢等资源不能充分利用的问题。

基于同一发明构思,本申请实施例中还提供了云流量数据处理装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述云流量数据处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参照图8所示,为本申请实施例提供的一种云流量数据处理装置的示意图,装置包括:接收模块801、确定模块802、发送模块803,其中:

接收模块801,用于接收第一租户的虚拟服务器上的代理服务发送的第一流量数据包,其中,代理服务用于对第一租户的虚拟服务器进行流量数据抓取,并对抓取的流量数据进行加密和封装以形成第一流量数据包,第一流量数据包中至少包括:第一租户的标识、数据包哈希值以及原始加密数据包。

确定模块802,用于根据第一租户的标识以及数据包哈希值中的至少一种,确定第一流量数据包待分流到的第一流量分析设备;

发送模块803,用于将第一流量数据包发送至第一流量分析设备,以使得第一流量分析设备基于第一流量数据包中的原始加密数据包进行分析并相应将分析结果发送给流量聚合分析设备进行聚合分析。

可选的,确定模块802还用于:

根据版本标识以及首部校验和对第一流量数据包进行数据格式校验,并根据数据长度对第一流量数据包进行数据数据完整性校验;

若数据格式校验和数据完整性校验均校验通过,则根据第一租户的标识以及数据包哈希值中的至少一种,确定第一流量数据包待分流到的第一流量分析设备。

可选的,确定模块802还用于:

获取云流量系统中流量分析设备的数量;

将第一租户的标识与云流量系统中流量分析设备的数量进行取模计算,得到第一取模结果;

将标识为第一取模结果的流量分析设备作为第一流量分析设备。

可选的,确定模块802还用于:

获取云流量系统中流量分析设备的数量;

确定第一租户的标识与数据包哈希值的加和;

将加和与云流量系统中流量分析设备的数量进行取模计算,得到第二取模结果;

将标识为第二取模结果的流量分析设备作为第一流量分析设备。

可选的,接收模块801还用于:

接收第二租户的虚拟服务器上的代理服务发送的第二流量数据包;

可选的,确定模块802还用于:

确定云流量系统是否存在分流不均,若是,则对第二流量数据包的流量进行哈希计算,得到哈希值;确定哈希值与多个流量分析设备对应的总权重的第三取模结果;

可选的,发送模块803还用于:

还用于将标识为第三取模结果的流量分析设备作为待分流的流量分析设备,并将第二流量数据包发送至待分流的流量分析设备。

总权重通过如下任意一种方式计算得到:

将各流量分析设备对应的预设权重相加,得到总权重;

或者,根据各流量分析设备在历史单位时段内接收到的流量数据的数量,确定各流量分析设备的性能权重,根据各流量分析设备的性能权重与各流量分析设备对应的预设权重,确定各流量分析设备的实际权重,将各流量分析设备对应的实际权重相加,得到总权重。

可选的,确定模块802还用于:

在云流量系统存在分流不均时,获取当前时间之前的预设时段内所接收到的所有流量数据包的流量;根据各流量数据包的流量大小,对各流量数据包进行排序,并根据排序结果确定至少一个目标流量数据包;

可选的,发送模块803还用于:

将至少一个目标流量数据包发送至当前流量最低的流量分析设备。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。

本申请实施例还提供了一种电子设备,如图9所示,为本申请实施例提供的电子设备结构示意图,包括:处理器901、存储器902和总线。存储器902存储有处理器901可执行的机器可读指令(比如,图8中的装置中接收模块801、确定模块802、发送模块803对应的执行指令等),当计算机设备运行时,处理器901与存储器902之间通过总线通信,机器可读指令被处理器901执行时执行上述云流量数据处理方法的处理。

本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述云流量数据处理方法的步骤。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。

相关技术
  • 云盘数据处理方法、装置、电子设备及存储介质
  • 数据处理方法、装置、计算机可读存储介质和电子设备
  • 路由数据处理方法、装置、电子设备及存储介质
  • 数据处理方法及装置、电子设备、存储介质
  • 屏幕布局数据处理方法、装置、电子设备及存储介质
  • 云产品数据处理方法、装置、电子设备和可读存储介质
  • 基于云应用的数据处理方法、装置、电子设备及存储介质
技术分类

06120115931306