本公开涉及计算机,尤其涉及基于sketch的流量处理方法、流量结果查询方法及装置。
背景技术:
1、网络流量测量是网络运维的基础,广泛应用于流量工程、异常检测、故障排除和网络计费等领域。通过网络流量测量,可以快速高效评估网络的效率和可靠性,并且能够发现和解决问题,以提高网络的性能和可用性。
2、而基于sketch(草图)的网络流量测量是相关技术中较为常见的网络流量测量方式,通过牺牲一定的准确度记录网络中的流量信息而并非每个数据包的信息,从而可以显著减少网络流量测量所需的内存资源。相关技术中通常能够比较准确的实现包粒度下的数据统计,而无法同时准确的实现字节粒度下的数据统计。
技术实现思路
1、本公开提供了一种基于sketch的流量处理方法、流量结果查询方法及装置。
2、根据本公开的第一方面,提供了一种基于sketch的流量处理方法,应用于可编程交换机,所述方法包括:
3、对待检测流量分别进行包粒度和字节粒度的数据统计;
4、将所述包粒度的数据统计结果插入到所述可编程交换机的sketch存储空间,并通过压缩和概率补偿方式将所述字节粒度的数据统计结果插入到所述可编程交换机的sketch存储空间;其中,所述压缩和概率补偿方式用于对所述字节粒度的数据统计结果进行数量级转换。
5、根据本公开的第二方面,提供了一种基于sketch的流量结果查询方法,应用于服务器,所述方法包括:
6、获取待查询流量的标识信息,并基于所述标识信息对可编程交换机的sketch存储空间进行流量查询处理;
7、获取对所述sketch存储空间的包粒度的第一查询结果,并获取对所述sketch存储空间的字节粒度的第二查询结果;
8、通过所述第一查询结果和所述第二查询结果进行相互校验,获得相互校验后所述包粒度对应的第一目标查询结果和所述字节粒度对应的第二目标查询结果。
9、根据本公开的第三方面,提供了一种基于sketch的流量处理装置,应用于可编程交换机,所述装置包括:
10、数据统计模块,用于对待检测流量分别进行包粒度和字节粒度的数据统计;
11、数据插入模块,用于将所述包粒度的数据统计结果插入到所述可编程交换机的sketch存储空间,并通过压缩和概率补偿方式将所述字节粒度的数据统计结果插入到所述可编程交换机的sketch存储空间;其中,所述压缩和概率补偿方式用于对所述字节粒度的数据统计结果进行数量级转换。
12、根据本公开的第四方面,提供了一种基于sketch的流量结果查询装置,应用于服务器,所述装置包括:
13、数据查询模块,获取待查询流量的标识信息,并基于所述标识信息对可编程交换机的sketch存储空间进行流量查询处理;
14、查询结果获取模块,用于获取对所述sketch存储空间的包粒度的第一查询结果,并获取对所述sketch存储空间的字节粒度的第二查询结果;
15、数据校验模块,用于通过所述第一查询结果和所述第二查询结果进行相互校验,获得相互校验后所述包粒度对应的第一目标查询结果和所述字节粒度对应的第二目标查询结果。
16、根据本公开的第五方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
17、根据本公开的第六方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本公开的上述方法。
18、本公开实施例提供的基于sketch的流量处理方法、流量结果查询方法及装置,通过对待检测流量分别进行包粒度和字节粒度的数据统计,将包粒度的数据统计结果插入到可编程交换机的sketch存储空间,并通过压缩和概率补偿方式将字节粒度的数据统计结果插入到可编程交换机的sketch存储空间。由于压缩和概率补偿方式能够降低字节粒度的数据统计结果的数量级,并且还可以保证字节粒度的数据统计结果的精度,这样可以实现同时准确的对包粒度的数据统计和字节粒度的数据统计。
1.一种基于sketch的流量处理方法,其特征在于,应用于可编程交换机,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述通过压缩和概率补偿方式将所述字节粒度的数据统计结果插入到所述可编程交换机的sketch存储空间,包括:
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,在所述可编程交换机中创建第一sketch存储空间和第二sketch存储空间;其中,所述第一sketch存储空间位于所述可编程交换机中流水线的先访问部分,所述第二sketch存储空间位于所述可编程交换机中流水线的后访问部分;所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述第一sketch存储空间和所述第二sketch存储空间分别包含多层结构;在向所述第一sketch存储空间分配所述字节粒度的计数器之后,所述方法还包括:
6.根据权利要求4所述的方法,其特征在于,所述可编程交换机中流水线的先访问部分还包括插入预处理模块,所述方法还包括:
7.一种基于sketch的流量结果查询方法,其特征在于,应用于服务器,所述方法包括:
8.根据权利要求7所述的方法,其特征在于,所述通过所述第一查询结果和所述第二查询结果进行相互校验,包括:
9.一种基于sketch的流量处理装置,其特征在于,应用于可编程交换机,所述装置包括:
10.一种基于sketch的流量结果查询装置,其特征在于,应用于服务器,所述装置包括:
11.一种电子设备,其特征在于,包括:
12.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-8中任一项所述的方法。