一种报文处理方法、装置及网络芯片制造方法及图纸

技术编号:26375933 阅读:27 留言:0更新日期:2020-11-19 23:44
本申请提供了一种报文处理方法、装置及网络芯片,上述方法包括:针对接收到的每个请求报文,若该请求报文为读请求报文,则为该读请求报文分配标识符,将标识符写入该读请求报文的读请求信息中并缓存到第一缓存中;根据读请求信息生成读请求执行指令,执行读请求执行指令获得读请求数据并缓存至第二缓存中;将读请求数据的缓存地址和上述标识符之间的关联关系写入关联关系列表中;从第一缓存中读取当前读请求信息并解析得到标识符,从关联关系列表中获取当前读请求信息中的标识符对应的缓存地址;基于获取到的缓存地址从第二缓存中提取读请求数据,根据当前读请求信息和提取的读请求数据生成读响应报文。至此,提高了报文的并行处理效率。

【技术实现步骤摘要】
一种报文处理方法、装置及网络芯片
本申请涉及网络处理器
,尤其涉及一种报文处理方法、装置及网络芯片。
技术介绍
21世纪是以网络为核心的信息化、数字化的时代,网络以其连通性和资源共享性成为当今发展知识经济的基础和构造信息社会的命脉。在计算机网络系统中,其连通性与资源共享性是建立在数据交换的基础之上的,网络芯片是一个提供在通信网络中发送和接收数据的微处理器,是为了适应现代高速网络特点的需要,提供网络服务质量控制,发展新的网络管理模式以及快速响应市场对新的网络功能的需求而推出的一项新的芯片技术。随着网络业务种类和数量的不断增加,网络芯片对报文的传输和处理速度要求越来越快,除了在频率允许的范围内提高工作频率,提高报文的传输效率也是一种提升网络数据传输性能的重要手段。报文数据的一般处理过程可以如图1所示:1、接收报文请求数据;2、提取包头信息,解析待执行指令(写操作或者读操作);3、执行操作指令;4、返回报文响应数据。包头信息不会参与后续的数据传输中,将其转化为指令信息。为了提升报文读写操作执行效率,一般会在上述第1、第3或第4步的传输阶段进行处理,以期达到提升性能的目的。例如,较为普遍的处理方式:在报文接收阶段建立缓存队列,对进入队列的请求按照一定的要求进行排序,排序完成的请求会遵循先入先出的原则,报文的读写操作按顺序执行,同一类型操作的响应也是按顺序返回的。该方案从请求与响应的顺序的一致性上,实现了响应与数据的正确匹配,确保了响应信息的正确性。然而在计算机系统中,为了提高指令的执行效率,指令处理阶段并不是按照顺序执行的,在多数情况下指令执行模块会根据不同请求的特征进行并行处理。但是按照前述方案的执行要求,同一操作类型的指令需要顺序执行,这样会浪费指令处理阶段并行处理的效率。因此,如何提高报文的处理效率是值得考虑的技术问题之一。
技术实现思路
有鉴于此,本申请提供一种报文处理方法、装置及网络芯片,用以提高报文的处理效率。具体地,本申请是通过如下技术方案实现的:根据本申请的第一方面,提供一种报文处理方法,应用于网络芯片中,所述方法,包括:接收多个请求报文;针对所述多个请求报文中的每个请求报文,若该请求报文为读请求报文,则为该读请求报文分配标识符,并将分配的标识符写入该读请求报文的读请求信息中并将读请求信息缓存到第一缓存中,其中,不同的读请求报文分配的标识符不同;根据所述读请求信息生成读请求执行指令,并执行所述读请求执行指令,获得该读请求报文的读请求数据并缓存所述读请求数据至第二缓存中;将所述读请求数据的缓存地址和该读请求报文的标识符之间的关联关系写入关联关系列表中;从第一缓存中读取当前读请求信息并解析得到当前读请求信息中的标识符,从关联关系列表中获取当前读请求信息中的标识符对应的缓存地址;基于获取到的缓存地址从第二缓存中提取读请求数据,并根据所述当前读请求信息和提取的读请求数据生成读响应报文。根据本申请的第二方面,提供一种报文处理装置设置于网络芯片中,所述装置,包括:报文接收模块,用于接收多个请求报文;报文乱序处理模块,用于针对所述多个请求报文中的每个请求报文,若该请求报文为读请求报文,则为该读请求报文分配标识符,并将分配的标识符写入该读请求报文的读请求信息中并将读请求信息缓存到第一缓存中,其中,不同的读请求报文分配的标识符不同;指令执行模块,用于根据所述读请求信息生成读请求执行指令,并执行所述读请求执行指令,获得该读请求报文的读请求数据并缓存所述读请求数据至第二缓存中;将所述读请求数据的缓存地址和该读请求报文的标识符之间的关联关系写入关联关系列表中;响应报文生成模块,用于从第一缓存中读取当前读请求信息并解析得到当前读请求信息中的标识符,从关联关系列表中获取当前读请求信息中的标识符对应的缓存地址;基于获取到的缓存地址从第二缓存中提取读请求数据,并根据所述当前读请求信息和提取的读请求数据生成读响应报文。根据本申请的第三方面,提供一种网络芯片,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的计算机程序,处理器被计算机程序促使执行本申请实施例第一方面所提供的方法。根据本申请的第四方面,提供一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本申请实施例第一方面所提供的方法。本申请实施例的有益效果:本申请实施例提供的报文处理方法,通过为每个读请求报文分配标识符,利用分配的标识符来实现读请求报文的整个处理过程的监控,以及正确生成该读请求报文的读响应报文并反馈给客户端,使得各读请求报文之间的报文处理过程无需按严格的顺序执行,请求处理和指令执行之间也无严格的执行顺序,但通过标识符能够保证获得的读请求数据和读请求信息所要求的数据的一致性,不仅有效实现了报文的并行处理,而且提高了报文处理的效率。附图说明图1是现有技术提供的一种报文处理过程的逻辑示意图;图2是本申请实施例提供的一种报文处理方法的流程图;图3是本申请实施例提供的一种报文处理这种的框图;图4是本申请实施例提供的基于报文处理装置实施的报文处理方法的处理逻辑示意图;图5是本申请实施例提供的网络芯片的硬件结构示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。下面对本申请提供的报文处理方法进行详细地说明。参见图2,图2是本申请实施例提供的一种报文处理方法的流程图,应用于网络芯片中,网络芯片在实施上述报文处理方法时,可以按照如下所示步骤实施:S201、接收多个请求报文。具体地,可以接收多个客户端client发送的请求报文,也可以接收一个客户端发送的多个请求报文。可选地,网络芯片可以提供多个缓存队列,然后将接收到的请求报文进行解析,以解析出请求报文的操作类型和业务类型,然后将不本文档来自技高网
...

【技术保护点】
1.一种报文处理方法,其特征在于,应用于网络芯片中,所述方法,包括:/n接收多个请求报文;/n针对所述多个请求报文中的每个请求报文,若该请求报文为读请求报文,则为该读请求报文分配标识符,并将分配的标识符写入该读请求报文的读请求信息中并将读请求信息缓存到第一缓存中,其中,不同的读请求报文分配的标识符不同;/n根据所述读请求信息生成读请求执行指令,并执行所述读请求执行指令,获得该读请求报文的读请求数据并缓存所述读请求数据至第二缓存中;/n将所述读请求数据的缓存地址和该读请求报文的标识符之间的关联关系写入关联关系列表中;/n从第一缓存中读取当前读请求信息并解析得到当前读请求信息中的标识符,从关联关系列表中获取当前读请求信息中的标识符对应的缓存地址;/n基于获取到的缓存地址从第二缓存中提取读请求数据,并根据所述当前读请求信息和提取的读请求数据生成读响应报文。/n

【技术特征摘要】
1.一种报文处理方法,其特征在于,应用于网络芯片中,所述方法,包括:
接收多个请求报文;
针对所述多个请求报文中的每个请求报文,若该请求报文为读请求报文,则为该读请求报文分配标识符,并将分配的标识符写入该读请求报文的读请求信息中并将读请求信息缓存到第一缓存中,其中,不同的读请求报文分配的标识符不同;
根据所述读请求信息生成读请求执行指令,并执行所述读请求执行指令,获得该读请求报文的读请求数据并缓存所述读请求数据至第二缓存中;
将所述读请求数据的缓存地址和该读请求报文的标识符之间的关联关系写入关联关系列表中;
从第一缓存中读取当前读请求信息并解析得到当前读请求信息中的标识符,从关联关系列表中获取当前读请求信息中的标识符对应的缓存地址;
基于获取到的缓存地址从第二缓存中提取读请求数据,并根据所述当前读请求信息和提取的读请求数据生成读响应报文。


2.根据权利要求1所述的方法,其特征在于,若该请求报文为写请求报文,则根据所述写请求报文中的写请求信息生成写响应报文。


3.根据权利要求1所述的方法,其特征在于,所述读请求报文的标识符的状态由状态位图信号监控;所述方法,还包括:
当将生成的读响应报文对外发送后,释放该读响应报文对应的读请求报文的标识符;并更改释放的标识符对应的状态位图信号。


4.根据权利要求3所述的方法,其特征在于,用于分配标识符的硬件电路的使能信号的位宽与用于释放标识符的硬件电路的使能信号的位宽不同。


5.根据权利要求1所述的方法,其特征在于,为该读请求报文分配标识符,包括
确定当前已分配出的标识符的已分配数量;
当所述已分配数量小于设定数量时,为该读请求报文分配标识符。


6.根据权利要求2所述的方法...

【专利技术属性】
技术研发人员:苏振王磊
申请(专利权)人:新华三半导体技术有限公司
类型:发明
国别省市:四川;51

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

1