CN114020657A - 报文查找方法、系统、存储介质及电子设备 - Google Patents

报文查找方法、系统、存储介质及电子设备 Download PDF

Info

Publication number
CN114020657A
CN114020657A CN202111292966.3A CN202111292966A CN114020657A CN 114020657 A CN114020657 A CN 114020657A CN 202111292966 A CN202111292966 A CN 202111292966A CN 114020657 A CN114020657 A CN 114020657A
Authority
CN
China
Prior art keywords
memory
keyword
data item
item corresponding
found
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111292966.3A
Other languages
English (en)
Other versions
CN114020657B (zh
Inventor
朱敏
李桧
黄静波
张沛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuxi Muchuang Integrated Circuit Design Co ltd
Original Assignee
Wuxi Muchuang Integrated Circuit Design Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuxi Muchuang Integrated Circuit Design Co ltd filed Critical Wuxi Muchuang Integrated Circuit Design Co ltd
Priority to CN202111292966.3A priority Critical patent/CN114020657B/zh
Publication of CN114020657A publication Critical patent/CN114020657A/zh
Application granted granted Critical
Publication of CN114020657B publication Critical patent/CN114020657B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本申请涉及数据处理技术领域,具体涉及一种报文查找方法、系统、存储介质及电子设备,包括:接收用户的查找指令;根据关键词在第一存储器中进行查找;第一存储器中存有第二存储器中经常被访问到的数据项;若在第一存储器中查找到与关键词相对应的数据项,则向用户反馈与关键词相对应的数据项中的数据;否则根据关键词在第二存储器中进行查找;若在第二存储器中查找到与关键词相对应的数据项,则向用户反馈与关键词相对应的数据项中的数据;否则向用户反馈表示查找失败的提示信息。本申请的报文查找方法,在完全替代TCAM功能的基础上,采用优先查找常用数据项存储器的方式,降低了功耗,节约了成本。

Description

报文查找方法、系统、存储介质及电子设备
技术领域
本申请涉及数据处理技术领域,特别地涉及一种报文查找方法、系统、存储介质及电子设备。
背景技术
TCAM(Ternary Content Addressable Memory)是一种三态内容寻址存储器,尤其适用于高速的IP报文查找。在报文查找方面,它具有以下优势:
表内条目尽可能做到并行访问,搜索时不需要或较少需要遍历;
TCAM的结构已经经过了优化,支持更抽象的操作,通常是基于二进制关键字匹配,查询相当快;
TCAM既支持精确查找,又支持模糊查找。
但是,TCAM也存在以下缺点:
成本高:与一般的随机存储器RAM相比,单位比特的TCAM更为昂贵,而且存储芯片的容量相对要小一些;
功耗大:由于TCAM使用的是并行匹配比较方式,所以TCAM芯片的功耗较大。查找过程所有关键字表项都进行了比较,但是实际能够匹配上的关键字只是几项,因此大部分的比较操作都被浪费了。
发明内容
针对上述问题,本申请提供一种报文查找方法、系统、存储介质及电子设备,解决了相关技术中采用TCAM进行报文查找存在的成本高,功耗大的技术问题。
第一方面,本申请提供了一种报文查找方法,所述方法包括:
接收用户的查找指令,所述查找指令中包含关键词;
根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;
若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;
若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;
若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;
若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。
在一些实施例中,在若在所述第二存储器中查找到与所述关键词相对应的数据项之后,还包括:
将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
在一些实施例中,若所述第一存储器已满,则所述将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中,包括:
按照预设的置换算法将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
在一些实施例中,所述第一存储器为cache存储器,所述第二存储器为RAM存储器。
在一些实施例中,所述预设的置换算法为NRU置换算法或NFU置换算法。
第二方面,一种报文查找系统,所述系统包括:
接收单元,用于接收用户的查找指令,所述查找指令中包含关键词;
查找单元,根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。
在一些实施例中,所述系统还包括:
写入单元,用于将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
在一些实施例中,若所述第一存储器已满,则所述写入单元,用于按照预设的置换算法将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
第三方面,一种存储介质,该存储介质存储的计算机程序,可被一个或多个处理器执行,可用来实现如上述第一方面所述的报文查找方法。
第四方面,一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述存储器和所述处理器之间互相通信连接,该计算机程序被所述处理器执行时,执行如上述第一方面所述的报文查找方法。
本申请提供的一种报文查找方法、系统、存储介质及电子设备,包括:接收用户的查找指令,所述查找指令中包含关键词;根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。本申请的报文查找方法,在完全替代TCAM的基础上,采用优先查找常用数据项存储器的方式,降低了功耗,节约了成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种报文查找方法的流程示意图;
图2为本申请实施例提供的cache存储器和RAM存储器的数据项结构示意图;
图3为本申请实施例提供的掩码查找匹配范围示意图;
图4为本申请实施例提供的一种报文查找系统的结构示意图;
图5为本申请实施例提供的一种电子设备的连接框图。
具体实施方式
以下将结合附图及实施例来详细说明本申请的实施方式,借此对本申请如何应用技术手段来解决技术问题,并达到相应技术效果的实现过程能充分理解并据以实施。本申请实施例以及实施例中的各个特征,在不相冲突前提下可以相互结合,所形成的技术方案均在本申请的保护范围之内。
由背景技术可知,TCAM也存在以下缺点:
成本高:与一般的随机存储器RAM相比,单位比特的TCAM更为昂贵,而且存储芯片的容量相对要小一些;
功耗大:由于TCAM使用的是并行匹配比较方式,所以TCAM芯片的功耗较大。查找过程所有关键字表项都进行了比较,但是实际能够匹配上的关键字只是几项,因此大部分的比较操作都被浪费了。
有鉴于此,本申请提供一种报文查找方法、系统、存储介质及电子设备,解决了相关技术中采用TCAM进行报文查找存在的成本高,功耗大的技术问题。。
实施例一
图1为本申请实施例提供的一种报文查找方法的流程示意图,如图1所示,本方法包括:
S101、接收用户的查找指令,所述查找指令中包含关键词;
S102、根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;
S103、若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;
S104、若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;
S105、若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;
S106、若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。
在一些实施例中,所述第一存储器为cache存储器,所述第二存储器为RAM存储器。
需要说明的是,本申请中采用第一存储器和第二存储器共同组合替代和实现TCAM的报文查找功能,第一存储器和第二存储器中均存有数据项,存储结构为<五元组、掩码、输出地址>,如图2所示,为本申请中cache存储器和RAM存储器的数据项结构示意图,其中tuple5为五元组,mask为掩码,index/addr为输出数据的输出地址。
其中,cache:规模较小,但速度很高的存储器。用于缓存RAM中经常被访问到的一些数据项;不同的RAM间是并行比较查找的,同一块RAM中是遍历比较查找。且读写速度都比cache要慢。
进一步需要说明的是,本申请采用的cache存储器和RAM存储器模拟的TCAM与真正的TCAM存储器相比,容量更大,价格便宜,降低了实际的存储空间单位价格,进一步降低了成本。
基于两个存储器模拟的TCAM能够实现的基本操作有三种:
写操作:输入地址和数据,将数据写到指定的地址上。cache命中时,写入速度与cache写入速度相同;cache未命中时,写入速度与RAM相同;
读操作:输入地址,返回该地址上的数据。cache命中时,读取速度与cache读取速度相同;cache未命中时,读取速度与RAM相同;
查找操作:输入待查数据(例如关键词),返回该数据对应的数据,一般为地址值或者目录索引,当cache命中时,查找时间为cache并行查找的时间,为一个时钟周期;而cache未命中时,查找时间为cache并行查找的时间加上RAM的查找时间。RAM中查找时,不同的RAM块间是并行查找的,同一个RAM块内是遍历查找,所以查找时间要远远慢于cache命中时的查找时间,需要较多个时钟周期。
此外,在cache存储器和RAM存储器中的数据项存储格式中可以看到掩码mask,这表示本申请既能进行精确匹配查找,又能进行模糊匹配查找。
掩码是一个二进制数,控制Key和Value的二进制比较,其中key就是输入的关键词,通常为数据包的五元组。
当掩码某位为1,表示Key和Value比较时,该位需要成功匹配;
当掩码某位为0,表示Key和Value比较时,该位不需要成功匹配。
例如,TCAM中存储一个数据为Value=1010,Mask=1100。因为掩码使Value末两位不需要成功匹配,所以要是前两位与Value相等为10,就可以与该条目匹配成功。即匹配的范围为10**(其中*表示意任意二进制数0或者1,即模糊查找)。
同理,修改Value和Mask,可以得到不同的匹配范围,如图3所示,为本申请提供的掩码查找匹配范围示意图。从图3中可以看到,掩码mask中取值为1的位置对应的Value值的位置,需要进行匹配,掩码mask中取值为0的位置对应的Value值的位置,不需要必须匹配到相同的内容。从而实现模糊匹配查找。
在一些实施例中,在若在所述第二存储器中查找到与所述关键词相对应的数据项之后,还包括:
将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
需要说明的是,在所述第二存储器中查找到与所述关键词相对应的数据项,则可以认为该数据项为经常被访问的数据项,此时可以将该数据项加入到存有第二存储器中经常被访问到的数据项的第一存储器中,实现优先查找常用数据项存储器的方式,降低了功耗,节约了成本。
在一些实施例中,若所述第一存储器已满,则所述将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中,包括:
按照预设的置换算法将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
在一些实施例中,所述预设的置换算法为NRU置换算法或NFU置换算法。
需要说明的是,由于Cache的容量有限,因此当Cache的容量用完后,而又有新的数据项需要添加进来时,就需要挑选并舍弃原有的部分数据项,从而腾出空间来放新数据项。此时就需要一些数据项置换算法,比较常见的是下面几种。
FIFO(First In First Out)
先进先出置换算法。这个就是类似于队列,先装入的数据项先被置换掉。
优点:易于实现;
缺点:有可能淘汰频繁使用的数据项,使用效果不好。
LRU(Least Recently Used)
LRU(Least Recently Used),最近最少使用数据项置换算法,在发生cache未命中时,替换掉最近一段时间内最久没有使用过的数据项。基于局部性原理:前面使用频繁的数据项很可能在后面也被频繁使用,反过来说就是已经很久没有使用的数据项很可能在未来较长的一段时间内不会被用到。
优点:预测效果好,替换合理;
缺点:实现方法的不足。效率高的硬件算法通常在大多数机器上无法运行,而软件算法则开销太大。
NRU(Not Recently Used)
最近未被使用数据项置换算法,性能不是最优,又称为近似的LRU算法。每个数据项有两个位:R位(标识最近是否被访问)和M位(标识最近是否被修改),初始时均为0。一旦因为访问发生数据项cache未命中,则设置R位为1;一旦因为写数据发生数据项cache未命中,则设置M位为1。此外R随着时钟周期被定期地清零,以区别最近是否被访问,不把M清零是为了决定是否写回RAM。当发生数据项cache未命中时,将cache中的数据项分为四类:
第0类:R=0,M=0;
第1类:R=0,M=1;
第2类:R=1,M=0;
第3类:R=1,M=1;
cache从类编号最小的数据项中选择一个并置换掉。
NFU(Not Frequently Used)
NFU(Not Frequently Used)最不常用数据项置换算法,即:置换一段时间内被访问次数最少的数据项。具体实现为:每个数据项使用一个计数器,每次cache命中成功时,将页面的R位(是否被引用,0或1)加到计数器上。cache命中失败且需要置换时,置换计数器值最小的数据项。
综上,各种置换算法比较如表1所示。
置换算法 注释 实现代价 置换效果
FIFO(先进先出) 容易抛弃重要数据项 很低 很差
LRU(最近最少使用) 很优秀,但难实现 很高 很好
NRU(最近未使用) 对LRU的很粗糙近似 较低 较好
NFU(最不经常使用) 对LRU的粗略近似 较低 较好
表1
四种置换算法实现代价和置换效果各有不同。其中FIFO置换效果太差,而LRU是实现代价太高,都过于极端,所以在实际中较少使用。实际中,使用较多是NRU和NFU算法,下面对这两种算法进行比较。
NFU与NRU的区别:
NRU是看数据项最后一次被使用到发生置换经历的时间长短;
NFU是看一定时间段内数据项被使用的频率。
NFU与LRU的各自适用场合:
NRU算法适合:从RAM载入数据项到cache代价相对较小的情况;
NFU算法适合:从RAM载入数据项到cache代价较大,如:数据项较大或RAM访问速度特别慢等。
因此,可以根据实际情况和需要选择NRU置换算法或NFU置换算法。
综上所述,本申请实施例提供了一种报文查找方法,包括:接收用户的查找指令,所述查找指令中包含关键词;根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。本申请的报文查找方法,在完全替代TCAM功能的基础上,采用优先查找常用数据项存储器的方式,降低了功耗,节约了成本。
实施例二
基于上述本发明实施例公开的报文查找方法,图4具体公开了应用该报文查找方法的报文查找系统。
如图4所示,本发明实施例公开了一种报文查找系统,该系统包括:
接收单元401,用于接收用户的查找指令,所述查找指令中包含关键词;
查找单元402,根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。
在一些实施例中,所述系统还包括:
写入单元,用于将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
在一些实施例中,若所述第一存储器已满,则所述写入单元,用于按照预设的置换算法将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
在一些实施例中,所述第一存储器为cache存储器,所述第二存储器为RAM存储器。
在一些实施例中,所述预设的置换算法为NRU置换算法或NFU置换算法。
以上本发明实施例公开的报文查找系统中的接收单元401和查找单元402的具体工作过程,可参见本发明上述实施例公开的报文查找方法中的对应内容,这里不再进行赘述。
综上所述,本申请实施例提供了一种报文查找系统,包括:接收用户的查找指令,所述查找指令中包含关键词;根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。本申请的报文查找方法,在完全替代TCAM功能的基础上,采用优先查找常用数据项存储器的方式,降低了功耗,节约了成本。
实施例三
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,该计算机程序被处理器执行时可以实现如实施例一的方法步骤,本实施例在此不再重复赘述。
实施例四
图5为本申请实施例提供的一种电子设备500的连接框图,如图5所示,该电子设备500可以包括:处理器501,存储器502,多媒体组件503,输入/输出(I/O)接口504,以及通信组件505。
其中,处理器501用于执行如实施例一中的报文查找方法中的全部或部分步骤。存储器502用于存储各种类型的数据,这些数据例如可以包括电子设备中的任何应用程序或方法的指令,以及应用程序相关的数据。
处理器501可以是专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable LogicDevice,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例一中的报文查找方法。
存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
多媒体组件503可以包括屏幕和音频组件,该屏幕可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或通过通信组件发送。音频组件还包括至少一个扬声器,用于输出音频信号。
I/O接口504为处理器501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。
通信组件505用于该电子设备500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件505可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
综上,本申请提供的一种报文查找方法、系统、存储介质及电子设备,该方法包括:接收用户的查找指令,所述查找指令中包含关键词;根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。本申请的报文查找方法,在完全替代TCAM功能的基础上,采用优先查找常用数据项存储器的方式,降低了功耗,节约了成本。
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的方法,也可以通过其它的方式实现。以上所描述的方法实施例仅仅是示意性的。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然本申请所揭露的实施方式如上,但上述的内容只是为了便于理解本申请而采用的实施方式,并非用以限定本申请。任何本申请所属技术领域内的技术人员,在不脱离本申请所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本申请的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (10)

1.一种报文查找方法,其特征在于,所述方法包括:
接收用户的查找指令,所述查找指令中包含关键词;
根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;
若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;
若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;
若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;
若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。
2.根据权利要求1所述的方法,其特征在于,在若在所述第二存储器中查找到与所述关键词相对应的数据项之后,还包括:
将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
3.根据权利要求2所述的方法,其特征在于,若所述第一存储器已满,则所述将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中,包括:
按照预设的置换算法将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
4.根据权利要求1所述的方法,其特征在于,所述第一存储器为cache存储器,所述第二存储器为RAM存储器。
5.根据权利要求3所述的方法,其特征在于,所述预设的置换算法为NRU置换算法或NFU置换算法。
6.一种报文查找系统,其特征在于,所述系统包括:
接收单元,用于接收用户的查找指令,所述查找指令中包含关键词;
查找单元,根据所述关键词在第一存储器中进行查找;所述第一存储器中存有第二存储器中经常被访问到的数据项;若在所述第一存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据;若在所述第一存储器中未能查找到与所述关键词相对应的数据项,则根据所述关键词在所述第二存储器中进行查找;若在所述第二存储器中未能查找到与所述关键词相对应的数据项,则向用户反馈表示查找失败的提示信息;若在所述第二存储器中查找到与所述关键词相对应的数据项,则向用户反馈所述与所述关键词相对应的数据项中的数据。
7.根据权利要求6所述的系统,其特征在于,还包括:
写入单元,用于将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
8.根据权利要求7所述的系统,其特征在于,若所述第一存储器已满,则所述写入单元,用于按照预设的置换算法将在所述第二存储器中查找到与所述关键词相对应的数据项写入所述第一存储器中。
9.一种存储介质,其特征在于,该存储介质存储的计算机程序,可被一个或多个处理器执行,可用来实现如权利要求1~5任意一项所述的报文查找方法。
10.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上存储有计算机程序,所述存储器和所述处理器之间互相通信连接,该计算机程序被所述处理器执行时,执行如权利要求1~5任意一项所述的报文查找方法。
CN202111292966.3A 2021-11-03 2021-11-03 报文查找方法、系统、存储介质及电子设备 Active CN114020657B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111292966.3A CN114020657B (zh) 2021-11-03 2021-11-03 报文查找方法、系统、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111292966.3A CN114020657B (zh) 2021-11-03 2021-11-03 报文查找方法、系统、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN114020657A true CN114020657A (zh) 2022-02-08
CN114020657B CN114020657B (zh) 2023-03-17

Family

ID=80059970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111292966.3A Active CN114020657B (zh) 2021-11-03 2021-11-03 报文查找方法、系统、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN114020657B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101035059A (zh) * 2006-03-08 2007-09-12 中兴通讯股份有限公司 一种提高三重内容可寻址存储器报文分类查找速度的方法
CN101651628A (zh) * 2009-09-17 2010-02-17 杭州华三通信技术有限公司 一种三状态内容可寻址存储器实现方法及装置
CN102299971A (zh) * 2010-06-25 2011-12-28 深圳市邦彦信息技术有限公司 基于fpga的快速地址查找算法
JP2012160107A (ja) * 2011-02-02 2012-08-23 Mitsubishi Electric Corp 情報処理装置及び情報処理方法
CN103888321A (zh) * 2014-04-14 2014-06-25 中国人民解放军信息工程大学 一种数据流检测方法及多核处理设备
CN105721538A (zh) * 2015-12-30 2016-06-29 东莞市青麦田数码科技有限公司 数据访问的方法和装置
CN106919695A (zh) * 2017-03-07 2017-07-04 维沃移动通信有限公司 一种信息推荐方法及终端
CN107592927A (zh) * 2015-05-26 2018-01-16 英特尔公司 管理扇区高速缓存
CN107818151A (zh) * 2017-10-24 2018-03-20 湖南恒茂高科股份有限公司 数据查找方法、装置、计算机设备和存储介质
CN110532228A (zh) * 2019-09-02 2019-12-03 深圳市网心科技有限公司 一种区块链数据读取的方法、系统、设备及可读存储介质
WO2020062187A1 (en) * 2018-09-29 2020-04-02 Siemens Aktiengesellschaft Method, apparatus, computer-readable storage media and computer program for data analysis

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101035059A (zh) * 2006-03-08 2007-09-12 中兴通讯股份有限公司 一种提高三重内容可寻址存储器报文分类查找速度的方法
CN101651628A (zh) * 2009-09-17 2010-02-17 杭州华三通信技术有限公司 一种三状态内容可寻址存储器实现方法及装置
CN102299971A (zh) * 2010-06-25 2011-12-28 深圳市邦彦信息技术有限公司 基于fpga的快速地址查找算法
JP2012160107A (ja) * 2011-02-02 2012-08-23 Mitsubishi Electric Corp 情報処理装置及び情報処理方法
CN103888321A (zh) * 2014-04-14 2014-06-25 中国人民解放军信息工程大学 一种数据流检测方法及多核处理设备
CN107592927A (zh) * 2015-05-26 2018-01-16 英特尔公司 管理扇区高速缓存
CN105721538A (zh) * 2015-12-30 2016-06-29 东莞市青麦田数码科技有限公司 数据访问的方法和装置
CN106919695A (zh) * 2017-03-07 2017-07-04 维沃移动通信有限公司 一种信息推荐方法及终端
CN107818151A (zh) * 2017-10-24 2018-03-20 湖南恒茂高科股份有限公司 数据查找方法、装置、计算机设备和存储介质
WO2020062187A1 (en) * 2018-09-29 2020-04-02 Siemens Aktiengesellschaft Method, apparatus, computer-readable storage media and computer program for data analysis
CN110532228A (zh) * 2019-09-02 2019-12-03 深圳市网心科技有限公司 一种区块链数据读取的方法、系统、设备及可读存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AHN J: "DASCA: Dead Write Prediction Assisted STT-RAM Cache Architecture", 《IEEE INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE COMPUTER ARCHITECTURE》 *
唐硕飞: "《计算机组成原理》", 31 January 2008, 高等教育出版社 *
石红芹: "《操作系统》", 30 September 2017, 吉林大学出版社 *
靳桅: "《基于51系列单片机的LED显示屏开发技术》", 28 February 2009, 北京航空航天大学出版社 *

Also Published As

Publication number Publication date
CN114020657B (zh) 2023-03-17

Similar Documents

Publication Publication Date Title
US11775524B2 (en) Cache for efficient record lookups in an LSM data structure
JP6050503B2 (ja) 階層キャッシュを用いたメールのインデックス化および検索
TW201832086A (zh) 對混合記憶體模組進行存取元資料的方法及混合記憶體模組
CN100541455C (zh) 使用请求调页技术的系统中减少页替换时间的方法和设备
US20100228914A1 (en) Data caching system and method for implementing large capacity cache
US20130326154A1 (en) Cache system optimized for cache miss detection
KR102437775B1 (ko) 효율적인 맵핑을 위한 페이지 캐시 장치 및 방법
US11372779B2 (en) Memory controller and memory page management method
US20080104364A1 (en) Vector indexed memory unit and method
US20080263061A1 (en) Self-Tuning Index for Flash-Based Databases
US20130117302A1 (en) Apparatus and method for searching for index-structured data including memory-based summary vector
CN113934655B (zh) 解决高速缓冲存储器地址二义性问题的方法和装置
CN112579595A (zh) 数据处理方法、装置、电子设备及可读存储介质
CN112163013A (zh) 数据处理方法、装置、终端设备及存储介质
CN111506604A (zh) 访问数据的方法、装置和计算机程序产品
KR100895715B1 (ko) 메모리 관리 유닛, 메모리 관리 유닛을 포함하는 시스템 및어드레스 변환 방법
CN111914020A (zh) 数据同步方法及装置、数据查询方法及装置
WO2015033551A1 (ja) ストアマージ処理装置、ストアマージ処理システム、ストアマージ処理方法、及び、記憶媒体
CN111831691B (zh) 一种数据读写方法及装置、电子设备、存储介质
CN114281712A (zh) 查表方法、装置、fpga及可读存储介质
CN116909939A (zh) 基于lsm树的键值分离存储引擎垃圾回收方法、系统及设备
CN114020657B (zh) 报文查找方法、系统、存储介质及电子设备
US8566342B2 (en) In-memory data optimization system
WO2024113694A1 (zh) 缓存数据处理方法、系统、装置、设备及计算机存储介质
CN112199400B (zh) 用于数据处理的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant