面向千万级规模网络的多模式串匹配算法的优化研究

来源 :哈尔滨工业大学 | 被引量 : 0次 | 上传用户:yh603469940
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网的日益强大,互联网上数据急剧增多,如何在海量的数据中快速准确的找到所需信息,就显得尤为重要,这就需要多模式串匹配算法。同时越来越多的人使用互联网就会使互联网的安全也变得越来越重要,如何尽可能早的识别出网络攻击行为,就需要对相关的行为进行分析比对,同样需要多模式匹配算法的应用。而且随着时代的发展,多模式串匹配算法在越来越广阔的范围里都有着相当多的运用,比如:信息安全领域中:入侵侦测系统等;在医学领域;数据挖掘,信息检索,文本编辑器,计算生物学和对象识别等等领域中均有广泛的应用。本文通过对现今的几种相对主流的多模式串匹配算法的阐述总结,针对千万规模级网络上数据流的特点,在模式串集合较小的情况下选取了AC_QS(AhoCorasick_Quick Search)算法作为探究对象;当模式串集合规模较大,达到上万或者更大级别,或者机器实际的内存开销不足以运行AC_QS算法时,本文选取了KR(Karp Rabin)算法作为探究对象。AC(Aho Corasick)算法在这样如此多的多模式串字符串匹配算法中是第一个时间消耗为线性的高效算法,其算法处理匹配时间短。AC_QS算法是使用AC算法的所有步骤,但在处理过程中利用QS(Quick Search)算法的思想进一步增加字符跳转距离而得到的算法,利用不出现字符的机制,进一步增加了匹配时跳转的字符数,改善优化了算法,提高了算法的运行效率,但其空间占用量也进一步的变高。本文在AC_QS算法的基础上主要针对其在模式串预处理过程,建立字典树和与目标文本的匹配过程三个方面进行了优化改善。对模式串预处理中的优化主要表现在提前比较不在模式串中出现的字符,划分目标段更加方便并行处理,提高访问模式串字符的访问效率。对字典树的优化,主要表现在利用有序树的方式对字典树进行存储,减少字符的比较次数。匹配过程中的优化,是在匹配过程中发现当前匹配的部分字符不可能匹配某个模式串,则将该模式串置为当前不可用状态,使得此模式串中字符变成无关字符,不进行比较,达到减少部分比较次数的目的。本文针对大规模模式串集合提出的另一种基于KR算法的优化算法,该算法是利用哈希函数的特性对字符串进行哈希计算。本文首先设计了哈希函数,然后将模式串进行合适的分类,按照设计好的哈希函数,求出模式串半段对应的哈希值,然后对目标文本串按照设定的基准长度化分片段,每次比较目标段是否含有模式串的半段。这样算法每次处理目标段的半段即可,这样极大的减少了KR算法执行过程里的字符匹配个数,使得KR优化算法的性能得到明显提升。综上,本文设计的多模式匹配算法AC_QS优化算法和KR优化算法,都是针对千万级规模网络的来设计。AC_QS优化算法保证了算法的高效运行,但是需要消耗更多的内存。KR优化算法主要适用在无法为AC_QS优化算法提供充足的内存支持的情况下,能够处理相当大的模式串集合,因为算法的内存占用相当小。并通过实验对两个算法都与别的算法进行了实验比对,并分析了算法的时间复杂度和空间复杂度等相关性能指标,检验了算法,得出了最终结论。
其他文献
随着物联网技术的发展,无线传感器网络作为最为核心的基础设施,其应用场景越来越广泛,其中,它在比较恶劣或特殊环境中进行监测工作的作用是无可替代的。感知数据的收集是无线传感
图像已然成为现代社会信息传播的最基本最简单的方式,它的显著特点是数据量大。将它应用于图像处理过程中时,有两个亟待解决的问题:(1)需要大量的存储空间;(2)传输时对信道容量要求高
近年来我国经济持续发展的同时,中国民航工业也得以迅猛发展,民机客服成本预测对我国民航工业的发展具有重要意义。如何对民机客服成本进行准确预测、提高客户服务质量和效率、
随着信息技术和网络技术的迅猛发展,传统的考试运行方式早已远远满足不了与日俱增的各种考试需要,灵活高效的网络在线考试将是教育信息化发展的必然趋势。  统一建模语言UM
无线传感器网络综合了传感器、嵌入式、分布式计算和无线通信等技术,是一种全新的信息获取和处理技术。它以其自组织性、灵活性、低成本、微型性等特点,广泛地应用于环境监测
后基因组时代,基因序列已经被破译,但生物功能的奥秘还没有解开。随着生物实验技术的快速发展,产生了大量的蛋白质交互网络数据,它蕴含着蛋白质之间相互作用的重要信息。利用蛋白
无线射频识别技术,即RFID(Radio Frequency Identification),是一种通信技术,是采取无线射频方式进行非接触的通讯,是能够自动识别物品并获取数据的一种快速识别技术,该技术
在当今的基因组时代,已经产生了大量与基因相关的生物数据,在线人类孟德尔遗传数据库(Online Mendilian Inheritance In Man,OMIM)便是其中之一。随着生物信息学的发展,计算基因之
自公钥密码学提出以来,各方密码学学者提出各种各样的公钥加密方案,并给出不同安全性模型下安全性证明。模糊身份加密(Fuzzy Identity-Based Encryption,FIBE)方案正是基于IBE(Iden
到二十一世纪,人类进入了所谓的后PC时代,嵌入式技术作为后PC时代的技术主力,得到了迅猛的发展。嵌入式技术以具体应用为中心,结合计算机技术和通信技术已经成为研究与开发的