System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种高效的DNS流量日志有损压缩方法及装置制造方法及图纸_技高网

一种高效的DNS流量日志有损压缩方法及装置制造方法及图纸

技术编号:44572529 阅读:5 留言:0更新日期:2025-03-11 14:32
本发明专利技术涉及数据压缩领域,特别是DNS流量日志高效压缩。当前主流技术普遍采用gzip算法直接对DNS流量日志文件进行压缩。由于现有技术压缩效果有限,为了更有效地节省存储空间,本发明专利技术采用一种基于时间戳差值、TOP域名编码、DNS地址编码以及域名分布重组的压缩技术来处理DNS流量日志。针对域名压缩,本发明专利技术使用常用的TOP域名编码替换。针对DNS地址压缩,本发明专利技术采用全量的DNS地址编码替换,进一步缩减数据量。针对时间戳压缩,本发明专利技术先将当前的时间日期转换为时间戳,再用时间差值替换。此外,针对大段的DNS流量日志压缩效果不佳的问题,本发明专利技术提出了一种新的方法:使用域名分布重组技术再进行压缩。由此,本发明专利技术通过提高DNS流量日志的相似度,进一步提升gzip压缩效果。

【技术实现步骤摘要】

本专利技术涉及数据压缩领域,特别是一种高效的dns流量日志有损压缩方法及装置。


技术介绍

1、通常情况下,采集dns流量日志会涉及收集一定时间段内的dns流量报文,并将这些报文中的关键信息,如时间戳、域名以及ip地址等,在解析后以文本格式记录到文件中。然而,面对大流量的dns报文,往往会生成大量高度冗余的文本数据,这对存储资源构成了不小的挑战。为了有效节省存储空间,一种常见的做法是直接采用gzip算法对流量日志进行压缩处理。

2、gzip 是 gnu zip 的缩写,它是一个 gnu 自由软件的文件压缩程序,也经常用来表示 gzip 这种文件格式。软件的作者是 jean-loup gailly 和 mark adler。gzip 的基础 是 deflate,deflate 是 lz77 与哈夫曼编码的一个组合体。deflate 最初是作为 lzw以及其它受专利保护的数据压缩算法的替代版本而设计的,当时那些专利限制了compress 以及其它一些流行的归档工具的应用。压缩文件的基本原理是查找文件内的重复字节,并建立一个相同字节的词典文件,并用一个代码表示,比如在文件里有几处有一个相同的词用一个代码表示并写入词典文件,这样就可以达到缩小文件的目的。

3、当前主流技术普遍采用gzip算法直接对dns流量日志文件进行压缩(见图1)。然而,gzip压缩技术的优势主要体现在对较小长度且连续高冗余度的文本数据上,能够显著提升压缩率。但对于体积庞大且冗余度分布非连续性的文本文件,如大流量的dns流量日志,gzip的压缩效果则显得相对有限,难以达到理想的存储空间节省目标。


技术实现思路

1、鉴于现有技术压缩效果有限,为了更有效地节省存储空间,本专利技术推荐采用一种基于时间戳差值、top域名编码、dns地址编码以及域名分布重组的压缩技术来处理dns流量日志。

2、在域名压缩方面,鉴于域名往往占用数十乃至数百字节的存储空间,本专利技术建议使用常用的top域名编码进行替换,从而大幅减少存储需求。对于dns地址的压缩,本专利技术则推荐采用全量的dns地址编码进行替换,进一步缩减数据量。在时间戳压缩方面,本专利技术首先将当前的时间日期转换为时间戳,然后使用时间差值进行替换,以减少时间信息的存储空间占用。这种策略能够显著减少原本需要14个字节以上的时间日期信息的存储需求。此外,针对大段的dns流量日志压缩效果不佳的问题,本专利技术提出了一种新的方法:使用域名分布重组技术再进行压缩。在处理过程中,本专利技术会根据系统中现有dns流量日志top100000域名行数占比,然后根据需要重组的文件数,在保证单个域名只存放在唯一文件的同时,把所有域名分配到特定新文件中。通过这种方式,本专利技术能够提高dns流量日志的相似度,从而进一步提升gzip压缩的效果。

3、综上所述,这种综合压缩策略能够更高效地利用存储空间,满足大流量dns日志的存储需求。

4、1、域名压缩流程具体如下:首先,会收集当前系统最常用的top 100000个域名,并将这些域名进行编码,编码范围为0至99999。为了区分这些编码后的域名与原始域名或其他非top域名,我们在每个编码的开头增加一个特定的标识符“:”(冒号)。对于不在top100000之列的域名,则保持其不变,不进行任何编码或添加标识符的操作。在解压缩过程中,会对包含标识符“:”的文本进行特殊处理。它会对照之前保存的top100000域名表,将带有标识符的编码还原为对应的原始域名。而对于那些没有标识符的文本,则直接保持其原样不变。

5、这种域名压缩方法在某些系统中可能存在一定的局限性,特别是对于那些极少数但极短且高频率出现的域名,其压缩效果可能并不理想。此外,为了支持这种压缩和解压缩操作,需要维护一个包含最多top 100000个域名的对照表,这在一定程度上增加了存储和管理成本。然而,对于大多数包含大量不同域名的系统而言,这种方法仍然是一种有效的压缩手段,能够显著减少域名的存储空间需求。

6、2、dns地址编码压缩优化流程如下:鉴于dns地址总量相对有限,我们首先会系统性地收集当前环境中频繁使用的dns地址。随后,根据这些地址在日志中出现的频次,从高到低进行排序。在此基础上,为每一个dns地址分配一个从0开始的唯一编码,以此编码来替代日志中原本的dns地址,对于极少数不常见的dns地址,则保持不变,从而实现日志数据的压缩。在解压缩过程中,会对dns地址为纯数字的文本进行特殊处理。它会对照之前保存的dns地址编码表,将编码还原为对应的原始dns地址。

7、在解压缩环节,面对那些已被编码替代的文本,我们将依据事先构建的常用dns地址对照表,逐一还原出原始的dns地址。值得注意的是,为了支持这一压缩与解压缩过程,系统必须维护一份详尽的全量dns地址对照表,以确保数据的准确恢复。

8、这种dns地址压缩方法,不仅有效缩减了日志数据的存储空间,还提升了数据处理效率,尤其适用于那些dns地址重复出现率高、且对存储空间有严格要求的场景。

9、3、时间戳差值压缩流程如下:时间戳差值压缩技术是一种日志处理策略,其核心在于首先保留日志文件中第一行记录的时间戳作为基准时间。自第二行记录起,每一行的时间戳均转换为相对于基准时间的差值,并以此来替换原始的时间日期。这一转换过程有效地减少了时间戳数据的存储空间占用。

10、在解压缩阶段,该流程通过重新应用这些时间差值到基准时间戳上,实现原始时间戳的精确恢复。随后,这些恢复后的时间戳被转换回标准的时间日期格式,以便恢复原始的日志时间信息。

11、值得注意的是,这种时间戳差值压缩方法对于日志量较小的单个日志文件而言,其压缩效率并不显著。因为压缩效果很大程度上依赖于日志行数。

12、时间戳是自 1970 年 1 月 1 日(00:00:00 gmt)以来的秒数,也被称为 unix 时间戳(unix timestamp)。unix时间戳(unix timestamp),或称unix时间(unix time)、posix时间(posix time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。

13、4、域名分布重组的流程涉及以下几个步骤:首先,统计top100000域名在当前系统中的比例。随后,依据这些域名日志行数的大致比例,将它们分别分配到多个文件中。在此过程中,确保同一个域名的所有日志条目仅被写入到一个单一的文件中。对于日志行数占比较小的域名或者top100000以外的域名,为了优化存储效率,则这些域名的日志合并写入同一个文件。

14、采用了这种策略,即确保同一域名的日志条目集中存储,使得单个日志文本的冗余度得到了显著提升。这一改变进而极大地增强了gzip压缩算法的效果,因为gzip在处理高度重复的文本数据时,能够实现更高的压缩比。因此,整个重组流程通过优化了数据的存储结构,提高了压缩效果,进一步节省了存储本文档来自技高网...

【技术保护点】

1.一种高效的DNS流量日志有损压缩方法,其特征在于,包括以下步骤:

2.如权利要求1所述的方法,其特征在于,TOP域名编码表的生成方式如下:

3.如权利要求1所述的方法,其特征在于,DNS地址编码表的生成方式如下:

4.如权利要求1所述的方法,其特征在于,时间差值的计算方式如下:

5.如权利要求1所述的方法,其特征在于,流量日志条目重组包括以下具体步骤:

6.一种高效的DNS流量日志有损压缩装置,其特征在于,包括以下模块:

7.如权利要求6所述的装置,其特征在于:

8.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,其特征在于,所述指令当由计算设备执行时,使得所述计算设备执行如权利要求1至5中任一所述的方法。

9.一种电子设备,其特征在于,包括一个或多个处理器、一个或多个存储器以及一个或多个程序,其中一个或多个程序存储在所述一个或多个存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行如权利要求1至5中任一所述方法的指令。

【技术特征摘要】

1.一种高效的dns流量日志有损压缩方法,其特征在于,包括以下步骤:

2.如权利要求1所述的方法,其特征在于,top域名编码表的生成方式如下:

3.如权利要求1所述的方法,其特征在于,dns地址编码表的生成方式如下:

4.如权利要求1所述的方法,其特征在于,时间差值的计算方式如下:

5.如权利要求1所述的方法,其特征在于,流量日志条目重组包括以下具体步骤:

6.一种高效的dns流量日志有损压缩装置,其特征在于,包括以下模块:<...

【专利技术属性】
技术研发人员:戴云伟汪勇成旭东
申请(专利权)人:江苏省未来网络创新研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1