报文处理方法和装置的制造方法

文档序号:9581655阅读:183来源:国知局
报文处理方法和装置的制造方法
【技术领域】
[0001 ] 本发明实施例涉及计算机技术,尤其涉及一种报文处理方法和装置。
【背景技术】
[0002]中央处理器(英文:Central Processing Unit,简称CPU)包括多个处理器核,可以并发处理多个报文,对于多个不同的流报文一般使用保序控制单元进行多个报文的处理顺序的控制。
[0003]现有技术中,对于多个流的报文的处理方式为顺序处理。例如:在任务缓存中包括两个缓存队列Q0、Ql,队列QO中依次加入了 T流报文Tl、T2以及K流报文Kl、K2 ;队列Ql中依次加入了 G流报文G1、G2,在当前保序控制单元的保序模式配置为原子操作(英文:ATOMIC)时,队列QO中的报文Tl被取出给其中一个处理器核进行处理,并将处理信息记录在保序队列中,在报文Tl没有被处理完成时,保序队列会阻止报文T2被其他处理器核进行处理,进而导致后续报文K1、K2不能被别的处理器核进行处理,另外,若队列QO和队列Ql配置了严格的优先级关系,则在队列QO的所有报文没有全部处理完成时,队列Ql中的G流的报文也不能被处理。
[0004]但是,上述的处理方法中,处理器核对报文Tl没有处理完成时,同一队列中的其他流的报文不能进行处理,且在队列之间有优先级关系时,别的队列中的报文也不能进行处理,导致调度处理的阻塞,造成整个CPU对报文的处理的效率较低。

【发明内容】

[0005]本发明实施例提供一种报文处理方法和装置,以克服报文的处理过程中调度的阻塞,造成整个CPU对报文的处理的效率较低的问题。
[0006]本发明实施例第一方面提供一种报文处理方法,包括:
[0007]将缓存队列中的待处理的报文按照所述报文的流类别将所述报文分别存入不同的预取缓存队列;其中,所述预取缓存队列为在任务缓存和保序队列之间预先建立的缓存;
[0008]将每个所述预取缓存队列中的报文分别分配给不同的处理器核进行处理。
[0009]结合第一方面,在第一方面的第一种可能的实施方式中,所述将每个所述预取缓存队列中的报文分别分配给不同的处理器核进行处理之后,还包括:
[0010]在所述保序队列中分别记录每个所述预取缓存队列中的报文的处理信息。
[0011]结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,所述预取缓存队列的数量大于或等于一个。
[0012]结合第一方面、第一方面的第一种和第二种中的任一种可能的实施方式,在第一方面的第三种可能的实施方式中,所述待处理的报文的流类别包括第一类流和第二类流,则所述将缓存队列中的待处理的报文取出并按照所述报文的流类别将所述报文分别放入不同的预取缓存队列,包括:
[0013]将所述缓存队列中的报文取出;
[0014]将流类别为所述第一类流的所有报文放入一个所述预取缓存队列中,将流类别为所述第二类流的所有报文放入与所述第一类流不同的另一所述预取缓存队列。
[0015]结合第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式中,所述将每个所述预取缓存队列中的报文分别分配不同的处理器核进行处理,并在所述保序队列中分别记录每个所述预取缓存队列中的报文的处理信息,包括:
[0016]将所述预取缓存队列中所述第一类流的报文分配给第一处理器核进行处理,在所述保序队列中记录所述第一类流的报文处理信息,并将另一所述预取缓存队列中第二类流的报文分配给第二处理器核进行处理,在所述保序队列中记录所述第二类流的报文处理信肩、O
[0017]本发明实施例第二方面提供一种报文处理装置,包括:
[0018]处理模块,用于将缓存队列中的待处理的报文按照所述报文的流类别将所述报文分别存入不同的预取缓存队列,所述预取缓存队列为在任务缓存和保序队列之间预先建立的缓存;
[0019]分配模块,用于将每个所述预取缓存队列中的报文分别分配给不同的处理器核进行处理。
[0020]结合第二方面,在第二方面的第一种可能的实施方式中,还包括:
[0021]记录模块,用于在所述保序队列中分别记录每个所述预取缓存队列中的报文的处理信息。
[0022]结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,所述处理模块建立的所述预取缓存队列的数量大于等于一个。
[0023]结合第二方面、第二方面的第一种和第二种中的任一种可能的实施方式,在第二方面的第三种可能的实施方式中,所述待处理的报文的流类别包括第一类流和第二类流,则所述处理模块具体用于:
[0024]将所述缓存队列中的报文取出;
[0025]将流类别为所述第一类流的所有报文放入一个所述预取缓存队列中,并将流类别为所述第二类流的所有报文放入与所述第一类流不同的另一所述预取缓存队列。
[0026]结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,包括:
[0027]所述分配模块还用于将所述预取缓存队列中所述第一类流的报文分配给第一处理器核进行处理,所述记录模块在所述保序队列中记录所述第一类流的报文处理信息;
[0028]所述分配模块还用于将另一所述预取缓存队列中第二类流的报文分配给第二处理器核进行处理,所述记录模块在所述保序队列中记录所述第二类流的报文处理信息。
[0029]本发明实施例第三方面提供一种中央处理器CPU,包括:第二方面、第二方面的第一种、第二种、第三种至第四种实施方式中的任一实施方式提供的报文处理装置和至少两个处理器核。
[0030]本发明实施例提供的报文处理方法和装置,通过将缓存队列中的待处理的报文取出并按照报文的流类别将报文分别存入不同的预取缓存队列,再将每个预取缓存队列中的报文分别分配给不同的处理器核进行处理,相较于现有技术直接从缓存队列中取出报文处理,在没有处理完成上一个流的报文时,不能处理同一缓存队列的其他流的报文,通过预取缓存队列将不同的流报文分开并分配不同的处理器核并发处理,解决了报文的处理过程中调度的阻塞,造成整个CPU对报文的处理的效率较低的问题,有效提高了 CPU对报文的处理的效率。
【附图说明】
[0031]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0032]图1为本发明提供的报文处理方法实施例一的流程图;
[0033]图2为本发明提供的报文处理方法实施例二的流程图;
[0034]图3为本发明提供的报文处理方法实施例二的处理示意图;
[0035]图4为本发明提供的报文处理装置实施例一的结构示意图;
[0036]图5为本发明提供的报文处理装置实施例二的结构示意图;
[0037]图6为本发明提供的保序控制单元的实施例的结构示意图;
[0038]图7为本发明提供的CPU的实施例的结构示意图。
【具体实施方式】
[0039]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1