报文处理方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:37353937 阅读:15 留言:0更新日期:2023-04-27 07:04
本发明专利技术公开了一种报文处理方法、装置、电子设备及计算机可读存储介质。其中,该方法包括:硬件接收到传输的数据包;解析数据包,得到软件查表所需的报文信息;基于报文信息,计算得到软件查表的哈希值;基于软件查表的哈希值,获取软件查表的条目地址;硬件通过接口发送条目地址至总线;总线依据条目地址,将存储器中的条目数据通过接口写入高速缓存空间中。本发明专利技术解决了相关技术中大量业务的软件查表时,存在的CPU的访存压力较大,软转发的整体性能较差的技术问题。能较差的技术问题。能较差的技术问题。

【技术实现步骤摘要】
报文处理方法、装置、电子设备及计算机可读存储介质


[0001]本专利技术涉及计算机领域,具体而言,涉及一种报文处理方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]随着计算机的发展,在软转发场景中,业务越来越复杂,目前主要由软件进行业务报文的识别查找处理和报文编辑。但在相关技术中大量业务的软件查表时,存在CPU的访存压力较大,软转发的整体性能较差的问题。
[0003]针对上述的问题,目前尚未提出有效的解决方案。

技术实现思路

[0004]本专利技术实施例提供了一种报文处理方法、装置、电子设备及计算机可读存储介质,以至少解决相关技术中大量业务的软件查表时,存在的CPU的访存压力较大,软转发的整体性能较差的技术问题。
[0005]根据本专利技术实施例的一个方面,提供了一种报文处理方法,包括:硬件接收到传输的数据包;解析所述数据包,得到软件查表所需的报文信息;基于所述报文信息,计算得到所述软件查表的哈希值;基于所述软件查表的哈希值,获取所述软件查表的条目地址;所述硬件通过接口发送所述条目地址至总线;所述总线依据所述条目地址,将存储器中的条目数据通过所述接口写入高速缓存空间中。
[0006]可选地,所述软件查表的类型包括:全局表和转发表,所述基于所述报文信息,计算得到所述软件查表的哈希值,包括:获取所述软件查表的标识ID和待查找的条目类型;基于所述报文信息和待查找的所述条目类型,计算得到所述软件查表的哈希值。
[0007]可选地,所述方法还包括:设置所述软件查表的表信息,其中,所述表信息包括:所述软件查表的起始地址,软表大小,条目长度,预取长度。
[0008]可选地,基于所述软件查表的哈希值,获取所述软件查表的条目地址,包括:基于软件查表的起始地址、条目长度和所述哈希值,计算得到所述软件查表的条目地址。
[0009]可选地,在所述硬件通过接口发送所述条目地址至总线之后,还包括:获取所述硬件用于接收所述数据包的收包通道或收包队列的收包状态,其中,所述收包状态包括如下至少之一:处于待处理状态的数据深度和处于未处理状态的存储器的描述符个数;在所述收包状态大于预设阈值的情况下,确定需要执行所述条目数据的硬件预取。
[0010]可选地,包括:所述硬件基于所述条目地址和所述条目长度来确定预取至少一个条目数据。
[0011]可选地,通过总线指令来触发预取操作,其中,所述预取操作表征执行所述条目数据的硬件预取。
[0012]根据本专利技术实施例的一个方面,提供了一种报文处理装置,包括:接收模块,用于硬件接收到传输的数据包;解析模块,用于解析所述数据包,得到软件查表所需的报文信
息;计算模块,用于基于所述报文信息,计算得到所述软件查表的哈希值;获取模块,用于基于所述软件查表的哈希值,获取所述软件查表的条目地址;第一发送模块,用于所述硬件通过接口发送所述条目地址至总线;第二发送模块,用于所述总线依据所述条目地址,将存储器中的条目数据通过所述接口写入高速缓存空间中。
[0013]可选地,所述软件查表的类型包括:全局表和转发表,其中,所述计算模块包括:子获取模块,用于获取所述软件查表的标识ID和待查找的条目类型;子计算模块,用于基于所述报文信息和待查找的所述条目类型,计算得到所述软件查表的哈希值。
[0014]根据本专利技术实施例的一个方面,提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现上述任一项所述的报文处理方法。
[0015]根据本专利技术实施例的一个方面,提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一项所述的报文处理方法。
[0016]在本专利技术实施例中,通过硬件接收到传输的数据包,然后解析数据包,得到软件查表所需的报文信息,再基于报文信息,计算得到软件查表的哈希值,然后基于软件查表的哈希值,获取软件查表的条目地址,硬件再通过接口发送条目地址至总线,最后总线依据条目地址,将存储器中的条目数据通过接口写入高速缓存空间中。由于是通过硬件接收到传输的数据包,因此接收数据包的速度较快、耗时较短。由于硬件通过接口发送条目地址至总线,总线依据条目地址,将存储器中的条目数据通过接口写入高速缓存空间中,因此可以有效减轻CPU的访存压力,提升软转发的整体性能。从而实现了提高软转发的整体性能的技术效果,进而解决了相关技术中大量业务的软件查表时,存在的CPU的访存压力较大,软转发的整体性能较差的技术问题。
附图说明
[0017]此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:
[0018]图1是根据本专利技术实施例的报文处理方法的流程图;
[0019]图2是相关技术中的报文处理方法的示意图;
[0020]图3是本专利技术可选实施方式提供的报文处理方法的示意图;
[0021]图4是根据本专利技术实施例的报文处理装置的结构框图。
具体实施方式
[0022]为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。
[0023]需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用
的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0024]实施例1
[0025]根据本专利技术实施例,提供了一种报文处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0026]图1是根据本专利技术实施例的报文处理方法的流程图,如图1所示,该方法包括如下步骤:
[0027]步骤S102,硬件接收到传输的数据包;
[0028]在本专利技术上述步骤S102提供的技术方案中,由于是通过硬件接收到传输的数据包,因此接收数据包的速度较快、耗时较短。
[0029]步骤S104,解析数据包,得到软件查表所需的报文信息;
[0030]在本专利技术上述步骤S104提供的技术方案中,解本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种报文处理方法,其特征在于,包括:硬件接收到传输的数据包;解析所述数据包,得到软件查表所需的报文信息;基于所述报文信息,计算得到所述软件查表的哈希值;基于所述软件查表的哈希值,获取所述软件查表的条目地址;所述硬件通过接口发送所述条目地址至总线;所述总线依据所述条目地址,将存储器中的条目数据通过所述接口写入高速缓存空间中。2.根据权利要求1所述的方法,其特征在于,所述软件查表的类型包括:全局表和转发表,所述基于所述报文信息,计算得到所述软件查表的哈希值,包括:获取所述软件查表的标识ID和待查找的条目类型;基于所述报文信息和待查找的所述条目类型,计算得到所述软件查表的哈希值。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:设置所述软件查表的表信息,其中,所述表信息包括:所述软件查表的起始地址,软表大小,条目长度,预取长度。4.根据权利要求3所述的方法,其特征在于,基于所述软件查表的哈希值,获取所述软件查表的条目地址,包括:基于软件查表的起始地址、条目长度和所述哈希值,计算得到所述软件查表的条目地址。5.根据权利要求4所述的方法,其特征在于,在所述硬件通过接口发送所述条目地址至总线之后,还包括:获取所述硬件用于接收所述数据包的收包通道或收包队列的收包状态,其中,所述收包状态包括如下至少之一:处于待处理状态的数据深度和处于未处理状态的存储器的描述符个数;在所述收包状态大于预设阈值的情况下,确定需要执行所述条目数据的硬件预取。6.根据权...

【专利技术属性】
技术研发人员:龚海东杨八双贾复山
申请(专利权)人:苏州盛科通信股份有限公司
类型:发明
国别省市:

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

1