System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信,尤其涉及一种报文处理方法、装置、电子设备及计算机程序产品。
技术介绍
1、随着移动通信网络的日益复杂以及应用的泛在多元化,信号传输质量会存一定的干扰,若不进行错报过滤,会使不符合规则的报文也进入信号处理模块,影响后续模块对于数据的处理,严重会导致系统卡死,只能通过复位来恢复,系统鲁棒性低。
2、现有技术中,将输入的报文全部缓存,然后通过识别err信号对错误报文进行过滤,或者将不满足固定长度的数据包过滤掉。然而这些报文过滤方式会增加硬件缓存资源开销,且无法过滤掉所有非常规报文,此外,这些报文过滤方式必须在通信环境良好的情况下才能适用,当通信环境较差时,杂质包也无法被成功过滤。
3、由于现有的报文过滤方式无法过滤掉所有非常规报文,且受通信环境状况的影响,不符合规则的报文仍会被传递到处理模块进行解析,影响处理进程,甚至会导致系统卡死,使整个处理过程时延大,信号处理效率低,误码率高。
技术实现思路
1、本申请实施例提供一种报文处理方法、装置、电子设备及计算机程序产品,用以解决现有技术中信号处理时误码率高的技术问题。
2、第一方面,本申请实施例提供一种报文处理方法,包括:
3、基于报文随机存取存储器ram的存储状态和上一报文的完整度信息对当前报文进行过滤;所述报文ram用于缓存过滤得到的正确报文;
4、对报文ram中缓存的正确报文进行校验,并根据校验结果判断是否进行告警上报。
5、在一些实施例中,所述基于
6、判断报文ram的存储状态是否为非满状态;
7、在报文ram为非满状态的情况下,根据当前报文携带的指示信息确定当前报文的数据类型,并确定上一报文的完整度信息;所述上一报文的完整度信息指上一报文是否结束;
8、基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤。
9、在一些实施例中,在当前报文的数据类型为报文头数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
10、在上一报文未结束的情况下,丢弃上一报文,将报文ram的写地址回退到上一报文的首包地址,并将当前报文的报文头写入报文ram;或,
11、在上一报文结束的情况下,将当前报文缓存至报文ram中,并将当前报文的首包地址和包长缓存至先入先出队列fwft_fifo。
12、在一些实施例中,在当前报文的数据类型为中间字段或报文尾数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
13、在上一报文结束的情况下,丢弃当前报文并保持报文ram的写地址不变;或,
14、在上一报文未结束且上一报文的包长超过预设最大包长的情况下,丢弃当前报文和上一报文,并将报文ram的写地址回退到上一报文的首包地址,或,在上一报文未结束且上一报文的包长未超过预设最大包长的情况下,将当前报文缓存至报文ram中,并将当前报文的首包地址和包长缓存至先入先出队列fwft_fifo。
15、在一些实施例中,在当前报文的数据类型为携带错误报文标记err的数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
16、在上一报文未结束的情况下,丢弃当前报文和上一报文,并将报文ram的写地址回退到上一报文的首包地址;或,
17、在上一报文结束的情况下,丢弃当前报文并保持报文ram的写地址不变。
18、在一些实施例中,所述指示信息包括以下一种或多种:
19、报文头指示信号sop;所述报文头指示信号用于指示当前传递的数据是否是报文的第一个数据切片;
20、报文尾指示信号eop;所述报文尾指示信号用于指示当前传递的数据是否是报文的最后一个数据切片;
21、错误报文标记err;所述错误报文标记用于指示当前报文是否是前级模块校验出错误的报文。
22、在一些实施例中,所述基于报文随机存储器ram的存储状态和上一报文的完整度信息对当前报文进行过滤,还包括:
23、判断报文ram的存储状态是否为满状态;
24、在报文ram为满状态的情况下,根据上一报文携带的eop确定上一报文的完整度信息;
25、在上一报文未结束的情况下,丢弃当前报文和上一报文,并将报文ram的写地址回退到上一报文的首包地址;或,在上一报文结束的情况下,丢弃当前报文并保持报文ram的写地址不变。
26、在一些实施例中,所述对报文ram中缓存的正确报文进行校验,并根据校验结果判断是否进行告警上报,包括:
27、按照预配置的ram读出速度读取报文ram中缓存的报文,并对读取的正确报文进行校验,得到校验结果;
28、将所述校验结果缓存至校验结果ram中;
29、根据预配置的轮询时间定期轮询所述校验结果ram的所有地址,得到轮询结果;
30、在所述轮询结果满足预设的告警产生条件的情况下,生成告警并将所述告警上报。
31、在一些实施例中,所述方法还包括:
32、配置初始信息;所述初始信息包括ram读出速度、轮询时间和预设最大包长。
33、第二方面,本申请实施例提供一种报文处理装置,包括:
34、过滤模块,用于基于报文随机存储器ram的存储状态和上一报文的完整度信息对当前报文进行过滤;所述报文ram用于缓存过滤得到的正确报文;
35、校验模块,用于对报文ram中缓存的正确报文进行校验,并根据校验结果判断是否进行告警上报。
36、第三方面,本申请实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述第一方面所述的报文处理方法。
37、第四方面,本申请实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面所述的报文处理方法。
38、第五方面,本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的报文处理方法。
39、本申请实施例提供的报文处理方法、装置、电子设备及计算机程序产品,基于报文随机存储器ram的存储状态和上一报文的完整度信息对报文进行过滤,该报文ram仅缓存过滤得到的正确报文,在控制硬件缓存资源开销的同时,从报文整体结构层面过滤出不符合规则的报文,能够将可能出现的异常报文结构情况全面覆盖,使过滤得更彻底;还接着对报文ram中缓存的报文进行校验,并根据校验结果判断是否进行告警上报,使得报文字段被更改的报文能被快速识别并及时响应,进一步保证下一级处理模块只处理正确的报文,降低误码率。<本文档来自技高网...
【技术保护点】
1.一种报文处理方法,其特征在于,包括:
2.根据权利要求1所述的报文处理方法,其特征在于,所述基于报文随机存储器RAM的存储状态和上一报文的完整度信息对当前报文进行过滤,包括:
3.根据权利要求2所述的报文处理方法,其特征在于,在当前报文的数据类型为报文头数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
4.根据权利要求2所述的报文处理方法,其特征在于,在当前报文的数据类型为中间字段或报文尾数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
5.根据权利要求2所述的报文处理方法,其特征在于,在当前报文的数据类型为携带错误报文标记ERR的数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
6.根据权利要求2所述的报文处理方法,其特征在于,所述指示信息包括以下一种或多种:
7.根据权利要求1所述的报文处理方法,其特征在于,所述基于报文随机存储器RAM的存储状态和上一报文的完
8.根据权利要求1所述的报文处理方法,其特征在于,所述对报文RAM中缓存的正确报文进行校验,并根据校验结果判断是否进行告警上报,包括:
9.根据权利要求1所述的报文处理方法,其特征在于,所述方法还包括:
10.一种报文处理装置,其特征在于,包括:
11.一种电子设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至9任一项所述报文处理方法。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述报文处理方法。
...【技术特征摘要】
1.一种报文处理方法,其特征在于,包括:
2.根据权利要求1所述的报文处理方法,其特征在于,所述基于报文随机存储器ram的存储状态和上一报文的完整度信息对当前报文进行过滤,包括:
3.根据权利要求2所述的报文处理方法,其特征在于,在当前报文的数据类型为报文头数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
4.根据权利要求2所述的报文处理方法,其特征在于,在当前报文的数据类型为中间字段或报文尾数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
5.根据权利要求2所述的报文处理方法,其特征在于,在当前报文的数据类型为携带错误报文标记err的数据的情况下,所述基于所述当前报文的数据类型和所述上一报文的完整度信息对当前报文进行过滤,包括:
6.根据权利要求2所述的...
【专利技术属性】
技术研发人员:张艺,张川,黄永明,尤肖虎,
申请(专利权)人:网络通信与安全紫金山实验室,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。