System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及报文保序,具体涉及一种报文保序方法、系统、装置、设备及存储介质。
技术介绍
1、对网络传输中单一管道的报文处理,若需要加速报文的处理速度,可以通过提高时钟频点,加大整个报文引擎的处理带宽,但是提高时钟频点,一方面会在后端实现时遇到时序收敛困难的问题,另外一方面也会显著提高芯片整个时钟网络的功耗,为了加快报文处理速度,引入“多报文处理引擎”,将管道中的报文分发到多个处理引擎,进行并行处理,然后在出口汇聚到大管道里。
2、然而,对于不同的报文,各引擎处理速度并不相同,所以有概率会出现出口的报文顺序和入口报文顺序不同,导致报文乱序,这种“报文乱序”现象可能导致数据包在接收端无法按照正确的顺序进行组装,从而影响数据的完整性和应用程序的正常运行。
技术实现思路
1、有鉴于此,本专利技术提供了一种报文保序方法、系统、装置、设备及存储介质,以解决多报文处理时可能出现的报文乱序的问题。
2、第一方面,本专利技术提供了一种报文保序方法,方法包括:
3、为各报文按照输入顺序依次分配标识id;标识id与各报文的输入顺序一一对应;
4、将报文与对应的标识id进行关联注册;
5、将完成关联注册且处理完毕的目标报文调度至出口;
6、根据目标报文的标识id对应的顺序输出目标报文。
7、本专利技术实施例提供的报文保序方法,通过为每个报文按照输入顺序依次分配唯一的标识id进行注册,并在处理完成后根据id顺序调度报文至出
8、在一种可选的实施方式中,将报文与对应的标识id进行关联注册,还包括:
9、将各报文分配至对应的报文处理引擎,获取报文处理引擎的编号;
10、将报文、报文对应的标识id以及报文处理引擎的编号作为一条记录存储在id管理模块中。
11、本专利技术实施例提供的报文保序方法,通过记录各报文的处理引擎的编号,可以清晰地了解每个报文和处理引擎之间的关系,这样不仅可以更加了解每个处理引擎当前处理的报文情况,也可以更合理的决定调度策略。
12、在一种可选的实施方式中,方法还包括:
13、对输出完成后的目标报文对应的标识id进行回收。
14、本专利技术实施例提供的报文保序方法,通过回收已输出报文的标识id,可以将其重新投入到新的报文处理流程中,避免了id资源的浪费,确保了id资源的循环利用,以使得系统能够处理更多的报文,而不会因为id资源耗尽导致报文处理中断或性能下降。
15、在一种可选的实施方式中,将完成关联注册且处理完毕的目标报文调度至出口,包括:
16、将目标报文对应的目标标识id发送至id管理模块,并将目标报文加入缓存;
17、当id管理模块检测到目标标识id时,将目标报文调度至出口。
18、本专利技术实施例提供的报文保序方法,通过先将目标报文先加入缓存,并在id管理模块检测到目标标识id后进行报文调度,可以实现报文处理的异步化。以使得在完成报文处理后能够立即释放资源,而无需等待报文被实际调度至出口,提高了系统的处理效率。
19、在一种可选的实施方式中,将完成关联注册且处理完毕的目标报文调度至出口,包括:
20、当id管理模块检测到目标标识id时,发送调度信息至调度模块;
21、基于调度信息,将目标报文调度至出口。
22、本专利技术实施例提供的报文保序方法,调度模块不需要主动轮询或查询哪些报文已经处理完毕并可以调度,仅需等待id管理模块的通知,这种调度逻辑十分简洁,减少了不必要的系统开销也使得调度过程更加高效快捷。
23、在一种可选的实施方式中,标识id的数量大于等于输入的报文的数量。
24、本专利技术实施例提供的报文保序方法,确保id的数量足够多可以避免在分配过程中发生id冲突,另一方面,系统也可以减少对id回收和重用的依赖。
25、第二方面,本专利技术提供了一种多报文处理系统,系统包括:
26、id分配模块,用于为输入的报文按照预设顺序分配标识id;
27、处理引擎模块,用于进行报文处理,并将处理完成后的目标报文对应的目标识别id发送至id管理模块;
28、id管理模块,用于当接收到处理引擎模块发送的目标标识id时,将目标标识id发送至调度模块;
29、调度模块,用于将目标标识id对应的目标报文调度至出口。
30、第三方面,本专利技术提供了一种报文保序装置,装置包括:
31、分配模块,用于为各报文按照输入顺序依次分配标识id;标识id与各报文的输入顺序一一对应;
32、注册模块,用于将报文与对应的标识id进行关联注册;
33、调度模块,用于将完成关联注册且处理完毕的目标报文调度至出口;
34、输出模块,用于根据目标报文的标识id对应的顺序输出目标报文。
35、第四方面,本专利技术提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的报文保序方法。
36、第五方面,本专利技术提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的报文保序方法。
本文档来自技高网...【技术保护点】
1.一种报文保序方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述报文与对应的所述标识id进行关联注册,还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求2或3所述的方法,其特征在于,所述将完成关联注册且处理完毕的目标报文调度至出口,包括:
5.根据权利要求4所述的方法,其特征在于,所述将完成关联注册且处理完毕的目标报文调度至出口,包括:
6.根据权利要求5所述的方法,其特征在于,所述标识id的数量大于等于输入的所述报文的数量。
7.一种多报文处理系统,其特征在于,所述系统包括:
8.一种报文保序装置,其特征在于,所述装置包括:
9.一种计算机设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至6中任一项所述的报文保序方法。
【技术特征摘要】
1.一种报文保序方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述报文与对应的所述标识id进行关联注册,还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求2或3所述的方法,其特征在于,所述将完成关联注册且处理完毕的目标报文调度至出口,包括:
5.根据权利要求4所述的方法,其特征在于,所述将完成关联注册且处理完毕的目标报文调度至出口,包...
【专利技术属性】
技术研发人员:侯松,廖惠勇,
申请(专利权)人:无锡众星微系统技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。